@webiny/api-apw 0.0.0-unstable.8c4d9f045a → 0.0.0-unstable.8feaff8c32

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (248) hide show
  1. package/ApwChangeRequestNotification.d.ts +27 -0
  2. package/ApwChangeRequestNotification.js +30 -0
  3. package/ApwChangeRequestNotification.js.map +1 -0
  4. package/ApwCommentNotification.d.ts +27 -0
  5. package/ApwCommentNotification.js +30 -0
  6. package/ApwCommentNotification.js.map +1 -0
  7. package/ApwContentReviewNotification.d.ts +26 -0
  8. package/ApwContentReviewNotification.js +30 -0
  9. package/ApwContentReviewNotification.js.map +1 -0
  10. package/ApwContentUrlPlugin.d.ts +19 -0
  11. package/ApwContentUrlPlugin.js +30 -0
  12. package/ApwContentUrlPlugin.js.map +1 -0
  13. package/ContentApwSettingsPlugin.js +1 -6
  14. package/ContentApwSettingsPlugin.js.map +1 -1
  15. package/crud/createChangeRequestMethods.js +21 -25
  16. package/crud/createChangeRequestMethods.js.map +1 -1
  17. package/crud/createCommentMethods.js +21 -26
  18. package/crud/createCommentMethods.js.map +1 -1
  19. package/crud/createContentReviewMethods.js +89 -128
  20. package/crud/createContentReviewMethods.js.map +1 -1
  21. package/crud/createReviewerMethods.js +21 -26
  22. package/crud/createReviewerMethods.js.map +1 -1
  23. package/crud/createWorkflowMethods.d.ts +1 -1
  24. package/crud/createWorkflowMethods.js +37 -28
  25. package/crud/createWorkflowMethods.js.map +1 -1
  26. package/crud/index.js +3 -32
  27. package/crud/index.js.map +1 -1
  28. package/crud/utils.js +4 -36
  29. package/crud/utils.js.map +1 -1
  30. package/index.d.ts +2 -3
  31. package/index.js +6 -16
  32. package/index.js.map +1 -1
  33. package/package.json +40 -46
  34. package/plugins/cms/CmsEntryApwSettingsGetterPlugin.js +1 -16
  35. package/plugins/cms/CmsEntryApwSettingsGetterPlugin.js.map +1 -1
  36. package/plugins/cms/apwEntryPlugins.js +4 -16
  37. package/plugins/cms/apwEntryPlugins.js.map +1 -1
  38. package/plugins/cms/index.js +5 -10
  39. package/plugins/cms/index.js.map +1 -1
  40. package/plugins/cms/linkContentReviewToEntry.js +6 -23
  41. package/plugins/cms/linkContentReviewToEntry.js.map +1 -1
  42. package/plugins/cms/linkWorkflowToEntry.js +14 -43
  43. package/plugins/cms/linkWorkflowToEntry.js.map +1 -1
  44. package/plugins/cms/notifications/changeRequestNotification.d.ts +1 -0
  45. package/plugins/cms/notifications/changeRequestNotification.js +31 -0
  46. package/plugins/cms/notifications/changeRequestNotification.js.map +1 -0
  47. package/plugins/cms/notifications/commentNotification.d.ts +1 -0
  48. package/plugins/cms/notifications/commentNotification.js +31 -0
  49. package/plugins/cms/notifications/commentNotification.js.map +1 -0
  50. package/plugins/cms/notifications/contentReviewNotification.d.ts +1 -0
  51. package/plugins/cms/notifications/contentReviewNotification.js +31 -0
  52. package/plugins/cms/notifications/contentReviewNotification.js.map +1 -0
  53. package/plugins/cms/notifications/contentUrl.d.ts +8 -0
  54. package/plugins/cms/notifications/contentUrl.js +53 -0
  55. package/plugins/cms/notifications/contentUrl.js.map +1 -0
  56. package/plugins/cms/triggerContentReview.js +6 -20
  57. package/plugins/cms/triggerContentReview.js.map +1 -1
  58. package/plugins/cms/updateContentReviewStatus.js +14 -36
  59. package/plugins/cms/updateContentReviewStatus.js.map +1 -1
  60. package/plugins/cms/utils.js +6 -55
  61. package/plugins/cms/utils.js.map +1 -1
  62. package/plugins/context.d.ts +0 -1
  63. package/plugins/context.js +3 -48
  64. package/plugins/context.js.map +1 -1
  65. package/plugins/graphql/changeRequest.gql.js +4 -11
  66. package/plugins/graphql/changeRequest.gql.js.map +1 -1
  67. package/plugins/graphql/comment.gql.js +4 -11
  68. package/plugins/graphql/comment.gql.js.map +1 -1
  69. package/plugins/graphql/contentReview.gql.js +10 -29
  70. package/plugins/graphql/contentReview.gql.js.map +1 -1
  71. package/plugins/graphql/reviewer.gql.js +6 -11
  72. package/plugins/graphql/reviewer.gql.js.map +1 -1
  73. package/plugins/graphql/workflow.gql.js +4 -11
  74. package/plugins/graphql/workflow.gql.js.map +1 -1
  75. package/plugins/graphql.js +4 -19
  76. package/plugins/graphql.js.map +1 -1
  77. package/plugins/hooks/createReviewerFromIdentity.js +26 -15
  78. package/plugins/hooks/createReviewerFromIdentity.js.map +1 -1
  79. package/plugins/hooks/deleteChangeRequestsAfterContentReview.js +2 -10
  80. package/plugins/hooks/deleteChangeRequestsAfterContentReview.js.map +1 -1
  81. package/plugins/hooks/deleteCommentsAfterChangeRequest.js +2 -9
  82. package/plugins/hooks/deleteCommentsAfterChangeRequest.js.map +1 -1
  83. package/plugins/hooks/index.js +4 -12
  84. package/plugins/hooks/index.js.map +1 -1
  85. package/plugins/hooks/initializeContentReviewSteps.js +15 -25
  86. package/plugins/hooks/initializeContentReviewSteps.js.map +1 -1
  87. package/plugins/hooks/initializeNotifications.d.ts +2 -0
  88. package/plugins/hooks/initializeNotifications.js +15 -0
  89. package/plugins/hooks/initializeNotifications.js.map +1 -0
  90. package/plugins/hooks/listContentReviews.d.ts +10 -0
  91. package/plugins/hooks/listContentReviews.js +56 -0
  92. package/plugins/hooks/listContentReviews.js.map +1 -0
  93. package/plugins/hooks/notifications/appUrl.d.ts +2 -0
  94. package/plugins/hooks/notifications/appUrl.js +18 -0
  95. package/plugins/hooks/notifications/appUrl.js.map +1 -0
  96. package/plugins/hooks/notifications/changeRequestAfterCreate.d.ts +2 -0
  97. package/plugins/hooks/notifications/changeRequestAfterCreate.js +111 -0
  98. package/plugins/hooks/notifications/changeRequestAfterCreate.js.map +1 -0
  99. package/plugins/hooks/notifications/changeRequestUrl.d.ts +8 -0
  100. package/plugins/hooks/notifications/changeRequestUrl.js +27 -0
  101. package/plugins/hooks/notifications/changeRequestUrl.js.map +1 -0
  102. package/plugins/hooks/notifications/commentAfterCreate.d.ts +2 -0
  103. package/plugins/hooks/notifications/commentAfterCreate.js +122 -0
  104. package/plugins/hooks/notifications/commentAfterCreate.js.map +1 -0
  105. package/plugins/hooks/notifications/commentUrl.d.ts +8 -0
  106. package/plugins/hooks/notifications/commentUrl.js +27 -0
  107. package/plugins/hooks/notifications/commentUrl.js.map +1 -0
  108. package/plugins/hooks/notifications/contentReviewAfterCreate.d.ts +2 -0
  109. package/plugins/hooks/notifications/contentReviewAfterCreate.js +94 -0
  110. package/plugins/hooks/notifications/contentReviewAfterCreate.js.map +1 -0
  111. package/plugins/hooks/notifications/contentReviewUrl.d.ts +7 -0
  112. package/plugins/hooks/notifications/contentReviewUrl.js +26 -0
  113. package/plugins/hooks/notifications/contentReviewUrl.js.map +1 -0
  114. package/plugins/hooks/notifications/contentUrl.d.ts +7 -0
  115. package/plugins/hooks/notifications/contentUrl.js +24 -0
  116. package/plugins/hooks/notifications/contentUrl.js.map +1 -0
  117. package/plugins/hooks/notifications/lastChangeRequestNotificationPlugin.d.ts +11 -0
  118. package/plugins/hooks/notifications/lastChangeRequestNotificationPlugin.js +21 -0
  119. package/plugins/hooks/notifications/lastChangeRequestNotificationPlugin.js.map +1 -0
  120. package/plugins/hooks/notifications/lastCommentNotificationPlugin.d.ts +11 -0
  121. package/plugins/hooks/notifications/lastCommentNotificationPlugin.js +21 -0
  122. package/plugins/hooks/notifications/lastCommentNotificationPlugin.js.map +1 -0
  123. package/plugins/hooks/notifications/lastContentReviewNotificationPlugin.d.ts +11 -0
  124. package/plugins/hooks/notifications/lastContentReviewNotificationPlugin.js +21 -0
  125. package/plugins/hooks/notifications/lastContentReviewNotificationPlugin.js.map +1 -0
  126. package/plugins/hooks/notifications/reviewers.d.ts +15 -0
  127. package/plugins/hooks/notifications/reviewers.js +45 -0
  128. package/plugins/hooks/notifications/reviewers.js.map +1 -0
  129. package/plugins/hooks/notifications/sendChangeRequestNotification.d.ts +2 -0
  130. package/plugins/hooks/notifications/sendChangeRequestNotification.js +41 -0
  131. package/plugins/hooks/notifications/sendChangeRequestNotification.js.map +1 -0
  132. package/plugins/hooks/notifications/sendCommentNotification.d.ts +2 -0
  133. package/plugins/hooks/notifications/sendCommentNotification.js +41 -0
  134. package/plugins/hooks/notifications/sendCommentNotification.js.map +1 -0
  135. package/plugins/hooks/notifications/sendContentReviewNotification.d.ts +2 -0
  136. package/plugins/hooks/notifications/sendContentReviewNotification.js +41 -0
  137. package/plugins/hooks/notifications/sendContentReviewNotification.js.map +1 -0
  138. package/plugins/hooks/updatePendingChangeRequests.js +7 -19
  139. package/plugins/hooks/updatePendingChangeRequests.js.map +1 -1
  140. package/plugins/hooks/updateTotalComments.js +14 -27
  141. package/plugins/hooks/updateTotalComments.js.map +1 -1
  142. package/plugins/hooks/validateChangeRequest.js +27 -18
  143. package/plugins/hooks/validateChangeRequest.js.map +1 -1
  144. package/plugins/hooks/validateComment.js +13 -14
  145. package/plugins/hooks/validateComment.js.map +1 -1
  146. package/plugins/hooks/validateContentReview.js +2 -8
  147. package/plugins/hooks/validateContentReview.js.map +1 -1
  148. package/plugins/pageBuilder/PageApwSettingsGetterPlugin.js +1 -16
  149. package/plugins/pageBuilder/PageApwSettingsGetterPlugin.js.map +1 -1
  150. package/plugins/pageBuilder/apwContentPagePlugins.js +0 -4
  151. package/plugins/pageBuilder/apwContentPagePlugins.js.map +1 -1
  152. package/plugins/pageBuilder/extendPbPageSettingsSchema.js +1 -6
  153. package/plugins/pageBuilder/extendPbPageSettingsSchema.js.map +1 -1
  154. package/plugins/pageBuilder/index.js +5 -8
  155. package/plugins/pageBuilder/index.js.map +1 -1
  156. package/plugins/pageBuilder/linkContentReviewToPage.js +38 -42
  157. package/plugins/pageBuilder/linkContentReviewToPage.js.map +1 -1
  158. package/plugins/pageBuilder/linkWorkflowToPage.js +14 -32
  159. package/plugins/pageBuilder/linkWorkflowToPage.js.map +1 -1
  160. package/plugins/pageBuilder/notifications/changeRequestNotification.d.ts +1 -0
  161. package/plugins/pageBuilder/notifications/changeRequestNotification.js +31 -0
  162. package/plugins/pageBuilder/notifications/changeRequestNotification.js.map +1 -0
  163. package/plugins/pageBuilder/notifications/commentNotification.d.ts +1 -0
  164. package/plugins/pageBuilder/notifications/commentNotification.js +31 -0
  165. package/plugins/pageBuilder/notifications/commentNotification.js.map +1 -0
  166. package/plugins/pageBuilder/notifications/contentReviewNotification.d.ts +1 -0
  167. package/plugins/pageBuilder/notifications/contentReviewNotification.js +31 -0
  168. package/plugins/pageBuilder/notifications/contentReviewNotification.js.map +1 -0
  169. package/plugins/pageBuilder/notifications/contentUrl.d.ts +1 -0
  170. package/plugins/pageBuilder/notifications/contentUrl.js +47 -0
  171. package/plugins/pageBuilder/notifications/contentUrl.js.map +1 -0
  172. package/plugins/pageBuilder/triggerContentReview.js +3 -14
  173. package/plugins/pageBuilder/triggerContentReview.js.map +1 -1
  174. package/plugins/pageBuilder/updateContentReviewStatus.js +10 -26
  175. package/plugins/pageBuilder/updateContentReviewStatus.js.map +1 -1
  176. package/plugins/pageBuilder/utils.js +2 -36
  177. package/plugins/pageBuilder/utils.js.map +1 -1
  178. package/plugins/utils.d.ts +1 -1
  179. package/plugins/utils.js +4 -57
  180. package/plugins/utils.js.map +1 -1
  181. package/scheduler/createScheduleActionMethods.js +15 -36
  182. package/scheduler/createScheduleActionMethods.js.map +1 -1
  183. package/scheduler/handlers/executeAction/index.d.ts +1 -1
  184. package/scheduler/handlers/executeAction/index.js +45 -39
  185. package/scheduler/handlers/executeAction/index.js.map +1 -1
  186. package/scheduler/handlers/executeAction/plugins/ApplicationGraphQL.d.ts +6 -0
  187. package/scheduler/handlers/executeAction/plugins/ApplicationGraphQL.js +15 -6
  188. package/scheduler/handlers/executeAction/plugins/ApplicationGraphQL.js.map +1 -1
  189. package/scheduler/handlers/executeAction/plugins/HeadlessCMSGraphQL.d.ts +2 -3
  190. package/scheduler/handlers/executeAction/plugins/HeadlessCMSGraphQL.js +8 -24
  191. package/scheduler/handlers/executeAction/plugins/HeadlessCMSGraphQL.js.map +1 -1
  192. package/scheduler/handlers/executeAction/plugins/PageBuilderGraphQL.d.ts +2 -2
  193. package/scheduler/handlers/executeAction/plugins/PageBuilderGraphQL.js +8 -87
  194. package/scheduler/handlers/executeAction/plugins/PageBuilderGraphQL.js.map +1 -1
  195. package/scheduler/handlers/executeAction/security.js +0 -11
  196. package/scheduler/handlers/executeAction/security.js.map +1 -1
  197. package/scheduler/handlers/scheduleAction/index.js +21 -38
  198. package/scheduler/handlers/scheduleAction/index.js.map +1 -1
  199. package/scheduler/handlers/scheduleAction/scheduleAction.utils.js +9 -32
  200. package/scheduler/handlers/scheduleAction/scheduleAction.utils.js.map +1 -1
  201. package/scheduler/handlers/utils.d.ts +0 -1
  202. package/scheduler/handlers/utils.js +4 -42
  203. package/scheduler/handlers/utils.js.map +1 -1
  204. package/scheduler/index.js +0 -3
  205. package/scheduler/index.js.map +1 -1
  206. package/scheduler/types.d.ts +2 -20
  207. package/scheduler/types.js +12 -23
  208. package/scheduler/types.js.map +1 -1
  209. package/storageOperations/changeRequestStorageOperations.js +22 -45
  210. package/storageOperations/changeRequestStorageOperations.js.map +1 -1
  211. package/storageOperations/commentStorageOperations.js +25 -50
  212. package/storageOperations/commentStorageOperations.js.map +1 -1
  213. package/storageOperations/contentReviewStorageOperations.js +22 -43
  214. package/storageOperations/contentReviewStorageOperations.js.map +1 -1
  215. package/storageOperations/index.js +5 -23
  216. package/storageOperations/index.js.map +1 -1
  217. package/storageOperations/models/changeRequest.model.js +0 -9
  218. package/storageOperations/models/changeRequest.model.js.map +1 -1
  219. package/storageOperations/models/comment.model.js +0 -8
  220. package/storageOperations/models/comment.model.js.map +1 -1
  221. package/storageOperations/models/contentModelPluginFactory.d.ts +3 -10
  222. package/storageOperations/models/contentModelPluginFactory.js +5 -17
  223. package/storageOperations/models/contentModelPluginFactory.js.map +1 -1
  224. package/storageOperations/models/contentReview.model.js +6 -31
  225. package/storageOperations/models/contentReview.model.js.map +1 -1
  226. package/storageOperations/models/index.js +3 -29
  227. package/storageOperations/models/index.js.map +1 -1
  228. package/storageOperations/models/reviewer.model.js +17 -9
  229. package/storageOperations/models/reviewer.model.js.map +1 -1
  230. package/storageOperations/models/utils.js +3 -6
  231. package/storageOperations/models/utils.js.map +1 -1
  232. package/storageOperations/models/workflow.model.js +0 -23
  233. package/storageOperations/models/workflow.model.js.map +1 -1
  234. package/storageOperations/reviewerStorageOperations.js +22 -40
  235. package/storageOperations/reviewerStorageOperations.js.map +1 -1
  236. package/storageOperations/workflowStorageOperations.js +25 -48
  237. package/storageOperations/workflowStorageOperations.js.map +1 -1
  238. package/types.d.ts +104 -88
  239. package/types.js +124 -42
  240. package/types.js.map +1 -1
  241. package/utils/contentApwSettingsPlugin.js +0 -6
  242. package/utils/contentApwSettingsPlugin.js.map +1 -1
  243. package/utils/errors.js +1 -18
  244. package/utils/errors.js.map +1 -1
  245. package/utils/fieldResolver.js +5 -21
  246. package/utils/fieldResolver.js.map +1 -1
  247. package/utils/resolve.js +0 -3
  248. package/utils/resolve.js.map +1 -1
