From 79afa0cd032afcaa9fae1652f1d2986c2ed29adb Mon Sep 17 00:00:00 2001 From: juancarmore Date: Sat, 12 Apr 2025 12:58:23 +0200 Subject: [PATCH] backend: Refactor middleware imports for consistency and clarity --- backend/src/middlewares/index.ts | 2 ++ .../participant-validator.middleware.ts | 15 --------------- backend/src/routes/auth.routes.ts | 3 +-- backend/src/routes/global-preferences.routes.ts | 11 ++++++----- backend/src/routes/participant.routes.ts | 14 +------------- backend/src/routes/room.routes.ts | 1 - 6 files changed, 10 insertions(+), 36 deletions(-) diff --git a/backend/src/middlewares/index.ts b/backend/src/middlewares/index.ts index 77705e6..fac38c2 100644 --- a/backend/src/middlewares/index.ts +++ b/backend/src/middlewares/index.ts @@ -3,6 +3,8 @@ export * from './room.middleware.js'; export * from './participant.middleware.js'; export * from './recording.middleware.js'; export * from './content-type.middleware.js'; +export * from './request-validators/auth-validator.middleware.js'; export * from './request-validators/participant-validator.middleware.js'; +export * from './request-validators/preferences-validator.middleware.js'; export * from './request-validators/room-validator.middleware.js'; export * from './request-validators/recording-validator.middleware.js'; diff --git a/backend/src/middlewares/request-validators/participant-validator.middleware.ts b/backend/src/middlewares/request-validators/participant-validator.middleware.ts index ec26d45..a2536f6 100644 --- a/backend/src/middlewares/request-validators/participant-validator.middleware.ts +++ b/backend/src/middlewares/request-validators/participant-validator.middleware.ts @@ -8,10 +8,6 @@ const ParticipantTokenRequestSchema: z.ZodType = z.object({ secret: z.string().nonempty('Secret is required') }); -const DeleteParticipantSchema = z.object({ - roomId: z.string().trim().min(1, 'Room ID is required') -}); - export const validateParticipantTokenRequest = (req: Request, res: Response, next: NextFunction) => { const { success, error, data } = ParticipantTokenRequestSchema.safeParse(req.body); @@ -23,17 +19,6 @@ export const validateParticipantTokenRequest = (req: Request, res: Response, nex next(); }; -export const validateParticipantDeletionRequest = (req: Request, res: Response, next: NextFunction) => { - const { success, error, data } = DeleteParticipantSchema.safeParse(req.query); - - if (!success) { - return rejectRequest(res, error); - } - - req.query = data!; - next(); -}; - const rejectRequest = (res: Response, error: z.ZodError) => { const errors = error.errors.map((error) => ({ field: error.path.join('.'), diff --git a/backend/src/routes/auth.routes.ts b/backend/src/routes/auth.routes.ts index 2407a71..94b54bf 100644 --- a/backend/src/routes/auth.routes.ts +++ b/backend/src/routes/auth.routes.ts @@ -1,8 +1,7 @@ import { Router } from 'express'; import bodyParser from 'body-parser'; import * as authCtrl from '../controllers/auth.controller.js'; -import { loginLimiter, tokenAndRoleValidator, withAuth } from '../middlewares/auth.middleware.js'; -import { validateLoginRequest } from '../middlewares/request-validators/auth-validator.middleware.js'; +import { validateLoginRequest, loginLimiter, tokenAndRoleValidator, withAuth } from '../middlewares/index.js'; import { UserRole } from '@typings-ce'; export const authRouter = Router(); diff --git a/backend/src/routes/global-preferences.routes.ts b/backend/src/routes/global-preferences.routes.ts index 6e18074..ec1da52 100644 --- a/backend/src/routes/global-preferences.routes.ts +++ b/backend/src/routes/global-preferences.routes.ts @@ -3,12 +3,13 @@ import bodyParser from 'body-parser'; import * as appearancePrefCtrl from '../controllers/global-preferences/appearance-preferences.controller.js'; import * as webhookPrefCtrl from '../controllers/global-preferences/webhook-preferences.controller.js'; import * as securityPrefCtrl from '../controllers/global-preferences/security-preferences.controller.js'; -import { withAuth, tokenAndRoleValidator } from '../middlewares/auth.middleware.js'; -import { UserRole } from '@typings-ce'; import { validateSecurityPreferences, - validateWebhookPreferences -} from '../middlewares/request-validators/preferences-validator.middleware.js'; + validateWebhookPreferences, + withAuth, + tokenAndRoleValidator +} from '../middlewares/index.js'; +import { UserRole } from '@typings-ce'; export const preferencesRouter = Router(); preferencesRouter.use(bodyParser.urlencoded({ extended: true })); @@ -46,4 +47,4 @@ preferencesRouter.get( '/appearance', withAuth(tokenAndRoleValidator(UserRole.ADMIN)), appearancePrefCtrl.getAppearancePreferences -); \ No newline at end of file +); diff --git a/backend/src/routes/participant.routes.ts b/backend/src/routes/participant.routes.ts index c338dee..5615006 100644 --- a/backend/src/routes/participant.routes.ts +++ b/backend/src/routes/participant.routes.ts @@ -1,12 +1,7 @@ import { Router } from 'express'; import bodyParser from 'body-parser'; import * as participantCtrl from '../controllers/participant.controller.js'; -import { - validateParticipantDeletionRequest, - validateParticipantTokenRequest -} from '../middlewares/request-validators/participant-validator.middleware.js'; -import { configureTokenAuth, withModeratorPermissions } from '../middlewares/participant.middleware.js'; -import { participantTokenValidator, withAuth } from '../middlewares/auth.middleware.js'; +import { validateParticipantTokenRequest, configureTokenAuth } from '../middlewares/index.js'; export const internalParticipantRouter = Router(); internalParticipantRouter.use(bodyParser.urlencoded({ extended: true })); @@ -25,10 +20,3 @@ internalParticipantRouter.post( configureTokenAuth, participantCtrl.refreshParticipantToken ); -internalParticipantRouter.delete( - '/:participantName', - withAuth(participantTokenValidator), - validateParticipantDeletionRequest, - withModeratorPermissions, - participantCtrl.deleteParticipant -); diff --git a/backend/src/routes/room.routes.ts b/backend/src/routes/room.routes.ts index 0fc6e26..beb4387 100644 --- a/backend/src/routes/room.routes.ts +++ b/backend/src/routes/room.routes.ts @@ -16,7 +16,6 @@ import { withValidRoomId, withValidRoomDeleteRequest } from '../middlewares/index.js'; - import { UserRole } from '@typings-ce'; export const roomRouter = Router();