21 lines
684 B
TypeScript
21 lines
684 B
TypeScript
import { validateRequestDTO } from "@common/presentation";
|
|
import { checkTabContext, checkUserIsAdmin } from "@contexts/auth/infraestructure";
|
|
import { listUsersController, ListUsersSchema } from "@contexts/auth/presentation";
|
|
import { NextFunction, Request, Response, Router } from "express";
|
|
|
|
export const userRouter = (appRouter: Router) => {
|
|
const authRoutes: Router = Router({ mergeParams: true });
|
|
|
|
authRoutes.get(
|
|
"/",
|
|
validateRequestDTO(ListUsersSchema),
|
|
checkTabContext,
|
|
checkUserIsAdmin,
|
|
(req: Request, res: Response, next: NextFunction) => {
|
|
listUsersController().execute(req, res, next);
|
|
}
|
|
);
|
|
|
|
appRouter.use("/users", authRoutes);
|
|
};
|