@knovator/pagecreator-node 0.2.0 → 0.4.0

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.
Files changed (120) hide show
  1. package/package.json +6 -3
  2. package/src/constants/index.d.ts +16 -0
  3. package/src/constants/index.js +30 -0
  4. package/src/constants/index.js.map +1 -0
  5. package/src/controllers/ItemController.d.ts +4 -0
  6. package/src/controllers/ItemController.js +108 -0
  7. package/src/controllers/ItemController.js.map +1 -0
  8. package/src/controllers/PageController.d.ts +4 -0
  9. package/src/controllers/PageController.js +61 -0
  10. package/src/controllers/PageController.js.map +1 -0
  11. package/src/controllers/UserController.d.ts +2 -0
  12. package/src/controllers/UserController.js +238 -0
  13. package/src/controllers/UserController.js.map +1 -0
  14. package/src/controllers/WidgetController.d.ts +8 -0
  15. package/src/controllers/WidgetController.js +131 -0
  16. package/src/controllers/WidgetController.js.map +1 -0
  17. package/src/index.d.ts +8 -0
  18. package/src/index.js +29 -0
  19. package/src/index.js.map +1 -0
  20. package/src/models/Item.d.ts +3 -0
  21. package/src/models/Item.js +30 -0
  22. package/src/models/Item.js.map +1 -0
  23. package/src/models/Page.d.ts +3 -0
  24. package/src/models/Page.js +16 -0
  25. package/src/models/Page.js.map +1 -0
  26. package/src/models/SrcSet.d.ts +4 -0
  27. package/src/models/SrcSet.js +15 -0
  28. package/src/models/SrcSet.js.map +1 -0
  29. package/src/models/Widget.d.ts +3 -0
  30. package/src/models/Widget.js +42 -0
  31. package/src/models/Widget.js.map +1 -0
  32. package/src/models/{index.ts → index.d.ts} +0 -1
  33. package/src/models/index.js +13 -0
  34. package/src/models/index.js.map +1 -0
  35. package/src/plugins/softDelete.d.ts +7 -0
  36. package/src/plugins/softDelete.js +64 -0
  37. package/src/plugins/softDelete.js.map +1 -0
  38. package/src/routes/ItemRoute.d.ts +3 -0
  39. package/src/routes/ItemRoute.js +31 -0
  40. package/src/routes/ItemRoute.js.map +1 -0
  41. package/src/routes/PageRoute.d.ts +3 -0
  42. package/src/routes/PageRoute.js +30 -0
  43. package/src/routes/PageRoute.js.map +1 -0
  44. package/src/routes/UserRoute.d.ts +3 -0
  45. package/src/routes/UserRoute.js +23 -0
  46. package/src/routes/UserRoute.js.map +1 -0
  47. package/src/routes/WidgetRoute.d.ts +3 -0
  48. package/src/routes/WidgetRoute.js +47 -0
  49. package/src/routes/WidgetRoute.js.map +1 -0
  50. package/src/services/dbService.d.ts +10 -0
  51. package/src/services/dbService.js +74 -0
  52. package/src/services/dbService.js.map +1 -0
  53. package/src/types/{IRequest.ts → IRequest.d.ts} +3 -4
  54. package/src/types/IRequest.js +3 -0
  55. package/src/types/IRequest.js.map +1 -0
  56. package/src/types/{IResponse.ts → IResponse.d.ts} +3 -4
  57. package/src/types/IResponse.js +3 -0
  58. package/src/types/IResponse.js.map +1 -0
  59. package/src/types/{Router.ts → Router.d.ts} +1 -2
  60. package/src/types/Router.js +3 -0
  61. package/src/types/Router.js.map +1 -0
  62. package/src/types/common.d.ts +93 -0
  63. package/src/types/common.js +3 -0
  64. package/src/types/common.js.map +1 -0
  65. package/src/types/enums.d.ts +11 -0
  66. package/src/types/enums.js +18 -0
  67. package/src/types/enums.js.map +1 -0
  68. package/src/types/{index.ts → index.d.ts} +0 -0
  69. package/src/types/index.js +9 -0
  70. package/src/types/index.js.map +1 -0
  71. package/src/utils/defaults.d.ts +7 -0
  72. package/src/utils/defaults.js +28 -0
  73. package/src/utils/defaults.js.map +1 -0
  74. package/src/utils/helper.d.ts +33 -0
  75. package/src/utils/helper.js +111 -0
  76. package/src/utils/helper.js.map +1 -0
  77. package/src/utils/responseHandlers.d.ts +6 -0
  78. package/src/utils/responseHandlers.js +57 -0
  79. package/src/utils/responseHandlers.js.map +1 -0
  80. package/src/utils/validate.d.ts +4 -0
  81. package/src/utils/validate.js +24 -0
  82. package/src/utils/validate.js.map +1 -0
  83. package/src/utils/validations/item.d.ts +7 -0
  84. package/src/utils/validations/item.js +52 -0
  85. package/src/utils/validations/item.js.map +1 -0
  86. package/src/utils/validations/page.d.ts +7 -0
  87. package/src/utils/validations/page.js +58 -0
  88. package/src/utils/validations/page.js.map +1 -0
  89. package/src/utils/validations/user.d.ts +3 -0
  90. package/src/utils/validations/user.js +12 -0
  91. package/src/utils/validations/user.js.map +1 -0
  92. package/src/utils/validations/widget.d.ts +9 -0
  93. package/src/utils/validations/widget.js +116 -0
  94. package/src/utils/validations/widget.js.map +1 -0
  95. package/src/constants/index.ts +0 -26
  96. package/src/controllers/ItemController.ts +0 -139
  97. package/src/controllers/PageController.ts +0 -65
  98. package/src/controllers/UserController.ts +0 -265
  99. package/src/controllers/WidgetController.ts +0 -165
  100. package/src/index.ts +0 -29
  101. package/src/models/Item.ts +0 -29
  102. package/src/models/Page.ts +0 -17
  103. package/src/models/SrcSet.ts +0 -16
  104. package/src/models/Widget.ts +0 -44
  105. package/src/plugins/softDelete.ts +0 -84
  106. package/src/routes/ItemRoute.ts +0 -32
  107. package/src/routes/PageRoute.ts +0 -31
  108. package/src/routes/UserRoute.ts +0 -32
  109. package/src/routes/WidgetRoute.ts +0 -56
  110. package/src/services/dbService.ts +0 -82
  111. package/src/types/common.ts +0 -130
  112. package/src/types/enums.ts +0 -13
  113. package/src/utils/defaults.ts +0 -30
  114. package/src/utils/helper.ts +0 -133
  115. package/src/utils/responseHandlers.ts +0 -54
  116. package/src/utils/validate.ts +0 -22
  117. package/src/utils/validations/item.ts +0 -51
  118. package/src/utils/validations/page.ts +0 -59
  119. package/src/utils/validations/user.ts +0 -9
  120. package/src/utils/validations/widget.ts +0 -118
