@webiny/api-apw 0.0.0-unstable.99666aeb00 → 0.0.0-unstable.a9593f74dd
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/ApwChangeRequestNotification.js +4 -6
- package/ApwChangeRequestNotification.js.map +1 -1
- package/ApwCommentNotification.js +4 -6
- package/ApwCommentNotification.js.map +1 -1
- package/ApwContentReviewNotification.js +4 -6
- package/ApwContentReviewNotification.js.map +1 -1
- package/ApwContentUrlPlugin.js +4 -6
- package/ApwContentUrlPlugin.js.map +1 -1
- package/ContentApwSettingsPlugin.js +5 -4
- package/ContentApwSettingsPlugin.js.map +1 -1
- package/README.md +3 -3
- package/crud/createChangeRequestMethods.js +3 -1
- package/crud/createChangeRequestMethods.js.map +1 -1
- package/crud/createCommentMethods.js +3 -1
- package/crud/createCommentMethods.js.map +1 -1
- package/crud/createContentReviewMethods.js +40 -29
- package/crud/createContentReviewMethods.js.map +1 -1
- package/crud/createReviewerMethods.js +3 -1
- package/crud/createReviewerMethods.js.map +1 -1
- package/crud/createWorkflowMethods.js +3 -1
- package/crud/createWorkflowMethods.js.map +1 -1
- package/crud/index.js +6 -5
- package/crud/index.js.map +1 -1
- package/crud/utils.js +7 -6
- package/crud/utils.js.map +1 -1
- package/index.d.ts +1 -1
- package/index.js +3 -1
- package/index.js.map +1 -1
- package/package.json +32 -32
- package/plugins/cms/CmsEntryApwSettingsGetterPlugin.js +5 -5
- package/plugins/cms/CmsEntryApwSettingsGetterPlugin.js.map +1 -1
- package/plugins/cms/apwEntryPlugins.js +9 -6
- package/plugins/cms/apwEntryPlugins.js.map +1 -1
- package/plugins/cms/index.js +3 -1
- package/plugins/cms/index.js.map +1 -1
- package/plugins/cms/linkContentReviewToEntry.js +5 -4
- package/plugins/cms/linkContentReviewToEntry.js.map +1 -1
- package/plugins/cms/linkWorkflowToEntry.js +16 -15
- 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.js +6 -5
- package/plugins/cms/triggerContentReview.js.map +1 -1
- package/plugins/cms/updateContentReviewStatus.js +15 -13
- package/plugins/cms/updateContentReviewStatus.js.map +1 -1
- package/plugins/cms/utils.d.ts +3 -2
- package/plugins/cms/utils.js +22 -14
- package/plugins/cms/utils.js.map +1 -1
- package/plugins/context.js +3 -1
- package/plugins/context.js.map +1 -1
- package/plugins/graphql/changeRequest.gql.js +16 -12
- package/plugins/graphql/changeRequest.gql.js.map +1 -1
- package/plugins/graphql/comment.gql.js +41 -35
- package/plugins/graphql/comment.gql.js.map +1 -1
- package/plugins/graphql/contentReview.gql.js +23 -13
- package/plugins/graphql/contentReview.gql.js.map +1 -1
- package/plugins/graphql/reviewer.gql.js +15 -12
- package/plugins/graphql/reviewer.gql.js.map +1 -1
- package/plugins/graphql/utils.d.ts +2 -0
- package/plugins/graphql/utils.js +12 -0
- package/plugins/graphql/utils.js.map +1 -0
- package/plugins/graphql/workflow.gql.js +15 -12
- package/plugins/graphql/workflow.gql.js.map +1 -1
- package/plugins/graphql.js +3 -1
- package/plugins/graphql.js.map +1 -1
- package/plugins/hooks/createReviewerFromIdentity.js +4 -2
- package/plugins/hooks/createReviewerFromIdentity.js.map +1 -1
- package/plugins/hooks/deleteChangeRequestsAfterContentReview.js +3 -1
- package/plugins/hooks/deleteChangeRequestsAfterContentReview.js.map +1 -1
- package/plugins/hooks/deleteCommentsAfterChangeRequest.js +3 -1
- package/plugins/hooks/deleteCommentsAfterChangeRequest.js.map +1 -1
- package/plugins/hooks/index.js +3 -1
- package/plugins/hooks/index.js.map +1 -1
- package/plugins/hooks/initializeContentReviewSteps.js +6 -4
- package/plugins/hooks/initializeContentReviewSteps.js.map +1 -1
- package/plugins/hooks/initializeNotifications.js +3 -1
- package/plugins/hooks/initializeNotifications.js.map +1 -1
- package/plugins/hooks/listContentReviews.js +4 -2
- package/plugins/hooks/listContentReviews.js.map +1 -1
- package/plugins/hooks/notifications/appUrl.js +3 -1
- package/plugins/hooks/notifications/appUrl.js.map +1 -1
- package/plugins/hooks/notifications/changeRequestAfterCreate.js +3 -1
- 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.js +3 -1
- 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.js +4 -2
- 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.js +3 -1
- package/plugins/hooks/notifications/contentUrl.js.map +1 -1
- package/plugins/hooks/notifications/lastChangeRequestNotificationPlugin.js +3 -1
- package/plugins/hooks/notifications/lastChangeRequestNotificationPlugin.js.map +1 -1
- package/plugins/hooks/notifications/lastCommentNotificationPlugin.js +3 -1
- package/plugins/hooks/notifications/lastCommentNotificationPlugin.js.map +1 -1
- package/plugins/hooks/notifications/lastContentReviewNotificationPlugin.js +3 -1
- package/plugins/hooks/notifications/lastContentReviewNotificationPlugin.js.map +1 -1
- package/plugins/hooks/notifications/reviewers.js +3 -1
- package/plugins/hooks/notifications/reviewers.js.map +1 -1
- package/plugins/hooks/notifications/sendChangeRequestNotification.js +3 -1
- package/plugins/hooks/notifications/sendChangeRequestNotification.js.map +1 -1
- package/plugins/hooks/notifications/sendCommentNotification.js +3 -1
- package/plugins/hooks/notifications/sendCommentNotification.js.map +1 -1
- package/plugins/hooks/notifications/sendContentReviewNotification.js +3 -1
- package/plugins/hooks/notifications/sendContentReviewNotification.js.map +1 -1
- package/plugins/hooks/updatePendingChangeRequests.js +8 -6
- package/plugins/hooks/updatePendingChangeRequests.js.map +1 -1
- package/plugins/hooks/updateTotalComments.js +22 -15
- package/plugins/hooks/updateTotalComments.js.map +1 -1
- package/plugins/hooks/validateChangeRequest.js +3 -1
- package/plugins/hooks/validateChangeRequest.js.map +1 -1
- package/plugins/hooks/validateComment.js +3 -1
- package/plugins/hooks/validateComment.js.map +1 -1
- package/plugins/hooks/validateContentReview.js +3 -1
- package/plugins/hooks/validateContentReview.js.map +1 -1
- package/plugins/pageBuilder/PageApwSettingsGetterPlugin.js +5 -5
- package/plugins/pageBuilder/PageApwSettingsGetterPlugin.js.map +1 -1
- package/plugins/pageBuilder/apwContentPagePlugins.js +3 -1
- package/plugins/pageBuilder/apwContentPagePlugins.js.map +1 -1
- package/plugins/pageBuilder/extendPbPageSettingsSchema.js +3 -1
- package/plugins/pageBuilder/extendPbPageSettingsSchema.js.map +1 -1
- package/plugins/pageBuilder/index.js +3 -1
- package/plugins/pageBuilder/index.js.map +1 -1
- package/plugins/pageBuilder/linkContentReviewToPage.js +16 -12
- package/plugins/pageBuilder/linkContentReviewToPage.js.map +1 -1
- package/plugins/pageBuilder/linkWorkflowToPage.js +3 -1
- 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.js +3 -1
- package/plugins/pageBuilder/triggerContentReview.js.map +1 -1
- package/plugins/pageBuilder/updateContentReviewStatus.js +11 -6
- package/plugins/pageBuilder/updateContentReviewStatus.js.map +1 -1
- package/plugins/pageBuilder/utils.d.ts +2 -2
- package/plugins/pageBuilder/utils.js +3 -1
- package/plugins/pageBuilder/utils.js.map +1 -1
- package/plugins/utils.d.ts +1 -1
- package/plugins/utils.js +6 -3
- package/plugins/utils.js.map +1 -1
- package/scheduler/createScheduleActionMethods.js +42 -23
- package/scheduler/createScheduleActionMethods.js.map +1 -1
- package/scheduler/handlers/executeAction/index.d.ts +1 -1
- package/scheduler/handlers/executeAction/index.js +5 -4
- 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.js +6 -7
- package/scheduler/handlers/executeAction/plugins/HeadlessCMSGraphQL.js.map +1 -1
- package/scheduler/handlers/executeAction/plugins/PageBuilderGraphQL.js +4 -7
- package/scheduler/handlers/executeAction/plugins/PageBuilderGraphQL.js.map +1 -1
- package/scheduler/handlers/executeAction/security.js +3 -1
- package/scheduler/handlers/executeAction/security.js.map +1 -1
- package/scheduler/handlers/scheduleAction/index.js +16 -13
- package/scheduler/handlers/scheduleAction/index.js.map +1 -1
- 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 +1 -2
- package/scheduler/handlers/utils.js +6 -7
- package/scheduler/handlers/utils.js.map +1 -1
- package/scheduler/index.js +3 -1
- package/scheduler/index.js.map +1 -1
- package/scheduler/types.d.ts +10 -8
- package/scheduler/types.js +14 -12
- package/scheduler/types.js.map +1 -1
- package/storageOperations/changeRequestStorageOperations.js +44 -11
- package/storageOperations/changeRequestStorageOperations.js.map +1 -1
- package/storageOperations/commentStorageOperations.js +16 -10
- package/storageOperations/commentStorageOperations.js.map +1 -1
- package/storageOperations/contentReviewStorageOperations.d.ts +1 -1
- package/storageOperations/contentReviewStorageOperations.js +19 -11
- package/storageOperations/contentReviewStorageOperations.js.map +1 -1
- package/storageOperations/index.d.ts +1 -7
- 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 +7 -7
- package/storageOperations/models/changeRequest.model.js.map +1 -1
- package/storageOperations/models/comment.model.d.ts +1 -2
- package/storageOperations/models/comment.model.js +7 -7
- package/storageOperations/models/comment.model.js.map +1 -1
- package/storageOperations/models/contentReview.model.d.ts +1 -2
- package/storageOperations/models/contentReview.model.js +13 -11
- package/storageOperations/models/contentReview.model.js.map +1 -1
- package/storageOperations/models/index.js +6 -24
- package/storageOperations/models/index.js.map +1 -1
- package/storageOperations/models/reviewer.model.d.ts +1 -2
- package/storageOperations/models/reviewer.model.js +8 -8
- package/storageOperations/models/reviewer.model.js.map +1 -1
- package/storageOperations/models/utils.js +3 -1
- package/storageOperations/models/utils.js.map +1 -1
- package/storageOperations/models/workflow.model.d.ts +1 -2
- package/storageOperations/models/workflow.model.js +19 -19
- package/storageOperations/models/workflow.model.js.map +1 -1
- package/storageOperations/reviewerStorageOperations.d.ts +1 -1
- package/storageOperations/reviewerStorageOperations.js +19 -11
- package/storageOperations/reviewerStorageOperations.js.map +1 -1
- package/storageOperations/types.js +3 -1
- package/storageOperations/workflowStorageOperations.js +24 -14
- package/storageOperations/workflowStorageOperations.js.map +1 -1
- package/types.d.ts +15 -14
- package/types.js +126 -28
- package/types.js.map +1 -1
- 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.js +7 -7
- package/utils/fieldResolver.js.map +1 -1
- package/utils/pickEntryFieldValues.d.ts +3 -0
- package/utils/pickEntryFieldValues.js +31 -0
- package/utils/pickEntryFieldValues.js.map +1 -0
- package/utils/resolve.js +3 -1
- package/utils/resolve.js.map +1 -1
- package/storageOperations/models/contentModelPluginFactory.d.ts +0 -8
- package/storageOperations/models/contentModelPluginFactory.js +0 -20
- package/storageOperations/models/contentModelPluginFactory.js.map +0 -1
@@ -5,6 +5,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
});
|
6
6
|
exports.createReviewerModelDefinition = exports.REVIEWER_MODEL_ID = void 0;
|
7
7
|
var _utils = require("./utils");
|
8
|
+
var _apiHeadlessCms = require("@webiny/api-headless-cms");
|
8
9
|
const idField = () => (0, _utils.createModelField)({
|
9
10
|
label: "Identity Id",
|
10
11
|
type: "text",
|
@@ -50,14 +51,13 @@ const emailField = () => (0, _utils.createModelField)({
|
|
50
51
|
const REVIEWER_MODEL_ID = "apwReviewerModelDefinition";
|
51
52
|
exports.REVIEWER_MODEL_ID = REVIEWER_MODEL_ID;
|
52
53
|
const createReviewerModelDefinition = () => {
|
53
|
-
return {
|
54
|
+
return (0, _apiHeadlessCms.createPrivateModelDefinition)({
|
54
55
|
name: "APW - Reviewer",
|
55
|
-
modelId: REVIEWER_MODEL_ID,
|
56
56
|
titleFieldId: "displayName",
|
57
|
-
|
58
|
-
fields: [idField(), displayNameField(), typeField(), emailField()]
|
59
|
-
|
60
|
-
isPrivate: true
|
61
|
-
};
|
57
|
+
modelId: REVIEWER_MODEL_ID,
|
58
|
+
fields: [idField(), displayNameField(), typeField(), emailField()]
|
59
|
+
});
|
62
60
|
};
|
63
|
-
exports.createReviewerModelDefinition = createReviewerModelDefinition;
|
61
|
+
exports.createReviewerModelDefinition = createReviewerModelDefinition;
|
62
|
+
|
63
|
+
//# sourceMappingURL=reviewer.model.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["idField","createModelField","label","type","parent","validation","message","name","displayNameField","typeField","emailField","fieldId","settings","preset","regex","flags","REVIEWER_MODEL_ID","createReviewerModelDefinition","
|
1
|
+
{"version":3,"names":["_utils","require","_apiHeadlessCms","idField","createModelField","label","type","parent","validation","message","name","displayNameField","typeField","emailField","fieldId","settings","preset","regex","flags","REVIEWER_MODEL_ID","exports","createReviewerModelDefinition","createPrivateModelDefinition","titleFieldId","modelId","fields"],"sources":["reviewer.model.ts"],"sourcesContent":["import { createModelField } from \"./utils\";\nimport { createPrivateModelDefinition } from \"@webiny/api-headless-cms\";\n\nconst idField = () =>\n createModelField({\n label: \"Identity Id\",\n type: \"text\",\n parent: \"reviewer\",\n validation: [\n {\n message: \"`identityId` field value is required in reviewer.\",\n name: \"required\"\n }\n ]\n });\n\nconst displayNameField = () =>\n createModelField({\n label: \"Display Name\",\n type: \"text\",\n parent: \"reviewer\",\n validation: [\n {\n message: \"`displayName` field value is required in reviewer.\",\n name: \"required\"\n }\n ]\n });\n\nconst typeField = () =>\n createModelField({\n label: \"Type\",\n type: \"text\",\n parent: \"reviewer\",\n validation: [\n {\n message: \"`type` field value is required in reviewer.\",\n name: \"required\"\n }\n ]\n });\n\nconst emailField = () =>\n createModelField({\n label: \"E-mail\",\n fieldId: \"email\",\n type: \"text\",\n parent: \"reviewer\",\n validation: [\n {\n message: \"`email` field value in reviewer accepts only e-mails.\",\n name: \"pattern\",\n settings: {\n preset: \"email\",\n regex: null,\n flags: null\n }\n }\n ]\n });\n\nexport const REVIEWER_MODEL_ID = \"apwReviewerModelDefinition\";\n\nexport const createReviewerModelDefinition = () => {\n return createPrivateModelDefinition({\n name: \"APW - Reviewer\",\n titleFieldId: \"displayName\",\n modelId: REVIEWER_MODEL_ID,\n fields: [idField(), displayNameField(), typeField(), emailField()]\n });\n};\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,eAAA,GAAAD,OAAA;AAEA,MAAME,OAAO,GAAGA,CAAA,KACZ,IAAAC,uBAAgB,EAAC;EACbC,KAAK,EAAE,aAAa;EACpBC,IAAI,EAAE,MAAM;EACZC,MAAM,EAAE,UAAU;EAClBC,UAAU,EAAE,CACR;IACIC,OAAO,EAAE,mDAAmD;IAC5DC,IAAI,EAAE;EACV,CAAC;AAET,CAAC,CAAC;AAEN,MAAMC,gBAAgB,GAAGA,CAAA,KACrB,IAAAP,uBAAgB,EAAC;EACbC,KAAK,EAAE,cAAc;EACrBC,IAAI,EAAE,MAAM;EACZC,MAAM,EAAE,UAAU;EAClBC,UAAU,EAAE,CACR;IACIC,OAAO,EAAE,oDAAoD;IAC7DC,IAAI,EAAE;EACV,CAAC;AAET,CAAC,CAAC;AAEN,MAAME,SAAS,GAAGA,CAAA,KACd,IAAAR,uBAAgB,EAAC;EACbC,KAAK,EAAE,MAAM;EACbC,IAAI,EAAE,MAAM;EACZC,MAAM,EAAE,UAAU;EAClBC,UAAU,EAAE,CACR;IACIC,OAAO,EAAE,6CAA6C;IACtDC,IAAI,EAAE;EACV,CAAC;AAET,CAAC,CAAC;AAEN,MAAMG,UAAU,GAAGA,CAAA,KACf,IAAAT,uBAAgB,EAAC;EACbC,KAAK,EAAE,QAAQ;EACfS,OAAO,EAAE,OAAO;EAChBR,IAAI,EAAE,MAAM;EACZC,MAAM,EAAE,UAAU;EAClBC,UAAU,EAAE,CACR;IACIC,OAAO,EAAE,uDAAuD;IAChEC,IAAI,EAAE,SAAS;IACfK,QAAQ,EAAE;MACNC,MAAM,EAAE,OAAO;MACfC,KAAK,EAAE,IAAI;MACXC,KAAK,EAAE;IACX;EACJ,CAAC;AAET,CAAC,CAAC;AAEC,MAAMC,iBAAiB,GAAG,4BAA4B;AAACC,OAAA,CAAAD,iBAAA,GAAAA,iBAAA;AAEvD,MAAME,6BAA6B,GAAGA,CAAA,KAAM;EAC/C,OAAO,IAAAC,4CAA4B,EAAC;IAChCZ,IAAI,EAAE,gBAAgB;IACtBa,YAAY,EAAE,aAAa;IAC3BC,OAAO,EAAEL,iBAAiB;IAC1BM,MAAM,EAAE,CAACtB,OAAO,CAAC,CAAC,EAAEQ,gBAAgB,CAAC,CAAC,EAAEC,SAAS,CAAC,CAAC,EAAEC,UAAU,CAAC,CAAC;EACrE,CAAC,CAAC;AACN,CAAC;AAACO,OAAA,CAAAC,6BAAA,GAAAA,6BAAA"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["createModelField","params","label","fieldId","initialFieldId","type","parent","camelCase","id","storageId","settings","listValidation","validation","multipleValues","predefinedValues","values","enabled"],"sources":["utils.ts"],"sourcesContent":["import camelCase from \"lodash/camelCase\";\nimport { CmsModelField } from \"@webiny/api-headless-cms/types\";\nimport { CreateModelFieldParams } from \"~/plugins/utils\";\n\nexport const createModelField = (params: CreateModelFieldParams): CmsModelField => {\n const { label, fieldId: initialFieldId, type, parent } = params;\n const fieldId = initialFieldId ? camelCase(initialFieldId) : camelCase(label);\n return {\n id: `${camelCase(parent)}_${fieldId}`,\n storageId: fieldId,\n fieldId,\n label,\n type,\n settings: params.settings || {},\n listValidation: params.listValidation || [],\n validation: params.validation || [],\n multipleValues: params.multipleValues || false,\n predefinedValues: params.predefinedValues || {\n values: [],\n enabled: false\n }\n };\n};\n"],"mappings":";;;;;;;AAAA;AAIO,
|
1
|
+
{"version":3,"names":["_camelCase","_interopRequireDefault","require","createModelField","params","label","fieldId","initialFieldId","type","parent","camelCase","id","storageId","settings","listValidation","validation","multipleValues","predefinedValues","values","enabled","exports"],"sources":["utils.ts"],"sourcesContent":["import camelCase from \"lodash/camelCase\";\nimport { CmsModelField } from \"@webiny/api-headless-cms/types\";\nimport { CreateModelFieldParams } from \"~/plugins/utils\";\n\nexport const createModelField = (params: CreateModelFieldParams): CmsModelField => {\n const { label, fieldId: initialFieldId, type, parent } = params;\n const fieldId = initialFieldId ? camelCase(initialFieldId) : camelCase(label);\n return {\n id: `${camelCase(parent)}_${fieldId}`,\n storageId: fieldId,\n fieldId,\n label,\n type,\n settings: params.settings || {},\n listValidation: params.listValidation || [],\n validation: params.validation || [],\n multipleValues: params.multipleValues || false,\n predefinedValues: params.predefinedValues || {\n values: [],\n enabled: false\n }\n };\n};\n"],"mappings":";;;;;;;AAAA,IAAAA,UAAA,GAAAC,sBAAA,CAAAC,OAAA;AAIO,MAAMC,gBAAgB,GAAIC,MAA8B,IAAoB;EAC/E,MAAM;IAAEC,KAAK;IAAEC,OAAO,EAAEC,cAAc;IAAEC,IAAI;IAAEC;EAAO,CAAC,GAAGL,MAAM;EAC/D,MAAME,OAAO,GAAGC,cAAc,GAAG,IAAAG,kBAAS,EAACH,cAAc,CAAC,GAAG,IAAAG,kBAAS,EAACL,KAAK,CAAC;EAC7E,OAAO;IACHM,EAAE,EAAG,GAAE,IAAAD,kBAAS,EAACD,MAAM,CAAE,IAAGH,OAAQ,EAAC;IACrCM,SAAS,EAAEN,OAAO;IAClBA,OAAO;IACPD,KAAK;IACLG,IAAI;IACJK,QAAQ,EAAET,MAAM,CAACS,QAAQ,IAAI,CAAC,CAAC;IAC/BC,cAAc,EAAEV,MAAM,CAACU,cAAc,IAAI,EAAE;IAC3CC,UAAU,EAAEX,MAAM,CAACW,UAAU,IAAI,EAAE;IACnCC,cAAc,EAAEZ,MAAM,CAACY,cAAc,IAAI,KAAK;IAC9CC,gBAAgB,EAAEb,MAAM,CAACa,gBAAgB,IAAI;MACzCC,MAAM,EAAE,EAAE;MACVC,OAAO,EAAE;IACb;EACJ,CAAC;AACL,CAAC;AAACC,OAAA,CAAAjB,gBAAA,GAAAA,gBAAA"}
|
@@ -1,5 +1,4 @@
|
|
1
1
|
import { CmsModelField } from "@webiny/api-headless-cms/types";
|
2
|
-
import { WorkflowModelDefinition } from "../../types";
|
3
2
|
export declare const stepTitleField: () => CmsModelField;
|
4
3
|
export declare const stepTypeField: () => CmsModelField;
|
5
4
|
export declare const stepIdField: () => CmsModelField;
|
@@ -8,5 +7,5 @@ interface CreateWorkflowModelDefinitionParams {
|
|
8
7
|
reviewerModelId: string;
|
9
8
|
}
|
10
9
|
export declare const WORKFLOW_MODEL_ID = "apwWorkflowModelDefinition";
|
11
|
-
export declare const createWorkflowModelDefinition: ({ reviewerModelId }: CreateWorkflowModelDefinitionParams) =>
|
10
|
+
export declare const createWorkflowModelDefinition: ({ reviewerModelId }: CreateWorkflowModelDefinitionParams) => import("@webiny/api-headless-cms").CmsPrivateModelFull;
|
12
11
|
export {};
|
@@ -4,7 +4,9 @@ Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
5
5
|
});
|
6
6
|
exports.stepTypeField = exports.stepTitleField = exports.stepReviewersField = exports.stepIdField = exports.createWorkflowModelDefinition = exports.WORKFLOW_MODEL_ID = void 0;
|
7
|
+
var _apiHeadlessCms = require("@webiny/api-headless-cms");
|
7
8
|
var _utils = require("./utils");
|
9
|
+
var _types = require("../../types");
|
8
10
|
const titleField = () => (0, _utils.createModelField)({
|
9
11
|
label: "Title",
|
10
12
|
type: "text",
|
@@ -104,14 +106,11 @@ const scopeTypeField = () => (0, _utils.createModelField)({
|
|
104
106
|
predefinedValues: {
|
105
107
|
enabled: true,
|
106
108
|
values: [{
|
107
|
-
value:
|
109
|
+
value: _types.WorkflowScopeTypes.DEFAULT,
|
108
110
|
label: "Default - Catch all scope that applies to all content that's being published."
|
109
111
|
}, {
|
110
|
-
value:
|
111
|
-
label: "
|
112
|
-
}, {
|
113
|
-
value: "cms",
|
114
|
-
label: "Content model (Headless CMS only) - The workflow will apply to all the content inside the specific content models. "
|
112
|
+
value: _types.WorkflowScopeTypes.CUSTOM,
|
113
|
+
label: "Custom - The workflow will be applied to all selected content."
|
115
114
|
}]
|
116
115
|
}
|
117
116
|
});
|
@@ -170,16 +169,17 @@ const WORKFLOW_MODEL_ID = "apwWorkflowModelDefinition";
|
|
170
169
|
exports.WORKFLOW_MODEL_ID = WORKFLOW_MODEL_ID;
|
171
170
|
const createWorkflowModelDefinition = ({
|
172
171
|
reviewerModelId
|
173
|
-
}) =>
|
174
|
-
|
175
|
-
|
176
|
-
|
177
|
-
|
178
|
-
|
179
|
-
|
180
|
-
|
181
|
-
|
182
|
-
|
183
|
-
|
184
|
-
|
185
|
-
|
172
|
+
}) => {
|
173
|
+
return (0, _apiHeadlessCms.createPrivateModelDefinition)({
|
174
|
+
name: "APW - Workflow",
|
175
|
+
/**
|
176
|
+
* Id of the model cannot be appWorkflow because it clashes with the GraphQL types for APW.
|
177
|
+
*/
|
178
|
+
modelId: WORKFLOW_MODEL_ID,
|
179
|
+
titleFieldId: "title",
|
180
|
+
fields: [titleField(), stepsField([stepTitleField(), stepTypeField(), stepIdField(), stepReviewersField(reviewerModelId)]), scopeField([scopeTypeField(), scopeDataField([scopeDataPbCategories(), scopeDataPbPages(), scopeDataCmsModels(), scopeDataCmsEntries()])]), applicationField()]
|
181
|
+
});
|
182
|
+
};
|
183
|
+
exports.createWorkflowModelDefinition = createWorkflowModelDefinition;
|
184
|
+
|
185
|
+
//# sourceMappingURL=workflow.model.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["titleField","createModelField","label","type","parent","validation","message","name","stepsField","fields","settings","multipleValues","stepTitleField","stepTypeField","predefinedValues","enabled","values","value","stepIdField","stepReviewersField","reviewerModelId","models","modelId","listValidation","scopeField","scopeTypeField","scopeDataField","scopeDataPbCategories","scopeDataPbPages","scopeDataCmsModels","scopeDataCmsEntries","applicationField","WORKFLOW_MODEL_ID","createWorkflowModelDefinition","layout","titleFieldId","description","isPrivate"],"sources":["workflow.model.ts"],"sourcesContent":["import { createModelField } from \"./utils\";\nimport { CmsModelField } from \"@webiny/api-headless-cms/types\";\nimport { WorkflowModelDefinition } from \"~/types\";\n\nconst titleField = () =>\n createModelField({\n label: \"Title\",\n type: \"text\",\n parent: \"workflow\",\n validation: [\n {\n message: \"`title` field value is required in workflow.\",\n name: \"required\"\n }\n ]\n });\n\nconst stepsField = (fields: CmsModelField[]) =>\n createModelField({\n label: \"Steps\",\n type: \"object\",\n parent: \"workflow\",\n settings: {\n fields\n },\n multipleValues: true\n });\n\nexport const stepTitleField = () =>\n createModelField({\n label: \"Title\",\n type: \"text\",\n parent: \"workflow steps\",\n validation: [\n {\n message: \"`title` field value is required in workflow steps.\",\n name: \"required\"\n }\n ]\n });\n\nexport const stepTypeField = () =>\n createModelField({\n label: \"Type\",\n type: \"text\",\n parent: \"workflow steps\",\n predefinedValues: {\n enabled: true,\n values: [\n {\n value: \"mandatoryBlocking\",\n label: \"Mandatory, blocking - An approval from a reviewer is required before being able to move to the next step and publish the content. \"\n },\n {\n value: \"mandatoryNonBlocking\",\n label: \"Mandatory, non-blocking - An approval from a reviewer is to publish the content, but the next step in the review workflow is not blocked. \"\n },\n {\n value: \"notMandatory\",\n label: \"Not mandatory - This is an optional review step. The content can be published regardless if an approval is provided or not.\"\n }\n ]\n },\n validation: [\n {\n name: \"required\",\n message: \"`type` field value is required in workflow steps.\"\n }\n ]\n });\n\nexport const stepIdField = () =>\n createModelField({\n label: \"Id\",\n type: \"text\",\n parent: \"workflow steps\",\n validation: [\n {\n message: \"`id` field value is required in workflow steps.\",\n name: \"required\"\n }\n ]\n });\n\nexport const stepReviewersField = (reviewerModelId: string) =>\n createModelField({\n label: \"Reviewers\",\n type: \"ref\",\n parent: \"workflow steps\",\n multipleValues: true,\n settings: {\n models: [\n {\n modelId: reviewerModelId\n }\n ]\n },\n listValidation: [\n {\n name: \"minLength\",\n message: \"Value is too short.\",\n settings: {\n value: \"1\"\n }\n }\n ]\n });\n\nconst scopeField = (fields: CmsModelField[]) =>\n createModelField({\n type: \"object\",\n label: \"Scope\",\n parent: \"workflow\",\n settings: {\n fields\n }\n });\n\nconst scopeTypeField = () =>\n createModelField({\n label: \"Type\",\n parent: \"workflow scope\",\n type: \"text\",\n validation: [\n {\n message: \"`type` field value is required in workflow scope.\",\n name: \"required\"\n }\n ],\n predefinedValues: {\n enabled: true,\n values: [\n {\n value: \"default\",\n label: \"Default - Catch all scope that applies to all content that's being published.\"\n },\n {\n value: \"pageBuilder\",\n label: \"Page category (Page Builder only) - The workflow will apply to all pages inside specific categories.\"\n },\n {\n value: \"cms\",\n label: \"Content model (Headless CMS only) - The workflow will apply to all the content inside the specific content models. \"\n }\n ]\n }\n });\n\nconst scopeDataField = (fields: CmsModelField[]) =>\n createModelField({\n label: \"Data\",\n parent: \"workflow scope\",\n type: \"object\",\n settings: {\n fields\n }\n });\n\nconst scopeDataPbCategories = () =>\n createModelField({\n label: \"Categories\",\n parent: \"workflow scope data\",\n type: \"text\",\n multipleValues: true\n });\nconst scopeDataPbPages = () =>\n createModelField({\n label: \"Pages\",\n parent: \"workflow scope data\",\n type: \"text\",\n multipleValues: true\n });\nconst scopeDataCmsModels = () =>\n createModelField({\n label: \"Models\",\n parent: \"workflow scope data\",\n type: \"text\",\n multipleValues: true\n });\nconst scopeDataCmsEntries = () =>\n createModelField({\n label: \"Entries\",\n parent: \"workflow scope data\",\n type: \"text\",\n multipleValues: true\n });\n\nconst applicationField = () =>\n createModelField({\n parent: \"workflow\",\n type: \"text\",\n label: \"App\",\n validation: [\n {\n message: \"`app` field value is required in workflow.\",\n name: \"required\"\n }\n ],\n predefinedValues: {\n enabled: true,\n values: [\n { label: \"Page Builder\", value: \"pageBuilder\" },\n { label: \"Headless CMS\", value: \"cms\" }\n ]\n }\n });\n\ninterface CreateWorkflowModelDefinitionParams {\n reviewerModelId: string;\n}\n\nexport const WORKFLOW_MODEL_ID = \"apwWorkflowModelDefinition\";\n\nexport const createWorkflowModelDefinition = ({\n reviewerModelId\n}: CreateWorkflowModelDefinitionParams): WorkflowModelDefinition => ({\n name: \"APW - Workflow\",\n /**\n * Id of the model cannot be appWorkflow because it clashes with the GraphQL types for APW.\n */\n modelId: WORKFLOW_MODEL_ID,\n layout: [[\"workflow_title\"], [\"workflow_steps\"], [\"workflow_scope\"], [\"workflow_app\"]],\n titleFieldId: \"title\",\n description: \"\",\n fields: [\n titleField(),\n stepsField([\n stepTitleField(),\n stepTypeField(),\n stepIdField(),\n stepReviewersField(reviewerModelId)\n ]),\n scopeField([\n scopeTypeField(),\n scopeDataField([\n scopeDataPbCategories(),\n scopeDataPbPages(),\n scopeDataCmsModels(),\n scopeDataCmsEntries()\n ])\n ]),\n applicationField()\n ],\n isPrivate: true\n});\n"],"mappings":"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"}
|
1
|
+
{"version":3,"names":["_apiHeadlessCms","require","_utils","_types","titleField","createModelField","label","type","parent","validation","message","name","stepsField","fields","settings","multipleValues","stepTitleField","exports","stepTypeField","predefinedValues","enabled","values","value","stepIdField","stepReviewersField","reviewerModelId","models","modelId","listValidation","scopeField","scopeTypeField","WorkflowScopeTypes","DEFAULT","CUSTOM","scopeDataField","scopeDataPbCategories","scopeDataPbPages","scopeDataCmsModels","scopeDataCmsEntries","applicationField","WORKFLOW_MODEL_ID","createWorkflowModelDefinition","createPrivateModelDefinition","titleFieldId"],"sources":["workflow.model.ts"],"sourcesContent":["import { createPrivateModelDefinition } from \"@webiny/api-headless-cms\";\nimport { CmsModelField } from \"@webiny/api-headless-cms/types\";\nimport { createModelField } from \"./utils\";\nimport { WorkflowScopeTypes } from \"~/types\";\n\nconst titleField = () =>\n createModelField({\n label: \"Title\",\n type: \"text\",\n parent: \"workflow\",\n validation: [\n {\n message: \"`title` field value is required in workflow.\",\n name: \"required\"\n }\n ]\n });\n\nconst stepsField = (fields: CmsModelField[]) =>\n createModelField({\n label: \"Steps\",\n type: \"object\",\n parent: \"workflow\",\n settings: {\n fields\n },\n multipleValues: true\n });\n\nexport const stepTitleField = () =>\n createModelField({\n label: \"Title\",\n type: \"text\",\n parent: \"workflow steps\",\n validation: [\n {\n message: \"`title` field value is required in workflow steps.\",\n name: \"required\"\n }\n ]\n });\n\nexport const stepTypeField = () =>\n createModelField({\n label: \"Type\",\n type: \"text\",\n parent: \"workflow steps\",\n predefinedValues: {\n enabled: true,\n values: [\n {\n value: \"mandatoryBlocking\",\n label: \"Mandatory, blocking - An approval from a reviewer is required before being able to move to the next step and publish the content. \"\n },\n {\n value: \"mandatoryNonBlocking\",\n label: \"Mandatory, non-blocking - An approval from a reviewer is to publish the content, but the next step in the review workflow is not blocked. \"\n },\n {\n value: \"notMandatory\",\n label: \"Not mandatory - This is an optional review step. The content can be published regardless if an approval is provided or not.\"\n }\n ]\n },\n validation: [\n {\n name: \"required\",\n message: \"`type` field value is required in workflow steps.\"\n }\n ]\n });\n\nexport const stepIdField = () =>\n createModelField({\n label: \"Id\",\n type: \"text\",\n parent: \"workflow steps\",\n validation: [\n {\n message: \"`id` field value is required in workflow steps.\",\n name: \"required\"\n }\n ]\n });\n\nexport const stepReviewersField = (reviewerModelId: string) =>\n createModelField({\n label: \"Reviewers\",\n type: \"ref\",\n parent: \"workflow steps\",\n multipleValues: true,\n settings: {\n models: [\n {\n modelId: reviewerModelId\n }\n ]\n },\n listValidation: [\n {\n name: \"minLength\",\n message: \"Value is too short.\",\n settings: {\n value: \"1\"\n }\n }\n ]\n });\n\nconst scopeField = (fields: CmsModelField[]) =>\n createModelField({\n type: \"object\",\n label: \"Scope\",\n parent: \"workflow\",\n settings: {\n fields\n }\n });\n\nconst scopeTypeField = () =>\n createModelField({\n label: \"Type\",\n parent: \"workflow scope\",\n type: \"text\",\n validation: [\n {\n message: \"`type` field value is required in workflow scope.\",\n name: \"required\"\n }\n ],\n predefinedValues: {\n enabled: true,\n values: [\n {\n value: WorkflowScopeTypes.DEFAULT,\n label: \"Default - Catch all scope that applies to all content that's being published.\"\n },\n {\n value: WorkflowScopeTypes.CUSTOM,\n label: \"Custom - The workflow will be applied to all selected content.\"\n }\n ]\n }\n });\n\nconst scopeDataField = (fields: CmsModelField[]) =>\n createModelField({\n label: \"Data\",\n parent: \"workflow scope\",\n type: \"object\",\n settings: {\n fields\n }\n });\n\nconst scopeDataPbCategories = () =>\n createModelField({\n label: \"Categories\",\n parent: \"workflow scope data\",\n type: \"text\",\n multipleValues: true\n });\nconst scopeDataPbPages = () =>\n createModelField({\n label: \"Pages\",\n parent: \"workflow scope data\",\n type: \"text\",\n multipleValues: true\n });\nconst scopeDataCmsModels = () =>\n createModelField({\n label: \"Models\",\n parent: \"workflow scope data\",\n type: \"text\",\n multipleValues: true\n });\nconst scopeDataCmsEntries = () =>\n createModelField({\n label: \"Entries\",\n parent: \"workflow scope data\",\n type: \"text\",\n multipleValues: true\n });\n\nconst applicationField = () =>\n createModelField({\n parent: \"workflow\",\n type: \"text\",\n label: \"App\",\n validation: [\n {\n message: \"`app` field value is required in workflow.\",\n name: \"required\"\n }\n ],\n predefinedValues: {\n enabled: true,\n values: [\n { label: \"Page Builder\", value: \"pageBuilder\" },\n { label: \"Headless CMS\", value: \"cms\" }\n ]\n }\n });\n\ninterface CreateWorkflowModelDefinitionParams {\n reviewerModelId: string;\n}\n\nexport const WORKFLOW_MODEL_ID = \"apwWorkflowModelDefinition\";\n\nexport const createWorkflowModelDefinition = ({\n reviewerModelId\n}: CreateWorkflowModelDefinitionParams) => {\n return createPrivateModelDefinition({\n name: \"APW - Workflow\",\n /**\n * Id of the model cannot be appWorkflow because it clashes with the GraphQL types for APW.\n */\n modelId: WORKFLOW_MODEL_ID,\n titleFieldId: \"title\",\n fields: [\n titleField(),\n stepsField([\n stepTitleField(),\n stepTypeField(),\n stepIdField(),\n stepReviewersField(reviewerModelId)\n ]),\n scopeField([\n scopeTypeField(),\n scopeDataField([\n scopeDataPbCategories(),\n scopeDataPbPages(),\n scopeDataCmsModels(),\n scopeDataCmsEntries()\n ])\n ]),\n applicationField()\n ]\n });\n};\n"],"mappings":"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"}
|
@@ -1,3 +1,3 @@
|
|
1
1
|
import { ApwReviewerStorageOperations } from "./types";
|
2
|
-
import { CreateApwStorageOperationsParams } from "
|
2
|
+
import { CreateApwStorageOperationsParams } from ".";
|
3
3
|
export declare const createReviewerStorageOperations: ({ cms, security }: CreateApwStorageOperationsParams) => ApwReviewerStorageOperations;
|
@@ -5,8 +5,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
value: true
|
6
6
|
});
|
7
7
|
exports.createReviewerStorageOperations = void 0;
|
8
|
-
var
|
9
|
-
var _index = require("./index");
|
8
|
+
var _pickEntryFieldValues = require("../utils/pickEntryFieldValues");
|
10
9
|
var _error = _interopRequireDefault(require("@webiny/error"));
|
11
10
|
const createReviewerStorageOperations = ({
|
12
11
|
cms,
|
@@ -28,7 +27,7 @@ const createReviewerStorageOperations = ({
|
|
28
27
|
const entry = await security.withoutAuthorization(async () => {
|
29
28
|
return cms.getEntryById(model, id);
|
30
29
|
});
|
31
|
-
return (0,
|
30
|
+
return (0, _pickEntryFieldValues.pickEntryFieldValues)(entry);
|
32
31
|
};
|
33
32
|
return {
|
34
33
|
getReviewerModel,
|
@@ -36,18 +35,21 @@ const createReviewerStorageOperations = ({
|
|
36
35
|
async listReviewers(params) {
|
37
36
|
const model = await getReviewerModel();
|
38
37
|
const [entries, meta] = await security.withoutAuthorization(async () => {
|
39
|
-
return cms.listLatestEntries(model,
|
40
|
-
|
41
|
-
|
38
|
+
return cms.listLatestEntries(model, {
|
39
|
+
...params,
|
40
|
+
where: {
|
41
|
+
...params.where
|
42
|
+
}
|
43
|
+
});
|
42
44
|
});
|
43
|
-
return [entries.map(
|
45
|
+
return [entries.map(_pickEntryFieldValues.pickEntryFieldValues), meta];
|
44
46
|
},
|
45
47
|
async createReviewer(params) {
|
46
48
|
const model = await getReviewerModel();
|
47
49
|
const entry = await security.withoutAuthorization(async () => {
|
48
50
|
return cms.createEntry(model, params.data);
|
49
51
|
});
|
50
|
-
return (0,
|
52
|
+
return (0, _pickEntryFieldValues.pickEntryFieldValues)(entry);
|
51
53
|
},
|
52
54
|
async updateReviewer(params) {
|
53
55
|
const model = await getReviewerModel();
|
@@ -59,9 +61,13 @@ const createReviewerStorageOperations = ({
|
|
59
61
|
id: params.id
|
60
62
|
});
|
61
63
|
const entry = await security.withoutAuthorization(async () => {
|
62
|
-
return cms.updateEntry(model, params.id,
|
64
|
+
return cms.updateEntry(model, params.id, {
|
65
|
+
...existingEntry,
|
66
|
+
...params.data,
|
67
|
+
savedOn: new Date()
|
68
|
+
});
|
63
69
|
});
|
64
|
-
return (0,
|
70
|
+
return (0, _pickEntryFieldValues.pickEntryFieldValues)(entry);
|
65
71
|
},
|
66
72
|
async deleteReviewer(params) {
|
67
73
|
const model = await getReviewerModel();
|
@@ -72,4 +78,6 @@ const createReviewerStorageOperations = ({
|
|
72
78
|
}
|
73
79
|
};
|
74
80
|
};
|
75
|
-
exports.createReviewerStorageOperations = createReviewerStorageOperations;
|
81
|
+
exports.createReviewerStorageOperations = createReviewerStorageOperations;
|
82
|
+
|
83
|
+
//# sourceMappingURL=reviewerStorageOperations.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["createReviewerStorageOperations","cms","security","getReviewerModel","model","withoutAuthorization","getModel","WebinyError","getReviewer","id","entry","getEntryById","
|
1
|
+
{"version":3,"names":["_pickEntryFieldValues","require","_error","_interopRequireDefault","createReviewerStorageOperations","cms","security","getReviewerModel","model","withoutAuthorization","getModel","WebinyError","getReviewer","id","entry","getEntryById","pickEntryFieldValues","listReviewers","params","entries","meta","listLatestEntries","where","map","createReviewer","createEntry","data","updateReviewer","existingEntry","updateEntry","savedOn","Date","deleteReviewer","deleteEntry","exports"],"sources":["reviewerStorageOperations.ts"],"sourcesContent":["import { ApwReviewerStorageOperations } from \"./types\";\nimport { CreateApwStorageOperationsParams } from \"~/storageOperations\";\nimport { pickEntryFieldValues } from \"~/utils/pickEntryFieldValues\";\nimport WebinyError from \"@webiny/error\";\nimport { ApwReviewer } from \"~/types\";\n\nexport const createReviewerStorageOperations = ({\n cms,\n security\n}: CreateApwStorageOperationsParams): ApwReviewerStorageOperations => {\n const getReviewerModel = async () => {\n const model = await security.withoutAuthorization(async () => {\n return cms.getModel(\"apwReviewerModelDefinition\");\n });\n if (!model) {\n throw new WebinyError(\n \"Could not find `apwReviewerModelDefinition` model.\",\n \"MODEL_NOT_FOUND_ERROR\"\n );\n }\n return model;\n };\n const getReviewer: ApwReviewerStorageOperations[\"getReviewer\"] = async ({ id }) => {\n const model = await getReviewerModel();\n\n const entry = await security.withoutAuthorization(async () => {\n return cms.getEntryById(model, id);\n });\n return pickEntryFieldValues(entry);\n };\n return {\n getReviewerModel,\n getReviewer,\n async listReviewers(params) {\n const model = await getReviewerModel();\n\n const [entries, meta] = await security.withoutAuthorization(async () => {\n return cms.listLatestEntries(model, {\n ...params,\n where: {\n ...params.where\n }\n });\n });\n return [entries.map(pickEntryFieldValues<ApwReviewer>), meta];\n },\n async createReviewer(params) {\n const model = await getReviewerModel();\n const entry = await security.withoutAuthorization(async () => {\n return cms.createEntry(model, params.data);\n });\n return pickEntryFieldValues(entry);\n },\n async updateReviewer(params) {\n const model = await getReviewerModel();\n /**\n * We're fetching the existing entry here because we're not accepting \"app\" field as input,\n * but, we still need to retain its value after the \"update\" operation.\n */\n const existingEntry = await getReviewer({ id: params.id });\n\n const entry = await security.withoutAuthorization(async () => {\n return cms.updateEntry(model, params.id, {\n ...existingEntry,\n ...params.data,\n savedOn: new Date()\n });\n });\n return pickEntryFieldValues(entry);\n },\n async deleteReviewer(params) {\n const model = await getReviewerModel();\n\n await security.withoutAuthorization(async () => {\n return cms.deleteEntry(model, params.id);\n });\n return true;\n }\n };\n};\n"],"mappings":"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"}
|
@@ -5,19 +5,20 @@ Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
value: true
|
6
6
|
});
|
7
7
|
exports.createWorkflowStorageOperations = void 0;
|
8
|
-
var
|
9
|
-
var _index = require("./index");
|
8
|
+
var _pickEntryFieldValues = require("../utils/pickEntryFieldValues");
|
10
9
|
var _error = _interopRequireDefault(require("@webiny/error"));
|
11
10
|
var _workflow = require("./models/workflow.model");
|
12
11
|
const formatReviewersForRefInput = (data, modelId) => {
|
13
|
-
return
|
14
|
-
|
12
|
+
return {
|
13
|
+
...data,
|
14
|
+
steps: data.steps.map(step => ({
|
15
|
+
...step,
|
15
16
|
reviewers: step.reviewers.map(id => ({
|
16
17
|
id,
|
17
18
|
modelId
|
18
19
|
}))
|
19
20
|
}))
|
20
|
-
}
|
21
|
+
};
|
21
22
|
};
|
22
23
|
const createWorkflowStorageOperations = params => {
|
23
24
|
const {
|
@@ -40,7 +41,7 @@ const createWorkflowStorageOperations = params => {
|
|
40
41
|
const entry = await security.withoutAuthorization(async () => {
|
41
42
|
return cms.getEntryById(model, id);
|
42
43
|
});
|
43
|
-
return (0,
|
44
|
+
return (0, _pickEntryFieldValues.pickEntryFieldValues)(entry);
|
44
45
|
};
|
45
46
|
return {
|
46
47
|
getWorkflowModel,
|
@@ -48,11 +49,14 @@ const createWorkflowStorageOperations = params => {
|
|
48
49
|
async listWorkflows(params) {
|
49
50
|
const model = await getWorkflowModel();
|
50
51
|
const [entries, meta] = await security.withoutAuthorization(async () => {
|
51
|
-
return cms.listLatestEntries(model,
|
52
|
-
|
53
|
-
|
52
|
+
return cms.listLatestEntries(model, {
|
53
|
+
...params,
|
54
|
+
where: {
|
55
|
+
...params.where
|
56
|
+
}
|
57
|
+
});
|
54
58
|
});
|
55
|
-
return [entries.map(
|
59
|
+
return [entries.map(_pickEntryFieldValues.pickEntryFieldValues), meta];
|
56
60
|
},
|
57
61
|
async createWorkflow(params) {
|
58
62
|
const model = await getWorkflowModel();
|
@@ -61,7 +65,7 @@ const createWorkflowStorageOperations = params => {
|
|
61
65
|
const entry = await security.withoutAuthorization(async () => {
|
62
66
|
return cms.createEntry(model, data);
|
63
67
|
});
|
64
|
-
return (0,
|
68
|
+
return (0, _pickEntryFieldValues.pickEntryFieldValues)(entry);
|
65
69
|
},
|
66
70
|
async updateWorkflow(params) {
|
67
71
|
const model = await getWorkflowModel();
|
@@ -73,12 +77,16 @@ const createWorkflowStorageOperations = params => {
|
|
73
77
|
const existingEntry = await getWorkflow({
|
74
78
|
id: params.id
|
75
79
|
});
|
76
|
-
const input =
|
80
|
+
const input = {
|
81
|
+
...existingEntry,
|
82
|
+
...params.data,
|
83
|
+
savedOn: new Date()
|
84
|
+
};
|
77
85
|
const data = formatReviewersForRefInput(input, reviewerModel.modelId);
|
78
86
|
const entry = await security.withoutAuthorization(async () => {
|
79
87
|
return cms.updateEntry(model, params.id, data);
|
80
88
|
});
|
81
|
-
return (0,
|
89
|
+
return (0, _pickEntryFieldValues.pickEntryFieldValues)(entry);
|
82
90
|
},
|
83
91
|
async deleteWorkflow(params) {
|
84
92
|
const model = await getWorkflowModel();
|
@@ -89,4 +97,6 @@ const createWorkflowStorageOperations = params => {
|
|
89
97
|
}
|
90
98
|
};
|
91
99
|
};
|
92
|
-
exports.createWorkflowStorageOperations = createWorkflowStorageOperations;
|
100
|
+
exports.createWorkflowStorageOperations = createWorkflowStorageOperations;
|
101
|
+
|
102
|
+
//# sourceMappingURL=workflowStorageOperations.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["formatReviewersForRefInput","data","modelId","steps","map","step","reviewers","id","createWorkflowStorageOperations","params","cms","security","getWorkflowModel","model","withoutAuthorization","getModel","WORKFLOW_MODEL_ID","WebinyError","getWorkflow","entry","getEntryById","
|
1
|
+
{"version":3,"names":["_pickEntryFieldValues","require","_error","_interopRequireDefault","_workflow","formatReviewersForRefInput","data","modelId","steps","map","step","reviewers","id","createWorkflowStorageOperations","params","cms","security","getWorkflowModel","model","withoutAuthorization","getModel","WORKFLOW_MODEL_ID","WebinyError","getWorkflow","entry","getEntryById","pickEntryFieldValues","listWorkflows","entries","meta","listLatestEntries","where","createWorkflow","reviewerModel","getReviewerModel","createEntry","updateWorkflow","existingEntry","input","savedOn","Date","updateEntry","deleteWorkflow","deleteEntry","exports"],"sources":["workflowStorageOperations.ts"],"sourcesContent":["import { ApwWorkflow, CreateApwWorkflowParams } from \"~/types\";\nimport { ApwStorageOperations, ApwWorkflowStorageOperations } from \"./types\";\nimport { CreateApwStorageOperationsParams } from \"~/storageOperations/index\";\nimport { pickEntryFieldValues } from \"~/utils/pickEntryFieldValues\";\nimport WebinyError from \"@webiny/error\";\nimport { WORKFLOW_MODEL_ID } from \"~/storageOperations/models/workflow.model\";\n\ntype ReviewersRefInput = CreateApwWorkflowParams<{ modelId: string; id: string }>;\n\nconst formatReviewersForRefInput = (\n data: CreateApwWorkflowParams,\n modelId: string\n): ReviewersRefInput => {\n return {\n ...data,\n steps: data.steps.map(step => ({\n ...step,\n reviewers: step.reviewers.map(id => ({\n id,\n modelId\n }))\n }))\n };\n};\n\nexport const createWorkflowStorageOperations = (\n params: CreateApwStorageOperationsParams\n): ApwWorkflowStorageOperations => {\n const { cms, security } = params;\n const getWorkflowModel = async () => {\n const model = await security.withoutAuthorization(async () => {\n return cms.getModel(WORKFLOW_MODEL_ID);\n });\n if (!model) {\n throw new WebinyError(\n `Could not find \"${WORKFLOW_MODEL_ID}\" model.`,\n \"MODEL_NOT_FOUND_ERROR\"\n );\n }\n return model;\n };\n const getWorkflow: ApwWorkflowStorageOperations[\"getWorkflow\"] = async ({ id }) => {\n const model = await getWorkflowModel();\n const entry = await security.withoutAuthorization(async () => {\n return cms.getEntryById(model, id);\n });\n return pickEntryFieldValues(entry);\n };\n return {\n getWorkflowModel,\n getWorkflow,\n async listWorkflows(params) {\n const model = await getWorkflowModel();\n\n const [entries, meta] = await security.withoutAuthorization(async () => {\n return cms.listLatestEntries(model, {\n ...params,\n where: {\n ...params.where\n }\n });\n });\n return [entries.map(pickEntryFieldValues<ApwWorkflow>), meta];\n },\n async createWorkflow(this: ApwStorageOperations, params) {\n const model = await getWorkflowModel();\n const reviewerModel = await this.getReviewerModel();\n\n const data = formatReviewersForRefInput(params.data, reviewerModel.modelId);\n\n const entry = await security.withoutAuthorization(async () => {\n return cms.createEntry(model, data);\n });\n\n return pickEntryFieldValues(entry);\n },\n async updateWorkflow(this: ApwStorageOperations, params) {\n const model = await getWorkflowModel();\n const reviewerModel = await this.getReviewerModel();\n /**\n * We're fetching the existing entry here because we're not accepting \"app\" field as input,\n * but, we still need to retain its value after the \"update\" operation.\n */\n const existingEntry = await getWorkflow({ id: params.id });\n const input = {\n ...existingEntry,\n ...params.data,\n savedOn: new Date()\n };\n const data = formatReviewersForRefInput(\n input as CreateApwWorkflowParams,\n reviewerModel.modelId\n );\n\n const entry = await security.withoutAuthorization(async () => {\n return cms.updateEntry(model, params.id, data);\n });\n\n return pickEntryFieldValues(entry);\n },\n async deleteWorkflow(params) {\n const model = await getWorkflowModel();\n\n await security.withoutAuthorization(async () => {\n return cms.deleteEntry(model, params.id);\n });\n return true;\n }\n };\n};\n"],"mappings":"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"}
|
package/types.d.ts
CHANGED
@@ -12,7 +12,6 @@ import { PluginsContainer } from "@webiny/plugins";
|
|
12
12
|
import { WcpContextObject } from "@webiny/api-wcp/types";
|
13
13
|
import { MailerContext } from "@webiny/api-mailer/types";
|
14
14
|
import { AdminSettingsContext } from "@webiny/api-admin-settings/types";
|
15
|
-
import { CmsPrivateModelFull } from "@webiny/api-headless-cms";
|
16
15
|
export interface ApwCmsEntry extends BaseCmsEntry {
|
17
16
|
title: string;
|
18
17
|
meta: {
|
@@ -118,8 +117,11 @@ export interface ApwBaseFields {
|
|
118
117
|
id: string;
|
119
118
|
entryId: string;
|
120
119
|
createdOn: string;
|
120
|
+
modifiedOn: string | null;
|
121
121
|
savedOn: string;
|
122
122
|
createdBy: ApwIdentity;
|
123
|
+
modifiedBy: ApwIdentity;
|
124
|
+
savedBy: ApwIdentity;
|
123
125
|
}
|
124
126
|
export interface ApwReviewer extends ApwBaseFields {
|
125
127
|
identityId: string;
|
@@ -281,7 +283,7 @@ interface BaseApwCrud<TEntry, TCreateEntryParams, TUpdateEntryParams> {
|
|
281
283
|
get(id: string): Promise<TEntry>;
|
282
284
|
create(data: TCreateEntryParams): Promise<TEntry>;
|
283
285
|
update(id: string, data: TUpdateEntryParams): Promise<TEntry>;
|
284
|
-
delete(id: string): Promise<
|
286
|
+
delete(id: string): Promise<boolean>;
|
285
287
|
}
|
286
288
|
export interface ApwWorkflowCrud extends BaseApwCrud<ApwWorkflow, CreateApwWorkflowParams, UpdateApwWorkflowParams> {
|
287
289
|
list(params?: ListWorkflowsParams): Promise<[ApwWorkflow[], ListMeta]>;
|
@@ -350,14 +352,14 @@ export interface ApwChangeRequestCrud extends BaseApwCrud<ApwChangeRequest, Crea
|
|
350
352
|
}
|
351
353
|
export interface ApwContentReviewCrud extends BaseApwCrud<ApwContentReview, CreateApwContentReviewParams, UpdateApwContentReviewParams> {
|
352
354
|
list(params: ApwContentReviewListParams): Promise<[ApwContentReview[], ListMeta]>;
|
353
|
-
provideSignOff(id: string, step: string): Promise<
|
354
|
-
retractSignOff(id: string, step: string): Promise<
|
355
|
+
provideSignOff(id: string, step: string): Promise<boolean>;
|
356
|
+
retractSignOff(id: string, step: string): Promise<boolean>;
|
355
357
|
isReviewRequired(data: ApwContentReviewContent): Promise<{
|
356
358
|
isReviewRequired: boolean;
|
357
359
|
contentReviewId?: string | null;
|
358
360
|
}>;
|
359
|
-
publishContent(id: string, datetime?: string): Promise<
|
360
|
-
unpublishContent(id: string, datetime?: string): Promise<
|
361
|
+
publishContent(id: string, datetime?: string): Promise<boolean>;
|
362
|
+
unpublishContent(id: string, datetime?: string): Promise<boolean>;
|
361
363
|
scheduleAction(data: ApwScheduleActionData): Promise<string>;
|
362
364
|
deleteScheduledAction(id: string): Promise<boolean>;
|
363
365
|
/**
|
@@ -376,10 +378,10 @@ export declare type ContentGetter = (id: string, settings: {
|
|
376
378
|
}) => Promise<PageWithWorkflow | ApwCmsEntry | null>;
|
377
379
|
export declare type ContentPublisher = (id: string, settings: {
|
378
380
|
modelId?: string;
|
379
|
-
}) => Promise<
|
381
|
+
}) => Promise<boolean | null>;
|
380
382
|
export declare type ContentUnPublisher = (id: string, settings: {
|
381
383
|
modelId?: string;
|
382
|
-
}) => Promise<
|
384
|
+
}) => Promise<boolean | null>;
|
383
385
|
export interface AdvancedPublishingWorkflow {
|
384
386
|
addContentGetter: (type: ApwContentTypes, func: ContentGetter) => void;
|
385
387
|
getContentGetter: (type: ApwContentTypes) => ContentGetter;
|
@@ -501,35 +503,35 @@ export interface ApwReviewerStorageOperations {
|
|
501
503
|
listReviewers(params: StorageOperationsListReviewersParams): Promise<[ApwReviewer[], ListMeta]>;
|
502
504
|
createReviewer(params: StorageOperationsCreateReviewerParams): Promise<ApwReviewer>;
|
503
505
|
updateReviewer(params: StorageOperationsUpdateReviewerParams): Promise<ApwReviewer>;
|
504
|
-
deleteReviewer(params: StorageOperationsDeleteReviewerParams): Promise<
|
506
|
+
deleteReviewer(params: StorageOperationsDeleteReviewerParams): Promise<boolean>;
|
505
507
|
}
|
506
508
|
export interface ApwWorkflowStorageOperations {
|
507
509
|
getWorkflow(params: StorageOperationsGetWorkflowParams): Promise<ApwWorkflow>;
|
508
510
|
listWorkflows(params: StorageOperationsListWorkflowsParams): Promise<[ApwWorkflow[], ListMeta]>;
|
509
511
|
createWorkflow(params: StorageOperationsCreateWorkflowParams): Promise<ApwWorkflow>;
|
510
512
|
updateWorkflow(params: StorageOperationsUpdateWorkflowParams): Promise<ApwWorkflow>;
|
511
|
-
deleteWorkflow(params: StorageOperationsDeleteWorkflowParams): Promise<
|
513
|
+
deleteWorkflow(params: StorageOperationsDeleteWorkflowParams): Promise<boolean>;
|
512
514
|
}
|
513
515
|
export interface ApwContentReviewStorageOperations {
|
514
516
|
getContentReview(params: StorageOperationsGetContentReviewParams): Promise<ApwContentReview>;
|
515
517
|
listContentReviews(params: StorageOperationsListContentReviewsParams): Promise<[ApwContentReview[], ListMeta]>;
|
516
518
|
createContentReview(params: StorageOperationsCreateContentReviewParams): Promise<ApwContentReview>;
|
517
519
|
updateContentReview(params: StorageOperationsUpdateContentReviewParams): Promise<ApwContentReview>;
|
518
|
-
deleteContentReview(params: StorageOperationsDeleteContentReviewParams): Promise<
|
520
|
+
deleteContentReview(params: StorageOperationsDeleteContentReviewParams): Promise<boolean>;
|
519
521
|
}
|
520
522
|
export interface ApwChangeRequestStorageOperations {
|
521
523
|
getChangeRequest(params: StorageOperationsGetChangeRequestParams): Promise<ApwChangeRequest>;
|
522
524
|
listChangeRequests(params: StorageOperationsListChangeRequestsParams): Promise<[ApwChangeRequest[], ListMeta]>;
|
523
525
|
createChangeRequest(params: StorageOperationsCreateChangeRequestParams): Promise<ApwChangeRequest>;
|
524
526
|
updateChangeRequest(params: StorageOperationsUpdateChangeRequestParams): Promise<ApwChangeRequest>;
|
525
|
-
deleteChangeRequest(params: StorageOperationsDeleteChangeRequestParams): Promise<
|
527
|
+
deleteChangeRequest(params: StorageOperationsDeleteChangeRequestParams): Promise<boolean>;
|
526
528
|
}
|
527
529
|
export interface ApwCommentStorageOperations {
|
528
530
|
getComment(params: StorageOperationsGetCommentParams): Promise<ApwComment>;
|
529
531
|
listComments(params: StorageOperationsListCommentsParams): Promise<[ApwComment[], ListMeta]>;
|
530
532
|
createComment(params: StorageOperationsCreateCommentParams): Promise<ApwComment>;
|
531
533
|
updateComment(params: StorageOperationsUpdateCommentParams): Promise<ApwComment>;
|
532
|
-
deleteComment(params: StorageOperationsDeleteCommentParams): Promise<
|
534
|
+
deleteComment(params: StorageOperationsDeleteCommentParams): Promise<boolean>;
|
533
535
|
}
|
534
536
|
export interface ApwStorageOperations extends ApwReviewerStorageOperations, ApwWorkflowStorageOperations, ApwContentReviewStorageOperations, ApwChangeRequestStorageOperations, ApwCommentStorageOperations {
|
535
537
|
}
|
@@ -737,7 +739,6 @@ export interface OnWorkflowBeforeDeleteTopicParams {
|
|
737
739
|
export interface OnWorkflowAfterDeleteTopicParams {
|
738
740
|
workflow: ApwWorkflow;
|
739
741
|
}
|
740
|
-
export declare type WorkflowModelDefinition = Omit<CmsPrivateModelFull, "noValidate" | "group">;
|
741
742
|
/**
|
742
743
|
* Headless CMS
|
743
744
|
*/
|