UNPKG

node-rigorous

Version:
31 lines (19 loc) 864 B
const mongoose = require('mongoose'); const RigorousError = require('../../../facades/RigorousError'); const errorsMessages = require('../../../etc/errorsMessages'); const patch = require('./patch'); module.exports = (modelName, queryDelete) => { return new Promise((resolve, reject) => { try { // Delete = remove because deleteOne or deleteMany do not trigger any middleware (we need pre('remove') mongoose.model(modelName).findOneAndRemove(queryDelete, (err, resultOne) => { if (err) { throw err; } const resultJson = patch.leanWithId(resultOne); return resolve(resultJson); }); } catch (errGlobal) { reject(new RigorousError(errorsMessages.OperationError, errGlobal)); } }); };