@webiny/api-apw 0.0.0-unstable.97a151f74d → 0.0.0-unstable.98511f29f1
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.
- package/ApwChangeRequestNotification.js +0 -10
- package/ApwChangeRequestNotification.js.map +1 -1
- package/ApwCommentNotification.js +0 -10
- package/ApwCommentNotification.js.map +1 -1
- package/ApwContentReviewNotification.js +0 -10
- package/ApwContentReviewNotification.js.map +1 -1
- package/ApwContentUrlPlugin.js +0 -10
- package/ApwContentUrlPlugin.js.map +1 -1
- package/ContentApwSettingsPlugin.js +0 -5
- package/ContentApwSettingsPlugin.js.map +1 -1
- package/crud/createChangeRequestMethods.js +4 -11
- package/crud/createChangeRequestMethods.js.map +1 -1
- package/crud/createCommentMethods.js +4 -12
- package/crud/createCommentMethods.js.map +1 -1
- package/crud/createContentReviewMethods.js +39 -88
- package/crud/createContentReviewMethods.js.map +1 -1
- package/crud/createReviewerMethods.js +4 -12
- package/crud/createReviewerMethods.js.map +1 -1
- package/crud/createWorkflowMethods.js +4 -17
- package/crud/createWorkflowMethods.js.map +1 -1
- package/crud/index.js +0 -25
- package/crud/index.js.map +1 -1
- package/crud/utils.js +0 -28
- package/crud/utils.js.map +1 -1
- package/index.d.ts +1 -2
- package/index.js +1 -15
- package/index.js.map +1 -1
- package/package.json +40 -47
- package/plugins/cms/CmsEntryApwSettingsGetterPlugin.js +0 -15
- package/plugins/cms/CmsEntryApwSettingsGetterPlugin.js.map +1 -1
- package/plugins/cms/apwEntryPlugins.js +0 -8
- package/plugins/cms/apwEntryPlugins.js.map +1 -1
- package/plugins/cms/index.js +0 -13
- package/plugins/cms/index.js.map +1 -1
- package/plugins/cms/linkContentReviewToEntry.js +2 -19
- package/plugins/cms/linkContentReviewToEntry.js.map +1 -1
- package/plugins/cms/linkWorkflowToEntry.js +9 -38
- package/plugins/cms/linkWorkflowToEntry.js.map +1 -1
- package/plugins/cms/notifications/changeRequestNotification.js +0 -4
- package/plugins/cms/notifications/changeRequestNotification.js.map +1 -1
- package/plugins/cms/notifications/commentNotification.js +0 -4
- package/plugins/cms/notifications/commentNotification.js.map +1 -1
- package/plugins/cms/notifications/contentReviewNotification.js +0 -4
- package/plugins/cms/notifications/contentReviewNotification.js.map +1 -1
- package/plugins/cms/notifications/contentUrl.js +1 -8
- package/plugins/cms/notifications/contentUrl.js.map +1 -1
- package/plugins/cms/triggerContentReview.js +3 -17
- package/plugins/cms/triggerContentReview.js.map +1 -1
- package/plugins/cms/updateContentReviewStatus.js +4 -22
- package/plugins/cms/updateContentReviewStatus.js.map +1 -1
- package/plugins/cms/utils.js +2 -47
- package/plugins/cms/utils.js.map +1 -1
- package/plugins/context.d.ts +0 -1
- package/plugins/context.js +2 -47
- package/plugins/context.js.map +1 -1
- package/plugins/graphql/changeRequest.gql.js +3 -10
- package/plugins/graphql/changeRequest.gql.js.map +1 -1
- package/plugins/graphql/comment.gql.js +3 -10
- package/plugins/graphql/comment.gql.js.map +1 -1
- package/plugins/graphql/contentReview.gql.js +6 -25
- package/plugins/graphql/contentReview.gql.js.map +1 -1
- package/plugins/graphql/reviewer.gql.js +3 -10
- package/plugins/graphql/reviewer.gql.js.map +1 -1
- package/plugins/graphql/workflow.gql.js +3 -10
- package/plugins/graphql/workflow.gql.js.map +1 -1
- package/plugins/graphql.js +3 -18
- package/plugins/graphql.js.map +1 -1
- package/plugins/hooks/createReviewerFromIdentity.js +2 -11
- package/plugins/hooks/createReviewerFromIdentity.js.map +1 -1
- package/plugins/hooks/deleteChangeRequestsAfterContentReview.js +1 -9
- package/plugins/hooks/deleteChangeRequestsAfterContentReview.js.map +1 -1
- package/plugins/hooks/deleteCommentsAfterChangeRequest.js +1 -8
- package/plugins/hooks/deleteCommentsAfterChangeRequest.js.map +1 -1
- package/plugins/hooks/index.js +0 -14
- package/plugins/hooks/index.js.map +1 -1
- package/plugins/hooks/initializeContentReviewSteps.js +10 -17
- package/plugins/hooks/initializeContentReviewSteps.js.map +1 -1
- package/plugins/hooks/initializeNotifications.js +0 -5
- package/plugins/hooks/initializeNotifications.js.map +1 -1
- package/plugins/hooks/listContentReviews.js +0 -12
- package/plugins/hooks/listContentReviews.js.map +1 -1
- package/plugins/hooks/notifications/appUrl.js +0 -4
- package/plugins/hooks/notifications/appUrl.js.map +1 -1
- package/plugins/hooks/notifications/changeRequestAfterCreate.js +3 -36
- package/plugins/hooks/notifications/changeRequestAfterCreate.js.map +1 -1
- package/plugins/hooks/notifications/changeRequestUrl.js +0 -4
- package/plugins/hooks/notifications/changeRequestUrl.js.map +1 -1
- package/plugins/hooks/notifications/commentAfterCreate.js +3 -38
- package/plugins/hooks/notifications/commentAfterCreate.js.map +1 -1
- package/plugins/hooks/notifications/commentUrl.js +0 -4
- package/plugins/hooks/notifications/commentUrl.js.map +1 -1
- package/plugins/hooks/notifications/contentReviewAfterCreate.js +4 -32
- package/plugins/hooks/notifications/contentReviewAfterCreate.js.map +1 -1
- package/plugins/hooks/notifications/contentReviewUrl.js +0 -4
- package/plugins/hooks/notifications/contentReviewUrl.js.map +1 -1
- package/plugins/hooks/notifications/contentUrl.js +0 -5
- package/plugins/hooks/notifications/contentUrl.js.map +1 -1
- package/plugins/hooks/notifications/lastChangeRequestNotificationPlugin.js +0 -4
- package/plugins/hooks/notifications/lastChangeRequestNotificationPlugin.js.map +1 -1
- package/plugins/hooks/notifications/lastCommentNotificationPlugin.js +0 -4
- package/plugins/hooks/notifications/lastCommentNotificationPlugin.js.map +1 -1
- package/plugins/hooks/notifications/lastContentReviewNotificationPlugin.js +0 -4
- package/plugins/hooks/notifications/lastContentReviewNotificationPlugin.js.map +1 -1
- package/plugins/hooks/notifications/reviewers.js +15 -21
- package/plugins/hooks/notifications/reviewers.js.map +1 -1
- package/plugins/hooks/notifications/sendChangeRequestNotification.js +0 -11
- package/plugins/hooks/notifications/sendChangeRequestNotification.js.map +1 -1
- package/plugins/hooks/notifications/sendCommentNotification.js +0 -11
- package/plugins/hooks/notifications/sendCommentNotification.js.map +1 -1
- package/plugins/hooks/notifications/sendContentReviewNotification.js +0 -11
- package/plugins/hooks/notifications/sendContentReviewNotification.js.map +1 -1
- package/plugins/hooks/updatePendingChangeRequests.js +0 -8
- package/plugins/hooks/updatePendingChangeRequests.js.map +1 -1
- package/plugins/hooks/updateTotalComments.js +0 -9
- package/plugins/hooks/updateTotalComments.js.map +1 -1
- package/plugins/hooks/validateChangeRequest.js +0 -16
- package/plugins/hooks/validateChangeRequest.js.map +1 -1
- package/plugins/hooks/validateComment.js +1 -12
- package/plugins/hooks/validateComment.js.map +1 -1
- package/plugins/hooks/validateContentReview.js +0 -6
- package/plugins/hooks/validateContentReview.js.map +1 -1
- package/plugins/pageBuilder/PageApwSettingsGetterPlugin.js +0 -15
- package/plugins/pageBuilder/PageApwSettingsGetterPlugin.js.map +1 -1
- package/plugins/pageBuilder/apwContentPagePlugins.js +0 -4
- package/plugins/pageBuilder/apwContentPagePlugins.js.map +1 -1
- package/plugins/pageBuilder/extendPbPageSettingsSchema.js +1 -6
- package/plugins/pageBuilder/extendPbPageSettingsSchema.js.map +1 -1
- package/plugins/pageBuilder/index.js +0 -11
- package/plugins/pageBuilder/index.js.map +1 -1
- package/plugins/pageBuilder/linkContentReviewToPage.js +2 -18
- package/plugins/pageBuilder/linkContentReviewToPage.js.map +1 -1
- package/plugins/pageBuilder/linkWorkflowToPage.js +1 -31
- package/plugins/pageBuilder/linkWorkflowToPage.js.map +1 -1
- package/plugins/pageBuilder/notifications/changeRequestNotification.js +0 -4
- package/plugins/pageBuilder/notifications/changeRequestNotification.js.map +1 -1
- package/plugins/pageBuilder/notifications/commentNotification.js +0 -4
- package/plugins/pageBuilder/notifications/commentNotification.js.map +1 -1
- package/plugins/pageBuilder/notifications/contentReviewNotification.js +0 -4
- package/plugins/pageBuilder/notifications/contentReviewNotification.js.map +1 -1
- package/plugins/pageBuilder/notifications/contentUrl.js +1 -7
- package/plugins/pageBuilder/notifications/contentUrl.js.map +1 -1
- package/plugins/pageBuilder/triggerContentReview.js +0 -11
- package/plugins/pageBuilder/triggerContentReview.js.map +1 -1
- package/plugins/pageBuilder/updateContentReviewStatus.js +0 -12
- package/plugins/pageBuilder/updateContentReviewStatus.js.map +1 -1
- package/plugins/pageBuilder/utils.js +1 -35
- package/plugins/pageBuilder/utils.js.map +1 -1
- package/plugins/utils.js +0 -43
- package/plugins/utils.js.map +1 -1
- package/scheduler/createScheduleActionMethods.js +3 -27
- package/scheduler/createScheduleActionMethods.js.map +1 -1
- package/scheduler/handlers/executeAction/index.d.ts +1 -1
- package/scheduler/handlers/executeAction/index.js +45 -39
- package/scheduler/handlers/executeAction/index.js.map +1 -1
- package/scheduler/handlers/executeAction/plugins/ApplicationGraphQL.d.ts +6 -0
- package/scheduler/handlers/executeAction/plugins/ApplicationGraphQL.js +14 -5
- package/scheduler/handlers/executeAction/plugins/ApplicationGraphQL.js.map +1 -1
- package/scheduler/handlers/executeAction/plugins/HeadlessCMSGraphQL.d.ts +2 -3
- package/scheduler/handlers/executeAction/plugins/HeadlessCMSGraphQL.js +7 -23
- package/scheduler/handlers/executeAction/plugins/HeadlessCMSGraphQL.js.map +1 -1
- package/scheduler/handlers/executeAction/plugins/PageBuilderGraphQL.d.ts +2 -2
- package/scheduler/handlers/executeAction/plugins/PageBuilderGraphQL.js +7 -86
- package/scheduler/handlers/executeAction/plugins/PageBuilderGraphQL.js.map +1 -1
- package/scheduler/handlers/executeAction/security.js +0 -11
- package/scheduler/handlers/executeAction/security.js.map +1 -1
- package/scheduler/handlers/scheduleAction/index.d.ts +1 -1
- package/scheduler/handlers/scheduleAction/index.js +13 -29
- package/scheduler/handlers/scheduleAction/index.js.map +1 -1
- package/scheduler/handlers/scheduleAction/scheduleAction.utils.js +4 -23
- package/scheduler/handlers/scheduleAction/scheduleAction.utils.js.map +1 -1
- package/scheduler/handlers/utils.d.ts +1 -2
- package/scheduler/handlers/utils.js +3 -41
- package/scheduler/handlers/utils.js.map +1 -1
- package/scheduler/index.js +0 -3
- package/scheduler/index.js.map +1 -1
- package/scheduler/types.d.ts +2 -20
- package/scheduler/types.js +12 -23
- package/scheduler/types.js.map +1 -1
- package/storageOperations/changeRequestStorageOperations.js +20 -39
- package/storageOperations/changeRequestStorageOperations.js.map +1 -1
- package/storageOperations/commentStorageOperations.js +23 -44
- package/storageOperations/commentStorageOperations.js.map +1 -1
- package/storageOperations/contentReviewStorageOperations.js +20 -37
- package/storageOperations/contentReviewStorageOperations.js.map +1 -1
- package/storageOperations/index.js +0 -14
- package/storageOperations/index.js.map +1 -1
- package/storageOperations/models/changeRequest.model.js +0 -9
- package/storageOperations/models/changeRequest.model.js.map +1 -1
- package/storageOperations/models/comment.model.js +0 -8
- package/storageOperations/models/comment.model.js.map +1 -1
- package/storageOperations/models/contentModelPluginFactory.d.ts +3 -10
- package/storageOperations/models/contentModelPluginFactory.js +3 -11
- package/storageOperations/models/contentModelPluginFactory.js.map +1 -1
- package/storageOperations/models/contentReview.model.js +0 -26
- package/storageOperations/models/contentReview.model.js.map +1 -1
- package/storageOperations/models/index.js +2 -28
- package/storageOperations/models/index.js.map +1 -1
- package/storageOperations/models/reviewer.model.js +0 -8
- package/storageOperations/models/reviewer.model.js.map +1 -1
- package/storageOperations/models/utils.js +0 -4
- package/storageOperations/models/utils.js.map +1 -1
- package/storageOperations/models/workflow.model.js +0 -23
- package/storageOperations/models/workflow.model.js.map +1 -1
- package/storageOperations/reviewerStorageOperations.js +23 -45
- package/storageOperations/reviewerStorageOperations.js.map +1 -1
- package/storageOperations/workflowStorageOperations.js +20 -39
- package/storageOperations/workflowStorageOperations.js.map +1 -1
- package/types.d.ts +6 -5
- package/types.js +124 -42
- package/types.js.map +1 -1
- package/utils/contentApwSettingsPlugin.js +0 -6
- package/utils/contentApwSettingsPlugin.js.map +1 -1
- package/utils/errors.js +0 -17
- package/utils/errors.js.map +1 -1
- package/utils/fieldResolver.js +2 -12
- package/utils/fieldResolver.js.map +1 -1
- package/utils/resolve.d.ts +1 -1
- package/utils/resolve.js +0 -3
- package/utils/resolve.js.map +1 -1
@@ -4,9 +4,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
5
5
|
});
|
6
6
|
exports.stepTypeField = exports.stepTitleField = exports.stepReviewersField = exports.stepIdField = exports.createWorkflowModelDefinition = exports.WORKFLOW_MODEL_ID = void 0;
|
7
|
-
|
8
7
|
var _utils = require("./utils");
|
9
|
-
|
10
8
|
const titleField = () => (0, _utils.createModelField)({
|
11
9
|
label: "Title",
|
12
10
|
type: "text",
|
@@ -16,7 +14,6 @@ const titleField = () => (0, _utils.createModelField)({
|
|
16
14
|
name: "required"
|
17
15
|
}]
|
18
16
|
});
|
19
|
-
|
20
17
|
const stepsField = fields => (0, _utils.createModelField)({
|
21
18
|
label: "Steps",
|
22
19
|
type: "object",
|
@@ -26,7 +23,6 @@ const stepsField = fields => (0, _utils.createModelField)({
|
|
26
23
|
},
|
27
24
|
multipleValues: true
|
28
25
|
});
|
29
|
-
|
30
26
|
const stepTitleField = () => (0, _utils.createModelField)({
|
31
27
|
label: "Title",
|
32
28
|
type: "text",
|
@@ -36,9 +32,7 @@ const stepTitleField = () => (0, _utils.createModelField)({
|
|
36
32
|
name: "required"
|
37
33
|
}]
|
38
34
|
});
|
39
|
-
|
40
35
|
exports.stepTitleField = stepTitleField;
|
41
|
-
|
42
36
|
const stepTypeField = () => (0, _utils.createModelField)({
|
43
37
|
label: "Type",
|
44
38
|
type: "text",
|
@@ -61,9 +55,7 @@ const stepTypeField = () => (0, _utils.createModelField)({
|
|
61
55
|
message: "`type` field value is required in workflow steps."
|
62
56
|
}]
|
63
57
|
});
|
64
|
-
|
65
58
|
exports.stepTypeField = stepTypeField;
|
66
|
-
|
67
59
|
const stepIdField = () => (0, _utils.createModelField)({
|
68
60
|
label: "Id",
|
69
61
|
type: "text",
|
@@ -73,9 +65,7 @@ const stepIdField = () => (0, _utils.createModelField)({
|
|
73
65
|
name: "required"
|
74
66
|
}]
|
75
67
|
});
|
76
|
-
|
77
68
|
exports.stepIdField = stepIdField;
|
78
|
-
|
79
69
|
const stepReviewersField = reviewerModelId => (0, _utils.createModelField)({
|
80
70
|
label: "Reviewers",
|
81
71
|
type: "ref",
|
@@ -94,9 +84,7 @@ const stepReviewersField = reviewerModelId => (0, _utils.createModelField)({
|
|
94
84
|
}
|
95
85
|
}]
|
96
86
|
});
|
97
|
-
|
98
87
|
exports.stepReviewersField = stepReviewersField;
|
99
|
-
|
100
88
|
const scopeField = fields => (0, _utils.createModelField)({
|
101
89
|
type: "object",
|
102
90
|
label: "Scope",
|
@@ -105,7 +93,6 @@ const scopeField = fields => (0, _utils.createModelField)({
|
|
105
93
|
fields
|
106
94
|
}
|
107
95
|
});
|
108
|
-
|
109
96
|
const scopeTypeField = () => (0, _utils.createModelField)({
|
110
97
|
label: "Type",
|
111
98
|
parent: "workflow scope",
|
@@ -128,7 +115,6 @@ const scopeTypeField = () => (0, _utils.createModelField)({
|
|
128
115
|
}]
|
129
116
|
}
|
130
117
|
});
|
131
|
-
|
132
118
|
const scopeDataField = fields => (0, _utils.createModelField)({
|
133
119
|
label: "Data",
|
134
120
|
parent: "workflow scope",
|
@@ -137,35 +123,30 @@ const scopeDataField = fields => (0, _utils.createModelField)({
|
|
137
123
|
fields
|
138
124
|
}
|
139
125
|
});
|
140
|
-
|
141
126
|
const scopeDataPbCategories = () => (0, _utils.createModelField)({
|
142
127
|
label: "Categories",
|
143
128
|
parent: "workflow scope data",
|
144
129
|
type: "text",
|
145
130
|
multipleValues: true
|
146
131
|
});
|
147
|
-
|
148
132
|
const scopeDataPbPages = () => (0, _utils.createModelField)({
|
149
133
|
label: "Pages",
|
150
134
|
parent: "workflow scope data",
|
151
135
|
type: "text",
|
152
136
|
multipleValues: true
|
153
137
|
});
|
154
|
-
|
155
138
|
const scopeDataCmsModels = () => (0, _utils.createModelField)({
|
156
139
|
label: "Models",
|
157
140
|
parent: "workflow scope data",
|
158
141
|
type: "text",
|
159
142
|
multipleValues: true
|
160
143
|
});
|
161
|
-
|
162
144
|
const scopeDataCmsEntries = () => (0, _utils.createModelField)({
|
163
145
|
label: "Entries",
|
164
146
|
parent: "workflow scope data",
|
165
147
|
type: "text",
|
166
148
|
multipleValues: true
|
167
149
|
});
|
168
|
-
|
169
150
|
const applicationField = () => (0, _utils.createModelField)({
|
170
151
|
parent: "workflow",
|
171
152
|
type: "text",
|
@@ -185,15 +166,12 @@ const applicationField = () => (0, _utils.createModelField)({
|
|
185
166
|
}]
|
186
167
|
}
|
187
168
|
});
|
188
|
-
|
189
169
|
const WORKFLOW_MODEL_ID = "apwWorkflowModelDefinition";
|
190
170
|
exports.WORKFLOW_MODEL_ID = WORKFLOW_MODEL_ID;
|
191
|
-
|
192
171
|
const createWorkflowModelDefinition = ({
|
193
172
|
reviewerModelId
|
194
173
|
}) => ({
|
195
174
|
name: "APW - Workflow",
|
196
|
-
|
197
175
|
/**
|
198
176
|
* Id of the model cannot be appWorkflow because it clashes with the GraphQL types for APW.
|
199
177
|
*/
|
@@ -204,5 +182,4 @@ const createWorkflowModelDefinition = ({
|
|
204
182
|
fields: [titleField(), stepsField([stepTitleField(), stepTypeField(), stepIdField(), stepReviewersField(reviewerModelId)]), scopeField([scopeTypeField(), scopeDataField([scopeDataPbCategories(), scopeDataPbPages(), scopeDataCmsModels(), scopeDataCmsEntries()])]), applicationField()],
|
205
183
|
isPrivate: true
|
206
184
|
});
|
207
|
-
|
208
185
|
exports.createWorkflowModelDefinition = createWorkflowModelDefinition;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["titleField","createModelField","label","type","parent","validation","message","name","stepsField","fields","settings","multipleValues","stepTitleField","stepTypeField","predefinedValues","enabled","values","value","stepIdField","stepReviewersField","reviewerModelId","models","modelId","listValidation","scopeField","scopeTypeField","scopeDataField","scopeDataPbCategories","scopeDataPbPages","scopeDataCmsModels","scopeDataCmsEntries","applicationField","WORKFLOW_MODEL_ID","createWorkflowModelDefinition","layout","titleFieldId","description","isPrivate"],"sources":["workflow.model.ts"],"sourcesContent":["import { createModelField } from \"./utils\";\nimport { CmsModelField } from \"@webiny/api-headless-cms/types\";\nimport { WorkflowModelDefinition } from \"~/types\";\n\nconst titleField = () =>\n createModelField({\n label: \"Title\",\n type: \"text\",\n parent: \"workflow\",\n validation: [\n {\n message: \"`title` field value is required in workflow.\",\n name: \"required\"\n }\n ]\n });\n\nconst stepsField = (fields: CmsModelField[]) =>\n createModelField({\n label: \"Steps\",\n type: \"object\",\n parent: \"workflow\",\n settings: {\n fields\n },\n multipleValues: true\n });\n\nexport const stepTitleField = () =>\n createModelField({\n label: \"Title\",\n type: \"text\",\n parent: \"workflow steps\",\n validation: [\n {\n message: \"`title` field value is required in workflow steps.\",\n name: \"required\"\n }\n ]\n });\n\nexport const stepTypeField = () =>\n createModelField({\n label: \"Type\",\n type: \"text\",\n parent: \"workflow steps\",\n predefinedValues: {\n enabled: true,\n values: [\n {\n value: \"mandatoryBlocking\",\n label: \"Mandatory, blocking - An approval from a reviewer is required before being able to move to the next step and publish the content. \"\n },\n {\n value: \"mandatoryNonBlocking\",\n label: \"Mandatory, non-blocking - An approval from a reviewer is to publish the content, but the next step in the review workflow is not blocked. \"\n },\n {\n value: \"notMandatory\",\n label: \"Not mandatory - This is an optional review step. The content can be published regardless if an approval is provided or not.\"\n }\n ]\n },\n validation: [\n {\n name: \"required\",\n message: \"`type` field value is required in workflow steps.\"\n }\n ]\n });\n\nexport const stepIdField = () =>\n createModelField({\n label: \"Id\",\n type: \"text\",\n parent: \"workflow steps\",\n validation: [\n {\n message: \"`id` field value is required in workflow steps.\",\n name: \"required\"\n }\n ]\n });\n\nexport const stepReviewersField = (reviewerModelId: string) =>\n createModelField({\n label: \"Reviewers\",\n type: \"ref\",\n parent: \"workflow steps\",\n multipleValues: true,\n settings: {\n models: [\n {\n modelId: reviewerModelId\n }\n ]\n },\n listValidation: [\n {\n name: \"minLength\",\n message: \"Value is too short.\",\n settings: {\n value: \"1\"\n }\n }\n ]\n });\n\nconst scopeField = (fields: CmsModelField[]) =>\n createModelField({\n type: \"object\",\n label: \"Scope\",\n parent: \"workflow\",\n settings: {\n fields\n }\n });\n\nconst scopeTypeField = () =>\n createModelField({\n label: \"Type\",\n parent: \"workflow scope\",\n type: \"text\",\n validation: [\n {\n message: \"`type` field value is required in workflow scope.\",\n name: \"required\"\n }\n ],\n predefinedValues: {\n enabled: true,\n values: [\n {\n value: \"default\",\n label: \"Default - Catch all scope that applies to all content that's being published.\"\n },\n {\n value: \"pageBuilder\",\n label: \"Page category (Page Builder only) - The workflow will apply to all pages inside specific categories.\"\n },\n {\n value: \"cms\",\n label: \"Content model (Headless CMS only) - The workflow will apply to all the content inside the specific content models. \"\n }\n ]\n }\n });\n\nconst scopeDataField = (fields: CmsModelField[]) =>\n createModelField({\n label: \"Data\",\n parent: \"workflow scope\",\n type: \"object\",\n settings: {\n fields\n }\n });\n\nconst scopeDataPbCategories = () =>\n createModelField({\n label: \"Categories\",\n parent: \"workflow scope data\",\n type: \"text\",\n multipleValues: true\n });\nconst scopeDataPbPages = () =>\n createModelField({\n label: \"Pages\",\n parent: \"workflow scope data\",\n type: \"text\",\n multipleValues: true\n });\nconst scopeDataCmsModels = () =>\n createModelField({\n label: \"Models\",\n parent: \"workflow scope data\",\n type: \"text\",\n multipleValues: true\n });\nconst scopeDataCmsEntries = () =>\n createModelField({\n label: \"Entries\",\n parent: \"workflow scope data\",\n type: \"text\",\n multipleValues: true\n });\n\nconst applicationField = () =>\n createModelField({\n parent: \"workflow\",\n type: \"text\",\n label: \"App\",\n validation: [\n {\n message: \"`app` field value is required in workflow.\",\n name: \"required\"\n }\n ],\n predefinedValues: {\n enabled: true,\n values: [\n { label: \"Page Builder\", value: \"pageBuilder\" },\n { label: \"Headless CMS\", value: \"cms\" }\n ]\n }\n });\n\ninterface CreateWorkflowModelDefinitionParams {\n reviewerModelId: string;\n}\n\nexport const WORKFLOW_MODEL_ID = \"apwWorkflowModelDefinition\";\n\nexport const createWorkflowModelDefinition = ({\n reviewerModelId\n}: CreateWorkflowModelDefinitionParams): WorkflowModelDefinition => ({\n name: \"APW - Workflow\",\n /**\n * Id of the model cannot be appWorkflow because it clashes with the GraphQL types for APW.\n */\n modelId: WORKFLOW_MODEL_ID,\n layout: [[\"workflow_title\"], [\"workflow_steps\"], [\"workflow_scope\"], [\"workflow_app\"]],\n titleFieldId: \"title\",\n description: \"\",\n fields: [\n titleField(),\n stepsField([\n stepTitleField(),\n stepTypeField(),\n stepIdField(),\n stepReviewersField(reviewerModelId)\n ]),\n scopeField([\n scopeTypeField(),\n scopeDataField([\n scopeDataPbCategories(),\n scopeDataPbPages(),\n scopeDataCmsModels(),\n scopeDataCmsEntries()\n ])\n ]),\n applicationField()\n ],\n isPrivate: true\n});\n"],"mappings":"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"}
|
1
|
+
{"version":3,"names":["_utils","require","titleField","createModelField","label","type","parent","validation","message","name","stepsField","fields","settings","multipleValues","stepTitleField","exports","stepTypeField","predefinedValues","enabled","values","value","stepIdField","stepReviewersField","reviewerModelId","models","modelId","listValidation","scopeField","scopeTypeField","scopeDataField","scopeDataPbCategories","scopeDataPbPages","scopeDataCmsModels","scopeDataCmsEntries","applicationField","WORKFLOW_MODEL_ID","createWorkflowModelDefinition","layout","titleFieldId","description","isPrivate"],"sources":["workflow.model.ts"],"sourcesContent":["import { createModelField } from \"./utils\";\nimport { CmsModelField } from \"@webiny/api-headless-cms/types\";\nimport { WorkflowModelDefinition } from \"~/types\";\n\nconst titleField = () =>\n createModelField({\n label: \"Title\",\n type: \"text\",\n parent: \"workflow\",\n validation: [\n {\n message: \"`title` field value is required in workflow.\",\n name: \"required\"\n }\n ]\n });\n\nconst stepsField = (fields: CmsModelField[]) =>\n createModelField({\n label: \"Steps\",\n type: \"object\",\n parent: \"workflow\",\n settings: {\n fields\n },\n multipleValues: true\n });\n\nexport const stepTitleField = () =>\n createModelField({\n label: \"Title\",\n type: \"text\",\n parent: \"workflow steps\",\n validation: [\n {\n message: \"`title` field value is required in workflow steps.\",\n name: \"required\"\n }\n ]\n });\n\nexport const stepTypeField = () =>\n createModelField({\n label: \"Type\",\n type: \"text\",\n parent: \"workflow steps\",\n predefinedValues: {\n enabled: true,\n values: [\n {\n value: \"mandatoryBlocking\",\n label: \"Mandatory, blocking - An approval from a reviewer is required before being able to move to the next step and publish the content. \"\n },\n {\n value: \"mandatoryNonBlocking\",\n label: \"Mandatory, non-blocking - An approval from a reviewer is to publish the content, but the next step in the review workflow is not blocked. \"\n },\n {\n value: \"notMandatory\",\n label: \"Not mandatory - This is an optional review step. The content can be published regardless if an approval is provided or not.\"\n }\n ]\n },\n validation: [\n {\n name: \"required\",\n message: \"`type` field value is required in workflow steps.\"\n }\n ]\n });\n\nexport const stepIdField = () =>\n createModelField({\n label: \"Id\",\n type: \"text\",\n parent: \"workflow steps\",\n validation: [\n {\n message: \"`id` field value is required in workflow steps.\",\n name: \"required\"\n }\n ]\n });\n\nexport const stepReviewersField = (reviewerModelId: string) =>\n createModelField({\n label: \"Reviewers\",\n type: \"ref\",\n parent: \"workflow steps\",\n multipleValues: true,\n settings: {\n models: [\n {\n modelId: reviewerModelId\n }\n ]\n },\n listValidation: [\n {\n name: \"minLength\",\n message: \"Value is too short.\",\n settings: {\n value: \"1\"\n }\n }\n ]\n });\n\nconst scopeField = (fields: CmsModelField[]) =>\n createModelField({\n type: \"object\",\n label: \"Scope\",\n parent: \"workflow\",\n settings: {\n fields\n }\n });\n\nconst scopeTypeField = () =>\n createModelField({\n label: \"Type\",\n parent: \"workflow scope\",\n type: \"text\",\n validation: [\n {\n message: \"`type` field value is required in workflow scope.\",\n name: \"required\"\n }\n ],\n predefinedValues: {\n enabled: true,\n values: [\n {\n value: \"default\",\n label: \"Default - Catch all scope that applies to all content that's being published.\"\n },\n {\n value: \"pageBuilder\",\n label: \"Page category (Page Builder only) - The workflow will apply to all pages inside specific categories.\"\n },\n {\n value: \"cms\",\n label: \"Content model (Headless CMS only) - The workflow will apply to all the content inside the specific content models. \"\n }\n ]\n }\n });\n\nconst scopeDataField = (fields: CmsModelField[]) =>\n createModelField({\n label: \"Data\",\n parent: \"workflow scope\",\n type: \"object\",\n settings: {\n fields\n }\n });\n\nconst scopeDataPbCategories = () =>\n createModelField({\n label: \"Categories\",\n parent: \"workflow scope data\",\n type: \"text\",\n multipleValues: true\n });\nconst scopeDataPbPages = () =>\n createModelField({\n label: \"Pages\",\n parent: \"workflow scope data\",\n type: \"text\",\n multipleValues: true\n });\nconst scopeDataCmsModels = () =>\n createModelField({\n label: \"Models\",\n parent: \"workflow scope data\",\n type: \"text\",\n multipleValues: true\n });\nconst scopeDataCmsEntries = () =>\n createModelField({\n label: \"Entries\",\n parent: \"workflow scope data\",\n type: \"text\",\n multipleValues: true\n });\n\nconst applicationField = () =>\n createModelField({\n parent: \"workflow\",\n type: \"text\",\n label: \"App\",\n validation: [\n {\n message: \"`app` field value is required in workflow.\",\n name: \"required\"\n }\n ],\n predefinedValues: {\n enabled: true,\n values: [\n { label: \"Page Builder\", value: \"pageBuilder\" },\n { label: \"Headless CMS\", value: \"cms\" }\n ]\n }\n });\n\ninterface CreateWorkflowModelDefinitionParams {\n reviewerModelId: string;\n}\n\nexport const WORKFLOW_MODEL_ID = \"apwWorkflowModelDefinition\";\n\nexport const createWorkflowModelDefinition = ({\n reviewerModelId\n}: CreateWorkflowModelDefinitionParams): WorkflowModelDefinition => ({\n name: \"APW - Workflow\",\n /**\n * Id of the model cannot be appWorkflow because it clashes with the GraphQL types for APW.\n */\n modelId: WORKFLOW_MODEL_ID,\n layout: [[\"workflow_title\"], [\"workflow_steps\"], [\"workflow_scope\"], [\"workflow_app\"]],\n titleFieldId: \"title\",\n description: \"\",\n fields: [\n titleField(),\n stepsField([\n stepTitleField(),\n stepTypeField(),\n stepIdField(),\n stepReviewersField(reviewerModelId)\n ]),\n scopeField([\n scopeTypeField(),\n scopeDataField([\n scopeDataPbCategories(),\n scopeDataPbPages(),\n scopeDataCmsModels(),\n scopeDataCmsEntries()\n ])\n ]),\n applicationField()\n ],\n isPrivate: true\n});\n"],"mappings":"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"}
|
@@ -1,97 +1,75 @@
|
|
1
1
|
"use strict";
|
2
2
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
4
|
-
|
5
4
|
Object.defineProperty(exports, "__esModule", {
|
6
5
|
value: true
|
7
6
|
});
|
8
7
|
exports.createReviewerStorageOperations = void 0;
|
9
|
-
|
10
8
|
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
|
11
|
-
|
12
9
|
var _index = require("./index");
|
13
|
-
|
14
10
|
var _error = _interopRequireDefault(require("@webiny/error"));
|
15
|
-
|
16
11
|
const createReviewerStorageOperations = ({
|
17
12
|
cms,
|
18
13
|
security
|
19
14
|
}) => {
|
20
15
|
const getReviewerModel = async () => {
|
21
|
-
security.
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
if (!model) {
|
27
|
-
throw new _error.default("Could not find `apwReviewerModelDefinition` model.", "MODEL_NOT_FOUND_ERROR");
|
28
|
-
}
|
29
|
-
|
30
|
-
return model;
|
31
|
-
} catch (ex) {
|
32
|
-
throw ex;
|
33
|
-
} finally {
|
34
|
-
security.enableAuthorization();
|
16
|
+
const model = await security.withoutAuthorization(async () => {
|
17
|
+
return cms.getModel("apwReviewerModelDefinition");
|
18
|
+
});
|
19
|
+
if (!model) {
|
20
|
+
throw new _error.default("Could not find `apwReviewerModelDefinition` model.", "MODEL_NOT_FOUND_ERROR");
|
35
21
|
}
|
22
|
+
return model;
|
36
23
|
};
|
37
|
-
|
38
24
|
const getReviewer = async ({
|
39
25
|
id
|
40
26
|
}) => {
|
41
27
|
const model = await getReviewerModel();
|
42
|
-
security.
|
43
|
-
|
44
|
-
|
28
|
+
const entry = await security.withoutAuthorization(async () => {
|
29
|
+
return cms.getEntryById(model, id);
|
30
|
+
});
|
45
31
|
return (0, _index.getFieldValues)(entry, _index.baseFields);
|
46
32
|
};
|
47
|
-
|
48
33
|
return {
|
49
34
|
getReviewerModel,
|
50
35
|
getReviewer,
|
51
|
-
|
52
36
|
async listReviewers(params) {
|
53
37
|
const model = await getReviewerModel();
|
54
|
-
security.
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
38
|
+
const [entries, meta] = await security.withoutAuthorization(async () => {
|
39
|
+
return cms.listLatestEntries(model, (0, _objectSpread2.default)((0, _objectSpread2.default)({}, params), {}, {
|
40
|
+
where: (0, _objectSpread2.default)({}, params.where)
|
41
|
+
}));
|
42
|
+
});
|
59
43
|
return [entries.map(entry => (0, _index.getFieldValues)(entry, _index.baseFields)), meta];
|
60
44
|
},
|
61
|
-
|
62
45
|
async createReviewer(params) {
|
63
46
|
const model = await getReviewerModel();
|
64
|
-
security.
|
65
|
-
|
66
|
-
|
47
|
+
const entry = await security.withoutAuthorization(async () => {
|
48
|
+
return cms.createEntry(model, params.data);
|
49
|
+
});
|
67
50
|
return (0, _index.getFieldValues)(entry, _index.baseFields);
|
68
51
|
},
|
69
|
-
|
70
52
|
async updateReviewer(params) {
|
71
53
|
const model = await getReviewerModel();
|
72
54
|
/**
|
73
55
|
* We're fetching the existing entry here because we're not accepting "app" field as input,
|
74
56
|
* but, we still need to retain its value after the "update" operation.
|
75
57
|
*/
|
76
|
-
|
77
58
|
const existingEntry = await getReviewer({
|
78
59
|
id: params.id
|
79
60
|
});
|
80
|
-
security.
|
81
|
-
|
82
|
-
|
61
|
+
const entry = await security.withoutAuthorization(async () => {
|
62
|
+
return cms.updateEntry(model, params.id, (0, _objectSpread2.default)((0, _objectSpread2.default)({}, existingEntry), params.data));
|
63
|
+
});
|
83
64
|
return (0, _index.getFieldValues)(entry, _index.baseFields);
|
84
65
|
},
|
85
|
-
|
86
66
|
async deleteReviewer(params) {
|
87
67
|
const model = await getReviewerModel();
|
88
|
-
security.
|
89
|
-
|
90
|
-
|
68
|
+
await security.withoutAuthorization(async () => {
|
69
|
+
return cms.deleteEntry(model, params.id);
|
70
|
+
});
|
91
71
|
return true;
|
92
72
|
}
|
93
|
-
|
94
73
|
};
|
95
74
|
};
|
96
|
-
|
97
75
|
exports.createReviewerStorageOperations = createReviewerStorageOperations;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["createReviewerStorageOperations","cms","security","getReviewerModel","
|
1
|
+
{"version":3,"names":["_index","require","_error","_interopRequireDefault","createReviewerStorageOperations","cms","security","getReviewerModel","model","withoutAuthorization","getModel","WebinyError","getReviewer","id","entry","getEntryById","getFieldValues","baseFields","listReviewers","params","entries","meta","listLatestEntries","_objectSpread2","default","where","map","createReviewer","createEntry","data","updateReviewer","existingEntry","updateEntry","deleteReviewer","deleteEntry","exports"],"sources":["reviewerStorageOperations.ts"],"sourcesContent":["import { ApwReviewerStorageOperations } from \"./types\";\nimport {\n baseFields,\n CreateApwStorageOperationsParams,\n getFieldValues\n} from \"~/storageOperations/index\";\nimport WebinyError from \"@webiny/error\";\n\nexport const createReviewerStorageOperations = ({\n cms,\n security\n}: CreateApwStorageOperationsParams): ApwReviewerStorageOperations => {\n const getReviewerModel = async () => {\n const model = await security.withoutAuthorization(async () => {\n return cms.getModel(\"apwReviewerModelDefinition\");\n });\n if (!model) {\n throw new WebinyError(\n \"Could not find `apwReviewerModelDefinition` model.\",\n \"MODEL_NOT_FOUND_ERROR\"\n );\n }\n return model;\n };\n const getReviewer: ApwReviewerStorageOperations[\"getReviewer\"] = async ({ id }) => {\n const model = await getReviewerModel();\n\n const entry = await security.withoutAuthorization(async () => {\n return cms.getEntryById(model, id);\n });\n return getFieldValues(entry, baseFields);\n };\n return {\n getReviewerModel,\n getReviewer,\n async listReviewers(params) {\n const model = await getReviewerModel();\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 return [entries.map(entry => getFieldValues(entry, baseFields)), meta];\n },\n async createReviewer(params) {\n const model = await getReviewerModel();\n const entry = await security.withoutAuthorization(async () => {\n return cms.createEntry(model, params.data);\n });\n return getFieldValues(entry, baseFields);\n },\n async updateReviewer(params) {\n const model = await getReviewerModel();\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 getReviewer({ id: params.id });\n\n const entry = await security.withoutAuthorization(async () => {\n return cms.updateEntry(model, params.id, {\n ...existingEntry,\n ...params.data\n });\n });\n return getFieldValues(entry, baseFields);\n },\n async deleteReviewer(params) {\n const model = await getReviewerModel();\n\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,20 +1,14 @@
|
|
1
1
|
"use strict";
|
2
2
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
4
|
-
|
5
4
|
Object.defineProperty(exports, "__esModule", {
|
6
5
|
value: true
|
7
6
|
});
|
8
7
|
exports.createWorkflowStorageOperations = void 0;
|
9
|
-
|
10
8
|
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
|
11
|
-
|
12
9
|
var _index = require("./index");
|
13
|
-
|
14
10
|
var _error = _interopRequireDefault(require("@webiny/error"));
|
15
|
-
|
16
11
|
var _workflow = require("./models/workflow.model");
|
17
|
-
|
18
12
|
const formatReviewersForRefInput = (data, modelId) => {
|
19
13
|
return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, data), {}, {
|
20
14
|
steps: data.steps.map(step => (0, _objectSpread2.default)((0, _objectSpread2.default)({}, step), {}, {
|
@@ -25,59 +19,50 @@ const formatReviewersForRefInput = (data, modelId) => {
|
|
25
19
|
}))
|
26
20
|
});
|
27
21
|
};
|
28
|
-
|
29
22
|
const createWorkflowStorageOperations = params => {
|
30
23
|
const {
|
31
24
|
cms,
|
32
25
|
security
|
33
26
|
} = params;
|
34
|
-
|
35
27
|
const getWorkflowModel = async () => {
|
36
|
-
security.
|
37
|
-
|
38
|
-
|
39
|
-
|
28
|
+
const model = await security.withoutAuthorization(async () => {
|
29
|
+
return cms.getModel(_workflow.WORKFLOW_MODEL_ID);
|
30
|
+
});
|
40
31
|
if (!model) {
|
41
32
|
throw new _error.default(`Could not find "${_workflow.WORKFLOW_MODEL_ID}" model.`, "MODEL_NOT_FOUND_ERROR");
|
42
33
|
}
|
43
|
-
|
44
34
|
return model;
|
45
35
|
};
|
46
|
-
|
47
36
|
const getWorkflow = async ({
|
48
37
|
id
|
49
38
|
}) => {
|
50
39
|
const model = await getWorkflowModel();
|
51
|
-
security.
|
52
|
-
|
53
|
-
|
40
|
+
const entry = await security.withoutAuthorization(async () => {
|
41
|
+
return cms.getEntryById(model, id);
|
42
|
+
});
|
54
43
|
return (0, _index.getFieldValues)(entry, _index.baseFields);
|
55
44
|
};
|
56
|
-
|
57
45
|
return {
|
58
46
|
getWorkflowModel,
|
59
47
|
getWorkflow,
|
60
|
-
|
61
48
|
async listWorkflows(params) {
|
62
49
|
const model = await getWorkflowModel();
|
63
|
-
security.
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
50
|
+
const [entries, meta] = await security.withoutAuthorization(async () => {
|
51
|
+
return cms.listLatestEntries(model, (0, _objectSpread2.default)((0, _objectSpread2.default)({}, params), {}, {
|
52
|
+
where: (0, _objectSpread2.default)({}, params.where)
|
53
|
+
}));
|
54
|
+
});
|
68
55
|
return [entries.map(entry => (0, _index.getFieldValues)(entry, _index.baseFields)), meta];
|
69
56
|
},
|
70
|
-
|
71
57
|
async createWorkflow(params) {
|
72
58
|
const model = await getWorkflowModel();
|
73
59
|
const reviewerModel = await this.getReviewerModel();
|
74
60
|
const data = formatReviewersForRefInput(params.data, reviewerModel.modelId);
|
75
|
-
security.
|
76
|
-
|
77
|
-
|
61
|
+
const entry = await security.withoutAuthorization(async () => {
|
62
|
+
return cms.createEntry(model, data);
|
63
|
+
});
|
78
64
|
return (0, _index.getFieldValues)(entry, _index.baseFields);
|
79
65
|
},
|
80
|
-
|
81
66
|
async updateWorkflow(params) {
|
82
67
|
const model = await getWorkflowModel();
|
83
68
|
const reviewerModel = await this.getReviewerModel();
|
@@ -85,27 +70,23 @@ const createWorkflowStorageOperations = params => {
|
|
85
70
|
* We're fetching the existing entry here because we're not accepting "app" field as input,
|
86
71
|
* but, we still need to retain its value after the "update" operation.
|
87
72
|
*/
|
88
|
-
|
89
73
|
const existingEntry = await getWorkflow({
|
90
74
|
id: params.id
|
91
75
|
});
|
92
76
|
const input = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, existingEntry), params.data);
|
93
77
|
const data = formatReviewersForRefInput(input, reviewerModel.modelId);
|
94
|
-
security.
|
95
|
-
|
96
|
-
|
78
|
+
const entry = await security.withoutAuthorization(async () => {
|
79
|
+
return cms.updateEntry(model, params.id, data);
|
80
|
+
});
|
97
81
|
return (0, _index.getFieldValues)(entry, _index.baseFields);
|
98
82
|
},
|
99
|
-
|
100
83
|
async deleteWorkflow(params) {
|
101
84
|
const model = await getWorkflowModel();
|
102
|
-
security.
|
103
|
-
|
104
|
-
|
85
|
+
await security.withoutAuthorization(async () => {
|
86
|
+
return cms.deleteEntry(model, params.id);
|
87
|
+
});
|
105
88
|
return true;
|
106
89
|
}
|
107
|
-
|
108
90
|
};
|
109
91
|
};
|
110
|
-
|
111
92
|
exports.createWorkflowStorageOperations = createWorkflowStorageOperations;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["formatReviewersForRefInput","data","modelId","steps","map","step","reviewers","id","createWorkflowStorageOperations","params","cms","security","getWorkflowModel","
|
1
|
+
{"version":3,"names":["_index","require","_error","_interopRequireDefault","_workflow","formatReviewersForRefInput","data","modelId","_objectSpread2","default","steps","map","step","reviewers","id","createWorkflowStorageOperations","params","cms","security","getWorkflowModel","model","withoutAuthorization","getModel","WORKFLOW_MODEL_ID","WebinyError","getWorkflow","entry","getEntryById","getFieldValues","baseFields","listWorkflows","entries","meta","listLatestEntries","where","createWorkflow","reviewerModel","getReviewerModel","createEntry","updateWorkflow","existingEntry","input","updateEntry","deleteWorkflow","deleteEntry","exports"],"sources":["workflowStorageOperations.ts"],"sourcesContent":["import { CreateApwWorkflowParams } from \"~/types\";\nimport { ApwStorageOperations, ApwWorkflowStorageOperations } from \"./types\";\nimport {\n baseFields,\n CreateApwStorageOperationsParams,\n getFieldValues\n} from \"~/storageOperations/index\";\nimport WebinyError from \"@webiny/error\";\nimport { WORKFLOW_MODEL_ID } from \"~/storageOperations/models/workflow.model\";\n\ntype ReviewersRefInput = CreateApwWorkflowParams<{ modelId: string; id: string }>;\n\nconst formatReviewersForRefInput = (\n data: CreateApwWorkflowParams,\n modelId: string\n): ReviewersRefInput => {\n return {\n ...data,\n steps: data.steps.map(step => ({\n ...step,\n reviewers: step.reviewers.map(id => ({\n id,\n modelId\n }))\n }))\n };\n};\n\nexport const createWorkflowStorageOperations = (\n params: CreateApwStorageOperationsParams\n): ApwWorkflowStorageOperations => {\n const { cms, security } = params;\n const getWorkflowModel = async () => {\n const model = await security.withoutAuthorization(async () => {\n return cms.getModel(WORKFLOW_MODEL_ID);\n });\n if (!model) {\n throw new WebinyError(\n `Could not find \"${WORKFLOW_MODEL_ID}\" model.`,\n \"MODEL_NOT_FOUND_ERROR\"\n );\n }\n return model;\n };\n const getWorkflow: ApwWorkflowStorageOperations[\"getWorkflow\"] = async ({ id }) => {\n const model = await getWorkflowModel();\n const entry = await security.withoutAuthorization(async () => {\n return cms.getEntryById(model, id);\n });\n return getFieldValues(entry, baseFields);\n };\n return {\n getWorkflowModel,\n getWorkflow,\n async listWorkflows(params) {\n const model = await getWorkflowModel();\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 return [entries.map(entry => getFieldValues(entry, baseFields)), meta];\n },\n async createWorkflow(this: ApwStorageOperations, params) {\n const model = await getWorkflowModel();\n const reviewerModel = await this.getReviewerModel();\n\n const data = formatReviewersForRefInput(params.data, reviewerModel.modelId);\n\n const entry = await security.withoutAuthorization(async () => {\n return cms.createEntry(model, data);\n });\n\n return getFieldValues(entry, baseFields);\n },\n async updateWorkflow(this: ApwStorageOperations, params) {\n const model = await getWorkflowModel();\n const reviewerModel = await this.getReviewerModel();\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 getWorkflow({ id: params.id });\n const input = {\n ...existingEntry,\n ...params.data\n };\n const data = formatReviewersForRefInput(\n input as CreateApwWorkflowParams,\n reviewerModel.modelId\n );\n\n const entry = await security.withoutAuthorization(async () => {\n return cms.updateEntry(model, params.id, data);\n });\n\n return getFieldValues(entry, baseFields);\n },\n async deleteWorkflow(params) {\n const model = await getWorkflowModel();\n\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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"}
|
package/types.d.ts
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
import { CmsEntry as BaseCmsEntry,
|
1
|
+
import { CmsEntry as BaseCmsEntry, OnEntryBeforePublishTopicParams, OnEntryAfterPublishTopicParams, OnEntryAfterUnpublishTopicParams } from "@webiny/api-headless-cms/types";
|
2
2
|
import { Page, OnPageBeforeCreateTopicParams, OnPageBeforeCreateFromTopicParams, OnPageBeforeUpdateTopicParams, OnPageBeforePublishTopicParams, PageSettings } from "@webiny/api-page-builder/types";
|
3
3
|
import { Context } from "@webiny/api/types";
|
4
4
|
import { PageBuilderContextObject } from "@webiny/api-page-builder/graphql/types";
|
@@ -12,6 +12,7 @@ import { PluginsContainer } from "@webiny/plugins";
|
|
12
12
|
import { WcpContextObject } from "@webiny/api-wcp/types";
|
13
13
|
import { MailerContext } from "@webiny/api-mailer/types";
|
14
14
|
import { AdminSettingsContext } from "@webiny/api-admin-settings/types";
|
15
|
+
import { CmsPrivateModelFull } from "@webiny/api-headless-cms";
|
15
16
|
export interface ApwCmsEntry extends BaseCmsEntry {
|
16
17
|
title: string;
|
17
18
|
meta: {
|
@@ -99,7 +100,7 @@ export declare enum ApwWorkflowApplications {
|
|
99
100
|
*
|
100
101
|
* @category General
|
101
102
|
*/
|
102
|
-
export interface
|
103
|
+
export interface ApwIdentity {
|
103
104
|
/**
|
104
105
|
* ID if the user.
|
105
106
|
*/
|
@@ -118,7 +119,7 @@ export interface ApwBaseFields {
|
|
118
119
|
entryId: string;
|
119
120
|
createdOn: string;
|
120
121
|
savedOn: string;
|
121
|
-
createdBy:
|
122
|
+
createdBy: ApwIdentity;
|
122
123
|
}
|
123
124
|
export interface ApwReviewer extends ApwBaseFields {
|
124
125
|
identityId: string;
|
@@ -151,7 +152,7 @@ export interface ApwContentReviewStep {
|
|
151
152
|
pendingChangeRequests: number;
|
152
153
|
totalComments: number;
|
153
154
|
signOffProvidedOn: string | null;
|
154
|
-
signOffProvidedBy:
|
155
|
+
signOffProvidedBy: ApwIdentity | null;
|
155
156
|
}
|
156
157
|
export interface ApwContentReview extends ApwBaseFields {
|
157
158
|
title: string;
|
@@ -736,7 +737,7 @@ export interface OnWorkflowBeforeDeleteTopicParams {
|
|
736
737
|
export interface OnWorkflowAfterDeleteTopicParams {
|
737
738
|
workflow: ApwWorkflow;
|
738
739
|
}
|
739
|
-
export declare type WorkflowModelDefinition =
|
740
|
+
export declare type WorkflowModelDefinition = Omit<CmsPrivateModelFull, "noValidate" | "group">;
|
740
741
|
/**
|
741
742
|
* Headless CMS
|
742
743
|
*/
|