fosrl.pangolin/server/middlewares/formatError.ts

26 lines
834 B
TypeScript
Raw Permalink Normal View History

2024-10-01 20:48:03 -04:00
import { ErrorRequestHandler, NextFunction, Response } from "express";
import ErrorResponse from "@server/types/ErrorResponse";
import HttpCode from "@server/types/HttpCode";
import logger from "@server/logger";
2025-01-01 21:41:31 -05:00
import config from "@server/lib/config";
2024-10-01 20:48:03 -04:00
export const errorHandlerMiddleware: ErrorRequestHandler = (
error,
req,
res: Response<ErrorResponse>,
next: NextFunction
2024-10-01 20:48:03 -04:00
) => {
const statusCode = error.statusCode || HttpCode.INTERNAL_SERVER_ERROR;
2024-12-20 22:24:44 -05:00
// if (process.env.ENVIRONMENT !== "prod") {
// logger.error(error);
// }
2024-10-01 20:48:03 -04:00
res?.status(statusCode).send({
data: null,
success: false,
error: true,
message: error.message || "Internal Server Error",
status: statusCode,
stack: process.env.ENVIRONMENT === "prod" ? null : error.stack,
2024-10-01 20:48:03 -04:00
});
};