c2-mongoose 2.1.339 → 2.1.341

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,6 @@
1
+ import mongoose from "mongoose";
2
+ declare class GetOneByFilterFlow {
3
+ exec(params: any, model: mongoose.Model<any>): Promise<any>;
4
+ }
5
+ declare const _default: GetOneByFilterFlow;
6
+ export default _default;
@@ -0,0 +1,81 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __generator = (this && this.__generator) || function (thisArg, body) {
12
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
+ function verb(n) { return function (v) { return step([n, v]); }; }
15
+ function step(op) {
16
+ if (f) throw new TypeError("Generator is already executing.");
17
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
18
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
+ if (y = 0, t) op = [op[0] & 2, t.value];
20
+ switch (op[0]) {
21
+ case 0: case 1: t = op; break;
22
+ case 4: _.label++; return { value: op[1], done: false };
23
+ case 5: _.label++; y = op[1]; op = [0]; continue;
24
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
+ default:
26
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
+ if (t[2]) _.ops.pop();
31
+ _.trys.pop(); continue;
32
+ }
33
+ op = body.call(thisArg, _);
34
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
+ }
37
+ };
38
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
39
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
40
+ if (ar || !(i in from)) {
41
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
42
+ ar[i] = from[i];
43
+ }
44
+ }
45
+ return to.concat(ar || Array.prototype.slice.call(from));
46
+ };
47
+ var __importDefault = (this && this.__importDefault) || function (mod) {
48
+ return (mod && mod.__esModule) ? mod : { "default": mod };
49
+ };
50
+ Object.defineProperty(exports, "__esModule", { value: true });
51
+ var MatchFlowItem_1 = __importDefault(require("./item/MatchFlowItem"));
52
+ var PopulateFlowItem_1 = __importDefault(require("./item/PopulateFlowItem"));
53
+ var ProjectFlowItem_1 = __importDefault(require("./item/ProjectFlowItem"));
54
+ var GetOneByFilterFlow = /** @class */ (function () {
55
+ function GetOneByFilterFlow() {
56
+ }
57
+ GetOneByFilterFlow.prototype.exec = function (params, model) {
58
+ return __awaiter(this, void 0, void 0, function () {
59
+ var pipeline, result;
60
+ return __generator(this, function (_a) {
61
+ switch (_a.label) {
62
+ case 0:
63
+ pipeline = [];
64
+ pipeline = __spreadArray(__spreadArray([], pipeline, true), PopulateFlowItem_1.default.exec(params.populate, model), true);
65
+ pipeline = __spreadArray(__spreadArray([], pipeline, true), ProjectFlowItem_1.default.exec(params.select), true);
66
+ return [4 /*yield*/, model.aggregate(__spreadArray(__spreadArray([], MatchFlowItem_1.default.exec(params, model), true), pipeline, true), {
67
+ collation: {
68
+ locale: "pt",
69
+ numericOrdering: true
70
+ }
71
+ })];
72
+ case 1:
73
+ result = _a.sent();
74
+ return [2 /*return*/, result[0]];
75
+ }
76
+ });
77
+ });
78
+ };
79
+ return GetOneByFilterFlow;
80
+ }());
81
+ exports.default = new GetOneByFilterFlow;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "c2-mongoose",
3
- "version": "2.1.339",
3
+ "version": "2.1.341",
4
4
  "description": "Lib to make any search in database mongoose and use as basic crud",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -0,0 +1,29 @@
1
+ import mongoose from "mongoose"
2
+ import MatchFlowItem from "./item/MatchFlowItem"
3
+ import PopulateFlowItem from "./item/PopulateFlowItem"
4
+ import ProjectFlowItem from "./item/ProjectFlowItem"
5
+
6
+
7
+ class GetOneByFilterFlow {
8
+
9
+ async exec(params: any, model: mongoose.Model<any>) {
10
+
11
+ let pipeline: any[] = []
12
+ pipeline = [...pipeline, ...PopulateFlowItem.exec(params.populate, model),]
13
+ pipeline = [...pipeline, ...ProjectFlowItem.exec(params.select)]
14
+
15
+ let result = await model.aggregate([
16
+ ...MatchFlowItem.exec(params, model),
17
+ ...pipeline
18
+ ], {
19
+ collation: {
20
+ locale: "pt",
21
+ numericOrdering: true
22
+ }
23
+ })
24
+
25
+ return result[0]
26
+ }
27
+ }
28
+
29
+ export default new GetOneByFilterFlow