UNPKG

agilite-core

Version:

A NodeJS module that provides reusable backend functionality to the Agilit-e environment

102 lines 5.55 kB
'use strict'; 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 }; }; Object.defineProperty(exports, "__esModule", { value: true }); const type_detect_1 = __importDefault(require("agilite-utils/dist/type-detect")); const enums_type_detect_1 = __importDefault(require("agilite-utils/dist/enums-type-detect")); // NATIVE FUNCTIONS const find = (Schema_1, qry_1, ...args_1) => __awaiter(void 0, [Schema_1, qry_1, ...args_1], void 0, function* (Schema, qry, fieldsToReturn = undefined, qryOptions = undefined, page = undefined, pageLimit = undefined) { if (page === null || pageLimit === null) { return yield Schema.find(qry, fieldsToReturn, qryOptions).exec(); } else { return yield Schema.find(qry, fieldsToReturn, qryOptions) .skip(page * pageLimit) .limit(pageLimit) .exec(); } }); const distinct = (Schema_1, fieldName_1, ...args_1) => __awaiter(void 0, [Schema_1, fieldName_1, ...args_1], void 0, function* (Schema, fieldName, conditions = undefined) { return yield Schema.distinct(fieldName, conditions); }); const findOne = (Schema_1, qry_1, ...args_1) => __awaiter(void 0, [Schema_1, qry_1, ...args_1], void 0, function* (Schema, qry, fieldsToReturn = undefined, qryOptions = undefined) { return yield Schema.findOne(qry, fieldsToReturn, qryOptions).exec(); }); const create = (Schema_1, entry_1, ...args_1) => __awaiter(void 0, [Schema_1, entry_1, ...args_1], void 0, function* (Schema, entry, options = undefined) { const doc = new Schema(entry); let result = null; if ((0, type_detect_1.default)(options) !== enums_type_detect_1.default.OBJECT) options = null; result = yield Schema.create([doc], options); return result[0]; }); const findById = (Schema_1, id_1, ...args_1) => __awaiter(void 0, [Schema_1, id_1, ...args_1], void 0, function* (Schema, id, fieldsToReturn = undefined, qryOptions = undefined) { return yield Schema.findById(id, fieldsToReturn, qryOptions).exec(); }); const findByIdAndUpdate = (Schema_1, id_1, entry_1, ...args_1) => __awaiter(void 0, [Schema_1, id_1, entry_1, ...args_1], void 0, function* (Schema, id, entry, qryOptions = undefined) { return yield Schema.findByIdAndUpdate(id, entry, qryOptions); }); const findByIdAndDelete = (Schema_1, id_1, ...args_1) => __awaiter(void 0, [Schema_1, id_1, ...args_1], void 0, function* (Schema, id, qryOptions = undefined) { return yield Schema.findByIdAndDelete(id, qryOptions); }); const findOneAndUpdate = (Schema_1, qry_1, entry_1, ...args_1) => __awaiter(void 0, [Schema_1, qry_1, entry_1, ...args_1], void 0, function* (Schema, qry, entry, qryOptions = undefined) { return yield Schema.findOneAndUpdate(qry, entry, qryOptions); }); const findOneAndDelete = (Schema_1, qry_1, ...args_1) => __awaiter(void 0, [Schema_1, qry_1, ...args_1], void 0, function* (Schema, qry, qryOptions = undefined) { return yield Schema.findOneAndDelete(qry, qryOptions); }); const deleteOne = (Schema, qry) => __awaiter(void 0, void 0, void 0, function* () { return yield Schema.deleteOne(qry); }); const deleteMany = (Schema_1, conditions_1, ...args_1) => __awaiter(void 0, [Schema_1, conditions_1, ...args_1], void 0, function* (Schema, conditions, options = undefined) { return yield Schema.deleteMany(conditions, options); }); const updateMany = (Schema_1, qry_1, entry_1, ...args_1) => __awaiter(void 0, [Schema_1, qry_1, entry_1, ...args_1], void 0, function* (Schema, qry, entry, qryOptions = undefined) { return yield Schema.updateMany(qry, entry, qryOptions); }); const insertMany = (Schema, data) => __awaiter(void 0, void 0, void 0, function* () { return yield Schema.insertMany(data); }); const bulkWrite = (Schema_1, data_1, ...args_1) => __awaiter(void 0, [Schema_1, data_1, ...args_1], void 0, function* (Schema, data, qryOptions = undefined) { return yield Schema.bulkWrite(data, qryOptions); }); const aggregate = (Schema, conditions) => __awaiter(void 0, void 0, void 0, function* () { return yield Schema.aggregate(conditions); }); const countDocuments = (Schema, conditions) => __awaiter(void 0, void 0, void 0, function* () { return yield Schema.countDocuments(conditions); }); const estimatedDocumentCount = (Schema_1, ...args_1) => __awaiter(void 0, [Schema_1, ...args_1], void 0, function* (Schema, options = undefined) { return yield Schema.estimatedDocumentCount(options); }); // EXPORTS exports.default = { find, distinct, findOne, create, findById, findByIdAndUpdate, findByIdAndDelete, findOneAndUpdate, findOneAndDelete, deleteOne, deleteMany, updateMany, insertMany, bulkWrite, aggregate, countDocuments, estimatedDocumentCount }; //# sourceMappingURL=mongo-queries.js.map