UNPKG

node-rigorous

Version:
44 lines (29 loc) 1.03 kB
const { RigorousError, errorMessage } = require('../../../factory/errors/index'); function handleErrorResponse(err) { let errorResponse = errorMessage.OperationError; if (err.errmsg) { if (err.errmsg.indexOf('email_1 dup key') > -1) { errorResponse = errorMessage.OperationError.EmailAlreadyExist; } else if (err.errmsg.indexOf('duplicate key error') > -1) { errorResponse = errorMessage.OperationError.AlreadyExist; } } 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); }); }, };