@webiny/api-apw 0.0.0-unstable.5e7233243f

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 (229) hide show
  1. package/ContentApwSettingsPlugin.d.ts +10 -0
  2. package/ContentApwSettingsPlugin.js +17 -0
  3. package/ContentApwSettingsPlugin.js.map +1 -0
  4. package/LICENSE +21 -0
  5. package/README.md +34 -0
  6. package/crud/createChangeRequestMethods.d.ts +2 -0
  7. package/crud/createChangeRequestMethods.js +95 -0
  8. package/crud/createChangeRequestMethods.js.map +1 -0
  9. package/crud/createCommentMethods.d.ts +2 -0
  10. package/crud/createCommentMethods.js +96 -0
  11. package/crud/createCommentMethods.js.map +1 -0
  12. package/crud/createContentReviewMethods.d.ts +10 -0
  13. package/crud/createContentReviewMethods.js +552 -0
  14. package/crud/createContentReviewMethods.js.map +1 -0
  15. package/crud/createReviewerMethods.d.ts +2 -0
  16. package/crud/createReviewerMethods.js +96 -0
  17. package/crud/createReviewerMethods.js.map +1 -0
  18. package/crud/createWorkflowMethods.d.ts +2 -0
  19. package/crud/createWorkflowMethods.js +96 -0
  20. package/crud/createWorkflowMethods.js.map +1 -0
  21. package/crud/index.d.ts +2 -0
  22. package/crud/index.js +100 -0
  23. package/crud/index.js.map +1 -0
  24. package/crud/utils.d.ts +21 -0
  25. package/crud/utils.js +142 -0
  26. package/crud/utils.js.map +1 -0
  27. package/index.d.ts +4 -0
  28. package/index.js +34 -0
  29. package/index.js.map +1 -0
  30. package/package.json +75 -0
  31. package/plugins/cms/CmsEntryApwSettingsGetterPlugin.d.ts +10 -0
  32. package/plugins/cms/CmsEntryApwSettingsGetterPlugin.js +51 -0
  33. package/plugins/cms/CmsEntryApwSettingsGetterPlugin.js.map +1 -0
  34. package/plugins/cms/README.md +49 -0
  35. package/plugins/cms/apwEntryPlugins.d.ts +8 -0
  36. package/plugins/cms/apwEntryPlugins.js +50 -0
  37. package/plugins/cms/apwEntryPlugins.js.map +1 -0
  38. package/plugins/cms/index.d.ts +12 -0
  39. package/plugins/cms/index.js +37 -0
  40. package/plugins/cms/index.js.map +1 -0
  41. package/plugins/cms/linkContentReviewToEntry.d.ts +8 -0
  42. package/plugins/cms/linkContentReviewToEntry.js +108 -0
  43. package/plugins/cms/linkContentReviewToEntry.js.map +1 -0
  44. package/plugins/cms/linkWorkflowToEntry.d.ts +8 -0
  45. package/plugins/cms/linkWorkflowToEntry.js +166 -0
  46. package/plugins/cms/linkWorkflowToEntry.js.map +1 -0
  47. package/plugins/cms/triggerContentReview.d.ts +8 -0
  48. package/plugins/cms/triggerContentReview.js +59 -0
  49. package/plugins/cms/triggerContentReview.js.map +1 -0
  50. package/plugins/cms/updateContentReviewStatus.d.ts +10 -0
  51. package/plugins/cms/updateContentReviewStatus.js +101 -0
  52. package/plugins/cms/updateContentReviewStatus.js.map +1 -0
  53. package/plugins/cms/utils.d.ts +27 -0
  54. package/plugins/cms/utils.js +211 -0
  55. package/plugins/cms/utils.js.map +1 -0
  56. package/plugins/context.d.ts +5 -0
  57. package/plugins/context.js +146 -0
  58. package/plugins/context.js.map +1 -0
  59. package/plugins/graphql/changeRequest.gql.d.ts +4 -0
  60. package/plugins/graphql/changeRequest.gql.js +155 -0
  61. package/plugins/graphql/changeRequest.gql.js.map +1 -0
  62. package/plugins/graphql/comment.gql.d.ts +4 -0
  63. package/plugins/graphql/comment.gql.js +160 -0
  64. package/plugins/graphql/comment.gql.js.map +1 -0
  65. package/plugins/graphql/contentReview.gql.d.ts +4 -0
  66. package/plugins/graphql/contentReview.gql.js +382 -0
  67. package/plugins/graphql/contentReview.gql.js.map +1 -0
  68. package/plugins/graphql/reviewer.gql.d.ts +4 -0
  69. package/plugins/graphql/reviewer.gql.js +114 -0
  70. package/plugins/graphql/reviewer.gql.js.map +1 -0
  71. package/plugins/graphql/workflow.gql.d.ts +4 -0
  72. package/plugins/graphql/workflow.gql.js +205 -0
  73. package/plugins/graphql/workflow.gql.js.map +1 -0
  74. package/plugins/graphql.d.ts +4 -0
  75. package/plugins/graphql.js +95 -0
  76. package/plugins/graphql.js.map +1 -0
  77. package/plugins/hooks/createReviewerFromIdentity.d.ts +2 -0
  78. package/plugins/hooks/createReviewerFromIdentity.js +62 -0
  79. package/plugins/hooks/createReviewerFromIdentity.js.map +1 -0
  80. package/plugins/hooks/deleteChangeRequestsAfterContentReview.d.ts +2 -0
  81. package/plugins/hooks/deleteChangeRequestsAfterContentReview.js +67 -0
  82. package/plugins/hooks/deleteChangeRequestsAfterContentReview.js.map +1 -0
  83. package/plugins/hooks/deleteCommentsAfterChangeRequest.d.ts +2 -0
  84. package/plugins/hooks/deleteCommentsAfterChangeRequest.js +59 -0
  85. package/plugins/hooks/deleteCommentsAfterChangeRequest.js.map +1 -0
  86. package/plugins/hooks/index.d.ts +3 -0
  87. package/plugins/hooks/index.js +68 -0
  88. package/plugins/hooks/index.js.map +1 -0
  89. package/plugins/hooks/initializeContentReviewSteps.d.ts +2 -0
  90. package/plugins/hooks/initializeContentReviewSteps.js +89 -0
  91. package/plugins/hooks/initializeContentReviewSteps.js.map +1 -0
  92. package/plugins/hooks/updatePendingChangeRequests.d.ts +2 -0
  93. package/plugins/hooks/updatePendingChangeRequests.js +98 -0
  94. package/plugins/hooks/updatePendingChangeRequests.js.map +1 -0
  95. package/plugins/hooks/updateTotalComments.d.ts +3 -0
  96. package/plugins/hooks/updateTotalComments.js +157 -0
  97. package/plugins/hooks/updateTotalComments.js.map +1 -0
  98. package/plugins/hooks/validateChangeRequest.d.ts +2 -0
  99. package/plugins/hooks/validateChangeRequest.js +64 -0
  100. package/plugins/hooks/validateChangeRequest.js.map +1 -0
  101. package/plugins/hooks/validateComment.d.ts +2 -0
  102. package/plugins/hooks/validateComment.js +47 -0
  103. package/plugins/hooks/validateComment.js.map +1 -0
  104. package/plugins/hooks/validateContentReview.d.ts +2 -0
  105. package/plugins/hooks/validateContentReview.js +38 -0
  106. package/plugins/hooks/validateContentReview.js.map +1 -0
  107. package/plugins/pageBuilder/PageApwSettingsGetterPlugin.d.ts +9 -0
  108. package/plugins/pageBuilder/PageApwSettingsGetterPlugin.js +51 -0
  109. package/plugins/pageBuilder/PageApwSettingsGetterPlugin.js.map +1 -0
  110. package/plugins/pageBuilder/apwContentPagePlugins.d.ts +3 -0
  111. package/plugins/pageBuilder/apwContentPagePlugins.js +30 -0
  112. package/plugins/pageBuilder/apwContentPagePlugins.js.map +1 -0
  113. package/plugins/pageBuilder/extendPbPageSettingsSchema.d.ts +3 -0
  114. package/plugins/pageBuilder/extendPbPageSettingsSchema.js +25 -0
  115. package/plugins/pageBuilder/extendPbPageSettingsSchema.js.map +1 -0
  116. package/plugins/pageBuilder/index.d.ts +11 -0
  117. package/plugins/pageBuilder/index.js +45 -0
  118. package/plugins/pageBuilder/index.js.map +1 -0
  119. package/plugins/pageBuilder/linkContentReviewToPage.d.ts +8 -0
  120. package/plugins/pageBuilder/linkContentReviewToPage.js +93 -0
  121. package/plugins/pageBuilder/linkContentReviewToPage.js.map +1 -0
  122. package/plugins/pageBuilder/linkWorkflowToPage.d.ts +8 -0
  123. package/plugins/pageBuilder/linkWorkflowToPage.js +182 -0
  124. package/plugins/pageBuilder/linkWorkflowToPage.js.map +1 -0
  125. package/plugins/pageBuilder/triggerContentReview.d.ts +8 -0
  126. package/plugins/pageBuilder/triggerContentReview.js +50 -0
  127. package/plugins/pageBuilder/triggerContentReview.js.map +1 -0
  128. package/plugins/pageBuilder/updateContentReviewStatus.d.ts +10 -0
  129. package/plugins/pageBuilder/updateContentReviewStatus.js +83 -0
  130. package/plugins/pageBuilder/updateContentReviewStatus.js.map +1 -0
  131. package/plugins/pageBuilder/utils.d.ts +22 -0
  132. package/plugins/pageBuilder/utils.js +184 -0
  133. package/plugins/pageBuilder/utils.js.map +1 -0
  134. package/plugins/utils.d.ts +35 -0
  135. package/plugins/utils.js +197 -0
  136. package/plugins/utils.js.map +1 -0
  137. package/scheduler/createScheduleActionMethods.d.ts +2 -0
  138. package/scheduler/createScheduleActionMethods.js +146 -0
  139. package/scheduler/createScheduleActionMethods.js.map +1 -0
  140. package/scheduler/handlers/executeAction/index.d.ts +13 -0
  141. package/scheduler/handlers/executeAction/index.js +172 -0
  142. package/scheduler/handlers/executeAction/index.js.map +1 -0
  143. package/scheduler/handlers/executeAction/plugins/ApplicationGraphQL.d.ts +13 -0
  144. package/scheduler/handlers/executeAction/plugins/ApplicationGraphQL.js +17 -0
  145. package/scheduler/handlers/executeAction/plugins/ApplicationGraphQL.js.map +1 -0
  146. package/scheduler/handlers/executeAction/plugins/HeadlessCMSGraphQL.d.ts +11 -0
  147. package/scheduler/handlers/executeAction/plugins/HeadlessCMSGraphQL.js +126 -0
  148. package/scheduler/handlers/executeAction/plugins/HeadlessCMSGraphQL.js.map +1 -0
  149. package/scheduler/handlers/executeAction/plugins/PageBuilderGraphQL.d.ts +11 -0
  150. package/scheduler/handlers/executeAction/plugins/PageBuilderGraphQL.js +163 -0
  151. package/scheduler/handlers/executeAction/plugins/PageBuilderGraphQL.js.map +1 -0
  152. package/scheduler/handlers/executeAction/security.d.ts +4 -0
  153. package/scheduler/handlers/executeAction/security.js +68 -0
  154. package/scheduler/handlers/executeAction/security.js.map +1 -0
  155. package/scheduler/handlers/scheduleAction/index.d.ts +22 -0
  156. package/scheduler/handlers/scheduleAction/index.js +165 -0
  157. package/scheduler/handlers/scheduleAction/index.js.map +1 -0
  158. package/scheduler/handlers/scheduleAction/scheduleAction.utils.d.ts +24 -0
  159. package/scheduler/handlers/scheduleAction/scheduleAction.utils.js +176 -0
  160. package/scheduler/handlers/scheduleAction/scheduleAction.utils.js.map +1 -0
  161. package/scheduler/handlers/utils.d.ts +33 -0
  162. package/scheduler/handlers/utils.js +168 -0
  163. package/scheduler/handlers/utils.js.map +1 -0
  164. package/scheduler/index.d.ts +2 -0
  165. package/scheduler/index.js +27 -0
  166. package/scheduler/index.js.map +1 -0
  167. package/scheduler/types.d.ts +171 -0
  168. package/scheduler/types.js +34 -0
  169. package/scheduler/types.js.map +1 -0
  170. package/storageOperations/changeRequestStorageOperations.d.ts +3 -0
  171. package/storageOperations/changeRequestStorageOperations.js +126 -0
  172. package/storageOperations/changeRequestStorageOperations.js.map +1 -0
  173. package/storageOperations/commentStorageOperations.d.ts +3 -0
  174. package/storageOperations/commentStorageOperations.js +142 -0
  175. package/storageOperations/commentStorageOperations.js.map +1 -0
  176. package/storageOperations/contentReviewStorageOperations.d.ts +3 -0
  177. package/storageOperations/contentReviewStorageOperations.js +97 -0
  178. package/storageOperations/contentReviewStorageOperations.js.map +1 -0
  179. package/storageOperations/index.d.ts +15 -0
  180. package/storageOperations/index.js +52 -0
  181. package/storageOperations/index.js.map +1 -0
  182. package/storageOperations/models/changeRequest.model.d.ts +3 -0
  183. package/storageOperations/models/changeRequest.model.js +59 -0
  184. package/storageOperations/models/changeRequest.model.js.map +1 -0
  185. package/storageOperations/models/comment.model.d.ts +7 -0
  186. package/storageOperations/models/comment.model.js +60 -0
  187. package/storageOperations/models/comment.model.js.map +1 -0
  188. package/storageOperations/models/contentModelPluginFactory.d.ts +15 -0
  189. package/storageOperations/models/contentModelPluginFactory.js +32 -0
  190. package/storageOperations/models/contentModelPluginFactory.js.map +1 -0
  191. package/storageOperations/models/contentReview.model.d.ts +7 -0
  192. package/storageOperations/models/contentReview.model.js +257 -0
  193. package/storageOperations/models/contentReview.model.js.map +1 -0
  194. package/storageOperations/models/index.d.ts +2 -0
  195. package/storageOperations/models/index.js +115 -0
  196. package/storageOperations/models/index.js.map +1 -0
  197. package/storageOperations/models/reviewer.model.d.ts +3 -0
  198. package/storageOperations/models/reviewer.model.js +55 -0
  199. package/storageOperations/models/reviewer.model.js.map +1 -0
  200. package/storageOperations/models/utils.d.ts +3 -0
  201. package/storageOperations/models/utils.js +36 -0
  202. package/storageOperations/models/utils.js.map +1 -0
  203. package/storageOperations/models/workflow.model.d.ts +12 -0
  204. package/storageOperations/models/workflow.model.js +208 -0
  205. package/storageOperations/models/workflow.model.js.map +1 -0
  206. package/storageOperations/reviewerStorageOperations.d.ts +3 -0
  207. package/storageOperations/reviewerStorageOperations.js +93 -0
  208. package/storageOperations/reviewerStorageOperations.js.map +1 -0
  209. package/storageOperations/types.d.ts +34 -0
  210. package/storageOperations/types.js +5 -0
  211. package/storageOperations/types.js.map +1 -0
  212. package/storageOperations/workflowStorageOperations.d.ts +3 -0
  213. package/storageOperations/workflowStorageOperations.js +115 -0
  214. package/storageOperations/workflowStorageOperations.js.map +1 -0
  215. package/types.d.ts +737 -0
  216. package/types.js +69 -0
  217. package/types.js.map +1 -0
  218. package/utils/contentApwSettingsPlugin.d.ts +9 -0
  219. package/utils/contentApwSettingsPlugin.js +26 -0
  220. package/utils/contentApwSettingsPlugin.js.map +1 -0
  221. package/utils/errors.d.ts +16 -0
  222. package/utils/errors.js +75 -0
  223. package/utils/errors.js.map +1 -0
  224. package/utils/fieldResolver.d.ts +16 -0
  225. package/utils/fieldResolver.js +60 -0
  226. package/utils/fieldResolver.js.map +1 -0
  227. package/utils/resolve.d.ts +3 -0
  228. package/utils/resolve.js +18 -0
  229. package/utils/resolve.js.map +1 -0
