diginext-utils
Version:
README.md
67 lines • 2.83 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.Response = exports.getFailedResponse = exports.getSuccessResponse = exports.getResponse = void 0;
const log_1 = require("../xconsole/log");
const getResponse = () => {
return { status: 0, messages: [], data: null };
};
exports.getResponse = getResponse;
const getSuccessResponse = (data, message) => {
return { status: 1, messages: message ? [message] : [], data: data || true };
};
exports.getSuccessResponse = getSuccessResponse;
const getFailedResponse = (...messages) => {
var _a;
// Flatten messages and filter out undefined values
const flattenedMessages = ((_a = messages === null || messages === void 0 ? void 0 : messages.reduce) === null || _a === void 0 ? void 0 : _a.call(messages, (acc, message) => {
if (Array.isArray(message)) {
return acc.concat(message);
}
else if (!!message) {
acc.push(message);
return acc;
}
return acc;
}, [])) || [];
// Provide a default message if none is provided
if (flattenedMessages.length === 0) {
flattenedMessages.push("Something went wrong !");
}
// Return the response object
return { status: 0, error: true, messages: flattenedMessages, data: null };
};
exports.getFailedResponse = getFailedResponse;
exports.Response = {
send: (res, data = {}) => {
if (res.locals.logEnabled)
(0, log_1.logRes)(res, data);
if (data.error)
return exports.Response.failed(res, data.error);
return exports.Response.succeed(res, data);
},
succeed: (res, data = {}) => {
if (res.locals.logEnabled)
(0, log_1.logRes)(res, data);
return res.status(200).json((0, exports.getSuccessResponse)(data));
},
failed: (res, ...messages) => {
if (res.locals.logEnabled)
(0, log_1.logRes)(res, ...messages);
return res.status(200).json((0, exports.getFailedResponse)(...messages));
},
rejected: (res, message) => {
const msg = message ? message : "Permissions denied.";
if (res.locals.logEnabled)
(0, log_1.logRes)(res, { message: msg });
return res.status(403).json((0, exports.getFailedResponse)(msg));
},
ignore: (res, message) => {
const msg = message ? message : "Something went wrong?";
if (res.locals.logEnabled)
(0, log_1.logRes)(res, { statusCode: 404, message: msg });
return res.status(200).json((0, exports.getFailedResponse)(msg));
},
};
const response = { getResponse: exports.getResponse, getSuccessResponse: exports.getSuccessResponse, getFailedResponse: exports.getFailedResponse, Response: exports.Response };
exports.default = response;
//# sourceMappingURL=index.js.map