@ozdao/prometheus-framework 0.2.65 → 0.2.67

Sign up to get free protection for your applications and to get access to all the features.
Files changed (173) hide show
  1. package/dist/community.server.js +3 -3
  2. package/dist/community.server.mjs +2 -2
  3. package/dist/events.server.js +3 -3
  4. package/dist/events.server.mjs +2 -2
  5. package/dist/main-BDrW8oeL.mjs +13755 -0
  6. package/dist/main-CNIKtifM.js +91 -0
  7. package/dist/main.css +1 -1
  8. package/dist/metadata.schema-BLGSCSmy.mjs +55 -0
  9. package/dist/metadata.schema-DWR97jhW.js +54 -0
  10. package/dist/ownership.schema-CGqscZIi.js +159 -0
  11. package/dist/ownership.schema-DtT2IgqC.mjs +160 -0
  12. package/dist/products.server.js +50 -15
  13. package/dist/products.server.mjs +50 -15
  14. package/dist/prometheus-framework/src/components/Block/Block.vue.cjs +1 -1
  15. package/dist/prometheus-framework/src/components/Block/Block.vue.js +1 -1
  16. package/dist/prometheus-framework/src/components/Button/Button.vue.cjs +1 -1
  17. package/dist/prometheus-framework/src/components/Button/Button.vue.js +1 -225
  18. package/dist/prometheus-framework/src/components/Button/Button.vue2.cjs +1 -1
  19. package/dist/prometheus-framework/src/components/Button/Button.vue2.js +225 -1
  20. package/dist/prometheus-framework/src/components/Dropdown/Dropdown.vue.cjs +1 -1
  21. package/dist/prometheus-framework/src/components/Dropdown/Dropdown.vue.js +55 -1
  22. package/dist/prometheus-framework/src/components/Dropdown/Dropdown.vue2.cjs +1 -1
  23. package/dist/prometheus-framework/src/components/Dropdown/Dropdown.vue2.js +1 -55
  24. package/dist/prometheus-framework/src/components/Feed/Feed.vue.cjs +1 -1
  25. package/dist/prometheus-framework/src/components/Feed/Feed.vue.js +40 -39
  26. package/dist/prometheus-framework/src/components/Field/Field.vue.cjs +1 -1
  27. package/dist/prometheus-framework/src/components/Field/Field.vue.js +1 -83
  28. package/dist/prometheus-framework/src/components/Field/Field.vue2.cjs +1 -1
  29. package/dist/prometheus-framework/src/components/Field/Field.vue2.js +84 -1
  30. package/dist/prometheus-framework/src/components/FieldBig/FieldBig.vue.cjs +1 -1
  31. package/dist/prometheus-framework/src/components/FieldBig/FieldBig.vue.js +1 -1
  32. package/dist/prometheus-framework/src/components/Popup/Popup.vue.cjs +1 -1
  33. package/dist/prometheus-framework/src/components/Popup/Popup.vue.js +1 -72
  34. package/dist/prometheus-framework/src/components/Popup/Popup.vue2.cjs +1 -1
  35. package/dist/prometheus-framework/src/components/Popup/Popup.vue2.js +72 -1
  36. package/dist/prometheus-framework/src/components/Tab/Tab.vue.cjs +1 -1
  37. package/dist/prometheus-framework/src/components/Tab/Tab.vue.js +1 -46
  38. package/dist/prometheus-framework/src/components/Tab/Tab.vue2.cjs +1 -1
  39. package/dist/prometheus-framework/src/components/Tab/Tab.vue2.js +46 -1
  40. package/dist/prometheus-framework/src/components/Tooltip/Tooltip.vue.cjs +1 -1
  41. package/dist/prometheus-framework/src/components/Tooltip/Tooltip.vue.js +1 -45
  42. package/dist/prometheus-framework/src/components/Tooltip/Tooltip.vue2.cjs +1 -1
  43. package/dist/prometheus-framework/src/components/Tooltip/Tooltip.vue2.js +45 -1
  44. package/dist/prometheus-framework/src/modules/auth/components/layouts/Auth.vue.cjs +1 -1
  45. package/dist/prometheus-framework/src/modules/auth/components/layouts/Auth.vue.js +3 -3
  46. package/dist/prometheus-framework/src/modules/auth/components/pages/EnterCode.vue.cjs +1 -1
  47. package/dist/prometheus-framework/src/modules/auth/components/pages/EnterCode.vue.js +1 -1
  48. package/dist/prometheus-framework/src/modules/auth/components/pages/EnterPassword.vue.cjs +1 -1
  49. package/dist/prometheus-framework/src/modules/auth/components/pages/EnterPassword.vue.js +3 -3
  50. package/dist/prometheus-framework/src/modules/auth/components/pages/Invite.vue.cjs +1 -1
  51. package/dist/prometheus-framework/src/modules/auth/components/pages/Invite.vue.js +3 -3
  52. package/dist/prometheus-framework/src/modules/auth/components/pages/ResetPassword.vue.cjs +1 -1
  53. package/dist/prometheus-framework/src/modules/auth/components/pages/ResetPassword.vue.js +3 -3
  54. package/dist/prometheus-framework/src/modules/auth/components/pages/SignIn.vue.cjs +1 -1
  55. package/dist/prometheus-framework/src/modules/auth/components/pages/SignIn.vue.js +3 -3
  56. package/dist/prometheus-framework/src/modules/auth/components/pages/SignUp.vue.cjs +1 -1
  57. package/dist/prometheus-framework/src/modules/auth/components/pages/SignUp.vue.js +3 -3
  58. package/dist/prometheus-framework/src/modules/community/components/pages/Community.vue.cjs +1 -1
  59. package/dist/prometheus-framework/src/modules/community/components/pages/Community.vue.js +2 -2
  60. package/dist/prometheus-framework/src/modules/community/components/pages/CreateBlogPost.vue.cjs +1 -1
  61. package/dist/prometheus-framework/src/modules/community/components/pages/CreateBlogPost.vue.js +3 -3
  62. package/dist/prometheus-framework/src/modules/community/components/sections/HotPosts.vue.cjs +1 -1
  63. package/dist/prometheus-framework/src/modules/community/components/sections/HotPosts.vue.js +1 -1
  64. package/dist/prometheus-framework/src/modules/constructor/components/elements/Embed.vue.cjs +1 -1
  65. package/dist/prometheus-framework/src/modules/constructor/components/elements/Embed.vue.js +1 -1
  66. package/dist/prometheus-framework/src/modules/events/components/elements/ButtonJoin.vue.cjs +1 -1
  67. package/dist/prometheus-framework/src/modules/events/components/elements/ButtonJoin.vue.js +1 -1
  68. package/dist/prometheus-framework/src/modules/events/components/pages/EditEvent.vue.cjs +1 -1
  69. package/dist/prometheus-framework/src/modules/events/components/pages/EditEvent.vue.js +3 -3
  70. package/dist/prometheus-framework/src/modules/events/components/pages/EditEventTickets.vue.cjs +1 -1
  71. package/dist/prometheus-framework/src/modules/events/components/pages/EditEventTickets.vue.js +3 -3
  72. package/dist/prometheus-framework/src/modules/events/components/pages/Events.vue.cjs +1 -1
  73. package/dist/prometheus-framework/src/modules/events/components/pages/Events.vue.js +10 -9
  74. package/dist/prometheus-framework/src/modules/gallery/components/sections/BackofficeGallery.vue.cjs +1 -1
  75. package/dist/prometheus-framework/src/modules/gallery/components/sections/BackofficeGallery.vue.js +2 -2
  76. package/dist/prometheus-framework/src/modules/gallery/components/sections/GalleryWithCategories.vue.cjs +1 -1
  77. package/dist/prometheus-framework/src/modules/gallery/components/sections/GalleryWithCategories.vue.js +2 -2
  78. package/dist/prometheus-framework/src/modules/globals/components/blocks/BlockSearch.vue.cjs +1 -1
  79. package/dist/prometheus-framework/src/modules/globals/components/blocks/BlockSearch.vue.js +1 -1
  80. package/dist/prometheus-framework/src/modules/globals/components/blocks/CardHeader.vue.cjs +1 -1
  81. package/dist/prometheus-framework/src/modules/globals/components/blocks/CardHeader.vue.js +60 -46
  82. package/dist/prometheus-framework/src/modules/globals/store/globals.cjs +1 -1
  83. package/dist/prometheus-framework/src/modules/globals/store/globals.js +5 -5
  84. package/dist/prometheus-framework/src/modules/legal/components/pages/Legal.vue.cjs +1 -1
  85. package/dist/prometheus-framework/src/modules/legal/components/pages/Legal.vue.js +2 -2
  86. package/dist/prometheus-framework/src/modules/orders/components/pages/EditOrder.vue.cjs +1 -1
  87. package/dist/prometheus-framework/src/modules/orders/components/pages/EditOrder.vue.js +3 -3
  88. package/dist/prometheus-framework/src/modules/orders/components/pages/Orders.vue.cjs +1 -1
  89. package/dist/prometheus-framework/src/modules/orders/components/pages/Orders.vue.js +1 -1
  90. package/dist/prometheus-framework/src/modules/organizations/components/blocks/DepartmentMemberModify.vue.cjs +1 -1
  91. package/dist/prometheus-framework/src/modules/organizations/components/blocks/DepartmentMemberModify.vue.js +1 -1
  92. package/dist/prometheus-framework/src/modules/organizations/components/elements/ButtonToggleMembership.vue.cjs +1 -1
  93. package/dist/prometheus-framework/src/modules/organizations/components/elements/ButtonToggleMembership.vue.js +1 -1
  94. package/dist/prometheus-framework/src/modules/organizations/components/pages/DepartmentEdit.vue.cjs +1 -1
  95. package/dist/prometheus-framework/src/modules/organizations/components/pages/DepartmentEdit.vue.js +4 -4
  96. package/dist/prometheus-framework/src/modules/organizations/components/pages/Members.vue.cjs +1 -1
  97. package/dist/prometheus-framework/src/modules/organizations/components/pages/Members.vue.js +3 -3
  98. package/dist/prometheus-framework/src/modules/organizations/components/pages/Organization.vue.cjs +1 -1
  99. package/dist/prometheus-framework/src/modules/organizations/components/pages/Organization.vue.js +1 -1
  100. package/dist/prometheus-framework/src/modules/organizations/components/pages/OrganizationEdit.vue.cjs +1 -1
  101. package/dist/prometheus-framework/src/modules/organizations/components/pages/OrganizationEdit.vue.js +4 -4
  102. package/dist/prometheus-framework/src/modules/organizations/components/pages/Organizations.vue.cjs +1 -1
  103. package/dist/prometheus-framework/src/modules/organizations/components/pages/Organizations.vue.js +1 -1
  104. package/dist/prometheus-framework/src/modules/organizations/components/sections/DetailsTab.vue.cjs +1 -1
  105. package/dist/prometheus-framework/src/modules/organizations/components/sections/DetailsTab.vue.js +1 -1
  106. package/dist/prometheus-framework/src/modules/organizations/components/sections/Documents.vue.cjs +1 -1
  107. package/dist/prometheus-framework/src/modules/organizations/components/sections/Documents.vue.js +3 -3
  108. package/dist/prometheus-framework/src/modules/organizations/components/sections/MembersAdd.vue.cjs +1 -1
  109. package/dist/prometheus-framework/src/modules/organizations/components/sections/MembersAdd.vue.js +2 -2
  110. package/dist/prometheus-framework/src/modules/organizations/components/sections/Organizations.vue.cjs +1 -1
  111. package/dist/prometheus-framework/src/modules/organizations/components/sections/Organizations.vue.js +5 -5
  112. package/dist/prometheus-framework/src/modules/products/components/blocks/CardLeftover.vue.cjs +1 -1
  113. package/dist/prometheus-framework/src/modules/products/components/blocks/CardLeftover.vue.js +86 -56
  114. package/dist/prometheus-framework/src/modules/products/components/blocks/CardPosition.vue.cjs +1 -1
  115. package/dist/prometheus-framework/src/modules/products/components/blocks/CardPosition.vue.js +1 -1
  116. package/dist/prometheus-framework/src/modules/products/components/blocks/ImagesThumbnails.vue.cjs +1 -1
  117. package/dist/prometheus-framework/src/modules/products/components/blocks/ImagesThumbnails.vue.js +1 -1
  118. package/dist/prometheus-framework/src/modules/products/components/blocks/LeftoverPositions.vue.cjs +1 -1
  119. package/dist/prometheus-framework/src/modules/products/components/blocks/LeftoverPositions.vue.js +1 -1
  120. package/dist/prometheus-framework/src/modules/products/components/blocks/ListPositions.vue.cjs +1 -1
  121. package/dist/prometheus-framework/src/modules/products/components/blocks/ListPositions.vue.js +1 -1
  122. package/dist/prometheus-framework/src/modules/products/components/pages/Categories.vue.cjs +1 -1
  123. package/dist/prometheus-framework/src/modules/products/components/pages/Categories.vue.js +1 -1
  124. package/dist/prometheus-framework/src/modules/products/components/pages/CategoryEdit.vue.cjs +1 -1
  125. package/dist/prometheus-framework/src/modules/products/components/pages/CategoryEdit.vue.js +2 -2
  126. package/dist/prometheus-framework/src/modules/products/components/pages/EditLeftover.vue.cjs +1 -1
  127. package/dist/prometheus-framework/src/modules/products/components/pages/EditLeftover.vue.js +82 -67
  128. package/dist/prometheus-framework/src/modules/products/components/pages/Leftovers.vue.cjs +1 -1
  129. package/dist/prometheus-framework/src/modules/products/components/pages/Leftovers.vue.js +15 -15
  130. package/dist/prometheus-framework/src/modules/products/components/pages/ProductEdit.vue.cjs +1 -1
  131. package/dist/prometheus-framework/src/modules/products/components/pages/ProductEdit.vue.js +4 -4
  132. package/dist/prometheus-framework/src/modules/products/components/pages/Products.vue.cjs +1 -1
  133. package/dist/prometheus-framework/src/modules/products/components/pages/Products.vue.js +1 -1
  134. package/dist/prometheus-framework/src/modules/products/components/sections/EditModifications.vue.cjs +1 -1
  135. package/dist/prometheus-framework/src/modules/products/components/sections/EditModifications.vue.js +1 -1
  136. package/dist/prometheus-framework/src/modules/products/components/sections/EditProductInfo.vue.cjs +1 -1
  137. package/dist/prometheus-framework/src/modules/products/components/sections/EditProductInfo.vue.js +2 -2
  138. package/dist/prometheus-framework/src/modules/products/components/sections/SectionProduct.vue.cjs +1 -1
  139. package/dist/prometheus-framework/src/modules/products/components/sections/SectionProduct.vue.js +1 -1
  140. package/dist/prometheus-framework/src/modules/products/store/leftovers.cjs +1 -1
  141. package/dist/prometheus-framework/src/modules/products/store/leftovers.js +5 -5
  142. package/dist/prometheus-framework/src/modules/reports/components/sections/FormReport.vue.cjs +1 -1
  143. package/dist/prometheus-framework/src/modules/reports/components/sections/FormReport.vue.js +2 -2
  144. package/dist/prometheus-framework/src/modules/users/components/pages/Profile.vue.cjs +1 -1
  145. package/dist/prometheus-framework/src/modules/users/components/pages/Profile.vue.js +3 -3
  146. package/dist/prometheus-framework/src/modules/users/components/pages/ProfileBlogposts.vue.cjs +1 -1
  147. package/dist/prometheus-framework/src/modules/users/components/pages/ProfileBlogposts.vue.js +1 -1
  148. package/dist/prometheus-framework/src/modules/users/components/pages/ProfileEdit.vue.cjs +1 -1
  149. package/dist/prometheus-framework/src/modules/users/components/pages/ProfileEdit.vue.js +3 -3
  150. package/dist/prometheus-framework/src/modules/users/components/pages/ProfileEvents.vue.cjs +1 -1
  151. package/dist/prometheus-framework/src/modules/users/components/pages/ProfileEvents.vue.js +1 -1
  152. package/dist/prometheus-framework/src/modules/wallet/components/pages/Wallet.vue.cjs +1 -1
  153. package/dist/prometheus-framework/src/modules/wallet/components/pages/Wallet.vue.js +25 -24
  154. package/dist/prometheus-framework.cjs.js +1 -1
  155. package/dist/prometheus-framework.es.js +1 -1
  156. package/dist/style.css +1 -1
  157. package/dist/web-6-zYDWMA.js +1 -0
  158. package/dist/web-TZtLKurO.mjs +54 -0
  159. package/package.json +1 -1
  160. package/src/components/Feed/Feed.vue +17 -18
  161. package/src/components/Field/Field.vue +1 -0
  162. package/src/components/Tooltip/Tooltip.vue +1 -1
  163. package/src/modules/globals/components/blocks/CardHeader.vue +6 -3
  164. package/src/modules/globals/controllers/utils/queryProcessor.js +2 -1
  165. package/src/modules/globals/store/globals.js +3 -4
  166. package/src/modules/products/components/blocks/CardLeftover.vue +47 -27
  167. package/src/modules/products/components/pages/EditLeftover.vue +13 -0
  168. package/src/modules/products/components/pages/Leftovers.vue +3 -3
  169. package/src/modules/products/controllers/leftovers.controller.js +55 -19
  170. package/src/modules/products/models/leftover.model.js +4 -0
  171. package/src/modules/products/routes/leftovers.routes.js +1 -1
  172. package/src/modules/products/store/leftovers.js +1 -1
  173. package/src/styles/config.scss +2 -2
