Presupuestador_web/server/src/infrastructure/express/api/v1.ts

34 lines
1.0 KiB
TypeScript
Raw Normal View History

2024-05-15 19:56:22 +00:00
import { AuthRouter } from "@/contexts/auth";
import { CatalogRouter } from "@/contexts/catalog";
2024-05-19 22:04:23 +00:00
import { createMiddlewareMap } from "@/contexts/common/infrastructure/express";
2024-05-21 16:48:40 +00:00
import { DealerRouter } from "@/contexts/sales/infrastructure/express";
2024-05-16 18:16:00 +00:00
import { UserRouter } from "@/contexts/users";
2024-05-15 19:56:22 +00:00
import Express from "express";
2024-05-19 22:04:23 +00:00
import { createContextMiddleware } from "./context.middleware";
2024-04-23 15:29:38 +00:00
2024-05-15 19:56:22 +00:00
export const v1Routes = () => {
const routes = Express.Router({ mergeParams: true });
2024-04-23 15:29:38 +00:00
2024-05-15 19:56:22 +00:00
routes.get("/hello", (req, res) => {
res.send("Hello world!");
});
2024-04-23 15:29:38 +00:00
2024-05-21 16:48:40 +00:00
routes.use((req: Express.Request, res: Express.Response, next: Express.NextFunction) => {
res.locals["context"] = createContextMiddleware();
res.locals["middlewares"] = createMiddlewareMap();
2024-05-15 19:56:22 +00:00
2024-05-21 16:48:40 +00:00
return next();
});
2024-05-15 19:56:22 +00:00
routes.use((req, res, next) => {
2024-05-21 16:48:40 +00:00
console.log(`[${new Date().toLocaleTimeString()}] Incoming request to ${req.path}`);
2024-05-15 19:56:22 +00:00
next();
});
AuthRouter(routes);
2024-05-16 18:16:00 +00:00
UserRouter(routes);
2024-05-15 19:56:22 +00:00
CatalogRouter(routes);
2024-05-21 16:48:40 +00:00
DealerRouter(routes);
2024-05-15 19:56:22 +00:00
return routes;
};