auth0-extensions/auth0-delegated-administration-extension

View on GitHub
server/lib/middlewares/errorHandler.js

Summary

Maintainability
A
40 mins
Test Coverage
export default (errorLogger) =>
  (err, req, res, next) => {
    if (errorLogger) {
      errorLogger(err);
    }

    if (err && (err.status || err.statusCode)) {
      res.status(err.status || err.statusCode);
      return res.json({
        error: err.code || err.name,
        message: err.message || err.name
      });
    }

    res.status(500);
    if (process.env.NODE_ENV === 'production') {
      return res.json({
        error: 'InternalServerError',
        message: err.message || err.name
      });
    }

    return res.json({
      error: 'InternalServerError',
      message: err.message || err.name,
      details: {
        message: err.message,
        status: err.status,
        stack: err.stack
      }
    });
  };