@@ -0,0 +1,131 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getCollectionData = exports.getWidgetTypes = exports.getItemsTypes = exports.partialUpdateWidget = exports.getWidgets = exports.deleteWidget = exports.updateWidget = exports.createWidget = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const mongoose_1 = require("mongoose");
6
+ const models_1 = require("./../models");
7
+ const dbService_1 = require("../services/dbService");
8
+ const responseHandlers_1 = require("./../utils/responseHandlers");
9
+ const defaults_1 = require("../utils/defaults");
10
+ const types_1 = require("../types");
11
+ const catchAsync = (fn) => {
12
+ return defaults_1.defaults.catchAsync(fn, 'Notification');
13
+ };
14
+ exports.createWidget = catchAsync((req, res) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
15
+ var _a;
16
+ const data = req.body;
17
+ const notification = yield (0, dbService_1.create)(models_1.Widget, data);
18
+ res.message = (_a = req === null || req === void 0 ? void 0 : req.i18n) === null || _a === void 0 ? void 0 : _a.t('widget.create');
19
+ return (0, responseHandlers_1.createdDocumentResponse)(notification, res);
20
+ }));
21
+ exports.updateWidget = catchAsync((req, res) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
22
+ var _b;
23
+ const data = req.body;
24
+ const _id = req.params['id'];
25
+ const updatedNotification = yield (0, dbService_1.update)(models_1.Widget, { _id }, data);
26
+ res.message = (_b = req === null || req === void 0 ? void 0 : req.i18n) === null || _b === void 0 ? void 0 : _b.t('widget.update');
27
+ return (0, responseHandlers_1.successResponse)(updatedNotification, res);
28
+ }));
29
+ exports.deleteWidget = catchAsync((req, res) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
30
+ var _c;
31
+ const _id = new mongoose_1.Types.ObjectId(req.params['id']);
32
+ const deletedNotification = yield (0, dbService_1.remove)(models_1.Widget, { _id });
33
+ res.message = (_c = req === null || req === void 0 ? void 0 : req.i18n) === null || _c === void 0 ? void 0 : _c.t('widget.delete');
34
+ return (0, responseHandlers_1.successResponse)(deletedNotification, res);
35
+ }));
36
+ exports.getWidgets = catchAsync((req, res) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
37
+ var _d;
38
+ const search = req.body.search || '';
39
+ const { page, limit } = req.body.options;
40
+ const all = (typeof req.body.all !== 'undefined' && req.body.all === true) || false;
41
+ const isActive = typeof req.body.isActive !== 'undefined'
42
+ ? req.body.isActive || false
43
+ : null;
44
+ const customOptions = Object.assign({ pagination: !all }, (page && limit ? { page, limit } : {}));
45
+ const query = {
46
+ isDeleted: false,
47
+ isActive: { $in: isActive === null ? [true, false] : [isActive] },
48
+ $or: [
49
+ {
50
+ name: {
51
+ $regex: search,
52
+ $options: 'i',
53
+ },
54
+ },
55
+ {
56
+ code: {
57
+ $regex: search,
58
+ $options: 'i',
59
+ },
60
+ },
61
+ ],
62
+ };
63
+ const notifications = yield (0, dbService_1.list)(models_1.Widget, query, customOptions);
64
+ res.message = (_d = req === null || req === void 0 ? void 0 : req.i18n) === null || _d === void 0 ? void 0 : _d.t('widget.getAll');
65
+ return (0, responseHandlers_1.successResponse)(notifications, res);
66
+ }));
67
+ exports.partialUpdateWidget = catchAsync((req, res) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
68
+ var _e;
69
+ const data = req.body;
70
+ const _id = req.params['id'];
71
+ const updatedNotification = yield (0, dbService_1.update)(models_1.Widget, { _id }, data);
72
+ res.message = (_e = req === null || req === void 0 ? void 0 : req.i18n) === null || _e === void 0 ? void 0 : _e.t('widget.partialUpdate');
73
+ return (0, responseHandlers_1.successResponse)(updatedNotification, res);
74
+ }));
75
+ exports.getItemsTypes = catchAsync((req, res) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
76
+ var _f;
77
+ const itemsTypes = [
78
+ {
79
+ value: Object.keys(types_1.ItemsType)[0],
80
+ label: Object.values(types_1.ItemsType)[0],
81
+ },
82
+ ];
83
+ defaults_1.defaults.collections.forEach((item) => {
84
+ itemsTypes.push({
85
+ value: item.collectionName,
86
+ label: item.title,
87
+ });
88
+ });
89
+ res.message = (_f = req === null || req === void 0 ? void 0 : req.i18n) === null || _f === void 0 ? void 0 : _f.t('widget.getItemsTypes');
90
+ return (0, responseHandlers_1.successResponse)(itemsTypes, res);
91
+ }));
92
+ exports.getWidgetTypes = catchAsync((req, res) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
93
+ var _g;
94
+ const widgetTypes = Object.entries(types_1.WidgetTypes).map((e) => ({
95
+ label: e[1],
96
+ value: e[0],
97
+ }));
98
+ res.message = (_g = req === null || req === void 0 ? void 0 : req.i18n) === null || _g === void 0 ? void 0 : _g.t('widget.getWidgetTypes');
99
+ return (0, responseHandlers_1.successResponse)(widgetTypes, res);
100
+ }));
101
+ exports.getCollectionData = catchAsync((req, res) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
102
+ var _h;
103
+ const limit = 10;
104
+ const { search, collectionName } = req.body;
105
+ const collectionItem = defaults_1.defaults.collections.find((collection) => collection.collectionName === collectionName);
106
+ if (!collectionItem) {
107
+ throw new Error(`No collection is specified with ${collectionName}`);
108
+ }
109
+ // setting up mongoose model
110
+ let TempModel = mongoose_1.models[collectionName];
111
+ if (!TempModel) {
112
+ const tempSchema = new mongoose_1.Schema({}, { strict: false });
113
+ TempModel = (0, mongoose_1.model)(collectionName, tempSchema);
114
+ }
115
+ // fetching data
116
+ let query = collectionItem.filters || {};
117
+ if (search) {
118
+ query = Object.assign(Object.assign({}, query), { $or: collectionItem.searchColumns
119
+ ? collectionItem.searchColumns.map((column) => ({
120
+ [column]: {
121
+ $regex: search,
122
+ $options: 'i',
123
+ },
124
+ }))
125
+ : [] });
126
+ }
127
+ const collectionData = yield (0, dbService_1.getAll)(TempModel, query, { limit });
128
+ res.message = (_h = req === null || req === void 0 ? void 0 : req.i18n) === null || _h === void 0 ? void 0 : _h.t('widget.getCollectionData');
129
+ return (0, responseHandlers_1.successResponse)({ docs: collectionData }, res);
130
+ }));
131
+ //# sourceMappingURL=WidgetController.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WidgetController.js","sourceRoot":"","sources":["../../../../../libs/node/src/controllers/WidgetController.ts"],"names":[],"mappings":"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"}
package/src/index.d.ts ADDED
@@ -0,0 +1,8 @@
1
+ import WidgetRoutes from './routes/WidgetRoute';
2
+ import ItemRoutes from './routes/ItemRoute';
3
+ import PageRoutes from './routes/PageRoute';
4
+ import UserRoutes from './routes/UserRoute';
5
+ import { Widget, Item, Page } from './models';
6
+ import { IConfig } from './types';
7
+ declare function setConfig(config: Partial<IConfig>): void;
8
+ export { WidgetRoutes, ItemRoutes, PageRoutes, UserRoutes, Widget, Item, Page, setConfig, };
package/src/index.js ADDED
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.setConfig = exports.Page = exports.Item = exports.Widget = exports.UserRoutes = exports.PageRoutes = exports.ItemRoutes = exports.WidgetRoutes = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const defaults_1 = require("./utils/defaults");
6
+ const WidgetRoute_1 = tslib_1.__importDefault(require("./routes/WidgetRoute"));
7
+ exports.WidgetRoutes = WidgetRoute_1.default;
8
+ const ItemRoute_1 = tslib_1.__importDefault(require("./routes/ItemRoute"));
9
+ exports.ItemRoutes = ItemRoute_1.default;
10
+ const PageRoute_1 = tslib_1.__importDefault(require("./routes/PageRoute"));
11
+ exports.PageRoutes = PageRoute_1.default;
12
+ const UserRoute_1 = tslib_1.__importDefault(require("./routes/UserRoute"));
13
+ exports.UserRoutes = UserRoute_1.default;
14
+ const models_1 = require("./models");
15
+ Object.defineProperty(exports, "Widget", { enumerable: true, get: function () { return models_1.Widget; } });
16
+ Object.defineProperty(exports, "Item", { enumerable: true, get: function () { return models_1.Item; } });
17
+ Object.defineProperty(exports, "Page", { enumerable: true, get: function () { return models_1.Page; } });
18
+ function setConfig(config) {
19
+ if (config.logger) {
20
+ defaults_1.defaults.logger = config.logger;
21
+ }
22
+ if (typeof config.catchAsync === 'function')
23
+ defaults_1.defaults.catchAsync = config.catchAsync;
24
+ if (Array.isArray(config.collections)) {
25
+ defaults_1.defaults.collections = config.collections;
26
+ }
27
+ }
28
+ exports.setConfig = setConfig;
29
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../libs/node/src/index.ts"],"names":[],"mappings":";;;;AAAA,+CAA4C;AAC5C,+EAAgD;AAmB9C,uBAnBK,qBAAY,CAmBL;AAlBd,2EAA4C;AAmB1C,qBAnBK,mBAAU,CAmBL;AAlBZ,2EAA4C;AAmB1C,qBAnBK,mBAAU,CAmBL;AAlBZ,2EAA4C;AAmB1C,qBAnBK,mBAAU,CAmBL;AAlBZ,qCAA8C;AAmB5C,uFAnBO,eAAM,OAmBP;AACN,qFApBe,aAAI,OAoBf;AACJ,qFArBqB,aAAI,OAqBrB;AAlBN,SAAS,SAAS,CAAC,MAAwB;IACzC,IAAI,MAAM,CAAC,MAAM,EAAE;QACjB,mBAAQ,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;KACjC;IACD,IAAI,OAAO,MAAM,CAAC,UAAU,KAAK,UAAU;QACzC,mBAAQ,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;IAC1C,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE;QACrC,mBAAQ,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;KAC3C;AACH,CAAC;AAUC,8BAAS"}
@@ -0,0 +1,3 @@
1
+ import { IModel, IItemSchema } from '../types';
2
+ declare const Item: IModel<IItemSchema>;
3
+ export default Item;
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ const mongoose_1 = require("mongoose");
5
+ const mongoose_paginate_v2_1 = tslib_1.__importDefault(require("mongoose-paginate-v2"));
6
+ const softDelete_1 = require("../plugins/softDelete");
7
+ const types_1 = require("../types");
8
+ const ItemSchema = new mongoose_1.Schema({
9
+ widgetId: {
10
+ type: mongoose_1.Types.ObjectId,
11
+ ref: 'Widget',
12
+ },
13
+ title: String,
14
+ subtitle: String,
15
+ altText: String,
16
+ link: String,
17
+ sequence: Number,
18
+ img: { type: mongoose_1.Schema.Types.ObjectId, ref: 'file' },
19
+ itemType: {
20
+ type: String,
21
+ enum: Object.values(types_1.ItemTypes),
22
+ default: types_1.ItemTypes.Web,
23
+ required: true,
24
+ },
25
+ });
26
+ ItemSchema.plugin(softDelete_1.softDeletePlugin);
27
+ ItemSchema.plugin(mongoose_paginate_v2_1.default);
28
+ const Item = (0, mongoose_1.model)('Item', ItemSchema);
29
+ exports.default = Item;
30
+ //# sourceMappingURL=Item.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Item.js","sourceRoot":"","sources":["../../../../../libs/node/src/models/Item.ts"],"names":[],"mappings":";;;AAAA,uCAAgD;AAChD,wFAAoD;AACpD,sDAAyD;AACzD,oCAA0D;AAE1D,MAAM,UAAU,GAAG,IAAI,iBAAM,CAAc;IACzC,QAAQ,EAAE;QACR,IAAI,EAAE,gBAAK,CAAC,QAAQ;QACpB,GAAG,EAAE,QAAQ;KACd;IACD,KAAK,EAAE,MAAM;IACb,QAAQ,EAAE,MAAM;IAChB,OAAO,EAAE,MAAM;IACf,IAAI,EAAE,MAAM;IACZ,QAAQ,EAAE,MAAM;IAChB,GAAG,EAAE,EAAE,IAAI,EAAE,iBAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,GAAG,EAAE,MAAM,EAAE;IACjD,QAAQ,EAAE;QACR,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,iBAAS,CAAC;QAC9B,OAAO,EAAE,iBAAS,CAAC,GAAG;QACtB,QAAQ,EAAE,IAAI;KACf;CACF,CAAC,CAAC;AAEH,UAAU,CAAC,MAAM,CAAC,6BAAgB,CAAC,CAAC;AACpC,UAAU,CAAC,MAAM,CAAC,8BAAgB,CAAC,CAAC;AAEpC,MAAM,IAAI,GAAG,IAAA,gBAAK,EAAC,MAAM,EAAE,UAAU,CAAmC,CAAC;AAEzE,kBAAe,IAAI,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { IModel, IPageSchema } from '../types';
2
+ declare const Page: IModel<IPageSchema>;
3
+ export default Page;
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ const mongoose_1 = require("mongoose");
5
+ const mongoose_paginate_v2_1 = tslib_1.__importDefault(require("mongoose-paginate-v2"));
6
+ const softDelete_1 = require("../plugins/softDelete");
7
+ const PageSchema = new mongoose_1.Schema({
8
+ name: String,
9
+ code: String,
10
+ widgets: [{ type: mongoose_1.Types.ObjectId, ref: 'Widget' }],
11
+ });
12
+ PageSchema.plugin(softDelete_1.softDeletePlugin);
13
+ PageSchema.plugin(mongoose_paginate_v2_1.default);
14
+ const Page = (0, mongoose_1.model)('Page', PageSchema);
15
+ exports.default = Page;
16
+ //# sourceMappingURL=Page.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Page.js","sourceRoot":"","sources":["../../../../../libs/node/src/models/Page.ts"],"names":[],"mappings":";;;AAAA,uCAAgD;AAChD,wFAAoD;AACpD,sDAAyD;AAGzD,MAAM,UAAU,GAAG,IAAI,iBAAM,CAAc;IACzC,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;IACZ,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,gBAAK,CAAC,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC;CACnD,CAAC,CAAC;AAEH,UAAU,CAAC,MAAM,CAAC,6BAAgB,CAAC,CAAC;AACpC,UAAU,CAAC,MAAM,CAAC,8BAAgB,CAAC,CAAC;AAEpC,MAAM,IAAI,GAAG,IAAA,gBAAK,EAAC,MAAM,EAAE,UAAU,CAAmC,CAAC;AAEzE,kBAAe,IAAI,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { Model } from 'mongoose';
2
+ import { ISrcSetSchema } from '../types';
3
+ declare const SrcSet: Model<ISrcSetSchema>;
4
+ export default SrcSet;
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const mongoose_1 = require("mongoose");
4
+ const SrcSetSchema = new mongoose_1.Schema({
5
+ width: Number,
6
+ height: Number,
7
+ screenSize: Number,
8
+ itemId: {
9
+ type: mongoose_1.Types.ObjectId,
10
+ ref: 'Item',
11
+ },
12
+ });
13
+ const SrcSet = (0, mongoose_1.model)('SrcSet', SrcSetSchema);
14
+ exports.default = SrcSet;
15
+ //# sourceMappingURL=SrcSet.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SrcSet.js","sourceRoot":"","sources":["../../../../../libs/node/src/models/SrcSet.ts"],"names":[],"mappings":";;AAAA,uCAAuD;AAGvD,MAAM,YAAY,GAAG,IAAI,iBAAM,CAAgB;IAC7C,KAAK,EAAE,MAAM;IACb,MAAM,EAAE,MAAM;IACd,UAAU,EAAE,MAAM;IAClB,MAAM,EAAE;QACN,IAAI,EAAE,gBAAK,CAAC,QAAQ;QACpB,GAAG,EAAE,MAAM;KACZ;CACF,CAAC,CAAC;AAEH,MAAM,MAAM,GAAyB,IAAA,gBAAK,EAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;AAEnE,kBAAe,MAAM,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { IModel, IWidgetSchema } from '../types';
2
+ declare const Widget: IModel<IWidgetSchema>;
3
+ export default Widget;
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ const mongoose_1 = require("mongoose");
5
+ const mongoose_paginate_v2_1 = tslib_1.__importDefault(require("mongoose-paginate-v2"));
6
+ const softDelete_1 = require("../plugins/softDelete");
7
+ const types_1 = require("../types");
8
+ const WidgetSchema = new mongoose_1.Schema({
9
+ name: String,
10
+ code: String,
11
+ autoPlay: {
12
+ type: Boolean,
13
+ default: false,
14
+ },
15
+ isActive: {
16
+ type: Boolean,
17
+ default: true,
18
+ },
19
+ widgetTitle: String,
20
+ webPerRow: Number,
21
+ mobilePerRow: Number,
22
+ tabletPerRow: Number,
23
+ collectionName: String,
24
+ backgroundColor: String,
25
+ collectionItems: [{ type: mongoose_1.Types.ObjectId, refPath: 'collectionName' }],
26
+ itemsType: {
27
+ type: String,
28
+ default: types_1.ItemsType.Image,
29
+ required: true,
30
+ },
31
+ widgetType: {
32
+ type: String,
33
+ enum: Object.values(types_1.WidgetTypes),
34
+ default: types_1.WidgetTypes.FixedCard,
35
+ required: true,
36
+ },
37
+ });
38
+ WidgetSchema.plugin(softDelete_1.softDeletePlugin);
39
+ WidgetSchema.plugin(mongoose_paginate_v2_1.default);
40
+ const Widget = (0, mongoose_1.model)('Widget', WidgetSchema);
41
+ exports.default = Widget;
42
+ //# sourceMappingURL=Widget.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Widget.js","sourceRoot":"","sources":["../../../../../libs/node/src/models/Widget.ts"],"names":[],"mappings":";;;AAAA,uCAAgD;AAChD,wFAAoD;AACpD,sDAAyD;AACzD,oCAAyE;AAEzE,MAAM,YAAY,GAAG,IAAI,iBAAM,CAAgB;IAC7C,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;IACZ,QAAQ,EAAE;QACR,IAAI,EAAE,OAAO;QACb,OAAO,EAAE,KAAK;KACf;IACD,QAAQ,EAAE;QACR,IAAI,EAAE,OAAO;QACb,OAAO,EAAE,IAAI;KACd;IACD,WAAW,EAAE,MAAM;IACnB,SAAS,EAAE,MAAM;IACjB,YAAY,EAAE,MAAM;IACpB,YAAY,EAAE,MAAM;IACpB,cAAc,EAAE,MAAM;IACtB,eAAe,EAAE,MAAM;IACvB,eAAe,EAAE,CAAC,EAAE,IAAI,EAAE,gBAAK,CAAC,QAAQ,EAAE,OAAO,EAAE,gBAAgB,EAAE,CAAC;IACtE,SAAS,EAAE;QACT,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,iBAAS,CAAC,KAAK;QACxB,QAAQ,EAAE,IAAI;KACf;IACD,UAAU,EAAE;QACV,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,mBAAW,CAAC;QAChC,OAAO,EAAE,mBAAW,CAAC,SAAS;QAC9B,QAAQ,EAAE,IAAI;KACf;CACF,CAAC,CAAC;AAEH,YAAY,CAAC,MAAM,CAAC,6BAAgB,CAAC,CAAC;AACtC,YAAY,CAAC,MAAM,CAAC,8BAAgB,CAAC,CAAC;AAEtC,MAAM,MAAM,GAAG,IAAA,gBAAK,EAClB,QAAQ,EACR,YAAY,CACuB,CAAC;AAEtC,kBAAe,MAAM,CAAC"}
@@ -2,5 +2,4 @@ import Widget from './Widget';
2
2
  import Item from './Item';
