UNPKG

nodejs-rigorous

Version:
41 lines (26 loc) 1.05 kB
const { RigorousError, errorTypes } = require('../../../factory/RigorousError/index'); function handleErrorResponse(err) { let errorResponse = errorTypes.RESPONSE_ERROR_OPERATION; if (err.errmsg) { if (err.errmsg.indexOf('email_1 dup key') > -1) { errorResponse = errorTypes.RESPONSE_ERROR_OPERATION_ALREADY_EXIST_EMAIL; } else if (err.errmsg.indexOf('duplicate key error') > -1) { errorResponse = errorTypes.RESPONSE_ERROR_OPERATION_ALREADY_EXIST; } } const result = new RigorousError(errorResponse, err); return result; } module.exports = { /** * Callback when result of Mongoose operation giving one object as a result * @param {*} err * @param {*} result */ exec(err, resultUnfiltered) { return new Promise((resolve, reject) => { if (err) { const errObj = handleErrorResponse(err); return reject(errObj); } return resolve(resultUnfiltered); }); }, };