@webiny/api-apw 0.0.0-ee-vpcs.549378cf03
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.d.ts +27 -0
- package/ApwChangeRequestNotification.js +40 -0
- package/ApwChangeRequestNotification.js.map +1 -0
- package/ApwCommentNotification.d.ts +27 -0
- package/ApwCommentNotification.js +40 -0
- package/ApwCommentNotification.js.map +1 -0
- package/ApwContentReviewNotification.d.ts +26 -0
- package/ApwContentReviewNotification.js +40 -0
- package/ApwContentReviewNotification.js.map +1 -0
- package/ApwContentUrlPlugin.d.ts +19 -0
- package/ApwContentUrlPlugin.js +40 -0
- package/ApwContentUrlPlugin.js.map +1 -0
- package/ContentApwSettingsPlugin.d.ts +10 -0
- package/ContentApwSettingsPlugin.js +17 -0
- package/ContentApwSettingsPlugin.js.map +1 -0
- package/LICENSE +21 -0
- package/README.md +34 -0
- package/crud/createChangeRequestMethods.d.ts +2 -0
- package/crud/createChangeRequestMethods.js +98 -0
- package/crud/createChangeRequestMethods.js.map +1 -0
- package/crud/createCommentMethods.d.ts +2 -0
- package/crud/createCommentMethods.js +99 -0
- package/crud/createCommentMethods.js.map +1 -0
- package/crud/createContentReviewMethods.d.ts +10 -0
- package/crud/createContentReviewMethods.js +562 -0
- package/crud/createContentReviewMethods.js.map +1 -0
- package/crud/createReviewerMethods.d.ts +2 -0
- package/crud/createReviewerMethods.js +99 -0
- package/crud/createReviewerMethods.js.map +1 -0
- package/crud/createWorkflowMethods.d.ts +2 -0
- package/crud/createWorkflowMethods.js +118 -0
- package/crud/createWorkflowMethods.js.map +1 -0
- package/crud/index.d.ts +2 -0
- package/crud/index.js +96 -0
- package/crud/index.js.map +1 -0
- package/crud/utils.d.ts +21 -0
- package/crud/utils.js +138 -0
- package/crud/utils.js.map +1 -0
- package/index.d.ts +4 -0
- package/index.js +38 -0
- package/index.js.map +1 -0
- package/package.json +76 -0
- package/plugins/cms/CmsEntryApwSettingsGetterPlugin.d.ts +10 -0
- package/plugins/cms/CmsEntryApwSettingsGetterPlugin.js +51 -0
- package/plugins/cms/CmsEntryApwSettingsGetterPlugin.js.map +1 -0
- package/plugins/cms/README.md +49 -0
- package/plugins/cms/apwEntryPlugins.d.ts +8 -0
- package/plugins/cms/apwEntryPlugins.js +46 -0
- package/plugins/cms/apwEntryPlugins.js.map +1 -0
- package/plugins/cms/index.d.ts +12 -0
- package/plugins/cms/index.js +45 -0
- package/plugins/cms/index.js.map +1 -0
- package/plugins/cms/linkContentReviewToEntry.d.ts +8 -0
- package/plugins/cms/linkContentReviewToEntry.js +108 -0
- package/plugins/cms/linkContentReviewToEntry.js.map +1 -0
- package/plugins/cms/linkWorkflowToEntry.d.ts +8 -0
- package/plugins/cms/linkWorkflowToEntry.js +166 -0
- package/plugins/cms/linkWorkflowToEntry.js.map +1 -0
- package/plugins/cms/notifications/changeRequestNotification.d.ts +1 -0
- package/plugins/cms/notifications/changeRequestNotification.js +35 -0
- package/plugins/cms/notifications/changeRequestNotification.js.map +1 -0
- package/plugins/cms/notifications/commentNotification.d.ts +1 -0
- package/plugins/cms/notifications/commentNotification.js +35 -0
- package/plugins/cms/notifications/commentNotification.js.map +1 -0
- package/plugins/cms/notifications/contentReviewNotification.d.ts +1 -0
- package/plugins/cms/notifications/contentReviewNotification.js +35 -0
- package/plugins/cms/notifications/contentReviewNotification.js.map +1 -0
- package/plugins/cms/notifications/contentUrl.d.ts +8 -0
- package/plugins/cms/notifications/contentUrl.js +60 -0
- package/plugins/cms/notifications/contentUrl.js.map +1 -0
- package/plugins/cms/triggerContentReview.d.ts +8 -0
- package/plugins/cms/triggerContentReview.js +59 -0
- package/plugins/cms/triggerContentReview.js.map +1 -0
- package/plugins/cms/updateContentReviewStatus.d.ts +10 -0
- package/plugins/cms/updateContentReviewStatus.js +97 -0
- package/plugins/cms/updateContentReviewStatus.js.map +1 -0
- package/plugins/cms/utils.d.ts +27 -0
- package/plugins/cms/utils.js +207 -0
- package/plugins/cms/utils.js.map +1 -0
- package/plugins/context.d.ts +5 -0
- package/plugins/context.js +146 -0
- package/plugins/context.js.map +1 -0
- package/plugins/graphql/changeRequest.gql.d.ts +4 -0
- package/plugins/graphql/changeRequest.gql.js +155 -0
- package/plugins/graphql/changeRequest.gql.js.map +1 -0
- package/plugins/graphql/comment.gql.d.ts +4 -0
- package/plugins/graphql/comment.gql.js +160 -0
- package/plugins/graphql/comment.gql.js.map +1 -0
- package/plugins/graphql/contentReview.gql.d.ts +4 -0
- package/plugins/graphql/contentReview.gql.js +382 -0
- package/plugins/graphql/contentReview.gql.js.map +1 -0
- package/plugins/graphql/reviewer.gql.d.ts +4 -0
- package/plugins/graphql/reviewer.gql.js +116 -0
- package/plugins/graphql/reviewer.gql.js.map +1 -0
- package/plugins/graphql/workflow.gql.d.ts +4 -0
- package/plugins/graphql/workflow.gql.js +205 -0
- package/plugins/graphql/workflow.gql.js.map +1 -0
- package/plugins/graphql.d.ts +4 -0
- package/plugins/graphql.js +95 -0
- package/plugins/graphql.js.map +1 -0
- package/plugins/hooks/createReviewerFromIdentity.d.ts +2 -0
- package/plugins/hooks/createReviewerFromIdentity.js +82 -0
- package/plugins/hooks/createReviewerFromIdentity.js.map +1 -0
- package/plugins/hooks/deleteChangeRequestsAfterContentReview.d.ts +2 -0
- package/plugins/hooks/deleteChangeRequestsAfterContentReview.js +67 -0
- package/plugins/hooks/deleteChangeRequestsAfterContentReview.js.map +1 -0
- package/plugins/hooks/deleteCommentsAfterChangeRequest.d.ts +2 -0
- package/plugins/hooks/deleteCommentsAfterChangeRequest.js +59 -0
- package/plugins/hooks/deleteCommentsAfterChangeRequest.js.map +1 -0
- package/plugins/hooks/index.d.ts +3 -0
- package/plugins/hooks/index.js +74 -0
- package/plugins/hooks/index.js.map +1 -0
- package/plugins/hooks/initializeContentReviewSteps.d.ts +2 -0
- package/plugins/hooks/initializeContentReviewSteps.js +86 -0
- package/plugins/hooks/initializeContentReviewSteps.js.map +1 -0
- package/plugins/hooks/initializeNotifications.d.ts +2 -0
- package/plugins/hooks/initializeNotifications.js +20 -0
- package/plugins/hooks/initializeNotifications.js.map +1 -0
- package/plugins/hooks/listContentReviews.d.ts +10 -0
- package/plugins/hooks/listContentReviews.js +68 -0
- package/plugins/hooks/listContentReviews.js.map +1 -0
- package/plugins/hooks/notifications/appUrl.d.ts +2 -0
- package/plugins/hooks/notifications/appUrl.js +22 -0
- package/plugins/hooks/notifications/appUrl.js.map +1 -0
- package/plugins/hooks/notifications/changeRequestAfterCreate.d.ts +2 -0
- package/plugins/hooks/notifications/changeRequestAfterCreate.js +144 -0
- package/plugins/hooks/notifications/changeRequestAfterCreate.js.map +1 -0
- package/plugins/hooks/notifications/changeRequestUrl.d.ts +8 -0
- package/plugins/hooks/notifications/changeRequestUrl.js +31 -0
- package/plugins/hooks/notifications/changeRequestUrl.js.map +1 -0
- package/plugins/hooks/notifications/commentAfterCreate.d.ts +2 -0
- package/plugins/hooks/notifications/commentAfterCreate.js +157 -0
- package/plugins/hooks/notifications/commentAfterCreate.js.map +1 -0
- package/plugins/hooks/notifications/commentUrl.d.ts +8 -0
- package/plugins/hooks/notifications/commentUrl.js +31 -0
- package/plugins/hooks/notifications/commentUrl.js.map +1 -0
- package/plugins/hooks/notifications/contentReviewAfterCreate.d.ts +2 -0
- package/plugins/hooks/notifications/contentReviewAfterCreate.js +122 -0
- package/plugins/hooks/notifications/contentReviewAfterCreate.js.map +1 -0
- package/plugins/hooks/notifications/contentReviewUrl.d.ts +7 -0
- package/plugins/hooks/notifications/contentReviewUrl.js +30 -0
- package/plugins/hooks/notifications/contentReviewUrl.js.map +1 -0
- package/plugins/hooks/notifications/contentUrl.d.ts +7 -0
- package/plugins/hooks/notifications/contentUrl.js +29 -0
- package/plugins/hooks/notifications/contentUrl.js.map +1 -0
- package/plugins/hooks/notifications/lastChangeRequestNotificationPlugin.d.ts +11 -0
- package/plugins/hooks/notifications/lastChangeRequestNotificationPlugin.js +25 -0
- package/plugins/hooks/notifications/lastChangeRequestNotificationPlugin.js.map +1 -0
- package/plugins/hooks/notifications/lastCommentNotificationPlugin.d.ts +11 -0
- package/plugins/hooks/notifications/lastCommentNotificationPlugin.js +25 -0
- package/plugins/hooks/notifications/lastCommentNotificationPlugin.js.map +1 -0
- package/plugins/hooks/notifications/lastContentReviewNotificationPlugin.d.ts +11 -0
- package/plugins/hooks/notifications/lastContentReviewNotificationPlugin.js +25 -0
- package/plugins/hooks/notifications/lastContentReviewNotificationPlugin.js.map +1 -0
- package/plugins/hooks/notifications/reviewers.d.ts +15 -0
- package/plugins/hooks/notifications/reviewers.js +51 -0
- package/plugins/hooks/notifications/reviewers.js.map +1 -0
- package/plugins/hooks/notifications/sendChangeRequestNotification.d.ts +2 -0
- package/plugins/hooks/notifications/sendChangeRequestNotification.js +52 -0
- package/plugins/hooks/notifications/sendChangeRequestNotification.js.map +1 -0
- package/plugins/hooks/notifications/sendCommentNotification.d.ts +2 -0
- package/plugins/hooks/notifications/sendCommentNotification.js +52 -0
- package/plugins/hooks/notifications/sendCommentNotification.js.map +1 -0
- package/plugins/hooks/notifications/sendContentReviewNotification.d.ts +2 -0
- package/plugins/hooks/notifications/sendContentReviewNotification.js +52 -0
- package/plugins/hooks/notifications/sendContentReviewNotification.js.map +1 -0
- package/plugins/hooks/updatePendingChangeRequests.d.ts +2 -0
- package/plugins/hooks/updatePendingChangeRequests.js +94 -0
- package/plugins/hooks/updatePendingChangeRequests.js.map +1 -0
- package/plugins/hooks/updateTotalComments.d.ts +3 -0
- package/plugins/hooks/updateTotalComments.js +153 -0
- package/plugins/hooks/updateTotalComments.js.map +1 -0
- package/plugins/hooks/validateChangeRequest.d.ts +2 -0
- package/plugins/hooks/validateChangeRequest.js +89 -0
- package/plugins/hooks/validateChangeRequest.js.map +1 -0
- package/plugins/hooks/validateComment.d.ts +2 -0
- package/plugins/hooks/validateComment.js +57 -0
- package/plugins/hooks/validateComment.js.map +1 -0
- package/plugins/hooks/validateContentReview.d.ts +2 -0
- package/plugins/hooks/validateContentReview.js +38 -0
- package/plugins/hooks/validateContentReview.js.map +1 -0
- package/plugins/pageBuilder/PageApwSettingsGetterPlugin.d.ts +9 -0
- package/plugins/pageBuilder/PageApwSettingsGetterPlugin.js +51 -0
- package/plugins/pageBuilder/PageApwSettingsGetterPlugin.js.map +1 -0
- package/plugins/pageBuilder/apwContentPagePlugins.d.ts +3 -0
- package/plugins/pageBuilder/apwContentPagePlugins.js +30 -0
- package/plugins/pageBuilder/apwContentPagePlugins.js.map +1 -0
- package/plugins/pageBuilder/extendPbPageSettingsSchema.d.ts +3 -0
- package/plugins/pageBuilder/extendPbPageSettingsSchema.js +25 -0
- package/plugins/pageBuilder/extendPbPageSettingsSchema.js.map +1 -0
- package/plugins/pageBuilder/index.d.ts +11 -0
- package/plugins/pageBuilder/index.js +53 -0
- package/plugins/pageBuilder/index.js.map +1 -0
- package/plugins/pageBuilder/linkContentReviewToPage.d.ts +8 -0
- package/plugins/pageBuilder/linkContentReviewToPage.js +105 -0
- package/plugins/pageBuilder/linkContentReviewToPage.js.map +1 -0
- package/plugins/pageBuilder/linkWorkflowToPage.d.ts +8 -0
- package/plugins/pageBuilder/linkWorkflowToPage.js +194 -0
- package/plugins/pageBuilder/linkWorkflowToPage.js.map +1 -0
- package/plugins/pageBuilder/notifications/changeRequestNotification.d.ts +1 -0
- package/plugins/pageBuilder/notifications/changeRequestNotification.js +35 -0
- package/plugins/pageBuilder/notifications/changeRequestNotification.js.map +1 -0
- package/plugins/pageBuilder/notifications/commentNotification.d.ts +1 -0
- package/plugins/pageBuilder/notifications/commentNotification.js +35 -0
- package/plugins/pageBuilder/notifications/commentNotification.js.map +1 -0
- package/plugins/pageBuilder/notifications/contentReviewNotification.d.ts +1 -0
- package/plugins/pageBuilder/notifications/contentReviewNotification.js +35 -0
- package/plugins/pageBuilder/notifications/contentReviewNotification.js.map +1 -0
- package/plugins/pageBuilder/notifications/contentUrl.d.ts +1 -0
- package/plugins/pageBuilder/notifications/contentUrl.js +53 -0
- package/plugins/pageBuilder/notifications/contentUrl.js.map +1 -0
- package/plugins/pageBuilder/triggerContentReview.d.ts +8 -0
- package/plugins/pageBuilder/triggerContentReview.js +50 -0
- package/plugins/pageBuilder/triggerContentReview.js.map +1 -0
- package/plugins/pageBuilder/updateContentReviewStatus.d.ts +10 -0
- package/plugins/pageBuilder/updateContentReviewStatus.js +79 -0
- package/plugins/pageBuilder/updateContentReviewStatus.js.map +1 -0
- package/plugins/pageBuilder/utils.d.ts +22 -0
- package/plugins/pageBuilder/utils.js +184 -0
- package/plugins/pageBuilder/utils.js.map +1 -0
- package/plugins/utils.d.ts +35 -0
- package/plugins/utils.js +187 -0
- package/plugins/utils.js.map +1 -0
- package/scheduler/createScheduleActionMethods.d.ts +2 -0
- package/scheduler/createScheduleActionMethods.js +149 -0
- package/scheduler/createScheduleActionMethods.js.map +1 -0
- package/scheduler/handlers/executeAction/index.d.ts +13 -0
- package/scheduler/handlers/executeAction/index.js +172 -0
- package/scheduler/handlers/executeAction/index.js.map +1 -0
- package/scheduler/handlers/executeAction/plugins/ApplicationGraphQL.d.ts +13 -0
- package/scheduler/handlers/executeAction/plugins/ApplicationGraphQL.js +17 -0
- package/scheduler/handlers/executeAction/plugins/ApplicationGraphQL.js.map +1 -0
- package/scheduler/handlers/executeAction/plugins/HeadlessCMSGraphQL.d.ts +11 -0
- package/scheduler/handlers/executeAction/plugins/HeadlessCMSGraphQL.js +126 -0
- package/scheduler/handlers/executeAction/plugins/HeadlessCMSGraphQL.js.map +1 -0
- package/scheduler/handlers/executeAction/plugins/PageBuilderGraphQL.d.ts +11 -0
- package/scheduler/handlers/executeAction/plugins/PageBuilderGraphQL.js +163 -0
- package/scheduler/handlers/executeAction/plugins/PageBuilderGraphQL.js.map +1 -0
- package/scheduler/handlers/executeAction/security.d.ts +4 -0
- package/scheduler/handlers/executeAction/security.js +68 -0
- package/scheduler/handlers/executeAction/security.js.map +1 -0
- package/scheduler/handlers/scheduleAction/index.d.ts +22 -0
- package/scheduler/handlers/scheduleAction/index.js +164 -0
- package/scheduler/handlers/scheduleAction/index.js.map +1 -0
- package/scheduler/handlers/scheduleAction/scheduleAction.utils.d.ts +24 -0
- package/scheduler/handlers/scheduleAction/scheduleAction.utils.js +172 -0
- package/scheduler/handlers/scheduleAction/scheduleAction.utils.js.map +1 -0
- package/scheduler/handlers/utils.d.ts +33 -0
- package/scheduler/handlers/utils.js +168 -0
- package/scheduler/handlers/utils.js.map +1 -0
- package/scheduler/index.d.ts +2 -0
- package/scheduler/index.js +27 -0
- package/scheduler/index.js.map +1 -0
- package/scheduler/types.d.ts +171 -0
- package/scheduler/types.js +34 -0
- package/scheduler/types.js.map +1 -0
- package/storageOperations/changeRequestStorageOperations.d.ts +3 -0
- package/storageOperations/changeRequestStorageOperations.js +122 -0
- package/storageOperations/changeRequestStorageOperations.js.map +1 -0
- package/storageOperations/commentStorageOperations.d.ts +3 -0
- package/storageOperations/commentStorageOperations.js +138 -0
- package/storageOperations/commentStorageOperations.js.map +1 -0
- package/storageOperations/contentReviewStorageOperations.d.ts +3 -0
- package/storageOperations/contentReviewStorageOperations.js +93 -0
- package/storageOperations/contentReviewStorageOperations.js.map +1 -0
- package/storageOperations/index.d.ts +15 -0
- package/storageOperations/index.js +48 -0
- package/storageOperations/index.js.map +1 -0
- package/storageOperations/models/changeRequest.model.d.ts +3 -0
- package/storageOperations/models/changeRequest.model.js +59 -0
- package/storageOperations/models/changeRequest.model.js.map +1 -0
- package/storageOperations/models/comment.model.d.ts +7 -0
- package/storageOperations/models/comment.model.js +60 -0
- package/storageOperations/models/comment.model.js.map +1 -0
- package/storageOperations/models/contentModelPluginFactory.d.ts +15 -0
- package/storageOperations/models/contentModelPluginFactory.js +28 -0
- package/storageOperations/models/contentModelPluginFactory.js.map +1 -0
- package/storageOperations/models/contentReview.model.d.ts +7 -0
- package/storageOperations/models/contentReview.model.js +258 -0
- package/storageOperations/models/contentReview.model.js.map +1 -0
- package/storageOperations/models/index.d.ts +2 -0
- package/storageOperations/models/index.js +115 -0
- package/storageOperations/models/index.js.map +1 -0
- package/storageOperations/models/reviewer.model.d.ts +3 -0
- package/storageOperations/models/reviewer.model.js +71 -0
- package/storageOperations/models/reviewer.model.js.map +1 -0
- package/storageOperations/models/utils.d.ts +3 -0
- package/storageOperations/models/utils.js +37 -0
- package/storageOperations/models/utils.js.map +1 -0
- package/storageOperations/models/workflow.model.d.ts +12 -0
- package/storageOperations/models/workflow.model.js +208 -0
- package/storageOperations/models/workflow.model.js.map +1 -0
- package/storageOperations/reviewerStorageOperations.d.ts +3 -0
- package/storageOperations/reviewerStorageOperations.js +97 -0
- package/storageOperations/reviewerStorageOperations.js.map +1 -0
- package/storageOperations/types.d.ts +34 -0
- package/storageOperations/types.js +5 -0
- package/storageOperations/types.js.map +1 -0
- package/storageOperations/workflowStorageOperations.d.ts +3 -0
- package/storageOperations/workflowStorageOperations.js +111 -0
- package/storageOperations/workflowStorageOperations.js.map +1 -0
- package/types.d.ts +752 -0
- package/types.js +69 -0
- package/types.js.map +1 -0
- package/utils/contentApwSettingsPlugin.d.ts +9 -0
- package/utils/contentApwSettingsPlugin.js +26 -0
- package/utils/contentApwSettingsPlugin.js.map +1 -0
- package/utils/errors.d.ts +16 -0
- package/utils/errors.js +75 -0
- package/utils/errors.js.map +1 -0
- package/utils/fieldResolver.d.ts +16 -0
- package/utils/fieldResolver.js +54 -0
- package/utils/fieldResolver.js.map +1 -0
- package/utils/resolve.d.ts +3 -0
- package/utils/resolve.js +18 -0
- package/utils/resolve.js.map +1 -0
@@ -0,0 +1,205 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
4
|
+
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
6
|
+
value: true
|
7
|
+
});
|
8
|
+
exports.default = void 0;
|
9
|
+
|
10
|
+
var _plugins = require("@webiny/handler-graphql/plugins");
|
11
|
+
|
12
|
+
var _handlerGraphql = require("@webiny/handler-graphql");
|
13
|
+
|
14
|
+
var _resolve = _interopRequireDefault(require("../../utils/resolve"));
|
15
|
+
|
16
|
+
const workflowSchema = new _plugins.GraphQLSchemaPlugin({
|
17
|
+
typeDefs:
|
18
|
+
/* GraphQL */
|
19
|
+
`
|
20
|
+
type ApwWorkflowListItem {
|
21
|
+
# System generated fields
|
22
|
+
id: ID
|
23
|
+
savedOn: DateTime
|
24
|
+
createdOn: DateTime
|
25
|
+
createdBy: ApwCreatedBy
|
26
|
+
# Workflow specific fields
|
27
|
+
app: ApwWorkflowApplication
|
28
|
+
title: String
|
29
|
+
steps: [ApwWorkflowStep]
|
30
|
+
scope: ApwWorkflowScope
|
31
|
+
}
|
32
|
+
|
33
|
+
type ApwListWorkflowsResponse {
|
34
|
+
data: [ApwWorkflowListItem]
|
35
|
+
error: ApwError
|
36
|
+
meta: ApwMeta
|
37
|
+
}
|
38
|
+
|
39
|
+
type ApwWorkflowStep {
|
40
|
+
title: String!
|
41
|
+
id: String!
|
42
|
+
type: ApwWorkflowStepTypes!
|
43
|
+
reviewers: [ID!]
|
44
|
+
}
|
45
|
+
|
46
|
+
type ApwWorkflowScope {
|
47
|
+
type: String
|
48
|
+
data: JSON
|
49
|
+
}
|
50
|
+
|
51
|
+
type ApwWorkflow {
|
52
|
+
# System generated fields
|
53
|
+
id: ID
|
54
|
+
savedOn: DateTime
|
55
|
+
createdOn: DateTime
|
56
|
+
createdBy: ApwCreatedBy
|
57
|
+
# Workflow specific fields
|
58
|
+
app: ApwWorkflowApplication
|
59
|
+
title: String
|
60
|
+
steps: [ApwWorkflowStep]
|
61
|
+
scope: ApwWorkflowScope
|
62
|
+
}
|
63
|
+
|
64
|
+
type ApwWorkflowResponse {
|
65
|
+
data: ApwWorkflow
|
66
|
+
error: ApwError
|
67
|
+
}
|
68
|
+
|
69
|
+
type ApwDeleteWorkflowResponse {
|
70
|
+
data: Boolean
|
71
|
+
error: ApwError
|
72
|
+
}
|
73
|
+
|
74
|
+
enum ApwWorkflowApplication {
|
75
|
+
pageBuilder
|
76
|
+
cms
|
77
|
+
formBuilder
|
78
|
+
}
|
79
|
+
|
80
|
+
enum ApwWorkflowStepTypes {
|
81
|
+
mandatoryBlocking
|
82
|
+
mandatoryNonBlocking
|
83
|
+
notMandatory
|
84
|
+
}
|
85
|
+
|
86
|
+
enum ApwListWorkflowsSort {
|
87
|
+
id_ASC
|
88
|
+
id_DESC
|
89
|
+
savedOn_ASC
|
90
|
+
savedOn_DESC
|
91
|
+
createdOn_ASC
|
92
|
+
createdOn_DESC
|
93
|
+
publishedOn_ASC
|
94
|
+
publishedOn_DESC
|
95
|
+
title_ASC
|
96
|
+
title_DESC
|
97
|
+
}
|
98
|
+
|
99
|
+
input ApwWorkflowReviewerInput {
|
100
|
+
id: ID
|
101
|
+
}
|
102
|
+
|
103
|
+
input ApwCreateWorkflowStepInput {
|
104
|
+
id: String!
|
105
|
+
title: String!
|
106
|
+
type: ApwWorkflowStepTypes!
|
107
|
+
reviewers: [ID!]!
|
108
|
+
}
|
109
|
+
|
110
|
+
input ApwUpdateWorkflowStepInput {
|
111
|
+
id: String!
|
112
|
+
title: String!
|
113
|
+
type: ApwWorkflowStepTypes!
|
114
|
+
reviewers: [ID!]
|
115
|
+
}
|
116
|
+
|
117
|
+
input ApwWorkflowScopeInput {
|
118
|
+
type: String!
|
119
|
+
data: JSON
|
120
|
+
}
|
121
|
+
|
122
|
+
input ApwCreateWorkflowInput {
|
123
|
+
title: String!
|
124
|
+
steps: [ApwCreateWorkflowStepInput!]!
|
125
|
+
scope: ApwWorkflowScopeInput!
|
126
|
+
app: ApwWorkflowApplication!
|
127
|
+
}
|
128
|
+
|
129
|
+
input ApwUpdateWorkflowInput {
|
130
|
+
title: String
|
131
|
+
steps: [ApwUpdateWorkflowStepInput!]
|
132
|
+
scope: ApwWorkflowScopeInput
|
133
|
+
}
|
134
|
+
|
135
|
+
input ApwListWorkflowsWhereInput {
|
136
|
+
app: ApwWorkflowApplication
|
137
|
+
}
|
138
|
+
|
139
|
+
input ApwListWorkflowsSearchInput {
|
140
|
+
# By specifying "query", the search will be performed against workflow' "title" field.
|
141
|
+
query: String
|
142
|
+
}
|
143
|
+
|
144
|
+
type ApwQuery {
|
145
|
+
getWorkflow(id: ID!): ApwWorkflowResponse
|
146
|
+
|
147
|
+
listWorkflows(
|
148
|
+
where: ApwListWorkflowsWhereInput
|
149
|
+
limit: Int
|
150
|
+
after: String
|
151
|
+
sort: [ApwListWorkflowsSort!]
|
152
|
+
search: ApwListWorkflowsSearchInput
|
153
|
+
): ApwListWorkflowsResponse
|
154
|
+
}
|
155
|
+
|
156
|
+
type ApwMutation {
|
157
|
+
createWorkflow(data: ApwCreateWorkflowInput!): ApwWorkflowResponse
|
158
|
+
|
159
|
+
# Update workflow by given ID.
|
160
|
+
updateWorkflow(id: ID!, data: ApwUpdateWorkflowInput!): ApwWorkflowResponse
|
161
|
+
|
162
|
+
# Delete workflow
|
163
|
+
deleteWorkflow(id: ID!): ApwDeleteWorkflowResponse
|
164
|
+
}
|
165
|
+
`,
|
166
|
+
resolvers: {
|
167
|
+
ApwWorkflowStep: {
|
168
|
+
reviewers: parent => {
|
169
|
+
const reviewers = parent.reviewers;
|
170
|
+
return reviewers.map(({
|
171
|
+
id
|
172
|
+
}) => id);
|
173
|
+
}
|
174
|
+
},
|
175
|
+
ApwQuery: {
|
176
|
+
getWorkflow: async (_, args, context) => {
|
177
|
+
return (0, _resolve.default)(() => context.apw.workflow.get(args.id));
|
178
|
+
},
|
179
|
+
listWorkflows: async (_, args, context) => {
|
180
|
+
try {
|
181
|
+
/**
|
182
|
+
* We know that args is ListWorkflowsParams.
|
183
|
+
*/
|
184
|
+
const [entries, meta] = await context.apw.workflow.list(args);
|
185
|
+
return new _handlerGraphql.ListResponse(entries, meta);
|
186
|
+
} catch (e) {
|
187
|
+
return new _handlerGraphql.ErrorResponse(e);
|
188
|
+
}
|
189
|
+
}
|
190
|
+
},
|
191
|
+
ApwMutation: {
|
192
|
+
createWorkflow: async (_, args, context) => {
|
193
|
+
return (0, _resolve.default)(() => context.apw.workflow.create(args.data));
|
194
|
+
},
|
195
|
+
updateWorkflow: async (_, args, context) => {
|
196
|
+
return (0, _resolve.default)(() => context.apw.workflow.update(args.id, args.data));
|
197
|
+
},
|
198
|
+
deleteWorkflow: async (_, args, context) => {
|
199
|
+
return (0, _resolve.default)(() => context.apw.workflow.delete(args.id));
|
200
|
+
}
|
201
|
+
}
|
202
|
+
}
|
203
|
+
});
|
204
|
+
var _default = workflowSchema;
|
205
|
+
exports.default = _default;
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"names":["workflowSchema","GraphQLSchemaPlugin","typeDefs","resolvers","ApwWorkflowStep","reviewers","parent","map","id","ApwQuery","getWorkflow","_","args","context","resolve","apw","workflow","get","listWorkflows","entries","meta","list","ListResponse","e","ErrorResponse","ApwMutation","createWorkflow","create","data","updateWorkflow","update","deleteWorkflow","delete"],"sources":["workflow.gql.ts"],"sourcesContent":["import { GraphQLSchemaPlugin } from \"@webiny/handler-graphql/plugins\";\nimport { ErrorResponse, ListResponse } from \"@webiny/handler-graphql\";\nimport { ApwContext, ApwReviewer, ListWorkflowsParams } from \"~/types\";\nimport resolve from \"~/utils/resolve\";\n\nconst workflowSchema = new GraphQLSchemaPlugin<ApwContext>({\n typeDefs: /* GraphQL */ `\n type ApwWorkflowListItem {\n # System generated fields\n id: ID\n savedOn: DateTime\n createdOn: DateTime\n createdBy: ApwCreatedBy\n # Workflow specific fields\n app: ApwWorkflowApplication\n title: String\n steps: [ApwWorkflowStep]\n scope: ApwWorkflowScope\n }\n\n type ApwListWorkflowsResponse {\n data: [ApwWorkflowListItem]\n error: ApwError\n meta: ApwMeta\n }\n\n type ApwWorkflowStep {\n title: String!\n id: String!\n type: ApwWorkflowStepTypes!\n reviewers: [ID!]\n }\n\n type ApwWorkflowScope {\n type: String\n data: JSON\n }\n\n type ApwWorkflow {\n # System generated fields\n id: ID\n savedOn: DateTime\n createdOn: DateTime\n createdBy: ApwCreatedBy\n # Workflow specific fields\n app: ApwWorkflowApplication\n title: String\n steps: [ApwWorkflowStep]\n scope: ApwWorkflowScope\n }\n\n type ApwWorkflowResponse {\n data: ApwWorkflow\n error: ApwError\n }\n\n type ApwDeleteWorkflowResponse {\n data: Boolean\n error: ApwError\n }\n\n enum ApwWorkflowApplication {\n pageBuilder\n cms\n formBuilder\n }\n\n enum ApwWorkflowStepTypes {\n mandatoryBlocking\n mandatoryNonBlocking\n notMandatory\n }\n\n enum ApwListWorkflowsSort {\n id_ASC\n id_DESC\n savedOn_ASC\n savedOn_DESC\n createdOn_ASC\n createdOn_DESC\n publishedOn_ASC\n publishedOn_DESC\n title_ASC\n title_DESC\n }\n\n input ApwWorkflowReviewerInput {\n id: ID\n }\n\n input ApwCreateWorkflowStepInput {\n id: String!\n title: String!\n type: ApwWorkflowStepTypes!\n reviewers: [ID!]!\n }\n\n input ApwUpdateWorkflowStepInput {\n id: String!\n title: String!\n type: ApwWorkflowStepTypes!\n reviewers: [ID!]\n }\n\n input ApwWorkflowScopeInput {\n type: String!\n data: JSON\n }\n\n input ApwCreateWorkflowInput {\n title: String!\n steps: [ApwCreateWorkflowStepInput!]!\n scope: ApwWorkflowScopeInput!\n app: ApwWorkflowApplication!\n }\n\n input ApwUpdateWorkflowInput {\n title: String\n steps: [ApwUpdateWorkflowStepInput!]\n scope: ApwWorkflowScopeInput\n }\n\n input ApwListWorkflowsWhereInput {\n app: ApwWorkflowApplication\n }\n\n input ApwListWorkflowsSearchInput {\n # By specifying \"query\", the search will be performed against workflow' \"title\" field.\n query: String\n }\n\n type ApwQuery {\n getWorkflow(id: ID!): ApwWorkflowResponse\n\n listWorkflows(\n where: ApwListWorkflowsWhereInput\n limit: Int\n after: String\n sort: [ApwListWorkflowsSort!]\n search: ApwListWorkflowsSearchInput\n ): ApwListWorkflowsResponse\n }\n\n type ApwMutation {\n createWorkflow(data: ApwCreateWorkflowInput!): ApwWorkflowResponse\n\n # Update workflow by given ID.\n updateWorkflow(id: ID!, data: ApwUpdateWorkflowInput!): ApwWorkflowResponse\n\n # Delete workflow\n deleteWorkflow(id: ID!): ApwDeleteWorkflowResponse\n }\n `,\n resolvers: {\n ApwWorkflowStep: {\n reviewers: parent => {\n const reviewers: ApwReviewer[] = parent.reviewers;\n return reviewers.map(({ id }) => id);\n }\n },\n ApwQuery: {\n getWorkflow: async (_, args: any, context) => {\n return resolve(() => context.apw.workflow.get(args.id));\n },\n listWorkflows: async (_, args: any, context) => {\n try {\n /**\n * We know that args is ListWorkflowsParams.\n */\n const [entries, meta] = await context.apw.workflow.list(\n args as unknown as ListWorkflowsParams\n );\n return new ListResponse(entries, meta);\n } catch (e) {\n return new ErrorResponse(e);\n }\n }\n },\n ApwMutation: {\n createWorkflow: async (_, args: any, context) => {\n return resolve(() => context.apw.workflow.create(args.data));\n },\n updateWorkflow: async (_, args: any, context) => {\n return resolve(() => context.apw.workflow.update(args.id, args.data));\n },\n deleteWorkflow: async (_, args: any, context) => {\n return resolve(() => context.apw.workflow.delete(args.id));\n }\n }\n }\n});\n\nexport default workflowSchema;\n"],"mappings":";;;;;;;;;AAAA;;AACA;;AAEA;;AAEA,MAAMA,cAAc,GAAG,IAAIC,4BAAJ,CAAoC;EACvDC,QAAQ;EAAE;EAAe;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAnJ2D;EAoJvDC,SAAS,EAAE;IACPC,eAAe,EAAE;MACbC,SAAS,EAAEC,MAAM,IAAI;QACjB,MAAMD,SAAwB,GAAGC,MAAM,CAACD,SAAxC;QACA,OAAOA,SAAS,CAACE,GAAV,CAAc,CAAC;UAAEC;QAAF,CAAD,KAAYA,EAA1B,CAAP;MACH;IAJY,CADV;IAOPC,QAAQ,EAAE;MACNC,WAAW,EAAE,OAAOC,CAAP,EAAUC,IAAV,EAAqBC,OAArB,KAAiC;QAC1C,OAAO,IAAAC,gBAAA,EAAQ,MAAMD,OAAO,CAACE,GAAR,CAAYC,QAAZ,CAAqBC,GAArB,CAAyBL,IAAI,CAACJ,EAA9B,CAAd,CAAP;MACH,CAHK;MAINU,aAAa,EAAE,OAAOP,CAAP,EAAUC,IAAV,EAAqBC,OAArB,KAAiC;QAC5C,IAAI;UACA;AACpB;AACA;UACoB,MAAM,CAACM,OAAD,EAAUC,IAAV,IAAkB,MAAMP,OAAO,CAACE,GAAR,CAAYC,QAAZ,CAAqBK,IAArB,CAC1BT,IAD0B,CAA9B;UAGA,OAAO,IAAIU,4BAAJ,CAAiBH,OAAjB,EAA0BC,IAA1B,CAAP;QACH,CARD,CAQE,OAAOG,CAAP,EAAU;UACR,OAAO,IAAIC,6BAAJ,CAAkBD,CAAlB,CAAP;QACH;MACJ;IAhBK,CAPH;IAyBPE,WAAW,EAAE;MACTC,cAAc,EAAE,OAAOf,CAAP,EAAUC,IAAV,EAAqBC,OAArB,KAAiC;QAC7C,OAAO,IAAAC,gBAAA,EAAQ,MAAMD,OAAO,CAACE,GAAR,CAAYC,QAAZ,CAAqBW,MAArB,CAA4Bf,IAAI,CAACgB,IAAjC,CAAd,CAAP;MACH,CAHQ;MAITC,cAAc,EAAE,OAAOlB,CAAP,EAAUC,IAAV,EAAqBC,OAArB,KAAiC;QAC7C,OAAO,IAAAC,gBAAA,EAAQ,MAAMD,OAAO,CAACE,GAAR,CAAYC,QAAZ,CAAqBc,MAArB,CAA4BlB,IAAI,CAACJ,EAAjC,EAAqCI,IAAI,CAACgB,IAA1C,CAAd,CAAP;MACH,CANQ;MAOTG,cAAc,EAAE,OAAOpB,CAAP,EAAUC,IAAV,EAAqBC,OAArB,KAAiC;QAC7C,OAAO,IAAAC,gBAAA,EAAQ,MAAMD,OAAO,CAACE,GAAR,CAAYC,QAAZ,CAAqBgB,MAArB,CAA4BpB,IAAI,CAACJ,EAAjC,CAAd,CAAP;MACH;IATQ;EAzBN;AApJ4C,CAApC,CAAvB;eA2LeR,c"}
|
@@ -0,0 +1,95 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
4
|
+
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
6
|
+
value: true
|
7
|
+
});
|
8
|
+
exports.default = void 0;
|
9
|
+
|
10
|
+
var _plugins = require("@webiny/handler-graphql/plugins");
|
11
|
+
|
12
|
+
var _workflow = _interopRequireDefault(require("./graphql/workflow.gql"));
|
13
|
+
|
14
|
+
var _contentReview = _interopRequireDefault(require("./graphql/contentReview.gql"));
|
15
|
+
|
16
|
+
var _reviewer = _interopRequireDefault(require("./graphql/reviewer.gql"));
|
17
|
+
|
18
|
+
var _comment = _interopRequireDefault(require("./graphql/comment.gql"));
|
19
|
+
|
20
|
+
var _changeRequest = _interopRequireDefault(require("./graphql/changeRequest.gql"));
|
21
|
+
|
22
|
+
var _api = require("@webiny/api");
|
23
|
+
|
24
|
+
const emptyResolver = () => ({});
|
25
|
+
|
26
|
+
const baseSchema = new _plugins.GraphQLSchemaPlugin({
|
27
|
+
typeDefs:
|
28
|
+
/* GraphQL */
|
29
|
+
`
|
30
|
+
input ApwRefFieldInput {
|
31
|
+
id: ID!
|
32
|
+
modelId: String
|
33
|
+
}
|
34
|
+
|
35
|
+
input ApwRefFieldWhereInput {
|
36
|
+
id: String
|
37
|
+
id_not: String
|
38
|
+
id_in: [String!]
|
39
|
+
id_not_in: [String]
|
40
|
+
entryId: String
|
41
|
+
entryId_not: String
|
42
|
+
entryId_in: [String!]
|
43
|
+
entryId_not_in: [String!]
|
44
|
+
}
|
45
|
+
|
46
|
+
type ApwRefField {
|
47
|
+
modelId: String!
|
48
|
+
entryId: ID!
|
49
|
+
id: ID!
|
50
|
+
}
|
51
|
+
|
52
|
+
type ApwMeta {
|
53
|
+
hasMoreItems: Boolean
|
54
|
+
totalCount: Int
|
55
|
+
cursor: String
|
56
|
+
}
|
57
|
+
type ApwCreatedBy {
|
58
|
+
id: ID
|
59
|
+
displayName: String
|
60
|
+
type: String
|
61
|
+
}
|
62
|
+
type ApwError {
|
63
|
+
code: String
|
64
|
+
message: String
|
65
|
+
data: JSON
|
66
|
+
stack: String
|
67
|
+
}
|
68
|
+
extend type Query {
|
69
|
+
apw: ApwQuery
|
70
|
+
}
|
71
|
+
extend type Mutation {
|
72
|
+
apw: ApwMutation
|
73
|
+
}
|
74
|
+
`,
|
75
|
+
resolvers: {
|
76
|
+
Query: {
|
77
|
+
apw: emptyResolver
|
78
|
+
},
|
79
|
+
Mutation: {
|
80
|
+
apw: emptyResolver
|
81
|
+
}
|
82
|
+
}
|
83
|
+
});
|
84
|
+
|
85
|
+
var _default = () => {
|
86
|
+
return new _api.ContextPlugin(context => {
|
87
|
+
if (!context.wcp.canUseFeature("advancedPublishingWorkflow")) {
|
88
|
+
return;
|
89
|
+
}
|
90
|
+
|
91
|
+
context.plugins.register([baseSchema, _workflow.default, _contentReview.default, _reviewer.default, _comment.default, _changeRequest.default]);
|
92
|
+
});
|
93
|
+
};
|
94
|
+
|
95
|
+
exports.default = _default;
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"names":["emptyResolver","baseSchema","GraphQLSchemaPlugin","typeDefs","resolvers","Query","apw","Mutation","ContextPlugin","context","wcp","canUseFeature","plugins","register","workflowSchema","contentReviewSchema","reviewerSchema","commentSchema","changeRequestedSchema"],"sources":["graphql.ts"],"sourcesContent":["import { GraphQLSchemaPlugin } from \"@webiny/handler-graphql/plugins\";\nimport workflowSchema from \"./graphql/workflow.gql\";\nimport contentReviewSchema from \"./graphql/contentReview.gql\";\nimport reviewerSchema from \"./graphql/reviewer.gql\";\nimport commentSchema from \"./graphql/comment.gql\";\nimport changeRequestedSchema from \"./graphql/changeRequest.gql\";\nimport { ContextPlugin } from \"@webiny/api\";\nimport { ApwContext } from \"~/types\";\n\nconst emptyResolver = () => ({});\n\nconst baseSchema = new GraphQLSchemaPlugin({\n typeDefs: /* GraphQL */ `\n input ApwRefFieldInput {\n id: ID!\n modelId: String\n }\n\n input ApwRefFieldWhereInput {\n id: String\n id_not: String\n id_in: [String!]\n id_not_in: [String]\n entryId: String\n entryId_not: String\n entryId_in: [String!]\n entryId_not_in: [String!]\n }\n\n type ApwRefField {\n modelId: String!\n entryId: ID!\n id: ID!\n }\n\n type ApwMeta {\n hasMoreItems: Boolean\n totalCount: Int\n cursor: String\n }\n type ApwCreatedBy {\n id: ID\n displayName: String\n type: String\n }\n type ApwError {\n code: String\n message: String\n data: JSON\n stack: String\n }\n extend type Query {\n apw: ApwQuery\n }\n extend type Mutation {\n apw: ApwMutation\n }\n `,\n resolvers: {\n Query: {\n apw: emptyResolver\n },\n Mutation: {\n apw: emptyResolver\n }\n }\n});\n\nexport default () => {\n return new ContextPlugin<ApwContext>(context => {\n if (!context.wcp.canUseFeature(\"advancedPublishingWorkflow\")) {\n return;\n }\n\n context.plugins.register([\n baseSchema,\n workflowSchema,\n contentReviewSchema,\n reviewerSchema,\n commentSchema,\n changeRequestedSchema\n ]);\n });\n};\n"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAGA,MAAMA,aAAa,GAAG,OAAO,EAAP,CAAtB;;AAEA,MAAMC,UAAU,GAAG,IAAIC,4BAAJ,CAAwB;EACvCC,QAAQ;EAAE;EAAe;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KA9C2C;EA+CvCC,SAAS,EAAE;IACPC,KAAK,EAAE;MACHC,GAAG,EAAEN;IADF,CADA;IAIPO,QAAQ,EAAE;MACND,GAAG,EAAEN;IADC;EAJH;AA/C4B,CAAxB,CAAnB;;eAyDe,MAAM;EACjB,OAAO,IAAIQ,kBAAJ,CAA8BC,OAAO,IAAI;IAC5C,IAAI,CAACA,OAAO,CAACC,GAAR,CAAYC,aAAZ,CAA0B,4BAA1B,CAAL,EAA8D;MAC1D;IACH;;IAEDF,OAAO,CAACG,OAAR,CAAgBC,QAAhB,CAAyB,CACrBZ,UADqB,EAErBa,iBAFqB,EAGrBC,sBAHqB,EAIrBC,iBAJqB,EAKrBC,gBALqB,EAMrBC,sBANqB,CAAzB;EAQH,CAbM,CAAP;AAcH,C"}
|
@@ -0,0 +1,82 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
4
|
+
value: true
|
5
|
+
});
|
6
|
+
exports.createReviewerFromIdentity = void 0;
|
7
|
+
|
8
|
+
const createReviewerFromIdentity = ({
|
9
|
+
security,
|
10
|
+
apw
|
11
|
+
}) => {
|
12
|
+
/**
|
13
|
+
* Replicate identity in "AdvancedPublishingWorkflow" system after login.
|
14
|
+
*/
|
15
|
+
security.onAfterLogin.subscribe(async ({
|
16
|
+
identity
|
17
|
+
}) => {
|
18
|
+
let reviewer;
|
19
|
+
|
20
|
+
try {
|
21
|
+
[[reviewer]] = await apw.reviewer.list({
|
22
|
+
where: {
|
23
|
+
identityId: identity.id
|
24
|
+
},
|
25
|
+
limit: 1
|
26
|
+
});
|
27
|
+
} catch (e) {
|
28
|
+
if (e.message === "index_not_found_exception") {// Do nothing
|
29
|
+
} else {
|
30
|
+
throw e;
|
31
|
+
}
|
32
|
+
}
|
33
|
+
|
34
|
+
const email = identity.email || null;
|
35
|
+
/**
|
36
|
+
* Create a reviewer if it doesn't exist already.
|
37
|
+
*/
|
38
|
+
|
39
|
+
if (!reviewer) {
|
40
|
+
try {
|
41
|
+
await apw.reviewer.create({
|
42
|
+
identityId: identity.id,
|
43
|
+
displayName: identity.displayName,
|
44
|
+
type: identity.type,
|
45
|
+
email
|
46
|
+
});
|
47
|
+
} catch (ex) {
|
48
|
+
console.log(`There was an error while creating reviewer with identity: ${identity.id}`);
|
49
|
+
console.log(JSON.stringify(ex));
|
50
|
+
throw ex;
|
51
|
+
}
|
52
|
+
|
53
|
+
return;
|
54
|
+
}
|
55
|
+
/**
|
56
|
+
* If "displayName" doesn't match it means it has been updated in the identity,
|
57
|
+
* therefore, we need to update it on reviewer as well keep them in sync.
|
58
|
+
*/
|
59
|
+
|
60
|
+
|
61
|
+
const update = reviewer.displayName !== identity.displayName || reviewer.email !== email;
|
62
|
+
|
63
|
+
if (!update) {
|
64
|
+
return;
|
65
|
+
}
|
66
|
+
|
67
|
+
try {
|
68
|
+
await apw.reviewer.update(reviewer.id, {
|
69
|
+
identityId: reviewer.identityId,
|
70
|
+
type: reviewer.type,
|
71
|
+
displayName: identity.displayName,
|
72
|
+
email
|
73
|
+
});
|
74
|
+
} catch (ex) {
|
75
|
+
console.log(`There was an error while updating reviewer: ${reviewer.id}`);
|
76
|
+
console.log(JSON.stringify(ex));
|
77
|
+
throw ex;
|
78
|
+
}
|
79
|
+
});
|
80
|
+
};
|
81
|
+
|
82
|
+
exports.createReviewerFromIdentity = createReviewerFromIdentity;
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"names":["createReviewerFromIdentity","security","apw","onAfterLogin","subscribe","identity","reviewer","list","where","identityId","id","limit","e","message","email","create","displayName","type","ex","console","log","JSON","stringify","update"],"sources":["createReviewerFromIdentity.ts"],"sourcesContent":["import { LifeCycleHookCallbackParams } from \"~/types\";\n\nexport const createReviewerFromIdentity = ({ security, apw }: LifeCycleHookCallbackParams) => {\n /**\n * Replicate identity in \"AdvancedPublishingWorkflow\" system after login.\n */\n security.onAfterLogin.subscribe(async ({ identity }) => {\n let reviewer;\n try {\n [[reviewer]] = await apw.reviewer.list({\n where: { identityId: identity.id },\n limit: 1\n });\n } catch (e) {\n if (e.message === \"index_not_found_exception\") {\n // Do nothing\n } else {\n throw e;\n }\n }\n const email = (identity as any).email || null;\n /**\n * Create a reviewer if it doesn't exist already.\n */\n if (!reviewer) {\n try {\n await apw.reviewer.create({\n identityId: identity.id,\n displayName: identity.displayName,\n type: identity.type,\n email\n });\n } catch (ex) {\n console.log(\n `There was an error while creating reviewer with identity: ${identity.id}`\n );\n console.log(JSON.stringify(ex));\n throw ex;\n }\n return;\n }\n /**\n * If \"displayName\" doesn't match it means it has been updated in the identity,\n * therefore, we need to update it on reviewer as well keep them in sync.\n */\n const update = reviewer.displayName !== identity.displayName || reviewer.email !== email;\n if (!update) {\n return;\n }\n try {\n await apw.reviewer.update(reviewer.id, {\n identityId: reviewer.identityId,\n type: reviewer.type,\n displayName: identity.displayName,\n email\n });\n } catch (ex) {\n console.log(`There was an error while updating reviewer: ${reviewer.id}`);\n console.log(JSON.stringify(ex));\n throw ex;\n }\n });\n};\n"],"mappings":";;;;;;;AAEO,MAAMA,0BAA0B,GAAG,CAAC;EAAEC,QAAF;EAAYC;AAAZ,CAAD,KAAoD;EAC1F;AACJ;AACA;EACID,QAAQ,CAACE,YAAT,CAAsBC,SAAtB,CAAgC,OAAO;IAAEC;EAAF,CAAP,KAAwB;IACpD,IAAIC,QAAJ;;IACA,IAAI;MACA,CAAC,CAACA,QAAD,CAAD,IAAe,MAAMJ,GAAG,CAACI,QAAJ,CAAaC,IAAb,CAAkB;QACnCC,KAAK,EAAE;UAAEC,UAAU,EAAEJ,QAAQ,CAACK;QAAvB,CAD4B;QAEnCC,KAAK,EAAE;MAF4B,CAAlB,CAArB;IAIH,CALD,CAKE,OAAOC,CAAP,EAAU;MACR,IAAIA,CAAC,CAACC,OAAF,KAAc,2BAAlB,EAA+C,CAC3C;MACH,CAFD,MAEO;QACH,MAAMD,CAAN;MACH;IACJ;;IACD,MAAME,KAAK,GAAIT,QAAD,CAAkBS,KAAlB,IAA2B,IAAzC;IACA;AACR;AACA;;IACQ,IAAI,CAACR,QAAL,EAAe;MACX,IAAI;QACA,MAAMJ,GAAG,CAACI,QAAJ,CAAaS,MAAb,CAAoB;UACtBN,UAAU,EAAEJ,QAAQ,CAACK,EADC;UAEtBM,WAAW,EAAEX,QAAQ,CAACW,WAFA;UAGtBC,IAAI,EAAEZ,QAAQ,CAACY,IAHO;UAItBH;QAJsB,CAApB,CAAN;MAMH,CAPD,CAOE,OAAOI,EAAP,EAAW;QACTC,OAAO,CAACC,GAAR,CACK,6DAA4Df,QAAQ,CAACK,EAAG,EAD7E;QAGAS,OAAO,CAACC,GAAR,CAAYC,IAAI,CAACC,SAAL,CAAeJ,EAAf,CAAZ;QACA,MAAMA,EAAN;MACH;;MACD;IACH;IACD;AACR;AACA;AACA;;;IACQ,MAAMK,MAAM,GAAGjB,QAAQ,CAACU,WAAT,KAAyBX,QAAQ,CAACW,WAAlC,IAAiDV,QAAQ,CAACQ,KAAT,KAAmBA,KAAnF;;IACA,IAAI,CAACS,MAAL,EAAa;MACT;IACH;;IACD,IAAI;MACA,MAAMrB,GAAG,CAACI,QAAJ,CAAaiB,MAAb,CAAoBjB,QAAQ,CAACI,EAA7B,EAAiC;QACnCD,UAAU,EAAEH,QAAQ,CAACG,UADc;QAEnCQ,IAAI,EAAEX,QAAQ,CAACW,IAFoB;QAGnCD,WAAW,EAAEX,QAAQ,CAACW,WAHa;QAInCF;MAJmC,CAAjC,CAAN;IAMH,CAPD,CAOE,OAAOI,EAAP,EAAW;MACTC,OAAO,CAACC,GAAR,CAAa,+CAA8Cd,QAAQ,CAACI,EAAG,EAAvE;MACAS,OAAO,CAACC,GAAR,CAAYC,IAAI,CAACC,SAAL,CAAeJ,EAAf,CAAZ;MACA,MAAMA,EAAN;IACH;EACJ,CAvDD;AAwDH,CA5DM"}
|
@@ -0,0 +1,67 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
4
|
+
value: true
|
5
|
+
});
|
6
|
+
exports.deleteChangeRequestsWithContentReview = void 0;
|
7
|
+
|
8
|
+
const deleteChangeRequestsWithContentReview = ({
|
9
|
+
apw
|
10
|
+
}) => {
|
11
|
+
apw.contentReview.onContentReviewAfterDelete.subscribe(async ({
|
12
|
+
contentReview
|
13
|
+
}) => {
|
14
|
+
/**
|
15
|
+
* Also delete all associated "changeRequest" when a "contentReview" is deleted.
|
16
|
+
*/
|
17
|
+
const steps = contentReview.steps;
|
18
|
+
/**
|
19
|
+
* For each step get associated change requests and delete them.
|
20
|
+
*/
|
21
|
+
|
22
|
+
for (let i = 0; i < steps.length; i++) {
|
23
|
+
const {
|
24
|
+
id: stepId
|
25
|
+
} = steps[i];
|
26
|
+
let meta = {
|
27
|
+
totalCount: 1
|
28
|
+
};
|
29
|
+
/**
|
30
|
+
* Paginate through change requests.
|
31
|
+
*/
|
32
|
+
|
33
|
+
while (meta.totalCount > 0) {
|
34
|
+
let changeRequests = [];
|
35
|
+
/**
|
36
|
+
* Get all change requests.
|
37
|
+
*/
|
38
|
+
|
39
|
+
try {
|
40
|
+
[changeRequests, meta] = await apw.changeRequest.list({
|
41
|
+
where: {
|
42
|
+
step: `${contentReview.id}#${stepId}`
|
43
|
+
}
|
44
|
+
});
|
45
|
+
} catch (e) {
|
46
|
+
meta.totalCount = 0;
|
47
|
+
|
48
|
+
if (e.message !== "index_not_found_exception") {
|
49
|
+
throw e;
|
50
|
+
}
|
51
|
+
|
52
|
+
console.log(e);
|
53
|
+
}
|
54
|
+
/**
|
55
|
+
* Delete change requests one by one.
|
56
|
+
*/
|
57
|
+
|
58
|
+
|
59
|
+
for (const changeRequest of changeRequests) {
|
60
|
+
await apw.changeRequest.delete(changeRequest.id);
|
61
|
+
}
|
62
|
+
}
|
63
|
+
}
|
64
|
+
});
|
65
|
+
};
|
66
|
+
|
67
|
+
exports.deleteChangeRequestsWithContentReview = deleteChangeRequestsWithContentReview;
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"names":["deleteChangeRequestsWithContentReview","apw","contentReview","onContentReviewAfterDelete","subscribe","steps","i","length","id","stepId","meta","totalCount","changeRequests","changeRequest","list","where","step","e","message","console","log","delete"],"sources":["deleteChangeRequestsAfterContentReview.ts"],"sourcesContent":["import { ApwChangeRequest, LifeCycleHookCallbackParams, ListMeta } from \"~/types\";\n\nexport const deleteChangeRequestsWithContentReview = ({\n apw\n}: Pick<LifeCycleHookCallbackParams, \"apw\">) => {\n apw.contentReview.onContentReviewAfterDelete.subscribe(async ({ contentReview }) => {\n /**\n * Also delete all associated \"changeRequest\" when a \"contentReview\" is deleted.\n */\n const steps = contentReview.steps;\n /**\n * For each step get associated change requests and delete them.\n */\n for (let i = 0; i < steps.length; i++) {\n const { id: stepId } = steps[i];\n\n let meta: Pick<ListMeta, \"totalCount\"> = {\n totalCount: 1\n };\n /**\n * Paginate through change requests.\n */\n while (meta.totalCount > 0) {\n let changeRequests: ApwChangeRequest[] = [];\n /**\n * Get all change requests.\n */\n try {\n [changeRequests, meta] = await apw.changeRequest.list({\n where: {\n step: `${contentReview.id}#${stepId}`\n }\n });\n } catch (e) {\n meta.totalCount = 0;\n if (e.message !== \"index_not_found_exception\") {\n throw e;\n }\n console.log(e);\n }\n\n /**\n * Delete change requests one by one.\n */\n for (const changeRequest of changeRequests) {\n await apw.changeRequest.delete(changeRequest.id);\n }\n }\n }\n });\n};\n"],"mappings":";;;;;;;AAEO,MAAMA,qCAAqC,GAAG,CAAC;EAClDC;AADkD,CAAD,KAEL;EAC5CA,GAAG,CAACC,aAAJ,CAAkBC,0BAAlB,CAA6CC,SAA7C,CAAuD,OAAO;IAAEF;EAAF,CAAP,KAA6B;IAChF;AACR;AACA;IACQ,MAAMG,KAAK,GAAGH,aAAa,CAACG,KAA5B;IACA;AACR;AACA;;IACQ,KAAK,IAAIC,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAGD,KAAK,CAACE,MAA1B,EAAkCD,CAAC,EAAnC,EAAuC;MACnC,MAAM;QAAEE,EAAE,EAAEC;MAAN,IAAiBJ,KAAK,CAACC,CAAD,CAA5B;MAEA,IAAII,IAAkC,GAAG;QACrCC,UAAU,EAAE;MADyB,CAAzC;MAGA;AACZ;AACA;;MACY,OAAOD,IAAI,CAACC,UAAL,GAAkB,CAAzB,EAA4B;QACxB,IAAIC,cAAkC,GAAG,EAAzC;QACA;AAChB;AACA;;QACgB,IAAI;UACA,CAACA,cAAD,EAAiBF,IAAjB,IAAyB,MAAMT,GAAG,CAACY,aAAJ,CAAkBC,IAAlB,CAAuB;YAClDC,KAAK,EAAE;cACHC,IAAI,EAAG,GAAEd,aAAa,CAACM,EAAG,IAAGC,MAAO;YADjC;UAD2C,CAAvB,CAA/B;QAKH,CAND,CAME,OAAOQ,CAAP,EAAU;UACRP,IAAI,CAACC,UAAL,GAAkB,CAAlB;;UACA,IAAIM,CAAC,CAACC,OAAF,KAAc,2BAAlB,EAA+C;YAC3C,MAAMD,CAAN;UACH;;UACDE,OAAO,CAACC,GAAR,CAAYH,CAAZ;QACH;QAED;AAChB;AACA;;;QACgB,KAAK,MAAMJ,aAAX,IAA4BD,cAA5B,EAA4C;UACxC,MAAMX,GAAG,CAACY,aAAJ,CAAkBQ,MAAlB,CAAyBR,aAAa,CAACL,EAAvC,CAAN;QACH;MACJ;IACJ;EACJ,CA5CD;AA6CH,CAhDM"}
|
@@ -0,0 +1,59 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
4
|
+
value: true
|
5
|
+
});
|
6
|
+
exports.deleteCommentsAfterChangeRequest = void 0;
|
7
|
+
|
8
|
+
const deleteCommentsAfterChangeRequest = ({
|
9
|
+
apw
|
10
|
+
}) => {
|
11
|
+
apw.changeRequest.onChangeRequestAfterDelete.subscribe(async ({
|
12
|
+
changeRequest
|
13
|
+
}) => {
|
14
|
+
/**
|
15
|
+
* Also delete all associated comments with "changeRequest".
|
16
|
+
*/
|
17
|
+
let meta = {
|
18
|
+
totalCount: 1
|
19
|
+
};
|
20
|
+
/**
|
21
|
+
* Paginate through comments.
|
22
|
+
*/
|
23
|
+
|
24
|
+
while (meta.totalCount > 0) {
|
25
|
+
let comments = [];
|
26
|
+
/**
|
27
|
+
* Get all comments.
|
28
|
+
*/
|
29
|
+
|
30
|
+
try {
|
31
|
+
[comments, meta] = await apw.comment.list({
|
32
|
+
where: {
|
33
|
+
changeRequest: {
|
34
|
+
id: changeRequest.id
|
35
|
+
}
|
36
|
+
}
|
37
|
+
});
|
38
|
+
} catch (e) {
|
39
|
+
meta.totalCount = 0;
|
40
|
+
|
41
|
+
if (e.message !== "index_not_found_exception") {
|
42
|
+
throw e;
|
43
|
+
}
|
44
|
+
|
45
|
+
console.log(e);
|
46
|
+
}
|
47
|
+
/**
|
48
|
+
* Delete comments one by one.
|
49
|
+
*/
|
50
|
+
|
51
|
+
|
52
|
+
for (const comment of comments) {
|
53
|
+
await apw.comment.delete(comment.id);
|
54
|
+
}
|
55
|
+
}
|
56
|
+
});
|
57
|
+
};
|
58
|
+
|
59
|
+
exports.deleteCommentsAfterChangeRequest = deleteCommentsAfterChangeRequest;
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"names":["deleteCommentsAfterChangeRequest","apw","changeRequest","onChangeRequestAfterDelete","subscribe","meta","totalCount","comments","comment","list","where","id","e","message","console","log","delete"],"sources":["deleteCommentsAfterChangeRequest.ts"],"sourcesContent":["import { ApwComment, LifeCycleHookCallbackParams, ListMeta } from \"~/types\";\n\nexport const deleteCommentsAfterChangeRequest = ({\n apw\n}: Pick<LifeCycleHookCallbackParams, \"apw\">) => {\n apw.changeRequest.onChangeRequestAfterDelete.subscribe(async ({ changeRequest }) => {\n /**\n * Also delete all associated comments with \"changeRequest\".\n */\n let meta: Pick<ListMeta, \"totalCount\"> = {\n totalCount: 1\n };\n /**\n * Paginate through comments.\n */\n while (meta.totalCount > 0) {\n let comments: ApwComment[] = [];\n /**\n * Get all comments.\n */\n try {\n [comments, meta] = await apw.comment.list({\n where: {\n changeRequest: {\n id: changeRequest.id\n }\n }\n });\n } catch (e) {\n meta.totalCount = 0;\n if (e.message !== \"index_not_found_exception\") {\n throw e;\n }\n console.log(e);\n }\n\n /**\n * Delete comments one by one.\n */\n for (const comment of comments) {\n await apw.comment.delete(comment.id);\n }\n }\n });\n};\n"],"mappings":";;;;;;;AAEO,MAAMA,gCAAgC,GAAG,CAAC;EAC7CC;AAD6C,CAAD,KAEA;EAC5CA,GAAG,CAACC,aAAJ,CAAkBC,0BAAlB,CAA6CC,SAA7C,CAAuD,OAAO;IAAEF;EAAF,CAAP,KAA6B;IAChF;AACR;AACA;IACQ,IAAIG,IAAkC,GAAG;MACrCC,UAAU,EAAE;IADyB,CAAzC;IAGA;AACR;AACA;;IACQ,OAAOD,IAAI,CAACC,UAAL,GAAkB,CAAzB,EAA4B;MACxB,IAAIC,QAAsB,GAAG,EAA7B;MACA;AACZ;AACA;;MACY,IAAI;QACA,CAACA,QAAD,EAAWF,IAAX,IAAmB,MAAMJ,GAAG,CAACO,OAAJ,CAAYC,IAAZ,CAAiB;UACtCC,KAAK,EAAE;YACHR,aAAa,EAAE;cACXS,EAAE,EAAET,aAAa,CAACS;YADP;UADZ;QAD+B,CAAjB,CAAzB;MAOH,CARD,CAQE,OAAOC,CAAP,EAAU;QACRP,IAAI,CAACC,UAAL,GAAkB,CAAlB;;QACA,IAAIM,CAAC,CAACC,OAAF,KAAc,2BAAlB,EAA+C;UAC3C,MAAMD,CAAN;QACH;;QACDE,OAAO,CAACC,GAAR,CAAYH,CAAZ;MACH;MAED;AACZ;AACA;;;MACY,KAAK,MAAMJ,OAAX,IAAsBD,QAAtB,EAAgC;QAC5B,MAAMN,GAAG,CAACO,OAAJ,CAAYQ,MAAZ,CAAmBR,OAAO,CAACG,EAA3B,CAAN;MACH;IACJ;EACJ,CAtCD;AAuCH,CA1CM"}
|
@@ -0,0 +1,74 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
4
|
+
value: true
|
5
|
+
});
|
6
|
+
exports.attachApwHooks = void 0;
|
7
|
+
|
8
|
+
var _api = require("@webiny/api");
|
9
|
+
|
10
|
+
var _deleteCommentsAfterChangeRequest = require("./deleteCommentsAfterChangeRequest");
|
11
|
+
|
12
|
+
var _deleteChangeRequestsAfterContentReview = require("./deleteChangeRequestsAfterContentReview");
|
13
|
+
|
14
|
+
var _createReviewerFromIdentity = require("./createReviewerFromIdentity");
|
15
|
+
|
16
|
+
var _initializeContentReviewSteps = require("./initializeContentReviewSteps");
|
17
|
+
|
18
|
+
var _updatePendingChangeRequests = require("./updatePendingChangeRequests");
|
19
|
+
|
20
|
+
var _updateTotalComments = require("./updateTotalComments");
|
21
|
+
|
22
|
+
var _validateChangeRequest = require("./validateChangeRequest");
|
23
|
+
|
24
|
+
var _validateContentReview = require("./validateContentReview");
|
25
|
+
|
26
|
+
var _validateComment = require("./validateComment");
|
27
|
+
|
28
|
+
var _listContentReviews = require("./listContentReviews");
|
29
|
+
|
30
|
+
var _initializeNotifications = require("./initializeNotifications");
|
31
|
+
|
32
|
+
const attachApwHooks = () =>
|
33
|
+
/**
|
34
|
+
* Hook into CMS events and execute business logic.
|
35
|
+
*/
|
36
|
+
new _api.ContextPlugin(async context => {
|
37
|
+
const {
|
38
|
+
security,
|
39
|
+
apw
|
40
|
+
} = context;
|
41
|
+
(0, _validateContentReview.validateContentReview)({
|
42
|
+
apw
|
43
|
+
});
|
44
|
+
(0, _validateChangeRequest.validateChangeRequest)({
|
45
|
+
apw
|
46
|
+
});
|
47
|
+
(0, _validateComment.validateComment)({
|
48
|
+
apw
|
49
|
+
});
|
50
|
+
(0, _createReviewerFromIdentity.createReviewerFromIdentity)({
|
51
|
+
security,
|
52
|
+
apw
|
53
|
+
});
|
54
|
+
(0, _initializeContentReviewSteps.initializeContentReviewSteps)(context);
|
55
|
+
(0, _updatePendingChangeRequests.updatePendingChangeRequestsCount)({
|
56
|
+
apw
|
57
|
+
});
|
58
|
+
(0, _updateTotalComments.updateTotalCommentsCount)({
|
59
|
+
apw
|
60
|
+
});
|
61
|
+
(0, _updateTotalComments.updateLatestCommentId)({
|
62
|
+
apw
|
63
|
+
});
|
64
|
+
(0, _deleteCommentsAfterChangeRequest.deleteCommentsAfterChangeRequest)({
|
65
|
+
apw
|
66
|
+
});
|
67
|
+
(0, _deleteChangeRequestsAfterContentReview.deleteChangeRequestsWithContentReview)({
|
68
|
+
apw
|
69
|
+
});
|
70
|
+
(0, _listContentReviews.listContentReviews)(context);
|
71
|
+
(0, _initializeNotifications.initializeNotifications)(context);
|
72
|
+
});
|
73
|
+
|
74
|
+
exports.attachApwHooks = attachApwHooks;
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"names":["attachApwHooks","ContextPlugin","context","security","apw","validateContentReview","validateChangeRequest","validateComment","createReviewerFromIdentity","initializeContentReviewSteps","updatePendingChangeRequestsCount","updateTotalCommentsCount","updateLatestCommentId","deleteCommentsAfterChangeRequest","deleteChangeRequestsWithContentReview","listContentReviews","initializeNotifications"],"sources":["index.ts"],"sourcesContent":["import { ContextPlugin } from \"@webiny/api\";\nimport { ApwContext } from \"~/types\";\nimport { deleteCommentsAfterChangeRequest } from \"./deleteCommentsAfterChangeRequest\";\nimport { deleteChangeRequestsWithContentReview } from \"./deleteChangeRequestsAfterContentReview\";\nimport { createReviewerFromIdentity } from \"./createReviewerFromIdentity\";\nimport { initializeContentReviewSteps } from \"./initializeContentReviewSteps\";\nimport { updatePendingChangeRequestsCount } from \"./updatePendingChangeRequests\";\nimport { updateTotalCommentsCount, updateLatestCommentId } from \"./updateTotalComments\";\nimport { validateChangeRequest } from \"./validateChangeRequest\";\nimport { validateContentReview } from \"./validateContentReview\";\nimport { validateComment } from \"./validateComment\";\nimport { listContentReviews } from \"./listContentReviews\";\nimport { initializeNotifications } from \"./initializeNotifications\";\n\nexport const attachApwHooks = () =>\n /**\n * Hook into CMS events and execute business logic.\n */\n new ContextPlugin<ApwContext>(async context => {\n const { security, apw } = context;\n\n validateContentReview({ apw });\n\n validateChangeRequest({ apw });\n\n validateComment({ apw });\n\n createReviewerFromIdentity({ security, apw });\n\n initializeContentReviewSteps(context);\n\n updatePendingChangeRequestsCount({ apw });\n\n updateTotalCommentsCount({ apw });\n\n updateLatestCommentId({ apw });\n\n deleteCommentsAfterChangeRequest({ apw });\n\n deleteChangeRequestsWithContentReview({ apw });\n\n listContentReviews(context);\n\n initializeNotifications(context);\n });\n"],"mappings":";;;;;;;AAAA;;AAEA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAEO,MAAMA,cAAc,GAAG;AAC1B;AACJ;AACA;AACI,IAAIC,kBAAJ,CAA8B,MAAMC,OAAN,IAAiB;EAC3C,MAAM;IAAEC,QAAF;IAAYC;EAAZ,IAAoBF,OAA1B;EAEA,IAAAG,4CAAA,EAAsB;IAAED;EAAF,CAAtB;EAEA,IAAAE,4CAAA,EAAsB;IAAEF;EAAF,CAAtB;EAEA,IAAAG,gCAAA,EAAgB;IAAEH;EAAF,CAAhB;EAEA,IAAAI,sDAAA,EAA2B;IAAEL,QAAF;IAAYC;EAAZ,CAA3B;EAEA,IAAAK,0DAAA,EAA6BP,OAA7B;EAEA,IAAAQ,6DAAA,EAAiC;IAAEN;EAAF,CAAjC;EAEA,IAAAO,6CAAA,EAAyB;IAAEP;EAAF,CAAzB;EAEA,IAAAQ,0CAAA,EAAsB;IAAER;EAAF,CAAtB;EAEA,IAAAS,kEAAA,EAAiC;IAAET;EAAF,CAAjC;EAEA,IAAAU,6EAAA,EAAsC;IAAEV;EAAF,CAAtC;EAEA,IAAAW,sCAAA,EAAmBb,OAAnB;EAEA,IAAAc,gDAAA,EAAwBd,OAAxB;AACH,CA1BD,CAJG"}
|