@@ -0,0 +1,97 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.createContentReviewStorageOperations = void 0;
9
+
10
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
+
12
+ var _index = require("./index");
13
+
14
+ var _error = _interopRequireDefault(require("@webiny/error"));
15
+
16
+ var _contentReview = require("./models/contentReview.model");
17
+
18
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
19
+
20
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
21
+
22
+ const createContentReviewStorageOperations = ({
23
+ cms,
24
+ security
25
+ }) => {
26
+ const getContentReviewModel = async () => {
27
+ security.disableAuthorization();
28
+ const model = await cms.getModel(_contentReview.CONTENT_REVIEW_MODEL_ID);
29
+ security.enableAuthorization();
30
+
31
+ if (!model) {
32
+ throw new _error.default(`Could not find "${_contentReview.CONTENT_REVIEW_MODEL_ID}" model.`, "MODEL_NOT_FOUND_ERROR");
33
+ }
34
+
35
+ return model;
36
+ };
37
+
38
+ const getContentReview = async ({
39
+ id
40
+ }) => {
41
+ const model = await getContentReviewModel();
42
+ security.disableAuthorization();
43
+ const entry = await cms.getEntryById(model, id);
44
+ security.enableAuthorization();
45
+ return (0, _index.getFieldValues)(entry, _index.baseFields);
46
+ };
47
+
48
+ return {
49
+ getContentReviewModel,
50
+ getContentReview,
51
+
52
+ async listContentReviews(params) {
53
+ const model = await getContentReviewModel();
54
+ security.disableAuthorization();
55
+ const [entries, meta] = await cms.listLatestEntries(model, _objectSpread(_objectSpread({}, params), {}, {
56
+ where: _objectSpread({}, params.where)
57
+ }));
58
+ security.enableAuthorization();
59
+ return [entries.map(entry => (0, _index.getFieldValues)(entry, _index.baseFields)), meta];
60
+ },
61
+
62
+ async createContentReview(params) {
63
+ const model = await getContentReviewModel();
64
+ security.disableAuthorization();
65
+ const entry = await cms.createEntry(model, params.data);
66
+ security.enableAuthorization();
67
+ return (0, _index.getFieldValues)(entry, _index.baseFields);
68
+ },
69
+
70
+ async updateContentReview(params) {
71
+ const model = await getContentReviewModel();
72
+ /**
73
+ * We're fetching the existing entry here because we're not accepting "app" field as input,
74
+ * but, we still need to retain its value after the "update" operation.
75
+ */
76
+
77
+ const existingEntry = await getContentReview({
78
+ id: params.id
79
+ });
80
+ security.disableAuthorization();
81
+ const entry = await cms.updateEntry(model, params.id, _objectSpread(_objectSpread({}, existingEntry), params.data));
82
+ security.enableAuthorization();
83
+ return (0, _index.getFieldValues)(entry, _index.baseFields);
84
+ },
85
+
86
+ async deleteContentReview(params) {
87
+ const model = await getContentReviewModel();
88
+ security.disableAuthorization();
89
+ await cms.deleteEntry(model, params.id);
90
+ security.enableAuthorization();
91
+ return true;
92
+ }
93
+
94
+ };
95
+ };
96
+
97
+ exports.createContentReviewStorageOperations = createContentReviewStorageOperations;
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createContentReviewStorageOperations","cms","security","getContentReviewModel","disableAuthorization","model","getModel","CONTENT_REVIEW_MODEL_ID","enableAuthorization","WebinyError","getContentReview","id","entry","getEntryById","getFieldValues","baseFields","listContentReviews","params","entries","meta","listLatestEntries","where","map","createContentReview","createEntry","data","updateContentReview","existingEntry","updateEntry","deleteContentReview","deleteEntry"],"sources":["contentReviewStorageOperations.ts"],"sourcesContent":["import { ApwContentReviewStorageOperations } from \"./types\";\nimport {\n baseFields,\n CreateApwStorageOperationsParams,\n getFieldValues\n} from \"~/storageOperations/index\";\nimport WebinyError from \"@webiny/error\";\nimport { CONTENT_REVIEW_MODEL_ID } from \"~/storageOperations/models/contentReview.model\";\n\nexport const createContentReviewStorageOperations = ({\n cms,\n security\n}: CreateApwStorageOperationsParams): ApwContentReviewStorageOperations => {\n const getContentReviewModel = async () => {\n security.disableAuthorization();\n const model = await cms.getModel(CONTENT_REVIEW_MODEL_ID);\n security.enableAuthorization();\n if (!model) {\n throw new WebinyError(\n `Could not find \"${CONTENT_REVIEW_MODEL_ID}\" model.`,\n \"MODEL_NOT_FOUND_ERROR\"\n );\n }\n return model;\n };\n const getContentReview: ApwContentReviewStorageOperations[\"getContentReview\"] = async ({\n id\n }) => {\n const model = await getContentReviewModel();\n security.disableAuthorization();\n const entry = await cms.getEntryById(model, id);\n security.enableAuthorization();\n return getFieldValues(entry, baseFields);\n };\n return {\n getContentReviewModel,\n getContentReview,\n async listContentReviews(params) {\n const model = await getContentReviewModel();\n security.disableAuthorization();\n const [entries, meta] = await cms.listLatestEntries(model, {\n ...params,\n where: {\n ...params.where\n }\n });\n security.enableAuthorization();\n return [entries.map(entry => getFieldValues(entry, baseFields)), meta];\n },\n async createContentReview(params) {\n const model = await getContentReviewModel();\n security.disableAuthorization();\n const entry = await cms.createEntry(model, params.data);\n security.enableAuthorization();\n return getFieldValues(entry, baseFields);\n },\n async updateContentReview(params) {\n const model = await getContentReviewModel();\n /**\n * We're fetching the existing entry here because we're not accepting \"app\" field as input,\n * but, we still need to retain its value after the \"update\" operation.\n */\n const existingEntry = await getContentReview({ id: params.id });\n\n security.disableAuthorization();\n const entry = await cms.updateEntry(model, params.id, {\n ...existingEntry,\n ...params.data\n });\n security.enableAuthorization();\n return getFieldValues(entry, baseFields);\n },\n async deleteContentReview(params) {\n const model = await getContentReviewModel();\n security.disableAuthorization();\n await cms.deleteEntry(model, params.id);\n security.enableAuthorization();\n return true;\n }\n };\n};\n"],"mappings":";;;;;;;;;;;AACA;;AAKA;;AACA;;;;;;AAEO,MAAMA,oCAAoC,GAAG,CAAC;EACjDC,GADiD;EAEjDC;AAFiD,CAAD,KAGuB;EACvE,MAAMC,qBAAqB,GAAG,YAAY;IACtCD,QAAQ,CAACE,oBAAT;IACA,MAAMC,KAAK,GAAG,MAAMJ,GAAG,CAACK,QAAJ,CAAaC,sCAAb,CAApB;IACAL,QAAQ,CAACM,mBAAT;;IACA,IAAI,CAACH,KAAL,EAAY;MACR,MAAM,IAAII,cAAJ,CACD,mBAAkBF,sCAAwB,UADzC,EAEF,uBAFE,CAAN;IAIH;;IACD,OAAOF,KAAP;EACH,CAXD;;EAYA,MAAMK,gBAAuE,GAAG,OAAO;IACnFC;EADmF,CAAP,KAE1E;IACF,MAAMN,KAAK,GAAG,MAAMF,qBAAqB,EAAzC;IACAD,QAAQ,CAACE,oBAAT;IACA,MAAMQ,KAAK,GAAG,MAAMX,GAAG,CAACY,YAAJ,CAAiBR,KAAjB,EAAwBM,EAAxB,CAApB;IACAT,QAAQ,CAACM,mBAAT;IACA,OAAO,IAAAM,qBAAA,EAAeF,KAAf,EAAsBG,iBAAtB,CAAP;EACH,CARD;;EASA,OAAO;IACHZ,qBADG;IAEHO,gBAFG;;IAGH,MAAMM,kBAAN,CAAyBC,MAAzB,EAAiC;MAC7B,MAAMZ,KAAK,GAAG,MAAMF,qBAAqB,EAAzC;MACAD,QAAQ,CAACE,oBAAT;MACA,MAAM,CAACc,OAAD,EAAUC,IAAV,IAAkB,MAAMlB,GAAG,CAACmB,iBAAJ,CAAsBf,KAAtB,kCACvBY,MADuB;QAE1BI,KAAK,oBACEJ,MAAM,CAACI,KADT;MAFqB,GAA9B;MAMAnB,QAAQ,CAACM,mBAAT;MACA,OAAO,CAACU,OAAO,CAACI,GAAR,CAAYV,KAAK,IAAI,IAAAE,qBAAA,EAAeF,KAAf,EAAsBG,iBAAtB,CAArB,CAAD,EAA0DI,IAA1D,CAAP;IACH,CAdE;;IAeH,MAAMI,mBAAN,CAA0BN,MAA1B,EAAkC;MAC9B,MAAMZ,KAAK,GAAG,MAAMF,qBAAqB,EAAzC;MACAD,QAAQ,CAACE,oBAAT;MACA,MAAMQ,KAAK,GAAG,MAAMX,GAAG,CAACuB,WAAJ,CAAgBnB,KAAhB,EAAuBY,MAAM,CAACQ,IAA9B,CAApB;MACAvB,QAAQ,CAACM,mBAAT;MACA,OAAO,IAAAM,qBAAA,EAAeF,KAAf,EAAsBG,iBAAtB,CAAP;IACH,CArBE;;IAsBH,MAAMW,mBAAN,CAA0BT,MAA1B,EAAkC;MAC9B,MAAMZ,KAAK,GAAG,MAAMF,qBAAqB,EAAzC;MACA;AACZ;AACA;AACA;;MACY,MAAMwB,aAAa,GAAG,MAAMjB,gBAAgB,CAAC;QAAEC,EAAE,EAAEM,MAAM,CAACN;MAAb,CAAD,CAA5C;MAEAT,QAAQ,CAACE,oBAAT;MACA,MAAMQ,KAAK,GAAG,MAAMX,GAAG,CAAC2B,WAAJ,CAAgBvB,KAAhB,EAAuBY,MAAM,CAACN,EAA9B,kCACbgB,aADa,GAEbV,MAAM,CAACQ,IAFM,EAApB;MAIAvB,QAAQ,CAACM,mBAAT;MACA,OAAO,IAAAM,qBAAA,EAAeF,KAAf,EAAsBG,iBAAtB,CAAP;IACH,CArCE;;IAsCH,MAAMc,mBAAN,CAA0BZ,MAA1B,EAAkC;MAC9B,MAAMZ,KAAK,GAAG,MAAMF,qBAAqB,EAAzC;MACAD,QAAQ,CAACE,oBAAT;MACA,MAAMH,GAAG,CAAC6B,WAAJ,CAAgBzB,KAAhB,EAAuBY,MAAM,CAACN,EAA9B,CAAN;MACAT,QAAQ,CAACM,mBAAT;MACA,OAAO,IAAP;IACH;;EA5CE,CAAP;AA8CH,CAvEM"}
@@ -0,0 +1,15 @@
1
+ import { CmsContext, CmsEntry, HeadlessCms } from "@webiny/api-headless-cms/types";
2
+ import { ApwStorageOperations } from "../types";
3
+ import { Security } from "@webiny/api-security/types";
4
+ export interface CreateApwStorageOperationsParams {
5
+ cms: HeadlessCms;
6
+ security: Security;
7
+ getCmsContext: () => CmsContext;
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
+ export declare const createStorageOperations: (params: CreateApwStorageOperationsParams) => ApwStorageOperations;
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.createStorageOperations = exports.baseFields = void 0;
9
+ exports.getFieldValues = getFieldValues;
10
+
11
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
12
+
13
+ var _pick = _interopRequireDefault(require("lodash/pick"));
14
+
15
+ var _reviewerStorageOperations = require("./reviewerStorageOperations");
16
+
17
+ var _workflowStorageOperations = require("./workflowStorageOperations");
18
+
19
+ var _contentReviewStorageOperations = require("./contentReviewStorageOperations");
20
+
21
+ var _changeRequestStorageOperations = require("./changeRequestStorageOperations");
22
+
23
+ var _commentStorageOperations = require("./commentStorageOperations");
24
+
25
+ var _models = require("./models");
26
+
27
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
28
+
29
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
30
+
31
+ /**
32
+ * Using any because value can be a lot of types.
33
+ * TODO @ts-refactor figure out correct types.
34
+ */
35
+ function getFieldValues(entry, fields) {
36
+ return _objectSpread(_objectSpread({}, (0, _pick.default)(entry, fields)), entry.values);
37
+ }
38
+
39
+ const baseFields = ["id", "createdBy", "createdOn", "savedOn"];
40
+ exports.baseFields = baseFields;
41
+
42
+ const createStorageOperations = params => {
43
+ const context = params.getCmsContext();
44
+ /**
45
+ * Register Apw models.
46
+ */
47
+
48
+ (0, _models.createApwModels)(context);
49
+ return _objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread({}, (0, _reviewerStorageOperations.createReviewerStorageOperations)(params)), (0, _workflowStorageOperations.createWorkflowStorageOperations)(params)), (0, _contentReviewStorageOperations.createContentReviewStorageOperations)(params)), (0, _changeRequestStorageOperations.createChangeRequestStorageOperations)(params)), (0, _commentStorageOperations.createCommentStorageOperations)(params));
50
+ };
51
+
52
+ exports.createStorageOperations = createStorageOperations;
@@ -0,0 +1 @@
1
+ {"version":3,"names":["getFieldValues","entry","fields","pick","values","baseFields","createStorageOperations","params","context","getCmsContext","createApwModels","createReviewerStorageOperations","createWorkflowStorageOperations","createContentReviewStorageOperations","createChangeRequestStorageOperations","createCommentStorageOperations"],"sources":["index.ts"],"sourcesContent":["import pick from \"lodash/pick\";\nimport { CmsContext, CmsEntry, HeadlessCms } from \"@webiny/api-headless-cms/types\";\nimport { ApwStorageOperations } from \"~/types\";\nimport { createReviewerStorageOperations } from \"./reviewerStorageOperations\";\nimport { createWorkflowStorageOperations } from \"./workflowStorageOperations\";\nimport { createContentReviewStorageOperations } from \"./contentReviewStorageOperations\";\nimport { createChangeRequestStorageOperations } from \"./changeRequestStorageOperations\";\nimport { createCommentStorageOperations } from \"~/storageOperations/commentStorageOperations\";\nimport { createApwModels } from \"./models\";\nimport { Security } from \"@webiny/api-security/types\";\n\nexport interface CreateApwStorageOperationsParams {\n cms: HeadlessCms;\n security: Security;\n getCmsContext: () => CmsContext;\n}\n\n/**\n * Using any because value can be a lot of types.\n * TODO @ts-refactor figure out correct types.\n */\nexport function getFieldValues(entry: CmsEntry, fields: string[]): any {\n return { ...pick(entry, fields), ...entry.values };\n}\n\nexport const baseFields = [\"id\", \"createdBy\", \"createdOn\", \"savedOn\"];\n\nexport const createStorageOperations = (\n params: CreateApwStorageOperationsParams\n): ApwStorageOperations => {\n const context = params.getCmsContext();\n /**\n * Register Apw models.\n */\n createApwModels(context);\n\n return {\n ...createReviewerStorageOperations(params),\n ...createWorkflowStorageOperations(params),\n ...createContentReviewStorageOperations(params),\n ...createChangeRequestStorageOperations(params),\n ...createCommentStorageOperations(params)\n };\n};\n"],"mappings":";;;;;;;;;;;;AAAA;;AAGA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;AASA;AACA;AACA;AACA;AACO,SAASA,cAAT,CAAwBC,KAAxB,EAAyCC,MAAzC,EAAgE;EACnE,uCAAY,IAAAC,aAAA,EAAKF,KAAL,EAAYC,MAAZ,CAAZ,GAAoCD,KAAK,CAACG,MAA1C;AACH;;AAEM,MAAMC,UAAU,GAAG,CAAC,IAAD,EAAO,WAAP,EAAoB,WAApB,EAAiC,SAAjC,CAAnB;;;AAEA,MAAMC,uBAAuB,GAChCC,MADmC,IAEZ;EACvB,MAAMC,OAAO,GAAGD,MAAM,CAACE,aAAP,EAAhB;EACA;AACJ;AACA;;EACI,IAAAC,uBAAA,EAAgBF,OAAhB;EAEA,iFACO,IAAAG,0DAAA,EAAgCJ,MAAhC,CADP,GAEO,IAAAK,0DAAA,EAAgCL,MAAhC,CAFP,GAGO,IAAAM,oEAAA,EAAqCN,MAArC,CAHP,GAIO,IAAAO,oEAAA,EAAqCP,MAArC,CAJP,GAKO,IAAAQ,wDAAA,EAA+BR,MAA/B,CALP;AAOH,CAhBM"}
@@ -0,0 +1,3 @@
1
+ import { WorkflowModelDefinition } from "../../types";
2
+ export declare const CHANGE_REQUEST_MODEL_ID = "apwChangeRequestModelDefinition";
3
+ export declare const createChangeRequestModelDefinition: () => WorkflowModelDefinition;
@@ -0,0 +1,59 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.createChangeRequestModelDefinition = exports.CHANGE_REQUEST_MODEL_ID = void 0;
7
+
8
+ var _utils = require("./utils");
9
+
10
+ const bodyField = () => (0, _utils.createModelField)({
11
+ label: "Body",
12
+ type: "rich-text",
13
+ parent: "changeRequest"
14
+ });
15
+
16
+ const titleField = () => (0, _utils.createModelField)({
17
+ label: "Title",
18
+ type: "text",
19
+ parent: "changeRequest"
20
+ });
21
+
22
+ const resolvedField = () => (0, _utils.createModelField)({
23
+ label: "Resolved",
24
+ type: "boolean",
25
+ parent: "changeRequest"
26
+ });
27
+
28
+ const mediaField = () => (0, _utils.createModelField)({
29
+ label: "Media",
30
+ type: "file",
31
+ parent: "changeRequest"
32
+ });
33
+
34
+ const stepField = () => (0, _utils.createModelField)({
35
+ label: "Step",
36
+ type: "text",
37
+ parent: "changeRequest",
38
+ validation: [{
39
+ message: "`step` field value is required in changeRequest.",
40
+ name: "required"
41
+ }]
42
+ });
43
+
44
+ const CHANGE_REQUEST_MODEL_ID = "apwChangeRequestModelDefinition";
45
+ exports.CHANGE_REQUEST_MODEL_ID = CHANGE_REQUEST_MODEL_ID;
46
+
47
+ const createChangeRequestModelDefinition = () => {
48
+ return {
49
+ name: "APW - Change Request",
50
+ modelId: CHANGE_REQUEST_MODEL_ID,
51
+ titleFieldId: "title",
52
+ layout: [["changeRequest_body"], ["changeRequest_title"], ["changeRequest_resolved"], ["changeRequest_media"], ["changeRequest_step"]],
53
+ fields: [bodyField(), titleField(), resolvedField(), mediaField(), stepField()],
54
+ description: "",
55
+ isPrivate: true
56
+ };
57
+ };
58
+
59
+ exports.createChangeRequestModelDefinition = createChangeRequestModelDefinition;
@@ -0,0 +1 @@
1
+ {"version":3,"names":["bodyField","createModelField","label","type","parent","titleField","resolvedField","mediaField","stepField","validation","message","name","CHANGE_REQUEST_MODEL_ID","createChangeRequestModelDefinition","modelId","titleFieldId","layout","fields","description","isPrivate"],"sources":["changeRequest.model.ts"],"sourcesContent":["import { createModelField } from \"./utils\";\nimport { WorkflowModelDefinition } from \"~/types\";\n\nconst bodyField = () =>\n createModelField({\n label: \"Body\",\n type: \"rich-text\",\n parent: \"changeRequest\"\n });\n\nconst titleField = () =>\n createModelField({\n label: \"Title\",\n type: \"text\",\n parent: \"changeRequest\"\n });\n\nconst resolvedField = () =>\n createModelField({\n label: \"Resolved\",\n type: \"boolean\",\n parent: \"changeRequest\"\n });\n\nconst mediaField = () =>\n createModelField({\n label: \"Media\",\n type: \"file\",\n parent: \"changeRequest\"\n });\n\nconst stepField = () =>\n createModelField({\n label: \"Step\",\n type: \"text\",\n parent: \"changeRequest\",\n validation: [\n {\n message: \"`step` field value is required in changeRequest.\",\n name: \"required\"\n }\n ]\n });\n\nexport const CHANGE_REQUEST_MODEL_ID = \"apwChangeRequestModelDefinition\";\n\nexport const createChangeRequestModelDefinition = (): WorkflowModelDefinition => {\n return {\n name: \"APW - Change Request\",\n modelId: CHANGE_REQUEST_MODEL_ID,\n titleFieldId: \"title\",\n layout: [\n [\"changeRequest_body\"],\n [\"changeRequest_title\"],\n [\"changeRequest_resolved\"],\n [\"changeRequest_media\"],\n [\"changeRequest_step\"]\n ],\n fields: [bodyField(), titleField(), resolvedField(), mediaField(), stepField()],\n description: \"\",\n isPrivate: true\n };\n};\n"],"mappings":";;;;;;;AAAA;;AAGA,MAAMA,SAAS,GAAG,MACd,IAAAC,uBAAA,EAAiB;EACbC,KAAK,EAAE,MADM;EAEbC,IAAI,EAAE,WAFO;EAGbC,MAAM,EAAE;AAHK,CAAjB,CADJ;;AAOA,MAAMC,UAAU,GAAG,MACf,IAAAJ,uBAAA,EAAiB;EACbC,KAAK,EAAE,OADM;EAEbC,IAAI,EAAE,MAFO;EAGbC,MAAM,EAAE;AAHK,CAAjB,CADJ;;AAOA,MAAME,aAAa,GAAG,MAClB,IAAAL,uBAAA,EAAiB;EACbC,KAAK,EAAE,UADM;EAEbC,IAAI,EAAE,SAFO;EAGbC,MAAM,EAAE;AAHK,CAAjB,CADJ;;AAOA,MAAMG,UAAU,GAAG,MACf,IAAAN,uBAAA,EAAiB;EACbC,KAAK,EAAE,OADM;EAEbC,IAAI,EAAE,MAFO;EAGbC,MAAM,EAAE;AAHK,CAAjB,CADJ;;AAOA,MAAMI,SAAS,GAAG,MACd,IAAAP,uBAAA,EAAiB;EACbC,KAAK,EAAE,MADM;EAEbC,IAAI,EAAE,MAFO;EAGbC,MAAM,EAAE,eAHK;EAIbK,UAAU,EAAE,CACR;IACIC,OAAO,EAAE,kDADb;IAEIC,IAAI,EAAE;EAFV,CADQ;AAJC,CAAjB,CADJ;;AAaO,MAAMC,uBAAuB,GAAG,iCAAhC;;;AAEA,MAAMC,kCAAkC,GAAG,MAA+B;EAC7E,OAAO;IACHF,IAAI,EAAE,sBADH;IAEHG,OAAO,EAAEF,uBAFN;IAGHG,YAAY,EAAE,OAHX;IAIHC,MAAM,EAAE,CACJ,CAAC,oBAAD,CADI,EAEJ,CAAC,qBAAD,CAFI,EAGJ,CAAC,wBAAD,CAHI,EAIJ,CAAC,qBAAD,CAJI,EAKJ,CAAC,oBAAD,CALI,CAJL;IAWHC,MAAM,EAAE,CAACjB,SAAS,EAAV,EAAcK,UAAU,EAAxB,EAA4BC,aAAa,EAAzC,EAA6CC,UAAU,EAAvD,EAA2DC,SAAS,EAApE,CAXL;IAYHU,WAAW,EAAE,EAZV;IAaHC,SAAS,EAAE;EAbR,CAAP;AAeH,CAhBM"}
@@ -0,0 +1,7 @@
1
+ import { WorkflowModelDefinition } from "../../types";
2
+ interface CreateCommentModelDefinitionParams {
3
+ modelId: string;
4
+ }
5
+ export declare const COMMENT_MODEL_ID = "apwCommentModelDefinition";
6
+ export declare const createCommentModelDefinition: ({ modelId }: CreateCommentModelDefinitionParams) => WorkflowModelDefinition;
7
+ export {};
@@ -0,0 +1,60 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.createCommentModelDefinition = exports.COMMENT_MODEL_ID = void 0;
7
+
8
+ var _utils = require("./utils");
9
+
10
+ const commentBody = () => (0, _utils.createModelField)({
11
+ label: "Body",
12
+ type: "rich-text",
13
+ parent: "comment"
14
+ });
15
+
16
+ const changeRequestRef = modelId => (0, _utils.createModelField)({
17
+ label: "Change Request",
18
+ type: "ref",
19
+ parent: "comment",
20
+ settings: {
21
+ models: [{
22
+ modelId
23
+ }]
24
+ }
25
+ });
26
+
27
+ const stepField = () => (0, _utils.createModelField)({
28
+ label: "Step",
29
+ type: "text",
30
+ parent: "comment",
31
+ validation: [{
32
+ message: "`step` field value is required in comment.",
33
+ name: "required"
34
+ }]
35
+ });
36
+
37
+ const mediaField = () => (0, _utils.createModelField)({
38
+ label: "Media",
39
+ type: "file",
40
+ parent: "comment"
41
+ });
42
+
43
+ const COMMENT_MODEL_ID = "apwCommentModelDefinition";
44
+ exports.COMMENT_MODEL_ID = COMMENT_MODEL_ID;
45
+
46
+ const createCommentModelDefinition = ({
47
+ modelId
48
+ }) => {
49
+ return {
50
+ name: "APW - Comment",
51
+ modelId: COMMENT_MODEL_ID,
52
+ titleFieldId: "step",
53
+ layout: [["comment_body"], ["comment_changeRequest"], ["comment_step"], ["comment_media"]],
54
+ fields: [commentBody(), changeRequestRef(modelId), stepField(), mediaField()],
55
+ description: "",
56
+ isPrivate: true
57
+ };
58
+ };
59
+
60
+ exports.createCommentModelDefinition = createCommentModelDefinition;
@@ -0,0 +1 @@
1
+ {"version":3,"names":["commentBody","createModelField","label","type","parent","changeRequestRef","modelId","settings","models","stepField","validation","message","name","mediaField","COMMENT_MODEL_ID","createCommentModelDefinition","titleFieldId","layout","fields","description","isPrivate"],"sources":["comment.model.ts"],"sourcesContent":["import { createModelField } from \"./utils\";\nimport { WorkflowModelDefinition } from \"~/types\";\n\nconst commentBody = () =>\n createModelField({\n label: \"Body\",\n type: \"rich-text\",\n parent: \"comment\"\n });\n\nconst changeRequestRef = (modelId: string) =>\n createModelField({\n label: \"Change Request\",\n type: \"ref\",\n parent: \"comment\",\n settings: {\n models: [\n {\n modelId\n }\n ]\n }\n });\n\nconst stepField = () =>\n createModelField({\n label: \"Step\",\n type: \"text\",\n parent: \"comment\",\n validation: [\n {\n message: \"`step` field value is required in comment.\",\n name: \"required\"\n }\n ]\n });\n\nconst mediaField = () =>\n createModelField({\n label: \"Media\",\n type: \"file\",\n parent: \"comment\"\n });\n\ninterface CreateCommentModelDefinitionParams {\n modelId: string;\n}\n\nexport const COMMENT_MODEL_ID = \"apwCommentModelDefinition\";\n\nexport const createCommentModelDefinition = ({\n modelId\n}: CreateCommentModelDefinitionParams): WorkflowModelDefinition => {\n return {\n name: \"APW - Comment\",\n modelId: COMMENT_MODEL_ID,\n titleFieldId: \"step\",\n layout: [[\"comment_body\"], [\"comment_changeRequest\"], [\"comment_step\"], [\"comment_media\"]],\n fields: [commentBody(), changeRequestRef(modelId), stepField(), mediaField()],\n description: \"\",\n isPrivate: true\n };\n};\n"],"mappings":";;;;;;;AAAA;;AAGA,MAAMA,WAAW,GAAG,MAChB,IAAAC,uBAAA,EAAiB;EACbC,KAAK,EAAE,MADM;EAEbC,IAAI,EAAE,WAFO;EAGbC,MAAM,EAAE;AAHK,CAAjB,CADJ;;AAOA,MAAMC,gBAAgB,GAAIC,OAAD,IACrB,IAAAL,uBAAA,EAAiB;EACbC,KAAK,EAAE,gBADM;EAEbC,IAAI,EAAE,KAFO;EAGbC,MAAM,EAAE,SAHK;EAIbG,QAAQ,EAAE;IACNC,MAAM,EAAE,CACJ;MACIF;IADJ,CADI;EADF;AAJG,CAAjB,CADJ;;AAcA,MAAMG,SAAS,GAAG,MACd,IAAAR,uBAAA,EAAiB;EACbC,KAAK,EAAE,MADM;EAEbC,IAAI,EAAE,MAFO;EAGbC,MAAM,EAAE,SAHK;EAIbM,UAAU,EAAE,CACR;IACIC,OAAO,EAAE,4CADb;IAEIC,IAAI,EAAE;EAFV,CADQ;AAJC,CAAjB,CADJ;;AAaA,MAAMC,UAAU,GAAG,MACf,IAAAZ,uBAAA,EAAiB;EACbC,KAAK,EAAE,OADM;EAEbC,IAAI,EAAE,MAFO;EAGbC,MAAM,EAAE;AAHK,CAAjB,CADJ;;AAWO,MAAMU,gBAAgB,GAAG,2BAAzB;;;AAEA,MAAMC,4BAA4B,GAAG,CAAC;EACzCT;AADyC,CAAD,KAEuB;EAC/D,OAAO;IACHM,IAAI,EAAE,eADH;IAEHN,OAAO,EAAEQ,gBAFN;IAGHE,YAAY,EAAE,MAHX;IAIHC,MAAM,EAAE,CAAC,CAAC,cAAD,CAAD,EAAmB,CAAC,uBAAD,CAAnB,EAA8C,CAAC,cAAD,CAA9C,EAAgE,CAAC,eAAD,CAAhE,CAJL;IAKHC,MAAM,EAAE,CAAClB,WAAW,EAAZ,EAAgBK,gBAAgB,CAACC,OAAD,CAAhC,EAA2CG,SAAS,EAApD,EAAwDI,UAAU,EAAlE,CALL;IAMHM,WAAW,EAAE,EANV;IAOHC,SAAS,EAAE;EAPR,CAAP;AASH,CAZM"}
@@ -0,0 +1,15 @@
1
+ import { CmsModelPlugin } from "@webiny/api-headless-cms";
2
+ import { CmsModel, CmsGroup } from "@webiny/api-headless-cms/types";
3
+ interface Params {
4
+ group: Pick<CmsGroup, "id" | "name">;
5
+ /**
6
+ * Locale and tenant do not need to be defined.
7
+ * In that case model is not bound to any locale or tenant.
8
+ * You can bind it to locale, tenant, both or none.
9
+ */
10
+ locale?: string;
11
+ tenant?: string;
12
+ modelDefinition: Omit<CmsModel, "locale" | "tenant" | "webinyVersion" | "group">;
13
+ }
14
+ export declare const contentModelPluginFactory: (params: Params) => CmsModelPlugin;
15
+ export {};
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.contentModelPluginFactory = void 0;
9
+
10
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
+
12
+ var _apiHeadlessCms = require("@webiny/api-headless-cms");
13
+
14
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
15
+
16
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
17
+
18
+ const contentModelPluginFactory = params => {
19
+ const {
20
+ group,
21
+ locale,
22
+ tenant,
23
+ modelDefinition
24
+ } = params;
25
+ return (0, _apiHeadlessCms.createCmsModel)(_objectSpread({
26
+ group,
27
+ locale,
28
+ tenant
29
+ }, modelDefinition));
30
+ };
31
+
32
+ exports.contentModelPluginFactory = contentModelPluginFactory;
@@ -0,0 +1 @@
1
+ {"version":3,"names":["contentModelPluginFactory","params","group","locale","tenant","modelDefinition","createCmsModel"],"sources":["contentModelPluginFactory.ts"],"sourcesContent":["import { CmsModelPlugin, createCmsModel } from \"@webiny/api-headless-cms\";\nimport { CmsModel, CmsGroup } from \"@webiny/api-headless-cms/types\";\n\ninterface Params {\n group: Pick<CmsGroup, \"id\" | \"name\">;\n /**\n * Locale and tenant do not need to be defined.\n * In that case model is not bound to any locale or tenant.\n * You can bind it to locale, tenant, both or none.\n */\n locale?: string;\n tenant?: string;\n modelDefinition: Omit<CmsModel, \"locale\" | \"tenant\" | \"webinyVersion\" | \"group\">;\n}\n\nexport const contentModelPluginFactory = (params: Params): CmsModelPlugin => {\n const { group, locale, tenant, modelDefinition } = params;\n\n return createCmsModel({\n group,\n locale,\n tenant,\n ...modelDefinition\n });\n};\n"],"mappings":";;;;;;;;;;;AAAA;;;;;;AAeO,MAAMA,yBAAyB,GAAIC,MAAD,IAAoC;EACzE,MAAM;IAAEC,KAAF;IAASC,MAAT;IAAiBC,MAAjB;IAAyBC;EAAzB,IAA6CJ,MAAnD;EAEA,OAAO,IAAAK,8BAAA;IACHJ,KADG;IAEHC,MAFG;IAGHC;EAHG,GAIAC,eAJA,EAAP;AAMH,CATM"}
@@ -0,0 +1,7 @@
1
+ import { WorkflowModelDefinition } from "../../types";
2
+ interface CreateContentReviewModelDefinitionParams {
3
+ reviewerModelId: string;
4
+ }
5
+ export declare const CONTENT_REVIEW_MODEL_ID = "apwContentReviewModelDefinition";
6
+ export declare const createContentReviewModelDefinition: ({ reviewerModelId }: CreateContentReviewModelDefinitionParams) => WorkflowModelDefinition;
7
+ export {};
@@ -0,0 +1,257 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.createContentReviewModelDefinition = exports.CONTENT_REVIEW_MODEL_ID = void 0;
7
+
8
+ var _utils = require("./utils");
9
+
10
+ var _workflow = require("./workflow.model");
11
+
12
+ const contentField = fields => (0, _utils.createModelField)({
13
+ label: "Content",
14
+ parent: "contentReview",
15
+ type: "object",
16
+ multipleValues: false,
17
+ settings: {
18
+ fields
19
+ },
20
+ validation: [{
21
+ message: "`content` field value is required in contentReview.",
22
+ name: "required"
23
+ }]
24
+ });
25
+
26
+ const contentStatus = () => (0, _utils.createModelField)({
27
+ label: "Status",
28
+ parent: "contentReview",
29
+ type: "text",
30
+ predefinedValues: {
31
+ enabled: true,
32
+ values: [{
33
+ label: "Under review",
34
+ value: "underReview"
35
+ }, {
36
+ label: "Ready to be published",
37
+ value: "readyToBePublished"
38
+ }, {
39
+ label: "Published",
40
+ value: "published"
41
+ }]
42
+ },
43
+ validation: [{
44
+ message: "`status` field value is required in contentReview.",
45
+ name: "required"
46
+ }]
47
+ });
48
+
49
+ const titleField = () => (0, _utils.createModelField)({
50
+ label: "Title",
51
+ type: "text",
52
+ parent: "contentReview",
53
+ validation: [{
54
+ message: "`title` field value is required in contentReview.",
55
+ name: "required"
56
+ }]
57
+ });
58
+
59
+ const contentIdField = () => (0, _utils.createModelField)({
60
+ label: "Id",
61
+ type: "text",
62
+ parent: "contentReview Content",
63
+ validation: [{
64
+ message: "`id` field value is required in contentReview Content.",
65
+ name: "required"
66
+ }]
67
+ });
68
+
69
+ const contentWorkflowIdField = () => (0, _utils.createModelField)({
70
+ label: "Workflow Id",
71
+ type: "text",
72
+ parent: "contentReview Content",
73
+ validation: [{
74
+ message: "`workflowId` field value is required in contentReview Content.",
75
+ name: "required"
76
+ }]
77
+ });
78
+
79
+ const contentTypeField = () => (0, _utils.createModelField)({
80
+ label: "Type",
81
+ type: "text",
82
+ parent: "contentReview Type",
83
+ predefinedValues: {
84
+ enabled: true,
85
+ values: [{
86
+ label: "Page",
87
+ value: "page"
88
+ }, {
89
+ value: "cms-entry",
90
+ label: "CMS Entry"
91
+ }]
92
+ },
93
+ validation: [{
94
+ message: "`type` field value is required in contentReview Type.",
95
+ name: "required"
96
+ }]
97
+ });
98
+
99
+ const contentSettingsField = fields => (0, _utils.createModelField)({
100
+ label: "Settings",
101
+ parent: "contentReview Content",
102
+ type: "object",
103
+ multipleValues: false,
104
+ settings: {
105
+ fields
106
+ }
107
+ });
108
+
109
+ const contentSettingsModelIdField = () => (0, _utils.createModelField)({
110
+ label: "Model Id",
111
+ parent: "contentReview Settings",
112
+ type: "text"
113
+ });
114
+
115
+ const scheduledActionIdField = () => (0, _utils.createModelField)({
116
+ label: "Scheduled action Id",
117
+ type: "text",
118
+ parent: "contentReview Content"
119
+ });
120
+
121
+ const contentScheduledOnField = () => (0, _utils.createModelField)({
122
+ label: "Scheduled on",
123
+ type: "datetime",
124
+ parent: "contentReview Content"
125
+ });
126
+
127
+ const contentScheduledByField = () => (0, _utils.createModelField)({
128
+ label: "Scheduled by",
129
+ type: "text",
130
+ parent: "contentReview Content"
131
+ });
132
+
133
+ const contentPublishedByField = () => (0, _utils.createModelField)({
134
+ label: "Published by",
135
+ type: "text",
136
+ parent: "contentReview Content"
137
+ });
138
+
139
+ const stepStatusField = () => ({
140
+ multipleValues: false,
141
+ listValidation: [],
142
+ renderer: {
143
+ name: "radio-buttons"
144
+ },
145
+ predefinedValues: {
146
+ enabled: true,
147
+ values: [{
148
+ value: "done",
149
+ label: "Steps done"
150
+ }, {
151
+ value: "active",
152
+ label: "Step active"
153
+ }, {
154
+ value: "inactive",
155
+ label: "Step inactive"
156
+ }]
157
+ },
158
+ label: "Status",
159
+ id: "contentReview_steps_status",
160
+ type: "text",
161
+ validation: [{
162
+ message: "`status` field value is required in contentReview steps status.",
163
+ name: "required"
164
+ }],
165
+ storageId: "status",
166
+ fieldId: "status"
167
+ });
168
+
169
+ const stepPendingChangeRequests = () => (0, _utils.createModelField)({
170
+ label: "Pending change requests",
171
+ type: "number",
172
+ parent: "contentReview Step",
173
+ validation: [{
174
+ message: "`pendingChangeRequests` field value is required in contentReview step.",
175
+ name: "required"
176
+ }]
177
+ });
178
+
179
+ const stepTotalComments = () => (0, _utils.createModelField)({
180
+ label: "Total comments",
181
+ type: "number",
182
+ parent: "contentReview Step",
183
+ validation: [{
184
+ message: "`totalComments` field value is required in contentReview step.",
185
+ name: "required"
186
+ }]
187
+ });
188
+
189
+ const latestCommentId = () => (0, _utils.createModelField)({
190
+ label: "Latest comment Id",
191
+ type: "text",
192
+ parent: "contentReview"
193
+ });
194
+
195
+ const stepSignOffProvidedOn = () => (0, _utils.createModelField)({
196
+ label: "Sign off provided on",
197
+ type: "datetime",
198
+ parent: "contentReview Step"
199
+ });
200
+
201
+ const stepSignOffProvidedBy = fields => (0, _utils.createModelField)({
202
+ label: "Sign off provided By",
203
+ type: "object",
204
+ parent: "contentReview Step",
205
+ multipleValues: false,
206
+ settings: {
207
+ fields
208
+ }
209
+ });
210
+
211
+ const stepSignOffProvidedById = () => (0, _utils.createModelField)({
212
+ label: "Id",
213
+ type: "text",
214
+ parent: "contentReview Step"
215
+ });
216
+
217
+ const stepSignOffProvidedByDisplayName = () => (0, _utils.createModelField)({
218
+ label: "DisplayName",
219
+ type: "text",
220
+ parent: "contentReview Step"
221
+ });
222
+
223
+ const stepsField = fields => ({
224
+ id: "contentReview_steps",
225
+ label: "Steps",
226
+ type: "object",
227
+ settings: {
228
+ fields,
229
+ layout: fields.map(field => [field.storageId])
230
+ },
231
+ listValidation: [],
232
+ validation: [],
233
+ fieldId: "steps",
234
+ storageId: "steps",
235
+ multipleValues: true,
236
+ predefinedValues: {
237
+ values: [],
238
+ enabled: false
239
+ }
240
+ });
241
+
242
+ const CONTENT_REVIEW_MODEL_ID = "apwContentReviewModelDefinition";
243
+ exports.CONTENT_REVIEW_MODEL_ID = CONTENT_REVIEW_MODEL_ID;
244
+
245
+ const createContentReviewModelDefinition = ({
246
+ reviewerModelId
247
+ }) => ({
248
+ name: "APW - Content Review",
249
+ modelId: CONTENT_REVIEW_MODEL_ID,
250
+ titleFieldId: "content",
251
+ layout: [["contentReview_title"], ["contentReview_content"], ["contentReview_status"], ["contentReview_reviewRequestedBy"], ["contentReview_steps"], ["contentReview_changeRequested"], ["contentReview_latestCommentId"]],
252
+ fields: [titleField(), contentField([contentIdField(), contentTypeField(), contentWorkflowIdField(), contentSettingsField([contentSettingsModelIdField()]), contentScheduledOnField(), contentScheduledByField(), scheduledActionIdField(), contentPublishedByField()]), contentStatus(), stepsField([(0, _workflow.stepTitleField)(), (0, _workflow.stepTypeField)(), (0, _workflow.stepIdField)(), (0, _workflow.stepReviewersField)(reviewerModelId), stepStatusField(), stepPendingChangeRequests(), stepTotalComments(), stepSignOffProvidedOn(), stepSignOffProvidedBy([stepSignOffProvidedById(), stepSignOffProvidedByDisplayName()])]), latestCommentId()],
253
+ description: "",
254
+ isPrivate: true
255
+ });
256
+
257
+ exports.createContentReviewModelDefinition = createContentReviewModelDefinition;