mongosuper
Version:
mongosuper is a superset of mongoose. It is a wrapper around mongoose. It manage your mongoose connection and keep it alive always. It also provide you some extra features like CRUD operations, etc.
85 lines • 4.21 kB
JavaScript
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
(function (factory) {
if (typeof module === "object" && typeof module.exports === "object") {
var v = factory(require, exports);
if (v !== undefined) module.exports = v;
}
else if (typeof define === "function" && define.amd) {
define(["require", "exports", "../Validator/FindValidator"], factory);
}
})(function (require, exports) {
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.Delete = void 0;
/* This File is used to delete the data from the database. */
const FindValidator_1 = __importDefault(require("../Validator/FindValidator")); // import the find validator
function Delete(Filter, Models, Multiple = false) {
return __awaiter(this, void 0, void 0, function* () {
try {
const Validator = yield (0, FindValidator_1.default)(Filter); // find the validator
if (Validator === true) {
if (Multiple === false) {
const DeleteData = yield Models.deleteOne(Filter[0]); // delete the data
if (DeleteData.deletedCount === 1) {
return {
status: true,
message: "Data Deleted Successfully",
DeletedCount: DeleteData.deletedCount,
NewData: yield Models.find({ $and: Filter }) // find the data
};
}
else {
return {
status: false,
message: "Data not Deleted, Data not found, please check the filter",
DeletedCount: DeleteData.deletedCount,
DeletedData: undefined
};
}
}
else if (Multiple === true) {
const DeleteData = yield Models.deleteMany({ $and: Filter }); // delete the data
if (DeleteData.deletedCount > 0) {
return {
status: true,
message: "Data Deleted Successfully",
DeletedCount: DeleteData.deletedCount,
NewData: yield Models.find({ $and: Filter }) // find the data
};
}
else {
return {
status: false,
message: "Data not Deleted, Data not found, please check the filter",
DeletedCount: DeleteData.deletedCount,
DeletedData: undefined
};
}
}
}
}
catch (error) {
console.log(error);
return {
status: false,
message: "Something went wrong",
DeletedCount: 0,
DeletedData: []
};
}
});
} // delete data from the database
exports.Delete = Delete;
});
//# sourceMappingURL=Delete.js.map