const env = require('../config/env'); /** * Not found error handler middleware * @param {Object} req - Express request object * @param {Object} res - Express response object * @param {Function} next - Express next function */ const notFound = (req, res, next) => { const error = new Error(`Not Found - ${req.originalUrl}`); res.status(404); next(error); }; /** * General error handler middleware * @param {Error} err - Error object * @param {Object} req - Express request object * @param {Object} res - Express response object * @param {Function} next - Express next function */ const errorHandler = (err, req, res, next) => { // Log the error console.error(err.stack); // Set status code const statusCode = res.statusCode === 200 ? 500 : res.statusCode; // Send response res.status(statusCode).json({ message: err.message, stack: env.NODE_ENV === 'production' ? '🥞' : err.stack, error: env.NODE_ENV === 'development' ? err : {} }); }; module.exports = { notFound, errorHandler };