@webiny/api-apw 0.0.0-unstable.13771d80a8 → 0.0.0-unstable.2696f9d9e8

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 (234) hide show
  1. package/ApwChangeRequestNotification.js +4 -6
  2. package/ApwChangeRequestNotification.js.map +1 -1
  3. package/ApwCommentNotification.js +4 -6
  4. package/ApwCommentNotification.js.map +1 -1
  5. package/ApwContentReviewNotification.js +4 -6
  6. package/ApwContentReviewNotification.js.map +1 -1
  7. package/ApwContentUrlPlugin.js +4 -6
  8. package/ApwContentUrlPlugin.js.map +1 -1
  9. package/ContentApwSettingsPlugin.js +5 -4
  10. package/ContentApwSettingsPlugin.js.map +1 -1
  11. package/README.md +3 -3
  12. package/crud/createChangeRequestMethods.js +3 -1
  13. package/crud/createChangeRequestMethods.js.map +1 -1
  14. package/crud/createCommentMethods.js +3 -1
  15. package/crud/createCommentMethods.js.map +1 -1
  16. package/crud/createContentReviewMethods.js +56 -30
  17. package/crud/createContentReviewMethods.js.map +1 -1
  18. package/crud/createReviewerMethods.js +3 -1
  19. package/crud/createReviewerMethods.js.map +1 -1
  20. package/crud/createWorkflowMethods.js +3 -1
  21. package/crud/createWorkflowMethods.js.map +1 -1
  22. package/crud/index.js +6 -5
  23. package/crud/index.js.map +1 -1
  24. package/crud/utils.js +7 -6
  25. package/crud/utils.js.map +1 -1
  26. package/index.d.ts +1 -1
  27. package/index.js +3 -1
  28. package/index.js.map +1 -1
  29. package/package.json +39 -46
  30. package/plugins/cms/CmsEntryApwSettingsGetterPlugin.js +5 -5
  31. package/plugins/cms/CmsEntryApwSettingsGetterPlugin.js.map +1 -1
  32. package/plugins/cms/apwEntryPlugins.js +9 -6
  33. package/plugins/cms/apwEntryPlugins.js.map +1 -1
  34. package/plugins/cms/index.js +3 -1
  35. package/plugins/cms/index.js.map +1 -1
  36. package/plugins/cms/linkContentReviewToEntry.js +5 -4
  37. package/plugins/cms/linkContentReviewToEntry.js.map +1 -1
  38. package/plugins/cms/linkWorkflowToEntry.js +16 -15
  39. package/plugins/cms/linkWorkflowToEntry.js.map +1 -1
  40. package/plugins/cms/notifications/changeRequestNotification.js +3 -1
  41. package/plugins/cms/notifications/changeRequestNotification.js.map +1 -1
  42. package/plugins/cms/notifications/commentNotification.js +3 -1
  43. package/plugins/cms/notifications/commentNotification.js.map +1 -1
  44. package/plugins/cms/notifications/contentReviewNotification.js +3 -1
  45. package/plugins/cms/notifications/contentReviewNotification.js.map +1 -1
  46. package/plugins/cms/notifications/contentUrl.js +3 -1
  47. package/plugins/cms/notifications/contentUrl.js.map +1 -1
  48. package/plugins/cms/triggerContentReview.js +6 -5
  49. package/plugins/cms/triggerContentReview.js.map +1 -1
  50. package/plugins/cms/updateContentReviewStatus.js +15 -13
  51. package/plugins/cms/updateContentReviewStatus.js.map +1 -1
  52. package/plugins/cms/utils.d.ts +3 -2
  53. package/plugins/cms/utils.js +22 -14
  54. package/plugins/cms/utils.js.map +1 -1
  55. package/plugins/context.js +3 -1
  56. package/plugins/context.js.map +1 -1
  57. package/plugins/graphql/changeRequest.gql.js +16 -12
  58. package/plugins/graphql/changeRequest.gql.js.map +1 -1
  59. package/plugins/graphql/comment.gql.js +41 -35
  60. package/plugins/graphql/comment.gql.js.map +1 -1
  61. package/plugins/graphql/contentReview.gql.js +23 -13
  62. package/plugins/graphql/contentReview.gql.js.map +1 -1
  63. package/plugins/graphql/reviewer.gql.js +15 -12
  64. package/plugins/graphql/reviewer.gql.js.map +1 -1
  65. package/plugins/graphql/utils.d.ts +2 -0
  66. package/plugins/graphql/utils.js +12 -0
  67. package/plugins/graphql/utils.js.map +1 -0
  68. package/plugins/graphql/workflow.gql.js +15 -12
  69. package/plugins/graphql/workflow.gql.js.map +1 -1
  70. package/plugins/graphql.js +3 -1
  71. package/plugins/graphql.js.map +1 -1
  72. package/plugins/hooks/createReviewerFromIdentity.js +4 -2
  73. package/plugins/hooks/createReviewerFromIdentity.js.map +1 -1
  74. package/plugins/hooks/deleteChangeRequestsAfterContentReview.js +3 -1
  75. package/plugins/hooks/deleteChangeRequestsAfterContentReview.js.map +1 -1
  76. package/plugins/hooks/deleteCommentsAfterChangeRequest.js +3 -1
  77. package/plugins/hooks/deleteCommentsAfterChangeRequest.js.map +1 -1
  78. package/plugins/hooks/index.js +3 -1
  79. package/plugins/hooks/index.js.map +1 -1
  80. package/plugins/hooks/initializeContentReviewSteps.js +6 -4
  81. package/plugins/hooks/initializeContentReviewSteps.js.map +1 -1
  82. package/plugins/hooks/initializeNotifications.js +3 -1
  83. package/plugins/hooks/initializeNotifications.js.map +1 -1
  84. package/plugins/hooks/listContentReviews.js +4 -2
  85. package/plugins/hooks/listContentReviews.js.map +1 -1
  86. package/plugins/hooks/notifications/appUrl.js +3 -1
  87. package/plugins/hooks/notifications/appUrl.js.map +1 -1
  88. package/plugins/hooks/notifications/changeRequestAfterCreate.js +6 -9
  89. package/plugins/hooks/notifications/changeRequestAfterCreate.js.map +1 -1
  90. package/plugins/hooks/notifications/changeRequestUrl.js +3 -1
  91. package/plugins/hooks/notifications/changeRequestUrl.js.map +1 -1
  92. package/plugins/hooks/notifications/commentAfterCreate.js +6 -9
  93. package/plugins/hooks/notifications/commentAfterCreate.js.map +1 -1
  94. package/plugins/hooks/notifications/commentUrl.js +3 -1
  95. package/plugins/hooks/notifications/commentUrl.js.map +1 -1
  96. package/plugins/hooks/notifications/contentReviewAfterCreate.js +7 -10
  97. package/plugins/hooks/notifications/contentReviewAfterCreate.js.map +1 -1
  98. package/plugins/hooks/notifications/contentReviewUrl.js +3 -1
  99. package/plugins/hooks/notifications/contentReviewUrl.js.map +1 -1
  100. package/plugins/hooks/notifications/contentUrl.js +3 -1
  101. package/plugins/hooks/notifications/contentUrl.js.map +1 -1
  102. package/plugins/hooks/notifications/lastChangeRequestNotificationPlugin.js +3 -1
  103. package/plugins/hooks/notifications/lastChangeRequestNotificationPlugin.js.map +1 -1
  104. package/plugins/hooks/notifications/lastCommentNotificationPlugin.js +3 -1
  105. package/plugins/hooks/notifications/lastCommentNotificationPlugin.js.map +1 -1
  106. package/plugins/hooks/notifications/lastContentReviewNotificationPlugin.js +3 -1
  107. package/plugins/hooks/notifications/lastContentReviewNotificationPlugin.js.map +1 -1
  108. package/plugins/hooks/notifications/reviewers.js +18 -15
  109. package/plugins/hooks/notifications/reviewers.js.map +1 -1
  110. package/plugins/hooks/notifications/sendChangeRequestNotification.js +3 -1
  111. package/plugins/hooks/notifications/sendChangeRequestNotification.js.map +1 -1
  112. package/plugins/hooks/notifications/sendCommentNotification.js +3 -1
  113. package/plugins/hooks/notifications/sendCommentNotification.js.map +1 -1
  114. package/plugins/hooks/notifications/sendContentReviewNotification.js +3 -1
  115. package/plugins/hooks/notifications/sendContentReviewNotification.js.map +1 -1
  116. package/plugins/hooks/updatePendingChangeRequests.js +8 -6
  117. package/plugins/hooks/updatePendingChangeRequests.js.map +1 -1
  118. package/plugins/hooks/updateTotalComments.js +22 -15
  119. package/plugins/hooks/updateTotalComments.js.map +1 -1
  120. package/plugins/hooks/validateChangeRequest.js +3 -1
  121. package/plugins/hooks/validateChangeRequest.js.map +1 -1
  122. package/plugins/hooks/validateComment.js +3 -1
  123. package/plugins/hooks/validateComment.js.map +1 -1
  124. package/plugins/hooks/validateContentReview.js +3 -1
  125. package/plugins/hooks/validateContentReview.js.map +1 -1
  126. package/plugins/pageBuilder/PageApwSettingsGetterPlugin.js +5 -5
  127. package/plugins/pageBuilder/PageApwSettingsGetterPlugin.js.map +1 -1
  128. package/plugins/pageBuilder/apwContentPagePlugins.js +3 -1
  129. package/plugins/pageBuilder/apwContentPagePlugins.js.map +1 -1
  130. package/plugins/pageBuilder/extendPbPageSettingsSchema.js +3 -1
  131. package/plugins/pageBuilder/extendPbPageSettingsSchema.js.map +1 -1
  132. package/plugins/pageBuilder/index.js +3 -1
  133. package/plugins/pageBuilder/index.js.map +1 -1
  134. package/plugins/pageBuilder/linkContentReviewToPage.js +16 -12
  135. package/plugins/pageBuilder/linkContentReviewToPage.js.map +1 -1
  136. package/plugins/pageBuilder/linkWorkflowToPage.js +3 -1
  137. package/plugins/pageBuilder/linkWorkflowToPage.js.map +1 -1
  138. package/plugins/pageBuilder/notifications/changeRequestNotification.js +3 -1
  139. package/plugins/pageBuilder/notifications/changeRequestNotification.js.map +1 -1
  140. package/plugins/pageBuilder/notifications/commentNotification.js +3 -1
  141. package/plugins/pageBuilder/notifications/commentNotification.js.map +1 -1
  142. package/plugins/pageBuilder/notifications/contentReviewNotification.js +3 -1
  143. package/plugins/pageBuilder/notifications/contentReviewNotification.js.map +1 -1
  144. package/plugins/pageBuilder/notifications/contentUrl.js +3 -1
  145. package/plugins/pageBuilder/notifications/contentUrl.js.map +1 -1
  146. package/plugins/pageBuilder/triggerContentReview.js +3 -1
  147. package/plugins/pageBuilder/triggerContentReview.js.map +1 -1
  148. package/plugins/pageBuilder/updateContentReviewStatus.js +11 -6
  149. package/plugins/pageBuilder/updateContentReviewStatus.js.map +1 -1
  150. package/plugins/pageBuilder/utils.d.ts +2 -2
  151. package/plugins/pageBuilder/utils.js +3 -1
  152. package/plugins/pageBuilder/utils.js.map +1 -1
  153. package/plugins/utils.d.ts +1 -1
  154. package/plugins/utils.js +6 -3
  155. package/plugins/utils.js.map +1 -1
  156. package/scheduler/createScheduleActionMethods.js +44 -30
  157. package/scheduler/createScheduleActionMethods.js.map +1 -1
  158. package/scheduler/handlers/executeAction/index.d.ts +1 -1
  159. package/scheduler/handlers/executeAction/index.js +11 -6
  160. package/scheduler/handlers/executeAction/index.js.map +1 -1
  161. package/scheduler/handlers/executeAction/plugins/ApplicationGraphQL.js +5 -4
  162. package/scheduler/handlers/executeAction/plugins/ApplicationGraphQL.js.map +1 -1
  163. package/scheduler/handlers/executeAction/plugins/HeadlessCMSGraphQL.js +6 -7
  164. package/scheduler/handlers/executeAction/plugins/HeadlessCMSGraphQL.js.map +1 -1
  165. package/scheduler/handlers/executeAction/plugins/PageBuilderGraphQL.js +4 -7
  166. package/scheduler/handlers/executeAction/plugins/PageBuilderGraphQL.js.map +1 -1
  167. package/scheduler/handlers/executeAction/security.js +3 -1
  168. package/scheduler/handlers/executeAction/security.js.map +1 -1
  169. package/scheduler/handlers/scheduleAction/index.d.ts +1 -1
  170. package/scheduler/handlers/scheduleAction/index.js +21 -14
  171. package/scheduler/handlers/scheduleAction/index.js.map +1 -1
  172. package/scheduler/handlers/scheduleAction/scheduleAction.utils.js +17 -14
  173. package/scheduler/handlers/scheduleAction/scheduleAction.utils.js.map +1 -1
  174. package/scheduler/handlers/utils.d.ts +2 -3
  175. package/scheduler/handlers/utils.js +6 -7
  176. package/scheduler/handlers/utils.js.map +1 -1
  177. package/scheduler/index.js +3 -1
  178. package/scheduler/index.js.map +1 -1
  179. package/scheduler/types.d.ts +10 -8
  180. package/scheduler/types.js +14 -12
  181. package/scheduler/types.js.map +1 -1
  182. package/storageOperations/changeRequestStorageOperations.js +60 -27
  183. package/storageOperations/changeRequestStorageOperations.js.map +1 -1
  184. package/storageOperations/commentStorageOperations.js +36 -30
  185. package/storageOperations/commentStorageOperations.js.map +1 -1
  186. package/storageOperations/contentReviewStorageOperations.d.ts +1 -1
  187. package/storageOperations/contentReviewStorageOperations.js +35 -27
  188. package/storageOperations/contentReviewStorageOperations.js.map +1 -1
  189. package/storageOperations/index.d.ts +1 -7
  190. package/storageOperations/index.js +11 -16
  191. package/storageOperations/index.js.map +1 -1
  192. package/storageOperations/models/changeRequest.model.d.ts +1 -2
  193. package/storageOperations/models/changeRequest.model.js +7 -7
  194. package/storageOperations/models/changeRequest.model.js.map +1 -1
  195. package/storageOperations/models/comment.model.d.ts +1 -2
  196. package/storageOperations/models/comment.model.js +7 -7
  197. package/storageOperations/models/comment.model.js.map +1 -1
  198. package/storageOperations/models/contentReview.model.d.ts +1 -2
  199. package/storageOperations/models/contentReview.model.js +13 -11
  200. package/storageOperations/models/contentReview.model.js.map +1 -1
  201. package/storageOperations/models/index.js +6 -26
  202. package/storageOperations/models/index.js.map +1 -1
  203. package/storageOperations/models/reviewer.model.d.ts +1 -2
  204. package/storageOperations/models/reviewer.model.js +8 -8
  205. package/storageOperations/models/reviewer.model.js.map +1 -1
  206. package/storageOperations/models/utils.js +3 -1
  207. package/storageOperations/models/utils.js.map +1 -1
  208. package/storageOperations/models/workflow.model.d.ts +1 -2
  209. package/storageOperations/models/workflow.model.js +19 -19
  210. package/storageOperations/models/workflow.model.js.map +1 -1
  211. package/storageOperations/reviewerStorageOperations.d.ts +1 -1
  212. package/storageOperations/reviewerStorageOperations.js +38 -35
  213. package/storageOperations/reviewerStorageOperations.js.map +1 -1
  214. package/storageOperations/types.js +3 -1
  215. package/storageOperations/workflowStorageOperations.js +41 -31
  216. package/storageOperations/workflowStorageOperations.js.map +1 -1
  217. package/types.d.ts +16 -16
  218. package/types.js +126 -28
  219. package/types.js.map +1 -1
  220. package/utils/contentApwSettingsPlugin.js +3 -1
  221. package/utils/contentApwSettingsPlugin.js.map +1 -1
  222. package/utils/errors.js +3 -1
  223. package/utils/errors.js.map +1 -1
  224. package/utils/fieldResolver.js +7 -7
  225. package/utils/fieldResolver.js.map +1 -1
  226. package/utils/pickEntryFieldValues.d.ts +3 -0
  227. package/utils/pickEntryFieldValues.js +31 -0
  228. package/utils/pickEntryFieldValues.js.map +1 -0
  229. package/utils/resolve.d.ts +1 -1
  230. package/utils/resolve.js +3 -1
  231. package/utils/resolve.js.map +1 -1
  232. package/storageOperations/models/contentModelPluginFactory.d.ts +0 -11
  233. package/storageOperations/models/contentModelPluginFactory.js +0 -19
  234. package/storageOperations/models/contentModelPluginFactory.js.map +0 -1
