UNPKG

express-easy-curd

Version:

A lightweight helper library for building Express.js routes, controllers, and Redis-enhanced middleware with optional Redis support.

31 lines (30 loc) 1.07 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.partialFilterMiddlewares = exports.sendResponse = exports.ApiError = void 0; // api error for send error with message and status class ApiError extends Error { constructor(statusCode, message) { super(message); this.statusCode = statusCode; this.status = `${statusCode}`.startsWith("4") ? "fail" : "error"; this.isOperational = true; Error.captureStackTrace(this, this.constructor); } } exports.ApiError = ApiError; // response formate const sendResponse = (res, status, payload) => { const { success, message, data, meta } = payload; const response = { success, message }; if (meta) response.meta = meta; if (data !== undefined) response.data = data; return res.status(status).json(response); }; exports.sendResponse = sendResponse; const partialFilterMiddlewares = (keys) => (req, res, next) => { req.partialFilter = keys; next(); }; exports.partialFilterMiddlewares = partialFilterMiddlewares;