@webiny/api-apw 5.33.5 → 5.34.0-beta.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (207) hide show
  1. package/ApwChangeRequestNotification.d.ts +27 -0
  2. package/ApwChangeRequestNotification.js +40 -0
  3. package/ApwChangeRequestNotification.js.map +1 -0
  4. package/ApwCommentNotification.d.ts +27 -0
  5. package/ApwCommentNotification.js +40 -0
  6. package/ApwCommentNotification.js.map +1 -0
  7. package/ApwContentReviewNotification.d.ts +26 -0
  8. package/ApwContentReviewNotification.js +40 -0
  9. package/ApwContentReviewNotification.js.map +1 -0
  10. package/ApwContentUrlPlugin.d.ts +19 -0
  11. package/ApwContentUrlPlugin.js +40 -0
  12. package/ApwContentUrlPlugin.js.map +1 -0
  13. package/ContentApwSettingsPlugin.js +1 -1
  14. package/crud/createChangeRequestMethods.js +21 -18
  15. package/crud/createChangeRequestMethods.js.map +1 -1
  16. package/crud/createCommentMethods.js +21 -18
  17. package/crud/createCommentMethods.js.map +1 -1
  18. package/crud/createContentReviewMethods.js +60 -50
  19. package/crud/createContentReviewMethods.js.map +1 -1
  20. package/crud/createReviewerMethods.js +21 -18
  21. package/crud/createReviewerMethods.js.map +1 -1
  22. package/crud/createWorkflowMethods.d.ts +1 -1
  23. package/crud/createWorkflowMethods.js +42 -20
  24. package/crud/createWorkflowMethods.js.map +1 -1
  25. package/crud/index.js +3 -7
  26. package/crud/index.js.map +1 -1
  27. package/crud/utils.js +4 -8
  28. package/crud/utils.js.map +1 -1
  29. package/index.d.ts +3 -3
  30. package/index.js +8 -4
  31. package/index.js.map +1 -1
  32. package/package.json +38 -37
  33. package/plugins/cms/CmsEntryApwSettingsGetterPlugin.js +1 -1
  34. package/plugins/cms/apwEntryPlugins.js +4 -8
  35. package/plugins/cms/apwEntryPlugins.js.map +1 -1
  36. package/plugins/cms/index.js +9 -1
  37. package/plugins/cms/index.js.map +1 -1
  38. package/plugins/cms/linkContentReviewToEntry.js +4 -4
  39. package/plugins/cms/linkContentReviewToEntry.js.map +1 -1
  40. package/plugins/cms/linkWorkflowToEntry.js +5 -5
  41. package/plugins/cms/linkWorkflowToEntry.js.map +1 -1
  42. package/plugins/cms/notifications/changeRequestNotification.d.ts +1 -0
  43. package/plugins/cms/notifications/changeRequestNotification.js +35 -0
  44. package/plugins/cms/notifications/changeRequestNotification.js.map +1 -0
  45. package/plugins/cms/notifications/commentNotification.d.ts +1 -0
  46. package/plugins/cms/notifications/commentNotification.js +35 -0
  47. package/plugins/cms/notifications/commentNotification.js.map +1 -0
  48. package/plugins/cms/notifications/contentReviewNotification.d.ts +1 -0
  49. package/plugins/cms/notifications/contentReviewNotification.js +35 -0
  50. package/plugins/cms/notifications/contentReviewNotification.js.map +1 -0
  51. package/plugins/cms/notifications/contentUrl.d.ts +8 -0
  52. package/plugins/cms/notifications/contentUrl.js +60 -0
  53. package/plugins/cms/notifications/contentUrl.js.map +1 -0
  54. package/plugins/cms/triggerContentReview.js +3 -3
  55. package/plugins/cms/triggerContentReview.js.map +1 -1
  56. package/plugins/cms/updateContentReviewStatus.js +10 -14
  57. package/plugins/cms/updateContentReviewStatus.js.map +1 -1
  58. package/plugins/cms/utils.js +4 -8
  59. package/plugins/cms/utils.js.map +1 -1
  60. package/plugins/context.js +1 -1
  61. package/plugins/graphql/changeRequest.gql.js +1 -1
  62. package/plugins/graphql/comment.gql.js +1 -1
  63. package/plugins/graphql/contentReview.gql.js +4 -4
  64. package/plugins/graphql/contentReview.gql.js.map +1 -1
  65. package/plugins/graphql/reviewer.gql.js +3 -1
  66. package/plugins/graphql/reviewer.gql.js.map +1 -1
  67. package/plugins/graphql/workflow.gql.js +1 -1
  68. package/plugins/graphql.js +1 -1
  69. package/plugins/hooks/createReviewerFromIdentity.js +28 -8
  70. package/plugins/hooks/createReviewerFromIdentity.js.map +1 -1
  71. package/plugins/hooks/deleteChangeRequestsAfterContentReview.js +1 -1
  72. package/plugins/hooks/deleteChangeRequestsAfterContentReview.js.map +1 -1
  73. package/plugins/hooks/deleteCommentsAfterChangeRequest.js +1 -1
  74. package/plugins/hooks/deleteCommentsAfterChangeRequest.js.map +1 -1
  75. package/plugins/hooks/index.js +6 -0
  76. package/plugins/hooks/index.js.map +1 -1
  77. package/plugins/hooks/initializeContentReviewSteps.js +5 -8
  78. package/plugins/hooks/initializeContentReviewSteps.js.map +1 -1
  79. package/plugins/hooks/initializeNotifications.d.ts +2 -0
  80. package/plugins/hooks/initializeNotifications.js +20 -0
  81. package/plugins/hooks/initializeNotifications.js.map +1 -0
  82. package/plugins/hooks/listContentReviews.d.ts +10 -0
  83. package/plugins/hooks/listContentReviews.js +68 -0
  84. package/plugins/hooks/listContentReviews.js.map +1 -0
  85. package/plugins/hooks/notifications/appUrl.d.ts +2 -0
  86. package/plugins/hooks/notifications/appUrl.js +22 -0
  87. package/plugins/hooks/notifications/appUrl.js.map +1 -0
  88. package/plugins/hooks/notifications/changeRequestAfterCreate.d.ts +2 -0
  89. package/plugins/hooks/notifications/changeRequestAfterCreate.js +144 -0
  90. package/plugins/hooks/notifications/changeRequestAfterCreate.js.map +1 -0
  91. package/plugins/hooks/notifications/changeRequestUrl.d.ts +8 -0
  92. package/plugins/hooks/notifications/changeRequestUrl.js +31 -0
  93. package/plugins/hooks/notifications/changeRequestUrl.js.map +1 -0
  94. package/plugins/hooks/notifications/commentAfterCreate.d.ts +2 -0
  95. package/plugins/hooks/notifications/commentAfterCreate.js +157 -0
  96. package/plugins/hooks/notifications/commentAfterCreate.js.map +1 -0
  97. package/plugins/hooks/notifications/commentUrl.d.ts +8 -0
  98. package/plugins/hooks/notifications/commentUrl.js +31 -0
  99. package/plugins/hooks/notifications/commentUrl.js.map +1 -0
  100. package/plugins/hooks/notifications/contentReviewAfterCreate.d.ts +2 -0
  101. package/plugins/hooks/notifications/contentReviewAfterCreate.js +122 -0
  102. package/plugins/hooks/notifications/contentReviewAfterCreate.js.map +1 -0
  103. package/plugins/hooks/notifications/contentReviewUrl.d.ts +7 -0
  104. package/plugins/hooks/notifications/contentReviewUrl.js +30 -0
  105. package/plugins/hooks/notifications/contentReviewUrl.js.map +1 -0
  106. package/plugins/hooks/notifications/contentUrl.d.ts +7 -0
  107. package/plugins/hooks/notifications/contentUrl.js +29 -0
  108. package/plugins/hooks/notifications/contentUrl.js.map +1 -0
  109. package/plugins/hooks/notifications/lastChangeRequestNotificationPlugin.d.ts +11 -0
  110. package/plugins/hooks/notifications/lastChangeRequestNotificationPlugin.js +25 -0
  111. package/plugins/hooks/notifications/lastChangeRequestNotificationPlugin.js.map +1 -0
  112. package/plugins/hooks/notifications/lastCommentNotificationPlugin.d.ts +11 -0
  113. package/plugins/hooks/notifications/lastCommentNotificationPlugin.js +25 -0
  114. package/plugins/hooks/notifications/lastCommentNotificationPlugin.js.map +1 -0
  115. package/plugins/hooks/notifications/lastContentReviewNotificationPlugin.d.ts +11 -0
  116. package/plugins/hooks/notifications/lastContentReviewNotificationPlugin.js +25 -0
  117. package/plugins/hooks/notifications/lastContentReviewNotificationPlugin.js.map +1 -0
  118. package/plugins/hooks/notifications/reviewers.d.ts +15 -0
  119. package/plugins/hooks/notifications/reviewers.js +51 -0
  120. package/plugins/hooks/notifications/reviewers.js.map +1 -0
  121. package/plugins/hooks/notifications/sendChangeRequestNotification.d.ts +2 -0
  122. package/plugins/hooks/notifications/sendChangeRequestNotification.js +52 -0
  123. package/plugins/hooks/notifications/sendChangeRequestNotification.js.map +1 -0
  124. package/plugins/hooks/notifications/sendCommentNotification.d.ts +2 -0
  125. package/plugins/hooks/notifications/sendCommentNotification.js +52 -0
  126. package/plugins/hooks/notifications/sendCommentNotification.js.map +1 -0
  127. package/plugins/hooks/notifications/sendContentReviewNotification.d.ts +2 -0
  128. package/plugins/hooks/notifications/sendContentReviewNotification.js +52 -0
  129. package/plugins/hooks/notifications/sendContentReviewNotification.js.map +1 -0
  130. package/plugins/hooks/updatePendingChangeRequests.js +7 -11
  131. package/plugins/hooks/updatePendingChangeRequests.js.map +1 -1
  132. package/plugins/hooks/updateTotalComments.js +14 -18
  133. package/plugins/hooks/updateTotalComments.js.map +1 -1
  134. package/plugins/hooks/validateChangeRequest.js +30 -5
  135. package/plugins/hooks/validateChangeRequest.js.map +1 -1
  136. package/plugins/hooks/validateComment.js +14 -4
  137. package/plugins/hooks/validateComment.js.map +1 -1
  138. package/plugins/hooks/validateContentReview.js +2 -2
  139. package/plugins/hooks/validateContentReview.js.map +1 -1
  140. package/plugins/pageBuilder/PageApwSettingsGetterPlugin.js +1 -1
  141. package/plugins/pageBuilder/index.js +9 -1
  142. package/plugins/pageBuilder/index.js.map +1 -1
  143. package/plugins/pageBuilder/linkContentReviewToPage.js +41 -29
  144. package/plugins/pageBuilder/linkContentReviewToPage.js.map +1 -1
  145. package/plugins/pageBuilder/linkWorkflowToPage.js +18 -6
  146. package/plugins/pageBuilder/linkWorkflowToPage.js.map +1 -1
  147. package/plugins/pageBuilder/notifications/changeRequestNotification.d.ts +1 -0
  148. package/plugins/pageBuilder/notifications/changeRequestNotification.js +35 -0
  149. package/plugins/pageBuilder/notifications/changeRequestNotification.js.map +1 -0
  150. package/plugins/pageBuilder/notifications/commentNotification.d.ts +1 -0
  151. package/plugins/pageBuilder/notifications/commentNotification.js +35 -0
  152. package/plugins/pageBuilder/notifications/commentNotification.js.map +1 -0
  153. package/plugins/pageBuilder/notifications/contentReviewNotification.d.ts +1 -0
  154. package/plugins/pageBuilder/notifications/contentReviewNotification.js +35 -0
  155. package/plugins/pageBuilder/notifications/contentReviewNotification.js.map +1 -0
  156. package/plugins/pageBuilder/notifications/contentUrl.d.ts +1 -0
  157. package/plugins/pageBuilder/notifications/contentUrl.js +53 -0
  158. package/plugins/pageBuilder/notifications/contentUrl.js.map +1 -0
  159. package/plugins/pageBuilder/triggerContentReview.js +3 -3
  160. package/plugins/pageBuilder/triggerContentReview.js.map +1 -1
  161. package/plugins/pageBuilder/updateContentReviewStatus.js +10 -14
  162. package/plugins/pageBuilder/updateContentReviewStatus.js.map +1 -1
  163. package/plugins/pageBuilder/utils.js +1 -1
  164. package/plugins/pageBuilder/utils.js.map +1 -1
  165. package/plugins/utils.d.ts +1 -1
  166. package/plugins/utils.js +4 -14
  167. package/plugins/utils.js.map +1 -1
  168. package/scheduler/createScheduleActionMethods.js +17 -14
  169. package/scheduler/createScheduleActionMethods.js.map +1 -1
  170. package/scheduler/handlers/executeAction/index.d.ts +1 -1
  171. package/scheduler/handlers/executeAction/plugins/ApplicationGraphQL.js +1 -1
  172. package/scheduler/handlers/executeAction/plugins/HeadlessCMSGraphQL.js +1 -1
  173. package/scheduler/handlers/executeAction/plugins/PageBuilderGraphQL.js +1 -1
  174. package/scheduler/handlers/scheduleAction/index.d.ts +1 -1
  175. package/scheduler/handlers/scheduleAction/index.js +8 -9
  176. package/scheduler/handlers/scheduleAction/index.js.map +1 -1
  177. package/scheduler/handlers/scheduleAction/scheduleAction.utils.js +5 -9
  178. package/scheduler/handlers/scheduleAction/scheduleAction.utils.js.map +1 -1
  179. package/scheduler/handlers/utils.d.ts +1 -1
  180. package/scheduler/handlers/utils.js +1 -1
  181. package/storageOperations/changeRequestStorageOperations.js +5 -9
  182. package/storageOperations/changeRequestStorageOperations.js.map +1 -1
  183. package/storageOperations/commentStorageOperations.js +4 -8
  184. package/storageOperations/commentStorageOperations.js.map +1 -1
  185. package/storageOperations/contentReviewStorageOperations.js +5 -9
  186. package/storageOperations/contentReviewStorageOperations.js.map +1 -1
  187. package/storageOperations/index.js +5 -9
  188. package/storageOperations/index.js.map +1 -1
  189. package/storageOperations/models/contentModelPluginFactory.js +3 -7
  190. package/storageOperations/models/contentModelPluginFactory.js.map +1 -1
  191. package/storageOperations/models/contentReview.model.js +6 -5
  192. package/storageOperations/models/contentReview.model.js.map +1 -1
  193. package/storageOperations/models/index.js +1 -1
  194. package/storageOperations/models/reviewer.model.js +18 -2
  195. package/storageOperations/models/reviewer.model.js.map +1 -1
  196. package/storageOperations/models/utils.js +3 -2
  197. package/storageOperations/models/utils.js.map +1 -1
  198. package/storageOperations/reviewerStorageOperations.js +18 -14
  199. package/storageOperations/reviewerStorageOperations.js.map +1 -1
  200. package/storageOperations/workflowStorageOperations.js +8 -12
  201. package/storageOperations/workflowStorageOperations.js.map +1 -1
  202. package/types.d.ts +99 -84
  203. package/types.js.map +1 -1
  204. package/utils/errors.js +1 -1
  205. package/utils/fieldResolver.js +3 -9
  206. package/utils/fieldResolver.js.map +1 -1
  207. package/utils/resolve.d.ts +1 -1
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
4
 
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
4
 
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
4
 
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
@@ -19,4 +19,4 @@ export interface Configuration {
19
19
  executeAction: string;
20
20
  };
