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:
parent
5d53cd28f8
commit
9bdcdef88f
13
src/app.ts
13
src/app.ts
@ -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 !')
|
@ -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
|
42
src/routes/catalog/catalogRouter.ts
Normal file
42
src/routes/catalog/catalogRouter.ts
Normal 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;
|
@ -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)
|
|
@ -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'
|
@ -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;
|
Loading…
x
Reference in New Issue
Block a user