@@ -0,0 +1,55 @@
1
+ var common_schema = function applyCommonSchema(schema, db) {
2
+ schema.add({
3
+ status: {
4
+ type: String,
5
+ enum: ["draft", "published", "removed"],
6
+ default: "draft",
7
+ required: true
8
+ }
9
+ });
10
+ };
11
+ var engagement_schema = function applyEngagementSchema(schema, db) {
12
+ schema.add({ views: { type: Number, default: 0 } });
13
+ schema.post("aggregate", async function(docs) {
14
+ if (docs.length === 0)
15
+ return;
16
+ console.log("Post-aggregate hook in engagement schema triggered");
17
+ const model = this._model;
18
+ if (!model) {
19
+ console.error("No model is associated with this schema!");
20
+ return;
21
+ }
22
+ try {
23
+ await updateDocumentViews(docs, model);
24
+ } catch (error) {
25
+ console.error("Error updating views:", error);
26
+ }
27
+ });
28
+ async function updateDocumentViews(docs, model) {
29
+ const updateViewsPromises = docs.map((doc) => model.findOneAndUpdate(
30
+ { _id: doc._id },
31
+ { $inc: { views: 1 } }
32
+ ).exec());
33
+ await Promise.all(updateViewsPromises);
34
+ }
35
+ };
36
+ var metadata_schema = function applyMetadataSchema(schema, db) {
37
+ schema.add({
38
+ url: {
39
+ type: String,
40
+ required: true
41
+ },
42
+ tags: [{
43
+ type: String
44
+ }]
45
+ });
46
+ schema.index({
47
+ "url": 1,
48
+ "tags": 1
49
+ });
50
+ };
51
+ export {
52
+ common_schema as c,
53
+ engagement_schema as e,
54
+ metadata_schema as m
55
+ };
@@ -0,0 +1,54 @@
1
+ "use strict";
2
+ var common_schema = function applyCommonSchema(schema, db) {
3
+ schema.add({
4
+ status: {
5
+ type: String,
6
+ enum: ["draft", "published", "removed"],
7
+ default: "draft",
8
+ required: true
9
+ }
10
+ });
11
+ };
12
+ var engagement_schema = function applyEngagementSchema(schema, db) {
13
+ schema.add({ views: { type: Number, default: 0 } });
14
+ schema.post("aggregate", async function(docs) {
15
+ if (docs.length === 0)
16
+ return;
17
+ console.log("Post-aggregate hook in engagement schema triggered");
18
+ const model = this._model;
19
+ if (!model) {
20
+ console.error("No model is associated with this schema!");
21
+ return;
22
+ }
23
+ try {
24
+ await updateDocumentViews(docs, model);
25
+ } catch (error) {
26
+ console.error("Error updating views:", error);
27
+ }
28
+ });
29
+ async function updateDocumentViews(docs, model) {
30
+ const updateViewsPromises = docs.map((doc) => model.findOneAndUpdate(
31
+ { _id: doc._id },
32
+ { $inc: { views: 1 } }
33
+ ).exec());
34
+ await Promise.all(updateViewsPromises);
35
+ }
36
+ };
37
+ var metadata_schema = function applyMetadataSchema(schema, db) {
38
+ schema.add({
39
+ url: {
40
+ type: String,
41
+ required: true
42
+ },
43
+ tags: [{
44
+ type: String
45
+ }]
46
+ });
47
+ schema.index({
48
+ "url": 1,
49
+ "tags": 1
50
+ });
51
+ };
52
+ exports.common_schema = common_schema;
53
+ exports.engagement_schema = engagement_schema;
54
+ exports.metadata_schema = metadata_schema;
@@ -0,0 +1,159 @@
1
+ "use strict";
2
+ const require$$0 = require("mongoose");
3
+ const ObjectId = require$$0.Types.ObjectId;
4
+ function getBasicOptions(query) {
5
+ const { _id, url, status, type, owner, creator } = query;
6
+ const conditions = [];
7
+ if (_id) {
8
+ conditions.push({ _id: new ObjectId(_id) });
9
+ }
10
+ if (url) {
11
+ conditions.push({ url });
12
+ }
13
+ if (status) {
14
+ conditions.push({ status });
15
+ }
16
+ if (type) {
17
+ conditions.push({ type });
18
+ }
19
+ if (owner) {
20
+ conditions.push({ "owner.target": new ObjectId(owner) });
21
+ }
22
+ if (creator) {
23
+ conditions.push({ "creator.target": new ObjectId(creator) });
24
+ }
25
+ if (conditions.length > 0) {
26
+ return [{ $match: { $and: conditions } }];
27
+ } else {
28
+ return [];
29
+ }
30
+ }
31
+ function getTagsOptions(tags) {
32
+ if (tags && tags.length > 0) {
33
+ [{ $in: tags.split(",") }];
34
+ } else {
35
+ return [];
36
+ }
37
+ }
38
+ function getSortingOptions(param = "createdAt", order = "desc") {
39
+ let sort = {
40
+ [param]: order === "desc" ? -1 : 1,
41
+ "_id": 1
42
+ };
43
+ return [{ $sort: sort }];
44
+ }
45
+ function getPaginationOptions(skip, limit) {
46
+ let pagination = {
47
+ skip: parseInt(skip) || 0,
48
+ limit: parseInt(limit) || 20
49
+ };
50
+ return [{ $skip: pagination.skip }, { $limit: pagination.limit }];
51
+ }
52
+ function getCreatorUserLookupStage() {
53
+ return {
54
+ $lookup: {
55
+ from: "users",
56
+ localField: "creator.target",
57
+ foreignField: "_id",
58
+ as: "creatorUser"
59
+ }
60
+ };
61
+ }
62
+ function getCreatorOrganizationLookupStage() {
63
+ return {
64
+ $lookup: {
65
+ from: "organizations",
66
+ localField: "creator.target",
67
+ foreignField: "_id",
68
+ as: "creatorOrganization"
69
+ }
70
+ };
71
+ }
72
+ function getOwnerUserLookupStage() {
73
+ return {
74
+ $lookup: {
75
+ from: "users",
76
+ localField: "owner.target",
77
+ foreignField: "_id",
78
+ as: "ownerUser"
79
+ }
80
+ };
81
+ }
82
+ function getOwnerOrganizationLookupStage() {
83
+ return {
84
+ $lookup: {
85
+ from: "organizations",
86
+ localField: "owner.target",
87
+ foreignField: "_id",
88
+ as: "ownerOrganization"
89
+ }
90
+ };
91
+ }
92
+ function getAddFieldsCreatorOwnerStage() {
93
+ return {
94
+ $addFields: {
95
+ "creator.target": {
96
+ $cond: [
97
+ { $eq: ["$creator.type", "user"] },
98
+ { $arrayElemAt: ["$creatorUser", 0] },
99
+ { $arrayElemAt: ["$creatorOrganization", 0] }
100
+ ]
101
+ },
102
+ "owner.target": {
103
+ $cond: [
104
+ { $eq: ["$owner.type", "user"] },
105
+ { $arrayElemAt: ["$ownerUser", 0] },
106
+ { $arrayElemAt: ["$ownerOrganization", 0] }
107
+ ]
108
+ }
109
+ }
110
+ };
111
+ }
112
+ var queryProcessor = {
113
+ getBasicOptions,
114
+ getSortingOptions,
115
+ getPaginationOptions,
116
+ getTagsOptions,
117
+ // Creator and Owner
118
+ getCreatorUserLookupStage,
119
+ getCreatorOrganizationLookupStage,
120
+ getOwnerUserLookupStage,
121
+ getOwnerOrganizationLookupStage,
122
+ getAddFieldsCreatorOwnerStage
123
+ };
124
+ var ownership_schema = function applyOwnershipSchema(schema, db) {
125
+ schema.add({
126
+ owner: {
127
+ type: {
128
+ type: String,
129
+ required: true
130
+ },
131
+ target: {
132
+ type: db.mongoose.Schema.Types.ObjectId,
133
+ refPath: "owner.type",
134
+ required: true
135
+ }
136
+ },
137
+ creator: {
138
+ hidden: {
139
+ type: Boolean,
140
+ default: false
141
+ },
142
+ type: {
143
+ type: String,
144
+ required: true
145
+ },
146
+ target: {
147
+ type: db.mongoose.Schema.Types.ObjectId,
148
+ refPath: "creator.type",
149
+ required: true
150
+ }
151
+ }
152
+ });
153
+ schema.index({
154
+ "owner.target": 1,
155
+ "creator.target": 1
156
+ });
157
+ };
158
+ exports.ownership_schema = ownership_schema;
159
+ exports.queryProcessor = queryProcessor;
@@ -0,0 +1,160 @@
1
+ import require$$0 from "mongoose";
2
+ const ObjectId = require$$0.Types.ObjectId;
3
+ function getBasicOptions(query) {
4
+ const { _id, url, status, type, owner, creator } = query;
5
+ const conditions = [];
6
+ if (_id) {
7
+ conditions.push({ _id: new ObjectId(_id) });
8
+ }
9
+ if (url) {
10
+ conditions.push({ url });
11
+ }
12
+ if (status) {
13
+ conditions.push({ status });
14
+ }
15
+ if (type) {
16
+ conditions.push({ type });
17
+ }
18
+ if (owner) {
19
+ conditions.push({ "owner.target": new ObjectId(owner) });
20
+ }
21
+ if (creator) {
22
+ conditions.push({ "creator.target": new ObjectId(creator) });
23
+ }
24
+ if (conditions.length > 0) {
25
+ return [{ $match: { $and: conditions } }];
26
+ } else {
27
+ return [];
28
+ }
29
+ }
30
+ function getTagsOptions(tags) {
31
+ if (tags && tags.length > 0) {
32
+ [{ $in: tags.split(",") }];
33
+ } else {
34
+ return [];
35
+ }
36
+ }
37
+ function getSortingOptions(param = "createdAt", order = "desc") {
38
+ let sort = {
39
+ [param]: order === "desc" ? -1 : 1,
40
+ "_id": 1
41
+ };
42
+ return [{ $sort: sort }];
43
+ }
44
+ function getPaginationOptions(skip, limit) {
45
+ let pagination = {
46
+ skip: parseInt(skip) || 0,
47
+ limit: parseInt(limit) || 20
48
+ };
49
+ return [{ $skip: pagination.skip }, { $limit: pagination.limit }];
50
+ }
51
+ function getCreatorUserLookupStage() {
52
+ return {
53
+ $lookup: {
54
+ from: "users",
55
+ localField: "creator.target",
56
+ foreignField: "_id",
57
+ as: "creatorUser"
58
+ }
59
+ };
60
+ }
61
+ function getCreatorOrganizationLookupStage() {
62
+ return {
63
+ $lookup: {
64
+ from: "organizations",
65
+ localField: "creator.target",
66
+ foreignField: "_id",
67
+ as: "creatorOrganization"
68
+ }
69
+ };
70
+ }
71
+ function getOwnerUserLookupStage() {
72
+ return {
73
+ $lookup: {
74
+ from: "users",
75
+ localField: "owner.target",
76
+ foreignField: "_id",
77
+ as: "ownerUser"
78
+ }
79
+ };
80
+ }
81
+ function getOwnerOrganizationLookupStage() {
82
+ return {
83
+ $lookup: {
84
+ from: "organizations",
85
+ localField: "owner.target",
86
+ foreignField: "_id",
87
+ as: "ownerOrganization"
88
+ }
89
+ };
90
+ }
91
+ function getAddFieldsCreatorOwnerStage() {
92
+ return {
93
+ $addFields: {
94
+ "creator.target": {
95
+ $cond: [
96
+ { $eq: ["$creator.type", "user"] },
97
+ { $arrayElemAt: ["$creatorUser", 0] },
98
+ { $arrayElemAt: ["$creatorOrganization", 0] }
99
+ ]
100
+ },
101
+ "owner.target": {
102
+ $cond: [
103
+ { $eq: ["$owner.type", "user"] },
104
+ { $arrayElemAt: ["$ownerUser", 0] },
105
+ { $arrayElemAt: ["$ownerOrganization", 0] }
106
+ ]
107
+ }
108
+ }
109
+ };
110
+ }
111
+ var queryProcessor = {
112
+ getBasicOptions,
113
+ getSortingOptions,
114
+ getPaginationOptions,
115
+ getTagsOptions,
116
+ // Creator and Owner
117
+ getCreatorUserLookupStage,
118
+ getCreatorOrganizationLookupStage,
119
+ getOwnerUserLookupStage,
120
+ getOwnerOrganizationLookupStage,
121
+ getAddFieldsCreatorOwnerStage
122
+ };
123
+ var ownership_schema = function applyOwnershipSchema(schema, db) {
124
+ schema.add({
125
+ owner: {
126
+ type: {
127
+ type: String,
128
+ required: true
129
+ },
130
+ target: {
131
+ type: db.mongoose.Schema.Types.ObjectId,
132
+ refPath: "owner.type",
133
+ required: true
134
+ }
135
+ },
136
+ creator: {
137
+ hidden: {
138
+ type: Boolean,
139
+ default: false
140
+ },
141
+ type: {
142
+ type: String,
143
+ required: true
144
+ },
145
+ target: {
146
+ type: db.mongoose.Schema.Types.ObjectId,
147
+ refPath: "creator.type",
148
+ required: true
149
+ }
150
+ }
151
+ });
152
+ schema.index({
153
+ "owner.target": 1,
154
+ "creator.target": 1
155
+ });
156
+ };
157
+ export {
158
+ ownership_schema as o,
159
+ queryProcessor as q
160
+ };
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const _commonjsHelpers = require("./_commonjsHelpers-DHfMLFPC.js");
4
- const ownership_schema = require("./ownership.schema-DN0SlQL6.js");
4
+ const ownership_schema = require("./ownership.schema-CGqscZIi.js");
5
5
  require("uuid");
