UNPKG

stagify

Version:

mongoose aggregate pipeline parser

26 lines (25 loc) 1.01 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.isValidId = exports.projectize = exports.isValidObject = exports.lean = void 0; var mongoose_1 = require("mongoose"); var ObjectId = mongoose_1.Types.ObjectId; var lean = function (data) { return JSON.parse(JSON.stringify(data)); }; exports.lean = lean; var isValidObject = function (obj) { return obj !== null && typeof obj === 'object' && Object.keys(obj).length > 0; }; exports.isValidObject = isValidObject; var projectize = function (select) { if ((0, exports.isValidObject)(select)) { for (var key in select) { select[key] = typeof select[key] === 'string' ? parseInt(select[key], 10) : 0; } return { $project: select, }; } else { return null; } }; exports.projectize = projectize; var isValidId = function (id) { return ObjectId.isValid(id) && String(new ObjectId(id)) === id; }; exports.isValidId = isValidId;