@@ -5,8 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
7
  exports.createChangeRequestStorageOperations = void 0;
8
- var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
9
- var _index = require("./index");
8
+ var _pickEntryFieldValues = require("../utils/pickEntryFieldValues");
10
9
  var _fieldResolver = require("../utils/fieldResolver");
11
10
  var _error = _interopRequireDefault(require("@webiny/error"));
12
11
  const createChangeRequestStorageOperations = params => {
@@ -16,9 +15,9 @@ const createChangeRequestStorageOperations = params => {
16
15
  security
17
16
  } = params;
18
17
  const getChangeRequestModel = async () => {
19
- security.disableAuthorization();
20
- const model = await cms.getModel("apwChangeRequestModelDefinition");
21
- security.enableAuthorization();
18
+ const model = await security.withoutAuthorization(async () => {
19
+ return cms.getModel("apwChangeRequestModelDefinition");
20
+ });
22
21
  if (!model) {
23
22
  throw new _error.default("Could not find `apwChangeRequestModelDefinition` model.", "MODEL_NOT_FOUND_ERROR");
24
23
  }
@@ -28,12 +27,12 @@ const createChangeRequestStorageOperations = params => {
28
27
  id
29
28
  }) => {
30
29
  const model = await getChangeRequestModel();
31
- security.disableAuthorization();
32
- const entry = await cms.getEntryById(model, id);
33
- security.enableAuthorization();
30
+ const entry = await security.withoutAuthorization(async () => {
31
+ return cms.getEntryById(model, id);
32
+ });
34
33
  return (0, _fieldResolver.getFieldValues)({
35
34
  entry,
36
- fields: _index.baseFields,
35
+ fields: _pickEntryFieldValues.baseFields,
37
36
  context: getCmsContext(),
38
37
  transformers: [(0, _fieldResolver.getTransformer)(model, "body")]
39
38
  });
@@ -43,15 +42,18 @@ const createChangeRequestStorageOperations = params => {
43
42
  getChangeRequest,
44
43
  async listChangeRequests(params) {
45
44
  const model = await getChangeRequestModel();
46
- security.disableAuthorization();
47
- const [entries, meta] = await cms.listLatestEntries(model, (0, _objectSpread2.default)((0, _objectSpread2.default)({}, params), {}, {
48
- where: (0, _objectSpread2.default)({}, params.where)
49
- }));
50
- security.enableAuthorization();
45
+ const [entries, meta] = await security.withoutAuthorization(async () => {
46
+ return cms.listLatestEntries(model, {
47
+ ...params,
48
+ where: {
49
+ ...params.where
50
+ }
51
+ });
52
+ });
51
53
  try {
52
54
  const all = await Promise.all(entries.map(entry => (0, _fieldResolver.getFieldValues)({
53
55
  entry,
54
- fields: _index.baseFields,
56
+ fields: _pickEntryFieldValues.baseFields,
55
57
  context: getCmsContext(),
56
58
  transformers: [(0, _fieldResolver.getTransformer)(model, "body")]
57
59
  })));
@@ -62,18 +64,19 @@ const createChangeRequestStorageOperations = params => {
62
64
  },
63
65
  async createChangeRequest(params) {
64
66
  const model = await getChangeRequestModel();
65
- security.disableAuthorization();
66
- const entry = await cms.createEntry(model, params.data);
67
- security.enableAuthorization();
67
+ const entry = await security.withoutAuthorization(async () => {
68
+ return cms.createEntry(model, params.data);
69
+ });
68
70
  return (0, _fieldResolver.getFieldValues)({
69
71
  entry,
70
- fields: _index.baseFields,
72
+ fields: _pickEntryFieldValues.baseFields,
71
73
  context: getCmsContext(),
72
74
  transformers: [(0, _fieldResolver.getTransformer)(model, "body")]
73
75
  });
74
76
  },
75
77
  async updateChangeRequest(params) {
76
78
  const model = await getChangeRequestModel();
79
+
77
80
  /**
78
81
  * We're fetching the existing entry here because we're not accepting "app" field as input,
79
82
  * but, we still need to retain its value after the "update" operation.
@@ -81,23 +84,53 @@ const createChangeRequestStorageOperations = params => {
81
84
  const existingEntry = await getChangeRequest({
82
85
  id: params.id
83
86
  });
84
- security.disableAuthorization();
85
- const entry = await cms.updateEntry(model, params.id, (0, _objectSpread2.default)((0, _objectSpread2.default)({}, existingEntry), params.data));
86
- security.enableAuthorization();
87
+
88
+ /**
89
+ * Only creator can update the change request
90
+ */
91
+ if (existingEntry.createdBy.id !== security.getIdentity().id) {
92
+ throw new _error.default("A change request can only be updated by its creator.", "ONLY_CREATOR_CAN_UPDATE_CHANGE_REQUEST");
93
+ }
94
+ const entry = await security.withoutAuthorization(async () => {
95
+ return cms.updateEntry(model, params.id, {
96
+ ...existingEntry,
97
+ ...params.data,
98
+ savedOn: new Date()
99
+ });
100
+ });
87
101
  return (0, _fieldResolver.getFieldValues)({
88
102
  entry,
89
- fields: _index.baseFields,
103
+ fields: _pickEntryFieldValues.baseFields,
90
104
  context: getCmsContext(),
91
105
  transformers: [(0, _fieldResolver.getTransformer)(model, "body")]
92
106
  });
93
107
  },
94
108
  async deleteChangeRequest(params) {
95
109
  const model = await getChangeRequestModel();
96
- security.disableAuthorization();
97
- await cms.deleteEntry(model, params.id);
98
- security.enableAuthorization();
110
+ if (!security.getIdentity()) {
111
+ return true;
112
+ }
113
+
114
+ /**
115
+ * We're fetching the existing entry
116
+ */
117
+ const existingEntry = await getChangeRequest({
118
+ id: params.id
119
+ });
120
+
121
+ /**
122
+ * Only creator can delete the change request
123
+ */
124
+ if (existingEntry.createdBy.id !== security.getIdentity().id) {
125
+ throw new _error.default("A change request can only be deleted by its creator.", "ONLY_CREATOR_CAN_DELETE_CHANGE_REQUEST");
126
+ }
127
+ await security.withoutAuthorization(async () => {
128
+ return cms.deleteEntry(model, params.id);
129
+ });
99
130
  return true;
100
131
  }
101
132
  };
102
133
  };
103
- exports.createChangeRequestStorageOperations = createChangeRequestStorageOperations;
134
+ exports.createChangeRequestStorageOperations = createChangeRequestStorageOperations;
135
+
136
+ //# sourceMappingURL=changeRequestStorageOperations.js.map
@@ -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":"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"}
1
+ {"version":3,"names":["_pickEntryFieldValues","require","_fieldResolver","_error","_interopRequireDefault","createChangeRequestStorageOperations","params","cms","getCmsContext","security","getChangeRequestModel","model","withoutAuthorization","getModel","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","createdBy","getIdentity","updateEntry","savedOn","Date","deleteChangeRequest","deleteEntry","exports"],"sources":["changeRequestStorageOperations.ts"],"sourcesContent":["import { ApwChangeRequestStorageOperations } from \"./types\";\nimport { CreateApwStorageOperationsParams } from \"~/storageOperations/index\";\nimport { baseFields } from \"~/utils/pickEntryFieldValues\";\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 const model = await security.withoutAuthorization(async () => {\n return cms.getModel(\"apwChangeRequestModelDefinition\");\n });\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\n const entry = await security.withoutAuthorization(async () => {\n return cms.getEntryById(model, id);\n });\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\n const [entries, meta] = await security.withoutAuthorization(async () => {\n return cms.listLatestEntries(model, {\n ...params,\n where: {\n ...params.where\n }\n });\n });\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\n const entry = await security.withoutAuthorization(async () => {\n return cms.createEntry(model, params.data);\n });\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 /**\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 /**\n * Only creator can update the change request\n */\n if (existingEntry.createdBy.id !== security.getIdentity().id) {\n throw new WebinyError(\n \"A change request can only be updated by its creator.\",\n \"ONLY_CREATOR_CAN_UPDATE_CHANGE_REQUEST\"\n );\n }\n\n const entry = await security.withoutAuthorization(async () => {\n return cms.updateEntry(model, params.id, {\n ...existingEntry,\n ...params.data,\n savedOn: new Date()\n });\n });\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\n if (!security.getIdentity()) {\n return true;\n }\n\n /**\n * We're fetching the existing entry\n */\n const existingEntry = await getChangeRequest({ id: params.id });\n\n /**\n * Only creator can delete the change request\n */\n if (existingEntry.createdBy.id !== security.getIdentity().id) {\n throw new WebinyError(\n \"A change request can only be deleted by its creator.\",\n \"ONLY_CREATOR_CAN_DELETE_CHANGE_REQUEST\"\n );\n }\n\n await security.withoutAuthorization(async () => {\n return cms.deleteEntry(model, params.id);\n });\n\n return true;\n }\n };\n};\n"],"mappings":"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"}
@@ -5,9 +5,8 @@ Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
7
  exports.createCommentStorageOperations = void 0;
8
- var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
9
- var _index = require("./index");
10
8
  var _fieldResolver = require("../utils/fieldResolver");
9
+ var _pickEntryFieldValues = require("../utils/pickEntryFieldValues");
11
10
  var _error = _interopRequireDefault(require("@webiny/error"));
12
11
  var _comment = require("./models/comment.model");
13
12
  const pickIdFromChangeRequest = obj => {
@@ -24,9 +23,9 @@ const createCommentStorageOperations = ({
24
23
  security
25
24
  }) => {
26
25
  const getCommentModel = async () => {
27
- security.disableAuthorization();
28
- const model = await cms.getModel(_comment.COMMENT_MODEL_ID);
29
- security.enableAuthorization();
26
+ const model = await security.withoutAuthorization(async () => {
27
+ return cms.getModel(_comment.COMMENT_MODEL_ID);
28
+ });
30
29
  if (!model) {
31
30
  throw new _error.default(`Could not find "${_comment.COMMENT_MODEL_ID}" model.`, "MODEL_NOT_FOUND_ERROR");
32
31
  }
@@ -36,12 +35,12 @@ const createCommentStorageOperations = ({
36
35
  id
37
36
  }) => {
38
37
  const model = await getCommentModel();
39
- security.disableAuthorization();
40
- const entry = await cms.getEntryById(model, id);
41
- security.enableAuthorization();
38
+ const entry = await security.withoutAuthorization(async () => {
39
+ return cms.getEntryById(model, id);
40
+ });
42
41
  return (0, _fieldResolver.getFieldValues)({
43
42
  entry,
44
- fields: _index.baseFields,
43
+ fields: _pickEntryFieldValues.baseFields,
45
44
  context: getCmsContext(),
46
45
  transformers: [(0, _fieldResolver.getTransformer)(model, "body")]
47
46
  });
@@ -54,12 +53,12 @@ const createCommentStorageOperations = ({
54
53
  },
55
54
  async listComments(params) {
56
55
  const model = await getCommentModel();
57
- security.disableAuthorization();
58
- const [entries, meta] = await cms.listLatestEntries(model, params);
59
- security.enableAuthorization();
56
+ const [entries, meta] = await security.withoutAuthorization(async () => {
57
+ return cms.listLatestEntries(model, params);
58
+ });
60
59
  const values = await Promise.all(entries.map(entry => (0, _fieldResolver.getFieldValues)({
61
60
  entry,
62
- fields: _index.baseFields,
61
+ fields: _pickEntryFieldValues.baseFields,
63
62
  context: getCmsContext(),
64
63
  transformers: [(0, _fieldResolver.getTransformer)(model, "body")]
65
64
  })));
@@ -69,17 +68,18 @@ const createCommentStorageOperations = ({
69
68
  async createComment(params) {
70
69
  const model = await getCommentModel();
71
70
  const refModel = await this.getChangeRequestModel();
72
- security.disableAuthorization();
73
- const entry = await cms.createEntry(model, (0, _objectSpread2.default)((0, _objectSpread2.default)({}, params.data), {}, {
74
- changeRequest: {
75
- id: params.data.changeRequest,
76
- modelId: refModel.modelId
77
- }
78
- }));
79
- security.enableAuthorization();
71
+ const entry = await security.withoutAuthorization(async () => {
72
+ return cms.createEntry(model, {
73
+ ...params.data,
74
+ changeRequest: {
75
+ id: params.data.changeRequest,
76
+ modelId: refModel.modelId
77
+ }
78
+ });
79
+ });
80
80
  const values = await (0, _fieldResolver.getFieldValues)({
81
81
  entry,
82
- fields: _index.baseFields,
82
+ fields: _pickEntryFieldValues.baseFields,
83
83
  context: getCmsContext(),
84
84
  transformers: [(0, _fieldResolver.getTransformer)(model, "body")]
85
85
  });
@@ -94,12 +94,16 @@ const createCommentStorageOperations = ({
94
94
  const existingEntry = await getComment({
95
95
  id: params.id
96
96
  });
97
- security.disableAuthorization();
98
- const entry = await cms.updateEntry(model, params.id, (0, _objectSpread2.default)((0, _objectSpread2.default)({}, existingEntry), params.data));
99
- security.enableAuthorization();
97
+ const entry = await security.withoutAuthorization(async () => {
98
+ return cms.updateEntry(model, params.id, {
99
+ ...existingEntry,
100
+ ...params.data,
101
+ savedOn: new Date()
102
+ });
103
+ });
100
104
  const values = await (0, _fieldResolver.getFieldValues)({
101
105
  entry,
102
- fields: _index.baseFields,
106
+ fields: _pickEntryFieldValues.baseFields,
103
107
  context: getCmsContext(),
104
108
  transformers: [(0, _fieldResolver.getTransformer)(model, "body")]
105
109
  });
@@ -107,11 +111,13 @@ const createCommentStorageOperations = ({
107
111
  },
108
112
  async deleteComment(params) {
109
113
  const model = await getCommentModel();
110
- security.disableAuthorization();
111
- await cms.deleteEntry(model, params.id);
112
- security.enableAuthorization();
114
+ await security.withoutAuthorization(async () => {
115
+ return cms.deleteEntry(model, params.id);
116
+ });
113
117
  return true;
114
118
  }
115
119
  };
116
120
  };
117
- exports.createCommentStorageOperations = createCommentStorageOperations;
121
+ exports.createCommentStorageOperations = createCommentStorageOperations;
122
+
123
+ //# sourceMappingURL=commentStorageOperations.js.map
@@ -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":["_fieldResolver","require","_pickEntryFieldValues","_error","_interopRequireDefault","_comment","pickIdFromChangeRequest","obj","rawValue","id","createCommentStorageOperations","cms","getCmsContext","security","getCommentModel","model","withoutAuthorization","getModel","COMMENT_MODEL_ID","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","savedOn","Date","deleteComment","deleteEntry","exports"],"sources":["commentStorageOperations.ts"],"sourcesContent":["import { ApwStorageOperations } from \"./types\";\nimport { ApwCommentStorageOperations } from \"./types\";\nimport { CreateApwStorageOperationsParams } from \"~/storageOperations/index\";\nimport { getFieldValues, getTransformer } from \"~/utils/fieldResolver\";\nimport { baseFields } from \"~/utils/pickEntryFieldValues\";\n\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 const model = await security.withoutAuthorization(async () => {\n return cms.getModel(COMMENT_MODEL_ID);\n });\n\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 const entry = await security.withoutAuthorization(async () => {\n return cms.getEntryById(model, id);\n });\n\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 const [entries, meta] = await security.withoutAuthorization(async () => {\n return cms.listLatestEntries(model, params as CmsEntryListParams);\n });\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\n const entry = await security.withoutAuthorization(async () => {\n return cms.createEntry(model, {\n ...params.data,\n changeRequest: {\n id: params.data.changeRequest,\n modelId: refModel.modelId\n }\n });\n });\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 const entry = await security.withoutAuthorization(async () => {\n return cms.updateEntry(model, params.id, {\n ...existingEntry,\n ...params.data,\n savedOn: new Date()\n });\n });\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 deleteComment(params) {\n const model = await getCommentModel();\n await security.withoutAuthorization(async () => {\n return cms.deleteEntry(model, params.id);\n });\n return true;\n }\n };\n};\n"],"mappings":"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"}
@@ -1,3 +1,3 @@
1
1
  import { ApwContentReviewStorageOperations } from "./types";
2
- import { CreateApwStorageOperationsParams } from "./index";
2
+ import { CreateApwStorageOperationsParams } from ".";
3
3
  export declare const createContentReviewStorageOperations: ({ cms, security }: CreateApwStorageOperationsParams) => ApwContentReviewStorageOperations;
@@ -5,8 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
7
  exports.createContentReviewStorageOperations = void 0;
8
- var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
9
- var _index = require("./index");
8
+ var _pickEntryFieldValues = require("../utils/pickEntryFieldValues");
10
9
  var _error = _interopRequireDefault(require("@webiny/error"));
11
10
  var _contentReview = require("./models/contentReview.model");
12
11
  const createContentReviewStorageOperations = ({
@@ -14,9 +13,9 @@ const createContentReviewStorageOperations = ({
14
13
  security
15
14
  }) => {
16
15
  const getContentReviewModel = async () => {
17
- security.disableAuthorization();
18
- const model = await cms.getModel(_contentReview.CONTENT_REVIEW_MODEL_ID);
19
- security.enableAuthorization();
16
+ const model = await security.withoutAuthorization(async () => {
17
+ return cms.getModel(_contentReview.CONTENT_REVIEW_MODEL_ID);
18
+ });
20
19
  if (!model) {
21
20
  throw new _error.default(`Could not find "${_contentReview.CONTENT_REVIEW_MODEL_ID}" model.`, "MODEL_NOT_FOUND_ERROR");
22
21
  }
@@ -26,29 +25,32 @@ const createContentReviewStorageOperations = ({
26
25
  id
27
26
  }) => {
28
27
  const model = await getContentReviewModel();
29
- security.disableAuthorization();
30
- const entry = await cms.getEntryById(model, id);
31
- security.enableAuthorization();
32
- return (0, _index.getFieldValues)(entry, _index.baseFields);
28
+ const entry = await security.withoutAuthorization(async () => {
29
+ return cms.getEntryById(model, id);
30
+ });
31
+ return (0, _pickEntryFieldValues.pickEntryFieldValues)(entry);
33
32
  };
34
33
  return {
35
34
  getContentReviewModel,
36
35
  getContentReview,
37
36
  async listContentReviews(params) {
38
37
  const model = await getContentReviewModel();
39
- security.disableAuthorization();
40
- const [entries, meta] = await cms.listLatestEntries(model, (0, _objectSpread2.default)((0, _objectSpread2.default)({}, params), {}, {
41
- where: (0, _objectSpread2.default)({}, params.where)
42
- }));
43
- security.enableAuthorization();
44
- return [entries.map(entry => (0, _index.getFieldValues)(entry, _index.baseFields)), meta];
38
+ const [entries, meta] = await security.withoutAuthorization(async () => {
39
+ return cms.listLatestEntries(model, {
40
+ ...params,
41
+ where: {
42
+ ...params.where
43
+ }
44
+ });
45
+ });
46
+ return [entries.map(_pickEntryFieldValues.pickEntryFieldValues), meta];
45
47
  },
46
48
  async createContentReview(params) {
47
49
  const model = await getContentReviewModel();
48
- security.disableAuthorization();
49
- const entry = await cms.createEntry(model, params.data);
50
- security.enableAuthorization();
51
- return (0, _index.getFieldValues)(entry, _index.baseFields);
50
+ const entry = await security.withoutAuthorization(async () => {
51
+ return cms.createEntry(model, params.data);
52
+ });
53
+ return (0, _pickEntryFieldValues.pickEntryFieldValues)(entry);
52
54
  },
53
55
  async updateContentReview(params) {
54
56
  const model = await getContentReviewModel();
@@ -59,18 +61,24 @@ const createContentReviewStorageOperations = ({
59
61
  const existingEntry = await getContentReview({
60
62
  id: params.id
61
63
  });
62
- security.disableAuthorization();
63
- const entry = await cms.updateEntry(model, params.id, (0, _objectSpread2.default)((0, _objectSpread2.default)({}, existingEntry), params.data));
64
- security.enableAuthorization();
65
- return (0, _index.getFieldValues)(entry, _index.baseFields);
64
+ const entry = await security.withoutAuthorization(async () => {
65
+ return cms.updateEntry(model, params.id, {
66
+ ...existingEntry,
67
+ ...params.data,
68
+ savedOn: new Date()
69
+ });
70
+ });
71
+ return (0, _pickEntryFieldValues.pickEntryFieldValues)(entry);
66
72
  },
67
73
  async deleteContentReview(params) {
68
74
  const model = await getContentReviewModel();
69
- security.disableAuthorization();
70
- await cms.deleteEntry(model, params.id);
71
- security.enableAuthorization();
75
+ await security.withoutAuthorization(async () => {
76
+ return cms.deleteEntry(model, params.id);
77
+ });
72
78
  return true;
73
79
  }
74
80
  };
75
81
  };
76
- exports.createContentReviewStorageOperations = createContentReviewStorageOperations;
82
+ exports.createContentReviewStorageOperations = createContentReviewStorageOperations;
83
+
84
+ //# sourceMappingURL=contentReviewStorageOperations.js.map
@@ -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":"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"}
1
+ {"version":3,"names":["_pickEntryFieldValues","require","_error","_interopRequireDefault","_contentReview","createContentReviewStorageOperations","cms","security","getContentReviewModel","model","withoutAuthorization","getModel","CONTENT_REVIEW_MODEL_ID","WebinyError","getContentReview","id","entry","getEntryById","pickEntryFieldValues","listContentReviews","params","entries","meta","listLatestEntries","where","map","createContentReview","createEntry","data","updateContentReview","existingEntry","updateEntry","savedOn","Date","deleteContentReview","deleteEntry","exports"],"sources":["contentReviewStorageOperations.ts"],"sourcesContent":["import { ApwContentReviewStorageOperations } from \"./types\";\nimport { CreateApwStorageOperationsParams } from \"~/storageOperations\";\nimport { pickEntryFieldValues } from \"~/utils/pickEntryFieldValues\";\nimport WebinyError from \"@webiny/error\";\nimport { CONTENT_REVIEW_MODEL_ID } from \"~/storageOperations/models/contentReview.model\";\nimport { ApwContentReview } from \"~/types\";\n\nexport const createContentReviewStorageOperations = ({\n cms,\n security\n}: CreateApwStorageOperationsParams): ApwContentReviewStorageOperations => {\n const getContentReviewModel = async () => {\n const model = await security.withoutAuthorization(async () => {\n return cms.getModel(CONTENT_REVIEW_MODEL_ID);\n });\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 const entry = await security.withoutAuthorization(async () => {\n return cms.getEntryById(model, id);\n });\n return pickEntryFieldValues(entry);\n };\n return {\n getContentReviewModel,\n getContentReview,\n async listContentReviews(params) {\n const model = await getContentReviewModel();\n\n const [entries, meta] = await security.withoutAuthorization(async () => {\n return cms.listLatestEntries(model, {\n ...params,\n where: {\n ...params.where\n }\n });\n });\n\n return [entries.map(pickEntryFieldValues<ApwContentReview>), meta];\n },\n async createContentReview(params) {\n const model = await getContentReviewModel();\n\n const entry = await security.withoutAuthorization(async () => {\n return cms.createEntry(model, params.data);\n });\n return pickEntryFieldValues(entry);\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 const entry = await security.withoutAuthorization(async () => {\n return cms.updateEntry(model, params.id, {\n ...existingEntry,\n ...params.data,\n savedOn: new Date()\n });\n });\n return pickEntryFieldValues(entry);\n },\n async deleteContentReview(params) {\n const model = await getContentReviewModel();\n\n await security.withoutAuthorization(async () => {\n return cms.deleteEntry(model, params.id);\n });\n\n return true;\n }\n };\n};\n"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { CmsContext, CmsEntry, HeadlessCms } from "@webiny/api-headless-cms/types";
1
+ import { CmsContext, HeadlessCms } from "@webiny/api-headless-cms/types";
2
2
  import { ApwStorageOperations } from "../types";
3
3
  import { Security } from "@webiny/api-security/types";
4
4
  export interface CreateApwStorageOperationsParams {
@@ -6,10 +6,4 @@ export interface CreateApwStorageOperationsParams {
6
6
  security: Security;
7
7
  getCmsContext: () => CmsContext;
8
8
  }
9
- /**
10
- * Using any because value can be a lot of types.
11
- * TODO @ts-refactor figure out correct types.
12
- */
13
- export declare function getFieldValues(entry: CmsEntry, fields: string[]): any;
14
- export declare const baseFields: string[];
15
9
  export declare const createStorageOperations: (params: CreateApwStorageOperationsParams) => ApwStorageOperations;
@@ -1,34 +1,29 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
3
  Object.defineProperty(exports, "__esModule", {
5
4
  value: true
6
5
  });
7
- exports.createStorageOperations = exports.baseFields = void 0;
8
- exports.getFieldValues = getFieldValues;
9
- var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
10
- var _pick = _interopRequireDefault(require("lodash/pick"));
6
+ exports.createStorageOperations = void 0;
11
7
  var _reviewerStorageOperations = require("./reviewerStorageOperations");
12
8
  var _workflowStorageOperations = require("./workflowStorageOperations");
13
9
  var _contentReviewStorageOperations = require("./contentReviewStorageOperations");
14
10
  var _changeRequestStorageOperations = require("./changeRequestStorageOperations");
15
11
  var _commentStorageOperations = require("./commentStorageOperations");
16
12
  var _models = require("./models");
17
- /**
18
- * Using any because value can be a lot of types.
19
- * TODO @ts-refactor figure out correct types.
20
- */
21
- function getFieldValues(entry, fields) {
22
- return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, (0, _pick.default)(entry, fields)), entry.values);
23
- }
24
- const baseFields = ["id", "entryId", "createdBy", "createdOn", "savedOn"];
25
- exports.baseFields = baseFields;
26
13
  const createStorageOperations = params => {
27
14
  const context = params.getCmsContext();
28
15
  /**
29
16
  * Register Apw models.
30
17
  */
31
18
  (0, _models.createApwModels)(context);
32
- 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));
19
+ return {
20
+ ...(0, _reviewerStorageOperations.createReviewerStorageOperations)(params),
21
+ ...(0, _workflowStorageOperations.createWorkflowStorageOperations)(params),
22
+ ...(0, _contentReviewStorageOperations.createContentReviewStorageOperations)(params),
23
+ ...(0, _changeRequestStorageOperations.createChangeRequestStorageOperations)(params),
24
+ ...(0, _commentStorageOperations.createCommentStorageOperations)(params)
25
+ };
33
26
  };
34
- exports.createStorageOperations = createStorageOperations;
27
+ exports.createStorageOperations = createStorageOperations;
28
+
29
+ //# sourceMappingURL=index.js.map
@@ -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\", \"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,cAAc,CAACC,KAAe,EAAEC,MAAgB,EAAO;EACnE,mEAAY,IAAAC,aAAI,EAACF,KAAK,EAAEC,MAAM,CAAC,GAAKD,KAAK,CAACG,MAAM;AACpD;AAEO,MAAMC,UAAU,GAAG,CAAC,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,WAAW,EAAE,SAAS,CAAC;AAAC;AAE1E,MAAMC,uBAAuB,GAChCC,MAAwC,IACjB;EACvB,MAAMC,OAAO,GAAGD,MAAM,CAACE,aAAa,EAAE;EACtC;AACJ;AACA;EACI,IAAAC,uBAAe,EAACF,OAAO,CAAC;EAExB,uJACO,IAAAG,0DAA+B,EAACJ,MAAM,CAAC,GACvC,IAAAK,0DAA+B,EAACL,MAAM,CAAC,GACvC,IAAAM,oEAAoC,EAACN,MAAM,CAAC,GAC5C,IAAAO,oEAAoC,EAACP,MAAM,CAAC,GAC5C,IAAAQ,wDAA8B,EAACR,MAAM,CAAC;AAEjD,CAAC;AAAC"}
1
+ {"version":3,"names":["_reviewerStorageOperations","require","_workflowStorageOperations","_contentReviewStorageOperations","_changeRequestStorageOperations","_commentStorageOperations","_models","createStorageOperations","params","context","getCmsContext","createApwModels","createReviewerStorageOperations","createWorkflowStorageOperations","createContentReviewStorageOperations","createChangeRequestStorageOperations","createCommentStorageOperations","exports"],"sources":["index.ts"],"sourcesContent":["import { CmsContext, 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\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":";;;;;;AAEA,IAAAA,0BAAA,GAAAC,OAAA;AACA,IAAAC,0BAAA,GAAAD,OAAA;AACA,IAAAE,+BAAA,GAAAF,OAAA;AACA,IAAAG,+BAAA,GAAAH,OAAA;AACA,IAAAI,yBAAA,GAAAJ,OAAA;AACA,IAAAK,OAAA,GAAAL,OAAA;AASO,MAAMM,uBAAuB,GAChCC,MAAwC,IACjB;EACvB,MAAMC,OAAO,GAAGD,MAAM,CAACE,aAAa,CAAC,CAAC;EACtC;AACJ;AACA;EACI,IAAAC,uBAAe,EAACF,OAAO,CAAC;EAExB,OAAO;IACH,GAAG,IAAAG,0DAA+B,EAACJ,MAAM,CAAC;IAC1C,GAAG,IAAAK,0DAA+B,EAACL,MAAM,CAAC;IAC1C,GAAG,IAAAM,oEAAoC,EAACN,MAAM,CAAC;IAC/C,GAAG,IAAAO,oEAAoC,EAACP,MAAM,CAAC;IAC/C,GAAG,IAAAQ,wDAA8B,EAACR,MAAM;EAC5C,CAAC;AACL,CAAC;AAACS,OAAA,CAAAV,uBAAA,GAAAA,uBAAA"}
@@ -1,3 +1,2 @@
1
- import { WorkflowModelDefinition } from "../../types";
2
1
  export declare const CHANGE_REQUEST_MODEL_ID = "apwChangeRequestModelDefinition";
3
- export declare const createChangeRequestModelDefinition: () => WorkflowModelDefinition;
2
+ export declare const createChangeRequestModelDefinition: () => import("@webiny/api-headless-cms").CmsPrivateModelFull;