UNPKG

node-rigorous

Version:
38 lines (32 loc) 1.04 kB
"use strict"; var _require = require('../../../factory/RigorousError/index'), RigorousError = _require.RigorousError, errorTypes = _require.errorTypes; function handleErrorResponse(err) { var 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; } } var 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: function exec(err, resultUnfiltered) { return new Promise(function (resolve, reject) { if (err) { var errObj = handleErrorResponse(err); return reject(errObj); } return resolve(resultUnfiltered); }); } };