@knovator/pagecreator-node 1.4.7 → 1.4.8

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.
@@ -2,29 +2,14 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.handleResetData = exports.handleUpdateData = exports.updateRedisPage = exports.getPageDataDB = exports.updateWidgetPagesData = exports.updateRedisWidget = exports.getWidgetDataDB = void 0;
4
4
  const tslib_1 = require("tslib");
5
- const mongoose_1 = require("mongoose");
6
5
  const helper_1 = require("../utils/helper");
7
6
  const redis_1 = require("../utils/redis");
8
7
  const defaults_1 = require("../utils/defaults");
9
- const getAggregationQuery = ({ collectionName, ids, }) => {
10
- // Handle built-in "pages" collection
11
- if (collectionName === 'pages') {
12
- return [
13
- {
14
- $match: {
15
- _id: { $in: ids },
16
- isDeleted: false,
17
- $or: [
18
- { isActive: true },
19
- { isActive: { $exists: false } } // Include pages without isActive field
20
- ],
21
- },
22
- },
23
- { $project: { _id: 1, name: 1, slug: 1, code: 1, filterQuery: 1 } },
24
- { $addFields: { __order: { $indexOfArray: [ids, '$_id'] } } },
25
- { $sort: { __order: 1 } },
26
- ];
27
- }
8
+ // Helper to filter out undefined/null values from query fields
9
+ const filterDefinedFields = (obj = {}) => {
10
+ return Object.fromEntries(Object.entries(obj).filter(([, value]) => value !== undefined && value !== null));
11
+ };
12
+ const getAggregationQuery = ({ collectionName, ids, req, }) => {
28
13
  const collectionConfig = defaults_1.defaults.collections.find((c) => c.collectionName === collectionName);
29
14
  const aggregateQueryItem = [];
30
15
  if (Array.isArray(collectionConfig === null || collectionConfig === void 0 ? void 0 : collectionConfig.aggregations) &&
@@ -32,76 +17,22 @@ const getAggregationQuery = ({ collectionName, ids, }) => {
32
17
  aggregateQueryItem.push(...collectionConfig.aggregations);
33
18
  }
34
19
  aggregateQueryItem.push({
35
- $match: Object.assign({ _id: {
20
+ $match: Object.assign(Object.assign({ _id: {
36
21
  $in: ids,
37
- } }, ((collectionConfig === null || collectionConfig === void 0 ? void 0 : collectionConfig.match) || {})),
22
+ } }, ((collectionConfig === null || collectionConfig === void 0 ? void 0 : collectionConfig.match) || {})), filterDefinedFields(req === null || req === void 0 ? void 0 : req.defaultQueryFields)),
38
23
  }, { $addFields: { __order: { $indexOfArray: [ids, '$_id'] } } }, { $sort: { __order: 1 } });
39
24
  return aggregateQueryItem;
40
25
  };
41
- const getLatestBlogsQuery = ({ collectionName, category, limit, }) => {
42
- const collectionConfig = defaults_1.defaults.collections.find((c) => c.collectionName === collectionName);
43
- const aggregateQueryItem = [];
44
- // Add custom aggregations from config
45
- if (Array.isArray(collectionConfig === null || collectionConfig === void 0 ? void 0 : collectionConfig.aggregations) &&
46
- (collectionConfig === null || collectionConfig === void 0 ? void 0 : collectionConfig.aggregations.length)) {
47
- aggregateQueryItem.push(...collectionConfig.aggregations);
48
- }
49
- // Build match conditions
50
- const matchConditions = Object.assign({}, ((collectionConfig === null || collectionConfig === void 0 ? void 0 : collectionConfig.match) || {}));
51
- // Add category filter if provided
52
- if (category) {
53
- try {
54
- const categoryObjectId = new mongoose_1.Types.ObjectId(category);
55
- const categoryString = category.toString();
56
- // Handle multiple category field structures:
57
- // - Array of ObjectIds (unpopulated)
58
- // - Populated objects with _id field
59
- // - Populated objects with id field (ObjectId or string)
60
- matchConditions.$or = [
61
- { category: { $in: [categoryObjectId] } },
62
- { 'category._id': categoryObjectId },
63
- { 'category.id': categoryObjectId },
64
- { 'category.id': categoryString },
65
- ];
66
- }
67
- catch (error) {
68
- // Fallback to simple match if ObjectId conversion fails
69
- matchConditions.category = category;
70
- }
71
- }
72
- aggregateQueryItem.push({
73
- $match: matchConditions,
74
- });
75
- // Sort by createdAt descending (latest first)
76
- aggregateQueryItem.push({
77
- $sort: { createdAt: -1 },
78
- });
79
- // Apply limit if provided
80
- if (limit && limit > 0) {
81
- aggregateQueryItem.push({
82
- $limit: limit,
83
- });
84
- }
85
- return aggregateQueryItem;
86
- };
87
- const getWidgetDataDB = (code, models) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
26
+ const getWidgetDataDB = (code, models, req) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
88
27
  var _a;
89
28
  const { Widget } = models;
90
29
  const widgetDataArr = (yield Widget.aggregate([
91
30
  {
92
- $match: {
93
- isDeleted: false,
94
- isActive: true,
95
- code,
96
- },
31
+ $match: Object.assign(Object.assign({}, filterDefinedFields(req === null || req === void 0 ? void 0 : req.defaultQueryFields)), { isDeleted: false, isActive: true, code }),
97
32
  },
98
33
  {
99
34
  // Get only the fields that are not excluded
100
- $project: {
101
- __v: 0,
102
- isDeleted: 0,
103
- deletedAt: 0,
104
- },
35
+ $project: Object.assign({}, defaults_1.commonExcludedFields),
105
36
  },
106
37
  {
107
38
  // Get Items data
@@ -213,25 +144,13 @@ const getWidgetDataDB = (code, models) => tslib_1.__awaiter(void 0, void 0, void
213
144
  return null;
214
145
  }
215
146
  const widgetData = widgetDataArr[0];
216
- // Fetch latest blogs by category/limit if configured
217
- if (widgetData.collectionName === 'blog' &&
218
- (widgetData.blogLimit || widgetData.blogCategory)) {
219
- const aggregateQueryItem = getLatestBlogsQuery({
220
- collectionName: widgetData.collectionName,
221
- category: widgetData.blogCategory,
222
- limit: widgetData.blogLimit,
223
- });
224
- const collectionModal = (0, helper_1.getCollectionModal)(widgetData.collectionName, models);
225
- const collectionItems = yield collectionModal.aggregate(aggregateQueryItem);
226
- widgetData.collectionItems = collectionItems;
227
- }
228
- // Otherwise, fetch specific collection items if they exist
229
- else if (widgetData.collectionName &&
147
+ if (widgetData.collectionName &&
230
148
  widgetData.collectionItems &&
231
149
  widgetData.collectionItems.length > 0) {
232
150
  const aggregateQueryItem = getAggregationQuery({
233
151
  collectionName: widgetData.collectionName,
234
- ids: (0, helper_1.formatCollectionItems)(widgetData.collectionItems),
152
+ ids: widgetData.collectionItems,
153
+ req,
235
154
  });
236
155
  const collectionModal = (0, helper_1.getCollectionModal)(widgetData.collectionName, models);
237
156
  const collectionItems = yield collectionModal.aggregate(aggregateQueryItem);
@@ -246,7 +165,8 @@ const getWidgetDataDB = (code, models) => tslib_1.__awaiter(void 0, void 0, void
246
165
  }, []);
247
166
  const aggregateQueryItem = getAggregationQuery({
248
167
  collectionName: widgetData.collectionName,
249
- ids: (0, helper_1.formatCollectionItems)(tabCollectionItemIds),
168
+ ids: tabCollectionItemIds,
169
+ req,
250
170
  });
251
171
  const collectionModal = (0, helper_1.getCollectionModal)(widgetData.collectionName, models);
252
172
  const collectionItems = yield collectionModal.aggregate(aggregateQueryItem);
@@ -288,15 +208,12 @@ const updateWidgetPagesData = (widgetIds, models) => tslib_1.__awaiter(void 0, v
288
208
  }
289
209
  });
290
210
  exports.updateWidgetPagesData = updateWidgetPagesData;
291
- const getPageDataDB = (code, models) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
211
+ const getPageDataDB = (code, models, req) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
292
212
  var _b;
293
213
  const { Page } = models;
294
214
  const pageData = (yield Page.aggregate([
295
215
  {
296
- $match: {
297
- isDeleted: false,
298
- code: code,
299
- },
216
+ $match: Object.assign(Object.assign({}, filterDefinedFields(req === null || req === void 0 ? void 0 : req.defaultQueryFields)), { isDeleted: false, code: code }),
300
217
  },
301
218
  {
302
219
  $project: {
@@ -434,7 +351,7 @@ const getPageDataDB = (code, models) => tslib_1.__awaiter(void 0, void 0, void 0
434
351
  if (!pageData.length) {
435
352
  return null;
436
353
  }
437
- pageData[0].widgetsData = yield (0, helper_1.appendCollectionData)(pageData[0].widgetsData, models);
354
+ pageData[0].widgetsData = yield (0, helper_1.appendCollectionData)(pageData[0].widgetsData, models, req);
438
355
  if (Array.isArray(pageData[0].widgetsData) &&
439
356
  pageData[0].widgetsData.length > 0) {
440
357
  pageData[0].widgetsData.forEach((widget) => {
@@ -1 +1 @@
1
- {"version":3,"file":"dataService.js","sourceRoot":"","sources":["../../../../../libs/node/src/services/dataService.ts"],"names":[],"mappings":";;;;AAAA,uCAA2D;AAC3D,4CAKyB;AACzB,0CAAiE;AACjE,gDAAmE;AAGnE,MAAM,mBAAmB,GAAG,CAAC,EAC3B,cAAc,EACd,GAAG,GAIJ,EAAE,EAAE;IACH,qCAAqC;IACrC,IAAI,cAAc,KAAK,OAAO,EAAE;QAC9B,OAAO;YACL;gBACE,MAAM,EAAE;oBACN,GAAG,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE;oBACjB,SAAS,EAAE,KAAK;oBAChB,GAAG,EAAE;wBACH,EAAE,QAAQ,EAAE,IAAI,EAAE;wBAClB,EAAE,QAAQ,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,CAAE,uCAAuC;qBAC1E;iBACF;aACF;YACD,EAAE,QAAQ,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,EAAE,EAAE;YACnE,EAAE,UAAU,EAAE,EAAE,OAAO,EAAE,EAAE,aAAa,EAAE,CAAC,GAAG,EAAE,MAAM,CAAC,EAAE,EAAE,EAAE;YAC7D,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,EAAE;SAC1B,CAAC;KACH;IAED,MAAM,gBAAgB,GAAG,mBAAQ,CAAC,WAAW,CAAC,IAAI,CAChD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,cAAc,KAAK,cAAc,CAC3C,CAAC;IACF,MAAM,kBAAkB,GAAuB,EAAE,CAAC;IAClD,IACE,KAAK,CAAC,OAAO,CAAC,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,YAAY,CAAC;SAC7C,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,YAAY,CAAC,MAAM,CAAA,EACrC;QACA,kBAAkB,CAAC,IAAI,CAAC,GAAG,gBAAgB,CAAC,YAAY,CAAC,CAAC;KAC3D;IACD,kBAAkB,CAAC,IAAI,CACrB;QACE,MAAM,kBACJ,GAAG,EAAE;gBACH,GAAG,EAAE,GAAG;aACT,IACE,CAAC,CAAA,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,KAAK,KAAI,EAAE,CAAC,CACnC;KACF,EACD,EAAE,UAAU,EAAE,EAAE,OAAO,EAAE,EAAE,aAAa,EAAE,CAAC,GAAG,EAAE,MAAM,CAAC,EAAE,EAAE,EAAE,EAC7D,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,EAAE,CAC1B,CAAC;IACF,OAAO,kBAAkB,CAAC;AAC5B,CAAC,CAAC;AAEF,MAAM,mBAAmB,GAAG,CAAC,EAC3B,cAAc,EACd,QAAQ,EACR,KAAK,GAKN,EAAE,EAAE;IACH,MAAM,gBAAgB,GAAG,mBAAQ,CAAC,WAAW,CAAC,IAAI,CAChD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,cAAc,KAAK,cAAc,CAC3C,CAAC;IACF,MAAM,kBAAkB,GAAuB,EAAE,CAAC;IAElD,sCAAsC;IACtC,IACE,KAAK,CAAC,OAAO,CAAC,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,YAAY,CAAC;SAC7C,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,YAAY,CAAC,MAAM,CAAA,EACrC;QACA,kBAAkB,CAAC,IAAI,CAAC,GAAG,gBAAgB,CAAC,YAAY,CAAC,CAAC;KAC3D;IAED,yBAAyB;IACzB,MAAM,eAAe,qBAChB,CAAC,CAAA,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,KAAK,KAAI,EAAE,CAAC,CACnC,CAAC;IAEF,kCAAkC;IAClC,IAAI,QAAQ,EAAE;QACZ,IAAI;YACF,MAAM,gBAAgB,GAAG,IAAI,gBAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YACtD,MAAM,cAAc,GAAG,QAAQ,CAAC,QAAQ,EAAE,CAAC;YAE3C,6CAA6C;YAC7C,qCAAqC;YACrC,qCAAqC;YACrC,yDAAyD;YACzD,eAAe,CAAC,GAAG,GAAG;gBACpB,EAAE,QAAQ,EAAE,EAAE,GAAG,EAAE,CAAC,gBAAgB,CAAC,EAAE,EAAE;gBACzC,EAAE,cAAc,EAAE,gBAAgB,EAAE;gBACpC,EAAE,aAAa,EAAE,gBAAgB,EAAE;gBACnC,EAAE,aAAa,EAAE,cAAc,EAAE;aAClC,CAAC;SACH;QAAC,OAAO,KAAK,EAAE;YACd,wDAAwD;YACxD,eAAe,CAAC,QAAQ,GAAG,QAAQ,CAAC;SACrC;KACF;IAED,kBAAkB,CAAC,IAAI,CAAC;QACtB,MAAM,EAAE,eAAe;KACxB,CAAC,CAAC;IAEH,8CAA8C;IAC9C,kBAAkB,CAAC,IAAI,CAAC;QACtB,KAAK,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC,EAAE;KACzB,CAAC,CAAC;IAEH,0BAA0B;IAC1B,IAAI,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE;QACtB,kBAAkB,CAAC,IAAI,CAAC;YACtB,MAAM,EAAE,KAAK;SACd,CAAC,CAAC;KACJ;IAED,OAAO,kBAAkB,CAAC;AAC5B,CAAC,CAAC;AAEK,MAAM,eAAe,GAAG,CAAO,IAAY,EAAE,MAAc,EAAE,EAAE;;IACpE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;IAC1B,MAAM,aAAa,GAAG,CAAC,MAAM,MAAM,CAAC,SAAS,CAAC;QAC5C;YACE,MAAM,EAAE;gBACN,SAAS,EAAE,KAAK;gBAChB,QAAQ,EAAE,IAAI;gBACd,IAAI;aACL;SACF;QACD;YACE,4CAA4C;YAC5C,QAAQ,EAAE;gBACR,GAAG,EAAE,CAAC;gBACN,SAAS,EAAE,CAAC;gBACZ,SAAS,EAAE,CAAC;aACb;SACF;QACD;YACE,iBAAiB;YACjB,OAAO,EAAE;gBACP,IAAI,EAAE,OAAO;gBACb,GAAG,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE;gBACvB,QAAQ,EAAE;oBACR;wBACE,MAAM,EAAE;4BACN,KAAK,EAAE;gCACL,GAAG,EAAE,CAAC,WAAW,EAAE,UAAU,CAAC;6BAC/B;4BACD,SAAS,EAAE,KAAK;yBACjB;qBACF;oBACD,GAAG,CAAC,mBAAQ,CAAC,SAAS,IAAI,CAAA,MAAA,mBAAQ,CAAC,SAAS,0CAAE,MAAM,IAAG,CAAC;wBACtD,CAAC,CAAC,mBAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,GAAU,EAAE,GAAG,EAAE,EAAE;4BAC9C,GAAG,CAAC,IAAI,CACN;gCACE,OAAO,EAAE;oCACP,IAAI,EAAE,MAAM;oCACZ,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,WAAW,EAAE,SAAS,GAAG,CAAC,IAAI,EAAE,EAAE,EAAE;oCAClD,EAAE,EAAE,UAAU,GAAG,CAAC,IAAI,EAAE;oCACxB,QAAQ,EAAE;wCACR;4CACE,MAAM,EAAE;gDACN,KAAK,EAAE;oDACL,GAAG,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC;iDACvB;6CACF;yCACF;wCACD;4CACE,QAAQ,EAAE;gDACR,GAAG,EAAE,CAAC;gDACN,GAAG,EAAE,CAAC;6CACP;yCACF;qCACF;iCACF;6BACF,EACD;gCACE,OAAO,EAAE;oCACP,IAAI,EAAE,WAAW,GAAG,CAAC,IAAI,EAAE;oCAC3B,0BAA0B,EAAE,IAAI;iCACjC;6BACF,CACF,CAAC;4BACF,OAAO,GAAG,CAAC;wBACb,CAAC,EAAE,EAAE,CAAC;wBACN,CAAC,CAAC;4BACA;gCACE,OAAO,EAAE;oCACP,IAAI,EAAE,MAAM;oCACZ,GAAG,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE;oCACpB,EAAE,EAAE,OAAO;oCACX,QAAQ,EAAE;wCACR;4CACE,MAAM,EAAE;gDACN,KAAK,EAAE;oDACL,GAAG,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC;iDACvB;6CACF;yCACF;wCACD;4CACE,QAAQ,EAAE;gDACR,GAAG,EAAE,CAAC;gDACN,GAAG,EAAE,CAAC;6CACP;yCACF;qCACF;iCACF;6BACF;4BACD;gCACE,OAAO,EAAE;oCACP,IAAI,EAAE,QAAQ;oCACd,0BAA0B,EAAE,IAAI;iCACjC;6BACF;yBACF,CAAC;oBACJ;wBACE,QAAQ,kBACN,QAAQ,EAAE,CAAC,EACX,IAAI,EAAE,CAAC,IACJ,+BAAoB,CACxB;qBACF;oBACD,IAAI;oBACJ,eAAe;oBACf,uBAAuB;oBACvB,6BAA6B;oBAC7B,oBAAoB;oBACpB,kBAAkB;oBAClB,UAAU;oBACV,oBAAoB;oBACpB,qBAAqB;oBACrB,0CAA0C;oBAC1C,eAAe;oBACf,aAAa;oBACb,WAAW;oBACX,UAAU;oBACV,sBAAsB;oBACtB,qCAAqC;oBACrC,oBAAoB;oBACpB,uBAAuB;oBACvB,aAAa;oBACb,WAAW;oBACX,SAAS;oBACT,OAAO;oBACP,KAAK;iBACN;gBACD,EAAE,EAAE,OAAO;aACZ;SACF;KACF,CAAC,CAAyB,CAAC;IAE5B,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE;QACzB,OAAO,IAAI,CAAC;KACb;IACD,MAAM,UAAU,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;IAEpC,qDAAqD;IACrD,IACE,UAAU,CAAC,cAAc,KAAK,MAAM;QACpC,CAAC,UAAU,CAAC,SAAS,IAAI,UAAU,CAAC,YAAY,CAAC,EACjD;QACA,MAAM,kBAAkB,GAAG,mBAAmB,CAAC;YAC7C,cAAc,EAAE,UAAU,CAAC,cAAc;YACzC,QAAQ,EAAE,UAAU,CAAC,YAAY;YACjC,KAAK,EAAE,UAAU,CAAC,SAAS;SAC5B,CAAC,CAAC;QAEH,MAAM,eAAe,GAAQ,IAAA,2BAAkB,EAAC,UAAU,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC;QACnF,MAAM,eAAe,GAAG,MAAM,eAAe,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC;QAC5E,UAAU,CAAC,eAAe,GAAG,eAAe,CAAC;KAC9C;IACD,2DAA2D;SACtD,IACH,UAAU,CAAC,cAAc;QACzB,UAAU,CAAC,eAAe;QAC1B,UAAU,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,EACrC;QACA,MAAM,kBAAkB,GAAG,mBAAmB,CAAC;YAC7C,cAAc,EAAE,UAAU,CAAC,cAAc;YACzC,GAAG,EAAE,IAAA,8BAAqB,EAAC,UAAU,CAAC,eAAe,CAAC;SACvD,CAAC,CAAC;QACH,MAAM,eAAe,GAAQ,IAAA,2BAAkB,EAAC,UAAU,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC;QACnF,MAAM,eAAe,GAAG,MAAM,eAAe,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC;QAC5E,UAAU,CAAC,eAAe,GAAG,eAAe,CAAC;KAC9C;IACD,IACE,UAAU,CAAC,cAAc;QACzB,UAAU,CAAC,IAAI;QACf,UAAU,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAC1B;QACA,MAAM,oBAAoB,GAAG,UAAU,CAAC,IAAI,CAAC,MAAM,CACjD,CAAC,GAAa,EAAE,OAAY,EAAE,EAAE;YAC9B,GAAG,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;YACrC,OAAO,GAAG,CAAC;QACb,CAAC,EACD,EAAE,CACH,CAAC;QACF,MAAM,kBAAkB,GAAG,mBAAmB,CAAC;YAC7C,cAAc,EAAE,UAAU,CAAC,cAAc;YACzC,GAAG,EAAE,IAAA,8BAAqB,EAAC,oBAAoB,CAAC;SACjD,CAAC,CAAC;QAEH,MAAM,eAAe,GAAQ,IAAA,2BAAkB,EAAC,UAAU,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC;QACnF,MAAM,eAAe,GAAQ,MAAM,eAAe,CAAC,SAAS,CAC1D,kBAAkB,CACnB,CAAC;QACF,2DAA2D;QAC3D,MAAM,kBAAkB,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC,GAAQ,EAAE,IAAS,EAAE,EAAE;YACxE,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;YACrB,OAAO,GAAG,CAAC;QACb,CAAC,EAAE,EAAE,CAAC,CAAC;QACP,UAAU,CAAC,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;YAChD,OAAO;gBACL,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,eAAe,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,CAC1C,CAAC,YAAY,EAAE,EAAE,CAAC,kBAAkB,CAAC,YAAY,CAAC,CACnD;aACF,CAAC;QACJ,CAAC,CAAC,CAAC;KACJ;IACD,IAAA,0BAAiB,EAAC,UAAU,CAAC,CAAC;IAC9B,OAAO,UAAU,CAAC;AACpB,CAAC,CAAA,CAAC;AA5MW,QAAA,eAAe,mBA4M1B;AAEK,MAAM,iBAAiB,GAAG,CAAO,IAAY,EAAE,MAAc,EAAE,EAAE;IACtE,MAAM,UAAU,GAAG,MAAM,IAAA,uBAAe,EAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACvD,IAAI,UAAU,EAAE;QACd,MAAM,IAAA,qBAAa,EAAC,cAAc,IAAI,EAAE,EAAE,UAA6B,CAAC,CAAC;KAC1E;AACH,CAAC,CAAA,CAAC;AALW,QAAA,iBAAiB,qBAK5B;AAEK,MAAM,qBAAqB,GAAG,CACnC,SAAmB,EACnB,MAAc,EACd,EAAE;IACF,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC;IACxB,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,IAAI,CAC/B;QACE,OAAO,EAAE;YACP,GAAG,EAAE,SAAS;SACf;KACF,EACD,MAAM,CACP,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IACnB,IAAI,SAAS,CAAC,MAAM,EAAE;QACpB,SAAS,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;YACzB,IAAA,wBAAgB,EAAC,YAAY,IAAI,EAAE,CAAC,CAAC;QACvC,CAAC,CAAC,CAAC;KACJ;AACH,CAAC,CAAA,CAAC;AAlBW,QAAA,qBAAqB,yBAkBhC;AAEK,MAAM,aAAa,GAAG,CAAO,IAAY,EAAE,MAAc,EAAE,EAAE;;IAClE,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC;IACxB,MAAM,QAAQ,GAAQ,CAAC,MAAM,IAAI,CAAC,SAAS,CAAC;QAC1C;YACE,MAAM,EAAE;gBACN,SAAS,EAAE,KAAK;gBAChB,IAAI,EAAE,IAAI;aACX;SACF;QACD;YACE,QAAQ,EAAE;gBACR,SAAS,EAAE,CAAC;gBACZ,SAAS,EAAE,CAAC;gBACZ,GAAG,EAAE,CAAC;aACP;SACF;QACD;YACE,OAAO,EAAE;gBACP,IAAI,EAAE,SAAS;gBACf,GAAG,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE;gBAC5B,QAAQ,EAAE;oBACR;wBACE,MAAM,EAAE;4BACN,KAAK,EAAE;gCACL,GAAG,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC;6BAC3B;4BACD,SAAS,EAAE,KAAK;4BAChB,QAAQ,EAAE,IAAI;yBACf;qBACF;oBACD;wBACE,QAAQ,kBACN,QAAQ,EAAE,CAAC,EACX,QAAQ,EAAE,CAAC,IACR,+BAAoB,CACxB;qBACF;oBACD;wBACE,OAAO,EAAE;4BACP,IAAI,EAAE,OAAO;4BACb,GAAG,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE;4BACvB,QAAQ,EAAE;gCACR;oCACE,MAAM,EAAE;wCACN,KAAK,EAAE;4CACL,GAAG,EAAE,CAAC,WAAW,EAAE,UAAU,CAAC;yCAC/B;wCACD,SAAS,EAAE,KAAK;qCACjB;iCACF;gCACD,GAAG,CAAC,mBAAQ,CAAC,SAAS,IAAI,CAAA,MAAA,mBAAQ,CAAC,SAAS,0CAAE,MAAM,IAAG,CAAC;oCACtD,CAAC,CAAC,mBAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,GAAU,EAAE,GAAG,EAAE,EAAE;wCAC9C,GAAG,CAAC,IAAI,CACN;4CACE,OAAO,EAAE;gDACP,IAAI,EAAE,MAAM;gDACZ,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,WAAW,EAAE,SAAS,GAAG,CAAC,IAAI,EAAE,EAAE,EAAE;gDAClD,EAAE,EAAE,UAAU,GAAG,CAAC,IAAI,EAAE;gDACxB,QAAQ,EAAE;oDACR;wDACE,MAAM,EAAE;4DACN,KAAK,EAAE;gEACL,GAAG,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC;6DACvB;yDACF;qDACF;oDACD;wDACE,QAAQ,EAAE;4DACR,GAAG,EAAE,CAAC;4DACN,GAAG,EAAE,CAAC;yDACP;qDACF;iDACF;6CACF;yCACF,EACD;4CACE,OAAO,EAAE;gDACP,IAAI,EAAE,WAAW,GAAG,CAAC,IAAI,EAAE;gDAC3B,0BAA0B,EAAE,IAAI;6CACjC;yCACF,CACF,CAAC;wCACF,OAAO,GAAG,CAAC;oCACb,CAAC,EAAE,EAAE,CAAC;oCACN,CAAC,CAAC;wCACA;4CACE,OAAO,EAAE;gDACP,IAAI,EAAE,MAAM;gDACZ,GAAG,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE;gDACpB,EAAE,EAAE,OAAO;gDACX,QAAQ,EAAE;oDACR;wDACE,MAAM,EAAE;4DACN,KAAK,EAAE;gEACL,GAAG,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC;6DACvB;yDACF;qDACF;oDACD;wDACE,QAAQ,EAAE;4DACR,GAAG,EAAE,CAAC;4DACN,GAAG,EAAE,CAAC;yDACP;qDACF;iDACF;6CACF;yCACF;wCACD;4CACE,OAAO,EAAE;gDACP,IAAI,EAAE,QAAQ;gDACd,0BAA0B,EAAE,IAAI;6CACjC;yCACF;qCACF,CAAC;gCACJ;oCACE,QAAQ,kBACN,QAAQ,EAAE,CAAC,EACX,IAAI,EAAE,CAAC,IACJ,+BAAoB,CACxB;iCACF;gCACD,IAAI;gCACJ,eAAe;gCACf,uBAAuB;gCACvB,6BAA6B;gCAC7B,oBAAoB;gCACpB,kBAAkB;gCAClB,UAAU;gCACV,oBAAoB;gCACpB,qBAAqB;gCACrB,0CAA0C;gCAC1C,eAAe;gCACf,aAAa;gCACb,WAAW;gCACX,UAAU;gCACV,sBAAsB;gCACtB,qCAAqC;gCACrC,oBAAoB;gCACpB,uBAAuB;gCACvB,aAAa;gCACb,WAAW;gCACX,SAAS;gCACT,OAAO;gCACP,KAAK;6BACN;4BACD,EAAE,EAAE,OAAO;yBACZ;qBACF;iBACF;gBACD,EAAE,EAAE,aAAa;aAClB;SACF;KACF,CAAC,CAAuB,CAAC;IAE1B,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE;QACpB,OAAO,IAAI,CAAC;KACb;IACD,QAAQ,CAAC,CAAC,CAAC,CAAC,WAAW,GAAG,MAAM,IAAA,6BAAoB,EAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;IACtF,IACE,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC;QACtC,QAAQ,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAClC;QACA,QAAQ,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,MAAqB,EAAE,EAAE;YACxD,IAAA,0BAAiB,EAAC,MAAM,CAAC,CAAC;QAC5B,CAAC,CAAC,CAAC;KACJ;IACD,QAAQ,CAAC,CAAC,CAAC,CAAC,WAAW,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,CACtD,CAAC,GAAQ,EAAE,UAAe,EAAE,EAAE;QAC5B,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC;QACjC,OAAO,GAAG,CAAC;IACb,CAAC,EACD,EAAE,CACH,CAAC;IACF,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO;SACtC,GAAG,CAAC,CAAC,QAAgB,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;SAC5D,MAAM,CAAC,OAAO,CAAC,CAAC;IACnB,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC;IAC/B,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAC;AACrB,CAAC,CAAA,CAAC;AAlLW,QAAA,aAAa,iBAkLxB;AAEK,MAAM,eAAe,GAAG,CAAO,IAAY,EAAE,MAAc,EAAE,EAAE;IACpE,MAAM,QAAQ,GAAG,MAAM,IAAA,qBAAa,EAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACnD,IAAI,QAAQ,EAAE;QACZ,MAAM,IAAA,qBAAa,EAAC,YAAY,IAAI,EAAE,EAAE,QAAQ,CAAC,CAAC;KACnD;AACH,CAAC,CAAA,CAAC;AALW,QAAA,eAAe,mBAK1B;AAEK,MAAM,gBAAgB,GAAG,CAC9B,cAAsB,EACtB,MAAyB,EACzB,MAAc,EACd,EAAE;IACF,IAAI,CAAC,MAAM;QAAE,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAC;IACnD,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;IAC1B,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,IAAI,CAC/B;QACE,cAAc,EAAE,cAAc;QAC9B,eAAe,EAAE;YACf,GAAG,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;SAC/C;KACF,EACD,UAAU,CACX,CAAC,IAAI,EAAE,CAAC;IACT,IAAI,OAAO,CAAC,MAAM,EAAE;QAClB,IAAA,6BAAqB,EACnB,OAAO,CAAC,GAAG,CAAC,CAAC,MAAW,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,EACxC,MAAM,CACP,CAAC;QACF,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;YACzB,IAAA,wBAAgB,EAAC,cAAc,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACnD,CAAC,CAAC,CAAC;KACJ;AACH,CAAC,CAAA,CAAC;AAzBW,QAAA,gBAAgB,oBAyB3B;AAEK,MAAM,eAAe,GAAG,CAAC,IAAuB,EAAE,IAAY,EAAE,EAAE;IACvE,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,MAAM,CAAC,IAAI,IAAI;QAChD,IAAA,wBAAgB,EAAC,GAAG,IAAI,IAAI,IAAI,EAAE,CAAC,CAAC;AACxC,CAAC,CAAC;AAHW,QAAA,eAAe,mBAG1B"}
1
+ {"version":3,"file":"dataService.js","sourceRoot":"","sources":["../../../../../libs/node/src/services/dataService.ts"],"names":[],"mappings":"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"}
@@ -8,9 +8,10 @@ export declare function getAll<T>(Modal: Model<T>, query?: FilterQuery<T>, optio
8
8
  export declare function list<T>(Modal: IModel<T>, where: FilterQuery<T>, options: QueryOptions<T>): Promise<any>;
9
9
  export declare function getOne<T>(Modal: Model<T>, query: FilterQuery<T>, projection?: ProjectionType<T>): Promise<HydratedDocument<T>>;
10
10
  export declare function bulkInsert<T>(Modal: Model<T>, docs: T[]): Promise<Array<HydratedDocument<T>>>;
11
- export declare function checkUnique<T extends EntityType>({ Modal, uniqueField, errorMessage, value }: {
11
+ export declare function checkUnique<T extends EntityType>({ Modal, uniqueField, errorMessage, value, query: additionalQuery }: {
12
12
  Modal: Model<T>;
13
13
  uniqueField: keyof T;
14
14
  value: any;
15
15
  errorMessage: string;
16
+ query?: Record<string, any>;
16
17
  }): Promise<void>;
@@ -73,14 +73,16 @@ function bulkInsert(Modal, docs) {
73
73
  });
74
74
  }
75
75
  exports.bulkInsert = bulkInsert;
76
- function checkUnique({ Modal, uniqueField, errorMessage, value }) {
76
+ function checkUnique({ Modal, uniqueField, errorMessage, value, query: additionalQuery }) {
77
77
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
78
- const query = { [uniqueField]: value };
78
+ const query = Object.assign({ [uniqueField]: value }, additionalQuery);
79
79
  let result;
80
80
  try {
81
81
  result = yield getOne(Modal, query);
82
82
  }
83
- catch (error) { }
83
+ catch (error) {
84
+ // eslint-disable-next-line no-empty
85
+ }
84
86
  if (result)
85
87
  throw new Error(errorMessage);
86
88
  });
@@ -1 +1 @@
1
- {"version":3,"file":"dbService.js","sourceRoot":"","sources":["../../../../../libs/node/src/services/dbService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dbService.js","sourceRoot":"","sources":["../../../../../libs/node/src/services/dbService.ts"],"names":[],"mappings":"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"}
@@ -3,4 +3,12 @@ export interface IRequest extends Request {
3
3
  i18n?: {
4
4
  t: (key: string) => string;
5
5
  };
6
+ defaultQueryFields?: {
7
+ clientId?: string;
8
+ clientDomainName?: string;
9
+ };
10
+ defaultStoreFields?: {
11
+ clientId?: string;
12
+ clientDomainName?: string;
13
+ };
6
14
  }
@@ -17,7 +17,6 @@ export interface IPageSchema extends Document {
17
17
  name: string;
18
18
  code: string;
19
19
  slug: string;
20
- isActive: boolean;
21
20
  canDel: boolean;
22
21
  widgets: string[];
23
22
  filterQuery: string;
@@ -49,8 +48,6 @@ export interface IWidgetSchema extends Document {
49
48
  widgetType: WidgetTypes;
50
49
  collectionName: string;
51
50
  collectionItems: string[];
52
- blogCategory?: string;
53
- blogLimit?: number;
54
51
  tabs: {
55
52
  name: string;
56
53
  names?: LanguageSchemaFieldType;
@@ -85,10 +82,16 @@ export type CollectionItem = {
85
82
  title: string;
86
83
  collectionName: string;
87
84
  filters?: {
88
- [key: string]: string | number | boolean;
85
+ [key: string]: string | number | boolean | ObjectType;
86
+ };
87
+ /** Dynamic filters function - receives request object and returns filters */
88
+ getFilters?: (req: any) => {
89
+ [key: string]: any;
89
90
  };
90
91
  searchColumns?: string[];
91
92
  match?: ObjectType;
93
+ /** Dynamic match function - receives request object and returns match query for aggregation */
94
+ getMatch?: (req: any) => ObjectType;
92
95
  aggregations?: any[];
93
96
  searchLimit?: number;
94
97
  };
@@ -1,15 +1,12 @@
1
1
  export declare enum ItemsType {
2
- Image = "Image",
3
- Pages = "pages",
4
- Links = "links"
2
+ Image = "Image"
5
3
  }
6
4
  export declare enum WidgetTypes {
7
5
  FixedCard = "FixedCard",
8
6
  Carousel = "Carousel",
9
7
  Tabs = "Tabs",
10
8
  Text = "Text",
11
- HTML = "HTML",
12
- Links = "Links"
9
+ HTML = "HTML"
13
10
  }
14
11
  export declare enum ItemTypes {
15
12
  Web = "Web",
@@ -4,8 +4,6 @@ exports.ItemTypes = exports.WidgetTypes = exports.ItemsType = void 0;
4
4
  var ItemsType;
5
5
  (function (ItemsType) {
6
6
  ItemsType["Image"] = "Image";
7
- ItemsType["Pages"] = "pages";
8
- ItemsType["Links"] = "links";
9
7
  })(ItemsType = exports.ItemsType || (exports.ItemsType = {}));
10
8
  var WidgetTypes;
11
9
  (function (WidgetTypes) {
@@ -14,7 +12,6 @@ var WidgetTypes;
14
12
  WidgetTypes["Tabs"] = "Tabs";
15
13
  WidgetTypes["Text"] = "Text";
16
14
  WidgetTypes["HTML"] = "HTML";
17
- WidgetTypes["Links"] = "Links";
18
15
  })(WidgetTypes = exports.WidgetTypes || (exports.WidgetTypes = {}));
19
16
  var ItemTypes;
20
17
  (function (ItemTypes) {
@@ -1 +1 @@
1
- {"version":3,"file":"enums.js","sourceRoot":"","sources":["../../../../../libs/node/src/types/enums.ts"],"names":[],"mappings":";;;AAAA,IAAY,SAIX;AAJD,WAAY,SAAS;IACnB,4BAAe,CAAA;IACf,4BAAe,CAAA;IACf,4BAAe,CAAA;AACjB,CAAC,EAJW,SAAS,GAAT,iBAAS,KAAT,iBAAS,QAIpB;AAED,IAAY,WAOX;AAPD,WAAY,WAAW;IACrB,sCAAuB,CAAA;IACvB,oCAAqB,CAAA;IACrB,4BAAa,CAAA;IACb,4BAAa,CAAA;IACb,4BAAa,CAAA;IACb,8BAAe,CAAA;AACjB,CAAC,EAPW,WAAW,GAAX,mBAAW,KAAX,mBAAW,QAOtB;AAED,IAAY,SAGX;AAHD,WAAY,SAAS;IACnB,wBAAW,CAAA;IACX,8BAAiB,CAAA;AACnB,CAAC,EAHW,SAAS,GAAT,iBAAS,KAAT,iBAAS,QAGpB"}
1
+ {"version":3,"file":"enums.js","sourceRoot":"","sources":["../../../../../libs/node/src/types/enums.ts"],"names":[],"mappings":";;;AAAA,IAAY,SAEX;AAFD,WAAY,SAAS;IACnB,4BAAe,CAAA;AACjB,CAAC,EAFW,SAAS,GAAT,iBAAS,KAAT,iBAAS,QAEpB;AAED,IAAY,WAMX;AAND,WAAY,WAAW;IACrB,sCAAuB,CAAA;IACvB,oCAAqB,CAAA;IACrB,4BAAa,CAAA;IACb,4BAAa,CAAA;IACb,4BAAa,CAAA;AACf,CAAC,EANW,WAAW,GAAX,mBAAW,KAAX,mBAAW,QAMtB;AAED,IAAY,SAGX;AAHD,WAAY,SAAS;IACnB,wBAAW,CAAA;IACX,8BAAiB,CAAA;AACnB,CAAC,EAHW,SAAS,GAAT,iBAAS,KAAT,iBAAS,QAGpB"}
@@ -1,6 +1,6 @@
1
1
  import { Models, Types } from 'mongoose';
2
- import { IWidgetSchema, SrcSetItem } from '../types';
3
- export declare function appendCollectionData(widgetData: IWidgetSchema[], models: Models): Promise<IWidgetSchema[]>;
2
+ import { IRequest, IWidgetSchema, SrcSetItem } from '../types';
3
+ export declare function appendCollectionData(widgetData: IWidgetSchema[], models: Models, req?: IRequest): Promise<IWidgetSchema[]>;
4
4
  export declare function buildSrcSetItem(uri: string, setItem: SrcSetItem): string;
5
5
  export declare function AddSrcSetsToItems(widgetData: IWidgetSchema): void;
6
6
  export declare const getCollectionModal: (collectionName: string, models: Models) => any;
@@ -4,7 +4,7 @@ exports.formatCollectionItems = exports.getCollectionModal = exports.AddSrcSetsT
4
4
  const tslib_1 = require("tslib");
5
5
  const mongoose_1 = require("mongoose");
6
6
  const defaults_1 = require("./defaults");
7
- function appendCollectionData(widgetData, models) {
7
+ function appendCollectionData(widgetData, models, req) {
8
8
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
9
9
  const { Widget } = models;
10
10
  // reduce widget data to optimize query
@@ -21,67 +21,7 @@ function appendCollectionData(widgetData, models) {
21
21
  return acc;
22
22
  }, {});
23
23
  if (Object.keys(newData).length > 0) {
24
- // Fetch latest blogs for widgets with category/limit configuration
25
- const blogWidgetsData = {};
26
- for (const widget of widgetData) {
27
- if (widget.collectionName === 'blog' && (widget.blogCategory || widget.blogLimit)) {
28
- try {
29
- const collectionConfig = defaults_1.defaults.collections.find((c) => c.collectionName === widget.collectionName);
30
- const aggregateQueryItem = [];
31
- // Add custom aggregations from config
32
- if (Array.isArray(collectionConfig === null || collectionConfig === void 0 ? void 0 : collectionConfig.aggregations) &&
33
- (collectionConfig === null || collectionConfig === void 0 ? void 0 : collectionConfig.aggregations.length)) {
34
- aggregateQueryItem.push(...collectionConfig.aggregations);
35
- }
36
- // Build match conditions
37
- const matchConditions = Object.assign({}, ((collectionConfig === null || collectionConfig === void 0 ? void 0 : collectionConfig.match) || {}));
38
- // Add category filter if provided
39
- if (widget.blogCategory) {
40
- const categoryObjectId = new mongoose_1.Types.ObjectId(widget.blogCategory);
41
- const categoryString = widget.blogCategory.toString();
42
- // Handle multiple category field structures:
43
- // - Array of ObjectIds (unpopulated)
44
- // - Populated objects with _id field
45
- // - Populated objects with id field (ObjectId or string)
46
- matchConditions.$or = [
47
- { category: { $in: [categoryObjectId] } },
48
- { 'category._id': categoryObjectId },
49
- { 'category.id': categoryObjectId },
50
- { 'category.id': categoryString },
51
- ];
52
- }
53
- // Add match, sort, and limit stages
54
- aggregateQueryItem.push({
55
- $match: matchConditions,
56
- });
57
- aggregateQueryItem.push({
58
- $sort: { createdAt: -1 },
59
- });
60
- if (widget.blogLimit && widget.blogLimit > 0) {
61
- aggregateQueryItem.push({
62
- $limit: widget.blogLimit,
63
- });
64
- }
65
- // Fetch data from collection
66
- const collectionModal = (0, exports.getCollectionModal)(widget.collectionName, models);
67
- const collectionItems = yield collectionModal.aggregate(aggregateQueryItem);
68
- blogWidgetsData[widget.code] = collectionItems;
69
- }
70
- catch (error) {
71
- blogWidgetsData[widget.code] = [];
72
- }
73
- }
74
- }
75
- // Apply blog widgets data
76
- if (Object.keys(blogWidgetsData).length > 0) {
77
- widgetData = widgetData.map((widget) => {
78
- if (blogWidgetsData[widget.code]) {
79
- return Object.assign(Object.assign({}, widget), { collectionItems: blogWidgetsData[widget.code] });
80
- }
81
- return widget;
82
- });
83
- }
84
- const aggregationQueryCollectionItems = buildCollectionItemsQuery(newData);
24
+ const aggregationQueryCollectionItems = buildCollectionItemsQuery(newData, req);
85
25
  if (aggregationQueryCollectionItems.length > 0) {
86
26
  // getting collection data by populating widget
87
27
  let aggregationData = yield Widget.aggregate(aggregationQueryCollectionItems);
@@ -93,17 +33,13 @@ function appendCollectionData(widgetData, models) {
93
33
  // eslint-disable-next-line @typescript-eslint/ban-ts-comment
94
34
  // @ts-ignore
95
35
  widgetData = widgetData.map((widget) => {
96
- // Skip widgets already processed by blog section
97
- if (blogWidgetsData[widget.code]) {
98
- return widget;
99
- }
100
36
  if (aggregationData[widget.code]) {
101
37
  return Object.assign(Object.assign({}, widget), { collectionItems: aggregationData[widget.code] });
102
38
  }
103
39
  return widget;
104
40
  });
105
41
  }
106
- const aggregationQueryTabs = buildTabCollectionItemsQuery(newData);
42
+ const aggregationQueryTabs = buildTabCollectionItemsQuery(newData, req);
107
43
  if (aggregationQueryTabs.length > 0) {
108
44
  let aggregationDataTabs = yield Widget.aggregate(aggregationQueryTabs);
109
45
  aggregationDataTabs = aggregationDataTabs.reduce((acc, aggregation) => {
@@ -138,7 +74,7 @@ function appendCollectionData(widgetData, models) {
138
74
  });
139
75
  }
140
76
  exports.appendCollectionData = appendCollectionData;
141
- function buildCollectionItemsQuery(formattedWidgetData) {
77
+ function buildCollectionItemsQuery(formattedWidgetData, req) {
142
78
  const aggregationQuery = [
143
79
  {
144
80
  $match: {
@@ -159,44 +95,19 @@ function buildCollectionItemsQuery(formattedWidgetData) {
159
95
  Object.keys(formattedWidgetData).forEach((key) => {
160
96
  if (formattedWidgetData[key].collectionItems &&
161
97
  formattedWidgetData[key].collectionItems.length > 0) {
162
- const ids = (0, exports.formatCollectionItems)(formattedWidgetData[key].collectionItems);
163
- // Handle built-in "pages" collection
164
- if (formattedWidgetData[key].collectionName === 'pages') {
165
- aggregationQuery.push({
166
- $lookup: {
167
- from: 'pages',
168
- pipeline: [
169
- {
170
- $match: {
171
- _id: { $in: ids },
172
- isDeleted: false,
173
- $or: [
174
- { isActive: true },
175
- { isActive: { $exists: false } } // Include pages without isActive field
176
- ],
177
- },
178
- },
179
- { $project: { _id: 1, name: 1, slug: 1, code: 1, filterQuery: 1 } },
180
- { $addFields: { __order: { $indexOfArray: [ids, '$_id'] } } },
181
- { $sort: { __order: 1 } },
182
- ],
183
- as: formattedWidgetData[key].code,
184
- },
185
- });
186
- return;
187
- }
188
98
  const aggregationQueryPiplelines = [];
189
99
  collectionConfig = defaults_1.defaults.collections.find((c) => c.collectionName === formattedWidgetData[key].collectionName);
190
100
  if (Array.isArray(collectionConfig === null || collectionConfig === void 0 ? void 0 : collectionConfig.aggregations) &&
191
101
  (collectionConfig === null || collectionConfig === void 0 ? void 0 : collectionConfig.aggregations.length)) {
192
102
  aggregationQueryPiplelines.push(...collectionConfig.aggregations);
193
103
  }
104
+ const ids = (0, exports.formatCollectionItems)(formattedWidgetData[key].collectionItems);
194
105
  // Build piplelines with config
195
106
  aggregationQueryPiplelines.push(...[
196
107
  {
197
- $match: Object.assign({ _id: {
108
+ $match: Object.assign(Object.assign({ _id: {
198
109
  $in: ids,
199
- } }, ((collectionConfig === null || collectionConfig === void 0 ? void 0 : collectionConfig.match) || {})),
110
+ } }, ((collectionConfig === null || collectionConfig === void 0 ? void 0 : collectionConfig.match) || {})), ((req === null || req === void 0 ? void 0 : req.defaultQueryFields) || {})),
200
111
  },
201
112
  {
202
113
  $project: Object.assign({}, defaults_1.commonExcludedFields),
@@ -216,7 +127,7 @@ function buildCollectionItemsQuery(formattedWidgetData) {
216
127
  });
217
128
  return aggregationQuery;
218
129
  }
219
- function buildTabCollectionItemsQuery(formattedWidgetData) {
130
+ function buildTabCollectionItemsQuery(formattedWidgetData, req) {
220
131
  const aggregationQuery = [
221
132
  {
222
133
  $match: {
@@ -237,33 +148,6 @@ function buildTabCollectionItemsQuery(formattedWidgetData) {
237
148
  Object.keys(formattedWidgetData).forEach((key) => {
238
149
  if (formattedWidgetData[key].tabs &&
239
150
  formattedWidgetData[key].tabs.length > 0) {
240
- const tabIds = formattedWidgetData[key].tabs.reduce((arr, tabItem) => {
241
- arr.push(...(0, exports.formatCollectionItems)(tabItem.collectionItems));
242
- return arr;
243
- }, []);
244
- // Handle built-in "pages" collection
245
- if (formattedWidgetData[key].collectionName === 'pages') {
246
- aggregationQuery.push({
247
- $lookup: {
248
- from: 'pages',
249
- pipeline: [
250
- {
251
- $match: {
252
- _id: { $in: tabIds },
253
- isDeleted: false,
254
- $or: [
255
- { isActive: true },
256
- { isActive: { $exists: false } } // Include pages without isActive field
257
- ],
258
- },
259
- },
260
- { $project: { _id: 1, name: 1, slug: 1, code: 1, filterQuery: 1 } },
261
- ],
262
- as: formattedWidgetData[key].code,
263
- },
264
- });
265
- return;
266
- }
267
151
  const aggregationQueryPiplelines = [];
268
152
  collectionConfig = defaults_1.defaults.collections.find((c) => c.collectionName === formattedWidgetData[key].collectionName);
269
153
  if (Array.isArray(collectionConfig === null || collectionConfig === void 0 ? void 0 : collectionConfig.aggregations) &&
@@ -273,9 +157,12 @@ function buildTabCollectionItemsQuery(formattedWidgetData) {
273
157
  // Build piplelines with config
274
158
  aggregationQueryPiplelines.push(...[
275
159
  {
276
- $match: Object.assign({ _id: {
277
- $in: tabIds,
278
- } }, ((collectionConfig === null || collectionConfig === void 0 ? void 0 : collectionConfig.match) || {})),
160
+ $match: Object.assign(Object.assign({ _id: {
161
+ $in: formattedWidgetData[key].tabs.reduce((arr, tabItem) => {
162
+ arr.push(...(0, exports.formatCollectionItems)(tabItem.collectionItems));
163
+ return arr;
164
+ }, []),
165
+ } }, ((collectionConfig === null || collectionConfig === void 0 ? void 0 : collectionConfig.match) || {})), ((req === null || req === void 0 ? void 0 : req.defaultQueryFields) || {})),
279
166
  },
280
167
  {
281
168
  $project: Object.assign({}, defaults_1.commonExcludedFields),
@@ -315,25 +202,12 @@ function AddSrcSetsToItems(widgetData) {
315
202
  }
316
203
  exports.AddSrcSetsToItems = AddSrcSetsToItems;
317
204
  const getCollectionModal = (collectionName, models) => {
318
- let collectionModal;
319
- if (models && models[collectionName]) {
320
- collectionModal = models[collectionName];
321
- }
322
- else if (models &&
323
- models[collectionName.charAt(0).toUpperCase() + collectionName.slice(1)]) {
324
- collectionModal =
325
- models[collectionName.charAt(0).toUpperCase() + collectionName.slice(1)];
326
- }
327
- else {
328
- try {
329
- collectionModal = (0, mongoose_1.model)(collectionName);
330
- }
331
- catch (error) {
332
- if (!collectionModal) {
333
- const schema = new mongoose_1.Schema({}, { strict: false });
334
- collectionModal = (0, mongoose_1.model)(collectionName, schema, collectionName);
335
- }
336
- }
205
+ let collectionModal = models[collectionName];
206
+ if (!collectionModal)
207
+ collectionModal = models[collectionName.charAt(0).toUpperCase() + collectionName.slice(1)];
208
+ if (!collectionModal) {
209
+ const schema = new mongoose_1.Schema({}, { strict: false });
210
+ collectionModal = (0, mongoose_1.model)(collectionName, schema, collectionName);
337
211
  }
338
212
  return collectionModal;
339
213
  };