UNPKG

nodejs-rigorous

Version:
42 lines (27 loc) 1.29 kB
const mongoose = require('mongoose'); const callbackResult = require('./callback_result'); module.exports = (collectionName, queryDelete) => { return new Promise((resolve, reject) => { try { // Delete = remove because deleteOne or deleteMany do not trigger any middleware (we need pre('remove') mongoose.model(collectionName).findOneAndRemove(queryDelete, (err, resultUnfiltered) => { callbackResult.exec(err, resultUnfiltered) .then((result) => { const ids = []; if (Array.isArray(result)) { result.forEach((resultUnit) => { ids.push(resultUnit.id); }); } else { ids.push(result.id); } return resolve(result); }) .catch((err2) => { return reject(err2); }); }); } catch (errGlobal) { reject(errGlobal); } }); };