21
21
  }
22
- export declare const scheduleActionHandlerPlugins: (config: Configuration) => ((import("@webiny/handler").HandlerResultPlugin<import("@webiny/handler/types").Context> | import("@webiny/db-dynamodb/plugins/definitions/ValueFilterPlugin").ValueFilterPlugin[][] | import("@webiny/api").ContextPlugin<import("@webiny/handler-db/types").DbContext>[])[] | import("@webiny/handler-aws").RawEventHandler<HandlerArgs, import("@webiny/handler/types").Context, any>)[];
22
+ export declare const scheduleActionHandlerPlugins: (config: Configuration) => ((import("@webiny/db-dynamodb/plugins/definitions/ValueFilterPlugin").ValueFilterPlugin[][] | import("@webiny/handler").HandlerResultPlugin<import("@webiny/handler/types").Context> | import("@webiny/api").ContextPlugin<import("@webiny/handler-db/types").DbContext>[])[] | import("@webiny/handler-aws").RawEventHandler<HandlerArgs, import("@webiny/handler/types").Context, any>)[];
@@ -1,13 +1,13 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
4
 
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
8
  exports.scheduleActionHandlerPlugins = exports.InvocationTypes = void 0;
9
9
 
10
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
10
+ var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
11
11
 
12
12
  var _utils = require("../utils");
13
13
 
@@ -15,10 +15,9 @@ var _scheduleAction = require("./scheduleAction.utils");
15
15
 
16
16
  var _handlerAws = require("@webiny/handler-aws");
17
17
 
18
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
19
-
20
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
21
-
18
+ /**
19
+ * This logic/file should be moved somewhere else as it is relying on AWS specific stuff.
20
+ */
22
21
  let InvocationTypes;
23
22
  exports.InvocationTypes = InvocationTypes;
24
23
 
