@webiny/api-apw 0.0.0-unstable.df6d94b531 → 0.0.0-unstable.e53eceafb5
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 +1 -1
- package/ApwChangeRequestNotification.js +4 -6
- package/ApwChangeRequestNotification.js.map +1 -1
- package/ApwCommentNotification.d.ts +1 -1
- package/ApwCommentNotification.js +4 -6
- package/ApwCommentNotification.js.map +1 -1
- package/ApwContentReviewNotification.d.ts +1 -1
- package/ApwContentReviewNotification.js +4 -6
- package/ApwContentReviewNotification.js.map +1 -1
- package/ApwContentUrlPlugin.d.ts +1 -1
- package/ApwContentUrlPlugin.js +4 -6
- package/ApwContentUrlPlugin.js.map +1 -1
- package/ContentApwSettingsPlugin.d.ts +1 -1
- package/ContentApwSettingsPlugin.js +5 -4
- package/ContentApwSettingsPlugin.js.map +1 -1
- package/README.md +3 -3
- package/crud/createChangeRequestMethods.d.ts +1 -1
- package/crud/createChangeRequestMethods.js +3 -1
- package/crud/createChangeRequestMethods.js.map +1 -1
- package/crud/createCommentMethods.d.ts +1 -1
- package/crud/createCommentMethods.js +3 -1
- package/crud/createCommentMethods.js.map +1 -1
- package/crud/createContentReviewMethods.d.ts +2 -2
- package/crud/createContentReviewMethods.js +57 -32
- package/crud/createContentReviewMethods.js.map +1 -1
- package/crud/createReviewerMethods.d.ts +1 -1
- package/crud/createReviewerMethods.js +3 -1
- package/crud/createReviewerMethods.js.map +1 -1
- package/crud/createWorkflowMethods.d.ts +1 -1
- package/crud/createWorkflowMethods.js +3 -1
- package/crud/createWorkflowMethods.js.map +1 -1
- package/crud/index.d.ts +1 -1
- package/crud/index.js +6 -5
- package/crud/index.js.map +1 -1
- package/crud/utils.d.ts +2 -2
- package/crud/utils.js +8 -8
- package/crud/utils.js.map +1 -1
- package/index.d.ts +2 -2
- package/index.js +4 -3
- package/index.js.map +1 -1
- package/package.json +32 -50
- package/plugins/cms/CmsEntryApwSettingsGetterPlugin.d.ts +1 -1
- package/plugins/cms/CmsEntryApwSettingsGetterPlugin.js +5 -5
- package/plugins/cms/CmsEntryApwSettingsGetterPlugin.js.map +1 -1
- package/plugins/cms/apwEntryPlugins.d.ts +2 -2
- package/plugins/cms/apwEntryPlugins.js +19 -7
- package/plugins/cms/apwEntryPlugins.js.map +1 -1
- package/plugins/cms/index.d.ts +4 -4
- package/plugins/cms/index.js +3 -1
- package/plugins/cms/index.js.map +1 -1
- package/plugins/cms/linkContentReviewToEntry.d.ts +2 -2
- package/plugins/cms/linkContentReviewToEntry.js +5 -4
- package/plugins/cms/linkContentReviewToEntry.js.map +1 -1
- package/plugins/cms/linkWorkflowToEntry.d.ts +2 -2
- package/plugins/cms/linkWorkflowToEntry.js +17 -16
- package/plugins/cms/linkWorkflowToEntry.js.map +1 -1
- package/plugins/cms/notifications/changeRequestNotification.js +3 -1
- package/plugins/cms/notifications/changeRequestNotification.js.map +1 -1
- package/plugins/cms/notifications/commentNotification.js +3 -1
- package/plugins/cms/notifications/commentNotification.js.map +1 -1
- package/plugins/cms/notifications/contentReviewNotification.js +3 -1
- package/plugins/cms/notifications/contentReviewNotification.js.map +1 -1
- package/plugins/cms/notifications/contentUrl.js +3 -1
- package/plugins/cms/notifications/contentUrl.js.map +1 -1
- package/plugins/cms/triggerContentReview.d.ts +2 -2
- package/plugins/cms/triggerContentReview.js +6 -5
- package/plugins/cms/triggerContentReview.js.map +1 -1
- package/plugins/cms/updateContentReviewStatus.d.ts +3 -3
- package/plugins/cms/updateContentReviewStatus.js +15 -13
- package/plugins/cms/updateContentReviewStatus.js.map +1 -1
- package/plugins/cms/utils.d.ts +5 -4
- package/plugins/cms/utils.js +19 -13
- package/plugins/cms/utils.js.map +1 -1
- package/plugins/context.d.ts +2 -2
- package/plugins/context.js +3 -1
- package/plugins/context.js.map +1 -1
- package/plugins/graphql/changeRequest.gql.d.ts +1 -1
- package/plugins/graphql/changeRequest.gql.js +16 -13
- package/plugins/graphql/changeRequest.gql.js.map +1 -1
- package/plugins/graphql/comment.gql.d.ts +1 -1
- package/plugins/graphql/comment.gql.js +41 -36
- package/plugins/graphql/comment.gql.js.map +1 -1
- package/plugins/graphql/contentReview.gql.d.ts +1 -1
- package/plugins/graphql/contentReview.gql.js +23 -14
- package/plugins/graphql/contentReview.gql.js.map +1 -1
- package/plugins/graphql/reviewer.gql.d.ts +1 -1
- package/plugins/graphql/reviewer.gql.js +15 -13
- package/plugins/graphql/reviewer.gql.js.map +1 -1
- package/plugins/graphql/utils.d.ts +2 -0
- package/plugins/graphql/utils.js +10 -0
- package/plugins/graphql/utils.js.map +1 -0
- package/plugins/graphql/workflow.gql.d.ts +1 -1
- package/plugins/graphql/workflow.gql.js +15 -13
- package/plugins/graphql/workflow.gql.js.map +1 -1
- package/plugins/graphql.d.ts +1 -1
- package/plugins/graphql.js +3 -1
- package/plugins/graphql.js.map +1 -1
- package/plugins/hooks/createReviewerFromIdentity.d.ts +1 -1
- package/plugins/hooks/createReviewerFromIdentity.js +4 -2
- package/plugins/hooks/createReviewerFromIdentity.js.map +1 -1
- package/plugins/hooks/deleteChangeRequestsAfterContentReview.d.ts +1 -1
- package/plugins/hooks/deleteChangeRequestsAfterContentReview.js +3 -1
- package/plugins/hooks/deleteChangeRequestsAfterContentReview.js.map +1 -1
- package/plugins/hooks/deleteCommentsAfterChangeRequest.d.ts +1 -1
- package/plugins/hooks/deleteCommentsAfterChangeRequest.js +3 -1
- package/plugins/hooks/deleteCommentsAfterChangeRequest.js.map +1 -1
- package/plugins/hooks/index.d.ts +1 -1
- package/plugins/hooks/index.js +3 -1
- package/plugins/hooks/index.js.map +1 -1
- package/plugins/hooks/initializeContentReviewSteps.d.ts +1 -1
- package/plugins/hooks/initializeContentReviewSteps.js +6 -4
- package/plugins/hooks/initializeContentReviewSteps.js.map +1 -1
- package/plugins/hooks/initializeNotifications.d.ts +1 -1
- package/plugins/hooks/initializeNotifications.js +3 -1
- package/plugins/hooks/initializeNotifications.js.map +1 -1
- package/plugins/hooks/listContentReviews.d.ts +3 -3
- package/plugins/hooks/listContentReviews.js +4 -2
- package/plugins/hooks/listContentReviews.js.map +1 -1
- package/plugins/hooks/notifications/changeRequestAfterCreate.d.ts +1 -1
- package/plugins/hooks/notifications/changeRequestAfterCreate.js +8 -11
- package/plugins/hooks/notifications/changeRequestAfterCreate.js.map +1 -1
- package/plugins/hooks/notifications/changeRequestUrl.js +3 -1
- package/plugins/hooks/notifications/changeRequestUrl.js.map +1 -1
- package/plugins/hooks/notifications/commentAfterCreate.d.ts +1 -1
- package/plugins/hooks/notifications/commentAfterCreate.js +8 -11
- package/plugins/hooks/notifications/commentAfterCreate.js.map +1 -1
- package/plugins/hooks/notifications/commentUrl.js +3 -1
- package/plugins/hooks/notifications/commentUrl.js.map +1 -1
- package/plugins/hooks/notifications/contentReviewAfterCreate.d.ts +1 -1
- package/plugins/hooks/notifications/contentReviewAfterCreate.js +9 -12
- package/plugins/hooks/notifications/contentReviewAfterCreate.js.map +1 -1
- package/plugins/hooks/notifications/contentReviewUrl.js +3 -1
- package/plugins/hooks/notifications/contentReviewUrl.js.map +1 -1
- package/plugins/hooks/notifications/contentUrl.d.ts +2 -2
- package/plugins/hooks/notifications/contentUrl.js +3 -1
- package/plugins/hooks/notifications/contentUrl.js.map +1 -1
- package/plugins/hooks/notifications/getAppUrl.d.ts +2 -0
- package/plugins/hooks/notifications/getAppUrl.js +19 -0
- package/plugins/hooks/notifications/getAppUrl.js.map +1 -0
- package/plugins/hooks/notifications/lastChangeRequestNotificationPlugin.d.ts +1 -1
- package/plugins/hooks/notifications/lastChangeRequestNotificationPlugin.js +3 -1
- package/plugins/hooks/notifications/lastChangeRequestNotificationPlugin.js.map +1 -1
- package/plugins/hooks/notifications/lastCommentNotificationPlugin.d.ts +1 -1
- package/plugins/hooks/notifications/lastCommentNotificationPlugin.js +3 -1
- package/plugins/hooks/notifications/lastCommentNotificationPlugin.js.map +1 -1
- package/plugins/hooks/notifications/lastContentReviewNotificationPlugin.d.ts +1 -1
- package/plugins/hooks/notifications/lastContentReviewNotificationPlugin.js +3 -1
- package/plugins/hooks/notifications/lastContentReviewNotificationPlugin.js.map +1 -1
- package/plugins/hooks/notifications/reviewers.d.ts +1 -1
- package/plugins/hooks/notifications/reviewers.js +18 -15
- package/plugins/hooks/notifications/reviewers.js.map +1 -1
- package/plugins/hooks/notifications/sendChangeRequestNotification.d.ts +1 -1
- package/plugins/hooks/notifications/sendChangeRequestNotification.js +3 -1
- package/plugins/hooks/notifications/sendChangeRequestNotification.js.map +1 -1
- package/plugins/hooks/notifications/sendCommentNotification.d.ts +1 -1
- package/plugins/hooks/notifications/sendCommentNotification.js +3 -1
- package/plugins/hooks/notifications/sendCommentNotification.js.map +1 -1
- package/plugins/hooks/notifications/sendContentReviewNotification.d.ts +1 -1
- package/plugins/hooks/notifications/sendContentReviewNotification.js +3 -1
- package/plugins/hooks/notifications/sendContentReviewNotification.js.map +1 -1
- package/plugins/hooks/updatePendingChangeRequests.d.ts +1 -1
- package/plugins/hooks/updatePendingChangeRequests.js +8 -6
- package/plugins/hooks/updatePendingChangeRequests.js.map +1 -1
- package/plugins/hooks/updateTotalComments.d.ts +1 -1
- package/plugins/hooks/updateTotalComments.js +22 -15
- package/plugins/hooks/updateTotalComments.js.map +1 -1
- package/plugins/hooks/validateChangeRequest.d.ts +1 -1
- package/plugins/hooks/validateChangeRequest.js +3 -1
- package/plugins/hooks/validateChangeRequest.js.map +1 -1
- package/plugins/hooks/validateComment.d.ts +1 -1
- package/plugins/hooks/validateComment.js +3 -1
- package/plugins/hooks/validateComment.js.map +1 -1
- package/plugins/hooks/validateContentReview.d.ts +1 -1
- package/plugins/hooks/validateContentReview.js +3 -1
- package/plugins/hooks/validateContentReview.js.map +1 -1
- package/plugins/pageBuilder/PageApwSettingsGetterPlugin.d.ts +2 -1
- package/plugins/pageBuilder/PageApwSettingsGetterPlugin.js +5 -5
- package/plugins/pageBuilder/PageApwSettingsGetterPlugin.js.map +1 -1
- package/plugins/pageBuilder/apwContentPagePlugins.d.ts +1 -1
- package/plugins/pageBuilder/apwContentPagePlugins.js +3 -1
- package/plugins/pageBuilder/apwContentPagePlugins.js.map +1 -1
- package/plugins/pageBuilder/extendPbPageSettingsSchema.d.ts +1 -1
- package/plugins/pageBuilder/extendPbPageSettingsSchema.js +3 -1
- package/plugins/pageBuilder/extendPbPageSettingsSchema.js.map +1 -1
- package/plugins/pageBuilder/index.d.ts +4 -4
- package/plugins/pageBuilder/index.js +3 -1
- package/plugins/pageBuilder/index.js.map +1 -1
- package/plugins/pageBuilder/linkContentReviewToPage.d.ts +2 -2
- package/plugins/pageBuilder/linkContentReviewToPage.js +16 -12
- package/plugins/pageBuilder/linkContentReviewToPage.js.map +1 -1
- package/plugins/pageBuilder/linkWorkflowToPage.d.ts +2 -2
- package/plugins/pageBuilder/linkWorkflowToPage.js +13 -12
- package/plugins/pageBuilder/linkWorkflowToPage.js.map +1 -1
- package/plugins/pageBuilder/notifications/changeRequestNotification.js +3 -1
- package/plugins/pageBuilder/notifications/changeRequestNotification.js.map +1 -1
- package/plugins/pageBuilder/notifications/commentNotification.js +3 -1
- package/plugins/pageBuilder/notifications/commentNotification.js.map +1 -1
- package/plugins/pageBuilder/notifications/contentReviewNotification.js +3 -1
- package/plugins/pageBuilder/notifications/contentReviewNotification.js.map +1 -1
- package/plugins/pageBuilder/notifications/contentUrl.js +3 -1
- package/plugins/pageBuilder/notifications/contentUrl.js.map +1 -1
- package/plugins/pageBuilder/triggerContentReview.d.ts +2 -2
- package/plugins/pageBuilder/triggerContentReview.js +5 -4
- package/plugins/pageBuilder/triggerContentReview.js.map +1 -1
- package/plugins/pageBuilder/updateContentReviewStatus.d.ts +3 -3
- package/plugins/pageBuilder/updateContentReviewStatus.js +13 -10
- package/plugins/pageBuilder/updateContentReviewStatus.js.map +1 -1
- package/plugins/pageBuilder/utils.d.ts +4 -4
- package/plugins/pageBuilder/utils.js +7 -6
- package/plugins/pageBuilder/utils.js.map +1 -1
- package/plugins/utils.d.ts +7 -6
- package/plugins/utils.js +12 -8
- package/plugins/utils.js.map +1 -1
- package/scheduler/createScheduleActionMethods.d.ts +1 -1
- package/scheduler/createScheduleActionMethods.js +105 -66
- package/scheduler/createScheduleActionMethods.js.map +1 -1
- package/scheduler/handlers/executeAction/index.d.ts +2 -2
- package/scheduler/handlers/executeAction/index.js +5 -5
- package/scheduler/handlers/executeAction/index.js.map +1 -1
- package/scheduler/handlers/executeAction/plugins/ApplicationGraphQL.js +5 -4
- package/scheduler/handlers/executeAction/plugins/ApplicationGraphQL.js.map +1 -1
- package/scheduler/handlers/executeAction/plugins/HeadlessCMSGraphQL.d.ts +2 -1
- package/scheduler/handlers/executeAction/plugins/HeadlessCMSGraphQL.js +6 -7
- package/scheduler/handlers/executeAction/plugins/HeadlessCMSGraphQL.js.map +1 -1
- package/scheduler/handlers/executeAction/plugins/PageBuilderGraphQL.d.ts +3 -2
- package/scheduler/handlers/executeAction/plugins/PageBuilderGraphQL.js +4 -7
- package/scheduler/handlers/executeAction/plugins/PageBuilderGraphQL.js.map +1 -1
- package/scheduler/handlers/executeAction/security.d.ts +2 -2
- package/scheduler/handlers/executeAction/security.js +3 -1
- package/scheduler/handlers/executeAction/security.js.map +1 -1
- package/scheduler/handlers/scheduleAction/index.d.ts +2 -2
- package/scheduler/handlers/scheduleAction/index.js +15 -14
- package/scheduler/handlers/scheduleAction/index.js.map +1 -1
- package/scheduler/handlers/scheduleAction/scheduleAction.utils.d.ts +3 -3
- package/scheduler/handlers/scheduleAction/scheduleAction.utils.js +17 -14
- package/scheduler/handlers/scheduleAction/scheduleAction.utils.js.map +1 -1
- package/scheduler/handlers/utils.d.ts +2 -3
- package/scheduler/handlers/utils.js +20 -13
- package/scheduler/handlers/utils.js.map +1 -1
- package/scheduler/index.d.ts +1 -1
- package/scheduler/index.js +3 -1
- package/scheduler/index.js.map +1 -1
- package/scheduler/types.d.ts +19 -17
- package/scheduler/types.js +11 -12
- package/scheduler/types.js.map +1 -1
- package/storageOperations/changeRequestStorageOperations.d.ts +2 -2
- package/storageOperations/changeRequestStorageOperations.js +44 -23
- package/storageOperations/changeRequestStorageOperations.js.map +1 -1
- package/storageOperations/commentStorageOperations.d.ts +3 -3
- package/storageOperations/commentStorageOperations.js +17 -24
- package/storageOperations/commentStorageOperations.js.map +1 -1
- package/storageOperations/contentReviewStorageOperations.d.ts +3 -3
- package/storageOperations/contentReviewStorageOperations.js +20 -25
- package/storageOperations/contentReviewStorageOperations.js.map +1 -1
- package/storageOperations/index.d.ts +3 -9
- package/storageOperations/index.js +11 -16
- package/storageOperations/index.js.map +1 -1
- package/storageOperations/models/changeRequest.model.d.ts +1 -2
- package/storageOperations/models/changeRequest.model.js +10 -11
- package/storageOperations/models/changeRequest.model.js.map +1 -1
- package/storageOperations/models/comment.model.d.ts +1 -2
- package/storageOperations/models/comment.model.js +10 -11
- package/storageOperations/models/comment.model.js.map +1 -1
- package/storageOperations/models/contentReview.model.d.ts +1 -2
- package/storageOperations/models/contentReview.model.js +16 -15
- package/storageOperations/models/contentReview.model.js.map +1 -1
- package/storageOperations/models/index.d.ts +1 -1
- package/storageOperations/models/index.js +11 -31
- package/storageOperations/models/index.js.map +1 -1
- package/storageOperations/models/reviewer.model.d.ts +1 -2
- package/storageOperations/models/reviewer.model.js +11 -12
- package/storageOperations/models/reviewer.model.js.map +1 -1
- package/storageOperations/models/utils.d.ts +2 -2
- package/storageOperations/models/utils.js +3 -1
- package/storageOperations/models/utils.js.map +1 -1
- package/storageOperations/models/workflow.model.d.ts +2 -3
- package/storageOperations/models/workflow.model.js +22 -23
- package/storageOperations/models/workflow.model.js.map +1 -1
- package/storageOperations/reviewerStorageOperations.d.ts +3 -3
- package/storageOperations/reviewerStorageOperations.js +24 -34
- package/storageOperations/reviewerStorageOperations.js.map +1 -1
- package/storageOperations/types.d.ts +2 -2
- package/storageOperations/types.js +3 -1
- package/storageOperations/types.js.map +1 -1
- package/storageOperations/workflowStorageOperations.d.ts +2 -2
- package/storageOperations/workflowStorageOperations.js +25 -28
- package/storageOperations/workflowStorageOperations.js.map +1 -1
- package/types.d.ts +51 -52
- package/types.js +121 -29
- package/types.js.map +1 -1
- package/utils/contentApwSettingsPlugin.d.ts +2 -2
- package/utils/contentApwSettingsPlugin.js +3 -1
- package/utils/contentApwSettingsPlugin.js.map +1 -1
- package/utils/errors.js +3 -1
- package/utils/errors.js.map +1 -1
- package/utils/fieldResolver.d.ts +2 -2
- package/utils/fieldResolver.js +7 -7
- package/utils/fieldResolver.js.map +1 -1
- package/utils/pickEntryFieldValues.d.ts +3 -0
- package/utils/pickEntryFieldValues.js +30 -0
- package/utils/pickEntryFieldValues.js.map +1 -0
- package/utils/resolve.d.ts +1 -1
- package/utils/resolve.js +3 -1
- package/utils/resolve.js.map +1 -1
- package/plugins/hooks/notifications/appUrl.d.ts +0 -2
- package/plugins/hooks/notifications/appUrl.js +0 -18
- package/plugins/hooks/notifications/appUrl.js.map +0 -1
- package/storageOperations/models/contentModelPluginFactory.d.ts +0 -11
- package/storageOperations/models/contentModelPluginFactory.js +0 -19
- package/storageOperations/models/contentModelPluginFactory.js.map +0 -1
@@ -1,7 +1,7 @@
|
|
1
|
-
import { Security } from "@webiny/api-security/types";
|
2
|
-
import { PageBuilderContextObject } from "@webiny/api-page-builder/graphql/types";
|
3
|
-
import { AdvancedPublishingWorkflow } from "../../types";
|
4
|
-
import { PluginsContainer } from "@webiny/plugins";
|
1
|
+
import type { Security } from "@webiny/api-security/types";
|
2
|
+
import type { PageBuilderContextObject } from "@webiny/api-page-builder/graphql/types";
|
3
|
+
import type { AdvancedPublishingWorkflow } from "../../types";
|
4
|
+
import type { PluginsContainer } from "@webiny/plugins";
|
5
5
|
export interface ApwPageBuilderPluginsParams {
|
6
6
|
pageBuilder: PageBuilderContextObject;
|
7
7
|
apw: AdvancedPublishingWorkflow;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["apwPageBuilderHooks","params","pageBuilder","apw","security","plugins","register","PageApwSettingsGetterPlugin","createCommentNotification","createChangeRequestNotification","createContentUrlPlugin","createContentReviewNotification","triggerContentReview","linkContentReviewToPage","updateContentReviewStatus","linkWorkflowToPage"],"sources":["index.ts"],"sourcesContent":["import { Security } from \"@webiny/api-security/types\";\nimport { PageBuilderContextObject } from \"@webiny/api-page-builder/graphql/types\";\nimport { AdvancedPublishingWorkflow } from \"~/types\";\nimport { triggerContentReview } from \"./triggerContentReview\";\nimport { linkContentReviewToPage } from \"./linkContentReviewToPage\";\nimport { updateContentReviewStatus } from \"./updateContentReviewStatus\";\nimport { linkWorkflowToPage } from \"./linkWorkflowToPage\";\nimport { PluginsContainer } from \"@webiny/plugins\";\nimport { PageApwSettingsGetterPlugin } from \"~/plugins/pageBuilder/PageApwSettingsGetterPlugin\";\nimport { createCommentNotification } from \"./notifications/commentNotification\";\nimport { createContentUrlPlugin } from \"./notifications/contentUrl\";\nimport { createChangeRequestNotification } from \"./notifications/changeRequestNotification\";\nimport { createContentReviewNotification } from \"./notifications/contentReviewNotification\";\n\nexport interface ApwPageBuilderPluginsParams {\n pageBuilder: PageBuilderContextObject;\n apw: AdvancedPublishingWorkflow;\n security: Security;\n plugins: PluginsContainer;\n}\n\nexport const apwPageBuilderHooks = (params: ApwPageBuilderPluginsParams) => {\n const { pageBuilder, apw, security, plugins } = params;\n\n plugins.register([\n new PageApwSettingsGetterPlugin(),\n createCommentNotification(),\n createChangeRequestNotification(),\n createContentUrlPlugin(),\n createContentReviewNotification()\n ]);\n\n triggerContentReview({\n apw,\n pageBuilder\n });\n linkContentReviewToPage({\n apw,\n pageBuilder\n });\n updateContentReviewStatus({\n apw,\n pageBuilder,\n security\n });\n linkWorkflowToPage({\n apw,\n pageBuilder\n });\n};\n"],"mappings":";;;;;;AAGA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AASO,
|
1
|
+
{"version":3,"names":["_triggerContentReview","require","_linkContentReviewToPage","_updateContentReviewStatus","_linkWorkflowToPage","_PageApwSettingsGetterPlugin","_commentNotification","_contentUrl","_changeRequestNotification","_contentReviewNotification","apwPageBuilderHooks","params","pageBuilder","apw","security","plugins","register","PageApwSettingsGetterPlugin","createCommentNotification","createChangeRequestNotification","createContentUrlPlugin","createContentReviewNotification","triggerContentReview","linkContentReviewToPage","updateContentReviewStatus","linkWorkflowToPage","exports"],"sources":["index.ts"],"sourcesContent":["import type { Security } from \"@webiny/api-security/types\";\nimport type { PageBuilderContextObject } from \"@webiny/api-page-builder/graphql/types\";\nimport type { AdvancedPublishingWorkflow } from \"~/types\";\nimport { triggerContentReview } from \"./triggerContentReview\";\nimport { linkContentReviewToPage } from \"./linkContentReviewToPage\";\nimport { updateContentReviewStatus } from \"./updateContentReviewStatus\";\nimport { linkWorkflowToPage } from \"./linkWorkflowToPage\";\nimport type { PluginsContainer } from \"@webiny/plugins\";\nimport { PageApwSettingsGetterPlugin } from \"~/plugins/pageBuilder/PageApwSettingsGetterPlugin\";\nimport { createCommentNotification } from \"./notifications/commentNotification\";\nimport { createContentUrlPlugin } from \"./notifications/contentUrl\";\nimport { createChangeRequestNotification } from \"./notifications/changeRequestNotification\";\nimport { createContentReviewNotification } from \"./notifications/contentReviewNotification\";\n\nexport interface ApwPageBuilderPluginsParams {\n pageBuilder: PageBuilderContextObject;\n apw: AdvancedPublishingWorkflow;\n security: Security;\n plugins: PluginsContainer;\n}\n\nexport const apwPageBuilderHooks = (params: ApwPageBuilderPluginsParams) => {\n const { pageBuilder, apw, security, plugins } = params;\n\n plugins.register([\n new PageApwSettingsGetterPlugin(),\n createCommentNotification(),\n createChangeRequestNotification(),\n createContentUrlPlugin(),\n createContentReviewNotification()\n ]);\n\n triggerContentReview({\n apw,\n pageBuilder\n });\n linkContentReviewToPage({\n apw,\n pageBuilder\n });\n updateContentReviewStatus({\n apw,\n pageBuilder,\n security\n });\n linkWorkflowToPage({\n apw,\n pageBuilder\n });\n};\n"],"mappings":";;;;;;AAGA,IAAAA,qBAAA,GAAAC,OAAA;AACA,IAAAC,wBAAA,GAAAD,OAAA;AACA,IAAAE,0BAAA,GAAAF,OAAA;AACA,IAAAG,mBAAA,GAAAH,OAAA;AAEA,IAAAI,4BAAA,GAAAJ,OAAA;AACA,IAAAK,oBAAA,GAAAL,OAAA;AACA,IAAAM,WAAA,GAAAN,OAAA;AACA,IAAAO,0BAAA,GAAAP,OAAA;AACA,IAAAQ,0BAAA,GAAAR,OAAA;AASO,MAAMS,mBAAmB,GAAIC,MAAmC,IAAK;EACxE,MAAM;IAAEC,WAAW;IAAEC,GAAG;IAAEC,QAAQ;IAAEC;EAAQ,CAAC,GAAGJ,MAAM;EAEtDI,OAAO,CAACC,QAAQ,CAAC,CACb,IAAIC,wDAA2B,CAAC,CAAC,EACjC,IAAAC,8CAAyB,EAAC,CAAC,EAC3B,IAAAC,0DAA+B,EAAC,CAAC,EACjC,IAAAC,kCAAsB,EAAC,CAAC,EACxB,IAAAC,0DAA+B,EAAC,CAAC,CACpC,CAAC;EAEF,IAAAC,0CAAoB,EAAC;IACjBT,GAAG;IACHD;EACJ,CAAC,CAAC;EACF,IAAAW,gDAAuB,EAAC;IACpBV,GAAG;IACHD;EACJ,CAAC,CAAC;EACF,IAAAY,oDAAyB,EAAC;IACtBX,GAAG;IACHD,WAAW;IACXE;EACJ,CAAC,CAAC;EACF,IAAAW,sCAAkB,EAAC;IACfZ,GAAG;IACHD;EACJ,CAAC,CAAC;AACN,CAAC;AAACc,OAAA,CAAAhB,mBAAA,GAAAA,mBAAA","ignoreList":[]}
|
@@ -1,5 +1,5 @@
|
|
1
|
-
import { AdvancedPublishingWorkflow } from "../../types";
|
2
|
-
import { PageBuilderContextObject } from "@webiny/api-page-builder/graphql/types";
|
1
|
+
import type { AdvancedPublishingWorkflow } from "../../types";
|
2
|
+
import type { PageBuilderContextObject } from "@webiny/api-page-builder/graphql/types";
|
3
3
|
interface LinkContentReviewToPageParams {
|
4
4
|
apw: AdvancedPublishingWorkflow;
|
5
5
|
pageBuilder: PageBuilderContextObject;
|
@@ -5,7 +5,6 @@ Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
value: true
|
6
6
|
});
|
7
7
|
exports.linkContentReviewToPage = void 0;
|
8
|
-
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
|
9
8
|
var _error = _interopRequireDefault(require("@webiny/error"));
|
10
9
|
var _types = require("../../types");
|
11
10
|
var _utils = require("./utils");
|
@@ -28,11 +27,13 @@ const linkContentReviewToPage = params => {
|
|
28
27
|
updatePage: pageBuilder.updatePage,
|
29
28
|
uniquePageId: content.id,
|
30
29
|
getNewSettings: settings => {
|
31
|
-
return
|
32
|
-
|
30
|
+
return {
|
31
|
+
...settings,
|
32
|
+
apw: {
|
33
|
+
...(settings.apw || {}),
|
33
34
|
contentReviewId: contentReview.id
|
34
|
-
}
|
35
|
-
}
|
35
|
+
}
|
36
|
+
};
|
36
37
|
}
|
37
38
|
});
|
38
39
|
});
|
@@ -50,19 +51,20 @@ const linkContentReviewToPage = params => {
|
|
50
51
|
updatePage: pageBuilder.updatePage,
|
51
52
|
uniquePageId: content.id,
|
52
53
|
getNewSettings: settings => {
|
53
|
-
return
|
54
|
-
|
54
|
+
return {
|
55
|
+
...settings,
|
56
|
+
apw: {
|
57
|
+
...(settings.apw || {}),
|
55
58
|
contentReviewId: null
|
56
|
-
}
|
57
|
-
}
|
59
|
+
}
|
60
|
+
};
|
58
61
|
}
|
59
62
|
});
|
60
63
|
});
|
61
64
|
pageBuilder.onPageBeforeDelete.subscribe(async ({
|
62
65
|
page
|
63
66
|
}) => {
|
64
|
-
|
65
|
-
const contentReviewId = (_page$settings = page.settings) === null || _page$settings === void 0 ? void 0 : (_page$settings$apw = _page$settings.apw) === null || _page$settings$apw === void 0 ? void 0 : _page$settings$apw.contentReviewId;
|
67
|
+
const contentReviewId = page.settings?.apw?.contentReviewId;
|
66
68
|
if (!contentReviewId) {
|
67
69
|
return;
|
68
70
|
}
|
@@ -86,4 +88,6 @@ const linkContentReviewToPage = params => {
|
|
86
88
|
}
|
87
89
|
});
|
88
90
|
};
|
89
|
-
exports.linkContentReviewToPage = linkContentReviewToPage;
|
91
|
+
exports.linkContentReviewToPage = linkContentReviewToPage;
|
92
|
+
|
93
|
+
//# sourceMappingURL=linkContentReviewToPage.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["linkContentReviewToPage","params","apw","pageBuilder","contentReview","onContentReviewAfterCreate","subscribe","content","type","ApwContentTypes","PAGE","updatePageSettings","getPage","updatePage","uniquePageId","id","getNewSettings","settings","contentReviewId","onContentReviewAfterDelete","onPageBeforeDelete","page","get","ex","code","Error"],"sources":["linkContentReviewToPage.ts"],"sourcesContent":["import Error from \"@webiny/error\";\nimport { AdvancedPublishingWorkflow
|
1
|
+
{"version":3,"names":["_error","_interopRequireDefault","require","_types","_utils","linkContentReviewToPage","params","apw","pageBuilder","contentReview","onContentReviewAfterCreate","subscribe","content","type","ApwContentTypes","PAGE","updatePageSettings","getPage","updatePage","uniquePageId","id","getNewSettings","settings","contentReviewId","onContentReviewAfterDelete","onPageBeforeDelete","page","get","ex","code","Error","exports"],"sources":["linkContentReviewToPage.ts"],"sourcesContent":["import Error from \"@webiny/error\";\nimport type { AdvancedPublishingWorkflow } from \"~/types\";\nimport { ApwContentTypes } from \"~/types\";\nimport { updatePageSettings } from \"./utils\";\nimport type { PageBuilderContextObject } from \"@webiny/api-page-builder/graphql/types\";\n\ninterface LinkContentReviewToPageParams {\n apw: AdvancedPublishingWorkflow;\n pageBuilder: PageBuilderContextObject;\n}\n\nexport const linkContentReviewToPage = (params: LinkContentReviewToPageParams) => {\n const { apw, pageBuilder } = params;\n\n apw.contentReview.onContentReviewAfterCreate.subscribe(async ({ contentReview }) => {\n const { content } = contentReview;\n\n if (content.type !== ApwContentTypes.PAGE) {\n return;\n }\n await updatePageSettings({\n getPage: pageBuilder.getPage,\n updatePage: pageBuilder.updatePage,\n uniquePageId: content.id,\n getNewSettings: settings => {\n return {\n ...settings,\n apw: {\n ...(settings.apw || {}),\n contentReviewId: contentReview.id\n }\n };\n }\n });\n });\n\n apw.contentReview.onContentReviewAfterDelete.subscribe(async ({ contentReview }) => {\n const { content } = contentReview;\n\n if (content.type !== ApwContentTypes.PAGE) {\n return;\n }\n await updatePageSettings({\n getPage: pageBuilder.getPage,\n updatePage: pageBuilder.updatePage,\n uniquePageId: content.id,\n getNewSettings: settings => {\n return {\n ...settings,\n apw: {\n ...(settings.apw || {}),\n contentReviewId: null\n }\n };\n }\n });\n });\n\n pageBuilder.onPageBeforeDelete.subscribe(async ({ page }) => {\n const contentReviewId = page.settings?.apw?.contentReviewId;\n if (!contentReviewId) {\n return;\n }\n\n let contentReview;\n try {\n contentReview = await apw.contentReview.get(contentReviewId);\n } catch (ex) {\n /**\n * We're handling the case whereby \"contentReviewId\" is still linked to page;\n * even when the contentReview entry has been deleted. In that case, we'll allow page deletion.\n */\n if (ex.code !== \"NOT_FOUND\") {\n throw ex;\n }\n }\n\n if (contentReview) {\n throw new Error(\n `Cannot delete the page because a peer review has been requested. Please delete the review first.`,\n \"CANNOT_DELETE_REVIEW_EXIST\",\n {\n contentReviewId,\n page\n }\n );\n }\n });\n};\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,IAAAC,MAAA,GAAAD,OAAA;AACA,IAAAE,MAAA,GAAAF,OAAA;AAQO,MAAMG,uBAAuB,GAAIC,MAAqC,IAAK;EAC9E,MAAM;IAAEC,GAAG;IAAEC;EAAY,CAAC,GAAGF,MAAM;EAEnCC,GAAG,CAACE,aAAa,CAACC,0BAA0B,CAACC,SAAS,CAAC,OAAO;IAAEF;EAAc,CAAC,KAAK;IAChF,MAAM;MAAEG;IAAQ,CAAC,GAAGH,aAAa;IAEjC,IAAIG,OAAO,CAACC,IAAI,KAAKC,sBAAe,CAACC,IAAI,EAAE;MACvC;IACJ;IACA,MAAM,IAAAC,yBAAkB,EAAC;MACrBC,OAAO,EAAET,WAAW,CAACS,OAAO;MAC5BC,UAAU,EAAEV,WAAW,CAACU,UAAU;MAClCC,YAAY,EAAEP,OAAO,CAACQ,EAAE;MACxBC,cAAc,EAAEC,QAAQ,IAAI;QACxB,OAAO;UACH,GAAGA,QAAQ;UACXf,GAAG,EAAE;YACD,IAAIe,QAAQ,CAACf,GAAG,IAAI,CAAC,CAAC,CAAC;YACvBgB,eAAe,EAAEd,aAAa,CAACW;UACnC;QACJ,CAAC;MACL;IACJ,CAAC,CAAC;EACN,CAAC,CAAC;EAEFb,GAAG,CAACE,aAAa,CAACe,0BAA0B,CAACb,SAAS,CAAC,OAAO;IAAEF;EAAc,CAAC,KAAK;IAChF,MAAM;MAAEG;IAAQ,CAAC,GAAGH,aAAa;IAEjC,IAAIG,OAAO,CAACC,IAAI,KAAKC,sBAAe,CAACC,IAAI,EAAE;MACvC;IACJ;IACA,MAAM,IAAAC,yBAAkB,EAAC;MACrBC,OAAO,EAAET,WAAW,CAACS,OAAO;MAC5BC,UAAU,EAAEV,WAAW,CAACU,UAAU;MAClCC,YAAY,EAAEP,OAAO,CAACQ,EAAE;MACxBC,cAAc,EAAEC,QAAQ,IAAI;QACxB,OAAO;UACH,GAAGA,QAAQ;UACXf,GAAG,EAAE;YACD,IAAIe,QAAQ,CAACf,GAAG,IAAI,CAAC,CAAC,CAAC;YACvBgB,eAAe,EAAE;UACrB;QACJ,CAAC;MACL;IACJ,CAAC,CAAC;EACN,CAAC,CAAC;EAEFf,WAAW,CAACiB,kBAAkB,CAACd,SAAS,CAAC,OAAO;IAAEe;EAAK,CAAC,KAAK;IACzD,MAAMH,eAAe,GAAGG,IAAI,CAACJ,QAAQ,EAAEf,GAAG,EAAEgB,eAAe;IAC3D,IAAI,CAACA,eAAe,EAAE;MAClB;IACJ;IAEA,IAAId,aAAa;IACjB,IAAI;MACAA,aAAa,GAAG,MAAMF,GAAG,CAACE,aAAa,CAACkB,GAAG,CAACJ,eAAe,CAAC;IAChE,CAAC,CAAC,OAAOK,EAAE,EAAE;MACT;AACZ;AACA;AACA;MACY,IAAIA,EAAE,CAACC,IAAI,KAAK,WAAW,EAAE;QACzB,MAAMD,EAAE;MACZ;IACJ;IAEA,IAAInB,aAAa,EAAE;MACf,MAAM,IAAIqB,cAAK,CACX,kGAAkG,EAClG,4BAA4B,EAC5B;QACIP,eAAe;QACfG;MACJ,CACJ,CAAC;IACL;EACJ,CAAC,CAAC;AACN,CAAC;AAACK,OAAA,CAAA1B,uBAAA,GAAAA,uBAAA","ignoreList":[]}
|
@@ -1,5 +1,5 @@
|
|
1
|
-
import { AdvancedPublishingWorkflow } from "../../types";
|
2
|
-
import { PageBuilderContextObject } from "@webiny/api-page-builder/graphql/types";
|
1
|
+
import type { AdvancedPublishingWorkflow } from "../../types";
|
2
|
+
import type { PageBuilderContextObject } from "@webiny/api-page-builder/graphql/types";
|
3
3
|
interface LinkWorkflowToPageParams {
|
4
4
|
apw: AdvancedPublishingWorkflow;
|
5
5
|
pageBuilder: PageBuilderContextObject;
|
@@ -5,7 +5,6 @@ Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
value: true
|
6
6
|
});
|
7
7
|
exports.linkWorkflowToPage = void 0;
|
8
|
-
var _get = _interopRequireDefault(require("lodash/get"));
|
9
8
|
var _set = _interopRequireDefault(require("lodash/set"));
|
10
9
|
var _types = require("../../types");
|
11
10
|
var _utils = require("./utils");
|
@@ -31,7 +30,7 @@ const linkWorkflowToPage = params => {
|
|
31
30
|
* If the previous revision(original) already had the "contentReviewId",
|
32
31
|
* we need to unlink it so that new "contentReview" can be request for the new revision.
|
33
32
|
*/
|
34
|
-
const previousContentReviewId =
|
33
|
+
const previousContentReviewId = original.settings.apw?.contentReviewId;
|
35
34
|
if (previousContentReviewId) {
|
36
35
|
page.settings.apw.contentReviewId = null;
|
37
36
|
}
|
@@ -40,7 +39,7 @@ const linkWorkflowToPage = params => {
|
|
40
39
|
* If the previous revision(original) already had the "workflowId",
|
41
40
|
* we don't need to do anything we'll just let it be copied over.
|
42
41
|
*/
|
43
|
-
const previousWorkflowId =
|
42
|
+
const previousWorkflowId = original.settings.apw?.workflowId;
|
44
43
|
if (previousWorkflowId) {
|
45
44
|
return;
|
46
45
|
}
|
@@ -57,8 +56,8 @@ const linkWorkflowToPage = params => {
|
|
57
56
|
page,
|
58
57
|
original
|
59
58
|
} = params;
|
60
|
-
const prevApwWorkflowId =
|
61
|
-
const currentApwWorkflowId =
|
59
|
+
const prevApwWorkflowId = original.settings?.apw;
|
60
|
+
const currentApwWorkflowId = page.settings?.apw;
|
62
61
|
/**
|
63
62
|
* Make sure the apw property doesn't get lost between updates.
|
64
63
|
* It can happen because we run modal validation in "onBeforePageUpdate" event,
|
@@ -71,9 +70,9 @@ const linkWorkflowToPage = params => {
|
|
71
70
|
* If there is a linked "contentReview" for this page and the page "title" has changed.
|
72
71
|
* Let's update the "title" field in "contentReview".
|
73
72
|
*/
|
74
|
-
const linkedContentReviewId =
|
75
|
-
const prevTitle =
|
76
|
-
const newTitle =
|
73
|
+
const linkedContentReviewId = page.settings.apw?.contentReviewId;
|
74
|
+
const prevTitle = original.title;
|
75
|
+
const newTitle = page.title;
|
77
76
|
if (linkedContentReviewId && prevTitle !== newTitle) {
|
78
77
|
await apw.contentReview.update(linkedContentReviewId, {
|
79
78
|
title: newTitle
|
@@ -98,7 +97,7 @@ const linkWorkflowToPage = params => {
|
|
98
97
|
if ((0, _utils.hasPages)(workflow) === false) {
|
99
98
|
return;
|
100
99
|
}
|
101
|
-
const pages =
|
100
|
+
const pages = scope.data?.pages || [];
|
102
101
|
for (const pid of pages) {
|
103
102
|
await (0, _utils.updatePageSettings)({
|
104
103
|
getPage: pageBuilder.getPage,
|
@@ -133,8 +132,8 @@ const linkWorkflowToPage = params => {
|
|
133
132
|
if ((0, _utils.hasPages)(workflow) === false || (0, _utils.shouldUpdatePages)(scope, prevScope) === false) {
|
134
133
|
return;
|
135
134
|
}
|
136
|
-
const previousPages =
|
137
|
-
const currentPages =
|
135
|
+
const previousPages = prevScope.data?.pages || [];
|
136
|
+
const currentPages = scope.data?.pages || [];
|
138
137
|
const {
|
139
138
|
removedPages,
|
140
139
|
addedPages
|
@@ -161,4 +160,6 @@ const linkWorkflowToPage = params => {
|
|
161
160
|
}
|
162
161
|
});
|
163
162
|
};
|
164
|
-
exports.linkWorkflowToPage = linkWorkflowToPage;
|
163
|
+
exports.linkWorkflowToPage = linkWorkflowToPage;
|
164
|
+
|
165
|
+
//# sourceMappingURL=linkWorkflowToPage.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["linkWorkflowToPage","params","apw","pageBuilder","onPageBeforeCreate","subscribe","page","assignWorkflowToPage","listWorkflow","workflow","list","onPageBeforeCreateFrom","original","previousContentReviewId","get","settings","contentReviewId","previousWorkflowId","onPageBeforeUpdate","prevApwWorkflowId","currentApwWorkflowId","linkedContentReviewId","prevTitle","newTitle","contentReview","update","title","onWorkflowAfterCreate","scope","app","ApwWorkflowApplications","PB","hasPages","pages","pid","updatePageSettings","getPage","updatePage","uniquePageId","getNewSettings","set","id","onWorkflowAfterUpdate","prevScope","shouldUpdatePages","previousPages","currentPages","removedPages","addedPages","getPagesDiff"],"sources":["linkWorkflowToPage.ts"],"sourcesContent":["import get from \"lodash/get\";\nimport set from \"lodash/set\";\nimport {\n ApwWorkflowApplications,\n ApwOnPageBeforeCreateTopicParams,\n ApwOnPageBeforeCreateFromTopicParams,\n ApwOnPageBeforeUpdateTopicParams,\n AdvancedPublishingWorkflow\n} from \"~/types\";\nimport {\n getPagesDiff,\n hasPages,\n updatePageSettings,\n shouldUpdatePages,\n assignWorkflowToPage\n} from \"./utils\";\nimport { PageBuilderContextObject } from \"@webiny/api-page-builder/graphql/types\";\n\ninterface LinkWorkflowToPageParams {\n apw: AdvancedPublishingWorkflow;\n pageBuilder: PageBuilderContextObject;\n}\n\nexport const linkWorkflowToPage = (params: LinkWorkflowToPageParams) => {\n const { apw, pageBuilder } = params;\n\n pageBuilder.onPageBeforeCreate.subscribe<ApwOnPageBeforeCreateTopicParams>(async ({ page }) => {\n await assignWorkflowToPage({ listWorkflow: apw.workflow.list, page });\n });\n pageBuilder.onPageBeforeCreateFrom.subscribe<ApwOnPageBeforeCreateFromTopicParams>(\n async params => {\n const { page, original } = params;\n /**\n * If the previous revision(original) already had the \"contentReviewId\",\n * we need to unlink it so that new \"contentReview\" can be request for the new revision.\n */\n const previousContentReviewId = get(original, \"settings.apw.contentReviewId\");\n if (previousContentReviewId) {\n page.settings.apw.contentReviewId = null;\n }\n\n /**\n * If the previous revision(original) already had the \"workflowId\",\n * we don't need to do anything we'll just let it be copied over.\n */\n const previousWorkflowId = get(original, \"settings.apw.workflowId\");\n if (previousWorkflowId) {\n return;\n }\n /**\n * Lookup and assign \"workflowId\".\n */\n await assignWorkflowToPage({ listWorkflow: apw.workflow.list, page });\n }\n );\n pageBuilder.onPageBeforeUpdate.subscribe<ApwOnPageBeforeUpdateTopicParams>(async params => {\n const { page, original } = params;\n const prevApwWorkflowId = get(original, \"settings.apw\");\n const currentApwWorkflowId = get(page, \"settings.apw\");\n /**\n * Make sure the apw property doesn't get lost between updates.\n * It can happen because we run modal validation in \"onBeforePageUpdate\" event,\n * which doesn't have the \"apw\" property.\n */\n if (prevApwWorkflowId && !currentApwWorkflowId) {\n page.settings.apw = original.settings.apw;\n }\n /*\n * If there is a linked \"contentReview\" for this page and the page \"title\" has changed.\n * Let's update the \"title\" field in \"contentReview\".\n */\n const linkedContentReviewId = get(page, \"settings.apw.contentReviewId\");\n const prevTitle = get(original, \"title\");\n const newTitle = get(page, \"title\");\n\n if (linkedContentReviewId && prevTitle !== newTitle) {\n await apw.contentReview.update(linkedContentReviewId, { title: newTitle });\n }\n });\n /**\n * Link created workflow to associated pages.\n */\n apw.workflow.onWorkflowAfterCreate.subscribe(async ({ workflow }) => {\n const { scope } = workflow;\n if (workflow.app !== ApwWorkflowApplications.PB) {\n return;\n }\n /**\n * If the workflow has pages in it's scope, we'll link that workflow for each of those pages.\n */\n if (hasPages(workflow) === false) {\n return;\n }\n const pages = get(scope, \"data.pages\") as unknown as string[];\n\n for (const pid of pages) {\n await updatePageSettings({\n getPage: pageBuilder.getPage,\n updatePage: pageBuilder.updatePage,\n uniquePageId: pid,\n getNewSettings: settings => {\n return set(settings, \"apw.workflowId\", workflow.id);\n }\n });\n }\n });\n /**\n * Link updated workflow to associated pages.\n */\n apw.workflow.onWorkflowAfterUpdate.subscribe(async ({ workflow, original }) => {\n const { scope } = workflow;\n if (workflow.app !== ApwWorkflowApplications.PB) {\n return;\n }\n const { scope: prevScope } = original;\n /**\n * If the workflow has pages in it's scope and there is a change in that page list,\n * we'll update the workflow link for corresponding pages.\n */\n if (hasPages(workflow) === false || shouldUpdatePages(scope, prevScope) === false) {\n return;\n }\n\n const previousPages = get(prevScope, \"data.pages\", []);\n const currentPages = get(scope, \"data.pages\", []);\n\n const { removedPages, addedPages } = getPagesDiff(currentPages, previousPages);\n for (const pid of addedPages) {\n await updatePageSettings({\n getPage: pageBuilder.getPage,\n updatePage: pageBuilder.updatePage,\n uniquePageId: pid,\n getNewSettings: settings => {\n return set(settings, \"apw.workflowId\", workflow.id);\n }\n });\n }\n for (const pid of removedPages) {\n await updatePageSettings({\n getPage: pageBuilder.getPage,\n updatePage: pageBuilder.updatePage,\n uniquePageId: pid,\n getNewSettings: settings => {\n return set(settings, \"apw.workflowId\", null);\n }\n });\n }\n });\n};\n"],"mappings":"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"}
|
1
|
+
{"version":3,"names":["_set","_interopRequireDefault","require","_types","_utils","linkWorkflowToPage","params","apw","pageBuilder","onPageBeforeCreate","subscribe","page","assignWorkflowToPage","listWorkflow","workflow","list","onPageBeforeCreateFrom","original","previousContentReviewId","settings","contentReviewId","previousWorkflowId","workflowId","onPageBeforeUpdate","prevApwWorkflowId","currentApwWorkflowId","linkedContentReviewId","prevTitle","title","newTitle","contentReview","update","onWorkflowAfterCreate","scope","app","ApwWorkflowApplications","PB","hasPages","pages","data","pid","updatePageSettings","getPage","updatePage","uniquePageId","getNewSettings","set","id","onWorkflowAfterUpdate","prevScope","shouldUpdatePages","previousPages","currentPages","removedPages","addedPages","getPagesDiff","exports"],"sources":["linkWorkflowToPage.ts"],"sourcesContent":["import set from \"lodash/set\";\nimport type {\n AdvancedPublishingWorkflow,\n ApwOnPageBeforeCreateFromTopicParams,\n ApwOnPageBeforeCreateTopicParams,\n ApwOnPageBeforeUpdateTopicParams\n} from \"~/types\";\nimport { ApwWorkflowApplications } from \"~/types\";\nimport {\n assignWorkflowToPage,\n getPagesDiff,\n hasPages,\n shouldUpdatePages,\n updatePageSettings\n} from \"./utils\";\nimport type { PageBuilderContextObject } from \"@webiny/api-page-builder/graphql/types\";\n\ninterface LinkWorkflowToPageParams {\n apw: AdvancedPublishingWorkflow;\n pageBuilder: PageBuilderContextObject;\n}\n\nexport const linkWorkflowToPage = (params: LinkWorkflowToPageParams) => {\n const { apw, pageBuilder } = params;\n\n pageBuilder.onPageBeforeCreate.subscribe<ApwOnPageBeforeCreateTopicParams>(async ({ page }) => {\n await assignWorkflowToPage({ listWorkflow: apw.workflow.list, page });\n });\n pageBuilder.onPageBeforeCreateFrom.subscribe<ApwOnPageBeforeCreateFromTopicParams>(\n async params => {\n const { page, original } = params;\n /**\n * If the previous revision(original) already had the \"contentReviewId\",\n * we need to unlink it so that new \"contentReview\" can be request for the new revision.\n */\n const previousContentReviewId = original.settings.apw?.contentReviewId;\n if (previousContentReviewId) {\n page.settings.apw.contentReviewId = null;\n }\n\n /**\n * If the previous revision(original) already had the \"workflowId\",\n * we don't need to do anything we'll just let it be copied over.\n */\n const previousWorkflowId = original.settings.apw?.workflowId;\n if (previousWorkflowId) {\n return;\n }\n /**\n * Lookup and assign \"workflowId\".\n */\n await assignWorkflowToPage({ listWorkflow: apw.workflow.list, page });\n }\n );\n pageBuilder.onPageBeforeUpdate.subscribe<ApwOnPageBeforeUpdateTopicParams>(async params => {\n const { page, original } = params;\n const prevApwWorkflowId = original.settings?.apw;\n const currentApwWorkflowId = page.settings?.apw;\n /**\n * Make sure the apw property doesn't get lost between updates.\n * It can happen because we run modal validation in \"onBeforePageUpdate\" event,\n * which doesn't have the \"apw\" property.\n */\n if (prevApwWorkflowId && !currentApwWorkflowId) {\n page.settings.apw = original.settings.apw;\n }\n /*\n * If there is a linked \"contentReview\" for this page and the page \"title\" has changed.\n * Let's update the \"title\" field in \"contentReview\".\n */\n const linkedContentReviewId = page.settings.apw?.contentReviewId;\n const prevTitle = original.title;\n const newTitle = page.title;\n\n if (linkedContentReviewId && prevTitle !== newTitle) {\n await apw.contentReview.update(linkedContentReviewId, { title: newTitle });\n }\n });\n /**\n * Link created workflow to associated pages.\n */\n apw.workflow.onWorkflowAfterCreate.subscribe(async ({ workflow }) => {\n const { scope } = workflow;\n if (workflow.app !== ApwWorkflowApplications.PB) {\n return;\n }\n /**\n * If the workflow has pages in it's scope, we'll link that workflow for each of those pages.\n */\n if (hasPages(workflow) === false) {\n return;\n }\n const pages = scope.data?.pages || [];\n\n for (const pid of pages) {\n await updatePageSettings({\n getPage: pageBuilder.getPage,\n updatePage: pageBuilder.updatePage,\n uniquePageId: pid,\n getNewSettings: settings => {\n return set(settings, \"apw.workflowId\", workflow.id);\n }\n });\n }\n });\n /**\n * Link updated workflow to associated pages.\n */\n apw.workflow.onWorkflowAfterUpdate.subscribe(async ({ workflow, original }) => {\n const { scope } = workflow;\n if (workflow.app !== ApwWorkflowApplications.PB) {\n return;\n }\n const { scope: prevScope } = original;\n /**\n * If the workflow has pages in it's scope and there is a change in that page list,\n * we'll update the workflow link for corresponding pages.\n */\n if (hasPages(workflow) === false || shouldUpdatePages(scope, prevScope) === false) {\n return;\n }\n\n const previousPages = prevScope.data?.pages || [];\n const currentPages = scope.data?.pages || [];\n\n const { removedPages, addedPages } = getPagesDiff(currentPages, previousPages);\n for (const pid of addedPages) {\n await updatePageSettings({\n getPage: pageBuilder.getPage,\n updatePage: pageBuilder.updatePage,\n uniquePageId: pid,\n getNewSettings: settings => {\n return set(settings, \"apw.workflowId\", workflow.id);\n }\n });\n }\n for (const pid of removedPages) {\n await updatePageSettings({\n getPage: pageBuilder.getPage,\n updatePage: pageBuilder.updatePage,\n uniquePageId: pid,\n getNewSettings: settings => {\n return set(settings, \"apw.workflowId\", null);\n }\n });\n }\n });\n};\n"],"mappings":"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","ignoreList":[]}
|
@@ -28,4 +28,6 @@ const createChangeRequestNotification = () => {
|
|
28
28
|
plugin.name = `${plugin.type}.${_types.ApwContentTypes.PAGE}.default`;
|
29
29
|
return plugin;
|
30
30
|
};
|
31
|
-
exports.createChangeRequestNotification = createChangeRequestNotification;
|
31
|
+
exports.createChangeRequestNotification = createChangeRequestNotification;
|
32
|
+
|
33
|
+
//# sourceMappingURL=changeRequestNotification.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["createChangeRequestNotification","plugin","createApwChangeRequestNotification","ApwContentTypes","PAGE","params","changeRequestUrl","contentUrl","text","name","type"],"sources":["changeRequestNotification.ts"],"sourcesContent":["import { ApwContentTypes } from \"~/types\";\nimport { createApwChangeRequestNotification } from \"~/ApwChangeRequestNotification\";\n\nexport const createChangeRequestNotification = () => {\n const plugin = createApwChangeRequestNotification(ApwContentTypes.PAGE, params => {\n const { changeRequestUrl, contentUrl } = params;\n return {\n text: `\n Hi,<br /><br />\n \n You have received a <a href=\"${changeRequestUrl}\">change request</a>, for <a href=\"${contentUrl}\">this</a> page.<br /><br />\n \n Here are the full URLs:<br /><br />\n \n Change Request: ${changeRequestUrl}<br />\n Page: ${contentUrl}\n `\n };\n });\n\n plugin.name = `${plugin.type}.${ApwContentTypes.PAGE}.default`;\n\n return plugin;\n};\n"],"mappings":";;;;;;AAAA;AACA;AAEO,
|
1
|
+
{"version":3,"names":["_types","require","_ApwChangeRequestNotification","createChangeRequestNotification","plugin","createApwChangeRequestNotification","ApwContentTypes","PAGE","params","changeRequestUrl","contentUrl","text","name","type","exports"],"sources":["changeRequestNotification.ts"],"sourcesContent":["import { ApwContentTypes } from \"~/types\";\nimport { createApwChangeRequestNotification } from \"~/ApwChangeRequestNotification\";\n\nexport const createChangeRequestNotification = () => {\n const plugin = createApwChangeRequestNotification(ApwContentTypes.PAGE, params => {\n const { changeRequestUrl, contentUrl } = params;\n return {\n text: `\n Hi,<br /><br />\n \n You have received a <a href=\"${changeRequestUrl}\">change request</a>, for <a href=\"${contentUrl}\">this</a> page.<br /><br />\n \n Here are the full URLs:<br /><br />\n \n Change Request: ${changeRequestUrl}<br />\n Page: ${contentUrl}\n `\n };\n });\n\n plugin.name = `${plugin.type}.${ApwContentTypes.PAGE}.default`;\n\n return plugin;\n};\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,6BAAA,GAAAD,OAAA;AAEO,MAAME,+BAA+B,GAAGA,CAAA,KAAM;EACjD,MAAMC,MAAM,GAAG,IAAAC,gEAAkC,EAACC,sBAAe,CAACC,IAAI,EAAEC,MAAM,IAAI;IAC9E,MAAM;MAAEC,gBAAgB;MAAEC;IAAW,CAAC,GAAGF,MAAM;IAC/C,OAAO;MACHG,IAAI,EAAE;AAClB;AACA;AACA,+CAA+CF,gBAAgB,sCAAsCC,UAAU;AAC/G;AACA;AACA;AACA,kCAAkCD,gBAAgB;AAClD,wBAAwBC,UAAU;AAClC;IACQ,CAAC;EACL,CAAC,CAAC;EAEFN,MAAM,CAACQ,IAAI,GAAG,GAAGR,MAAM,CAACS,IAAI,IAAIP,sBAAe,CAACC,IAAI,UAAU;EAE9D,OAAOH,MAAM;AACjB,CAAC;AAACU,OAAA,CAAAX,+BAAA,GAAAA,+BAAA","ignoreList":[]}
|
@@ -28,4 +28,6 @@ const createCommentNotification = () => {
|
|
28
28
|
plugin.name = `${plugin.type}.${_types.ApwContentTypes.PAGE}.default`;
|
29
29
|
return plugin;
|
30
30
|
};
|
31
|
-
exports.createCommentNotification = createCommentNotification;
|
31
|
+
exports.createCommentNotification = createCommentNotification;
|
32
|
+
|
33
|
+
//# sourceMappingURL=commentNotification.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["createCommentNotification","plugin","createApwCommentNotification","ApwContentTypes","PAGE","params","commentUrl","contentUrl","text","name","type"],"sources":["commentNotification.ts"],"sourcesContent":["import { createApwCommentNotification } from \"~/ApwCommentNotification\";\nimport { ApwContentTypes } from \"~/types\";\n\nexport const createCommentNotification = () => {\n const plugin = createApwCommentNotification(ApwContentTypes.PAGE, params => {\n const { commentUrl, contentUrl } = params;\n return {\n text: `\n Hi,<br /><br />\n \n You have received a <a href=\"${commentUrl}\">comment</a>, on a change request, for <a href=\"${contentUrl}\">this</a> page.<br /><br />\n \n Here are the full URLs:<br /><br />\n \n Comment: ${commentUrl}<br />\n Page: ${contentUrl}\n `\n };\n });\n\n plugin.name = `${plugin.type}.${ApwContentTypes.PAGE}.default`;\n\n return plugin;\n};\n"],"mappings":";;;;;;AAAA;AACA;AAEO,
|
1
|
+
{"version":3,"names":["_ApwCommentNotification","require","_types","createCommentNotification","plugin","createApwCommentNotification","ApwContentTypes","PAGE","params","commentUrl","contentUrl","text","name","type","exports"],"sources":["commentNotification.ts"],"sourcesContent":["import { createApwCommentNotification } from \"~/ApwCommentNotification\";\nimport { ApwContentTypes } from \"~/types\";\n\nexport const createCommentNotification = () => {\n const plugin = createApwCommentNotification(ApwContentTypes.PAGE, params => {\n const { commentUrl, contentUrl } = params;\n return {\n text: `\n Hi,<br /><br />\n \n You have received a <a href=\"${commentUrl}\">comment</a>, on a change request, for <a href=\"${contentUrl}\">this</a> page.<br /><br />\n \n Here are the full URLs:<br /><br />\n \n Comment: ${commentUrl}<br />\n Page: ${contentUrl}\n `\n };\n });\n\n plugin.name = `${plugin.type}.${ApwContentTypes.PAGE}.default`;\n\n return plugin;\n};\n"],"mappings":";;;;;;AAAA,IAAAA,uBAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AAEO,MAAME,yBAAyB,GAAGA,CAAA,KAAM;EAC3C,MAAMC,MAAM,GAAG,IAAAC,oDAA4B,EAACC,sBAAe,CAACC,IAAI,EAAEC,MAAM,IAAI;IACxE,MAAM;MAAEC,UAAU;MAAEC;IAAW,CAAC,GAAGF,MAAM;IACzC,OAAO;MACHG,IAAI,EAAE;AAClB;AACA;AACA,+CAA+CF,UAAU,oDAAoDC,UAAU;AACvH;AACA;AACA;AACA,2BAA2BD,UAAU;AACrC,wBAAwBC,UAAU;AAClC;IACQ,CAAC;EACL,CAAC,CAAC;EAEFN,MAAM,CAACQ,IAAI,GAAG,GAAGR,MAAM,CAACS,IAAI,IAAIP,sBAAe,CAACC,IAAI,UAAU;EAE9D,OAAOH,MAAM;AACjB,CAAC;AAACU,OAAA,CAAAX,yBAAA,GAAAA,yBAAA","ignoreList":[]}
|
@@ -28,4 +28,6 @@ const createContentReviewNotification = () => {
|
|
28
28
|
plugin.name = `${plugin.type}.${_types.ApwContentTypes.PAGE}.default`;
|
29
29
|
return plugin;
|
30
30
|
};
|
31
|
-
exports.createContentReviewNotification = createContentReviewNotification;
|
31
|
+
exports.createContentReviewNotification = createContentReviewNotification;
|
32
|
+
|
33
|
+
//# sourceMappingURL=contentReviewNotification.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["createContentReviewNotification","plugin","createApwContentReviewNotification","ApwContentTypes","PAGE","params","contentReviewUrl","contentUrl","text","name","type"],"sources":["contentReviewNotification.ts"],"sourcesContent":["import { ApwContentTypes } from \"~/types\";\nimport { createApwContentReviewNotification } from \"~/ApwContentReviewNotification\";\n\nexport const createContentReviewNotification = () => {\n const plugin = createApwContentReviewNotification(ApwContentTypes.PAGE, params => {\n const { contentReviewUrl, contentUrl } = params;\n return {\n text: `\n Hi,<br /><br />\n \n You have received a <a href=\"${contentReviewUrl}\">content review</a>, for <a href=\"${contentUrl}\">this</a> page.<br /><br />\n \n Here are the full URLs:<br /><br />\n \n Content Review: ${contentReviewUrl}<br />\n Page: ${contentUrl}\n `\n };\n });\n\n plugin.name = `${plugin.type}.${ApwContentTypes.PAGE}.default`;\n\n return plugin;\n};\n"],"mappings":";;;;;;AAAA;AACA;AAEO,
|
1
|
+
{"version":3,"names":["_types","require","_ApwContentReviewNotification","createContentReviewNotification","plugin","createApwContentReviewNotification","ApwContentTypes","PAGE","params","contentReviewUrl","contentUrl","text","name","type","exports"],"sources":["contentReviewNotification.ts"],"sourcesContent":["import { ApwContentTypes } from \"~/types\";\nimport { createApwContentReviewNotification } from \"~/ApwContentReviewNotification\";\n\nexport const createContentReviewNotification = () => {\n const plugin = createApwContentReviewNotification(ApwContentTypes.PAGE, params => {\n const { contentReviewUrl, contentUrl } = params;\n return {\n text: `\n Hi,<br /><br />\n \n You have received a <a href=\"${contentReviewUrl}\">content review</a>, for <a href=\"${contentUrl}\">this</a> page.<br /><br />\n \n Here are the full URLs:<br /><br />\n \n Content Review: ${contentReviewUrl}<br />\n Page: ${contentUrl}\n `\n };\n });\n\n plugin.name = `${plugin.type}.${ApwContentTypes.PAGE}.default`;\n\n return plugin;\n};\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,6BAAA,GAAAD,OAAA;AAEO,MAAME,+BAA+B,GAAGA,CAAA,KAAM;EACjD,MAAMC,MAAM,GAAG,IAAAC,gEAAkC,EAACC,sBAAe,CAACC,IAAI,EAAEC,MAAM,IAAI;IAC9E,MAAM;MAAEC,gBAAgB;MAAEC;IAAW,CAAC,GAAGF,MAAM;IAC/C,OAAO;MACHG,IAAI,EAAE;AAClB;AACA;AACA,+CAA+CF,gBAAgB,sCAAsCC,UAAU;AAC/G;AACA;AACA;AACA,kCAAkCD,gBAAgB;AAClD,wBAAwBC,UAAU;AAClC;IACQ,CAAC;EACL,CAAC,CAAC;EAEFN,MAAM,CAACQ,IAAI,GAAG,GAAGR,MAAM,CAACS,IAAI,IAAIP,sBAAe,CAACC,IAAI,UAAU;EAE9D,OAAOH,MAAM;AACjB,CAAC;AAACU,OAAA,CAAAX,+BAAA,GAAAA,+BAAA","ignoreList":[]}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["createPageUrl","params","key","console","log","baseUrl","id","createContentUrlPlugin","createApwContentUrlPlugin","ApwContentTypes","PAGE","contentReview","content"],"sources":["contentUrl.ts"],"sourcesContent":["/**\n * In this file we create a plugin which in turn creates a content entry url when requested by the code which sends notifications.\n * Due to multiple content types for the APW, everything needs to be pluginable.\n */\nimport { createApwContentUrlPlugin } from \"~/ApwContentUrlPlugin\";\nimport { ApwContentTypes } from \"~/types\";\n\ninterface CreatePageUrlParams {\n baseUrl?: string;\n id: string;\n}\nconst createPageUrl = (params: CreatePageUrlParams): string | null => {\n /**\n * All variables must exist for URL to be created.\n * We go through all vars and throw a log if it does not exist.\n */\n for (const key in params) {\n if (!!key) {\n continue;\n }\n console.log(`Missing variable \"${key}\", which we use to create a page URL.`);\n return null;\n }\n const { baseUrl, id } = params;\n return `${baseUrl}/page-builder/pages?id=${id}`;\n};\n\nexport const createContentUrlPlugin = () => {\n return createApwContentUrlPlugin(ApwContentTypes.PAGE, params => {\n const { baseUrl, contentReview } = params;\n const { id } = contentReview.content;\n return createPageUrl({\n baseUrl,\n id\n });\n });\n};\n"],"mappings":";;;;;;AAIA;AACA;AALA;AACA;AACA;AACA;;AAQA,
|
1
|
+
{"version":3,"names":["_ApwContentUrlPlugin","require","_types","createPageUrl","params","key","console","log","baseUrl","id","createContentUrlPlugin","createApwContentUrlPlugin","ApwContentTypes","PAGE","contentReview","content","exports"],"sources":["contentUrl.ts"],"sourcesContent":["/**\n * In this file we create a plugin which in turn creates a content entry url when requested by the code which sends notifications.\n * Due to multiple content types for the APW, everything needs to be pluginable.\n */\nimport { createApwContentUrlPlugin } from \"~/ApwContentUrlPlugin\";\nimport { ApwContentTypes } from \"~/types\";\n\ninterface CreatePageUrlParams {\n baseUrl?: string;\n id: string;\n}\nconst createPageUrl = (params: CreatePageUrlParams): string | null => {\n /**\n * All variables must exist for URL to be created.\n * We go through all vars and throw a log if it does not exist.\n */\n for (const key in params) {\n if (!!key) {\n continue;\n }\n console.log(`Missing variable \"${key}\", which we use to create a page URL.`);\n return null;\n }\n const { baseUrl, id } = params;\n return `${baseUrl}/page-builder/pages?id=${id}`;\n};\n\nexport const createContentUrlPlugin = () => {\n return createApwContentUrlPlugin(ApwContentTypes.PAGE, params => {\n const { baseUrl, contentReview } = params;\n const { id } = contentReview.content;\n return createPageUrl({\n baseUrl,\n id\n });\n });\n};\n"],"mappings":";;;;;;AAIA,IAAAA,oBAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AALA;AACA;AACA;AACA;;AAQA,MAAME,aAAa,GAAIC,MAA2B,IAAoB;EAClE;AACJ;AACA;AACA;EACI,KAAK,MAAMC,GAAG,IAAID,MAAM,EAAE;IACtB,IAAI,CAAC,CAACC,GAAG,EAAE;MACP;IACJ;IACAC,OAAO,CAACC,GAAG,CAAC,qBAAqBF,GAAG,uCAAuC,CAAC;IAC5E,OAAO,IAAI;EACf;EACA,MAAM;IAAEG,OAAO;IAAEC;EAAG,CAAC,GAAGL,MAAM;EAC9B,OAAO,GAAGI,OAAO,0BAA0BC,EAAE,EAAE;AACnD,CAAC;AAEM,MAAMC,sBAAsB,GAAGA,CAAA,KAAM;EACxC,OAAO,IAAAC,8CAAyB,EAACC,sBAAe,CAACC,IAAI,EAAET,MAAM,IAAI;IAC7D,MAAM;MAAEI,OAAO;MAAEM;IAAc,CAAC,GAAGV,MAAM;IACzC,MAAM;MAAEK;IAAG,CAAC,GAAGK,aAAa,CAACC,OAAO;IACpC,OAAOZ,aAAa,CAAC;MACjBK,OAAO;MACPC;IACJ,CAAC,CAAC;EACN,CAAC,CAAC;AACN,CAAC;AAACO,OAAA,CAAAN,sBAAA,GAAAA,sBAAA","ignoreList":[]}
|
@@ -1,5 +1,5 @@
|
|
1
|
-
import { AdvancedPublishingWorkflow } from "../../types";
|
2
|
-
import { PageBuilderContextObject } from "@webiny/api-page-builder/graphql/types";
|
1
|
+
import type { AdvancedPublishingWorkflow } from "../../types";
|
2
|
+
import type { PageBuilderContextObject } from "@webiny/api-page-builder/graphql/types";
|
3
3
|
interface TriggerContentReviewParams {
|
4
4
|
apw: AdvancedPublishingWorkflow;
|
5
5
|
pageBuilder: PageBuilderContextObject;
|
@@ -5,7 +5,6 @@ Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
value: true
|
6
6
|
});
|
7
7
|
exports.triggerContentReview = void 0;
|
8
|
-
var _get = _interopRequireDefault(require("lodash/get"));
|
9
8
|
var _error = _interopRequireDefault(require("@webiny/error"));
|
10
9
|
var _types = require("../../types");
|
11
10
|
const triggerContentReview = params => {
|
@@ -16,7 +15,7 @@ const triggerContentReview = params => {
|
|
16
15
|
pageBuilder.onPageBeforePublish.subscribe(async ({
|
17
16
|
page
|
18
17
|
}) => {
|
19
|
-
const contentReviewId =
|
18
|
+
const contentReviewId = page.settings.apw?.contentReviewId;
|
20
19
|
if (contentReviewId) {
|
21
20
|
const contentReview = await apw.contentReview.get(contentReviewId);
|
22
21
|
if (contentReview.reviewStatus === _types.ApwContentReviewStatus.UNDER_REVIEW) {
|
@@ -27,7 +26,7 @@ const triggerContentReview = params => {
|
|
27
26
|
}
|
28
27
|
return;
|
29
28
|
}
|
30
|
-
const workflowId =
|
29
|
+
const workflowId = page.settings.apw?.workflowId;
|
31
30
|
if (workflowId) {
|
32
31
|
throw new _error.default("This content requires peer review approval before it can be published.", "REVIEW_REQUIRED", {
|
33
32
|
workflowId,
|
@@ -36,4 +35,6 @@ const triggerContentReview = params => {
|
|
36
35
|
}
|
37
36
|
});
|
38
37
|
};
|
39
|
-
exports.triggerContentReview = triggerContentReview;
|
38
|
+
exports.triggerContentReview = triggerContentReview;
|
39
|
+
|
40
|
+
//# sourceMappingURL=triggerContentReview.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["triggerContentReview","params","pageBuilder","apw","onPageBeforePublish","subscribe","page","contentReviewId","
|
1
|
+
{"version":3,"names":["_error","_interopRequireDefault","require","_types","triggerContentReview","params","pageBuilder","apw","onPageBeforePublish","subscribe","page","contentReviewId","settings","contentReview","get","reviewStatus","ApwContentReviewStatus","UNDER_REVIEW","Error","workflowId","exports"],"sources":["triggerContentReview.ts"],"sourcesContent":["import Error from \"@webiny/error\";\nimport type { AdvancedPublishingWorkflow, ApwOnPageBeforePublishTopicParams } from \"~/types\";\nimport { ApwContentReviewStatus } from \"~/types\";\nimport type { PageBuilderContextObject } from \"@webiny/api-page-builder/graphql/types\";\n\ninterface TriggerContentReviewParams {\n apw: AdvancedPublishingWorkflow;\n pageBuilder: PageBuilderContextObject;\n}\n\nexport const triggerContentReview = (params: TriggerContentReviewParams) => {\n const { pageBuilder, apw } = params;\n\n pageBuilder.onPageBeforePublish.subscribe<ApwOnPageBeforePublishTopicParams>(\n async ({ page }) => {\n const contentReviewId = page.settings.apw?.contentReviewId;\n if (contentReviewId) {\n const contentReview = await apw.contentReview.get(contentReviewId);\n\n if (contentReview.reviewStatus === ApwContentReviewStatus.UNDER_REVIEW) {\n throw new Error(\n `A peer review for this content has been already requested.`,\n \"REVIEW_ALREADY_EXIST\",\n {\n contentReviewId,\n page\n }\n );\n }\n return;\n }\n\n const workflowId = page.settings.apw?.workflowId;\n\n if (workflowId) {\n throw new Error(\n \"This content requires peer review approval before it can be published.\",\n \"REVIEW_REQUIRED\",\n {\n workflowId,\n page\n }\n );\n }\n }\n );\n};\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,IAAAC,MAAA,GAAAD,OAAA;AAQO,MAAME,oBAAoB,GAAIC,MAAkC,IAAK;EACxE,MAAM;IAAEC,WAAW;IAAEC;EAAI,CAAC,GAAGF,MAAM;EAEnCC,WAAW,CAACE,mBAAmB,CAACC,SAAS,CACrC,OAAO;IAAEC;EAAK,CAAC,KAAK;IAChB,MAAMC,eAAe,GAAGD,IAAI,CAACE,QAAQ,CAACL,GAAG,EAAEI,eAAe;IAC1D,IAAIA,eAAe,EAAE;MACjB,MAAME,aAAa,GAAG,MAAMN,GAAG,CAACM,aAAa,CAACC,GAAG,CAACH,eAAe,CAAC;MAElE,IAAIE,aAAa,CAACE,YAAY,KAAKC,6BAAsB,CAACC,YAAY,EAAE;QACpE,MAAM,IAAIC,cAAK,CACX,4DAA4D,EAC5D,sBAAsB,EACtB;UACIP,eAAe;UACfD;QACJ,CACJ,CAAC;MACL;MACA;IACJ;IAEA,MAAMS,UAAU,GAAGT,IAAI,CAACE,QAAQ,CAACL,GAAG,EAAEY,UAAU;IAEhD,IAAIA,UAAU,EAAE;MACZ,MAAM,IAAID,cAAK,CACX,wEAAwE,EACxE,iBAAiB,EACjB;QACIC,UAAU;QACVT;MACJ,CACJ,CAAC;IACL;EACJ,CACJ,CAAC;AACL,CAAC;AAACU,OAAA,CAAAhB,oBAAA,GAAAA,oBAAA","ignoreList":[]}
|
@@ -1,6 +1,6 @@
|
|
1
|
-
import { AdvancedPublishingWorkflow } from "../../types";
|
2
|
-
import { PageBuilderContextObject } from "@webiny/api-page-builder/graphql/types";
|
3
|
-
import { Security } from "@webiny/api-security/types";
|
1
|
+
import type { AdvancedPublishingWorkflow } from "../../types";
|
2
|
+
import type { PageBuilderContextObject } from "@webiny/api-page-builder/graphql/types";
|
3
|
+
import type { Security } from "@webiny/api-security/types";
|
4
4
|
interface UpdateContentReviewStatusParams {
|
5
5
|
apw: AdvancedPublishingWorkflow;
|
6
6
|
pageBuilder: PageBuilderContextObject;
|
@@ -1,12 +1,9 @@
|
|
1
1
|
"use strict";
|
2
2
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
4
3
|
Object.defineProperty(exports, "__esModule", {
|
5
4
|
value: true
|
6
5
|
});
|
7
6
|
exports.updateContentReviewStatus = void 0;
|
8
|
-
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
|
9
|
-
var _get = _interopRequireDefault(require("lodash/get"));
|
10
7
|
var _types = require("../../types");
|
11
8
|
var _utils = require("../../crud/utils");
|
12
9
|
const updateContentReviewStatus = params => {
|
@@ -18,7 +15,7 @@ const updateContentReviewStatus = params => {
|
|
18
15
|
pageBuilder.onPageAfterPublish.subscribe(async ({
|
19
16
|
page
|
20
17
|
}) => {
|
21
|
-
const contentReviewId =
|
18
|
+
const contentReviewId = page.settings.apw?.contentReviewId;
|
22
19
|
/**
|
23
20
|
* Bail out if there is no "content review" linked.
|
24
21
|
*/
|
@@ -33,16 +30,18 @@ const updateContentReviewStatus = params => {
|
|
33
30
|
if (contentReview.reviewStatus === _types.ApwContentReviewStatus.READY_TO_BE_PUBLISHED) {
|
34
31
|
await apw.contentReview.update(contentReviewId, {
|
35
32
|
reviewStatus: _types.ApwContentReviewStatus.PUBLISHED,
|
36
|
-
content:
|
33
|
+
content: {
|
34
|
+
...contentReview.content,
|
35
|
+
..._utils.INITIAL_CONTENT_REVIEW_CONTENT_SCHEDULE_META,
|
37
36
|
publishedBy: identity.id
|
38
|
-
}
|
37
|
+
}
|
39
38
|
});
|
40
39
|
}
|
41
40
|
});
|
42
41
|
pageBuilder.onPageAfterUnpublish.subscribe(async ({
|
43
42
|
page
|
44
43
|
}) => {
|
45
|
-
const contentReviewId =
|
44
|
+
const contentReviewId = page.settings.apw?.contentReviewId;
|
46
45
|
/**
|
47
46
|
* Bail out if there is no "content review" linked.
|
48
47
|
*/
|
@@ -57,11 +56,15 @@ const updateContentReviewStatus = params => {
|
|
57
56
|
if (contentReview.reviewStatus === _types.ApwContentReviewStatus.PUBLISHED) {
|
58
57
|
await apw.contentReview.update(contentReviewId, {
|
59
58
|
reviewStatus: _types.ApwContentReviewStatus.READY_TO_BE_PUBLISHED,
|
60
|
-
content:
|
59
|
+
content: {
|
60
|
+
...contentReview.content,
|
61
|
+
..._utils.INITIAL_CONTENT_REVIEW_CONTENT_SCHEDULE_META,
|
61
62
|
publishedBy: null
|
62
|
-
}
|
63
|
+
}
|
63
64
|
});
|
64
65
|
}
|
65
66
|
});
|
66
67
|
};
|
67
|
-
exports.updateContentReviewStatus = updateContentReviewStatus;
|
68
|
+
exports.updateContentReviewStatus = updateContentReviewStatus;
|
69
|
+
|
70
|
+
//# sourceMappingURL=updateContentReviewStatus.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["updateContentReviewStatus","params","apw","pageBuilder","security","onPageAfterPublish","subscribe","page","contentReviewId","
|
1
|
+
{"version":3,"names":["_types","require","_utils","updateContentReviewStatus","params","apw","pageBuilder","security","onPageAfterPublish","subscribe","page","contentReviewId","settings","contentReview","get","identity","getIdentity","reviewStatus","ApwContentReviewStatus","READY_TO_BE_PUBLISHED","update","PUBLISHED","content","INITIAL_CONTENT_REVIEW_CONTENT_SCHEDULE_META","publishedBy","id","onPageAfterUnpublish","exports"],"sources":["updateContentReviewStatus.ts"],"sourcesContent":["import type { AdvancedPublishingWorkflow, ApwOnPageBeforePublishTopicParams } from \"~/types\";\nimport { ApwContentReviewStatus } from \"~/types\";\nimport { INITIAL_CONTENT_REVIEW_CONTENT_SCHEDULE_META } from \"~/crud/utils\";\nimport type { PageBuilderContextObject } from \"@webiny/api-page-builder/graphql/types\";\nimport type { Security } from \"@webiny/api-security/types\";\n\ninterface UpdateContentReviewStatusParams {\n apw: AdvancedPublishingWorkflow;\n pageBuilder: PageBuilderContextObject;\n security: Security;\n}\n\nexport const updateContentReviewStatus = (params: UpdateContentReviewStatusParams) => {\n const { apw, pageBuilder, security } = params;\n\n pageBuilder.onPageAfterPublish.subscribe<ApwOnPageBeforePublishTopicParams>(\n async ({ page }) => {\n const contentReviewId = page.settings.apw?.contentReviewId;\n /**\n * Bail out if there is no \"content review\" linked.\n */\n if (!contentReviewId) {\n return;\n }\n\n const contentReview = await apw.contentReview.get(contentReviewId);\n const identity = security.getIdentity();\n /**\n * If content review is \"readyToBePublished set its status as \"published\" after page publish.\n */\n if (contentReview.reviewStatus === ApwContentReviewStatus.READY_TO_BE_PUBLISHED) {\n await apw.contentReview.update(contentReviewId, {\n reviewStatus: ApwContentReviewStatus.PUBLISHED,\n content: {\n ...contentReview.content,\n ...INITIAL_CONTENT_REVIEW_CONTENT_SCHEDULE_META,\n publishedBy: identity.id\n }\n });\n }\n }\n );\n pageBuilder.onPageAfterUnpublish.subscribe<ApwOnPageBeforePublishTopicParams>(\n async ({ page }) => {\n const contentReviewId = page.settings.apw?.contentReviewId;\n /**\n * Bail out if there is no \"content review\" linked.\n */\n if (!contentReviewId) {\n return;\n }\n\n const contentReview = await apw.contentReview.get(contentReviewId);\n /**\n * If content review is \"published set its status as \"readyToBePublished\" after page unpublish.\n */\n\n if (contentReview.reviewStatus === ApwContentReviewStatus.PUBLISHED) {\n await apw.contentReview.update(contentReviewId, {\n reviewStatus: ApwContentReviewStatus.READY_TO_BE_PUBLISHED,\n content: {\n ...contentReview.content,\n ...INITIAL_CONTENT_REVIEW_CONTENT_SCHEDULE_META,\n publishedBy: null\n }\n });\n }\n }\n );\n};\n"],"mappings":";;;;;;AACA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AAUO,MAAME,yBAAyB,GAAIC,MAAuC,IAAK;EAClF,MAAM;IAAEC,GAAG;IAAEC,WAAW;IAAEC;EAAS,CAAC,GAAGH,MAAM;EAE7CE,WAAW,CAACE,kBAAkB,CAACC,SAAS,CACpC,OAAO;IAAEC;EAAK,CAAC,KAAK;IAChB,MAAMC,eAAe,GAAGD,IAAI,CAACE,QAAQ,CAACP,GAAG,EAAEM,eAAe;IAC1D;AACZ;AACA;IACY,IAAI,CAACA,eAAe,EAAE;MAClB;IACJ;IAEA,MAAME,aAAa,GAAG,MAAMR,GAAG,CAACQ,aAAa,CAACC,GAAG,CAACH,eAAe,CAAC;IAClE,MAAMI,QAAQ,GAAGR,QAAQ,CAACS,WAAW,CAAC,CAAC;IACvC;AACZ;AACA;IACY,IAAIH,aAAa,CAACI,YAAY,KAAKC,6BAAsB,CAACC,qBAAqB,EAAE;MAC7E,MAAMd,GAAG,CAACQ,aAAa,CAACO,MAAM,CAACT,eAAe,EAAE;QAC5CM,YAAY,EAAEC,6BAAsB,CAACG,SAAS;QAC9CC,OAAO,EAAE;UACL,GAAGT,aAAa,CAACS,OAAO;UACxB,GAAGC,mDAA4C;UAC/CC,WAAW,EAAET,QAAQ,CAACU;QAC1B;MACJ,CAAC,CAAC;IACN;EACJ,CACJ,CAAC;EACDnB,WAAW,CAACoB,oBAAoB,CAACjB,SAAS,CACtC,OAAO;IAAEC;EAAK,CAAC,KAAK;IAChB,MAAMC,eAAe,GAAGD,IAAI,CAACE,QAAQ,CAACP,GAAG,EAAEM,eAAe;IAC1D;AACZ;AACA;IACY,IAAI,CAACA,eAAe,EAAE;MAClB;IACJ;IAEA,MAAME,aAAa,GAAG,MAAMR,GAAG,CAACQ,aAAa,CAACC,GAAG,CAACH,eAAe,CAAC;IAClE;AACZ;AACA;;IAEY,IAAIE,aAAa,CAACI,YAAY,KAAKC,6BAAsB,CAACG,SAAS,EAAE;MACjE,MAAMhB,GAAG,CAACQ,aAAa,CAACO,MAAM,CAACT,eAAe,EAAE;QAC5CM,YAAY,EAAEC,6BAAsB,CAACC,qBAAqB;QAC1DG,OAAO,EAAE;UACL,GAAGT,aAAa,CAACS,OAAO;UACxB,GAAGC,mDAA4C;UAC/CC,WAAW,EAAE;QACjB;MACJ,CAAC,CAAC;IACN;EACJ,CACJ,CAAC;AACL,CAAC;AAACG,OAAA,CAAAxB,yBAAA,GAAAA,yBAAA","ignoreList":[]}
|
@@ -1,12 +1,12 @@
|
|
1
|
-
import { ApwWorkflow, ApwWorkflowCrud, ApwWorkflowScope, PageWithWorkflow } from "../../types";
|
2
|
-
import { PageBuilderContextObject } from "@webiny/api-page-builder/graphql/types";
|
1
|
+
import type { ApwWorkflow, ApwWorkflowCrud, ApwWorkflowScope, PageWithWorkflow } from "../../types";
|
2
|
+
import type { PageBuilderContextObject } from "@webiny/api-page-builder/graphql/types";
|
3
3
|
interface AssignWorkflowToPageParams {
|
4
4
|
listWorkflow: ApwWorkflowCrud["list"];
|
5
5
|
page: PageWithWorkflow;
|
6
6
|
}
|
7
7
|
export declare const assignWorkflowToPage: ({ listWorkflow, page }: AssignWorkflowToPageParams) => Promise<void>;
|
8
|
-
export declare const hasPages: (workflow: ApwWorkflow) =>
|
9
|
-
export declare const shouldUpdatePages: (scope: ApwWorkflowScope, prevScope: ApwWorkflowScope) =>
|
8
|
+
export declare const hasPages: (workflow: ApwWorkflow) => boolean;
|
9
|
+
export declare const shouldUpdatePages: (scope: ApwWorkflowScope, prevScope: ApwWorkflowScope) => boolean;
|
10
10
|
interface GetUpdatePageOpsResult {
|
11
11
|
addedPages: string[];
|
12
12
|
removedPages: string[];
|
@@ -5,7 +5,6 @@ Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
value: true
|
6
6
|
});
|
7
7
|
exports.updatePageSettings = exports.shouldUpdatePages = exports.hasPages = exports.getPagesDiff = exports.assignWorkflowToPage = void 0;
|
8
|
-
var _get = _interopRequireDefault(require("lodash/get"));
|
9
8
|
var _error = _interopRequireDefault(require("@webiny/error"));
|
10
9
|
var _types = require("../../types");
|
11
10
|
var _utils = require("../utils");
|
@@ -18,11 +17,11 @@ const isWorkflowApplicable = (page, workflow) => {
|
|
18
17
|
if (scopeType === _types.WorkflowScopeTypes.DEFAULT) {
|
19
18
|
return true;
|
20
19
|
} else if (scopeType === _types.WorkflowScopeTypes.CUSTOM) {
|
21
|
-
const categories =
|
20
|
+
const categories = workflow.scope.data?.categories;
|
22
21
|
if (Array.isArray(categories) && categories.includes(page.category)) {
|
23
22
|
return true;
|
24
23
|
}
|
25
|
-
const pages =
|
24
|
+
const pages = workflow.scope.data?.pages;
|
26
25
|
if (Array.isArray(pages) && pages.includes(page.pid)) {
|
27
26
|
return true;
|
28
27
|
}
|
@@ -88,8 +87,8 @@ const shouldUpdatePages = (scope, prevScope) => {
|
|
88
87
|
if (prevScope.type !== _types.WorkflowScopeTypes.CUSTOM) {
|
89
88
|
return true;
|
90
89
|
}
|
91
|
-
const prevScopePages =
|
92
|
-
const currentScopePages =
|
90
|
+
const prevScopePages = prevScope.data.pages || [];
|
91
|
+
const currentScopePages = scope.data.pages || [];
|
93
92
|
/**
|
94
93
|
* Bail out early if there were no pages assigned previously.
|
95
94
|
*/
|
@@ -147,4 +146,6 @@ const updatePageSettings = async ({
|
|
147
146
|
}
|
148
147
|
}
|
149
148
|
};
|
150
|
-
exports.updatePageSettings = updatePageSettings;
|
149
|
+
exports.updatePageSettings = updatePageSettings;
|
150
|
+
|
151
|
+
//# sourceMappingURL=utils.js.map
|