27 lines
685 B
JavaScript
27 lines
685 B
JavaScript
import log from "../utils/log.js";
|
|
import customError from "./customError.js";
|
|
import responses from './responseCodes.js';
|
|
import translate from '../utils/translate.js';
|
|
|
|
const errorHandler = (err, req, res) => {
|
|
log.error(err);
|
|
console.log(err);
|
|
let language = req.headers["accept-language"];
|
|
|
|
if (err instanceof customError) {
|
|
return res.status(responses.getHTTPCode(err.code)).send(translate(language, err.code));
|
|
}
|
|
}
|
|
|
|
const tryHandler = (func) => {
|
|
return async (req, res, next) => {
|
|
try {
|
|
await func(req, res, next);
|
|
} catch (err) {
|
|
errorHandler(err, req, res);
|
|
}
|
|
}
|
|
}
|
|
|
|
export default tryHandler;
|