UNPKG

ts-express-kit

Version:

A TypeScript starter kit for building Express applications with best practices.

47 lines (46 loc) 1.57 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const AppError_1 = __importDefault(require("../errors/AppError")); const config_1 = __importDefault(require("../config")); const globalErrorHandler = (err, req, res, next) => { // setting default values let statusCode = 500; let message = 'Something went wrong'; let errorSources = [ { path: '', message: 'Something went wrong' } ]; if (err instanceof AppError_1.default) { statusCode = err === null || err === void 0 ? void 0 : err.statusCode; message = err === null || err === void 0 ? void 0 : err.message; errorSources = [ { path: '', message: err === null || err === void 0 ? void 0 : err.message } ]; } else if (err instanceof Error) { message = err === null || err === void 0 ? void 0 : err.message; errorSources = [ { path: '', message: err === null || err === void 0 ? void 0 : err.message } ]; } // actual return return res.status(statusCode).json({ success: false, message, errorSources, err, stack: config_1.default.NODE_ENV === 'development' ? err === null || err === void 0 ? void 0 : err.stack : null }); }; exports.default = globalErrorHandler;