passing services

This commit is contained in:
counterweight 2025-03-05 16:21:37 +01:00
parent 1cf303c31d
commit 47b2821f90
Signed by: counterweight
GPG key ID: 883EDBAA726BD96C
2 changed files with 24 additions and 29 deletions

View file

@ -6,18 +6,18 @@ function buildDependencies() {
const middlewares = require('./middlewares');
dependencies.middlewares = middlewares;
const invitesService = require('./services/invitesService');
const services = require('./services');
const WebRoutesProvider = require('./routes/webRoutes');
const webRoutesProvider = new WebRoutesProvider({
express,
middlewares,
invitesService,
invitesService: services.invitesService,
});
dependencies.webRoutes = webRoutesProvider.provide();
const ApiRoutesProvider = require('./routes/apiRoutes');
const apiRoutesProvider = new ApiRoutesProvider(middlewares);
const apiRoutesProvider = new ApiRoutesProvider({ middlewares, services });
dependencies.apiRoutes = apiRoutesProvider.provide();
return dependencies;
}

View file

@ -1,19 +1,11 @@
const express = require('express');
const invitesService = require('../services/invitesService');
const nostrService = require('../services/nostrService');
const loginService = require('../services/loginService');
const sessionService = require('../services/sessionService');
const profileService = require('../services/profileService');
const offerService = require('../services/offerService');
const services = require('../services');
const errors = require('../errors');
const router = express.Router();
class ApiRoutesProvider {
constructor(middlewares) {
constructor({ middlewares, services }) {
this.middlewares = middlewares;
this.services = services;
}
@ -25,7 +17,7 @@ class ApiRoutesProvider {
let signUpChallenge;
try {
signUpChallenge =
await services.invitesService.createSignUpChallenge(inviteUuid);
await this.services.invitesService.createSignUpChallenge(inviteUuid);
} catch (error) {
if (error instanceof errors.NotFoundError) {
return res.status(404).json({
@ -49,9 +41,10 @@ class ApiRoutesProvider {
let relatedNostrChallenge;
try {
relatedNostrChallenge = await services.nostrService.getNostrChallenge(
signUpChallenge.nostr_challenge_uuid
);
relatedNostrChallenge =
await this.services.nostrService.getNostrChallenge(
signUpChallenge.nostr_challenge_uuid
);
} catch (error) {
return res.status(500).json({
success: false,
@ -71,7 +64,7 @@ class ApiRoutesProvider {
let completedSignUpChallenge;
try {
completedSignUpChallenge =
await services.invitesService.verifySignUpChallenge(signedEvent);
await this.services.invitesService.verifySignUpChallenge(signedEvent);
} catch (error) {
if (error instanceof errors.ExpiredError) {
return res.status(410).json({
@ -93,7 +86,7 @@ class ApiRoutesProvider {
}
}
await services.sessionService.relateSessionToPublicKey(
await this.services.sessionService.relateSessionToPublicKey(
sessionUuid,
completedSignUpChallenge.public_key
);
@ -104,7 +97,8 @@ class ApiRoutesProvider {
router.get('/login/nostr-challenge', async (req, res) => {
let loginChallenge;
try {
loginChallenge = await services.loginService.createLoginChallenge();
loginChallenge =
await this.services.loginService.createLoginChallenge();
} catch (error) {
return res.status(500).json({
success: false,
@ -114,9 +108,10 @@ class ApiRoutesProvider {
let relatedNostrChallenge;
try {
relatedNostrChallenge = await services.nostrService.getNostrChallenge(
loginChallenge.nostr_challenge_uuid
);
relatedNostrChallenge =
await this.services.nostrService.getNostrChallenge(
loginChallenge.nostr_challenge_uuid
);
} catch (error) {
return res.status(500).json({
success: false,
@ -136,7 +131,7 @@ class ApiRoutesProvider {
let completedLoginChallenge;
try {
completedLoginChallenge =
await services.loginService.verifyLoginChallenge(signedEvent);
await this.services.loginService.verifyLoginChallenge(signedEvent);
} catch (error) {
console.log('helo5');
console.log(error);
@ -173,7 +168,7 @@ class ApiRoutesProvider {
}
console.log('helo?2');
console.log(completedLoginChallenge);
await services.sessionService.relateSessionToPublicKey(
await this.services.sessionService.relateSessionToPublicKey(
sessionUuid,
completedLoginChallenge.public_key
);
@ -196,7 +191,7 @@ class ApiRoutesProvider {
});
}
await services.profileService.setContactDetails(
await this.services.profileService.setContactDetails(
publicKey,
encryptedContactDetails
);
@ -223,7 +218,7 @@ class ApiRoutesProvider {
});
}
await services.profileService.setNym(publicKey, nym);
await this.services.profileService.setNym(publicKey, nym);
return res.status(200).json({
success: true,
@ -240,7 +235,7 @@ class ApiRoutesProvider {
const publicKey = req.cookies.publicKey;
const offerDetails = req.body.offerDetails;
await services.offerService.createOffer(publicKey, offerDetails);
await this.services.offerService.createOffer(publicKey, offerDetails);
return res.status(200).json({
success: true,
@ -257,7 +252,7 @@ class ApiRoutesProvider {
const offerUuid = req.params.offerUuid;
try {
await services.offerService.deleteOffer(offerUuid);
await this.services.offerService.deleteOffer(offerUuid);
} catch (error) {
if (error instanceof errors.NotFoundError) {
return res.status(404).json({
@ -287,7 +282,7 @@ class ApiRoutesProvider {
const publicKey = req.cookies.publicKey;
const offers =
await services.offerService.getOffersByPublicKey(publicKey);
await this.services.offerService.getOffersByPublicKey(publicKey);
if (!offers) {
return res.status(404).json({