/
home
/
infinitibizsol
/
insurcrm.infinitibizsol.com
/
controllers
/
File Upload :
llllll
Current File: /home/infinitibizsol/insurcrm.infinitibizsol.com/controllers/errorHandler.js
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports["default"] = void 0; var _apiError = _interopRequireDefault(require("../utils/apiError")); function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; } var setCastError = function setCastError(err) { return new _apiError["default"]("".concat(err.message), 404); }; var setDuplicateNameError = function setDuplicateNameError(err) { if (err.keyPattern.email === 1) err.keyValue.name = "Email"; var msg = err.keyValue.name === "Email" ? "Already user has the same: / ".concat(err.keyValue.name, " /") : "Already user has the same name: / ".concat(err.keyValue.name, " /"); return new _apiError["default"](msg, 404); }; var setValidatorError = function setValidatorError(err) { var msgs = Object.values(err.errors).map(function (el) { return el.message; }).join(","); return new _apiError["default"]("/ ".concat(msgs, " /"), 404); }; var setJwtError = function setJwtError(err) { new _apiError["default"]("".concat(err.message), 402); }; var unAuthorizedErrorHandler = function unAuthorizedErrorHandler(err) { return new _apiError["default"]("".concat(err.inner.message), 402); }; var productionError = function productionError(err, req, res) { var error = err; if (err.name === "UnauthorizedError") error = unAuthorizedErrorHandler(error); if (err.name === "MongoNetworkError") error.message = "Mongo Not working"; if (err.name === "CastError") error = setCastError(error); if (err.name === "ValidationError") error = setValidatorError(error); if (err.code === 11000) error = setDuplicateNameError(error); if (err._message === "Tour validation failed") error = setValidatorError(error); if (err._message === "users validation failed") error = setValidatorError(error); if (err.name === "JsonWebTokenError") error = setJwtError(error); if (err.name === "TokenExpiredError") error = setJwtError(error); return res.status(err.statusCode).json({ name: error.name, message: error.message, statusCode: error.statusCode, isOperational: error.isOperational }); }; var developmentError = function developmentError(err, req, res) { res.status(err.statusCode).json({ name: err.name, message: err.message, status: err.status, statusCode: err.statusCode, isOperational: err.isOperational, stack: err.stack }); }; var globalErrorHandler = function globalErrorHandler(err, req, res, next) { err.statusCode = err.statusCode || 500; err.status = err.status || "error"; if (process.env.NODE_ENV === "development") { developmentError(err, req, res); } else if (process.env.NODE_ENV === "production") { productionError(err, req, res); } next(); }; var _default = exports["default"] = globalErrorHandler;
Copyright ©2k19 -
Hexid
|
Tex7ure