@@ -109,12 +108,12 @@ const createScheduleActionLambda = params => {
109
108
 
110
109
  log(`Update task's datetime to `, futureDatetime);
111
110
  await storageOperations.update({
112
- item: _objectSpread(_objectSpread({}, nextItem), {}, {
113
- data: _objectSpread(_objectSpread({}, nextItem.data), {}, {
111
+ item: (0, _objectSpread2.default)((0, _objectSpread2.default)({}, nextItem), {}, {
112
+ data: (0, _objectSpread2.default)((0, _objectSpread2.default)({}, nextItem.data), {}, {
114
113
  datetime: futureDatetime
115
114
  })
116
115
  }),
117
- input: _objectSpread(_objectSpread({}, nextItem.data), {}, {
116
+ input: (0, _objectSpread2.default)((0, _objectSpread2.default)({}, nextItem.data), {}, {
118
117
  datetime: futureDatetime
119
118
  })
120
119
  });
@@ -1 +1 @@
1
- {"version":3,"names":["InvocationTypes","log","console","createScheduleActionLambda","params","cwClient","cloudWatchEventClient","storageOperations","handlers","createRawEventHandler","payload","context","lambdaContext","eventContext","locale","tenant","invocationType","SCHEDULED","executeTask","args","lambdaName","executeAction","handlerClient","currentTask","getCurrentTask","where","nextItem","list","sort","limit","nextTaskDatetime","data","datetime","currentTaskDatetime","isDateTimeInNextCentury","shouldScheduleTask","futureDatetime","moveDateTimeToNextCentury","update","item","input","shouldRestoreDatetime","restoreDateTime","task","scheduleLambdaExecution","invokedFunctionArn","updateCurrentTask","ex","scheduleActionHandlerPlugins","config","basePlugins"],"sources":["index.ts"],"sourcesContent":["/**\n * This logic/file should be moved somewhere else as it is relying on AWS specific stuff.\n */\nimport { ApwScheduleActionStorageOperations } from \"~/scheduler/types\";\nimport {\n isDateTimeInNextCentury,\n moveDateTimeToNextCentury,\n shouldRestoreDatetime,\n basePlugins\n} from \"~/scheduler/handlers/utils\";\nimport {\n executeTask,\n shouldScheduleTask,\n restoreDateTime,\n scheduleLambdaExecution\n} from \"./scheduleAction.utils\";\nimport { createRawEventHandler } from \"@webiny/handler-aws\";\n\nexport enum InvocationTypes {\n SCHEDULED = \"scheduled\"\n}\n\nexport interface HandlerArgs {\n datetime: string;\n tenant: string;\n locale: string;\n invocationType?: InvocationTypes;\n futureDatetime?: string;\n}\n\nexport interface Configuration {\n cwClient: any;\n storageOperations: ApwScheduleActionStorageOperations;\n handlers: {\n executeAction: string;\n };\n}\n\nconst log = console.log;\n\n/**\n * Handler that creates a cloudwatch event rule for the schedule action workflow.\n */\nconst createScheduleActionLambda = (params: Configuration) => {\n const { cwClient: cloudWatchEventClient, storageOperations, handlers } = params;\n\n return createRawEventHandler<HandlerArgs>(\n async ({ payload, context, lambdaContext: eventContext }) => {\n try {\n const { locale, tenant, invocationType } = payload;\n /**\n * If invocationType is \"scheduled\", execute the action.\n */\n if (invocationType === InvocationTypes.SCHEDULED) {\n await executeTask({\n args: payload,\n lambdaName: handlers.executeAction,\n handlerClient: context.handlerClient,\n storageOperations\n });\n }\n\n /**\n * Get current scheduled task from the DB.\n */\n const currentTask = await storageOperations.getCurrentTask({\n where: {\n tenant,\n locale\n }\n });\n\n /**\n * Get next task from the DB.\n */\n const [[nextItem]] = await storageOperations.list({\n where: {\n tenant,\n locale\n },\n sort: [\"datetime_ASC\"],\n limit: 1\n });\n\n if (!nextItem) {\n log(`No item found.`);\n return;\n }\n\n const nextTaskDatetime = nextItem.data.datetime;\n const currentTaskDatetime = currentTask && currentTask.data.datetime;\n\n if (isDateTimeInNextCentury(nextTaskDatetime)) {\n log(`Already processed the task.`);\n return;\n }\n\n if (!shouldScheduleTask(nextTaskDatetime, currentTaskDatetime)) {\n log(`Already scheduled the task.`);\n return;\n }\n\n const futureDatetime = moveDateTimeToNextCentury(nextItem.data.datetime);\n /**\n * Update \"datetime\" to a future date to mark it as scheduled.\n */\n log(`Update task's datetime to `, futureDatetime);\n await storageOperations.update({\n item: {\n ...nextItem,\n data: { ...nextItem.data, datetime: futureDatetime }\n },\n input: { ...nextItem.data, datetime: futureDatetime }\n });\n /**\n * Restore \"datetime\" of current task so that it can be schedule in next cycle.\n */\n if (\n currentTaskDatetime &&\n shouldRestoreDatetime({\n invocationType,\n datetime: currentTaskDatetime\n })\n ) {\n await restoreDateTime({\n tenant,\n locale,\n task: currentTask,\n storageOperations\n });\n }\n /**\n * Schedule Lambda\n */\n log(`Schedule Lambda Execution...`);\n await scheduleLambdaExecution({\n cloudWatchEventClient,\n invokedFunctionArn: eventContext.invokedFunctionArn,\n datetime: nextItem.data.datetime,\n futureDatetime: futureDatetime,\n tenant,\n locale\n });\n /**\n * Update current task.\n */\n await storageOperations.updateCurrentTask({ item: nextItem });\n } catch (ex) {\n log(\"[HANDLER_CREATE_RULE] Error => \", ex);\n // TODO: Handler error. Maybe save it into DB.\n }\n }\n );\n};\n\nexport const scheduleActionHandlerPlugins = (config: Configuration) => [\n basePlugins(),\n createScheduleActionLambda(config)\n];\n"],"mappings":"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"}
1
+ {"version":3,"names":["InvocationTypes","log","console","createScheduleActionLambda","params","cwClient","cloudWatchEventClient","storageOperations","handlers","createRawEventHandler","payload","context","lambdaContext","eventContext","locale","tenant","invocationType","SCHEDULED","executeTask","args","lambdaName","executeAction","handlerClient","currentTask","getCurrentTask","where","nextItem","list","sort","limit","nextTaskDatetime","data","datetime","currentTaskDatetime","isDateTimeInNextCentury","shouldScheduleTask","futureDatetime","moveDateTimeToNextCentury","update","item","input","shouldRestoreDatetime","restoreDateTime","task","scheduleLambdaExecution","invokedFunctionArn","updateCurrentTask","ex","scheduleActionHandlerPlugins","config","basePlugins"],"sources":["index.ts"],"sourcesContent":["/**\n * This logic/file should be moved somewhere else as it is relying on AWS specific stuff.\n */\nimport { ApwScheduleActionStorageOperations } from \"~/scheduler/types\";\nimport {\n isDateTimeInNextCentury,\n moveDateTimeToNextCentury,\n shouldRestoreDatetime,\n basePlugins\n} from \"~/scheduler/handlers/utils\";\nimport {\n executeTask,\n shouldScheduleTask,\n restoreDateTime,\n scheduleLambdaExecution\n} from \"./scheduleAction.utils\";\nimport { createRawEventHandler } from \"@webiny/handler-aws\";\n\nexport enum InvocationTypes {\n SCHEDULED = \"scheduled\"\n}\n\nexport interface HandlerArgs {\n datetime: string;\n tenant: string;\n locale: string;\n invocationType?: InvocationTypes;\n futureDatetime?: string;\n}\n\nexport interface Configuration {\n cwClient: any;\n storageOperations: ApwScheduleActionStorageOperations;\n handlers: {\n executeAction: string;\n };\n}\n\nconst log = console.log;\n\n/**\n * Handler that creates a cloudwatch event rule for the schedule action workflow.\n */\nconst createScheduleActionLambda = (params: Configuration) => {\n const { cwClient: cloudWatchEventClient, storageOperations, handlers } = params;\n\n return createRawEventHandler<HandlerArgs>(\n async ({ payload, context, lambdaContext: eventContext }) => {\n try {\n const { locale, tenant, invocationType } = payload;\n /**\n * If invocationType is \"scheduled\", execute the action.\n */\n if (invocationType === InvocationTypes.SCHEDULED) {\n await executeTask({\n args: payload,\n lambdaName: handlers.executeAction,\n handlerClient: context.handlerClient,\n storageOperations\n });\n }\n\n /**\n * Get current scheduled task from the DB.\n */\n const currentTask = await storageOperations.getCurrentTask({\n where: {\n tenant,\n locale\n }\n });\n\n /**\n * Get next task from the DB.\n */\n const [[nextItem]] = await storageOperations.list({\n where: {\n tenant,\n locale\n },\n sort: [\"datetime_ASC\"],\n limit: 1\n });\n\n if (!nextItem) {\n log(`No item found.`);\n return;\n }\n\n const nextTaskDatetime = nextItem.data.datetime;\n const currentTaskDatetime = currentTask && currentTask.data.datetime;\n\n if (isDateTimeInNextCentury(nextTaskDatetime)) {\n log(`Already processed the task.`);\n return;\n }\n\n if (!shouldScheduleTask(nextTaskDatetime, currentTaskDatetime)) {\n log(`Already scheduled the task.`);\n return;\n }\n\n const futureDatetime = moveDateTimeToNextCentury(nextItem.data.datetime);\n /**\n * Update \"datetime\" to a future date to mark it as scheduled.\n */\n log(`Update task's datetime to `, futureDatetime);\n await storageOperations.update({\n item: {\n ...nextItem,\n data: { ...nextItem.data, datetime: futureDatetime }\n },\n input: { ...nextItem.data, datetime: futureDatetime }\n });\n /**\n * Restore \"datetime\" of current task so that it can be schedule in next cycle.\n */\n if (\n currentTaskDatetime &&\n shouldRestoreDatetime({\n invocationType,\n datetime: currentTaskDatetime\n })\n ) {\n await restoreDateTime({\n tenant,\n locale,\n task: currentTask,\n storageOperations\n });\n }\n /**\n * Schedule Lambda\n */\n log(`Schedule Lambda Execution...`);\n await scheduleLambdaExecution({\n cloudWatchEventClient,\n invokedFunctionArn: eventContext.invokedFunctionArn,\n datetime: nextItem.data.datetime,\n futureDatetime: futureDatetime,\n tenant,\n locale\n });\n /**\n * Update current task.\n */\n await storageOperations.updateCurrentTask({ item: nextItem });\n } catch (ex) {\n log(\"[HANDLER_CREATE_RULE] Error => \", ex);\n // TODO: Handler error. Maybe save it into DB.\n }\n }\n );\n};\n\nexport const scheduleActionHandlerPlugins = (config: Configuration) => [\n basePlugins(),\n createScheduleActionLambda(config)\n];\n"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
4
 
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
@@ -9,7 +9,7 @@ exports.restoreDateTime = exports.executeTask = void 0;
9
9
  exports.scheduleLambdaExecution = scheduleLambdaExecution;
10
10
  exports.shouldScheduleTask = void 0;
11
11
 
12
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
12
+ var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
13
13
 
14
14
  var _utils = require("../utils");
15
15
 
@@ -17,10 +17,6 @@ var _index = require("./index");
17
17
 
18
18
  var _clientCloudwatchEvents = require("@aws-sdk/client-cloudwatch-events");
19
19
 
20
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
21
-
22
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
23
-
24
20
  const log = console.log;
25
21
 
26
22
  /**
@@ -124,12 +120,12 @@ const restoreDateTime = async ({
124
120
  if (item) {
125
121
  const newDateTime = (0, _utils.moveDateTimeToCurrentCentury)(item.data.datetime);
126
122
  await storageOperations.update({
127
- item: _objectSpread(_objectSpread({}, item), {}, {
128
- data: _objectSpread(_objectSpread({}, item.data), {}, {
123
+ item: (0, _objectSpread2.default)((0, _objectSpread2.default)({}, item), {}, {
124
+ data: (0, _objectSpread2.default)((0, _objectSpread2.default)({}, item.data), {}, {
129
125
  datetime: newDateTime
130
126
  })
131
127
  }),
132
- input: _objectSpread(_objectSpread({}, item.data), {}, {
128
+ input: (0, _objectSpread2.default)((0, _objectSpread2.default)({}, item.data), {}, {
133
129
  datetime: newDateTime
134
130
  })
135
131
  });
@@ -1 +1 @@
1
- {"version":3,"names":["log","console","scheduleLambdaExecution","cloudWatchEventClient","invokedFunctionArn","datetime","futureDatetime","tenant","locale","eventTargetId","eventRuleName","getApwSettings","removeTargetsCommand","RemoveTargetsCommand","Rule","Ids","removeTargetsResponse","send","FailedEntryCount","info","FailedEntries","deleteRuleCommand","DeleteRuleCommand","Name","cronExpression","dateTimeToCronExpression","ruleParams","ScheduleExpression","State","Description","PutRuleCommand","PutTargetsCommand","Targets","Arn","Id","Input","JSON","stringify","invocationType","InvocationTypes","SCHEDULED","shouldScheduleTask","nextTaskDatetime","currentTaskDatetime","restoreDateTime","task","currentTask","storageOperations","id","item","get","where","newDateTime","moveDateTimeToCurrentCentury","data","update","input","executeTask","args","lambdaName","handlerClient","Date","toISOString","invoke","name","payload","await","deleteCurrentTask","e","error"],"sources":["scheduleAction.utils.ts"],"sourcesContent":["import { dateTimeToCronExpression, moveDateTimeToCurrentCentury } from \"~/scheduler/handlers/utils\";\nimport { ApwScheduleAction } from \"~/scheduler/types\";\nimport {\n HandlerArgs,\n InvocationTypes,\n Configuration\n} from \"~/scheduler/handlers/scheduleAction/index\";\nimport {\n DeleteRuleCommand,\n RemoveTargetsCommand,\n PutTargetsCommand,\n PutRuleCommand\n} from \"@aws-sdk/client-cloudwatch-events\";\nimport { ClientContext } from \"@webiny/handler-client/types\";\nimport { getApwSettings } from \"~/scheduler/handlers/utils\";\n\nconst log = console.log;\n\ninterface ScheduleLambdaExecutionParams extends Omit<HandlerArgs, \"invocationType\"> {\n cloudWatchEventClient: any;\n invokedFunctionArn: string;\n}\n\n/**\n * Current API limit/quota for Cloudwatch events is sufficient for now. But, we should watch for it;\n * in case of scheduling becoming the most frequently used feature.\n * https://aws.amazon.com/about-aws/whats-new/2017/07/cloudwatch-events-increases-rules-and-api-requests-limits/\n */\nexport async function scheduleLambdaExecution({\n cloudWatchEventClient,\n invokedFunctionArn,\n datetime,\n futureDatetime,\n tenant,\n locale\n}: ScheduleLambdaExecutionParams) {\n const { eventTargetId, eventRuleName } = await getApwSettings();\n /**\n * Remove the target\n */\n const removeTargetsCommand = new RemoveTargetsCommand({\n Rule: eventRuleName,\n Ids: [eventTargetId]\n });\n const removeTargetsResponse = await cloudWatchEventClient.send(removeTargetsCommand);\n /**\n * Log error.\n */\n if (\n typeof removeTargetsResponse.FailedEntryCount === \"number\" &&\n removeTargetsResponse.FailedEntryCount !== 0\n ) {\n console.info(\"Failed in removing the targets!\");\n console.info(removeTargetsResponse.FailedEntries);\n }\n /**\n * Delete the Rule\n */\n const deleteRuleCommand = new DeleteRuleCommand({\n Name: eventRuleName\n });\n await cloudWatchEventClient.send(deleteRuleCommand);\n\n /**\n * Create a new one.\n * Min H D M DW Y\n * 20 10 10 03 * 2022\n */\n const cronExpression = dateTimeToCronExpression(datetime);\n\n const ruleParams = {\n Name: eventRuleName,\n ScheduleExpression: `cron(${cronExpression})`,\n State: \"ENABLED\",\n Description: `Enable us to schedule an action in publishing workflow at a particular datetime`\n };\n\n await cloudWatchEventClient.send(new PutRuleCommand(ruleParams));\n /**\n * Add lambda as target for the rule.\n */\n await cloudWatchEventClient.send(\n new PutTargetsCommand({\n Rule: eventRuleName,\n Targets: [\n {\n Arn: invokedFunctionArn,\n Id: eventTargetId,\n Input: JSON.stringify({\n datetime: datetime,\n tenant: tenant,\n locale: locale,\n invocationType: InvocationTypes.SCHEDULED,\n futureDatetime: futureDatetime\n } as HandlerArgs)\n }\n ]\n })\n );\n}\n\nexport const shouldScheduleTask = (\n nextTaskDatetime: string,\n currentTaskDatetime: string | null\n): boolean => {\n return !currentTaskDatetime || nextTaskDatetime < currentTaskDatetime;\n};\n\ninterface RestoreDateTimeParams\n extends Pick<Configuration, \"storageOperations\">,\n Pick<HandlerArgs, \"tenant\" | \"locale\"> {\n task: ApwScheduleAction;\n}\n\nexport const restoreDateTime = async ({\n locale,\n tenant,\n task: currentTask,\n storageOperations\n}: RestoreDateTimeParams): Promise<void> => {\n log(`Mark task \"${currentTask.id}\" as undone by restoring original \"datetime\".`);\n const item = await storageOperations.get({\n where: {\n tenant,\n locale,\n id: currentTask.id\n }\n });\n if (item) {\n const newDateTime = moveDateTimeToCurrentCentury(item.data.datetime);\n await storageOperations.update({\n item: {\n ...item,\n data: { ...item.data, datetime: newDateTime }\n },\n input: { ...item.data, datetime: newDateTime }\n });\n }\n};\n\ninterface ExecuteTaskParams\n extends Pick<ClientContext, \"handlerClient\">,\n Pick<Configuration, \"storageOperations\"> {\n args: HandlerArgs;\n lambdaName: string;\n}\n\nexport const executeTask = async ({\n args,\n lambdaName,\n handlerClient,\n storageOperations\n}: ExecuteTaskParams): Promise<void> => {\n log(`Executing task at: `, new Date().toISOString());\n\n if (typeof handlerClient.invoke === \"function\") {\n await handlerClient.invoke({\n name: lambdaName,\n payload: {\n futureDatetime: args.futureDatetime,\n datetime: args.datetime,\n tenant: args.tenant,\n locale: args.locale\n },\n await: false\n });\n }\n\n /**\n * Delete current schedule Task. So that, we can schedule a new one later.\n */\n try {\n await storageOperations.deleteCurrentTask({\n tenant: args.tenant,\n locale: args.locale\n });\n } catch (e) {\n console.error(e);\n }\n};\n"],"mappings":"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"}
1
+ {"version":3,"names":["log","console","scheduleLambdaExecution","cloudWatchEventClient","invokedFunctionArn","datetime","futureDatetime","tenant","locale","eventTargetId","eventRuleName","getApwSettings","removeTargetsCommand","RemoveTargetsCommand","Rule","Ids","removeTargetsResponse","send","FailedEntryCount","info","FailedEntries","deleteRuleCommand","DeleteRuleCommand","Name","cronExpression","dateTimeToCronExpression","ruleParams","ScheduleExpression","State","Description","PutRuleCommand","PutTargetsCommand","Targets","Arn","Id","Input","JSON","stringify","invocationType","InvocationTypes","SCHEDULED","shouldScheduleTask","nextTaskDatetime","currentTaskDatetime","restoreDateTime","task","currentTask","storageOperations","id","item","get","where","newDateTime","moveDateTimeToCurrentCentury","data","update","input","executeTask","args","lambdaName","handlerClient","Date","toISOString","invoke","name","payload","await","deleteCurrentTask","e","error"],"sources":["scheduleAction.utils.ts"],"sourcesContent":["import { dateTimeToCronExpression, moveDateTimeToCurrentCentury } from \"~/scheduler/handlers/utils\";\nimport { ApwScheduleAction } from \"~/scheduler/types\";\nimport {\n HandlerArgs,\n InvocationTypes,\n Configuration\n} from \"~/scheduler/handlers/scheduleAction/index\";\nimport {\n DeleteRuleCommand,\n RemoveTargetsCommand,\n PutTargetsCommand,\n PutRuleCommand\n} from \"@aws-sdk/client-cloudwatch-events\";\nimport { ClientContext } from \"@webiny/handler-client/types\";\nimport { getApwSettings } from \"~/scheduler/handlers/utils\";\n\nconst log = console.log;\n\ninterface ScheduleLambdaExecutionParams extends Omit<HandlerArgs, \"invocationType\"> {\n cloudWatchEventClient: any;\n invokedFunctionArn: string;\n}\n\n/**\n * Current API limit/quota for Cloudwatch events is sufficient for now. But, we should watch for it;\n * in case of scheduling becoming the most frequently used feature.\n * https://aws.amazon.com/about-aws/whats-new/2017/07/cloudwatch-events-increases-rules-and-api-requests-limits/\n */\nexport async function scheduleLambdaExecution({\n cloudWatchEventClient,\n invokedFunctionArn,\n datetime,\n futureDatetime,\n tenant,\n locale\n}: ScheduleLambdaExecutionParams) {\n const { eventTargetId, eventRuleName } = await getApwSettings();\n /**\n * Remove the target\n */\n const removeTargetsCommand = new RemoveTargetsCommand({\n Rule: eventRuleName,\n Ids: [eventTargetId]\n });\n const removeTargetsResponse = await cloudWatchEventClient.send(removeTargetsCommand);\n /**\n * Log error.\n */\n if (\n typeof removeTargetsResponse.FailedEntryCount === \"number\" &&\n removeTargetsResponse.FailedEntryCount !== 0\n ) {\n console.info(\"Failed in removing the targets!\");\n console.info(removeTargetsResponse.FailedEntries);\n }\n /**\n * Delete the Rule\n */\n const deleteRuleCommand = new DeleteRuleCommand({\n Name: eventRuleName\n });\n await cloudWatchEventClient.send(deleteRuleCommand);\n\n /**\n * Create a new one.\n * Min H D M DW Y\n * 20 10 10 03 * 2022\n */\n const cronExpression = dateTimeToCronExpression(datetime);\n\n const ruleParams = {\n Name: eventRuleName,\n ScheduleExpression: `cron(${cronExpression})`,\n State: \"ENABLED\",\n Description: `Enable us to schedule an action in publishing workflow at a particular datetime`\n };\n\n await cloudWatchEventClient.send(new PutRuleCommand(ruleParams));\n /**\n * Add lambda as target for the rule.\n */\n await cloudWatchEventClient.send(\n new PutTargetsCommand({\n Rule: eventRuleName,\n Targets: [\n {\n Arn: invokedFunctionArn,\n Id: eventTargetId,\n Input: JSON.stringify({\n datetime: datetime,\n tenant: tenant,\n locale: locale,\n invocationType: InvocationTypes.SCHEDULED,\n futureDatetime: futureDatetime\n } as HandlerArgs)\n }\n ]\n })\n );\n}\n\nexport const shouldScheduleTask = (\n nextTaskDatetime: string,\n currentTaskDatetime: string | null\n): boolean => {\n return !currentTaskDatetime || nextTaskDatetime < currentTaskDatetime;\n};\n\ninterface RestoreDateTimeParams\n extends Pick<Configuration, \"storageOperations\">,\n Pick<HandlerArgs, \"tenant\" | \"locale\"> {\n task: ApwScheduleAction;\n}\n\nexport const restoreDateTime = async ({\n locale,\n tenant,\n task: currentTask,\n storageOperations\n}: RestoreDateTimeParams): Promise<void> => {\n log(`Mark task \"${currentTask.id}\" as undone by restoring original \"datetime\".`);\n const item = await storageOperations.get({\n where: {\n tenant,\n locale,\n id: currentTask.id\n }\n });\n if (item) {\n const newDateTime = moveDateTimeToCurrentCentury(item.data.datetime);\n await storageOperations.update({\n item: {\n ...item,\n data: { ...item.data, datetime: newDateTime }\n },\n input: { ...item.data, datetime: newDateTime }\n });\n }\n};\n\ninterface ExecuteTaskParams\n extends Pick<ClientContext, \"handlerClient\">,\n Pick<Configuration, \"storageOperations\"> {\n args: HandlerArgs;\n lambdaName: string;\n}\n\nexport const executeTask = async ({\n args,\n lambdaName,\n handlerClient,\n storageOperations\n}: ExecuteTaskParams): Promise<void> => {\n log(`Executing task at: `, new Date().toISOString());\n\n if (typeof handlerClient.invoke === \"function\") {\n await handlerClient.invoke({\n name: lambdaName,\n payload: {\n futureDatetime: args.futureDatetime,\n datetime: args.datetime,\n tenant: args.tenant,\n locale: args.locale\n },\n await: false\n });\n }\n\n /**\n * Delete current schedule Task. So that, we can schedule a new one later.\n */\n try {\n await storageOperations.deleteCurrentTask({\n tenant: args.tenant,\n locale: args.locale\n });\n } catch (e) {\n console.error(e);\n }\n};\n"],"mappings":"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"}
@@ -19,7 +19,7 @@ export declare const encodeToken: ({ id, tenant, locale }: EncodeTokenParams) =>
19
19
  export declare const TOKEN_PREFIX = "apw-";
20
20
  export declare const decodeToken: (token: string) => Partial<EncodeTokenParams>;
21
21
  export declare const documentClient: DocumentClient;
22
- export declare const basePlugins: () => (import("@webiny/handler").HandlerResultPlugin<import("@webiny/handler/types").Context> | import("@webiny/db-dynamodb/plugins/definitions/ValueFilterPlugin").ValueFilterPlugin[][] | import("@webiny/api").ContextPlugin<import("@webiny/handler-db/types").DbContext>[])[];
22
+ export declare const basePlugins: () => (import("@webiny/db-dynamodb/plugins/definitions/ValueFilterPlugin").ValueFilterPlugin[][] | import("@webiny/handler").HandlerResultPlugin<import("@webiny/handler/types").Context> | import("@webiny/api").ContextPlugin<import("@webiny/handler-db/types").DbContext>[])[];
23
23
  /**
24
24
  * Get APW settings record from DDB.
25
25
  */
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
4
 
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
@@ -1,13 +1,13 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
4
 
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
8
  exports.createChangeRequestStorageOperations = void 0;
9
9
 
10
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
10
+ var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
11
11
 
12
12
  var _index = require("./index");
13
13
 
@@ -15,10 +15,6 @@ var _fieldResolver = require("../utils/fieldResolver");
15
15
 
16
16
  var _error = _interopRequireDefault(require("@webiny/error"));
17
17
 
18
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
19
-
20
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
21
-
22
18
  const createChangeRequestStorageOperations = params => {
23
19
  const {
24
20
  cms,
@@ -60,8 +56,8 @@ const createChangeRequestStorageOperations = params => {
60
56
  async listChangeRequests(params) {
61
57
  const model = await getChangeRequestModel();
62
58
  security.disableAuthorization();
63
- const [entries, meta] = await cms.listLatestEntries(model, _objectSpread(_objectSpread({}, params), {}, {
64
- where: _objectSpread({}, params.where)
59
+ const [entries, meta] = await cms.listLatestEntries(model, (0, _objectSpread2.default)((0, _objectSpread2.default)({}, params), {}, {
60
+ where: (0, _objectSpread2.default)({}, params.where)
65
61
  }));
66
62
  security.enableAuthorization();
67
63
 
@@ -102,7 +98,7 @@ const createChangeRequestStorageOperations = params => {
102
98
  id: params.id
103
99
  });
104
100
  security.disableAuthorization();
105
- const entry = await cms.updateEntry(model, params.id, _objectSpread(_objectSpread({}, existingEntry), params.data));
101
+ const entry = await cms.updateEntry(model, params.id, (0, _objectSpread2.default)((0, _objectSpread2.default)({}, existingEntry), params.data));
106
102
  security.enableAuthorization();
107
103
  return (0, _fieldResolver.getFieldValues)({
108
104
  entry,
@@ -1 +1 @@
1
- {"version":3,"names":["createChangeRequestStorageOperations","params","cms","getCmsContext","security","getChangeRequestModel","disableAuthorization","model","getModel","enableAuthorization","WebinyError","getChangeRequest","id","entry","getEntryById","getFieldValues","fields","baseFields","context","transformers","getTransformer","listChangeRequests","entries","meta","listLatestEntries","where","all","Promise","map","ex","message","code","data","createChangeRequest","createEntry","updateChangeRequest","existingEntry","updateEntry","deleteChangeRequest","deleteEntry"],"sources":["changeRequestStorageOperations.ts"],"sourcesContent":["import { ApwChangeRequestStorageOperations } from \"./types\";\nimport { baseFields, CreateApwStorageOperationsParams } from \"~/storageOperations/index\";\nimport { getFieldValues, getTransformer } from \"~/utils/fieldResolver\";\nimport WebinyError from \"@webiny/error\";\nimport { ApwChangeRequest } from \"~/types\";\n\nexport const createChangeRequestStorageOperations = (\n params: CreateApwStorageOperationsParams\n): ApwChangeRequestStorageOperations => {\n const { cms, getCmsContext, security } = params;\n const getChangeRequestModel = async () => {\n security.disableAuthorization();\n const model = await cms.getModel(\"apwChangeRequestModelDefinition\");\n security.enableAuthorization();\n if (!model) {\n throw new WebinyError(\n \"Could not find `apwChangeRequestModelDefinition` model.\",\n \"MODEL_NOT_FOUND_ERROR\"\n );\n }\n return model;\n };\n const getChangeRequest: ApwChangeRequestStorageOperations[\"getChangeRequest\"] = async ({\n id\n }) => {\n const model = await getChangeRequestModel();\n security.disableAuthorization();\n const entry = await cms.getEntryById(model, id);\n security.enableAuthorization();\n return getFieldValues({\n entry,\n fields: baseFields,\n context: getCmsContext(),\n transformers: [getTransformer(model, \"body\")]\n });\n };\n return {\n getChangeRequestModel,\n getChangeRequest,\n async listChangeRequests(params) {\n const model = await getChangeRequestModel();\n security.disableAuthorization();\n const [entries, meta] = await cms.listLatestEntries(model, {\n ...params,\n where: {\n ...params.where\n }\n });\n security.enableAuthorization();\n try {\n const all = await Promise.all(\n entries.map(entry =>\n getFieldValues<ApwChangeRequest>({\n entry,\n fields: baseFields,\n context: getCmsContext(),\n transformers: [getTransformer(model, \"body\")]\n })\n )\n );\n return [all, meta];\n } catch (ex) {\n throw new WebinyError(ex.message, ex.code, ex.data);\n }\n },\n async createChangeRequest(params) {\n const model = await getChangeRequestModel();\n security.disableAuthorization();\n const entry = await cms.createEntry(model, params.data);\n security.enableAuthorization();\n return getFieldValues({\n entry,\n fields: baseFields,\n context: getCmsContext(),\n transformers: [getTransformer(model, \"body\")]\n });\n },\n async updateChangeRequest(params) {\n const model = await getChangeRequestModel();\n /**\n * We're fetching the existing entry here because we're not accepting \"app\" field as input,\n * but, we still need to retain its value after the \"update\" operation.\n */\n const existingEntry = await getChangeRequest({ id: params.id });\n\n security.disableAuthorization();\n const entry = await cms.updateEntry(model, params.id, {\n ...existingEntry,\n ...params.data\n });\n security.enableAuthorization();\n return getFieldValues({\n entry,\n fields: baseFields,\n context: getCmsContext(),\n transformers: [getTransformer(model, \"body\")]\n });\n },\n async deleteChangeRequest(params) {\n const model = await getChangeRequestModel();\n security.disableAuthorization();\n await cms.deleteEntry(model, params.id);\n security.enableAuthorization();\n return true;\n }\n };\n};\n"],"mappings":";;;;;;;;;;;AACA;;AACA;;AACA;;;;;;AAGO,MAAMA,oCAAoC,GAC7CC,MADgD,IAEZ;EACpC,MAAM;IAAEC,GAAF;IAAOC,aAAP;IAAsBC;EAAtB,IAAmCH,MAAzC;;EACA,MAAMI,qBAAqB,GAAG,YAAY;IACtCD,QAAQ,CAACE,oBAAT;IACA,MAAMC,KAAK,GAAG,MAAML,GAAG,CAACM,QAAJ,CAAa,iCAAb,CAApB;IACAJ,QAAQ,CAACK,mBAAT;;IACA,IAAI,CAACF,KAAL,EAAY;MACR,MAAM,IAAIG,cAAJ,CACF,yDADE,EAEF,uBAFE,CAAN;IAIH;;IACD,OAAOH,KAAP;EACH,CAXD;;EAYA,MAAMI,gBAAuE,GAAG,OAAO;IACnFC;EADmF,CAAP,KAE1E;IACF,MAAML,KAAK,GAAG,MAAMF,qBAAqB,EAAzC;IACAD,QAAQ,CAACE,oBAAT;IACA,MAAMO,KAAK,GAAG,MAAMX,GAAG,CAACY,YAAJ,CAAiBP,KAAjB,EAAwBK,EAAxB,CAApB;IACAR,QAAQ,CAACK,mBAAT;IACA,OAAO,IAAAM,6BAAA,EAAe;MAClBF,KADkB;MAElBG,MAAM,EAAEC,iBAFU;MAGlBC,OAAO,EAAEf,aAAa,EAHJ;MAIlBgB,YAAY,EAAE,CAAC,IAAAC,6BAAA,EAAeb,KAAf,EAAsB,MAAtB,CAAD;IAJI,CAAf,CAAP;EAMH,CAbD;;EAcA,OAAO;IACHF,qBADG;IAEHM,gBAFG;;IAGH,MAAMU,kBAAN,CAAyBpB,MAAzB,EAAiC;MAC7B,MAAMM,KAAK,GAAG,MAAMF,qBAAqB,EAAzC;MACAD,QAAQ,CAACE,oBAAT;MACA,MAAM,CAACgB,OAAD,EAAUC,IAAV,IAAkB,MAAMrB,GAAG,CAACsB,iBAAJ,CAAsBjB,KAAtB,kCACvBN,MADuB;QAE1BwB,KAAK,oBACExB,MAAM,CAACwB,KADT;MAFqB,GAA9B;MAMArB,QAAQ,CAACK,mBAAT;;MACA,IAAI;QACA,MAAMiB,GAAG,GAAG,MAAMC,OAAO,CAACD,GAAR,CACdJ,OAAO,CAACM,GAAR,CAAYf,KAAK,IACb,IAAAE,6BAAA,EAAiC;UAC7BF,KAD6B;UAE7BG,MAAM,EAAEC,iBAFqB;UAG7BC,OAAO,EAAEf,aAAa,EAHO;UAI7BgB,YAAY,EAAE,CAAC,IAAAC,6BAAA,EAAeb,KAAf,EAAsB,MAAtB,CAAD;QAJe,CAAjC,CADJ,CADc,CAAlB;QAUA,OAAO,CAACmB,GAAD,EAAMH,IAAN,CAAP;MACH,CAZD,CAYE,OAAOM,EAAP,EAAW;QACT,MAAM,IAAInB,cAAJ,CAAgBmB,EAAE,CAACC,OAAnB,EAA4BD,EAAE,CAACE,IAA/B,EAAqCF,EAAE,CAACG,IAAxC,CAAN;MACH;IACJ,CA5BE;;IA6BH,MAAMC,mBAAN,CAA0BhC,MAA1B,EAAkC;MAC9B,MAAMM,KAAK,GAAG,MAAMF,qBAAqB,EAAzC;MACAD,QAAQ,CAACE,oBAAT;MACA,MAAMO,KAAK,GAAG,MAAMX,GAAG,CAACgC,WAAJ,CAAgB3B,KAAhB,EAAuBN,MAAM,CAAC+B,IAA9B,CAApB;MACA5B,QAAQ,CAACK,mBAAT;MACA,OAAO,IAAAM,6BAAA,EAAe;QAClBF,KADkB;QAElBG,MAAM,EAAEC,iBAFU;QAGlBC,OAAO,EAAEf,aAAa,EAHJ;QAIlBgB,YAAY,EAAE,CAAC,IAAAC,6BAAA,EAAeb,KAAf,EAAsB,MAAtB,CAAD;MAJI,CAAf,CAAP;IAMH,CAxCE;;IAyCH,MAAM4B,mBAAN,CAA0BlC,MAA1B,EAAkC;MAC9B,MAAMM,KAAK,GAAG,MAAMF,qBAAqB,EAAzC;MACA;AACZ;AACA;AACA;;MACY,MAAM+B,aAAa,GAAG,MAAMzB,gBAAgB,CAAC;QAAEC,EAAE,EAAEX,MAAM,CAACW;MAAb,CAAD,CAA5C;MAEAR,QAAQ,CAACE,oBAAT;MACA,MAAMO,KAAK,GAAG,MAAMX,GAAG,CAACmC,WAAJ,CAAgB9B,KAAhB,EAAuBN,MAAM,CAACW,EAA9B,kCACbwB,aADa,GAEbnC,MAAM,CAAC+B,IAFM,EAApB;MAIA5B,QAAQ,CAACK,mBAAT;MACA,OAAO,IAAAM,6BAAA,EAAe;QAClBF,KADkB;QAElBG,MAAM,EAAEC,iBAFU;QAGlBC,OAAO,EAAEf,aAAa,EAHJ;QAIlBgB,YAAY,EAAE,CAAC,IAAAC,6BAAA,EAAeb,KAAf,EAAsB,MAAtB,CAAD;MAJI,CAAf,CAAP;IAMH,CA7DE;;IA8DH,MAAM+B,mBAAN,CAA0BrC,MAA1B,EAAkC;MAC9B,MAAMM,KAAK,GAAG,MAAMF,qBAAqB,EAAzC;MACAD,QAAQ,CAACE,oBAAT;MACA,MAAMJ,GAAG,CAACqC,WAAJ,CAAgBhC,KAAhB,EAAuBN,MAAM,CAACW,EAA9B,CAAN;MACAR,QAAQ,CAACK,mBAAT;MACA,OAAO,IAAP;IACH;;EApEE,CAAP;AAsEH,CApGM"}
1
+ {"version":3,"names":["createChangeRequestStorageOperations","params","cms","getCmsContext","security","getChangeRequestModel","disableAuthorization","model","getModel","enableAuthorization","WebinyError","getChangeRequest","id","entry","getEntryById","getFieldValues","fields","baseFields","context","transformers","getTransformer","listChangeRequests","entries","meta","listLatestEntries","where","all","Promise","map","ex","message","code","data","createChangeRequest","createEntry","updateChangeRequest","existingEntry","updateEntry","deleteChangeRequest","deleteEntry"],"sources":["changeRequestStorageOperations.ts"],"sourcesContent":["import { ApwChangeRequestStorageOperations } from \"./types\";\nimport { baseFields, CreateApwStorageOperationsParams } from \"~/storageOperations/index\";\nimport { getFieldValues, getTransformer } from \"~/utils/fieldResolver\";\nimport WebinyError from \"@webiny/error\";\nimport { ApwChangeRequest } from \"~/types\";\n\nexport const createChangeRequestStorageOperations = (\n params: CreateApwStorageOperationsParams\n): ApwChangeRequestStorageOperations => {\n const { cms, getCmsContext, security } = params;\n const getChangeRequestModel = async () => {\n security.disableAuthorization();\n const model = await cms.getModel(\"apwChangeRequestModelDefinition\");\n security.enableAuthorization();\n if (!model) {\n throw new WebinyError(\n \"Could not find `apwChangeRequestModelDefinition` model.\",\n \"MODEL_NOT_FOUND_ERROR\"\n );\n }\n return model;\n };\n const getChangeRequest: ApwChangeRequestStorageOperations[\"getChangeRequest\"] = async ({\n id\n }) => {\n const model = await getChangeRequestModel();\n security.disableAuthorization();\n const entry = await cms.getEntryById(model, id);\n security.enableAuthorization();\n return getFieldValues({\n entry,\n fields: baseFields,\n context: getCmsContext(),\n transformers: [getTransformer(model, \"body\")]\n });\n };\n return {\n getChangeRequestModel,\n getChangeRequest,\n async listChangeRequests(params) {\n const model = await getChangeRequestModel();\n security.disableAuthorization();\n const [entries, meta] = await cms.listLatestEntries(model, {\n ...params,\n where: {\n ...params.where\n }\n });\n security.enableAuthorization();\n try {\n const all = await Promise.all(\n entries.map(entry =>\n getFieldValues<ApwChangeRequest>({\n entry,\n fields: baseFields,\n context: getCmsContext(),\n transformers: [getTransformer(model, \"body\")]\n })\n )\n );\n return [all, meta];\n } catch (ex) {\n throw new WebinyError(ex.message, ex.code, ex.data);\n }\n },\n async createChangeRequest(params) {\n const model = await getChangeRequestModel();\n security.disableAuthorization();\n const entry = await cms.createEntry(model, params.data);\n security.enableAuthorization();\n return getFieldValues({\n entry,\n fields: baseFields,\n context: getCmsContext(),\n transformers: [getTransformer(model, \"body\")]\n });\n },\n async updateChangeRequest(params) {\n const model = await getChangeRequestModel();\n /**\n * We're fetching the existing entry here because we're not accepting \"app\" field as input,\n * but, we still need to retain its value after the \"update\" operation.\n */\n const existingEntry = await getChangeRequest({ id: params.id });\n\n security.disableAuthorization();\n const entry = await cms.updateEntry(model, params.id, {\n ...existingEntry,\n ...params.data\n });\n security.enableAuthorization();\n return getFieldValues({\n entry,\n fields: baseFields,\n context: getCmsContext(),\n transformers: [getTransformer(model, \"body\")]\n });\n },\n async deleteChangeRequest(params) {\n const model = await getChangeRequestModel();\n security.disableAuthorization();\n await cms.deleteEntry(model, params.id);\n security.enableAuthorization();\n return true;\n }\n };\n};\n"],"mappings":"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"}
@@ -1,13 +1,13 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
4
 
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
8
  exports.createCommentStorageOperations = void 0;
9
9
 
10
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
10
+ var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
11
11
 
12
12
  var _index = require("./index");
13
13
 
@@ -17,10 +17,6 @@ var _error = _interopRequireDefault(require("@webiny/error"));
17
17
 
18
18
  var _comment = require("./models/comment.model");
19
19
 
20
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
21
-
22
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
23
-
24
20
  const pickIdFromChangeRequest = obj => {
25
21
  const rawValue = obj["changeRequest"];
26
22
 
@@ -90,7 +86,7 @@ const createCommentStorageOperations = ({
90
86
  const model = await getCommentModel();
91
87
  const refModel = await this.getChangeRequestModel();
92
88
  security.disableAuthorization();
93
- const entry = await cms.createEntry(model, _objectSpread(_objectSpread({}, params.data), {}, {
89
+ const entry = await cms.createEntry(model, (0, _objectSpread2.default)((0, _objectSpread2.default)({}, params.data), {}, {
94
90
  changeRequest: {
95
91
  id: params.data.changeRequest,
96
92
  modelId: refModel.modelId
@@ -117,7 +113,7 @@ const createCommentStorageOperations = ({
117
113
  id: params.id
118
114
  });
119
115
  security.disableAuthorization();
120
- const entry = await cms.updateEntry(model, params.id, _objectSpread(_objectSpread({}, existingEntry), params.data));
116
+ const entry = await cms.updateEntry(model, params.id, (0, _objectSpread2.default)((0, _objectSpread2.default)({}, existingEntry), params.data));
121
117
  security.enableAuthorization();
122
118
  const values = await (0, _fieldResolver.getFieldValues)({
123
119
  entry,
@@ -1 +1 @@
1
- {"version":3,"names":["pickIdFromChangeRequest","obj","rawValue","id","createCommentStorageOperations","cms","getCmsContext","security","getCommentModel","disableAuthorization","model","getModel","COMMENT_MODEL_ID","enableAuthorization","WebinyError","getComment","entry","getEntryById","getFieldValues","fields","baseFields","context","transformers","getTransformer","params","values","listComments","entries","meta","listLatestEntries","Promise","all","map","value","createComment","refModel","getChangeRequestModel","createEntry","data","changeRequest","modelId","updateComment","existingEntry","updateEntry","deleteComment","deleteEntry"],"sources":["commentStorageOperations.ts"],"sourcesContent":["import { ApwStorageOperations } from \"./types\";\nimport { ApwCommentStorageOperations } from \"./types\";\nimport { baseFields, CreateApwStorageOperationsParams } from \"~/storageOperations/index\";\nimport { getFieldValues, getTransformer } from \"~/utils/fieldResolver\";\nimport WebinyError from \"@webiny/error\";\nimport { ApwComment } from \"~/types\";\nimport { CmsEntryListParams } from \"@webiny/api-headless-cms/types\";\nimport { COMMENT_MODEL_ID } from \"~/storageOperations/models/comment.model\";\n\nconst pickIdFromChangeRequest = (obj: Record<string, any>): ApwComment => {\n const rawValue = obj[\"changeRequest\"];\n if (!rawValue) {\n return obj as unknown as ApwComment;\n }\n obj[\"changeRequest\"] = rawValue.id;\n return obj as unknown as ApwComment;\n};\n\nexport const createCommentStorageOperations = ({\n cms,\n getCmsContext,\n security\n}: CreateApwStorageOperationsParams): ApwCommentStorageOperations => {\n const getCommentModel = async () => {\n security.disableAuthorization();\n const model = await cms.getModel(COMMENT_MODEL_ID);\n security.enableAuthorization();\n if (!model) {\n throw new WebinyError(\n `Could not find \"${COMMENT_MODEL_ID}\" model.`,\n \"MODEL_NOT_FOUND_ERROR\"\n );\n }\n return model;\n };\n const getComment: ApwCommentStorageOperations[\"getComment\"] = async ({ id }) => {\n const model = await getCommentModel();\n security.disableAuthorization();\n const entry = await cms.getEntryById(model, id);\n security.enableAuthorization();\n return getFieldValues({\n entry,\n fields: baseFields,\n context: getCmsContext(),\n transformers: [getTransformer(model, \"body\")]\n });\n };\n return {\n getCommentModel,\n getComment: async params => {\n const values = await getComment(params);\n return pickIdFromChangeRequest(values);\n },\n async listComments(params) {\n const model = await getCommentModel();\n security.disableAuthorization();\n const [entries, meta] = await cms.listLatestEntries(\n model,\n params as CmsEntryListParams\n );\n security.enableAuthorization();\n const values = await Promise.all(\n entries.map(entry =>\n getFieldValues<ApwComment>({\n entry,\n fields: baseFields,\n context: getCmsContext(),\n transformers: [getTransformer(model, \"body\")]\n })\n )\n );\n const all = values.map(value => pickIdFromChangeRequest(value));\n return [all, meta];\n },\n async createComment(this: ApwStorageOperations, params) {\n const model = await getCommentModel();\n const refModel = await this.getChangeRequestModel();\n security.disableAuthorization();\n const entry = await cms.createEntry(model, {\n ...params.data,\n changeRequest: {\n id: params.data.changeRequest,\n modelId: refModel.modelId\n }\n });\n security.enableAuthorization();\n\n const values = await getFieldValues({\n entry,\n fields: baseFields,\n context: getCmsContext(),\n transformers: [getTransformer(model, \"body\")]\n });\n return pickIdFromChangeRequest(values);\n },\n async updateComment(params) {\n const model = await getCommentModel();\n /**\n * We're fetching the existing entry here because we're not accepting \"app\" field as input,\n * but, we still need to retain its value after the \"update\" operation.\n */\n const existingEntry = await getComment({ id: params.id });\n\n security.disableAuthorization();\n const entry = await cms.updateEntry(model, params.id, {\n ...existingEntry,\n ...params.data\n });\n security.enableAuthorization();\n const values = await getFieldValues({\n entry,\n fields: baseFields,\n context: getCmsContext(),\n transformers: [getTransformer(model, \"body\")]\n });\n return pickIdFromChangeRequest(values);\n },\n async deleteComment(params) {\n const model = await getCommentModel();\n security.disableAuthorization();\n await cms.deleteEntry(model, params.id);\n security.enableAuthorization();\n return true;\n }\n };\n};\n"],"mappings":"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"}
1
+ {"version":3,"names":["pickIdFromChangeRequest","obj","rawValue","id","createCommentStorageOperations","cms","getCmsContext","security","getCommentModel","disableAuthorization","model","getModel","COMMENT_MODEL_ID","enableAuthorization","WebinyError","getComment","entry","getEntryById","getFieldValues","fields","baseFields","context","transformers","getTransformer","params","values","listComments","entries","meta","listLatestEntries","Promise","all","map","value","createComment","refModel","getChangeRequestModel","createEntry","data","changeRequest","modelId","updateComment","existingEntry","updateEntry","deleteComment","deleteEntry"],"sources":["commentStorageOperations.ts"],"sourcesContent":["import { ApwStorageOperations } from \"./types\";\nimport { ApwCommentStorageOperations } from \"./types\";\nimport { baseFields, CreateApwStorageOperationsParams } from \"~/storageOperations/index\";\nimport { getFieldValues, getTransformer } from \"~/utils/fieldResolver\";\nimport WebinyError from \"@webiny/error\";\nimport { ApwComment } from \"~/types\";\nimport { CmsEntryListParams } from \"@webiny/api-headless-cms/types\";\nimport { COMMENT_MODEL_ID } from \"~/storageOperations/models/comment.model\";\n\nconst pickIdFromChangeRequest = (obj: Record<string, any>): ApwComment => {\n const rawValue = obj[\"changeRequest\"];\n if (!rawValue) {\n return obj as unknown as ApwComment;\n }\n obj[\"changeRequest\"] = rawValue.id;\n return obj as unknown as ApwComment;\n};\n\nexport const createCommentStorageOperations = ({\n cms,\n getCmsContext,\n security\n}: CreateApwStorageOperationsParams): ApwCommentStorageOperations => {\n const getCommentModel = async () => {\n security.disableAuthorization();\n const model = await cms.getModel(COMMENT_MODEL_ID);\n security.enableAuthorization();\n if (!model) {\n throw new WebinyError(\n `Could not find \"${COMMENT_MODEL_ID}\" model.`,\n \"MODEL_NOT_FOUND_ERROR\"\n );\n }\n return model;\n };\n const getComment: ApwCommentStorageOperations[\"getComment\"] = async ({ id }) => {\n const model = await getCommentModel();\n security.disableAuthorization();\n const entry = await cms.getEntryById(model, id);\n security.enableAuthorization();\n return getFieldValues({\n entry,\n fields: baseFields,\n context: getCmsContext(),\n transformers: [getTransformer(model, \"body\")]\n });\n };\n return {\n getCommentModel,\n getComment: async params => {\n const values = await getComment(params);\n return pickIdFromChangeRequest(values);\n },\n async listComments(params) {\n const model = await getCommentModel();\n security.disableAuthorization();\n const [entries, meta] = await cms.listLatestEntries(\n model,\n params as CmsEntryListParams\n );\n security.enableAuthorization();\n const values = await Promise.all(\n entries.map(entry =>\n getFieldValues<ApwComment>({\n entry,\n fields: baseFields,\n context: getCmsContext(),\n transformers: [getTransformer(model, \"body\")]\n })\n )\n );\n const all = values.map(value => pickIdFromChangeRequest(value));\n return [all, meta];\n },\n async createComment(this: ApwStorageOperations, params) {\n const model = await getCommentModel();\n const refModel = await this.getChangeRequestModel();\n security.disableAuthorization();\n const entry = await cms.createEntry(model, {\n ...params.data,\n changeRequest: {\n id: params.data.changeRequest,\n modelId: refModel.modelId\n }\n });\n security.enableAuthorization();\n\n const values = await getFieldValues({\n entry,\n fields: baseFields,\n context: getCmsContext(),\n transformers: [getTransformer(model, \"body\")]\n });\n return pickIdFromChangeRequest(values);\n },\n async updateComment(params) {\n const model = await getCommentModel();\n /**\n * We're fetching the existing entry here because we're not accepting \"app\" field as input,\n * but, we still need to retain its value after the \"update\" operation.\n */\n const existingEntry = await getComment({ id: params.id });\n\n security.disableAuthorization();\n const entry = await cms.updateEntry(model, params.id, {\n ...existingEntry,\n ...params.data\n });\n security.enableAuthorization();\n const values = await getFieldValues({\n entry,\n fields: baseFields,\n context: getCmsContext(),\n transformers: [getTransformer(model, \"body\")]\n });\n return pickIdFromChangeRequest(values);\n },\n async deleteComment(params) {\n const model = await getCommentModel();\n security.disableAuthorization();\n await cms.deleteEntry(model, params.id);\n security.enableAuthorization();\n return true;\n }\n };\n};\n"],"mappings":"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"}
@@ -1,13 +1,13 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
4
 
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
8
  exports.createContentReviewStorageOperations = void 0;
9
9
 
10
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
10
+ var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
11
11
 
12
12
  var _index = require("./index");
13
13
 
@@ -15,10 +15,6 @@ var _error = _interopRequireDefault(require("@webiny/error"));
15
15
 
16
16
  var _contentReview = require("./models/contentReview.model");
17
17
 
18
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
19
-
20
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
21
-
22
18
  const createContentReviewStorageOperations = ({
23
19
  cms,
24
20
  security
@@ -52,8 +48,8 @@ const createContentReviewStorageOperations = ({
52
48
  async listContentReviews(params) {
53
49
  const model = await getContentReviewModel();
54
50
  security.disableAuthorization();
55
- const [entries, meta] = await cms.listLatestEntries(model, _objectSpread(_objectSpread({}, params), {}, {
56
- where: _objectSpread({}, params.where)
51
+ const [entries, meta] = await cms.listLatestEntries(model, (0, _objectSpread2.default)((0, _objectSpread2.default)({}, params), {}, {
52
+ where: (0, _objectSpread2.default)({}, params.where)
57
53
  }));
58
54
  security.enableAuthorization();
59
55
  return [entries.map(entry => (0, _index.getFieldValues)(entry, _index.baseFields)), meta];
@@ -78,7 +74,7 @@ const createContentReviewStorageOperations = ({
78
74
  id: params.id
79
75
  });
80
76
  security.disableAuthorization();
81
- const entry = await cms.updateEntry(model, params.id, _objectSpread(_objectSpread({}, existingEntry), params.data));
77
+ const entry = await cms.updateEntry(model, params.id, (0, _objectSpread2.default)((0, _objectSpread2.default)({}, existingEntry), params.data));
82
78
  security.enableAuthorization();
83
79
  return (0, _index.getFieldValues)(entry, _index.baseFields);
84
80
  },
@@ -1 +1 @@
1
- {"version":3,"names":["createContentReviewStorageOperations","cms","security","getContentReviewModel","disableAuthorization","model","getModel","CONTENT_REVIEW_MODEL_ID","enableAuthorization","WebinyError","getContentReview","id","entry","getEntryById","getFieldValues","baseFields","listContentReviews","params","entries","meta","listLatestEntries","where","map","createContentReview","createEntry","data","updateContentReview","existingEntry","updateEntry","deleteContentReview","deleteEntry"],"sources":["contentReviewStorageOperations.ts"],"sourcesContent":["import { ApwContentReviewStorageOperations } from \"./types\";\nimport {\n baseFields,\n CreateApwStorageOperationsParams,\n getFieldValues\n} from \"~/storageOperations/index\";\nimport WebinyError from \"@webiny/error\";\nimport { CONTENT_REVIEW_MODEL_ID } from \"~/storageOperations/models/contentReview.model\";\n\nexport const createContentReviewStorageOperations = ({\n cms,\n security\n}: CreateApwStorageOperationsParams): ApwContentReviewStorageOperations => {\n const getContentReviewModel = async () => {\n security.disableAuthorization();\n const model = await cms.getModel(CONTENT_REVIEW_MODEL_ID);\n security.enableAuthorization();\n if (!model) {\n throw new WebinyError(\n `Could not find \"${CONTENT_REVIEW_MODEL_ID}\" model.`,\n \"MODEL_NOT_FOUND_ERROR\"\n );\n }\n return model;\n };\n const getContentReview: ApwContentReviewStorageOperations[\"getContentReview\"] = async ({\n id\n }) => {\n const model = await getContentReviewModel();\n security.disableAuthorization();\n const entry = await cms.getEntryById(model, id);\n security.enableAuthorization();\n return getFieldValues(entry, baseFields);\n };\n return {\n getContentReviewModel,\n getContentReview,\n async listContentReviews(params) {\n const model = await getContentReviewModel();\n security.disableAuthorization();\n const [entries, meta] = await cms.listLatestEntries(model, {\n ...params,\n where: {\n ...params.where\n }\n });\n security.enableAuthorization();\n return [entries.map(entry => getFieldValues(entry, baseFields)), meta];\n },\n async createContentReview(params) {\n const model = await getContentReviewModel();\n security.disableAuthorization();\n const entry = await cms.createEntry(model, params.data);\n security.enableAuthorization();\n return getFieldValues(entry, baseFields);\n },\n async updateContentReview(params) {\n const model = await getContentReviewModel();\n /**\n * We're fetching the existing entry here because we're not accepting \"app\" field as input,\n * but, we still need to retain its value after the \"update\" operation.\n */\n const existingEntry = await getContentReview({ id: params.id });\n\n security.disableAuthorization();\n const entry = await cms.updateEntry(model, params.id, {\n ...existingEntry,\n ...params.data\n });\n security.enableAuthorization();\n return getFieldValues(entry, baseFields);\n },\n async deleteContentReview(params) {\n const model = await getContentReviewModel();\n security.disableAuthorization();\n await cms.deleteEntry(model, params.id);\n security.enableAuthorization();\n return true;\n }\n };\n};\n"],"mappings":";;;;;;;;;;;AACA;;AAKA;;AACA;;;;;;AAEO,MAAMA,oCAAoC,GAAG,CAAC;EACjDC,GADiD;EAEjDC;AAFiD,CAAD,KAGuB;EACvE,MAAMC,qBAAqB,GAAG,YAAY;IACtCD,QAAQ,CAACE,oBAAT;IACA,MAAMC,KAAK,GAAG,MAAMJ,GAAG,CAACK,QAAJ,CAAaC,sCAAb,CAApB;IACAL,QAAQ,CAACM,mBAAT;;IACA,IAAI,CAACH,KAAL,EAAY;MACR,MAAM,IAAII,cAAJ,CACD,mBAAkBF,sCAAwB,UADzC,EAEF,uBAFE,CAAN;IAIH;;IACD,OAAOF,KAAP;EACH,CAXD;;EAYA,MAAMK,gBAAuE,GAAG,OAAO;IACnFC;EADmF,CAAP,KAE1E;IACF,MAAMN,KAAK,GAAG,MAAMF,qBAAqB,EAAzC;IACAD,QAAQ,CAACE,oBAAT;IACA,MAAMQ,KAAK,GAAG,MAAMX,GAAG,CAACY,YAAJ,CAAiBR,KAAjB,EAAwBM,EAAxB,CAApB;IACAT,QAAQ,CAACM,mBAAT;IACA,OAAO,IAAAM,qBAAA,EAAeF,KAAf,EAAsBG,iBAAtB,CAAP;EACH,CARD;;EASA,OAAO;IACHZ,qBADG;IAEHO,gBAFG;;IAGH,MAAMM,kBAAN,CAAyBC,MAAzB,EAAiC;MAC7B,MAAMZ,KAAK,GAAG,MAAMF,qBAAqB,EAAzC;MACAD,QAAQ,CAACE,oBAAT;MACA,MAAM,CAACc,OAAD,EAAUC,IAAV,IAAkB,MAAMlB,GAAG,CAACmB,iBAAJ,CAAsBf,KAAtB,kCACvBY,MADuB;QAE1BI,KAAK,oBACEJ,MAAM,CAACI,KADT;MAFqB,GAA9B;MAMAnB,QAAQ,CAACM,mBAAT;MACA,OAAO,CAACU,OAAO,CAACI,GAAR,CAAYV,KAAK,IAAI,IAAAE,qBAAA,EAAeF,KAAf,EAAsBG,iBAAtB,CAArB,CAAD,EAA0DI,IAA1D,CAAP;IACH,CAdE;;IAeH,MAAMI,mBAAN,CAA0BN,MAA1B,EAAkC;MAC9B,MAAMZ,KAAK,GAAG,MAAMF,qBAAqB,EAAzC;MACAD,QAAQ,CAACE,oBAAT;MACA,MAAMQ,KAAK,GAAG,MAAMX,GAAG,CAACuB,WAAJ,CAAgBnB,KAAhB,EAAuBY,MAAM,CAACQ,IAA9B,CAApB;MACAvB,QAAQ,CAACM,mBAAT;MACA,OAAO,IAAAM,qBAAA,EAAeF,KAAf,EAAsBG,iBAAtB,CAAP;IACH,CArBE;;IAsBH,MAAMW,mBAAN,CAA0BT,MAA1B,EAAkC;MAC9B,MAAMZ,KAAK,GAAG,MAAMF,qBAAqB,EAAzC;MACA;AACZ;AACA;AACA;;MACY,MAAMwB,aAAa,GAAG,MAAMjB,gBAAgB,CAAC;QAAEC,EAAE,EAAEM,MAAM,CAACN;MAAb,CAAD,CAA5C;MAEAT,QAAQ,CAACE,oBAAT;MACA,MAAMQ,KAAK,GAAG,MAAMX,GAAG,CAAC2B,WAAJ,CAAgBvB,KAAhB,EAAuBY,MAAM,CAACN,EAA9B,kCACbgB,aADa,GAEbV,MAAM,CAACQ,IAFM,EAApB;MAIAvB,QAAQ,CAACM,mBAAT;MACA,OAAO,IAAAM,qBAAA,EAAeF,KAAf,EAAsBG,iBAAtB,CAAP;IACH,CArCE;;IAsCH,MAAMc,mBAAN,CAA0BZ,MAA1B,EAAkC;MAC9B,MAAMZ,KAAK,GAAG,MAAMF,qBAAqB,EAAzC;MACAD,QAAQ,CAACE,oBAAT;MACA,MAAMH,GAAG,CAAC6B,WAAJ,CAAgBzB,KAAhB,EAAuBY,MAAM,CAACN,EAA9B,CAAN;MACAT,QAAQ,CAACM,mBAAT;MACA,OAAO,IAAP;IACH;;EA5CE,CAAP;AA8CH,CAvEM"}
1
+ {"version":3,"names":["createContentReviewStorageOperations","cms","security","getContentReviewModel","disableAuthorization","model","getModel","CONTENT_REVIEW_MODEL_ID","enableAuthorization","WebinyError","getContentReview","id","entry","getEntryById","getFieldValues","baseFields","listContentReviews","params","entries","meta","listLatestEntries","where","map","createContentReview","createEntry","data","updateContentReview","existingEntry","updateEntry","deleteContentReview","deleteEntry"],"sources":["contentReviewStorageOperations.ts"],"sourcesContent":["import { ApwContentReviewStorageOperations } from \"./types\";\nimport {\n baseFields,\n CreateApwStorageOperationsParams,\n getFieldValues\n} from \"~/storageOperations/index\";\nimport WebinyError from \"@webiny/error\";\nimport { CONTENT_REVIEW_MODEL_ID } from \"~/storageOperations/models/contentReview.model\";\n\nexport const createContentReviewStorageOperations = ({\n cms,\n security\n}: CreateApwStorageOperationsParams): ApwContentReviewStorageOperations => {\n const getContentReviewModel = async () => {\n security.disableAuthorization();\n const model = await cms.getModel(CONTENT_REVIEW_MODEL_ID);\n security.enableAuthorization();\n if (!model) {\n throw new WebinyError(\n `Could not find \"${CONTENT_REVIEW_MODEL_ID}\" model.`,\n \"MODEL_NOT_FOUND_ERROR\"\n );\n }\n return model;\n };\n const getContentReview: ApwContentReviewStorageOperations[\"getContentReview\"] = async ({\n id\n }) => {\n const model = await getContentReviewModel();\n security.disableAuthorization();\n const entry = await cms.getEntryById(model, id);\n security.enableAuthorization();\n return getFieldValues(entry, baseFields);\n };\n return {\n getContentReviewModel,\n getContentReview,\n async listContentReviews(params) {\n const model = await getContentReviewModel();\n security.disableAuthorization();\n const [entries, meta] = await cms.listLatestEntries(model, {\n ...params,\n where: {\n ...params.where\n }\n });\n security.enableAuthorization();\n return [entries.map(entry => getFieldValues(entry, baseFields)), meta];\n },\n async createContentReview(params) {\n const model = await getContentReviewModel();\n security.disableAuthorization();\n const entry = await cms.createEntry(model, params.data);\n security.enableAuthorization();\n return getFieldValues(entry, baseFields);\n },\n async updateContentReview(params) {\n const model = await getContentReviewModel();\n /**\n * We're fetching the existing entry here because we're not accepting \"app\" field as input,\n * but, we still need to retain its value after the \"update\" operation.\n */\n const existingEntry = await getContentReview({ id: params.id });\n\n security.disableAuthorization();\n const entry = await cms.updateEntry(model, params.id, {\n ...existingEntry,\n ...params.data\n });\n security.enableAuthorization();\n return getFieldValues(entry, baseFields);\n },\n async deleteContentReview(params) {\n const model = await getContentReviewModel();\n security.disableAuthorization();\n await cms.deleteEntry(model, params.id);\n security.enableAuthorization();\n return true;\n }\n };\n};\n"],"mappings":";;;;;;;;;;;AACA;;AAKA;;AACA;;AAEO,MAAMA,oCAAoC,GAAG,CAAC;EACjDC,GADiD;EAEjDC;AAFiD,CAAD,KAGuB;EACvE,MAAMC,qBAAqB,GAAG,YAAY;IACtCD,QAAQ,CAACE,oBAAT;IACA,MAAMC,KAAK,GAAG,MAAMJ,GAAG,CAACK,QAAJ,CAAaC,sCAAb,CAApB;IACAL,QAAQ,CAACM,mBAAT;;IACA,IAAI,CAACH,KAAL,EAAY;MACR,MAAM,IAAII,cAAJ,CACD,mBAAkBF,sCAAwB,UADzC,EAEF,uBAFE,CAAN;IAIH;;IACD,OAAOF,KAAP;EACH,CAXD;;EAYA,MAAMK,gBAAuE,GAAG,OAAO;IACnFC;EADmF,CAAP,KAE1E;IACF,MAAMN,KAAK,GAAG,MAAMF,qBAAqB,EAAzC;IACAD,QAAQ,CAACE,oBAAT;IACA,MAAMQ,KAAK,GAAG,MAAMX,GAAG,CAACY,YAAJ,CAAiBR,KAAjB,EAAwBM,EAAxB,CAApB;IACAT,QAAQ,CAACM,mBAAT;IACA,OAAO,IAAAM,qBAAA,EAAeF,KAAf,EAAsBG,iBAAtB,CAAP;EACH,CARD;;EASA,OAAO;IACHZ,qBADG;IAEHO,gBAFG;;IAGH,MAAMM,kBAAN,CAAyBC,MAAzB,EAAiC;MAC7B,MAAMZ,KAAK,GAAG,MAAMF,qBAAqB,EAAzC;MACAD,QAAQ,CAACE,oBAAT;MACA,MAAM,CAACc,OAAD,EAAUC,IAAV,IAAkB,MAAMlB,GAAG,CAACmB,iBAAJ,CAAsBf,KAAtB,8DACvBY,MADuB;QAE1BI,KAAK,kCACEJ,MAAM,CAACI,KADT;MAFqB,GAA9B;MAMAnB,QAAQ,CAACM,mBAAT;MACA,OAAO,CAACU,OAAO,CAACI,GAAR,CAAYV,KAAK,IAAI,IAAAE,qBAAA,EAAeF,KAAf,EAAsBG,iBAAtB,CAArB,CAAD,EAA0DI,IAA1D,CAAP;IACH,CAdE;;IAeH,MAAMI,mBAAN,CAA0BN,MAA1B,EAAkC;MAC9B,MAAMZ,KAAK,GAAG,MAAMF,qBAAqB,EAAzC;MACAD,QAAQ,CAACE,oBAAT;MACA,MAAMQ,KAAK,GAAG,MAAMX,GAAG,CAACuB,WAAJ,CAAgBnB,KAAhB,EAAuBY,MAAM,CAACQ,IAA9B,CAApB;MACAvB,QAAQ,CAACM,mBAAT;MACA,OAAO,IAAAM,qBAAA,EAAeF,KAAf,EAAsBG,iBAAtB,CAAP;IACH,CArBE;;IAsBH,MAAMW,mBAAN,CAA0BT,MAA1B,EAAkC;MAC9B,MAAMZ,KAAK,GAAG,MAAMF,qBAAqB,EAAzC;MACA;AACZ;AACA;AACA;;MACY,MAAMwB,aAAa,GAAG,MAAMjB,gBAAgB,CAAC;QAAEC,EAAE,EAAEM,MAAM,CAACN;MAAb,CAAD,CAA5C;MAEAT,QAAQ,CAACE,oBAAT;MACA,MAAMQ,KAAK,GAAG,MAAMX,GAAG,CAAC2B,WAAJ,CAAgBvB,KAAhB,EAAuBY,MAAM,CAACN,EAA9B,8DACbgB,aADa,GAEbV,MAAM,CAACQ,IAFM,EAApB;MAIAvB,QAAQ,CAACM,mBAAT;MACA,OAAO,IAAAM,qBAAA,EAAeF,KAAf,EAAsBG,iBAAtB,CAAP;IACH,CArCE;;IAsCH,MAAMc,mBAAN,CAA0BZ,MAA1B,EAAkC;MAC9B,MAAMZ,KAAK,GAAG,MAAMF,qBAAqB,EAAzC;MACAD,QAAQ,CAACE,oBAAT;MACA,MAAMH,GAAG,CAAC6B,WAAJ,CAAgBzB,KAAhB,EAAuBY,MAAM,CAACN,EAA9B,CAAN;MACAT,QAAQ,CAACM,mBAAT;MACA,OAAO,IAAP;IACH;;EA5CE,CAAP;AA8CH,CAvEM"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
4
 
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
@@ -8,7 +8,7 @@ Object.defineProperty(exports, "__esModule", {
8
8
  exports.createStorageOperations = exports.baseFields = void 0;
9
9
  exports.getFieldValues = getFieldValues;
10
10
 
11
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
+ var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
12
12
 
13
13
  var _pick = _interopRequireDefault(require("lodash/pick"));
14
14
 
@@ -24,19 +24,15 @@ var _commentStorageOperations = require("./commentStorageOperations");
24
24
 
25
25
  var _models = require("./models");
26
26
 
27
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
28
-
29
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
30
-
31
27
  /**
32
28
  * Using any because value can be a lot of types.
33
29
  * TODO @ts-refactor figure out correct types.
34
30
  */
35
31
  function getFieldValues(entry, fields) {
36
- return _objectSpread(_objectSpread({}, (0, _pick.default)(entry, fields)), entry.values);
32
+ return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, (0, _pick.default)(entry, fields)), entry.values);
37
33
  }
38
34
 
39
- const baseFields = ["id", "createdBy", "createdOn", "savedOn"];
35
+ const baseFields = ["id", "entryId", "createdBy", "createdOn", "savedOn"];
40
36
  exports.baseFields = baseFields;
41
37
 
42
38
  const createStorageOperations = params => {
@@ -46,7 +42,7 @@ const createStorageOperations = params => {
46
42
  */
47
43
 
48
44
  (0, _models.createApwModels)(context);
49
- return _objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread({}, (0, _reviewerStorageOperations.createReviewerStorageOperations)(params)), (0, _workflowStorageOperations.createWorkflowStorageOperations)(params)), (0, _contentReviewStorageOperations.createContentReviewStorageOperations)(params)), (0, _changeRequestStorageOperations.createChangeRequestStorageOperations)(params)), (0, _commentStorageOperations.createCommentStorageOperations)(params));
45
+ return (0, _objectSpread2.default)((0, _objectSpread2.default)((0, _objectSpread2.default)((0, _objectSpread2.default)((0, _objectSpread2.default)({}, (0, _reviewerStorageOperations.createReviewerStorageOperations)(params)), (0, _workflowStorageOperations.createWorkflowStorageOperations)(params)), (0, _contentReviewStorageOperations.createContentReviewStorageOperations)(params)), (0, _changeRequestStorageOperations.createChangeRequestStorageOperations)(params)), (0, _commentStorageOperations.createCommentStorageOperations)(params));
50
46
  };
51
47
 
52
48
  exports.createStorageOperations = createStorageOperations;
@@ -1 +1 @@
1
- {"version":3,"names":["getFieldValues","entry","fields","pick","values","baseFields","createStorageOperations","params","context","getCmsContext","createApwModels","createReviewerStorageOperations","createWorkflowStorageOperations","createContentReviewStorageOperations","createChangeRequestStorageOperations","createCommentStorageOperations"],"sources":["index.ts"],"sourcesContent":["import pick from \"lodash/pick\";\nimport { CmsContext, CmsEntry, HeadlessCms } from \"@webiny/api-headless-cms/types\";\nimport { ApwStorageOperations } from \"~/types\";\nimport { createReviewerStorageOperations } from \"./reviewerStorageOperations\";\nimport { createWorkflowStorageOperations } from \"./workflowStorageOperations\";\nimport { createContentReviewStorageOperations } from \"./contentReviewStorageOperations\";\nimport { createChangeRequestStorageOperations } from \"./changeRequestStorageOperations\";\nimport { createCommentStorageOperations } from \"~/storageOperations/commentStorageOperations\";\nimport { createApwModels } from \"./models\";\nimport { Security } from \"@webiny/api-security/types\";\n\nexport interface CreateApwStorageOperationsParams {\n cms: HeadlessCms;\n security: Security;\n getCmsContext: () => CmsContext;\n}\n\n/**\n * Using any because value can be a lot of types.\n * TODO @ts-refactor figure out correct types.\n */\nexport function getFieldValues(entry: CmsEntry, fields: string[]): any {\n return { ...pick(entry, fields), ...entry.values };\n}\n\nexport const baseFields = [\"id\", \"createdBy\", \"createdOn\", \"savedOn\"];\n\nexport const createStorageOperations = (\n params: CreateApwStorageOperationsParams\n): ApwStorageOperations => {\n const context = params.getCmsContext();\n /**\n * Register Apw models.\n */\n createApwModels(context);\n\n return {\n ...createReviewerStorageOperations(params),\n ...createWorkflowStorageOperations(params),\n ...createContentReviewStorageOperations(params),\n ...createChangeRequestStorageOperations(params),\n ...createCommentStorageOperations(params)\n };\n};\n"],"mappings":";;;;;;;;;;;;AAAA;;AAGA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;AASA;AACA;AACA;AACA;AACO,SAASA,cAAT,CAAwBC,KAAxB,EAAyCC,MAAzC,EAAgE;EACnE,uCAAY,IAAAC,aAAA,EAAKF,KAAL,EAAYC,MAAZ,CAAZ,GAAoCD,KAAK,CAACG,MAA1C;AACH;;AAEM,MAAMC,UAAU,GAAG,CAAC,IAAD,EAAO,WAAP,EAAoB,WAApB,EAAiC,SAAjC,CAAnB;;;AAEA,MAAMC,uBAAuB,GAChCC,MADmC,IAEZ;EACvB,MAAMC,OAAO,GAAGD,MAAM,CAACE,aAAP,EAAhB;EACA;AACJ;AACA;;EACI,IAAAC,uBAAA,EAAgBF,OAAhB;EAEA,iFACO,IAAAG,0DAAA,EAAgCJ,MAAhC,CADP,GAEO,IAAAK,0DAAA,EAAgCL,MAAhC,CAFP,GAGO,IAAAM,oEAAA,EAAqCN,MAArC,CAHP,GAIO,IAAAO,oEAAA,EAAqCP,MAArC,CAJP,GAKO,IAAAQ,wDAAA,EAA+BR,MAA/B,CALP;AAOH,CAhBM"}
1
+ {"version":3,"names":["getFieldValues","entry","fields","pick","values","baseFields","createStorageOperations","params","context","getCmsContext","createApwModels","createReviewerStorageOperations","createWorkflowStorageOperations","createContentReviewStorageOperations","createChangeRequestStorageOperations","createCommentStorageOperations"],"sources":["index.ts"],"sourcesContent":["import pick from \"lodash/pick\";\nimport { CmsContext, CmsEntry, HeadlessCms } from \"@webiny/api-headless-cms/types\";\nimport { ApwStorageOperations } from \"~/types\";\nimport { createReviewerStorageOperations } from \"./reviewerStorageOperations\";\nimport { createWorkflowStorageOperations } from \"./workflowStorageOperations\";\nimport { createContentReviewStorageOperations } from \"./contentReviewStorageOperations\";\nimport { createChangeRequestStorageOperations } from \"./changeRequestStorageOperations\";\nimport { createCommentStorageOperations } from \"~/storageOperations/commentStorageOperations\";\nimport { createApwModels } from \"./models\";\nimport { Security } from \"@webiny/api-security/types\";\n\nexport interface CreateApwStorageOperationsParams {\n cms: HeadlessCms;\n security: Security;\n getCmsContext: () => CmsContext;\n}\n\n/**\n * Using any because value can be a lot of types.\n * TODO @ts-refactor figure out correct types.\n */\nexport function getFieldValues(entry: CmsEntry, fields: string[]): any {\n return { ...pick(entry, fields), ...entry.values };\n}\n\nexport const baseFields = [\"id\", \"entryId\", \"createdBy\", \"createdOn\", \"savedOn\"];\n\nexport const createStorageOperations = (\n params: CreateApwStorageOperationsParams\n): ApwStorageOperations => {\n const context = params.getCmsContext();\n /**\n * Register Apw models.\n */\n createApwModels(context);\n\n return {\n ...createReviewerStorageOperations(params),\n ...createWorkflowStorageOperations(params),\n ...createContentReviewStorageOperations(params),\n ...createChangeRequestStorageOperations(params),\n ...createCommentStorageOperations(params)\n };\n};\n"],"mappings":";;;;;;;;;;;;AAAA;;AAGA;;AACA;;AACA;;AACA;;AACA;;AACA;;AASA;AACA;AACA;AACA;AACO,SAASA,cAAT,CAAwBC,KAAxB,EAAyCC,MAAzC,EAAgE;EACnE,mEAAY,IAAAC,aAAA,EAAKF,KAAL,EAAYC,MAAZ,CAAZ,GAAoCD,KAAK,CAACG,MAA1C;AACH;;AAEM,MAAMC,UAAU,GAAG,CAAC,IAAD,EAAO,SAAP,EAAkB,WAAlB,EAA+B,WAA/B,EAA4C,SAA5C,CAAnB;;;AAEA,MAAMC,uBAAuB,GAChCC,MADmC,IAEZ;EACvB,MAAMC,OAAO,GAAGD,MAAM,CAACE,aAAP,EAAhB;EACA;AACJ;AACA;;EACI,IAAAC,uBAAA,EAAgBF,OAAhB;EAEA,uJACO,IAAAG,0DAAA,EAAgCJ,MAAhC,CADP,GAEO,IAAAK,0DAAA,EAAgCL,MAAhC,CAFP,GAGO,IAAAM,oEAAA,EAAqCN,MAArC,CAHP,GAIO,IAAAO,oEAAA,EAAqCP,MAArC,CAJP,GAKO,IAAAQ,wDAAA,EAA+BR,MAA/B,CALP;AAOH,CAhBM"}
@@ -1,20 +1,16 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
4
 
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
8
  exports.contentModelPluginFactory = void 0;
9
9
 
10
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
10
+ var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
11
11
 
12
12
  var _apiHeadlessCms = require("@webiny/api-headless-cms");
13
13
 
14
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
15
-
16
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
17
-
18
14
  const contentModelPluginFactory = params => {
19
15
  const {
20
16
  group,
@@ -22,7 +18,7 @@ const contentModelPluginFactory = params => {
22
18
  tenant,
23
19
  modelDefinition
24
20
  } = params;
25
- return (0, _apiHeadlessCms.createCmsModel)(_objectSpread({
21
+ return (0, _apiHeadlessCms.createCmsModel)((0, _objectSpread2.default)({
26
22
  group,
27
23
  locale,
28
24
  tenant