@jcamacaro96/utils
Version:
QR Commerce utils
38 lines (37 loc) • 1.66 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.responseError = exports.httpResponse = exports.response = void 0;
const http_status_1 = require("../http/http-status");
const logger_1 = require("./logger");
const http_errors_1 = require("../http/http-errors");
const isOk = (code) => code >= 200 && code <= 299;
const response = (res, code, payload = []) => {
const response = {
ok: isOk(code),
message: http_status_1.httpStatus[code].message,
description: http_status_1.httpStatus[code].description,
payload
};
return res.status(code).json(response);
};
exports.response = response;
const httpResponse = ({ res, statusCode, statusError, payload = [] }) => {
const errorDescription = statusError != null ? http_errors_1.httpErros[statusError] : {};
const response = Object.assign(Object.assign({ ok: isOk(statusCode), message: http_status_1.httpStatus[statusCode].message, description: http_status_1.httpStatus[statusCode].description }, errorDescription), { payload });
return res.status(statusCode).json(response);
};
exports.httpResponse = httpResponse;
const responseError = (error, req, res, statusCode = 500) => {
const logger = new logger_1.Logger('responseError');
const errorMessage = error.message;
const response = {
ok: isOk(statusCode),
message: http_status_1.httpStatus[statusCode].message,
description: http_status_1.httpStatus[statusCode].description,
statusCode,
errorMessage
};
logger.error(error);
return res.status(statusCode).json(response);
};
exports.responseError = responseError;