6
6
  const require$$0 = require("mongoose");
7
7
  require("path");
@@ -200,6 +200,9 @@ var leftover_model = (db) => {
200
200
  order: {
201
201
  type: String
202
202
  },
203
+ comment: {
204
+ type: String
205
+ },
203
206
  store: {
204
207
  type: Object
205
208
  },
@@ -867,21 +870,53 @@ var categories_routes = function(app, db) {
867
870
  );
868
871
  };
869
872
  const categories_routes$1 = /* @__PURE__ */ _commonjsHelpers.getDefaultExportFromCjs(categories_routes);
873
+ const queryProcessorGlobals = ownership_schema.queryProcessor;
870
874
  const controllerFactory$1 = (db) => {
871
875
  const Leftover = db.leftover;
872
- const getAll = async (req, res) => {
876
+ const read = async (req, res) => {
873
877
  try {
874
- let query = {};
875
- let options = {};
876
- if (req.query.organization) {
877
- query.organization = new db.mongoose.Types.ObjectId(req.query.organization);
878
- }
879
- if (req.query.type) {
880
- query.type = req.query.type;
878
+ let matchConditions = [];
879
+ const search = req.query.search;
880
+ if (search) {
881
+ const parts = search.split(".");
882
+ let regexPattern = "";
883
+ if (parts.length === 2) {
884
+ regexPattern = parts.map((part) => part.substr(0, part.length - 1) + ".{1}").join("\\.");
885
+ } else {
886
+ regexPattern = search.substr(0, search.length - 1) + ".{1}";
887
+ }
888
+ matchConditions.push({
889
+ $or: [
890
+ { "comment ": { $regex: regexPattern, $options: "i" } },
891
+ { "positions.name": { $regex: regexPattern, $options: "i" } }
892
+ ]
893
+ });
881
894
  }
882
- console.log(query);
883
- const leftoveres = await Leftover.find(query, null, options).sort({ createdAt: "desc" }).exec();
884
- if (!leftoveres) {
895
+ const matchStage = matchConditions.length > 0 ? { $match: { $and: matchConditions } } : null;
896
+ let stages = [
897
+ ...queryProcessorGlobals.getBasicOptions(
898
+ req.query
899
+ ),
900
+ // For creator
901
+ queryProcessorGlobals.getCreatorUserLookupStage(),
902
+ queryProcessorGlobals.getCreatorOrganizationLookupStage(),
903
+ // For owner
904
+ queryProcessorGlobals.getOwnerUserLookupStage(),
905
+ queryProcessorGlobals.getOwnerOrganizationLookupStage(),
906
+ queryProcessorGlobals.getAddFieldsCreatorOwnerStage(),
907
+ ...matchStage != null ? [matchStage] : [],
908
+ // Pagination
909
+ ...queryProcessorGlobals.getSortingOptions(
910
+ req.query.sortParam,
911
+ req.query.sortOrder
912
+ ),
913
+ ...queryProcessorGlobals.getPaginationOptions(
914
+ req.query.skip,
915
+ req.query.limit
916
+ )
917
+ ];
918
+ const leftoveres = await Leftover.aggregate(stages).exec();
919
+ if (!leftoveres.length) {
885
920
  return res.status(404).send({ message: "LEFTOVERES_NOT_FOUND" });
886
921
  }
887
922
  res.status(200).send(leftoveres);
@@ -892,7 +927,7 @@ const controllerFactory$1 = (db) => {
892
927
  };
893
928
  const create = async (req, res) => {
894
929
  try {
895
- console.log(req.body);
930
+ console.log("order is", req.body.order);
896
931
  const leftover = await Leftover.create({
897
932
  organization: req.body.organization,
898
933
  type: req.body.type,
@@ -945,7 +980,7 @@ const controllerFactory$1 = (db) => {
945
980
  }
946
981
  };
947
982
  return {
948
- getAll,
983
+ read,
949
984
  create,
950
985
  get,
951
986
  update,
@@ -962,7 +997,7 @@ var leftovers_routes = function(app, db) {
962
997
  });
963
998
  app.get(
964
999
  "/leftovers",
965
- controller.getAll
1000
+ controller.read
966
1001
  );
967
1002
  app.get(
968
1003
  "/leftovers/:_id",
@@ -1,5 +1,5 @@
1
1
  import { g as getDefaultExportFromCjs } from "./_commonjsHelpers-CUmg6egw.mjs";
2
- import { o as ownership_schema } from "./ownership.schema-oyx6eNkZ.mjs";
2
+ import { o as ownership_schema, q as queryProcessor } from "./ownership.schema-DtT2IgqC.mjs";
3
3
  import "uuid";
4
4
  import require$$0 from "mongoose";
5
5
  import "path";
@@ -198,6 +198,9 @@ var leftover_model = (db) => {
198
198
  order: {
199
199
  type: String
200
200
  },
201
+ comment: {
202
+ type: String
203
+ },
201
204
  store: {
202
205
  type: Object
203
206
  },
@@ -865,21 +868,53 @@ var categories_routes = function(app, db) {
865
868
  );
866
869
  };
867
870
  const categories_routes$1 = /* @__PURE__ */ getDefaultExportFromCjs(categories_routes);
871
+ const queryProcessorGlobals = queryProcessor;
868
872
  const controllerFactory$1 = (db) => {
869
873
  const Leftover = db.leftover;
870
- const getAll = async (req, res) => {
874
+ const read = async (req, res) => {
871
875
  try {
872
- let query = {};
873
- let options = {};
874
- if (req.query.organization) {
875
- query.organization = new db.mongoose.Types.ObjectId(req.query.organization);
876
- }
877
- if (req.query.type) {
878
- query.type = req.query.type;
876
+ let matchConditions = [];
877
+ const search = req.query.search;
878
+ if (search) {
879
+ const parts = search.split(".");
880
+ let regexPattern = "";
881
+ if (parts.length === 2) {
882
+ regexPattern = parts.map((part) => part.substr(0, part.length - 1) + ".{1}").join("\\.");
883
+ } else {
884
+ regexPattern = search.substr(0, search.length - 1) + ".{1}";
885
+ }
886
+ matchConditions.push({
887
+ $or: [
888
+ { "comment ": { $regex: regexPattern, $options: "i" } },
889
+ { "positions.name": { $regex: regexPattern, $options: "i" } }
890
+ ]
891
+ });
879
892
  }
880
- console.log(query);
881
- const leftoveres = await Leftover.find(query, null, options).sort({ createdAt: "desc" }).exec();
882
- if (!leftoveres) {
893
+ const matchStage = matchConditions.length > 0 ? { $match: { $and: matchConditions } } : null;
894
+ let stages = [
895
+ ...queryProcessorGlobals.getBasicOptions(
896
+ req.query
897
+ ),
898
+ // For creator
899
+ queryProcessorGlobals.getCreatorUserLookupStage(),
900
+ queryProcessorGlobals.getCreatorOrganizationLookupStage(),
901
+ // For owner
902
+ queryProcessorGlobals.getOwnerUserLookupStage(),
903
+ queryProcessorGlobals.getOwnerOrganizationLookupStage(),
904
+ queryProcessorGlobals.getAddFieldsCreatorOwnerStage(),
905
+ ...matchStage != null ? [matchStage] : [],
906
+ // Pagination
907
+ ...queryProcessorGlobals.getSortingOptions(
908
+ req.query.sortParam,
909
+ req.query.sortOrder
910
+ ),
911
+ ...queryProcessorGlobals.getPaginationOptions(
912
+ req.query.skip,
913
+ req.query.limit
914
+ )
915
+ ];
916
+ const leftoveres = await Leftover.aggregate(stages).exec();
917
+ if (!leftoveres.length) {
883
918
  return res.status(404).send({ message: "LEFTOVERES_NOT_FOUND" });
884
919
  }
885
920
  res.status(200).send(leftoveres);
@@ -890,7 +925,7 @@ const controllerFactory$1 = (db) => {
890
925
  };
891
926
  const create = async (req, res) => {
892
927
  try {
893
- console.log(req.body);
928
+ console.log("order is", req.body.order);
894
929
  const leftover = await Leftover.create({
895
930
  organization: req.body.organization,
896
931
  type: req.body.type,
@@ -943,7 +978,7 @@ const controllerFactory$1 = (db) => {
943
978
  }
944
979
  };
945
980
  return {
946
- getAll,
981
+ read,
947
982
  create,
948
983
  get,
949
984
  update,
@@ -960,7 +995,7 @@ var leftovers_routes = function(app, db) {
960
995
  });
961
996
  app.get(
962
997
  "/leftovers",
963
- controller.getAll
998
+ controller.read
964
999
  );
965
1000
  app.get(
966
1001
  "/leftovers/:_id",
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),i=require("../Tooltip/Tooltip.vue.cjs"),c={class:"bg-grey pd-medium radius-medium"},a={class:"mn-b-small flex-v-center flex-nowrap flex"},s={key:0,class:"mn-r-thin t-medium p-big"},u=["onClick"],d=e.createElementVNode("p",{class:"bg-main radius-small t-center i-medium"},"i",-1),m={key:0,class:"w-100"},p={__name:"Block",props:{title:{type:String,default:null},tooltip:{type:String,default:null},actions:{type:Array,default:null},placeholder:{type:String,default:"Nothing here"},options:{type:Object,default:{theme:"white"}}},setup(t){e.useSlots();const r=(n,o={})=>n?n(o).some(l=>Array.isArray(l.children)?!!l.children.length:l.type!==e.Comment):!1;return(n,o)=>(e.openBlock(),e.createElementBlock("div",c,[e.createElementVNode("div",a,[t.title?(e.openBlock(),e.createElementBlock("p",s,e.toDisplayString(t.title),1)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.actions,l=>(e.openBlock(),e.createElementBlock("button",{onClick:l.function,class:"i-small pd-thin button-delete button"},e.toDisplayString(l.label),9,u))),256)),t.tooltip?(e.openBlock(),e.createBlock(i.default,{key:1,text:t.tooltip},{default:e.withCtx(()=>[d]),_:1},8,["text"])):e.createCommentVNode("",!0)]),r(n.$slots.default)?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("span",m,e.toDisplayString(t.placeholder),1)),e.renderSlot(n.$slots,"default")]))}};exports.default=p;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),i=require("../Tooltip/Tooltip.vue2.cjs"),c={class:"bg-grey pd-medium radius-medium"},a={class:"mn-b-small flex-v-center flex-nowrap flex"},s={key:0,class:"mn-r-thin t-medium p-big"},u=["onClick"],d=e.createElementVNode("p",{class:"bg-main radius-small t-center i-medium"},"i",-1),m={key:0,class:"w-100"},p={__name:"Block",props:{title:{type:String,default:null},tooltip:{type:String,default:null},actions:{type:Array,default:null},placeholder:{type:String,default:"Nothing here"},options:{type:Object,default:{theme:"white"}}},setup(t){e.useSlots();const r=(n,o={})=>n?n(o).some(l=>Array.isArray(l.children)?!!l.children.length:l.type!==e.Comment):!1;return(n,o)=>(e.openBlock(),e.createElementBlock("div",c,[e.createElementVNode("div",a,[t.title?(e.openBlock(),e.createElementBlock("p",s,e.toDisplayString(t.title),1)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.actions,l=>(e.openBlock(),e.createElementBlock("button",{onClick:l.function,class:"i-small pd-thin button-delete button"},e.toDisplayString(l.label),9,u))),256)),t.tooltip?(e.openBlock(),e.createBlock(i.default,{key:1,text:t.tooltip},{default:e.withCtx(()=>[d]),_:1},8,["text"])):e.createCommentVNode("",!0)]),r(n.$slots.default)?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("span",m,e.toDisplayString(t.placeholder),1)),e.renderSlot(n.$slots,"default")]))}};exports.default=p;
@@ -1,5 +1,5 @@
1
1
  import { useSlots as c, openBlock as l, createElementBlock as i, createElementVNode as a, toDisplayString as o, createCommentVNode as r, Fragment as d, renderList as m, createBlock as h, withCtx as f, renderSlot as p, Comment as y } from "vue";
2
- import g from "../Tooltip/Tooltip.vue.js";
2
+ import g from "../Tooltip/Tooltip.vue2.js";
3
3
  const b = { class: "bg-grey pd-medium radius-medium" }, k = { class: "mn-b-small flex-v-center flex-nowrap flex" }, S = {
4
4
  key: 0,
5
5
  class: "mn-r-thin t-medium p-big"
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue");require("./Button.vue2.cjs");const u=["disabled"],d={key:1,class:"loading"},m=e.createElementVNode("svg",{class:"i-regular",width:"135",height:"140",viewBox:"0 0 135 140",xmlns:"http://www.w3.org/2000/svg",fill:"#fff"},[e.createElementVNode("rect",{y:"10",width:"15",height:"120",rx:"6"},[e.createElementVNode("animate",{attributeName:"height",begin:"0.5s",dur:"1s",values:"120;110;100;90;80;70;60;50;40;140;120",calcMode:"linear",repeatCount:"indefinite"}),e.createTextVNode(),e.createElementVNode("animate",{attributeName:"y",begin:"0.5s",dur:"1s",values:"10;15;20;25;30;35;40;45;50;0;10",calcMode:"linear",repeatCount:"indefinite"})]),e.createElementVNode("rect",{x:"30",y:"10",width:"15",height:"120",rx:"6"},[e.createElementVNode("animate",{attributeName:"height",begin:"0.25s",dur:"1s",values:"120;110;100;90;80;70;60;50;40;140;120",calcMode:"linear",repeatCount:"indefinite"}),e.createTextVNode(),e.createElementVNode("animate",{attributeName:"y",begin:"0.25s",dur:"1s",values:"10;15;20;25;30;35;40;45;50;0;10",calcMode:"linear",repeatCount:"indefinite"})]),e.createElementVNode("rect",{x:"60",width:"15",height:"140",rx:"6"},[e.createElementVNode("animate",{attributeName:"height",begin:"0s",dur:"1s",values:"120;110;100;90;80;70;60;50;40;140;120",calcMode:"linear",repeatCount:"indefinite"}),e.createTextVNode(),e.createElementVNode("animate",{attributeName:"y",begin:"0s",dur:"1s",values:"10;15;20;25;30;35;40;45;50;0;10",calcMode:"linear",repeatCount:"indefinite"})]),e.createElementVNode("rect",{x:"90",y:"10",width:"15",height:"120",rx:"6"},[e.createElementVNode("animate",{attributeName:"height",begin:"0.25s",dur:"1s",values:"120;110;100;90;80;70;60;50;40;140;120",calcMode:"linear",repeatCount:"indefinite"}),e.createTextVNode(),e.createElementVNode("animate",{attributeName:"y",begin:"0.25s",dur:"1s",values:"10;15;20;25;30;35;40;45;50;0;10",calcMode:"linear",repeatCount:"indefinite"})]),e.createElementVNode("rect",{x:"120",y:"10",width:"15",height:"120",rx:"6"},[e.createElementVNode("animate",{attributeName:"height",begin:"0.5s",dur:"1s",values:"120;110;100;90;80;70;60;50;40;140;120",calcMode:"linear",repeatCount:"indefinite"}),e.createTextVNode(),e.createElementVNode("animate",{attributeName:"y",begin:"0.5s",dur:"1s",values:"10;15;20;25;30;35;40;45;50;0;10",calcMode:"linear",repeatCount:"indefinite"})])],-1),b=[m],h={key:2,class:"t-semi loading t-black"},f={key:3,class:"error"},g={key:0,class:"button-counter"},v={__name:"Button",props:{submit:{type:Function,default:async()=>{console.log("Button click.")}},text:{type:Object,default:t=>(console.log(t),t={...t.text,success:"✔",error:"✖"})},counter:{type:Object},callback:{type:Function,default:async()=>{console.log("Button callback.")}},callbackDelay:{type:Number,default:750},showSucces:{type:Boolean,default:!0},showLoader:{type:Boolean,default:!0},validation:{type:Boolean,default:!1}},setup(t){const n=t,a=e.ref(null),l=e.ref(null),o=e.ref(!1),r=e.ref(!1);async function c(){a.value.style["pointer-events"]="none",l.value=null,o.value=!0;const i=()=>{a.value&&(a.value.classList.replace("bg-second","bg-main"),a.value.style.pointerEvents="auto",o.value=!1,r.value=!1,l.value=null)};try{await n.submit(),a.value.classList.replace("bg-main","bg-second"),o.value=!1,n.showSucces?(r.value=!0,setTimeout(i,500)):i(),n.callback&&setTimeout(()=>n.callback(),n.callbackDelay)}catch{a.value.classList.replace("bg-main","bg-fourth-nano"),l.value=n.error,setTimeout(()=>{i(),a.value.classList.replace("bg-fourth-nano","bg-main")},1330)}}return(i,s)=>(e.openBlock(),e.createElementBlock("button",{onClick:e.withModifiers(c,["stop"]),disabled:t.validation,ref_key:"button",ref:a,class:"button"},[e.createVNode(e.Transition,{name:"moveFromTopAbsolute"},{default:e.withCtx(()=>[!o.value&&!l.value&&!r.value||!t.showLoader?e.renderSlot(i.$slots,"default",{key:0}):o.value&&!l.value&&t.showLoader?(e.openBlock(),e.createElementBlock("span",d,b)):r.value&&t.showSucces?(e.openBlock(),e.createElementBlock("span",h,e.toDisplayString(t.text.success),1)):l.value?(e.openBlock(),e.createElementBlock("span",f,e.toDisplayString(l.value),1)):e.createCommentVNode("",!0)]),_:3}),t.counter?(e.openBlock(),e.createElementBlock("p",g,e.toDisplayString(t.counter),1)):e.createCommentVNode("",!0)],8,u))}};exports.default=v;
1
+ "use strict";