3
3
  import Page from './Page';
4
4
  import SrcSet from './SrcSet';
5
-
6
5
  export { Widget, Item, Page, SrcSet };
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SrcSet = exports.Page = exports.Item = exports.Widget = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const Widget_1 = tslib_1.__importDefault(require("./Widget"));
6
+ exports.Widget = Widget_1.default;
7
+ const Item_1 = tslib_1.__importDefault(require("./Item"));
8
+ exports.Item = Item_1.default;
9
+ const Page_1 = tslib_1.__importDefault(require("./Page"));
10
+ exports.Page = Page_1.default;
11
+ const SrcSet_1 = tslib_1.__importDefault(require("./SrcSet"));
12
+ exports.SrcSet = SrcSet_1.default;
13
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../libs/node/src/models/index.ts"],"names":[],"mappings":";;;;AAAA,8DAA8B;AAKrB,iBALF,gBAAM,CAKE;AAJf,0DAA0B;AAIT,eAJV,cAAI,CAIU;AAHrB,0DAA0B;AAGH,eAHhB,cAAI,CAGgB;AAF3B,8DAA8B;AAED,iBAFtB,gBAAM,CAEsB"}
@@ -0,0 +1,7 @@
1
+ import mongoose from 'mongoose';
2
+ export type TWithSoftDeleted = {
3
+ isDeleted?: boolean;
4
+ deletedAt?: Date | null;
5
+ };
6
+ declare const softDeletePlugin: (schema: mongoose.Schema) => void;
7
+ export { softDeletePlugin };
@@ -0,0 +1,64 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.softDeletePlugin = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const softDeletePlugin = (schema) => {
6
+ schema.add({
7
+ isDeleted: {
8
+ type: Boolean,
9
+ required: true,
10
+ default: false,
11
+ },
12
+ deletedAt: {
13
+ type: Date,
14
+ default: null,
15
+ },
16
+ });
17
+ const typesFindQueryMiddleware = [
18
+ 'count',
19
+ 'find',
20
+ 'findOne',
21
+ 'findOneAndDelete',
22
+ 'findOneAndRemove',
23
+ 'findOneAndUpdate',
24
+ 'update',
25
+ 'updateOne',
26
+ 'updateMany',
27
+ ];
28
+ const setDocumentIsDeleted = (doc) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
29
+ doc.isDeleted = true;
30
+ doc.deletedAt = new Date();
31
+ doc.$isDeleted(true);
32
+ yield doc.save();
33
+ });
34
+ const excludeInFindQueriesIsDeleted = function (next) {
35
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
36
+ this['where']({ isDeleted: false });
37
+ next();
38
+ });
39
+ };
40
+ const excludeInDeletedInAggregateMiddleware = function (next) {
41
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
42
+ this.pipeline().unshift({ $match: { isDeleted: false } });
43
+ next();
44
+ });
45
+ };
46
+ schema.pre('remove', function (next) {
47
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
48
+ yield setDocumentIsDeleted(this);
49
+ next();
50
+ });
51
+ });
52
+ typesFindQueryMiddleware.forEach((type) => {
53
+ schema.pre(type, excludeInFindQueriesIsDeleted);
54
+ });
55
+ schema.pre('aggregate', excludeInDeletedInAggregateMiddleware);
56
+ schema.method('toJSON', function () {
57
+ const obj = this.toObject();
58
+ delete obj.isDeleted;
59
+ delete obj.deletedAt;
60
+ return obj;
61
+ });
62
+ };
63
+ exports.softDeletePlugin = softDeletePlugin;
64
+ //# sourceMappingURL=softDelete.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"softDelete.js","sourceRoot":"","sources":["../../../../../libs/node/src/plugins/softDelete.ts"],"names":[],"mappings":";;;;AASA,MAAM,gBAAgB,GAAG,CAAC,MAAuB,EAAE,EAAE;IACnD,MAAM,CAAC,GAAG,CAAC;QACT,SAAS,EAAE;YACT,IAAI,EAAE,OAAO;YACb,QAAQ,EAAE,IAAI;YACd,OAAO,EAAE,KAAK;SACf;QACD,SAAS,EAAE;YACT,IAAI,EAAE,IAAI;YACV,OAAO,EAAE,IAAI;SACd;KACF,CAAC,CAAC;IAEH,MAAM,wBAAwB,GAAG;QAC/B,OAAO;QACP,MAAM;QACN,SAAS;QACT,kBAAkB;QAClB,kBAAkB;QAClB,kBAAkB;QAClB,QAAQ;QACR,WAAW;QACX,YAAY;KACb,CAAC;IAEF,MAAM,oBAAoB,GAAG,CAAO,GAAc,EAAE,EAAE;QACpD,GAAG,CAAC,SAAS,GAAG,IAAI,CAAC;QACrB,GAAG,CAAC,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC;QAC3B,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACrB,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;IACnB,CAAC,CAAA,CAAC;IAEF,MAAM,6BAA6B,GAAG,UAEpC,IAAoD;;YAEpD,IAAI,CAAC,OAAO,CAAC,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;YACpC,IAAI,EAAE,CAAC;QACT,CAAC;KAAA,CAAC;IAEF,MAAM,qCAAqC,GAAG,UAE5C,IAAoD;;YAEpD,IAAI,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;YAC1D,IAAI,EAAE,CAAC;QACT,CAAC;KAAA,CAAC;IAEF,MAAM,CAAC,GAAG,CACR,QAAQ,EACR,UAEE,IAAoD;;YAEpD,MAAM,oBAAoB,CAAC,IAAI,CAAC,CAAC;YACjC,IAAI,EAAE,CAAC;QACT,CAAC;KAAA,CACF,CAAC;IAEF,wBAAwB,CAAC,OAAO,CAAC,CAAC,IAAS,EAAE,EAAE;QAC7C,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,6BAA6B,CAAC,CAAC;IAClD,CAAC,CAAC,CAAC;IAEH,MAAM,CAAC,GAAG,CAAC,WAAW,EAAE,qCAAqC,CAAC,CAAC;IAE/D,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE;QACtB,MAAM,GAAG,GAAc,IAAI,CAAC,QAAQ,EAAE,CAAC;QACvC,OAAO,GAAG,CAAC,SAAS,CAAC;QACrB,OAAO,GAAG,CAAC,SAAS,CAAC;QAErB,OAAO,GAAG,CAAC;IACb,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAEO,4CAAgB"}
@@ -0,0 +1,3 @@
1
+ import { IRouter } from '../types';
2
+ declare const routes: IRouter;
3
+ export default routes;
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ const express_1 = tslib_1.__importDefault(require("express"));
5
+ // eslint-disable-next-line @typescript-eslint/no-var-requires
6
+ require('express-list-endpoints-descriptor')(express_1.default);
7
+ const validate_1 = tslib_1.__importDefault(require("../utils/validate"));
8
+ const itemValidation = tslib_1.__importStar(require("../utils/validations/item"));
9
+ const itemController = tslib_1.__importStar(require("../controllers/ItemController"));
10
+ const descriptorPrefix = process.env['PAGECREATOR_DESCRIPTOR_PREFIX'] || '';
11
+ const routes = express_1.default.Router();
12
+ routes.use(express_1.default.json());
13
+ // Item Routes
14
+ // Get all items
15
+ routes
16
+ .get(`/:widgetId`, (0, validate_1.default)(itemValidation.list), itemController.getItems)
17
+ .descriptor(`${descriptorPrefix}item.getAll`);
18
+ // Create a item
19
+ routes
20
+ .post(`/`, (0, validate_1.default)(itemValidation.create), itemController.createItem)
21
+ .descriptor(`${descriptorPrefix}item.create`);
22
+ // Update a item
23
+ routes
24
+ .put(`/:id`, (0, validate_1.default)(itemValidation.update), itemController.updateItem)
25
+ .descriptor(`${descriptorPrefix}item.update`);
26
+ // Delete a item
27
+ routes
28
+ .delete(`/:id`, itemController.deleteItem)
29
+ .descriptor(`${descriptorPrefix}item.delete`);
30
+ exports.default = routes;
31
+ //# sourceMappingURL=ItemRoute.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ItemRoute.js","sourceRoot":"","sources":["../../../../../libs/node/src/routes/ItemRoute.ts"],"names":[],"mappings":";;;AAAA,8DAA8B;AAC9B,8DAA8D;AAC9D,OAAO,CAAC,mCAAmC,CAAC,CAAC,iBAAO,CAAC,CAAC;AAGtD,yEAAyC;AACzC,kFAA4D;AAC5D,sFAAgE;AAEhE,MAAM,gBAAgB,GAAG,OAAO,CAAC,GAAG,CAAC,+BAA+B,CAAC,IAAI,EAAE,CAAC;AAC5E,MAAM,MAAM,GAAG,iBAAO,CAAC,MAAM,EAAa,CAAC;AAC3C,MAAM,CAAC,GAAG,CAAC,iBAAO,CAAC,IAAI,EAAE,CAAC,CAAC;AAE3B,cAAc;AACd,gBAAgB;AAChB,MAAM;KACH,GAAG,CAAC,YAAY,EAAE,IAAA,kBAAQ,EAAC,cAAc,CAAC,IAAI,CAAC,EAAE,cAAc,CAAC,QAAQ,CAAC;KACzE,UAAU,CAAC,GAAG,gBAAgB,aAAa,CAAC,CAAC;AAChD,gBAAgB;AAChB,MAAM;KACH,IAAI,CAAC,GAAG,EAAE,IAAA,kBAAQ,EAAC,cAAc,CAAC,MAAM,CAAC,EAAE,cAAc,CAAC,UAAU,CAAC;KACrE,UAAU,CAAC,GAAG,gBAAgB,aAAa,CAAC,CAAC;AAChD,gBAAgB;AAChB,MAAM;KACH,GAAG,CAAC,MAAM,EAAE,IAAA,kBAAQ,EAAC,cAAc,CAAC,MAAM,CAAC,EAAE,cAAc,CAAC,UAAU,CAAC;KACvE,UAAU,CAAC,GAAG,gBAAgB,aAAa,CAAC,CAAC;AAChD,gBAAgB;AAChB,MAAM;KACH,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,UAAU,CAAC;KACzC,UAAU,CAAC,GAAG,gBAAgB,aAAa,CAAC,CAAC;AAEhD,kBAAe,MAAM,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { IRouter } from '../types';
2
+ declare const routes: IRouter;
3
+ export default routes;
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ const express_1 = tslib_1.__importDefault(require("express"));
5
+ // eslint-disable-next-line @typescript-eslint/no-var-requires
6
+ require('express-list-endpoints-descriptor')(express_1.default);
7
+ const validate_1 = tslib_1.__importDefault(require("../utils/validate"));
8
+ const pageValidation = tslib_1.__importStar(require("../utils/validations/page"));
9
+ const pageController = tslib_1.__importStar(require("../controllers/PageController"));
10
+ const descriptorPrefix = process.env['PAGECREATOR_DESCRIPTOR_PREFIX'] || '';
11
+ const routes = express_1.default.Router();
12
+ routes.use(express_1.default.json());
13
+ // Get all pages
14
+ routes
15
+ .post(`/list`, (0, validate_1.default)(pageValidation.list), pageController.getPages)
16
+ .descriptor(`${descriptorPrefix}page.getAll`);
17
+ // Create a page
18
+ routes
19
+ .post(`/`, (0, validate_1.default)(pageValidation.create), pageController.createPage)
20
+ .descriptor(`${descriptorPrefix}page.create`);
21
+ // Update a page
22
+ routes
23
+ .put(`/:id`, (0, validate_1.default)(pageValidation.update), pageController.updatePage)
24
+ .descriptor(`${descriptorPrefix}page.update`);
25
+ // Delete a page
26
+ routes
27
+ .delete(`/:id`, pageController.deletePage)
28
+ .descriptor(`${descriptorPrefix}page.delete`);
29
+ exports.default = routes;
30
+ //# sourceMappingURL=PageRoute.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PageRoute.js","sourceRoot":"","sources":["../../../../../libs/node/src/routes/PageRoute.ts"],"names":[],"mappings":";;;AAAA,8DAA8B;AAC9B,8DAA8D;AAC9D,OAAO,CAAC,mCAAmC,CAAC,CAAC,iBAAO,CAAC,CAAC;AAGtD,yEAAyC;AACzC,kFAA4D;AAC5D,sFAAgE;AAEhE,MAAM,gBAAgB,GAAG,OAAO,CAAC,GAAG,CAAC,+BAA+B,CAAC,IAAI,EAAE,CAAC;AAC5E,MAAM,MAAM,GAAG,iBAAO,CAAC,MAAM,EAAa,CAAC;AAC3C,MAAM,CAAC,GAAG,CAAC,iBAAO,CAAC,IAAI,EAAE,CAAC,CAAC;AAE3B,gBAAgB;AAChB,MAAM;KACH,IAAI,CAAC,OAAO,EAAE,IAAA,kBAAQ,EAAC,cAAc,CAAC,IAAI,CAAC,EAAE,cAAc,CAAC,QAAQ,CAAC;KACrE,UAAU,CAAC,GAAG,gBAAgB,aAAa,CAAC,CAAC;AAChD,gBAAgB;AAChB,MAAM;KACH,IAAI,CAAC,GAAG,EAAE,IAAA,kBAAQ,EAAC,cAAc,CAAC,MAAM,CAAC,EAAE,cAAc,CAAC,UAAU,CAAC;KACrE,UAAU,CAAC,GAAG,gBAAgB,aAAa,CAAC,CAAC;AAChD,gBAAgB;AAChB,MAAM;KACH,GAAG,CAAC,MAAM,EAAE,IAAA,kBAAQ,EAAC,cAAc,CAAC,MAAM,CAAC,EAAE,cAAc,CAAC,UAAU,CAAC;KACvE,UAAU,CAAC,GAAG,gBAAgB,aAAa,CAAC,CAAC;AAChD,gBAAgB;AAChB,MAAM;KACH,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,UAAU,CAAC;KACzC,UAAU,CAAC,GAAG,gBAAgB,aAAa,CAAC,CAAC;AAEhD,kBAAe,MAAM,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { IRouter } from '../types';
2
+ declare const routes: IRouter;
3
+ export default routes;
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ const express_1 = tslib_1.__importDefault(require("express"));
5
+ // eslint-disable-next-line @typescript-eslint/no-var-requires
6
+ require('express-list-endpoints-descriptor')(express_1.default);
7
+ const validate_1 = tslib_1.__importDefault(require("../utils/validate"));
8
+ const userValidation = tslib_1.__importStar(require("../utils/validations/user"));
9
+ const userController = tslib_1.__importStar(require("../controllers/UserController"));
10
+ const descriptorPrefix = process.env['PAGECREATOR_DESCRIPTOR_PREFIX'] || '';
11
+ const routes = express_1.default.Router();
12
+ routes.use(express_1.default.json());
13
+ // Item Routes
14
+ // Get Widget Data
15
+ routes
16
+ .post(`/widget-data`, (0, validate_1.default)(userValidation.getWidgetData), userController.getWidgetData)
17
+ .descriptor(`${descriptorPrefix}user.getWidgetData`);
18
+ // Get Page Data
19
+ routes
20
+ .post('/page-data', (0, validate_1.default)(userValidation.getPageData), userController.getPageData)
21
+ .descriptor(`${descriptorPrefix}user.getPageData`);
22
+ exports.default = routes;
23
+ //# sourceMappingURL=UserRoute.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UserRoute.js","sourceRoot":"","sources":["../../../../../libs/node/src/routes/UserRoute.ts"],"names":[],"mappings":";;;AAAA,8DAA8B;AAC9B,8DAA8D;AAC9D,OAAO,CAAC,mCAAmC,CAAC,CAAC,iBAAO,CAAC,CAAC;AAGtD,yEAAyC;AACzC,kFAA4D;AAC5D,sFAAgE;AAEhE,MAAM,gBAAgB,GAAG,OAAO,CAAC,GAAG,CAAC,+BAA+B,CAAC,IAAI,EAAE,CAAC;AAC5E,MAAM,MAAM,GAAG,iBAAO,CAAC,MAAM,EAAa,CAAC;AAC3C,MAAM,CAAC,GAAG,CAAC,iBAAO,CAAC,IAAI,EAAE,CAAC,CAAC;AAE3B,cAAc;AACd,kBAAkB;AAClB,MAAM;KACH,IAAI,CACH,cAAc,EACd,IAAA,kBAAQ,EAAC,cAAc,CAAC,aAAa,CAAC,EACtC,cAAc,CAAC,aAAa,CAC7B;KACA,UAAU,CAAC,GAAG,gBAAgB,oBAAoB,CAAC,CAAC;AACvD,gBAAgB;AAChB,MAAM;KACH,IAAI,CACH,YAAY,EACZ,IAAA,kBAAQ,EAAC,cAAc,CAAC,WAAW,CAAC,EACpC,cAAc,CAAC,WAAW,CAC3B;KACA,UAAU,CAAC,GAAG,gBAAgB,kBAAkB,CAAC,CAAC;AAErD,kBAAe,MAAM,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { IRouter } from '../types';
2
+ declare const routes: IRouter;
3
+ export default routes;
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ const express_1 = tslib_1.__importDefault(require("express"));
5
+ // eslint-disable-next-line @typescript-eslint/no-var-requires
6
+ require('express-list-endpoints-descriptor')(express_1.default);
7
+ const validate_1 = tslib_1.__importDefault(require("../utils/validate"));
8
+ const widgetValidation = tslib_1.__importStar(require("../utils/validations/widget"));
9
+ const widgetController = tslib_1.__importStar(require("../controllers/WidgetController"));
10
+ const descriptorPrefix = process.env['PAGECREATOR_DESCRIPTOR_PREFIX'] || '';
11
+ const routes = express_1.default.Router();
12
+ routes.use(express_1.default.json());
13
+ // Widget Routes
14
+ // Get widget types
15
+ routes
16
+ .get('/widget-types', widgetController.getItemsTypes)
17
+ .descriptor(`${descriptorPrefix}widget.getItemsTypes`);
18
+ // Get widget selection types
19
+ routes
20
+ .get('/selection-types', widgetController.getWidgetTypes)
21
+ .descriptor(`${descriptorPrefix}widget.getWidgetTypes`);
22
+ // Get all widgets
23
+ routes
24
+ .post(`/list`, (0, validate_1.default)(widgetValidation.list), widgetController.getWidgets)
25
+ .descriptor(`${descriptorPrefix}widget.getAll`);
26
+ // Create a widget
27
+ routes
28
+ .post(`/`, (0, validate_1.default)(widgetValidation.create), widgetController.createWidget)
29
+ .descriptor(`${descriptorPrefix}widget.create`);
30
+ // Update a widget
31
+ routes
32
+ .put(`/:id`, (0, validate_1.default)(widgetValidation.update), widgetController.updateWidget)
33
+ .descriptor(`${descriptorPrefix}widget.update`);
34
+ // Partial Update a widget
35
+ routes
36
+ .patch(`/:id`, (0, validate_1.default)(widgetValidation.partialUpdate), widgetController.partialUpdateWidget)
37
+ .descriptor(`${descriptorPrefix}widget.partialUpdate`);
38
+ // Delete a widget
39
+ routes
40
+ .delete(`/:id`, widgetController.deleteWidget)
41
+ .descriptor(`${descriptorPrefix}widget.delete`);
42
+ // Get dynamic collection data
43
+ routes
44
+ .post('/collection-data', (0, validate_1.default)(widgetValidation.getCollectionData), widgetController.getCollectionData)
45
+ .descriptor(`${descriptorPrefix}widget.getCollectionData`);
46
+ exports.default = routes;
47
+ //# sourceMappingURL=WidgetRoute.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WidgetRoute.js","sourceRoot":"","sources":["../../../../../libs/node/src/routes/WidgetRoute.ts"],"names":[],"mappings":";;;AAAA,8DAA8B;AAC9B,8DAA8D;AAC9D,OAAO,CAAC,mCAAmC,CAAC,CAAC,iBAAO,CAAC,CAAC;AAGtD,yEAAyC;AACzC,sFAAgE;AAChE,0FAAoE;AAEpE,MAAM,gBAAgB,GAAG,OAAO,CAAC,GAAG,CAAC,+BAA+B,CAAC,IAAI,EAAE,CAAC;AAC5E,MAAM,MAAM,GAAG,iBAAO,CAAC,MAAM,EAAa,CAAC;AAC3C,MAAM,CAAC,GAAG,CAAC,iBAAO,CAAC,IAAI,EAAE,CAAC,CAAC;AAE3B,gBAAgB;AAChB,mBAAmB;AACnB,MAAM;KACH,GAAG,CAAC,eAAe,EAAE,gBAAgB,CAAC,aAAa,CAAC;KACpD,UAAU,CAAC,GAAG,gBAAgB,sBAAsB,CAAC,CAAC;AACzD,6BAA6B;AAC7B,MAAM;KACH,GAAG,CAAC,kBAAkB,EAAE,gBAAgB,CAAC,cAAc,CAAC;KACxD,UAAU,CAAC,GAAG,gBAAgB,uBAAuB,CAAC,CAAC;AAC1D,kBAAkB;AAClB,MAAM;KACH,IAAI,CAAC,OAAO,EAAE,IAAA,kBAAQ,EAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,gBAAgB,CAAC,UAAU,CAAC;KAC3E,UAAU,CAAC,GAAG,gBAAgB,eAAe,CAAC,CAAC;AAClD,kBAAkB;AAClB,MAAM;KACH,IAAI,CAAC,GAAG,EAAE,IAAA,kBAAQ,EAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE,gBAAgB,CAAC,YAAY,CAAC;KAC3E,UAAU,CAAC,GAAG,gBAAgB,eAAe,CAAC,CAAC;AAClD,kBAAkB;AAClB,MAAM;KACH,GAAG,CAAC,MAAM,EAAE,IAAA,kBAAQ,EAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE,gBAAgB,CAAC,YAAY,CAAC;KAC7E,UAAU,CAAC,GAAG,gBAAgB,eAAe,CAAC,CAAC;AAClD,0BAA0B;AAC1B,MAAM;KACH,KAAK,CACJ,MAAM,EACN,IAAA,kBAAQ,EAAC,gBAAgB,CAAC,aAAa,CAAC,EACxC,gBAAgB,CAAC,mBAAmB,CACrC;KACA,UAAU,CAAC,GAAG,gBAAgB,sBAAsB,CAAC,CAAC;AACzD,kBAAkB;AAClB,MAAM;KACH,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,YAAY,CAAC;KAC7C,UAAU,CAAC,GAAG,gBAAgB,eAAe,CAAC,CAAC;AAClD,8BAA8B;AAC9B,MAAM;KACH,IAAI,CACH,kBAAkB,EAClB,IAAA,kBAAQ,EAAC,gBAAgB,CAAC,iBAAiB,CAAC,EAC5C,gBAAgB,CAAC,iBAAiB,CACnC;KACA,UAAU,CAAC,GAAG,gBAAgB,0BAA0B,CAAC,CAAC;AAE7D,kBAAe,MAAM,CAAC"}
@@ -0,0 +1,10 @@
1
+ import { Model, FilterQuery, QueryOptions, ProjectionType, HydratedDocument, QueryWithHelpers } from 'mongoose';
2
+ import { EntityType, IModel, ReturnDocument } from '../types';
3
+ export declare function create<T extends EntityType>(Modal: Model<T>, data: Partial<T>): Promise<ReturnDocument>;
4
+ export declare function update<T extends EntityType>(Modal: Model<T>, query: FilterQuery<EntityType>, data: Partial<T>): Promise<ReturnDocument | undefined>;
5
+ export declare function remove<T extends EntityType>(Modal: Model<T>, query: FilterQuery<EntityType>): Promise<ReturnDocument>;
6
+ export declare function deleteAll<T extends EntityType>(Modal: Model<T>, query: FilterQuery<T>): Promise<import("mongodb").DeleteResult>;
7
+ export declare function getAll<T extends EntityType>(Modal: Model<T>, query?: FilterQuery<EntityType>, options?: QueryOptions<EntityType>, projection?: ProjectionType<EntityType>): QueryWithHelpers<Array<T>, T, {}, T>;
8
+ export declare function list<T extends EntityType>(Modal: IModel<T>, where: FilterQuery<T>, options: QueryOptions<T>): Promise<ReturnDocument[]>;
9
+ export declare function getOne<T extends EntityType>(Modal: Model<T>, query: FilterQuery<EntityType>, projection?: ProjectionType<EntityType>): Promise<HydratedDocument<T>>;
10
+ export declare function bulkInsert<T extends EntityType>(Modal: Model<T>, docs: T[]): Promise<ReturnDocument[]>;