const express = require('express'); const authController = require('./auth.controller'); const { validate, validateRegisterMultipart, loginSchema, refreshSchema, changePasswordSchema, unlockAccountSchema } = require('./auth.validator'); const authenticate = require('../../middlewares/authenticate'); const { uploadTempCertificate } = require('../../config/multer'); const router = express.Router(); router.post('/register', uploadTempCertificate.single('certificateFile'), validateRegisterMultipart, authController.register); router.post('/login', validate(loginSchema), authController.login); router.post('/refresh', validate(refreshSchema), authController.refresh); router.post('/logout', authController.logout); router.get('/verify/:token', authController.verifyEmail); router.get('/confirm-password-change/:token', authController.confirmPasswordChange); router.get('/unlock-account/:token', authController.getUnlockAccountRequest); router.post('/unlock-account/:token/request-password-change', validate(unlockAccountSchema), authController.requestUnlockPasswordChange); router.get('/me', authenticate, authController.me); router.patch('/change-password', authenticate, validate(changePasswordSchema), authController.changePassword); module.exports = router;