@lskjs/server
Version:
LSK server.
37 lines (30 loc) • 3.15 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports["default"] = void 0;
var _get = _interopRequireDefault(require("lodash/get"));
/* eslint-disable no-unused-vars */
var _default = function _default() {
return function (err, req, res, next) {
if ((0, _get["default"])(err, 'level', 'error') === 'error') {
if (req && req.log && req.log.error) {
req.log.error({
err: err,
query: req.query,
body: req.body,
headers: req.headers
}, (err || {}).stack);
} else {
console.error(err); // eslint-disable-line no-console
}
}
res.status(err.status || 500);
if (res.err) return res.err(err); // if (false) next()
return res.json(err);
};
};
exports["default"] = _default;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9taWRkbGV3YXJlcy9jYXRjaEVycm9yLmpzIl0sIm5hbWVzIjpbImVyciIsInJlcSIsInJlcyIsIm5leHQiLCJsb2ciLCJlcnJvciIsInF1ZXJ5IiwiYm9keSIsImhlYWRlcnMiLCJzdGFjayIsImNvbnNvbGUiLCJzdGF0dXMiLCJqc29uIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFDQTs7QUFEQTtlQUdlO0FBQUEsU0FDYixVQUFVQSxHQUFWLEVBQWVDLEdBQWYsRUFBb0JDLEdBQXBCLEVBQXlCQyxJQUF6QixFQUErQjtBQUM3QixRQUFJLHFCQUFJSCxHQUFKLEVBQVMsT0FBVCxFQUFrQixPQUFsQixNQUErQixPQUFuQyxFQUE0QztBQUMxQyxVQUFJQyxHQUFHLElBQUlBLEdBQUcsQ0FBQ0csR0FBWCxJQUFrQkgsR0FBRyxDQUFDRyxHQUFKLENBQVFDLEtBQTlCLEVBQXFDO0FBQ25DSixRQUFBQSxHQUFHLENBQUNHLEdBQUosQ0FBUUMsS0FBUixDQUNFO0FBQ0VMLFVBQUFBLEdBQUcsRUFBSEEsR0FERjtBQUVFTSxVQUFBQSxLQUFLLEVBQUVMLEdBQUcsQ0FBQ0ssS0FGYjtBQUdFQyxVQUFBQSxJQUFJLEVBQUVOLEdBQUcsQ0FBQ00sSUFIWjtBQUlFQyxVQUFBQSxPQUFPLEVBQUVQLEdBQUcsQ0FBQ087QUFKZixTQURGLEVBT0UsQ0FBQ1IsR0FBRyxJQUFJLEVBQVIsRUFBWVMsS0FQZDtBQVNELE9BVkQsTUFVTztBQUNMQyxRQUFBQSxPQUFPLENBQUNMLEtBQVIsQ0FBY0wsR0FBZCxFQURLLENBQ2U7QUFDckI7QUFDRjs7QUFDREUsSUFBQUEsR0FBRyxDQUFDUyxNQUFKLENBQVdYLEdBQUcsQ0FBQ1csTUFBSixJQUFjLEdBQXpCO0FBQ0EsUUFBSVQsR0FBRyxDQUFDRixHQUFSLEVBQWEsT0FBT0UsR0FBRyxDQUFDRixHQUFKLENBQVFBLEdBQVIsQ0FBUCxDQWpCZ0IsQ0FrQjdCOztBQUNBLFdBQU9FLEdBQUcsQ0FBQ1UsSUFBSixDQUFTWixHQUFULENBQVA7QUFDRCxHQXJCWTtBQUFBLEMiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBuby11bnVzZWQtdmFycyAqL1xuaW1wb3J0IGdldCBmcm9tICdsb2Rhc2gvZ2V0JztcblxuZXhwb3J0IGRlZmF1bHQgKCkgPT5cbiAgZnVuY3Rpb24gKGVyciwgcmVxLCByZXMsIG5leHQpIHtcbiAgICBpZiAoZ2V0KGVyciwgJ2xldmVsJywgJ2Vycm9yJykgPT09ICdlcnJvcicpIHtcbiAgICAgIGlmIChyZXEgJiYgcmVxLmxvZyAmJiByZXEubG9nLmVycm9yKSB7XG4gICAgICAgIHJlcS5sb2cuZXJyb3IoXG4gICAgICAgICAge1xuICAgICAgICAgICAgZXJyLFxuICAgICAgICAgICAgcXVlcnk6IHJlcS5xdWVyeSxcbiAgICAgICAgICAgIGJvZHk6IHJlcS5ib2R5LFxuICAgICAgICAgICAgaGVhZGVyczogcmVxLmhlYWRlcnMsXG4gICAgICAgICAgfSxcbiAgICAgICAgICAoZXJyIHx8IHt9KS5zdGFjayxcbiAgICAgICAgKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoZXJyKTsgLy8gZXNsaW50LWRpc2FibGUtbGluZSBuby1jb25zb2xlXG4gICAgICB9XG4gICAgfVxuICAgIHJlcy5zdGF0dXMoZXJyLnN0YXR1cyB8fCA1MDApO1xuICAgIGlmIChyZXMuZXJyKSByZXR1cm4gcmVzLmVycihlcnIpO1xuICAgIC8vIGlmIChmYWxzZSkgbmV4dCgpXG4gICAgcmV0dXJuIHJlcy5qc29uKGVycik7XG4gIH07XG4iXX0=
//# sourceMappingURL=catchError.js.map