diff --git a/src/api/routes/auth/adminAccountRoutes.js b/src/api/routes/auth/adminAccountRoutes.js
index f85cc73..eb9b270 100644
--- a/src/api/routes/auth/adminAccountRoutes.js
+++ b/src/api/routes/auth/adminAccountRoutes.js
@@ -1,24 +1,42 @@
import { deleteUser, loginUser, registerUser, UserType } from '#db/index.js';
import { AuthDto, RegisterDto } from '#dto/index.js';
-import { validateAuth } from '#api/middlewares/index.js';
+import { requireAdmin, validateAuth } from '#api/middlewares/index.js';
+import { RouteDescription, RouteMethod } from '#api/RouteDescription.js';
+/**
+ * @type {RouteDescription}
+ */
export const adminGetUsersRoute = {
- route: '/admin/users',
- onGetValidation: validateAuth({ roles: [UserType.ADMIN] }),
- async onGet(req, res) {
- res.send(DbUser.find({}).exec());
+ path: '/admin/users',
+ methods: {
+ get: new RouteMethod({
+ middlewares: [requireAdmin],
+ async method(req, res) {
+ res.send(DbUser.find({}).exec());
+ }
+ })
}
};
-export const adminUserRoute = {
- route: '/admin/user/:id',
- onGetValidation: validateAuth({ roles: [UserType.ADMIN] }),
- async onGet(req, res) {
- const user = await getUserById(req.params.id);
- },
- onDeleteValidation: validateAuth({ roles: [UserType.ADMIN] }),
- async onDelete(req, res) {
- await deleteUser(data);
- res.status(204).send();
+/**
+ * @type {RouteDescription}
+ */
+export const adminUserRoute = {
+ path: '/admin/user/:id',
+ methods: {
+ get: new RouteMethod({
+ middlewares: [requireAdmin],
+ async method(req, res) {
+ const user = await getUserById(req.params.id);
+ res.send(user);
+ }
+ }),
+ delete: new RouteMethod({
+ middlewares: [requireAdmin],
+ async method(req, res) {
+ await deleteUser(data);
+ res.status(204).send();
+ }
+ })
}
};
|