express-easy-curd
Version:
A lightweight helper library for building Express.js routes, controllers, and Redis-enhanced middleware with optional Redis support.
24 lines (23 loc) • 1.54 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.generatecurdRoutes = void 0;
const express_1 = __importDefault(require("express"));
const controller_1 = __importDefault(require("./controller")); // path to your globalController
const generatecurdRoutes = ({ mongooseModel, name, basePath = "", middlewares = {}, ioredis, cachedTime, }) => {
const controller = (0, controller_1.default)(mongooseModel, name, ioredis, cachedTime);
const router = express_1.default.Router();
router.get(`${basePath}/`, ...(middlewares.getAll || []), controller.getAll);
router.post(`${basePath}/`, ...(middlewares.create || []), controller.create);
router.put(`${basePath}/`, ...(middlewares.updateMany || []), controller.updateMany);
router.patch(`${basePath}/delete-many`, ...(middlewares.updateMany || []), controller.updateMany);
router.delete(`${basePath}/update-many`, ...(middlewares.removeMany || []), controller.removeMany);
router.get(`${basePath}/:id`, ...(middlewares.getSingle || []), controller.getSingle);
router.put(`${basePath}/:id`, ...(middlewares.update || []), controller.update);
router.patch(`${basePath}/:id`, ...(middlewares.update || []), controller.update);
router.delete(`${basePath}/:id`, ...(middlewares.remove || []), controller.remove);
return router;
};
exports.generatecurdRoutes = generatecurdRoutes;