package/crud/utils.js CHANGED
@@ -1,39 +1,24 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports.INITIAL_CONTENT_REVIEW_CONTENT_SCHEDULE_META = void 0;
9
8
  exports.checkValidDateTime = checkValidDateTime;
10
9
  exports.getPendingRequiredSteps = exports.filterContentReviewsByRequiresMyAttention = void 0;
11
-
12
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
13
-
10
+ var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
14
11
  var _error = _interopRequireDefault(require("@webiny/error"));
15
-
16
12
  var _dayjs = _interopRequireDefault(require("dayjs"));
17
-
18
13
  var _utc = _interopRequireDefault(require("dayjs/plugin/utc"));
19
-
20
14
  var _cloneDeep = _interopRequireDefault(require("lodash/cloneDeep"));
21
-
22
15
  var _set = _interopRequireDefault(require("lodash/set"));
23
-
24
16
  var _types = require("../types");
25
-
26
- 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; }
27
-
28
- 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; }
29
-
30
17
  _dayjs.default.extend(_utc.default);
31
-
32
18
  function checkValidDateTime(datetime) {
33
19
  if (typeof datetime !== "string") {
34
20
  return;
35
21
  }
36
-
37
22
  if (!(0, _dayjs.default)(datetime).isValid()) {
38
23
  throw new _error.default({
39
24
  message: `Invalid input "datetime" should be an ISO string.`,
@@ -43,9 +28,7 @@ function checkValidDateTime(datetime) {
43
28
  }
44
29
  });
45
30
  }
46
-
47
31
  const today = _dayjs.default.utc();
48
-
49
32
  if ((0, _dayjs.default)(datetime).isBefore(today)) {
50
33
  throw new _error.default({
51
34
  message: `Cannot schedule for a past "datetime".`,
@@ -56,19 +39,15 @@ function checkValidDateTime(datetime) {
56
39
  });
57
40
  }
58
41
  }
59
-
60
42
  const getPendingRequiredSteps = (steps, predicate) => {
61
43
  return steps.filter(step => {
62
44
  const isRequiredStep = [_types.ApwWorkflowStepTypes.MANDATORY_BLOCKING, _types.ApwWorkflowStepTypes.MANDATORY_NON_BLOCKING].includes(step.type);
63
-
64
45
  if (!isRequiredStep) {
65
46
  return false;
66
47
  }
67
-
68
48
  return predicate(step);
69
49
  });
70
50
  };
71
-
72
51
  exports.getPendingRequiredSteps = getPendingRequiredSteps;
73
52
  const INITIAL_CONTENT_REVIEW_CONTENT_SCHEDULE_META = {
74
53
  scheduledOn: null,
@@ -76,7 +55,6 @@ const INITIAL_CONTENT_REVIEW_CONTENT_SCHEDULE_META = {
76
55
  scheduledActionId: null
77
56
  };
78
57
  exports.INITIAL_CONTENT_REVIEW_CONTENT_SCHEDULE_META = INITIAL_CONTENT_REVIEW_CONTENT_SCHEDULE_META;
79
-
80
58
  /**
81
59
  * Filter "content reviews" that are "underReview" and current user is a reviewer for the active step.
82
60
  * That is the user is able to provide sign-off or comment.
@@ -91,25 +69,20 @@ const filterContentReviewsByRequiresMyAttention = async params => {
91
69
  /**
92
70
  * Get all "content reviews" with status "underReview"
93
71
  */
94
-
95
- const newListParams = (0, _set.default)((0, _cloneDeep.default)(listParams), "where.status", _types.ApwContentReviewStatus.UNDER_REVIEW);
72
+ const newListParams = (0, _set.default)((0, _cloneDeep.default)(listParams), "where.reviewStatus", _types.ApwContentReviewStatus.UNDER_REVIEW);
96
73
  const [contentReviews, meta] = await listContentReviews(newListParams);
97
74
  const identity = getIdentity();
98
75
  const filteredItems = [];
99
76
  /**
100
77
  * Filter items where current user is a reviewer for the active step.
101
78
  */
102
-
103
79
  for (let i = 0; i < contentReviews.length; i++) {
104
80
  const contentReview = contentReviews[i];
105
81
  const activeStep = contentReview.steps.find(step => step.status === _types.ApwContentReviewStepStatus.ACTIVE);
106
-
107
82
  if (!activeStep) {
108
83
  continue;
109
84
  }
110
-
111
85
  let requiresMyAttention = false;
112
-
113
86
  for (let j = 0; j < activeStep.reviewers.length; j++) {
114
87
  const {
115
88
  id
@@ -117,26 +90,21 @@ const filterContentReviewsByRequiresMyAttention = async params => {
117
90
  /**
118
91
  * Load reviewer
119
92
  */
120
-
121
93
  const reviewer = await getReviewer(id);
122
94
  /**
123
95
  * Check if the current logged in user is the reviewer.
124
96
  */
125
-
126
97
  if (reviewer.identityId === identity.id) {
127
98
  requiresMyAttention = true;
128
99
  break;
129
100
  }
130
101
  }
131
-
132
102
  if (requiresMyAttention) {
133
103
  filteredItems.push(contentReview);
134
104
  }
135
105
  }
136
-
137
- return [filteredItems, _objectSpread(_objectSpread({}, meta), {}, {
106
+ return [filteredItems, (0, _objectSpread2.default)((0, _objectSpread2.default)({}, meta), {}, {
138
107
  totalCount: filteredItems.length
139
108
  })];
140
109
  };
141
-
142
110
  exports.filterContentReviewsByRequiresMyAttention = filterContentReviewsByRequiresMyAttention;
package/crud/utils.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"names":["dayjs","extend","utc","checkValidDateTime","datetime","isValid","Error","message","code","data","today","isBefore","getPendingRequiredSteps","steps","predicate","filter","step","isRequiredStep","ApwWorkflowStepTypes","MANDATORY_BLOCKING","MANDATORY_NON_BLOCKING","includes","type","INITIAL_CONTENT_REVIEW_CONTENT_SCHEDULE_META","scheduledOn","scheduledBy","scheduledActionId","filterContentReviewsByRequiresMyAttention","params","listContentReviews","listParams","getIdentity","getReviewer","newListParams","set","cloneDeep","ApwContentReviewStatus","UNDER_REVIEW","contentReviews","meta","identity","filteredItems","i","length","contentReview","activeStep","find","status","ApwContentReviewStepStatus","ACTIVE","requiresMyAttention","j","reviewers","id","reviewer","identityId","push","totalCount"],"sources":["utils.ts"],"sourcesContent":["import Error from \"@webiny/error\";\nimport dayjs from \"dayjs\";\nimport utc from \"dayjs/plugin/utc\";\nimport cloneDeep from \"lodash/cloneDeep\";\nimport set from \"lodash/set\";\nimport {\n ApwContentReview,\n ApwContentReviewListParams,\n ApwContentReviewStatus,\n ApwContentReviewStep,\n ApwContentReviewStepStatus,\n ApwWorkflowStepTypes,\n ListMeta\n} from \"~/types\";\nimport { CreateContentReviewMethodsParams } from \"./createContentReviewMethods\";\n\ndayjs.extend(utc);\n\nexport function checkValidDateTime(datetime: string | undefined): void {\n if (typeof datetime !== \"string\") {\n return;\n }\n\n if (!dayjs(datetime).isValid()) {\n throw new Error({\n message: `Invalid input \"datetime\" should be an ISO string.`,\n code: \"INVALID_DATETIME_FORMAT\",\n data: {\n datetime\n }\n });\n }\n const today = dayjs.utc();\n\n if (dayjs(datetime).isBefore(today)) {\n throw new Error({\n message: `Cannot schedule for a past \"datetime\".`,\n code: \"PAST_DATETIME\",\n data: {\n datetime\n }\n });\n }\n}\n\nexport interface GetPendingRequiredSteps {\n (\n steps: ApwContentReviewStep[],\n predicate: (step: ApwContentReviewStep) => boolean\n ): ApwContentReviewStep[];\n}\n\nexport const getPendingRequiredSteps: GetPendingRequiredSteps = (steps, predicate) => {\n return steps.filter(step => {\n const isRequiredStep = [\n ApwWorkflowStepTypes.MANDATORY_BLOCKING,\n ApwWorkflowStepTypes.MANDATORY_NON_BLOCKING\n ].includes(step.type);\n\n if (!isRequiredStep) {\n return false;\n }\n\n return predicate(step);\n });\n};\n\nexport const INITIAL_CONTENT_REVIEW_CONTENT_SCHEDULE_META = {\n scheduledOn: null,\n scheduledBy: null,\n scheduledActionId: null\n};\n\nexport interface FilterContentReviewsParams\n extends Pick<CreateContentReviewMethodsParams, \"getReviewer\" | \"getIdentity\"> {\n listParams: ApwContentReviewListParams;\n listContentReviews: CreateContentReviewMethodsParams[\"storageOperations\"][\"listContentReviews\"];\n}\n\n/**\n * Filter \"content reviews\" that are \"underReview\" and current user is a reviewer for the active step.\n * That is the user is able to provide sign-off or comment.\n */\nexport const filterContentReviewsByRequiresMyAttention = async (\n params: FilterContentReviewsParams\n): Promise<[ApwContentReview[], ListMeta]> => {\n const { listContentReviews, listParams, getIdentity, getReviewer } = params;\n /**\n * Get all \"content reviews\" with status \"underReview\"\n */\n const newListParams = set(\n cloneDeep(listParams),\n \"where.status\",\n ApwContentReviewStatus.UNDER_REVIEW\n );\n const [contentReviews, meta] = await listContentReviews(newListParams);\n\n const identity = getIdentity();\n const filteredItems = [];\n /**\n * Filter items where current user is a reviewer for the active step.\n */\n for (let i = 0; i < contentReviews.length; i++) {\n const contentReview = contentReviews[i];\n\n const activeStep = contentReview.steps.find(\n step => step.status === ApwContentReviewStepStatus.ACTIVE\n );\n\n if (!activeStep) {\n continue;\n }\n\n let requiresMyAttention = false;\n\n for (let j = 0; j < activeStep.reviewers.length; j++) {\n const { id } = activeStep.reviewers[j];\n /**\n * Load reviewer\n */\n const reviewer = await getReviewer(id);\n /**\n * Check if the current logged in user is the reviewer.\n */\n if (reviewer.identityId === identity.id) {\n requiresMyAttention = true;\n break;\n }\n }\n\n if (requiresMyAttention) {\n filteredItems.push(contentReview);\n }\n }\n\n return [\n filteredItems,\n {\n ...meta,\n totalCount: filteredItems.length\n }\n ];\n};\n"],"mappings":"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"}
1
+ {"version":3,"names":["_error","_interopRequireDefault","require","_dayjs","_utc","_cloneDeep","_set","_types","dayjs","extend","utc","checkValidDateTime","datetime","isValid","Error","message","code","data","today","isBefore","getPendingRequiredSteps","steps","predicate","filter","step","isRequiredStep","ApwWorkflowStepTypes","MANDATORY_BLOCKING","MANDATORY_NON_BLOCKING","includes","type","exports","INITIAL_CONTENT_REVIEW_CONTENT_SCHEDULE_META","scheduledOn","scheduledBy","scheduledActionId","filterContentReviewsByRequiresMyAttention","params","listContentReviews","listParams","getIdentity","getReviewer","newListParams","set","cloneDeep","ApwContentReviewStatus","UNDER_REVIEW","contentReviews","meta","identity","filteredItems","i","length","contentReview","activeStep","find","status","ApwContentReviewStepStatus","ACTIVE","requiresMyAttention","j","reviewers","id","reviewer","identityId","push","_objectSpread2","default","totalCount"],"sources":["utils.ts"],"sourcesContent":["import Error from \"@webiny/error\";\nimport dayjs from \"dayjs\";\nimport utc from \"dayjs/plugin/utc\";\nimport cloneDeep from \"lodash/cloneDeep\";\nimport set from \"lodash/set\";\nimport {\n ApwContentReview,\n ApwContentReviewListParams,\n ApwContentReviewStatus,\n ApwContentReviewStep,\n ApwContentReviewStepStatus,\n ApwWorkflowStepTypes,\n ListMeta\n} from \"~/types\";\nimport { CreateContentReviewMethodsParams } from \"./createContentReviewMethods\";\n\ndayjs.extend(utc);\n\nexport function checkValidDateTime(datetime: string | undefined): void {\n if (typeof datetime !== \"string\") {\n return;\n }\n\n if (!dayjs(datetime).isValid()) {\n throw new Error({\n message: `Invalid input \"datetime\" should be an ISO string.`,\n code: \"INVALID_DATETIME_FORMAT\",\n data: {\n datetime\n }\n });\n }\n const today = dayjs.utc();\n\n if (dayjs(datetime).isBefore(today)) {\n throw new Error({\n message: `Cannot schedule for a past \"datetime\".`,\n code: \"PAST_DATETIME\",\n data: {\n datetime\n }\n });\n }\n}\n\nexport interface GetPendingRequiredSteps {\n (\n steps: ApwContentReviewStep[],\n predicate: (step: ApwContentReviewStep) => boolean\n ): ApwContentReviewStep[];\n}\n\nexport const getPendingRequiredSteps: GetPendingRequiredSteps = (steps, predicate) => {\n return steps.filter(step => {\n const isRequiredStep = [\n ApwWorkflowStepTypes.MANDATORY_BLOCKING,\n ApwWorkflowStepTypes.MANDATORY_NON_BLOCKING\n ].includes(step.type);\n\n if (!isRequiredStep) {\n return false;\n }\n\n return predicate(step);\n });\n};\n\nexport const INITIAL_CONTENT_REVIEW_CONTENT_SCHEDULE_META = {\n scheduledOn: null,\n scheduledBy: null,\n scheduledActionId: null\n};\n\nexport interface FilterContentReviewsParams\n extends Pick<CreateContentReviewMethodsParams, \"getReviewer\" | \"getIdentity\"> {\n listParams: ApwContentReviewListParams;\n listContentReviews: CreateContentReviewMethodsParams[\"storageOperations\"][\"listContentReviews\"];\n}\n\n/**\n * Filter \"content reviews\" that are \"underReview\" and current user is a reviewer for the active step.\n * That is the user is able to provide sign-off or comment.\n */\nexport const filterContentReviewsByRequiresMyAttention = async (\n params: FilterContentReviewsParams\n): Promise<[ApwContentReview[], ListMeta]> => {\n const { listContentReviews, listParams, getIdentity, getReviewer } = params;\n /**\n * Get all \"content reviews\" with status \"underReview\"\n */\n const newListParams = set(\n cloneDeep(listParams),\n \"where.reviewStatus\",\n ApwContentReviewStatus.UNDER_REVIEW\n );\n const [contentReviews, meta] = await listContentReviews(newListParams);\n\n const identity = getIdentity();\n const filteredItems = [];\n /**\n * Filter items where current user is a reviewer for the active step.\n */\n for (let i = 0; i < contentReviews.length; i++) {\n const contentReview = contentReviews[i];\n\n const activeStep = contentReview.steps.find(\n step => step.status === ApwContentReviewStepStatus.ACTIVE\n );\n\n if (!activeStep) {\n continue;\n }\n\n let requiresMyAttention = false;\n\n for (let j = 0; j < activeStep.reviewers.length; j++) {\n const { id } = activeStep.reviewers[j];\n /**\n * Load reviewer\n */\n const reviewer = await getReviewer(id);\n /**\n * Check if the current logged in user is the reviewer.\n */\n if (reviewer.identityId === identity.id) {\n requiresMyAttention = true;\n break;\n }\n }\n\n if (requiresMyAttention) {\n filteredItems.push(contentReview);\n }\n }\n\n return [\n filteredItems,\n {\n ...meta,\n totalCount: filteredItems.length\n }\n ];\n};\n"],"mappings":"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"}
package/index.d.ts CHANGED
@@ -1,4 +1,3 @@
1
1
  import { CreateApwContextParams } from "./scheduler/types";
2
- export declare const createApwHeadlessCmsContext: (params: CreateApwContextParams) => import("@webiny/api").ContextPlugin<import("./types").ApwContext>;
3
- export declare const createApwPageBuilderContext: (params: CreateApwContextParams) => import("@webiny/api").ContextPlugin<import("./types").ApwContext>;
4
- export declare const createApwGraphQL: () => import("@webiny/api").ContextPlugin<import("./types").ApwContext>;
2
+ export declare const createApwPageBuilderContext: (params: CreateApwContextParams) => (import("@webiny/plugins/types").Plugin<Record<string, any>> | import("@webiny/plugins/types").PluginCollection | import("@webiny/api").ContextPlugin<import("./types").ApwContext> | import("@webiny/handler-graphql").GraphQLSchemaPlugin<import("@webiny/api-mailer/types").MailerContext>)[];
3
+ export declare const createApwGraphQL: () => import("@webiny/api").ContextPlugin<import("./types").ApwContext>[];
package/index.js CHANGED
@@ -1,34 +1,24 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
- exports.createApwPageBuilderContext = exports.createApwHeadlessCmsContext = exports.createApwGraphQL = void 0;
9
-
7
+ exports.createApwPageBuilderContext = exports.createApwGraphQL = void 0;
10
8
  var _graphql = _interopRequireDefault(require("./plugins/graphql"));
11
-
12
9
  var _context = require("./plugins/context");
13
-
10
+ var _apiMailer = require("@webiny/api-mailer");
11
+ var _apiAdminSettings = require("@webiny/api-admin-settings");
14
12
  /**
15
13
  * We have separated context and GraphQL creation so user can initialize only context if required.
16
14
  * GraphQL will not work without context, but context will without GraphQL.
17
15
  */
18
- const createApwHeadlessCmsContext = params => {
19
- return (0, _context.createApwHeadlessCmsContext)(params);
20
- };
21
-
22
- exports.createApwHeadlessCmsContext = createApwHeadlessCmsContext;
23
16
 
24
17
  const createApwPageBuilderContext = params => {
25
- return (0, _context.createApwPageBuilderContext)(params);
18
+ return [...(0, _apiAdminSettings.createAdminSettingsContext)(), ...(0, _apiMailer.createMailerContext)(), ...(0, _apiMailer.createMailerGraphQL)(), (0, _context.createApwPageBuilderContext)(params)];
26
19
  };
27
-
28
20
  exports.createApwPageBuilderContext = createApwPageBuilderContext;
29
-
30
21
  const createApwGraphQL = () => {
31
- return (0, _graphql.default)();
22
+ return [(0, _graphql.default)()];
32
23
  };
33
-
34
24
  exports.createApwGraphQL = createApwGraphQL;
package/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"names":["createApwHeadlessCmsContext","params","createHeadlessCms","createApwPageBuilderContext","createPageBuilder","createApwGraphQL","graphql"],"sources":["index.ts"],"sourcesContent":["/**\n * We have separated context and GraphQL creation so user can initialize only context if required.\n * GraphQL will not work without context, but context will without GraphQL.\n */\nimport graphql from \"~/plugins/graphql\";\nimport {\n createApwHeadlessCmsContext as createHeadlessCms,\n createApwPageBuilderContext as createPageBuilder\n} from \"./plugins/context\";\nimport { CreateApwContextParams } from \"./scheduler/types\";\n\nexport const createApwHeadlessCmsContext = (params: CreateApwContextParams) => {\n return createHeadlessCms(params);\n};\n\nexport const createApwPageBuilderContext = (params: CreateApwContextParams) => {\n return createPageBuilder(params);\n};\n\nexport const createApwGraphQL = () => {\n return graphql();\n};\n"],"mappings":";;;;;;;;;AAIA;;AACA;;AALA;AACA;AACA;AACA;AAQO,MAAMA,2BAA2B,GAAIC,MAAD,IAAoC;EAC3E,OAAO,IAAAC,oCAAA,EAAkBD,MAAlB,CAAP;AACH,CAFM;;;;AAIA,MAAME,2BAA2B,GAAIF,MAAD,IAAoC;EAC3E,OAAO,IAAAG,oCAAA,EAAkBH,MAAlB,CAAP;AACH,CAFM;;;;AAIA,MAAMI,gBAAgB,GAAG,MAAM;EAClC,OAAO,IAAAC,gBAAA,GAAP;AACH,CAFM"}
1
+ {"version":3,"names":["_graphql","_interopRequireDefault","require","_context","_apiMailer","_apiAdminSettings","createApwPageBuilderContext","params","createAdminSettingsContext","createMailerContext","createMailerGraphQL","createPageBuilder","exports","createApwGraphQL","graphql"],"sources":["index.ts"],"sourcesContent":["/**\n * We have separated context and GraphQL creation so user can initialize only context if required.\n * GraphQL will not work without context, but context will without GraphQL.\n */\nimport graphql from \"~/plugins/graphql\";\nimport { createApwPageBuilderContext as createPageBuilder } from \"./plugins/context\";\nimport { CreateApwContextParams } from \"./scheduler/types\";\nimport { createMailerContext, createMailerGraphQL } from \"@webiny/api-mailer\";\nimport { createAdminSettingsContext } from \"@webiny/api-admin-settings\";\n\nexport const createApwPageBuilderContext = (params: CreateApwContextParams) => {\n return [\n ...createAdminSettingsContext(),\n ...createMailerContext(),\n ...createMailerGraphQL(),\n createPageBuilder(params)\n ];\n};\n\nexport const createApwGraphQL = () => {\n return [graphql()];\n};\n"],"mappings":";;;;;;;AAIA,IAAAA,QAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AAEA,IAAAE,UAAA,GAAAF,OAAA;AACA,IAAAG,iBAAA,GAAAH,OAAA;AARA;AACA;AACA;AACA;;AAOO,MAAMI,2BAA2B,GAAIC,MAA8B,IAAK;EAC3E,OAAO,CACH,GAAG,IAAAC,4CAA0B,EAAC,CAAC,EAC/B,GAAG,IAAAC,8BAAmB,EAAC,CAAC,EACxB,GAAG,IAAAC,8BAAmB,EAAC,CAAC,EACxB,IAAAC,oCAAiB,EAACJ,MAAM,CAAC,CAC5B;AACL,CAAC;AAACK,OAAA,CAAAN,2BAAA,GAAAA,2BAAA;AAEK,MAAMO,gBAAgB,GAAGA,CAAA,KAAM;EAClC,OAAO,CAAC,IAAAC,gBAAO,EAAC,CAAC,CAAC;AACtB,CAAC;AAACF,OAAA,CAAAC,gBAAA,GAAAA,gBAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@webiny/api-apw",
3
- "version": "0.0.0-unstable.8c4d9f045a",
3
+ "version": "0.0.0-unstable.8feaff8c32",
4
4
  "keywords": [
5
5
  "apw:base"
6
6
  ],
@@ -14,53 +14,47 @@
14
14
  "author": "Webiny Ltd",
15
15
  "license": "MIT",
16
16
  "dependencies": {
17
- "@aws-sdk/client-cloudwatch-events": "3.142.0",
18
- "@babel/runtime": "7.18.9",
17
+ "@aws-sdk/client-cloudwatch-events": "3.54.1",
18
+ "@babel/runtime": "7.22.6",
19
19
  "@commodo/fields": "1.1.2-beta.20",
20
- "@webiny/api": "0.0.0-unstable.8c4d9f045a",
21
- "@webiny/api-headless-cms": "0.0.0-unstable.8c4d9f045a",
22
- "@webiny/api-i18n": "0.0.0-unstable.8c4d9f045a",
23
- "@webiny/api-i18n-ddb": "0.0.0-unstable.8c4d9f045a",
24
- "@webiny/api-page-builder": "0.0.0-unstable.8c4d9f045a",
25
- "@webiny/api-security": "0.0.0-unstable.8c4d9f045a",
26
- "@webiny/api-tenancy": "0.0.0-unstable.8c4d9f045a",
27
- "@webiny/api-wcp": "0.0.0-unstable.8c4d9f045a",
28
- "@webiny/db-dynamodb": "0.0.0-unstable.8c4d9f045a",
29
- "@webiny/error": "0.0.0-unstable.8c4d9f045a",
30
- "@webiny/handler": "0.0.0-unstable.8c4d9f045a",
31
- "@webiny/handler-client": "0.0.0-unstable.8c4d9f045a",
32
- "@webiny/handler-db": "0.0.0-unstable.8c4d9f045a",
33
- "@webiny/handler-graphql": "0.0.0-unstable.8c4d9f045a",
34
- "@webiny/handler-logs": "0.0.0-unstable.8c4d9f045a",
35
- "@webiny/plugins": "0.0.0-unstable.8c4d9f045a",
36
- "@webiny/pubsub": "0.0.0-unstable.8c4d9f045a",
37
- "@webiny/validation": "0.0.0-unstable.8c4d9f045a",
38
- "dayjs": "1.11.4",
39
- "lodash": "4.17.21",
40
- "mdbid": "1.0.0",
41
- "nanoid": "3.3.4"
20
+ "@webiny/api": "0.0.0-unstable.8feaff8c32",
21
+ "@webiny/api-admin-settings": "0.0.0-unstable.8feaff8c32",
22
+ "@webiny/api-headless-cms": "0.0.0-unstable.8feaff8c32",
23
+ "@webiny/api-i18n": "0.0.0-unstable.8feaff8c32",
24
+ "@webiny/api-mailer": "0.0.0-unstable.8feaff8c32",
25
+ "@webiny/api-page-builder": "0.0.0-unstable.8feaff8c32",
26
+ "@webiny/api-security": "0.0.0-unstable.8feaff8c32",
27
+ "@webiny/api-tenancy": "0.0.0-unstable.8feaff8c32",
28
+ "@webiny/api-wcp": "0.0.0-unstable.8feaff8c32",
29
+ "@webiny/db-dynamodb": "0.0.0-unstable.8feaff8c32",
30
+ "@webiny/error": "0.0.0-unstable.8feaff8c32",
31
+ "@webiny/handler": "0.0.0-unstable.8feaff8c32",
32
+ "@webiny/handler-client": "0.0.0-unstable.8feaff8c32",
33
+ "@webiny/handler-db": "0.0.0-unstable.8feaff8c32",
34
+ "@webiny/handler-graphql": "0.0.0-unstable.8feaff8c32",
35
+ "@webiny/handler-logs": "0.0.0-unstable.8feaff8c32",
36
+ "@webiny/plugins": "0.0.0-unstable.8feaff8c32",
37
+ "@webiny/pubsub": "0.0.0-unstable.8feaff8c32",
38
+ "@webiny/utils": "0.0.0-unstable.8feaff8c32",
39
+ "@webiny/validation": "0.0.0-unstable.8feaff8c32",
40
+ "dayjs": "1.11.7",
41
+ "lodash": "4.17.21"
42
42
  },
43
43
  "devDependencies": {
44
- "@babel/cli": "^7.5.5",
45
- "@babel/core": "^7.5.5",
46
- "@babel/preset-env": "^7.5.5",
47
- "@babel/preset-flow": "^7.0.0",
48
- "@webiny/api-headless-cms-ddb": "^0.0.0-unstable.8c4d9f045a",
49
- "@webiny/api-page-builder-so-ddb": "^0.0.0-unstable.8c4d9f045a",
50
- "@webiny/api-security-so-ddb": "^0.0.0-unstable.8c4d9f045a",
51
- "@webiny/api-tenancy-so-ddb": "^0.0.0-unstable.8c4d9f045a",
52
- "@webiny/cli": "^0.0.0-unstable.8c4d9f045a",
53
- "@webiny/handler-aws": "^0.0.0-unstable.8c4d9f045a",
54
- "@webiny/project-utils": "^0.0.0-unstable.8c4d9f045a",
55
- "@webiny/wcp": "^0.0.0-unstable.8c4d9f045a",
56
- "get-yarn-workspaces": "^1.0.2",
57
- "graphql": "^15.7.2",
58
- "jest": "^28.1.0",
59
- "mdbid": "^1.0.0",
60
- "prettier": "^2.3.2",
61
- "rimraf": "^3.0.2",
62
- "sinon": "^9.0.2",
63
- "ttypescript": "^1.5.12",
44
+ "@babel/cli": "7.22.6",
45
+ "@babel/core": "7.22.8",
46
+ "@babel/preset-env": "7.22.7",
47
+ "@webiny/cli": "0.0.0-unstable.8feaff8c32",
48
+ "@webiny/handler-aws": "0.0.0-unstable.8feaff8c32",
49
+ "@webiny/project-utils": "0.0.0-unstable.8feaff8c32",
50
+ "@webiny/wcp": "0.0.0-unstable.8feaff8c32",
51
+ "get-yarn-workspaces": "1.0.2",
52
+ "graphql": "15.8.0",
53
+ "jest": "29.5.0",
54
+ "prettier": "2.8.8",
55
+ "rimraf": "3.0.2",
56
+ "sinon": "9.2.4",
57
+ "ttypescript": "1.5.15",
64
58
  "typescript": "4.7.4"
65
59
  },
66
60
  "publishConfig": {
@@ -71,5 +65,5 @@
71
65
  "build": "yarn webiny run build",
72
66
  "watch": "yarn webiny run watch"
73
67
  },
74
- "gitHead": "5f904a53a5956269bd80a9c084cc04f92b824d36"
68
+ "gitHead": "8feaff8c32ad81701938e9e3eadd836c8eb2fcb1"
75
69
  }
@@ -1,51 +1,36 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports.CmsEntryApwSettingsGetterPlugin = void 0;
9
-
10
8
  var _ContentApwSettingsPlugin = require("../../ContentApwSettingsPlugin");
11
-
12
9
  var _types = require("../../types");
13
-
14
10
  var _set = _interopRequireDefault(require("lodash/set"));
15
-
16
11
  class CmsEntryApwSettingsGetterPlugin extends _ContentApwSettingsPlugin.ContentApwSettingsPlugin {
17
12
  canUse(type) {
18
13
  return type === _types.ApwContentTypes.CMS_ENTRY;
19
14
  }
20
-
21
15
  setWorkflowId(entry, id) {
22
16
  entry.meta = (0, _set.default)(entry.meta || {}, "apw.workflowId", id);
23
17
  }
24
-
25
18
  getWorkflowId(entry) {
26
19
  var _entry$meta$apw;
27
-
28
20
  if (!entry.meta) {
29
21
  return null;
30
22
  }
31
-
32
23
  return ((_entry$meta$apw = entry.meta.apw) === null || _entry$meta$apw === void 0 ? void 0 : _entry$meta$apw.workflowId) || null;
33
24
  }
34
-
35
25
  setContentReviewId(entry, id) {
36
26
  entry.meta = (0, _set.default)(entry.meta || {}, "apw.contentReviewId", id);
37
27
  }
38
-
39
28
  getContentReviewId(entry) {
40
29
  var _entry$meta$apw2;
41
-
42
30
  if (!entry.meta) {
43
31
  return null;
44
32
  }
45
-
46
33
  return ((_entry$meta$apw2 = entry.meta.apw) === null || _entry$meta$apw2 === void 0 ? void 0 : _entry$meta$apw2.contentReviewId) || null;
47
34
  }
48
-
49
35
  }
50
-
51
36
  exports.CmsEntryApwSettingsGetterPlugin = CmsEntryApwSettingsGetterPlugin;
@@ -1 +1 @@
1
- {"version":3,"names":["CmsEntryApwSettingsGetterPlugin","ContentApwSettingsPlugin","canUse","type","ApwContentTypes","CMS_ENTRY","setWorkflowId","entry","id","meta","set","getWorkflowId","apw","workflowId","setContentReviewId","getContentReviewId","contentReviewId"],"sources":["CmsEntryApwSettingsGetterPlugin.ts"],"sourcesContent":["import { ContentApwSettingsPlugin } from \"~/ContentApwSettingsPlugin\";\nimport { CmsEntry } from \"@webiny/api-headless-cms/types\";\nimport { ApwContentTypes } from \"~/types\";\nimport set from \"lodash/set\";\n\nexport class CmsEntryApwSettingsGetterPlugin extends ContentApwSettingsPlugin {\n public override canUse(type: ApwContentTypes): boolean {\n return type === ApwContentTypes.CMS_ENTRY;\n }\n\n public override setWorkflowId(entry: CmsEntry, id: string | null) {\n entry.meta = set(entry.meta || {}, \"apw.workflowId\", id);\n }\n\n public override getWorkflowId(entry: CmsEntry): string | null {\n if (!entry.meta) {\n return null;\n }\n return entry.meta.apw?.workflowId || null;\n }\n\n public override setContentReviewId(entry: CmsEntry, id: string | null) {\n entry.meta = set(entry.meta || {}, \"apw.contentReviewId\", id);\n }\n public override getContentReviewId(entry: CmsEntry): string | null {\n if (!entry.meta) {\n return null;\n }\n return entry.meta.apw?.contentReviewId || null;\n }\n}\n"],"mappings":";;;;;;;;;AAAA;;AAEA;;AACA;;AAEO,MAAMA,+BAAN,SAA8CC,kDAA9C,CAAuE;EAC1DC,MAAM,CAACC,IAAD,EAAiC;IACnD,OAAOA,IAAI,KAAKC,sBAAA,CAAgBC,SAAhC;EACH;;EAEeC,aAAa,CAACC,KAAD,EAAkBC,EAAlB,EAAqC;IAC9DD,KAAK,CAACE,IAAN,GAAa,IAAAC,YAAA,EAAIH,KAAK,CAACE,IAAN,IAAc,EAAlB,EAAsB,gBAAtB,EAAwCD,EAAxC,CAAb;EACH;;EAEeG,aAAa,CAACJ,KAAD,EAAiC;IAAA;;IAC1D,IAAI,CAACA,KAAK,CAACE,IAAX,EAAiB;MACb,OAAO,IAAP;IACH;;IACD,OAAO,oBAAAF,KAAK,CAACE,IAAN,CAAWG,GAAX,oEAAgBC,UAAhB,KAA8B,IAArC;EACH;;EAEeC,kBAAkB,CAACP,KAAD,EAAkBC,EAAlB,EAAqC;IACnED,KAAK,CAACE,IAAN,GAAa,IAAAC,YAAA,EAAIH,KAAK,CAACE,IAAN,IAAc,EAAlB,EAAsB,qBAAtB,EAA6CD,EAA7C,CAAb;EACH;;EACeO,kBAAkB,CAACR,KAAD,EAAiC;IAAA;;IAC/D,IAAI,CAACA,KAAK,CAACE,IAAX,EAAiB;MACb,OAAO,IAAP;IACH;;IACD,OAAO,qBAAAF,KAAK,CAACE,IAAN,CAAWG,GAAX,sEAAgBI,eAAhB,KAAmC,IAA1C;EACH;;AAxByE"}
1
+ {"version":3,"names":["_ContentApwSettingsPlugin","require","_types","_set","_interopRequireDefault","CmsEntryApwSettingsGetterPlugin","ContentApwSettingsPlugin","canUse","type","ApwContentTypes","CMS_ENTRY","setWorkflowId","entry","id","meta","set","getWorkflowId","_entry$meta$apw","apw","workflowId","setContentReviewId","getContentReviewId","_entry$meta$apw2","contentReviewId","exports"],"sources":["CmsEntryApwSettingsGetterPlugin.ts"],"sourcesContent":["import { ContentApwSettingsPlugin } from \"~/ContentApwSettingsPlugin\";\nimport { CmsEntry } from \"@webiny/api-headless-cms/types\";\nimport { ApwContentTypes } from \"~/types\";\nimport set from \"lodash/set\";\n\nexport class CmsEntryApwSettingsGetterPlugin extends ContentApwSettingsPlugin {\n public override canUse(type: ApwContentTypes): boolean {\n return type === ApwContentTypes.CMS_ENTRY;\n }\n\n public override setWorkflowId(entry: CmsEntry, id: string | null) {\n entry.meta = set(entry.meta || {}, \"apw.workflowId\", id);\n }\n\n public override getWorkflowId(entry: CmsEntry): string | null {\n if (!entry.meta) {\n return null;\n }\n return entry.meta.apw?.workflowId || null;\n }\n\n public override setContentReviewId(entry: CmsEntry, id: string | null) {\n entry.meta = set(entry.meta || {}, \"apw.contentReviewId\", id);\n }\n public override getContentReviewId(entry: CmsEntry): string | null {\n if (!entry.meta) {\n return null;\n }\n return entry.meta.apw?.contentReviewId || null;\n }\n}\n"],"mappings":";;;;;;;AAAA,IAAAA,yBAAA,GAAAC,OAAA;AAEA,IAAAC,MAAA,GAAAD,OAAA;AACA,IAAAE,IAAA,GAAAC,sBAAA,CAAAH,OAAA;AAEO,MAAMI,+BAA+B,SAASC,kDAAwB,CAAC;EAC1DC,MAAMA,CAACC,IAAqB,EAAW;IACnD,OAAOA,IAAI,KAAKC,sBAAe,CAACC,SAAS;EAC7C;EAEgBC,aAAaA,CAACC,KAAe,EAAEC,EAAiB,EAAE;IAC9DD,KAAK,CAACE,IAAI,GAAG,IAAAC,YAAG,EAACH,KAAK,CAACE,IAAI,IAAI,CAAC,CAAC,EAAE,gBAAgB,EAAED,EAAE,CAAC;EAC5D;EAEgBG,aAAaA,CAACJ,KAAe,EAAiB;IAAA,IAAAK,eAAA;IAC1D,IAAI,CAACL,KAAK,CAACE,IAAI,EAAE;MACb,OAAO,IAAI;IACf;IACA,OAAO,EAAAG,eAAA,GAAAL,KAAK,CAACE,IAAI,CAACI,GAAG,cAAAD,eAAA,uBAAdA,eAAA,CAAgBE,UAAU,KAAI,IAAI;EAC7C;EAEgBC,kBAAkBA,CAACR,KAAe,EAAEC,EAAiB,EAAE;IACnED,KAAK,CAACE,IAAI,GAAG,IAAAC,YAAG,EAACH,KAAK,CAACE,IAAI,IAAI,CAAC,CAAC,EAAE,qBAAqB,EAAED,EAAE,CAAC;EACjE;EACgBQ,kBAAkBA,CAACT,KAAe,EAAiB;IAAA,IAAAU,gBAAA;IAC/D,IAAI,CAACV,KAAK,CAACE,IAAI,EAAE;MACb,OAAO,IAAI;IACf;IACA,OAAO,EAAAQ,gBAAA,GAAAV,KAAK,CAACE,IAAI,CAACI,GAAG,cAAAI,gBAAA,uBAAdA,gBAAA,CAAgBC,eAAe,KAAI,IAAI;EAClD;AACJ;AAACC,OAAA,CAAAnB,+BAAA,GAAAA,+BAAA"}
@@ -1,22 +1,13 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports.apwEntryPlugins = void 0;
9
-
10
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
-
8
+ var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
12
9
  var _types = require("../../types");
13
-
14
10
  var _utils = require("./utils");
15
-
16
- 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; }
17
-
18
- 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; }
19
-
20
11
  const apwEntryPlugins = params => {
21
12
  const {
22
13
  cms,
@@ -25,13 +16,11 @@ const apwEntryPlugins = params => {
25
16
  apw.addContentGetter(_types.ApwContentTypes.CMS_ENTRY, async (id, settings) => {
26
17
  const model = await (0, _utils.fetchModel)(cms, id, settings);
27
18
  const item = await cms.getEntryById(model, id);
28
-
29
19
  if (!item) {
30
20
  return null;
31
21
  }
32
-
33
- return _objectSpread(_objectSpread({}, item), {}, {
34
- meta: _objectSpread({}, item.meta || {}),
22
+ return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, item), {}, {
23
+ meta: (0, _objectSpread2.default)({}, item.meta || {}),
35
24
  title: (0, _utils.getEntryTitle)(model, item)
36
25
  });
37
26
  });
@@ -46,5 +35,4 @@ const apwEntryPlugins = params => {
46
35
  return true;
47
36
  });
48
37
  };
49
-
50
38
  exports.apwEntryPlugins = apwEntryPlugins;
@@ -1 +1 @@
1
- {"version":3,"names":["apwEntryPlugins","params","cms","apw","addContentGetter","ApwContentTypes","CMS_ENTRY","id","settings","model","fetchModel","item","getEntryById","meta","title","getEntryTitle","addContentPublisher","publishEntry","addContentUnPublisher","unpublishEntry"],"sources":["apwEntryPlugins.ts"],"sourcesContent":["import { AdvancedPublishingWorkflow, ApwContentTypes } from \"~/types\";\nimport { fetchModel, getEntryTitle } from \"./utils\";\nimport { HeadlessCms } from \"@webiny/api-headless-cms/types\";\n\ninterface ApwEntryPlugins {\n apw: AdvancedPublishingWorkflow;\n cms: HeadlessCms;\n}\nexport const apwEntryPlugins = (params: ApwEntryPlugins) => {\n const { cms, apw } = params;\n\n apw.addContentGetter(ApwContentTypes.CMS_ENTRY, async (id, settings) => {\n const model = await fetchModel(cms, id, settings);\n\n const item = await cms.getEntryById(model, id);\n\n if (!item) {\n return null;\n }\n\n return {\n ...item,\n meta: {\n ...(item.meta || {})\n },\n title: getEntryTitle(model, item)\n };\n });\n\n apw.addContentPublisher(ApwContentTypes.CMS_ENTRY, async (id, settings) => {\n const model = await fetchModel(cms, id, settings);\n await cms.publishEntry(model, id);\n return true;\n });\n\n apw.addContentUnPublisher(ApwContentTypes.CMS_ENTRY, async (id, settings) => {\n const model = await fetchModel(cms, id, settings);\n await cms.unpublishEntry(model, id);\n return true;\n });\n};\n"],"mappings":";;;;;;;;;;;AAAA;;AACA;;;;;;AAOO,MAAMA,eAAe,GAAIC,MAAD,IAA6B;EACxD,MAAM;IAAEC,GAAF;IAAOC;EAAP,IAAeF,MAArB;EAEAE,GAAG,CAACC,gBAAJ,CAAqBC,sBAAA,CAAgBC,SAArC,EAAgD,OAAOC,EAAP,EAAWC,QAAX,KAAwB;IACpE,MAAMC,KAAK,GAAG,MAAM,IAAAC,iBAAA,EAAWR,GAAX,EAAgBK,EAAhB,EAAoBC,QAApB,CAApB;IAEA,MAAMG,IAAI,GAAG,MAAMT,GAAG,CAACU,YAAJ,CAAiBH,KAAjB,EAAwBF,EAAxB,CAAnB;;IAEA,IAAI,CAACI,IAAL,EAAW;MACP,OAAO,IAAP;IACH;;IAED,uCACOA,IADP;MAEIE,IAAI,oBACIF,IAAI,CAACE,IAAL,IAAa,EADjB,CAFR;MAKIC,KAAK,EAAE,IAAAC,oBAAA,EAAcN,KAAd,EAAqBE,IAArB;IALX;EAOH,CAhBD;EAkBAR,GAAG,CAACa,mBAAJ,CAAwBX,sBAAA,CAAgBC,SAAxC,EAAmD,OAAOC,EAAP,EAAWC,QAAX,KAAwB;IACvE,MAAMC,KAAK,GAAG,MAAM,IAAAC,iBAAA,EAAWR,GAAX,EAAgBK,EAAhB,EAAoBC,QAApB,CAApB;IACA,MAAMN,GAAG,CAACe,YAAJ,CAAiBR,KAAjB,EAAwBF,EAAxB,CAAN;IACA,OAAO,IAAP;EACH,CAJD;EAMAJ,GAAG,CAACe,qBAAJ,CAA0Bb,sBAAA,CAAgBC,SAA1C,EAAqD,OAAOC,EAAP,EAAWC,QAAX,KAAwB;IACzE,MAAMC,KAAK,GAAG,MAAM,IAAAC,iBAAA,EAAWR,GAAX,EAAgBK,EAAhB,EAAoBC,QAApB,CAApB;IACA,MAAMN,GAAG,CAACiB,cAAJ,CAAmBV,KAAnB,EAA0BF,EAA1B,CAAN;IACA,OAAO,IAAP;EACH,CAJD;AAKH,CAhCM"}
1
+ {"version":3,"names":["_types","require","_utils","apwEntryPlugins","params","cms","apw","addContentGetter","ApwContentTypes","CMS_ENTRY","id","settings","model","fetchModel","item","getEntryById","_objectSpread2","default","meta","title","getEntryTitle","addContentPublisher","publishEntry","addContentUnPublisher","unpublishEntry","exports"],"sources":["apwEntryPlugins.ts"],"sourcesContent":["import { AdvancedPublishingWorkflow, ApwContentTypes } from \"~/types\";\nimport { fetchModel, getEntryTitle } from \"./utils\";\nimport { HeadlessCms } from \"@webiny/api-headless-cms/types\";\n\ninterface ApwEntryPlugins {\n apw: AdvancedPublishingWorkflow;\n cms: HeadlessCms;\n}\nexport const apwEntryPlugins = (params: ApwEntryPlugins) => {\n const { cms, apw } = params;\n\n apw.addContentGetter(ApwContentTypes.CMS_ENTRY, async (id, settings) => {\n const model = await fetchModel(cms, id, settings);\n\n const item = await cms.getEntryById(model, id);\n\n if (!item) {\n return null;\n }\n\n return {\n ...item,\n meta: {\n ...(item.meta || {})\n },\n title: getEntryTitle(model, item)\n };\n });\n\n apw.addContentPublisher(ApwContentTypes.CMS_ENTRY, async (id, settings) => {\n const model = await fetchModel(cms, id, settings);\n await cms.publishEntry(model, id);\n return true;\n });\n\n apw.addContentUnPublisher(ApwContentTypes.CMS_ENTRY, async (id, settings) => {\n const model = await fetchModel(cms, id, settings);\n await cms.unpublishEntry(model, id);\n return true;\n });\n};\n"],"mappings":";;;;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AAOO,MAAME,eAAe,GAAIC,MAAuB,IAAK;EACxD,MAAM;IAAEC,GAAG;IAAEC;EAAI,CAAC,GAAGF,MAAM;EAE3BE,GAAG,CAACC,gBAAgB,CAACC,sBAAe,CAACC,SAAS,EAAE,OAAOC,EAAE,EAAEC,QAAQ,KAAK;IACpE,MAAMC,KAAK,GAAG,MAAM,IAAAC,iBAAU,EAACR,GAAG,EAAEK,EAAE,EAAEC,QAAQ,CAAC;IAEjD,MAAMG,IAAI,GAAG,MAAMT,GAAG,CAACU,YAAY,CAACH,KAAK,EAAEF,EAAE,CAAC;IAE9C,IAAI,CAACI,IAAI,EAAE;MACP,OAAO,IAAI;IACf;IAEA,WAAAE,cAAA,CAAAC,OAAA,MAAAD,cAAA,CAAAC,OAAA,MACOH,IAAI;MACPI,IAAI,MAAAF,cAAA,CAAAC,OAAA,MACIH,IAAI,CAACI,IAAI,IAAI,CAAC,CAAC,CACtB;MACDC,KAAK,EAAE,IAAAC,oBAAa,EAACR,KAAK,EAAEE,IAAI;IAAC;EAEzC,CAAC,CAAC;EAEFR,GAAG,CAACe,mBAAmB,CAACb,sBAAe,CAACC,SAAS,EAAE,OAAOC,EAAE,EAAEC,QAAQ,KAAK;IACvE,MAAMC,KAAK,GAAG,MAAM,IAAAC,iBAAU,EAACR,GAAG,EAAEK,EAAE,EAAEC,QAAQ,CAAC;IACjD,MAAMN,GAAG,CAACiB,YAAY,CAACV,KAAK,EAAEF,EAAE,CAAC;IACjC,OAAO,IAAI;EACf,CAAC,CAAC;EAEFJ,GAAG,CAACiB,qBAAqB,CAACf,sBAAe,CAACC,SAAS,EAAE,OAAOC,EAAE,EAAEC,QAAQ,KAAK;IACzE,MAAMC,KAAK,GAAG,MAAM,IAAAC,iBAAU,EAACR,GAAG,EAAEK,EAAE,EAAEC,QAAQ,CAAC;IACjD,MAAMN,GAAG,CAACmB,cAAc,CAACZ,KAAK,EAAEF,EAAE,CAAC;IACnC,OAAO,IAAI;EACf,CAAC,CAAC;AACN,CAAC;AAACe,OAAA,CAAAtB,eAAA,GAAAA,eAAA"}
@@ -4,19 +4,16 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.apwCmsHooks = void 0;
7
-
8
7
  var _apwEntryPlugins = require("./apwEntryPlugins");
9
-
10
8
  var _linkContentReviewToEntry = require("./linkContentReviewToEntry");
11
-
12
9
  var _linkWorkflowToEntry = require("./linkWorkflowToEntry");
13
-
14
10
  var _triggerContentReview = require("./triggerContentReview");
15
-
16
11
  var _updateContentReviewStatus = require("./updateContentReviewStatus");
17
-
18
12
  var _CmsEntryApwSettingsGetterPlugin = require("./CmsEntryApwSettingsGetterPlugin");
19
-
13
+ var _commentNotification = require("./notifications/commentNotification");
14
+ var _contentUrl = require("./notifications/contentUrl");
15
+ var _changeRequestNotification = require("./notifications/changeRequestNotification");
16
+ var _contentReviewNotification = require("./notifications/contentReviewNotification");
20
17
  const apwCmsHooks = params => {
21
18
  /**
22
19
  * We do not need to assign anything if no apw or cms in the context.
@@ -25,13 +22,11 @@ const apwCmsHooks = params => {
25
22
  if (!params.apw || !params.cms) {
26
23
  return;
27
24
  }
28
-
29
- params.plugins.register(new _CmsEntryApwSettingsGetterPlugin.CmsEntryApwSettingsGetterPlugin());
25
+ params.plugins.register([new _CmsEntryApwSettingsGetterPlugin.CmsEntryApwSettingsGetterPlugin(), (0, _commentNotification.createCommentNotification)(), (0, _changeRequestNotification.createChangeRequestNotification)(), (0, _contentUrl.createContentUrlPlugin)(), (0, _contentReviewNotification.createContentReviewNotification)()]);
30
26
  (0, _apwEntryPlugins.apwEntryPlugins)(params);
31
27
  (0, _linkContentReviewToEntry.linkContentReviewToEntry)(params);
32
28
  (0, _linkWorkflowToEntry.linkWorkflowToEntry)(params);
33
29
  (0, _triggerContentReview.triggerContentReview)(params);
34
30
  (0, _updateContentReviewStatus.updateContentReviewStatus)(params);
35
31
  };
36
-
37
32
  exports.apwCmsHooks = apwCmsHooks;
@@ -1 +1 @@
1
- {"version":3,"names":["apwCmsHooks","params","apw","cms","plugins","register","CmsEntryApwSettingsGetterPlugin","apwEntryPlugins","linkContentReviewToEntry","linkWorkflowToEntry","triggerContentReview","updateContentReviewStatus"],"sources":["index.ts"],"sourcesContent":["import { AdvancedPublishingWorkflow } from \"~/types\";\nimport { apwEntryPlugins } from \"~/plugins/cms/apwEntryPlugins\";\nimport { linkContentReviewToEntry } from \"~/plugins/cms/linkContentReviewToEntry\";\nimport { linkWorkflowToEntry } from \"~/plugins/cms/linkWorkflowToEntry\";\nimport { triggerContentReview } from \"~/plugins/cms/triggerContentReview\";\nimport { updateContentReviewStatus } from \"~/plugins/cms/updateContentReviewStatus\";\nimport { HeadlessCms } from \"@webiny/api-headless-cms/types\";\nimport { Security } from \"@webiny/api-security/types\";\nimport { PluginsContainer } from \"@webiny/plugins\";\nimport { CmsEntryApwSettingsGetterPlugin } from \"~/plugins/cms/CmsEntryApwSettingsGetterPlugin\";\n\ninterface ApwCmsHooksParams {\n apw: AdvancedPublishingWorkflow;\n cms: HeadlessCms;\n plugins: PluginsContainer;\n security: Security;\n}\nexport const apwCmsHooks = (params: ApwCmsHooksParams) => {\n /**\n * We do not need to assign anything if no apw or cms in the context.\n * This might happen on options request.\n */\n if (!params.apw || !params.cms) {\n return;\n }\n\n params.plugins.register(new CmsEntryApwSettingsGetterPlugin());\n\n apwEntryPlugins(params);\n\n linkContentReviewToEntry(params);\n\n linkWorkflowToEntry(params);\n\n triggerContentReview(params);\n\n updateContentReviewStatus(params);\n};\n"],"mappings":";;;;;;;AACA;;AACA;;AACA;;AACA;;AACA;;AAIA;;AAQO,MAAMA,WAAW,GAAIC,MAAD,IAA+B;EACtD;AACJ;AACA;AACA;EACI,IAAI,CAACA,MAAM,CAACC,GAAR,IAAe,CAACD,MAAM,CAACE,GAA3B,EAAgC;IAC5B;EACH;;EAEDF,MAAM,CAACG,OAAP,CAAeC,QAAf,CAAwB,IAAIC,gEAAJ,EAAxB;EAEA,IAAAC,gCAAA,EAAgBN,MAAhB;EAEA,IAAAO,kDAAA,EAAyBP,MAAzB;EAEA,IAAAQ,wCAAA,EAAoBR,MAApB;EAEA,IAAAS,0CAAA,EAAqBT,MAArB;EAEA,IAAAU,oDAAA,EAA0BV,MAA1B;AACH,CApBM"}
1
+ {"version":3,"names":["_apwEntryPlugins","require","_linkContentReviewToEntry","_linkWorkflowToEntry","_triggerContentReview","_updateContentReviewStatus","_CmsEntryApwSettingsGetterPlugin","_commentNotification","_contentUrl","_changeRequestNotification","_contentReviewNotification","apwCmsHooks","params","apw","cms","plugins","register","CmsEntryApwSettingsGetterPlugin","createCommentNotification","createChangeRequestNotification","createContentUrlPlugin","createContentReviewNotification","apwEntryPlugins","linkContentReviewToEntry","linkWorkflowToEntry","triggerContentReview","updateContentReviewStatus","exports"],"sources":["index.ts"],"sourcesContent":["import { AdvancedPublishingWorkflow } from \"~/types\";\nimport { apwEntryPlugins } from \"./apwEntryPlugins\";\nimport { linkContentReviewToEntry } from \"./linkContentReviewToEntry\";\nimport { linkWorkflowToEntry } from \"./linkWorkflowToEntry\";\nimport { triggerContentReview } from \"./triggerContentReview\";\nimport { updateContentReviewStatus } from \"./updateContentReviewStatus\";\nimport { HeadlessCms } from \"@webiny/api-headless-cms/types\";\nimport { Security } from \"@webiny/api-security/types\";\nimport { PluginsContainer } from \"@webiny/plugins\";\nimport { CmsEntryApwSettingsGetterPlugin } from \"./CmsEntryApwSettingsGetterPlugin\";\nimport { createCommentNotification } from \"./notifications/commentNotification\";\nimport { createContentUrlPlugin } from \"./notifications/contentUrl\";\nimport { createChangeRequestNotification } from \"./notifications/changeRequestNotification\";\nimport { createContentReviewNotification } from \"./notifications/contentReviewNotification\";\n\ninterface ApwCmsHooksParams {\n apw: AdvancedPublishingWorkflow;\n cms: HeadlessCms;\n plugins: PluginsContainer;\n security: Security;\n}\nexport const apwCmsHooks = (params: ApwCmsHooksParams) => {\n /**\n * We do not need to assign anything if no apw or cms in the context.\n * This might happen on options request.\n */\n if (!params.apw || !params.cms) {\n return;\n }\n\n params.plugins.register([\n new CmsEntryApwSettingsGetterPlugin(),\n createCommentNotification(),\n createChangeRequestNotification(),\n createContentUrlPlugin(),\n createContentReviewNotification()\n ]);\n\n apwEntryPlugins(params);\n\n linkContentReviewToEntry(params);\n\n linkWorkflowToEntry(params);\n\n triggerContentReview(params);\n\n updateContentReviewStatus(params);\n};\n"],"mappings":";;;;;;AACA,IAAAA,gBAAA,GAAAC,OAAA;AACA,IAAAC,yBAAA,GAAAD,OAAA;AACA,IAAAE,oBAAA,GAAAF,OAAA;AACA,IAAAG,qBAAA,GAAAH,OAAA;AACA,IAAAI,0BAAA,GAAAJ,OAAA;AAIA,IAAAK,gCAAA,GAAAL,OAAA;AACA,IAAAM,oBAAA,GAAAN,OAAA;AACA,IAAAO,WAAA,GAAAP,OAAA;AACA,IAAAQ,0BAAA,GAAAR,OAAA;AACA,IAAAS,0BAAA,GAAAT,OAAA;AAQO,MAAMU,WAAW,GAAIC,MAAyB,IAAK;EACtD;AACJ;AACA;AACA;EACI,IAAI,CAACA,MAAM,CAACC,GAAG,IAAI,CAACD,MAAM,CAACE,GAAG,EAAE;IAC5B;EACJ;EAEAF,MAAM,CAACG,OAAO,CAACC,QAAQ,CAAC,CACpB,IAAIC,gEAA+B,CAAC,CAAC,EACrC,IAAAC,8CAAyB,EAAC,CAAC,EAC3B,IAAAC,0DAA+B,EAAC,CAAC,EACjC,IAAAC,kCAAsB,EAAC,CAAC,EACxB,IAAAC,0DAA+B,EAAC,CAAC,CACpC,CAAC;EAEF,IAAAC,gCAAe,EAACV,MAAM,CAAC;EAEvB,IAAAW,kDAAwB,EAACX,MAAM,CAAC;EAEhC,IAAAY,wCAAmB,EAACZ,MAAM,CAAC;EAE3B,IAAAa,0CAAoB,EAACb,MAAM,CAAC;EAE5B,IAAAc,oDAAyB,EAACd,MAAM,CAAC;AACrC,CAAC;AAACe,OAAA,CAAAhB,WAAA,GAAAA,WAAA"}