feat(routes): apply routers and rename files

- Routers `AuthRouter`, `CatalogRouter`, and `RentRouter` are used in the application in `src/app.ts` with error handling.
- The router files under `src/routes/auth`, `src/routes/catalog`, and `src/routes/rent` are renamed to `authRouter.ts`, `catalogRouter.ts`, `rentRouter.ts` respectively.
- The default exports in these router files have been updated to reflect their new names.
- The imports in `src/routes/index.ts` are updated according to the renamed files.

Signed-off-by: Mathis <yidhra@tuta.io>
This commit is contained in:
Mathis H (Avnyr) 2024-04-26 12:21:13 +02:00
parent 5d53cd28f8
commit 9bdcdef88f
Signed by: Mathis
GPG Key ID: DD9E0666A747D126
6 changed files with 76 additions and 61 deletions

View File

@ -3,6 +3,9 @@ import cors from 'cors';
import compression from 'compression'; import compression from 'compression';
import {Logger} from "tslog"; import {Logger} from "tslog";
import helmet from "helmet"; import helmet from "helmet";
import AuthRouter from "@routes/auth/authRouter";
import CatalogRouter from "@routes/catalog/catalogRouter";
import RentRouter from "@routes/rent/rentRouter";
const logger = new Logger({ name: "App" }); const logger = new Logger({ name: "App" });
@ -30,7 +33,15 @@ app.use(express.urlencoded({ extended: true }));
// gzip compression // gzip compression
app.use(compression()) app.use(compression())
//app.use('/auth', AuthRoutes) try {
app.use('/auth', AuthRouter)
app.use('/catalog', CatalogRouter)
app.use('/rent', RentRouter)
logger.info('Routers loaded !')
} catch (err) {
logger.error(err)
throw null;
}
//app.listen(3333) //app.listen(3333)
logger.info('Server is running !') logger.info('Server is running !')

View File

@ -4,35 +4,35 @@ import AdminGuard from "@validators/AdminGuard";
import AuthController from "@controllers/auth.controller"; import AuthController from "@controllers/auth.controller";
const router: Router = express.Router(); const AuthRouter: Router = express.Router();
router.route('/login').post(AuthController.login) AuthRouter.route('/login').post(AuthController.login)
router.route('/register').post(AuthController.register) AuthRouter.route('/register').post(AuthController.register)
// PATCH // PATCH
//TODO - To test //TODO - To test
router.route('/me') AuthRouter.route('/me')
.patch(UserGuard, AuthController.editUser) .patch(UserGuard, AuthController.editUser)
// GET // GET
router.route('/me') AuthRouter.route('/me')
.get(UserGuard, AuthController.getSelf) .get(UserGuard, AuthController.getSelf)
// DELETE // DELETE
router.route('/me') AuthRouter.route('/me')
.delete(UserGuard, AuthController.deleteSelf) .delete(UserGuard, AuthController.deleteSelf)
// GET // GET
router.route('/all') AuthRouter.route('/all')
.get(AdminGuard, AuthController.getAllUsers) .get(AdminGuard, AuthController.getAllUsers)
// GET // GET
router.route('/user/:targetId') AuthRouter.route('/user/:targetId')
.get(AdminGuard, AuthController.getUser) .get(AdminGuard, AuthController.getUser)
.patch(AdminGuard, AuthController.editUser) .patch(AdminGuard, AuthController.editUser)
.delete(AdminGuard, AuthController.deleteUser) .delete(AdminGuard, AuthController.deleteUser)
export default router export default AuthRouter

View File

@ -0,0 +1,42 @@
import express, {type Router} from "express";
import AdminGuard from "@validators/AdminGuard";
import UserGuard from "@validators/UserGuard";
import CategoryController from "@controllers/category.controller";
const CatalogRouter: Router = express.Router();
//-- MODELS >>
CatalogRouter.route('/model/new').get(AdminGuard)
CatalogRouter.route('/model/all').get()
CatalogRouter.route('/model/:modelSlug')
.get(UserGuard)
.patch(AdminGuard)
.delete(AdminGuard)
//-- CATEGORY >>
CatalogRouter.route('/category/new').get(AdminGuard, CategoryController.create)
CatalogRouter.route('/category/all').get(CategoryController.getAll)
CatalogRouter.route('/category/:categorySlug')
.get(UserGuard, CategoryController.getBySlug)
.patch(AdminGuard, CategoryController.update)
.delete(AdminGuard, CategoryController.delete)
//-- BRAND >>
CatalogRouter.route('/brand/new').post(AdminGuard)
CatalogRouter.route('/brand/all').get()
CatalogRouter.route('/brand/:brandSlug')
.get(UserGuard)
.patch(AdminGuard)
.delete(AdminGuard)
export default CatalogRouter;

View File

@ -1,40 +0,0 @@
import express, {type Router} from "express";
import AdminGuard from "@validators/AdminGuard";
import UserGuard from "@validators/UserGuard";
import CategoryController from "@controllers/category.controller";
const router: Router = express.Router();
//-- MODELS >>
router.route('/model/new').get(AdminGuard)
router.route('/model/all').get()
router.route('/model/:modelSlug')
.get(UserGuard)
.patch(AdminGuard)
.delete(AdminGuard)
//-- CATEGORY >>
router.route('/category/new').get(AdminGuard, CategoryController.create)
router.route('/category/all').get(CategoryController.getAll)
router.route('/category/:categorySlug')
.get(UserGuard, CategoryController.getBySlug)
.patch(AdminGuard, CategoryController.update)
.delete(AdminGuard, CategoryController.delete)
//-- BRAND >>
router.route('/brand/new').post(AdminGuard)
router.route('/brand/all').get()
router.route('/brand/:brandSlug')
.get(UserGuard)
.patch(AdminGuard)
.delete(AdminGuard)

View File

@ -1,3 +1,3 @@
export * from './auth/router' export * from 'src/routes/auth/authRouter'
export * from './catalog/router' export * from 'src/routes/catalog/catalogRouter'
export * from './rent/router' export * from 'src/routes/rent/rentRouter'

View File

@ -3,30 +3,32 @@ import AdminGuard from "@validators/AdminGuard";
import UserGuard from "@validators/UserGuard"; import UserGuard from "@validators/UserGuard";
const router: Router = express.Router(); const RentRouter: Router = express.Router();
// Get rent affected to the user // Get rent affected to the user
router.route('/affected') RentRouter.route('/affected')
.get(UserGuard) .get(UserGuard)
// Get all vehicle in rent (admin only) // Get all vehicle in rent (admin only)
router.route('/affected/all') RentRouter.route('/affected/all')
.get(AdminGuard) .get(AdminGuard)
// Add a new vehicle (admin only) // Add a new vehicle (admin only)
router.route('/veh/new') RentRouter.route('/veh/new')
.post(AdminGuard) .post(AdminGuard)
// Get all vehicles // Get all vehicles
router.route('/veh/all') RentRouter.route('/veh/all')
.get() .get()
// Rent a specific vehicle // Rent a specific vehicle
router.route('/veh/rent/:vehicleId') RentRouter.route('/veh/rent/:vehicleId')
.post(UserGuard) .post(UserGuard)
router.route('/veh/:vehicleId') RentRouter.route('/veh/:vehicleId')
.get(UserGuard) .get(UserGuard)
.patch(AdminGuard) .patch(AdminGuard)
.delete(AdminGuard) .delete(AdminGuard)
export default RentRouter;