c2-mongoose 2.1.104 → 2.1.105

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.
@@ -187,9 +187,9 @@ var SearchFlow = /** @class */ (function () {
187
187
  SearchFlow.prototype.searchPageable = function (model, options) {
188
188
  var _a, _b;
189
189
  return __awaiter(this, void 0, void 0, function () {
190
- var stagesItems, stagesPaging, stagesMetadata, result, items, _i, _c, populate;
191
- return __generator(this, function (_d) {
192
- switch (_d.label) {
190
+ var stagesItems, stagesPaging, stagesMetadata, facet, _i, stagesMetadata_1, metadata, result, items, _c, _d, populate;
191
+ return __generator(this, function (_e) {
192
+ switch (_e.label) {
193
193
  case 0:
194
194
  stagesItems = [{ $match: this.filters }];
195
195
  if ((0, Utils_1.isNotEmpty)(options.unions)) {
@@ -214,30 +214,39 @@ var SearchFlow = /** @class */ (function () {
214
214
  if ((0, Utils_1.isNotEmpty)(options.metadata)) {
215
215
  stagesMetadata.push.apply(stagesMetadata, options.metadata);
216
216
  }
217
+ facet = {
218
+ items: stagesItems,
219
+ paging: stagesPaging,
220
+ };
221
+ for (_i = 0, stagesMetadata_1 = stagesMetadata; _i < stagesMetadata_1.length; _i++) {
222
+ metadata = stagesMetadata_1[_i];
223
+ facet[metadata.id] = metadata.conditions;
224
+ }
217
225
  return [4 /*yield*/, model.aggregate([
218
226
  {
219
- $facet: {
220
- items: stagesItems,
221
- paging: stagesPaging,
222
- metadata: stagesMetadata
223
- }
224
- }
227
+ $facet: facet
228
+ // {
229
+ // items: stagesItems,
230
+ // paging: stagesPaging,
231
+ // metadata: stagesMetadata
232
+ // }
233
+ },
225
234
  ]).session(options === null || options === void 0 ? void 0 : options.session)];
226
235
  case 1:
227
- result = _d.sent();
236
+ result = _e.sent();
228
237
  items = result[0].items;
229
238
  if (!((0, Utils_1.isNotEmpty)(this.populate) && Array.isArray(this.populate))) return [3 /*break*/, 5];
230
- _i = 0, _c = this.populate;
231
- _d.label = 2;
239
+ _c = 0, _d = this.populate;
240
+ _e.label = 2;
232
241
  case 2:
233
- if (!(_i < _c.length)) return [3 /*break*/, 5];
234
- populate = _c[_i];
242
+ if (!(_c < _d.length)) return [3 /*break*/, 5];
243
+ populate = _d[_c];
235
244
  return [4 /*yield*/, model.populate(result[0].items, populate)];
236
245
  case 3:
237
- items = _d.sent();
238
- _d.label = 4;
246
+ items = _e.sent();
247
+ _e.label = 4;
239
248
  case 4:
240
- _i++;
249
+ _c++;
241
250
  return [3 /*break*/, 2];
242
251
  case 5: return [2 /*return*/, {
243
252
  items: items,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "c2-mongoose",
3
- "version": "2.1.104",
3
+ "version": "2.1.105",
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",
@@ -155,15 +155,28 @@ abstract class SearchFlow {
155
155
  stagesMetadata.push(...options.metadata)
156
156
  }
157
157
 
158
+
159
+ const facet: { [key: string]: any } = {
160
+ items: stagesItems,
161
+ paging: stagesPaging,
162
+ }
163
+
164
+ for (let metadata of stagesMetadata) {
165
+ facet[metadata.id] = metadata.conditions
166
+ }
167
+
168
+
169
+
158
170
  const result = await model.aggregate(
159
171
  [
160
172
  {
161
- $facet: {
162
- items: stagesItems,
163
- paging: stagesPaging,
164
- metadata: stagesMetadata
165
- }
166
- }
173
+ $facet: facet
174
+ // {
175
+ // items: stagesItems,
176
+ // paging: stagesPaging,
177
+ // metadata: stagesMetadata
178
+ // }
179
+ },
167
180
  ]
168
181
  ).session(options?.session as ClientSession)
169
182