@webiny/api-headless-cms-workflows 6.3.0-beta.4 → 6.4.0-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (31) hide show
  1. package/features/EntryWorkflows/feature.js +11 -10
  2. package/features/EntryWorkflows/feature.js.map +1 -1
  3. package/features/EntryWorkflows/handlers/ClearEntryStateOnWorkflowStateAfterDelete.js +22 -24
  4. package/features/EntryWorkflows/handlers/ClearEntryStateOnWorkflowStateAfterDelete.js.map +1 -1
  5. package/features/EntryWorkflows/handlers/DeleteWorkflowStateOnEntryAfterDelete.js +16 -19
  6. package/features/EntryWorkflows/handlers/DeleteWorkflowStateOnEntryAfterDelete.js.map +1 -1
  7. package/features/EntryWorkflows/handlers/DeleteWorkflowsOnModelAfterDelete.js +28 -32
  8. package/features/EntryWorkflows/handlers/DeleteWorkflowsOnModelAfterDelete.js.map +1 -1
  9. package/features/EntryWorkflows/handlers/UpdateEntryOnWorkflowStateAfterCreate.js +23 -25
  10. package/features/EntryWorkflows/handlers/UpdateEntryOnWorkflowStateAfterCreate.js.map +1 -1
  11. package/features/EntryWorkflows/handlers/UpdateEntryOnWorkflowStateAfterUpdate.js +23 -25
  12. package/features/EntryWorkflows/handlers/UpdateEntryOnWorkflowStateAfterUpdate.js.map +1 -1
  13. package/features/EntryWorkflows/handlers/ValidateWorkflowStateOnEntryBeforePublish.js +34 -39
  14. package/features/EntryWorkflows/handlers/ValidateWorkflowStateOnEntryBeforePublish.js.map +1 -1
  15. package/features/EntryWorkflows/index.js +0 -2
  16. package/features/Workflows/feature.js +6 -5
  17. package/features/Workflows/feature.js.map +1 -1
  18. package/features/Workflows/handlers/DisallowUnpublishableModelsOnBeforeCreate.js +17 -22
  19. package/features/Workflows/handlers/DisallowUnpublishableModelsOnBeforeCreate.js.map +1 -1
  20. package/features/Workflows/index.js +0 -2
  21. package/index.js +10 -13
  22. package/index.js.map +1 -1
  23. package/package.json +14 -14
  24. package/utils/appName.js +6 -11
  25. package/utils/appName.js.map +1 -1
  26. package/utils/modelAllowed.js +5 -9
  27. package/utils/modelAllowed.js.map +1 -1
  28. package/utils/state.js +9 -8
  29. package/utils/state.js.map +1 -1
  30. package/features/EntryWorkflows/index.js.map +0 -1
  31. package/features/Workflows/index.js.map +0 -1
@@ -5,16 +5,17 @@ import { ValidateWorkflowStateOnEntryBeforePublish } from "./handlers/ValidateWo
5
5
  import { UpdateEntryOnWorkflowStateAfterCreate } from "./handlers/UpdateEntryOnWorkflowStateAfterCreate.js";
6
6
  import { UpdateEntryOnWorkflowStateAfterUpdate } from "./handlers/UpdateEntryOnWorkflowStateAfterUpdate.js";
7
7
  import { ClearEntryStateOnWorkflowStateAfterDelete } from "./handlers/ClearEntryStateOnWorkflowStateAfterDelete.js";
8
- export const EntryWorkflowsFeature = createFeature({
9
- name: "EntryWorkflows",
10
- register(container) {
11
- container.register(DeleteWorkflowsOnModelAfterDelete);
12
- container.register(DeleteWorkflowStateOnEntryAfterDelete);
13
- container.register(ValidateWorkflowStateOnEntryBeforePublish);
14
- container.register(UpdateEntryOnWorkflowStateAfterCreate);
15
- container.register(UpdateEntryOnWorkflowStateAfterUpdate);
16
- container.register(ClearEntryStateOnWorkflowStateAfterDelete);
17
- }
8
+ const EntryWorkflowsFeature = createFeature({
9
+ name: "EntryWorkflows",
10
+ register (container) {
11
+ container.register(DeleteWorkflowsOnModelAfterDelete);
12
+ container.register(DeleteWorkflowStateOnEntryAfterDelete);
13
+ container.register(ValidateWorkflowStateOnEntryBeforePublish);
14
+ container.register(UpdateEntryOnWorkflowStateAfterCreate);
15
+ container.register(UpdateEntryOnWorkflowStateAfterUpdate);
16
+ container.register(ClearEntryStateOnWorkflowStateAfterDelete);
17
+ }
18
18
  });
19
+ export { EntryWorkflowsFeature };
19
20
 
20
21
  //# sourceMappingURL=feature.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createFeature","DeleteWorkflowsOnModelAfterDelete","DeleteWorkflowStateOnEntryAfterDelete","ValidateWorkflowStateOnEntryBeforePublish","UpdateEntryOnWorkflowStateAfterCreate","UpdateEntryOnWorkflowStateAfterUpdate","ClearEntryStateOnWorkflowStateAfterDelete","EntryWorkflowsFeature","name","register","container"],"sources":["feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { DeleteWorkflowsOnModelAfterDelete } from \"./handlers/DeleteWorkflowsOnModelAfterDelete.js\";\nimport { DeleteWorkflowStateOnEntryAfterDelete } from \"./handlers/DeleteWorkflowStateOnEntryAfterDelete.js\";\nimport { ValidateWorkflowStateOnEntryBeforePublish } from \"./handlers/ValidateWorkflowStateOnEntryBeforePublish.js\";\nimport { UpdateEntryOnWorkflowStateAfterCreate } from \"./handlers/UpdateEntryOnWorkflowStateAfterCreate.js\";\nimport { UpdateEntryOnWorkflowStateAfterUpdate } from \"./handlers/UpdateEntryOnWorkflowStateAfterUpdate.js\";\nimport { ClearEntryStateOnWorkflowStateAfterDelete } from \"./handlers/ClearEntryStateOnWorkflowStateAfterDelete.js\";\n\nexport const EntryWorkflowsFeature = createFeature({\n name: \"EntryWorkflows\",\n register(container) {\n container.register(DeleteWorkflowsOnModelAfterDelete);\n container.register(DeleteWorkflowStateOnEntryAfterDelete);\n container.register(ValidateWorkflowStateOnEntryBeforePublish);\n container.register(UpdateEntryOnWorkflowStateAfterCreate);\n container.register(UpdateEntryOnWorkflowStateAfterUpdate);\n container.register(ClearEntryStateOnWorkflowStateAfterDelete);\n }\n});\n"],"mappings":"AAAA,SAASA,aAAa,QAAQ,qBAAqB;AACnD,SAASC,iCAAiC;AAC1C,SAASC,qCAAqC;AAC9C,SAASC,yCAAyC;AAClD,SAASC,qCAAqC;AAC9C,SAASC,qCAAqC;AAC9C,SAASC,yCAAyC;AAElD,OAAO,MAAMC,qBAAqB,GAAGP,aAAa,CAAC;EAC/CQ,IAAI,EAAE,gBAAgB;EACtBC,QAAQA,CAACC,SAAS,EAAE;IAChBA,SAAS,CAACD,QAAQ,CAACR,iCAAiC,CAAC;IACrDS,SAAS,CAACD,QAAQ,CAACP,qCAAqC,CAAC;IACzDQ,SAAS,CAACD,QAAQ,CAACN,yCAAyC,CAAC;IAC7DO,SAAS,CAACD,QAAQ,CAACL,qCAAqC,CAAC;IACzDM,SAAS,CAACD,QAAQ,CAACJ,qCAAqC,CAAC;IACzDK,SAAS,CAACD,QAAQ,CAACH,yCAAyC,CAAC;EACjE;AACJ,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/EntryWorkflows/feature.js","sources":["../../../src/features/EntryWorkflows/feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { DeleteWorkflowsOnModelAfterDelete } from \"./handlers/DeleteWorkflowsOnModelAfterDelete.js\";\nimport { DeleteWorkflowStateOnEntryAfterDelete } from \"./handlers/DeleteWorkflowStateOnEntryAfterDelete.js\";\nimport { ValidateWorkflowStateOnEntryBeforePublish } from \"./handlers/ValidateWorkflowStateOnEntryBeforePublish.js\";\nimport { UpdateEntryOnWorkflowStateAfterCreate } from \"./handlers/UpdateEntryOnWorkflowStateAfterCreate.js\";\nimport { UpdateEntryOnWorkflowStateAfterUpdate } from \"./handlers/UpdateEntryOnWorkflowStateAfterUpdate.js\";\nimport { ClearEntryStateOnWorkflowStateAfterDelete } from \"./handlers/ClearEntryStateOnWorkflowStateAfterDelete.js\";\n\nexport const EntryWorkflowsFeature = createFeature({\n name: \"EntryWorkflows\",\n register(container) {\n container.register(DeleteWorkflowsOnModelAfterDelete);\n container.register(DeleteWorkflowStateOnEntryAfterDelete);\n container.register(ValidateWorkflowStateOnEntryBeforePublish);\n container.register(UpdateEntryOnWorkflowStateAfterCreate);\n container.register(UpdateEntryOnWorkflowStateAfterUpdate);\n container.register(ClearEntryStateOnWorkflowStateAfterDelete);\n }\n});\n"],"names":["EntryWorkflowsFeature","createFeature","container","DeleteWorkflowsOnModelAfterDelete","DeleteWorkflowStateOnEntryAfterDelete","ValidateWorkflowStateOnEntryBeforePublish","UpdateEntryOnWorkflowStateAfterCreate","UpdateEntryOnWorkflowStateAfterUpdate","ClearEntryStateOnWorkflowStateAfterDelete"],"mappings":";;;;;;;AAQO,MAAMA,wBAAwBC,cAAc;IAC/C,MAAM;IACN,UAASC,SAAS;QACdA,UAAU,QAAQ,CAACC;QACnBD,UAAU,QAAQ,CAACE;QACnBF,UAAU,QAAQ,CAACG;QACnBH,UAAU,QAAQ,CAACI;QACnBJ,UAAU,QAAQ,CAACK;QACnBL,UAAU,QAAQ,CAACM;IACvB;AACJ"}
@@ -3,33 +3,31 @@ import { getModelIdFromAppName } from "../../../utils/appName.js";
3
3
  import { UpdateEntryUseCase } from "@webiny/api-headless-cms/features/contentEntry/UpdateEntry/index.js";
4
4
  import { GetModelUseCase } from "@webiny/api-headless-cms/features/contentModel/GetModel/index.js";
5
5
  class ClearEntryStateOnWorkflowStateAfterDeleteImpl {
6
- constructor(getModel, updateEntry) {
7
- this.getModel = getModel;
8
- this.updateEntry = updateEntry;
9
- }
10
- async handle(event) {
11
- const {
12
- state
13
- } = event.payload;
14
- const modelId = getModelIdFromAppName(state.app);
15
- if (!modelId) {
16
- return;
6
+ constructor(getModel, updateEntry){
7
+ this.getModel = getModel;
8
+ this.updateEntry = updateEntry;
17
9
  }
18
- const modelResult = await this.getModel.execute(modelId);
19
- if (modelResult.isFail()) {
20
- return;
10
+ async handle(event) {
11
+ const { state } = event.payload;
12
+ const modelId = getModelIdFromAppName(state.app);
13
+ if (!modelId) return;
14
+ const modelResult = await this.getModel.execute(modelId);
15
+ if (modelResult.isFail()) return;
16
+ const model = modelResult.value;
17
+ await this.updateEntry.execute(model, state.targetRevisionId, {
18
+ system: {
19
+ workflow: void 0
20
+ }
21
+ });
21
22
  }
22
- const model = modelResult.value;
23
- await this.updateEntry.execute(model, state.targetRevisionId, {
24
- system: {
25
- workflow: undefined
26
- }
27
- });
28
- }
29
23
  }
30
- export const ClearEntryStateOnWorkflowStateAfterDelete = WorkflowStateAfterDeleteHandler.createImplementation({
31
- implementation: ClearEntryStateOnWorkflowStateAfterDeleteImpl,
32
- dependencies: [GetModelUseCase, UpdateEntryUseCase]
24
+ const ClearEntryStateOnWorkflowStateAfterDelete = WorkflowStateAfterDeleteHandler.createImplementation({
25
+ implementation: ClearEntryStateOnWorkflowStateAfterDeleteImpl,
26
+ dependencies: [
27
+ GetModelUseCase,
28
+ UpdateEntryUseCase
29
+ ]
33
30
  });
31
+ export { ClearEntryStateOnWorkflowStateAfterDelete };
34
32
 
35
33
  //# sourceMappingURL=ClearEntryStateOnWorkflowStateAfterDelete.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["WorkflowStateAfterDeleteHandler","getModelIdFromAppName","UpdateEntryUseCase","GetModelUseCase","ClearEntryStateOnWorkflowStateAfterDeleteImpl","constructor","getModel","updateEntry","handle","event","state","payload","modelId","app","modelResult","execute","isFail","model","value","targetRevisionId","system","workflow","undefined","ClearEntryStateOnWorkflowStateAfterDelete","createImplementation","implementation","dependencies"],"sources":["ClearEntryStateOnWorkflowStateAfterDelete.ts"],"sourcesContent":["import { WorkflowStateAfterDeleteHandler } from \"@webiny/api-workflows/features/workflowState/DeleteTargetWorkflowState/events.js\";\nimport { getModelIdFromAppName } from \"~/utils/appName.js\";\nimport { UpdateEntryUseCase } from \"@webiny/api-headless-cms/features/contentEntry/UpdateEntry/index.js\";\nimport { GetModelUseCase } from \"@webiny/api-headless-cms/features/contentModel/GetModel/index.js\";\n\nclass ClearEntryStateOnWorkflowStateAfterDeleteImpl\n implements WorkflowStateAfterDeleteHandler.Interface\n{\n constructor(\n private getModel: GetModelUseCase.Interface,\n private updateEntry: UpdateEntryUseCase.Interface\n ) {}\n\n async handle(event: WorkflowStateAfterDeleteHandler.Event): Promise<void> {\n const { state } = event.payload;\n\n const modelId = getModelIdFromAppName(state.app);\n if (!modelId) {\n return;\n }\n\n const modelResult = await this.getModel.execute(modelId);\n if (modelResult.isFail()) {\n return;\n }\n\n const model = modelResult.value;\n await this.updateEntry.execute(model, state.targetRevisionId, {\n system: {\n workflow: undefined\n }\n });\n }\n}\n\nexport const ClearEntryStateOnWorkflowStateAfterDelete =\n WorkflowStateAfterDeleteHandler.createImplementation({\n implementation: ClearEntryStateOnWorkflowStateAfterDeleteImpl,\n dependencies: [GetModelUseCase, UpdateEntryUseCase]\n });\n"],"mappings":"AAAA,SAASA,+BAA+B,QAAQ,kFAAkF;AAClI,SAASC,qBAAqB;AAC9B,SAASC,kBAAkB,QAAQ,qEAAqE;AACxG,SAASC,eAAe,QAAQ,kEAAkE;AAElG,MAAMC,6CAA6C,CAEnD;EACIC,WAAWA,CACCC,QAAmC,EACnCC,WAAyC,EACnD;IAAA,KAFUD,QAAmC,GAAnCA,QAAmC;IAAA,KACnCC,WAAyC,GAAzCA,WAAyC;EAClD;EAEH,MAAMC,MAAMA,CAACC,KAA4C,EAAiB;IACtE,MAAM;MAAEC;IAAM,CAAC,GAAGD,KAAK,CAACE,OAAO;IAE/B,MAAMC,OAAO,GAAGX,qBAAqB,CAACS,KAAK,CAACG,GAAG,CAAC;IAChD,IAAI,CAACD,OAAO,EAAE;MACV;IACJ;IAEA,MAAME,WAAW,GAAG,MAAM,IAAI,CAACR,QAAQ,CAACS,OAAO,CAACH,OAAO,CAAC;IACxD,IAAIE,WAAW,CAACE,MAAM,CAAC,CAAC,EAAE;MACtB;IACJ;IAEA,MAAMC,KAAK,GAAGH,WAAW,CAACI,KAAK;IAC/B,MAAM,IAAI,CAACX,WAAW,CAACQ,OAAO,CAACE,KAAK,EAAEP,KAAK,CAACS,gBAAgB,EAAE;MAC1DC,MAAM,EAAE;QACJC,QAAQ,EAAEC;MACd;IACJ,CAAC,CAAC;EACN;AACJ;AAEA,OAAO,MAAMC,yCAAyC,GAClDvB,+BAA+B,CAACwB,oBAAoB,CAAC;EACjDC,cAAc,EAAErB,6CAA6C;EAC7DsB,YAAY,EAAE,CAACvB,eAAe,EAAED,kBAAkB;AACtD,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/EntryWorkflows/handlers/ClearEntryStateOnWorkflowStateAfterDelete.js","sources":["../../../../src/features/EntryWorkflows/handlers/ClearEntryStateOnWorkflowStateAfterDelete.ts"],"sourcesContent":["import { WorkflowStateAfterDeleteHandler } from \"@webiny/api-workflows/features/workflowState/DeleteTargetWorkflowState/events.js\";\nimport { getModelIdFromAppName } from \"~/utils/appName.js\";\nimport { UpdateEntryUseCase } from \"@webiny/api-headless-cms/features/contentEntry/UpdateEntry/index.js\";\nimport { GetModelUseCase } from \"@webiny/api-headless-cms/features/contentModel/GetModel/index.js\";\n\nclass ClearEntryStateOnWorkflowStateAfterDeleteImpl\n implements WorkflowStateAfterDeleteHandler.Interface\n{\n constructor(\n private getModel: GetModelUseCase.Interface,\n private updateEntry: UpdateEntryUseCase.Interface\n ) {}\n\n async handle(event: WorkflowStateAfterDeleteHandler.Event): Promise<void> {\n const { state } = event.payload;\n\n const modelId = getModelIdFromAppName(state.app);\n if (!modelId) {\n return;\n }\n\n const modelResult = await this.getModel.execute(modelId);\n if (modelResult.isFail()) {\n return;\n }\n\n const model = modelResult.value;\n await this.updateEntry.execute(model, state.targetRevisionId, {\n system: {\n workflow: undefined\n }\n });\n }\n}\n\nexport const ClearEntryStateOnWorkflowStateAfterDelete =\n WorkflowStateAfterDeleteHandler.createImplementation({\n implementation: ClearEntryStateOnWorkflowStateAfterDeleteImpl,\n dependencies: [GetModelUseCase, UpdateEntryUseCase]\n });\n"],"names":["ClearEntryStateOnWorkflowStateAfterDeleteImpl","getModel","updateEntry","event","state","modelId","getModelIdFromAppName","modelResult","model","undefined","ClearEntryStateOnWorkflowStateAfterDelete","WorkflowStateAfterDeleteHandler","GetModelUseCase","UpdateEntryUseCase"],"mappings":";;;;AAKA,MAAMA;IAGF,YACYC,QAAmC,EACnCC,WAAyC,CACnD;aAFUD,QAAQ,GAARA;aACAC,WAAW,GAAXA;IACT;IAEH,MAAM,OAAOC,KAA4C,EAAiB;QACtE,MAAM,EAAEC,KAAK,EAAE,GAAGD,MAAM,OAAO;QAE/B,MAAME,UAAUC,sBAAsBF,MAAM,GAAG;QAC/C,IAAI,CAACC,SACD;QAGJ,MAAME,cAAc,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAACF;QAChD,IAAIE,YAAY,MAAM,IAClB;QAGJ,MAAMC,QAAQD,YAAY,KAAK;QAC/B,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAACC,OAAOJ,MAAM,gBAAgB,EAAE;YAC1D,QAAQ;gBACJ,UAAUK;YACd;QACJ;IACJ;AACJ;AAEO,MAAMC,4CACTC,gCAAgC,oBAAoB,CAAC;IACjD,gBAAgBX;IAChB,cAAc;QAACY;QAAiBC;KAAmB;AACvD"}
@@ -3,27 +3,24 @@ import { createWorkflowAppName } from "../../../utils/appName.js";
3
3
  import { isModelAllowed } from "../../../utils/modelAllowed.js";
4
4
  import { DeleteTargetWorkflowStateUseCase } from "@webiny/api-workflows/features/workflowState/DeleteTargetWorkflowState/index.js";
5
5
  class DeleteWorkflowStateOnEntryAfterDeleteImpl {
6
- constructor(deleteTargetState) {
7
- this.deleteTargetState = deleteTargetState;
8
- }
9
- async handle(event) {
10
- const {
11
- model,
12
- entry,
13
- permanent
14
- } = event.payload;
15
- if (!isModelAllowed(model) || !permanent) {
16
- return;
6
+ constructor(deleteTargetState){
7
+ this.deleteTargetState = deleteTargetState;
8
+ }
9
+ async handle(event) {
10
+ const { model, entry, permanent } = event.payload;
11
+ if (!isModelAllowed(model) || !permanent) return;
12
+ const app = createWorkflowAppName({
13
+ model
14
+ });
15
+ await this.deleteTargetState.execute(app, entry.id);
17
16
  }
18
- const app = createWorkflowAppName({
19
- model
20
- });
21
- await this.deleteTargetState.execute(app, entry.id);
22
- }
23
17
  }
24
- export const DeleteWorkflowStateOnEntryAfterDelete = EntryAfterDeleteEventHandler.createImplementation({
25
- implementation: DeleteWorkflowStateOnEntryAfterDeleteImpl,
26
- dependencies: [DeleteTargetWorkflowStateUseCase]
18
+ const DeleteWorkflowStateOnEntryAfterDelete = EntryAfterDeleteEventHandler.createImplementation({
19
+ implementation: DeleteWorkflowStateOnEntryAfterDeleteImpl,
20
+ dependencies: [
21
+ DeleteTargetWorkflowStateUseCase
22
+ ]
27
23
  });
24
+ export { DeleteWorkflowStateOnEntryAfterDelete };
28
25
 
29
26
  //# sourceMappingURL=DeleteWorkflowStateOnEntryAfterDelete.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["EntryAfterDeleteEventHandler","createWorkflowAppName","isModelAllowed","DeleteTargetWorkflowStateUseCase","DeleteWorkflowStateOnEntryAfterDeleteImpl","constructor","deleteTargetState","handle","event","model","entry","permanent","payload","app","execute","id","DeleteWorkflowStateOnEntryAfterDelete","createImplementation","implementation","dependencies"],"sources":["DeleteWorkflowStateOnEntryAfterDelete.ts"],"sourcesContent":["import { EntryAfterDeleteEventHandler } from \"@webiny/api-headless-cms/features/contentEntry/DeleteEntry/events.js\";\nimport { createWorkflowAppName } from \"~/utils/appName.js\";\nimport { isModelAllowed } from \"~/utils/modelAllowed.js\";\nimport { DeleteTargetWorkflowStateUseCase } from \"@webiny/api-workflows/features/workflowState/DeleteTargetWorkflowState/index.js\";\n\nclass DeleteWorkflowStateOnEntryAfterDeleteImpl implements EntryAfterDeleteEventHandler.Interface {\n constructor(private deleteTargetState: DeleteTargetWorkflowStateUseCase.Interface) {}\n\n async handle(event: EntryAfterDeleteEventHandler.Event): Promise<void> {\n const { model, entry, permanent } = event.payload;\n\n if (!isModelAllowed(model) || !permanent) {\n return;\n }\n\n const app = createWorkflowAppName({ model });\n await this.deleteTargetState.execute(app, entry.id);\n }\n}\n\nexport const DeleteWorkflowStateOnEntryAfterDelete =\n EntryAfterDeleteEventHandler.createImplementation({\n implementation: DeleteWorkflowStateOnEntryAfterDeleteImpl,\n dependencies: [DeleteTargetWorkflowStateUseCase]\n });\n"],"mappings":"AAAA,SAASA,4BAA4B,QAAQ,sEAAsE;AACnH,SAASC,qBAAqB;AAC9B,SAASC,cAAc;AACvB,SAASC,gCAAgC,QAAQ,iFAAiF;AAElI,MAAMC,yCAAyC,CAAmD;EAC9FC,WAAWA,CAASC,iBAA6D,EAAE;IAAA,KAA/DA,iBAA6D,GAA7DA,iBAA6D;EAAG;EAEpF,MAAMC,MAAMA,CAACC,KAAyC,EAAiB;IACnE,MAAM;MAAEC,KAAK;MAAEC,KAAK;MAAEC;IAAU,CAAC,GAAGH,KAAK,CAACI,OAAO;IAEjD,IAAI,CAACV,cAAc,CAACO,KAAK,CAAC,IAAI,CAACE,SAAS,EAAE;MACtC;IACJ;IAEA,MAAME,GAAG,GAAGZ,qBAAqB,CAAC;MAAEQ;IAAM,CAAC,CAAC;IAC5C,MAAM,IAAI,CAACH,iBAAiB,CAACQ,OAAO,CAACD,GAAG,EAAEH,KAAK,CAACK,EAAE,CAAC;EACvD;AACJ;AAEA,OAAO,MAAMC,qCAAqC,GAC9ChB,4BAA4B,CAACiB,oBAAoB,CAAC;EAC9CC,cAAc,EAAEd,yCAAyC;EACzDe,YAAY,EAAE,CAAChB,gCAAgC;AACnD,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/EntryWorkflows/handlers/DeleteWorkflowStateOnEntryAfterDelete.js","sources":["../../../../src/features/EntryWorkflows/handlers/DeleteWorkflowStateOnEntryAfterDelete.ts"],"sourcesContent":["import { EntryAfterDeleteEventHandler } from \"@webiny/api-headless-cms/features/contentEntry/DeleteEntry/events.js\";\nimport { createWorkflowAppName } from \"~/utils/appName.js\";\nimport { isModelAllowed } from \"~/utils/modelAllowed.js\";\nimport { DeleteTargetWorkflowStateUseCase } from \"@webiny/api-workflows/features/workflowState/DeleteTargetWorkflowState/index.js\";\n\nclass DeleteWorkflowStateOnEntryAfterDeleteImpl implements EntryAfterDeleteEventHandler.Interface {\n constructor(private deleteTargetState: DeleteTargetWorkflowStateUseCase.Interface) {}\n\n async handle(event: EntryAfterDeleteEventHandler.Event): Promise<void> {\n const { model, entry, permanent } = event.payload;\n\n if (!isModelAllowed(model) || !permanent) {\n return;\n }\n\n const app = createWorkflowAppName({ model });\n await this.deleteTargetState.execute(app, entry.id);\n }\n}\n\nexport const DeleteWorkflowStateOnEntryAfterDelete =\n EntryAfterDeleteEventHandler.createImplementation({\n implementation: DeleteWorkflowStateOnEntryAfterDeleteImpl,\n dependencies: [DeleteTargetWorkflowStateUseCase]\n });\n"],"names":["DeleteWorkflowStateOnEntryAfterDeleteImpl","deleteTargetState","event","model","entry","permanent","isModelAllowed","app","createWorkflowAppName","DeleteWorkflowStateOnEntryAfterDelete","EntryAfterDeleteEventHandler","DeleteTargetWorkflowStateUseCase"],"mappings":";;;;AAKA,MAAMA;IACF,YAAoBC,iBAA6D,CAAE;aAA/DA,iBAAiB,GAAjBA;IAAgE;IAEpF,MAAM,OAAOC,KAAyC,EAAiB;QACnE,MAAM,EAAEC,KAAK,EAAEC,KAAK,EAAEC,SAAS,EAAE,GAAGH,MAAM,OAAO;QAEjD,IAAI,CAACI,eAAeH,UAAU,CAACE,WAC3B;QAGJ,MAAME,MAAMC,sBAAsB;YAAEL;QAAM;QAC1C,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAACI,KAAKH,MAAM,EAAE;IACtD;AACJ;AAEO,MAAMK,wCACTC,6BAA6B,oBAAoB,CAAC;IAC9C,gBAAgBV;IAChB,cAAc;QAACW;KAAiC;AACpD"}
@@ -4,42 +4,38 @@ import { DeleteWorkflowUseCase } from "@webiny/api-workflows/features/workflow/D
4
4
  import { createWorkflowAppName } from "../../../utils/appName.js";
5
5
  import { isModelAllowed } from "../../../utils/modelAllowed.js";
6
6
  class DeleteWorkflowsOnModelAfterDeleteImpl {
7
- constructor(listWorkflows, deleteWorkflow) {
8
- this.listWorkflows = listWorkflows;
9
- this.deleteWorkflow = deleteWorkflow;
10
- }
11
- async handle(event) {
12
- const {
13
- model
14
- } = event.payload;
15
- if (!isModelAllowed(model)) {
16
- return;
7
+ constructor(listWorkflows, deleteWorkflow){
8
+ this.listWorkflows = listWorkflows;
9
+ this.deleteWorkflow = deleteWorkflow;
17
10
  }
18
- const app = createWorkflowAppName({
19
- model
20
- });
21
- const result = await this.listWorkflows.execute({
22
- where: {
23
- app
24
- },
25
- limit: 10000
26
- });
27
- const workflows = result.value.items;
28
- for (const workflow of workflows) {
29
- try {
30
- await this.deleteWorkflow.execute({
31
- app: workflow.app,
32
- id: workflow.id
11
+ async handle(event) {
12
+ const { model } = event.payload;
13
+ if (!isModelAllowed(model)) return;
14
+ const app = createWorkflowAppName({
15
+ model
33
16
  });
34
- } catch {
35
- // does not matter
36
- }
17
+ const result = await this.listWorkflows.execute({
18
+ where: {
19
+ app
20
+ },
21
+ limit: 10000
22
+ });
23
+ const workflows = result.value.items;
24
+ for (const workflow of workflows)try {
25
+ await this.deleteWorkflow.execute({
26
+ app: workflow.app,
27
+ id: workflow.id
28
+ });
29
+ } catch {}
37
30
  }
38
- }
39
31
  }
40
- export const DeleteWorkflowsOnModelAfterDelete = ModelAfterDeleteEventHandler.createImplementation({
41
- implementation: DeleteWorkflowsOnModelAfterDeleteImpl,
42
- dependencies: [ListWorkflowsUseCase, DeleteWorkflowUseCase]
32
+ const DeleteWorkflowsOnModelAfterDelete = ModelAfterDeleteEventHandler.createImplementation({
33
+ implementation: DeleteWorkflowsOnModelAfterDeleteImpl,
34
+ dependencies: [
35
+ ListWorkflowsUseCase,
36
+ DeleteWorkflowUseCase
37
+ ]
43
38
  });
39
+ export { DeleteWorkflowsOnModelAfterDelete };
44
40
 
45
41
  //# sourceMappingURL=DeleteWorkflowsOnModelAfterDelete.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["ModelAfterDeleteEventHandler","ListWorkflowsUseCase","DeleteWorkflowUseCase","createWorkflowAppName","isModelAllowed","DeleteWorkflowsOnModelAfterDeleteImpl","constructor","listWorkflows","deleteWorkflow","handle","event","model","payload","app","result","execute","where","limit","workflows","value","items","workflow","id","DeleteWorkflowsOnModelAfterDelete","createImplementation","implementation","dependencies"],"sources":["DeleteWorkflowsOnModelAfterDelete.ts"],"sourcesContent":["import { ModelAfterDeleteEventHandler } from \"@webiny/api-headless-cms/features/contentModel/DeleteModel/events.js\";\nimport { ListWorkflowsUseCase } from \"@webiny/api-workflows/features/workflow/ListWorkflows/index.js\";\nimport { DeleteWorkflowUseCase } from \"@webiny/api-workflows/features/workflow/DeleteWorkflow/index.js\";\nimport { createWorkflowAppName } from \"~/utils/appName.js\";\nimport { isModelAllowed } from \"~/utils/modelAllowed.js\";\n\nclass DeleteWorkflowsOnModelAfterDeleteImpl implements ModelAfterDeleteEventHandler.Interface {\n constructor(\n private listWorkflows: ListWorkflowsUseCase.Interface,\n private deleteWorkflow: DeleteWorkflowUseCase.Interface\n ) {}\n\n async handle(event: ModelAfterDeleteEventHandler.Event): Promise<void> {\n const { model } = event.payload;\n\n if (!isModelAllowed(model)) {\n return;\n }\n\n const app = createWorkflowAppName({ model });\n const result = await this.listWorkflows.execute({\n where: {\n app\n },\n limit: 10000\n });\n\n const workflows = result.value.items;\n\n for (const workflow of workflows) {\n try {\n await this.deleteWorkflow.execute({\n app: workflow.app,\n id: workflow.id\n });\n } catch {\n // does not matter\n }\n }\n }\n}\n\nexport const DeleteWorkflowsOnModelAfterDelete = ModelAfterDeleteEventHandler.createImplementation({\n implementation: DeleteWorkflowsOnModelAfterDeleteImpl,\n dependencies: [ListWorkflowsUseCase, DeleteWorkflowUseCase]\n});\n"],"mappings":"AAAA,SAASA,4BAA4B,QAAQ,sEAAsE;AACnH,SAASC,oBAAoB,QAAQ,gEAAgE;AACrG,SAASC,qBAAqB,QAAQ,iEAAiE;AACvG,SAASC,qBAAqB;AAC9B,SAASC,cAAc;AAEvB,MAAMC,qCAAqC,CAAmD;EAC1FC,WAAWA,CACCC,aAA6C,EAC7CC,cAA+C,EACzD;IAAA,KAFUD,aAA6C,GAA7CA,aAA6C;IAAA,KAC7CC,cAA+C,GAA/CA,cAA+C;EACxD;EAEH,MAAMC,MAAMA,CAACC,KAAyC,EAAiB;IACnE,MAAM;MAAEC;IAAM,CAAC,GAAGD,KAAK,CAACE,OAAO;IAE/B,IAAI,CAACR,cAAc,CAACO,KAAK,CAAC,EAAE;MACxB;IACJ;IAEA,MAAME,GAAG,GAAGV,qBAAqB,CAAC;MAAEQ;IAAM,CAAC,CAAC;IAC5C,MAAMG,MAAM,GAAG,MAAM,IAAI,CAACP,aAAa,CAACQ,OAAO,CAAC;MAC5CC,KAAK,EAAE;QACHH;MACJ,CAAC;MACDI,KAAK,EAAE;IACX,CAAC,CAAC;IAEF,MAAMC,SAAS,GAAGJ,MAAM,CAACK,KAAK,CAACC,KAAK;IAEpC,KAAK,MAAMC,QAAQ,IAAIH,SAAS,EAAE;MAC9B,IAAI;QACA,MAAM,IAAI,CAACV,cAAc,CAACO,OAAO,CAAC;UAC9BF,GAAG,EAAEQ,QAAQ,CAACR,GAAG;UACjBS,EAAE,EAAED,QAAQ,CAACC;QACjB,CAAC,CAAC;MACN,CAAC,CAAC,MAAM;QACJ;MAAA;IAER;EACJ;AACJ;AAEA,OAAO,MAAMC,iCAAiC,GAAGvB,4BAA4B,CAACwB,oBAAoB,CAAC;EAC/FC,cAAc,EAAEpB,qCAAqC;EACrDqB,YAAY,EAAE,CAACzB,oBAAoB,EAAEC,qBAAqB;AAC9D,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/EntryWorkflows/handlers/DeleteWorkflowsOnModelAfterDelete.js","sources":["../../../../src/features/EntryWorkflows/handlers/DeleteWorkflowsOnModelAfterDelete.ts"],"sourcesContent":["import { ModelAfterDeleteEventHandler } from \"@webiny/api-headless-cms/features/contentModel/DeleteModel/events.js\";\nimport { ListWorkflowsUseCase } from \"@webiny/api-workflows/features/workflow/ListWorkflows/index.js\";\nimport { DeleteWorkflowUseCase } from \"@webiny/api-workflows/features/workflow/DeleteWorkflow/index.js\";\nimport { createWorkflowAppName } from \"~/utils/appName.js\";\nimport { isModelAllowed } from \"~/utils/modelAllowed.js\";\n\nclass DeleteWorkflowsOnModelAfterDeleteImpl implements ModelAfterDeleteEventHandler.Interface {\n constructor(\n private listWorkflows: ListWorkflowsUseCase.Interface,\n private deleteWorkflow: DeleteWorkflowUseCase.Interface\n ) {}\n\n async handle(event: ModelAfterDeleteEventHandler.Event): Promise<void> {\n const { model } = event.payload;\n\n if (!isModelAllowed(model)) {\n return;\n }\n\n const app = createWorkflowAppName({ model });\n const result = await this.listWorkflows.execute({\n where: {\n app\n },\n limit: 10000\n });\n\n const workflows = result.value.items;\n\n for (const workflow of workflows) {\n try {\n await this.deleteWorkflow.execute({\n app: workflow.app,\n id: workflow.id\n });\n } catch {\n // does not matter\n }\n }\n }\n}\n\nexport const DeleteWorkflowsOnModelAfterDelete = ModelAfterDeleteEventHandler.createImplementation({\n implementation: DeleteWorkflowsOnModelAfterDeleteImpl,\n dependencies: [ListWorkflowsUseCase, DeleteWorkflowUseCase]\n});\n"],"names":["DeleteWorkflowsOnModelAfterDeleteImpl","listWorkflows","deleteWorkflow","event","model","isModelAllowed","app","createWorkflowAppName","result","workflows","workflow","DeleteWorkflowsOnModelAfterDelete","ModelAfterDeleteEventHandler","ListWorkflowsUseCase","DeleteWorkflowUseCase"],"mappings":";;;;;AAMA,MAAMA;IACF,YACYC,aAA6C,EAC7CC,cAA+C,CACzD;aAFUD,aAAa,GAAbA;aACAC,cAAc,GAAdA;IACT;IAEH,MAAM,OAAOC,KAAyC,EAAiB;QACnE,MAAM,EAAEC,KAAK,EAAE,GAAGD,MAAM,OAAO;QAE/B,IAAI,CAACE,eAAeD,QAChB;QAGJ,MAAME,MAAMC,sBAAsB;YAAEH;QAAM;QAC1C,MAAMI,SAAS,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC;YAC5C,OAAO;gBACHF;YACJ;YACA,OAAO;QACX;QAEA,MAAMG,YAAYD,OAAO,KAAK,CAAC,KAAK;QAEpC,KAAK,MAAME,YAAYD,UACnB,IAAI;YACA,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC;gBAC9B,KAAKC,SAAS,GAAG;gBACjB,IAAIA,SAAS,EAAE;YACnB;QACJ,EAAE,OAAM,CAER;IAER;AACJ;AAEO,MAAMC,oCAAoCC,6BAA6B,oBAAoB,CAAC;IAC/F,gBAAgBZ;IAChB,cAAc;QAACa;QAAsBC;KAAsB;AAC/D"}
@@ -4,34 +4,32 @@ import { WorkflowStateAfterCreateHandler } from "@webiny/api-workflows/features/
4
4
  import { getModelIdFromAppName } from "../../../utils/appName.js";
5
5
  import { getStateValues } from "../../../utils/state.js";
6
6
  class UpdateEntryOnWorkflowStateAfterCreateImpl {
7
- constructor(getModel, updateEntry) {
8
- this.getModel = getModel;
9
- this.updateEntry = updateEntry;
10
- }
11
- async handle(event) {
12
- const {
13
- state
14
- } = event.payload;
15
- const modelId = getModelIdFromAppName(state.app);
16
- if (!modelId) {
17
- return;
7
+ constructor(getModel, updateEntry){
8
+ this.getModel = getModel;
9
+ this.updateEntry = updateEntry;
18
10
  }
19
- const values = getStateValues(state);
20
- const modelResult = await this.getModel.execute(modelId);
21
- if (modelResult.isFail()) {
22
- return;
11
+ async handle(event) {
12
+ const { state } = event.payload;
13
+ const modelId = getModelIdFromAppName(state.app);
14
+ if (!modelId) return;
15
+ const values = getStateValues(state);
16
+ const modelResult = await this.getModel.execute(modelId);
17
+ if (modelResult.isFail()) return;
18
+ const model = modelResult.value;
19
+ await this.updateEntry.execute(model, state.targetRevisionId, {
20
+ system: {
21
+ workflow: values
22
+ }
23
+ });
23
24
  }
24
- const model = modelResult.value;
25
- await this.updateEntry.execute(model, state.targetRevisionId, {
26
- system: {
27
- workflow: values
28
- }
29
- });
30
- }
31
25
  }
32
- export const UpdateEntryOnWorkflowStateAfterCreate = WorkflowStateAfterCreateHandler.createImplementation({
33
- implementation: UpdateEntryOnWorkflowStateAfterCreateImpl,
34
- dependencies: [GetModelUseCase, UpdateEntryUseCase]
26
+ const UpdateEntryOnWorkflowStateAfterCreate = WorkflowStateAfterCreateHandler.createImplementation({
27
+ implementation: UpdateEntryOnWorkflowStateAfterCreateImpl,
28
+ dependencies: [
29
+ GetModelUseCase,
30
+ UpdateEntryUseCase
31
+ ]
35
32
  });
33
+ export { UpdateEntryOnWorkflowStateAfterCreate };
36
34
 
37
35
  //# sourceMappingURL=UpdateEntryOnWorkflowStateAfterCreate.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["GetModelUseCase","UpdateEntryUseCase","WorkflowStateAfterCreateHandler","getModelIdFromAppName","getStateValues","UpdateEntryOnWorkflowStateAfterCreateImpl","constructor","getModel","updateEntry","handle","event","state","payload","modelId","app","values","modelResult","execute","isFail","model","value","targetRevisionId","system","workflow","UpdateEntryOnWorkflowStateAfterCreate","createImplementation","implementation","dependencies"],"sources":["UpdateEntryOnWorkflowStateAfterCreate.ts"],"sourcesContent":["import { GetModelUseCase } from \"@webiny/api-headless-cms/features/contentModel/GetModel/index.js\";\nimport { UpdateEntryUseCase } from \"@webiny/api-headless-cms/features/contentEntry/UpdateEntry/index.js\";\nimport { WorkflowStateAfterCreateHandler } from \"@webiny/api-workflows/features/workflowState/CreateWorkflowState/events.js\";\nimport { getModelIdFromAppName } from \"~/utils/appName.js\";\nimport { getStateValues } from \"~/utils/state.js\";\n\nclass UpdateEntryOnWorkflowStateAfterCreateImpl\n implements WorkflowStateAfterCreateHandler.Interface\n{\n constructor(\n private getModel: GetModelUseCase.Interface,\n private updateEntry: UpdateEntryUseCase.Interface\n ) {}\n\n async handle(event: WorkflowStateAfterCreateHandler.Event): Promise<void> {\n const { state } = event.payload;\n\n const modelId = getModelIdFromAppName(state.app);\n if (!modelId) {\n return;\n }\n\n const values = getStateValues(state);\n\n const modelResult = await this.getModel.execute(modelId);\n if (modelResult.isFail()) {\n return;\n }\n\n const model = modelResult.value;\n await this.updateEntry.execute(model, state.targetRevisionId, {\n system: {\n workflow: values\n }\n });\n }\n}\n\nexport const UpdateEntryOnWorkflowStateAfterCreate =\n WorkflowStateAfterCreateHandler.createImplementation({\n implementation: UpdateEntryOnWorkflowStateAfterCreateImpl,\n dependencies: [GetModelUseCase, UpdateEntryUseCase]\n });\n"],"mappings":"AAAA,SAASA,eAAe,QAAQ,kEAAkE;AAClG,SAASC,kBAAkB,QAAQ,qEAAqE;AACxG,SAASC,+BAA+B,QAAQ,4EAA4E;AAC5H,SAASC,qBAAqB;AAC9B,SAASC,cAAc;AAEvB,MAAMC,yCAAyC,CAE/C;EACIC,WAAWA,CACCC,QAAmC,EACnCC,WAAyC,EACnD;IAAA,KAFUD,QAAmC,GAAnCA,QAAmC;IAAA,KACnCC,WAAyC,GAAzCA,WAAyC;EAClD;EAEH,MAAMC,MAAMA,CAACC,KAA4C,EAAiB;IACtE,MAAM;MAAEC;IAAM,CAAC,GAAGD,KAAK,CAACE,OAAO;IAE/B,MAAMC,OAAO,GAAGV,qBAAqB,CAACQ,KAAK,CAACG,GAAG,CAAC;IAChD,IAAI,CAACD,OAAO,EAAE;MACV;IACJ;IAEA,MAAME,MAAM,GAAGX,cAAc,CAACO,KAAK,CAAC;IAEpC,MAAMK,WAAW,GAAG,MAAM,IAAI,CAACT,QAAQ,CAACU,OAAO,CAACJ,OAAO,CAAC;IACxD,IAAIG,WAAW,CAACE,MAAM,CAAC,CAAC,EAAE;MACtB;IACJ;IAEA,MAAMC,KAAK,GAAGH,WAAW,CAACI,KAAK;IAC/B,MAAM,IAAI,CAACZ,WAAW,CAACS,OAAO,CAACE,KAAK,EAAER,KAAK,CAACU,gBAAgB,EAAE;MAC1DC,MAAM,EAAE;QACJC,QAAQ,EAAER;MACd;IACJ,CAAC,CAAC;EACN;AACJ;AAEA,OAAO,MAAMS,qCAAqC,GAC9CtB,+BAA+B,CAACuB,oBAAoB,CAAC;EACjDC,cAAc,EAAErB,yCAAyC;EACzDsB,YAAY,EAAE,CAAC3B,eAAe,EAAEC,kBAAkB;AACtD,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/EntryWorkflows/handlers/UpdateEntryOnWorkflowStateAfterCreate.js","sources":["../../../../src/features/EntryWorkflows/handlers/UpdateEntryOnWorkflowStateAfterCreate.ts"],"sourcesContent":["import { GetModelUseCase } from \"@webiny/api-headless-cms/features/contentModel/GetModel/index.js\";\nimport { UpdateEntryUseCase } from \"@webiny/api-headless-cms/features/contentEntry/UpdateEntry/index.js\";\nimport { WorkflowStateAfterCreateHandler } from \"@webiny/api-workflows/features/workflowState/CreateWorkflowState/events.js\";\nimport { getModelIdFromAppName } from \"~/utils/appName.js\";\nimport { getStateValues } from \"~/utils/state.js\";\n\nclass UpdateEntryOnWorkflowStateAfterCreateImpl\n implements WorkflowStateAfterCreateHandler.Interface\n{\n constructor(\n private getModel: GetModelUseCase.Interface,\n private updateEntry: UpdateEntryUseCase.Interface\n ) {}\n\n async handle(event: WorkflowStateAfterCreateHandler.Event): Promise<void> {\n const { state } = event.payload;\n\n const modelId = getModelIdFromAppName(state.app);\n if (!modelId) {\n return;\n }\n\n const values = getStateValues(state);\n\n const modelResult = await this.getModel.execute(modelId);\n if (modelResult.isFail()) {\n return;\n }\n\n const model = modelResult.value;\n await this.updateEntry.execute(model, state.targetRevisionId, {\n system: {\n workflow: values\n }\n });\n }\n}\n\nexport const UpdateEntryOnWorkflowStateAfterCreate =\n WorkflowStateAfterCreateHandler.createImplementation({\n implementation: UpdateEntryOnWorkflowStateAfterCreateImpl,\n dependencies: [GetModelUseCase, UpdateEntryUseCase]\n });\n"],"names":["UpdateEntryOnWorkflowStateAfterCreateImpl","getModel","updateEntry","event","state","modelId","getModelIdFromAppName","values","getStateValues","modelResult","model","UpdateEntryOnWorkflowStateAfterCreate","WorkflowStateAfterCreateHandler","GetModelUseCase","UpdateEntryUseCase"],"mappings":";;;;;AAMA,MAAMA;IAGF,YACYC,QAAmC,EACnCC,WAAyC,CACnD;aAFUD,QAAQ,GAARA;aACAC,WAAW,GAAXA;IACT;IAEH,MAAM,OAAOC,KAA4C,EAAiB;QACtE,MAAM,EAAEC,KAAK,EAAE,GAAGD,MAAM,OAAO;QAE/B,MAAME,UAAUC,sBAAsBF,MAAM,GAAG;QAC/C,IAAI,CAACC,SACD;QAGJ,MAAME,SAASC,eAAeJ;QAE9B,MAAMK,cAAc,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAACJ;QAChD,IAAII,YAAY,MAAM,IAClB;QAGJ,MAAMC,QAAQD,YAAY,KAAK;QAC/B,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAACC,OAAON,MAAM,gBAAgB,EAAE;YAC1D,QAAQ;gBACJ,UAAUG;YACd;QACJ;IACJ;AACJ;AAEO,MAAMI,wCACTC,gCAAgC,oBAAoB,CAAC;IACjD,gBAAgBZ;IAChB,cAAc;QAACa;QAAiBC;KAAmB;AACvD"}
@@ -4,34 +4,32 @@ import { WorkflowStateAfterUpdateHandler } from "@webiny/api-workflows/features/
4
4
  import { getModelIdFromAppName } from "../../../utils/appName.js";
5
5
  import { getStateValues } from "../../../utils/state.js";
6
6
  class UpdateEntryOnWorkflowStateAfterUpdateImpl {
7
- constructor(getModel, updateEntry) {
8
- this.getModel = getModel;
9
- this.updateEntry = updateEntry;
10
- }
11
- async handle(event) {
12
- const {
13
- state
14
- } = event.payload;
15
- const modelId = getModelIdFromAppName(state.app);
16
- if (!modelId) {
17
- return;
7
+ constructor(getModel, updateEntry){
8
+ this.getModel = getModel;
9
+ this.updateEntry = updateEntry;
18
10
  }
19
- const values = getStateValues(state);
20
- const modelResult = await this.getModel.execute(modelId);
21
- if (modelResult.isFail()) {
22
- return;
11
+ async handle(event) {
12
+ const { state } = event.payload;
13
+ const modelId = getModelIdFromAppName(state.app);
14
+ if (!modelId) return;
15
+ const values = getStateValues(state);
16
+ const modelResult = await this.getModel.execute(modelId);
17
+ if (modelResult.isFail()) return;
18
+ const model = modelResult.value;
19
+ await this.updateEntry.execute(model, state.targetRevisionId, {
20
+ system: {
21
+ workflow: values
22
+ }
23
+ });
23
24
  }
24
- const model = modelResult.value;
25
- await this.updateEntry.execute(model, state.targetRevisionId, {
26
- system: {
27
- workflow: values
28
- }
29
- });
30
- }
31
25
  }
32
- export const UpdateEntryOnWorkflowStateAfterUpdate = WorkflowStateAfterUpdateHandler.createImplementation({
33
- implementation: UpdateEntryOnWorkflowStateAfterUpdateImpl,
34
- dependencies: [GetModelUseCase, UpdateEntryUseCase]
26
+ const UpdateEntryOnWorkflowStateAfterUpdate = WorkflowStateAfterUpdateHandler.createImplementation({
27
+ implementation: UpdateEntryOnWorkflowStateAfterUpdateImpl,
28
+ dependencies: [
29
+ GetModelUseCase,
30
+ UpdateEntryUseCase
31
+ ]
35
32
  });
33
+ export { UpdateEntryOnWorkflowStateAfterUpdate };
36
34
 
37
35
  //# sourceMappingURL=UpdateEntryOnWorkflowStateAfterUpdate.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["GetModelUseCase","UpdateEntryUseCase","WorkflowStateAfterUpdateHandler","getModelIdFromAppName","getStateValues","UpdateEntryOnWorkflowStateAfterUpdateImpl","constructor","getModel","updateEntry","handle","event","state","payload","modelId","app","values","modelResult","execute","isFail","model","value","targetRevisionId","system","workflow","UpdateEntryOnWorkflowStateAfterUpdate","createImplementation","implementation","dependencies"],"sources":["UpdateEntryOnWorkflowStateAfterUpdate.ts"],"sourcesContent":["import { GetModelUseCase } from \"@webiny/api-headless-cms/features/contentModel/GetModel/index.js\";\nimport { UpdateEntryUseCase } from \"@webiny/api-headless-cms/features/contentEntry/UpdateEntry/index.js\";\nimport { WorkflowStateAfterUpdateHandler } from \"@webiny/api-workflows/features/workflowState/UpdateWorkflowState/events.js\";\nimport { getModelIdFromAppName } from \"~/utils/appName.js\";\nimport { getStateValues } from \"~/utils/state.js\";\n\nclass UpdateEntryOnWorkflowStateAfterUpdateImpl\n implements WorkflowStateAfterUpdateHandler.Interface\n{\n constructor(\n private getModel: GetModelUseCase.Interface,\n private updateEntry: UpdateEntryUseCase.Interface\n ) {}\n\n async handle(event: WorkflowStateAfterUpdateHandler.Event): Promise<void> {\n const { state } = event.payload;\n\n const modelId = getModelIdFromAppName(state.app);\n if (!modelId) {\n return;\n }\n\n const values = getStateValues(state);\n\n const modelResult = await this.getModel.execute(modelId);\n if (modelResult.isFail()) {\n return;\n }\n\n const model = modelResult.value;\n await this.updateEntry.execute(model, state.targetRevisionId, {\n system: {\n workflow: values\n }\n });\n }\n}\n\nexport const UpdateEntryOnWorkflowStateAfterUpdate =\n WorkflowStateAfterUpdateHandler.createImplementation({\n implementation: UpdateEntryOnWorkflowStateAfterUpdateImpl,\n dependencies: [GetModelUseCase, UpdateEntryUseCase]\n });\n"],"mappings":"AAAA,SAASA,eAAe,QAAQ,kEAAkE;AAClG,SAASC,kBAAkB,QAAQ,qEAAqE;AACxG,SAASC,+BAA+B,QAAQ,4EAA4E;AAC5H,SAASC,qBAAqB;AAC9B,SAASC,cAAc;AAEvB,MAAMC,yCAAyC,CAE/C;EACIC,WAAWA,CACCC,QAAmC,EACnCC,WAAyC,EACnD;IAAA,KAFUD,QAAmC,GAAnCA,QAAmC;IAAA,KACnCC,WAAyC,GAAzCA,WAAyC;EAClD;EAEH,MAAMC,MAAMA,CAACC,KAA4C,EAAiB;IACtE,MAAM;MAAEC;IAAM,CAAC,GAAGD,KAAK,CAACE,OAAO;IAE/B,MAAMC,OAAO,GAAGV,qBAAqB,CAACQ,KAAK,CAACG,GAAG,CAAC;IAChD,IAAI,CAACD,OAAO,EAAE;MACV;IACJ;IAEA,MAAME,MAAM,GAAGX,cAAc,CAACO,KAAK,CAAC;IAEpC,MAAMK,WAAW,GAAG,MAAM,IAAI,CAACT,QAAQ,CAACU,OAAO,CAACJ,OAAO,CAAC;IACxD,IAAIG,WAAW,CAACE,MAAM,CAAC,CAAC,EAAE;MACtB;IACJ;IAEA,MAAMC,KAAK,GAAGH,WAAW,CAACI,KAAK;IAC/B,MAAM,IAAI,CAACZ,WAAW,CAACS,OAAO,CAACE,KAAK,EAAER,KAAK,CAACU,gBAAgB,EAAE;MAC1DC,MAAM,EAAE;QACJC,QAAQ,EAAER;MACd;IACJ,CAAC,CAAC;EACN;AACJ;AAEA,OAAO,MAAMS,qCAAqC,GAC9CtB,+BAA+B,CAACuB,oBAAoB,CAAC;EACjDC,cAAc,EAAErB,yCAAyC;EACzDsB,YAAY,EAAE,CAAC3B,eAAe,EAAEC,kBAAkB;AACtD,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/EntryWorkflows/handlers/UpdateEntryOnWorkflowStateAfterUpdate.js","sources":["../../../../src/features/EntryWorkflows/handlers/UpdateEntryOnWorkflowStateAfterUpdate.ts"],"sourcesContent":["import { GetModelUseCase } from \"@webiny/api-headless-cms/features/contentModel/GetModel/index.js\";\nimport { UpdateEntryUseCase } from \"@webiny/api-headless-cms/features/contentEntry/UpdateEntry/index.js\";\nimport { WorkflowStateAfterUpdateHandler } from \"@webiny/api-workflows/features/workflowState/UpdateWorkflowState/events.js\";\nimport { getModelIdFromAppName } from \"~/utils/appName.js\";\nimport { getStateValues } from \"~/utils/state.js\";\n\nclass UpdateEntryOnWorkflowStateAfterUpdateImpl\n implements WorkflowStateAfterUpdateHandler.Interface\n{\n constructor(\n private getModel: GetModelUseCase.Interface,\n private updateEntry: UpdateEntryUseCase.Interface\n ) {}\n\n async handle(event: WorkflowStateAfterUpdateHandler.Event): Promise<void> {\n const { state } = event.payload;\n\n const modelId = getModelIdFromAppName(state.app);\n if (!modelId) {\n return;\n }\n\n const values = getStateValues(state);\n\n const modelResult = await this.getModel.execute(modelId);\n if (modelResult.isFail()) {\n return;\n }\n\n const model = modelResult.value;\n await this.updateEntry.execute(model, state.targetRevisionId, {\n system: {\n workflow: values\n }\n });\n }\n}\n\nexport const UpdateEntryOnWorkflowStateAfterUpdate =\n WorkflowStateAfterUpdateHandler.createImplementation({\n implementation: UpdateEntryOnWorkflowStateAfterUpdateImpl,\n dependencies: [GetModelUseCase, UpdateEntryUseCase]\n });\n"],"names":["UpdateEntryOnWorkflowStateAfterUpdateImpl","getModel","updateEntry","event","state","modelId","getModelIdFromAppName","values","getStateValues","modelResult","model","UpdateEntryOnWorkflowStateAfterUpdate","WorkflowStateAfterUpdateHandler","GetModelUseCase","UpdateEntryUseCase"],"mappings":";;;;;AAMA,MAAMA;IAGF,YACYC,QAAmC,EACnCC,WAAyC,CACnD;aAFUD,QAAQ,GAARA;aACAC,WAAW,GAAXA;IACT;IAEH,MAAM,OAAOC,KAA4C,EAAiB;QACtE,MAAM,EAAEC,KAAK,EAAE,GAAGD,MAAM,OAAO;QAE/B,MAAME,UAAUC,sBAAsBF,MAAM,GAAG;QAC/C,IAAI,CAACC,SACD;QAGJ,MAAME,SAASC,eAAeJ;QAE9B,MAAMK,cAAc,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAACJ;QAChD,IAAII,YAAY,MAAM,IAClB;QAGJ,MAAMC,QAAQD,YAAY,KAAK;QAC/B,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAACC,OAAON,MAAM,gBAAgB,EAAE;YAC1D,QAAQ;gBACJ,UAAUG;YACd;QACJ;IACJ;AACJ;AAEO,MAAMI,wCACTC,gCAAgC,oBAAoB,CAAC;IACjD,gBAAgBZ;IAChB,cAAc;QAACa;QAAiBC;KAAmB;AACvD"}
@@ -4,48 +4,43 @@ import { createWorkflowAppName } from "../../../utils/appName.js";
4
4
  import { isModelAllowed } from "../../../utils/modelAllowed.js";
5
5
  import { GetTargetWorkflowStateUseCase } from "@webiny/api-workflows/features/workflowState/GetTargetWorkflowState/index.js";
6
6
  class ValidateWorkflowStateOnEntryBeforePublishImpl {
7
- constructor(getTargetState) {
8
- this.getTargetState = getTargetState;
9
- }
10
- async handle(event) {
11
- const {
12
- model,
13
- entry
14
- } = event.payload;
15
- if (!isModelAllowed(model)) {
16
- return;
7
+ constructor(getTargetState){
8
+ this.getTargetState = getTargetState;
17
9
  }
18
- const app = createWorkflowAppName({
19
- model
20
- });
21
- const stateResult = await this.getTargetState.execute({
22
- app,
23
- targetRevisionId: entry.id
24
- });
25
- if (stateResult.isFail()) {
26
- // If there's no state to deal with, exit early.
27
- return;
10
+ async handle(event) {
11
+ const { model, entry } = event.payload;
12
+ if (!isModelAllowed(model)) return;
13
+ const app = createWorkflowAppName({
14
+ model
15
+ });
16
+ const stateResult = await this.getTargetState.execute({
17
+ app,
18
+ targetRevisionId: entry.id
19
+ });
20
+ if (stateResult.isFail()) return;
21
+ const state = stateResult.value;
22
+ if (state?.done) {
23
+ entry.system = {
24
+ ...entry.system,
25
+ workflow: void 0
26
+ };
27
+ return;
28
+ }
29
+ throw new WebinyError("Cannot publish entry because its workflow state is not completed.", "WORKFLOW_STATE_NOT_COMPLETED", {
30
+ app,
31
+ entryId: entry.id,
32
+ state: {
33
+ ...state
34
+ }
35
+ });
28
36
  }
29
- const state = stateResult.value;
30
- if (state?.done) {
31
- entry.system = {
32
- ...entry.system,
33
- workflow: undefined
34
- };
35
- return;
36
- }
37
- throw new WebinyError("Cannot publish entry because its workflow state is not completed.", "WORKFLOW_STATE_NOT_COMPLETED", {
38
- app,
39
- entryId: entry.id,
40
- state: {
41
- ...state
42
- }
43
- });
44
- }
45
37
  }
46
- export const ValidateWorkflowStateOnEntryBeforePublish = EntryBeforePublishEventHandler.createImplementation({
47
- implementation: ValidateWorkflowStateOnEntryBeforePublishImpl,
48
- dependencies: [GetTargetWorkflowStateUseCase]
38
+ const ValidateWorkflowStateOnEntryBeforePublish = EntryBeforePublishEventHandler.createImplementation({
39
+ implementation: ValidateWorkflowStateOnEntryBeforePublishImpl,
40
+ dependencies: [
41
+ GetTargetWorkflowStateUseCase
42
+ ]
49
43
  });
44
+ export { ValidateWorkflowStateOnEntryBeforePublish };
50
45
 
51
46
  //# sourceMappingURL=ValidateWorkflowStateOnEntryBeforePublish.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["WebinyError","EntryBeforePublishEventHandler","createWorkflowAppName","isModelAllowed","GetTargetWorkflowStateUseCase","ValidateWorkflowStateOnEntryBeforePublishImpl","constructor","getTargetState","handle","event","model","entry","payload","app","stateResult","execute","targetRevisionId","id","isFail","state","value","done","system","workflow","undefined","entryId","ValidateWorkflowStateOnEntryBeforePublish","createImplementation","implementation","dependencies"],"sources":["ValidateWorkflowStateOnEntryBeforePublish.ts"],"sourcesContent":["import { WebinyError } from \"@webiny/error\";\nimport { EntryBeforePublishEventHandler } from \"@webiny/api-headless-cms/features/contentEntry/PublishEntry/events.js\";\nimport { createWorkflowAppName } from \"~/utils/appName.js\";\nimport { isModelAllowed } from \"~/utils/modelAllowed.js\";\nimport { GetTargetWorkflowStateUseCase } from \"@webiny/api-workflows/features/workflowState/GetTargetWorkflowState/index.js\";\n\nclass ValidateWorkflowStateOnEntryBeforePublishImpl\n implements EntryBeforePublishEventHandler.Interface\n{\n constructor(private getTargetState: GetTargetWorkflowStateUseCase.Interface) {}\n\n async handle(event: EntryBeforePublishEventHandler.Event): Promise<void> {\n const { model, entry } = event.payload;\n\n if (!isModelAllowed(model)) {\n return;\n }\n\n const app = createWorkflowAppName({ model });\n\n const stateResult = await this.getTargetState.execute({ app, targetRevisionId: entry.id });\n\n if (stateResult.isFail()) {\n // If there's no state to deal with, exit early.\n return;\n }\n\n const state = stateResult.value;\n\n if (state?.done) {\n entry.system = {\n ...entry.system,\n workflow: undefined\n };\n return;\n }\n\n throw new WebinyError(\n \"Cannot publish entry because its workflow state is not completed.\",\n \"WORKFLOW_STATE_NOT_COMPLETED\",\n {\n app,\n entryId: entry.id,\n state: {\n ...state\n }\n }\n );\n }\n}\n\nexport const ValidateWorkflowStateOnEntryBeforePublish =\n EntryBeforePublishEventHandler.createImplementation({\n implementation: ValidateWorkflowStateOnEntryBeforePublishImpl,\n dependencies: [GetTargetWorkflowStateUseCase]\n });\n"],"mappings":"AAAA,SAASA,WAAW,QAAQ,eAAe;AAC3C,SAASC,8BAA8B,QAAQ,uEAAuE;AACtH,SAASC,qBAAqB;AAC9B,SAASC,cAAc;AACvB,SAASC,6BAA6B,QAAQ,8EAA8E;AAE5H,MAAMC,6CAA6C,CAEnD;EACIC,WAAWA,CAASC,cAAuD,EAAE;IAAA,KAAzDA,cAAuD,GAAvDA,cAAuD;EAAG;EAE9E,MAAMC,MAAMA,CAACC,KAA2C,EAAiB;IACrE,MAAM;MAAEC,KAAK;MAAEC;IAAM,CAAC,GAAGF,KAAK,CAACG,OAAO;IAEtC,IAAI,CAACT,cAAc,CAACO,KAAK,CAAC,EAAE;MACxB;IACJ;IAEA,MAAMG,GAAG,GAAGX,qBAAqB,CAAC;MAAEQ;IAAM,CAAC,CAAC;IAE5C,MAAMI,WAAW,GAAG,MAAM,IAAI,CAACP,cAAc,CAACQ,OAAO,CAAC;MAAEF,GAAG;MAAEG,gBAAgB,EAAEL,KAAK,CAACM;IAAG,CAAC,CAAC;IAE1F,IAAIH,WAAW,CAACI,MAAM,CAAC,CAAC,EAAE;MACtB;MACA;IACJ;IAEA,MAAMC,KAAK,GAAGL,WAAW,CAACM,KAAK;IAE/B,IAAID,KAAK,EAAEE,IAAI,EAAE;MACbV,KAAK,CAACW,MAAM,GAAG;QACX,GAAGX,KAAK,CAACW,MAAM;QACfC,QAAQ,EAAEC;MACd,CAAC;MACD;IACJ;IAEA,MAAM,IAAIxB,WAAW,CACjB,mEAAmE,EACnE,8BAA8B,EAC9B;MACIa,GAAG;MACHY,OAAO,EAAEd,KAAK,CAACM,EAAE;MACjBE,KAAK,EAAE;QACH,GAAGA;MACP;IACJ,CACJ,CAAC;EACL;AACJ;AAEA,OAAO,MAAMO,yCAAyC,GAClDzB,8BAA8B,CAAC0B,oBAAoB,CAAC;EAChDC,cAAc,EAAEvB,6CAA6C;EAC7DwB,YAAY,EAAE,CAACzB,6BAA6B;AAChD,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/EntryWorkflows/handlers/ValidateWorkflowStateOnEntryBeforePublish.js","sources":["../../../../src/features/EntryWorkflows/handlers/ValidateWorkflowStateOnEntryBeforePublish.ts"],"sourcesContent":["import { WebinyError } from \"@webiny/error\";\nimport { EntryBeforePublishEventHandler } from \"@webiny/api-headless-cms/features/contentEntry/PublishEntry/events.js\";\nimport { createWorkflowAppName } from \"~/utils/appName.js\";\nimport { isModelAllowed } from \"~/utils/modelAllowed.js\";\nimport { GetTargetWorkflowStateUseCase } from \"@webiny/api-workflows/features/workflowState/GetTargetWorkflowState/index.js\";\n\nclass ValidateWorkflowStateOnEntryBeforePublishImpl\n implements EntryBeforePublishEventHandler.Interface\n{\n constructor(private getTargetState: GetTargetWorkflowStateUseCase.Interface) {}\n\n async handle(event: EntryBeforePublishEventHandler.Event): Promise<void> {\n const { model, entry } = event.payload;\n\n if (!isModelAllowed(model)) {\n return;\n }\n\n const app = createWorkflowAppName({ model });\n\n const stateResult = await this.getTargetState.execute({ app, targetRevisionId: entry.id });\n\n if (stateResult.isFail()) {\n // If there's no state to deal with, exit early.\n return;\n }\n\n const state = stateResult.value;\n\n if (state?.done) {\n entry.system = {\n ...entry.system,\n workflow: undefined\n };\n return;\n }\n\n throw new WebinyError(\n \"Cannot publish entry because its workflow state is not completed.\",\n \"WORKFLOW_STATE_NOT_COMPLETED\",\n {\n app,\n entryId: entry.id,\n state: {\n ...state\n }\n }\n );\n }\n}\n\nexport const ValidateWorkflowStateOnEntryBeforePublish =\n EntryBeforePublishEventHandler.createImplementation({\n implementation: ValidateWorkflowStateOnEntryBeforePublishImpl,\n dependencies: [GetTargetWorkflowStateUseCase]\n });\n"],"names":["ValidateWorkflowStateOnEntryBeforePublishImpl","getTargetState","event","model","entry","isModelAllowed","app","createWorkflowAppName","stateResult","state","undefined","WebinyError","ValidateWorkflowStateOnEntryBeforePublish","EntryBeforePublishEventHandler","GetTargetWorkflowStateUseCase"],"mappings":";;;;;AAMA,MAAMA;IAGF,YAAoBC,cAAuD,CAAE;aAAzDA,cAAc,GAAdA;IAA0D;IAE9E,MAAM,OAAOC,KAA2C,EAAiB;QACrE,MAAM,EAAEC,KAAK,EAAEC,KAAK,EAAE,GAAGF,MAAM,OAAO;QAEtC,IAAI,CAACG,eAAeF,QAChB;QAGJ,MAAMG,MAAMC,sBAAsB;YAAEJ;QAAM;QAE1C,MAAMK,cAAc,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC;YAAEF;YAAK,kBAAkBF,MAAM,EAAE;QAAC;QAExF,IAAII,YAAY,MAAM,IAElB;QAGJ,MAAMC,QAAQD,YAAY,KAAK;QAE/B,IAAIC,OAAO,MAAM;YACbL,MAAM,MAAM,GAAG;gBACX,GAAGA,MAAM,MAAM;gBACf,UAAUM;YACd;YACA;QACJ;QAEA,MAAM,IAAIC,YACN,qEACA,gCACA;YACIL;YACA,SAASF,MAAM,EAAE;YACjB,OAAO;gBACH,GAAGK,KAAK;YACZ;QACJ;IAER;AACJ;AAEO,MAAMG,4CACTC,+BAA+B,oBAAoB,CAAC;IAChD,gBAAgBb;IAChB,cAAc;QAACc;KAA8B;AACjD"}
@@ -1,3 +1 @@
1
1
  export { EntryWorkflowsFeature } from "./feature.js";
2
-
3
- //# sourceMappingURL=index.js.map
@@ -1,10 +1,11 @@
1
1
  import { createFeature } from "@webiny/feature/api";
2
2
  import { DisallowUnpublishableModelsOnBeforeCreate } from "./handlers/DisallowUnpublishableModelsOnBeforeCreate.js";
3
- export const WorkflowsFeature = createFeature({
4
- name: "CmsWorkflows",
5
- register(container) {
6
- container.register(DisallowUnpublishableModelsOnBeforeCreate);
7
- }
3
+ const WorkflowsFeature = createFeature({
4
+ name: "CmsWorkflows",
5
+ register (container) {
6
+ container.register(DisallowUnpublishableModelsOnBeforeCreate);
7
+ }
8
8
  });
9
+ export { WorkflowsFeature };
9
10
 
10
11
  //# sourceMappingURL=feature.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createFeature","DisallowUnpublishableModelsOnBeforeCreate","WorkflowsFeature","name","register","container"],"sources":["feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { DisallowUnpublishableModelsOnBeforeCreate } from \"./handlers/DisallowUnpublishableModelsOnBeforeCreate.js\";\n\nexport const WorkflowsFeature = createFeature({\n name: \"CmsWorkflows\",\n register(container) {\n container.register(DisallowUnpublishableModelsOnBeforeCreate);\n }\n});\n"],"mappings":"AAAA,SAASA,aAAa,QAAQ,qBAAqB;AACnD,SAASC,yCAAyC;AAElD,OAAO,MAAMC,gBAAgB,GAAGF,aAAa,CAAC;EAC1CG,IAAI,EAAE,cAAc;EACpBC,QAAQA,CAACC,SAAS,EAAE;IAChBA,SAAS,CAACD,QAAQ,CAACH,yCAAyC,CAAC;EACjE;AACJ,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/Workflows/feature.js","sources":["../../../src/features/Workflows/feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { DisallowUnpublishableModelsOnBeforeCreate } from \"./handlers/DisallowUnpublishableModelsOnBeforeCreate.js\";\n\nexport const WorkflowsFeature = createFeature({\n name: \"CmsWorkflows\",\n register(container) {\n container.register(DisallowUnpublishableModelsOnBeforeCreate);\n }\n});\n"],"names":["WorkflowsFeature","createFeature","container","DisallowUnpublishableModelsOnBeforeCreate"],"mappings":";;AAGO,MAAMA,mBAAmBC,cAAc;IAC1C,MAAM;IACN,UAASC,SAAS;QACdA,UAAU,QAAQ,CAACC;IACvB;AACJ"}
@@ -2,31 +2,26 @@ import { WorkflowBeforeCreateHandler } from "@webiny/api-workflows/features/work
2
2
  import { getModelIdFromAppName } from "../../../utils/appName.js";
3
3
  import { GetModelUseCase } from "@webiny/api-headless-cms/features/contentModel/GetModel/index.js";
4
4
  class DisallowUnpublishableModelsOnBeforeCreateImpl {
5
- constructor(getModelUseCase) {
6
- this.getModelUseCase = getModelUseCase;
7
- }
8
- async handle(event) {
9
- const {
10
- workflow
11
- } = event.payload;
12
- const modelId = getModelIdFromAppName(workflow.app);
13
- if (!modelId) {
14
- return;
5
+ constructor(getModelUseCase){
6
+ this.getModelUseCase = getModelUseCase;
15
7
  }
16
- const model = await this.getModelUseCase.execute(modelId);
17
- if (model.isFail()) {
18
- return;
8
+ async handle(event) {
9
+ const { workflow } = event.payload;
10
+ const modelId = getModelIdFromAppName(workflow.app);
11
+ if (!modelId) return;
12
+ const model = await this.getModelUseCase.execute(modelId);
13
+ if (model.isFail()) return;
14
+ const tags = model.value.tags || [];
15
+ if (false === tags.includes("$publishing:false")) return;
16
+ throw new Error(`Cannot create a workflow for the model "${modelId}" because it is marked as unpublishable.`);
19
17
  }
20
- const tags = model.value.tags || [];
21
- if (tags.includes("$publishing:false") === false) {
22
- return;
23
- }
24
- throw new Error(`Cannot create a workflow for the model "${modelId}" because it is marked as unpublishable.`);
25
- }
26
18
  }
27
- export const DisallowUnpublishableModelsOnBeforeCreate = WorkflowBeforeCreateHandler.createImplementation({
28
- implementation: DisallowUnpublishableModelsOnBeforeCreateImpl,
29
- dependencies: [GetModelUseCase]
19
+ const DisallowUnpublishableModelsOnBeforeCreate = WorkflowBeforeCreateHandler.createImplementation({
20
+ implementation: DisallowUnpublishableModelsOnBeforeCreateImpl,
21
+ dependencies: [
22
+ GetModelUseCase
23
+ ]
30
24
  });
25
+ export { DisallowUnpublishableModelsOnBeforeCreate };
31
26
 
32
27
  //# sourceMappingURL=DisallowUnpublishableModelsOnBeforeCreate.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["WorkflowBeforeCreateHandler","getModelIdFromAppName","GetModelUseCase","DisallowUnpublishableModelsOnBeforeCreateImpl","constructor","getModelUseCase","handle","event","workflow","payload","modelId","app","model","execute","isFail","tags","value","includes","Error","DisallowUnpublishableModelsOnBeforeCreate","createImplementation","implementation","dependencies"],"sources":["DisallowUnpublishableModelsOnBeforeCreate.ts"],"sourcesContent":["import { WorkflowBeforeCreateHandler } from \"@webiny/api-workflows/features/workflow/CreateWorkflow/events.js\";\nimport { getModelIdFromAppName } from \"~/utils/appName.js\";\nimport { GetModelUseCase } from \"@webiny/api-headless-cms/features/contentModel/GetModel/index.js\";\n\nclass DisallowUnpublishableModelsOnBeforeCreateImpl\n implements WorkflowBeforeCreateHandler.Interface\n{\n public constructor(private getModelUseCase: GetModelUseCase.Interface) {}\n\n public async handle(event: WorkflowBeforeCreateHandler.Event): Promise<void> {\n const { workflow } = event.payload;\n const modelId = getModelIdFromAppName(workflow.app);\n if (!modelId) {\n return;\n }\n const model = await this.getModelUseCase.execute(modelId);\n if (model.isFail()) {\n return;\n }\n const tags = model.value.tags || [];\n if (tags.includes(\"$publishing:false\") === false) {\n return;\n }\n throw new Error(\n `Cannot create a workflow for the model \"${modelId}\" because it is marked as unpublishable.`\n );\n }\n}\n\nexport const DisallowUnpublishableModelsOnBeforeCreate =\n WorkflowBeforeCreateHandler.createImplementation({\n implementation: DisallowUnpublishableModelsOnBeforeCreateImpl,\n dependencies: [GetModelUseCase]\n });\n"],"mappings":"AAAA,SAASA,2BAA2B,QAAQ,kEAAkE;AAC9G,SAASC,qBAAqB;AAC9B,SAASC,eAAe,QAAQ,kEAAkE;AAElG,MAAMC,6CAA6C,CAEnD;EACWC,WAAWA,CAASC,eAA0C,EAAE;IAAA,KAA5CA,eAA0C,GAA1CA,eAA0C;EAAG;EAExE,MAAaC,MAAMA,CAACC,KAAwC,EAAiB;IACzE,MAAM;MAAEC;IAAS,CAAC,GAAGD,KAAK,CAACE,OAAO;IAClC,MAAMC,OAAO,GAAGT,qBAAqB,CAACO,QAAQ,CAACG,GAAG,CAAC;IACnD,IAAI,CAACD,OAAO,EAAE;MACV;IACJ;IACA,MAAME,KAAK,GAAG,MAAM,IAAI,CAACP,eAAe,CAACQ,OAAO,CAACH,OAAO,CAAC;IACzD,IAAIE,KAAK,CAACE,MAAM,CAAC,CAAC,EAAE;MAChB;IACJ;IACA,MAAMC,IAAI,GAAGH,KAAK,CAACI,KAAK,CAACD,IAAI,IAAI,EAAE;IACnC,IAAIA,IAAI,CAACE,QAAQ,CAAC,mBAAmB,CAAC,KAAK,KAAK,EAAE;MAC9C;IACJ;IACA,MAAM,IAAIC,KAAK,CACX,2CAA2CR,OAAO,0CACtD,CAAC;EACL;AACJ;AAEA,OAAO,MAAMS,yCAAyC,GAClDnB,2BAA2B,CAACoB,oBAAoB,CAAC;EAC7CC,cAAc,EAAElB,6CAA6C;EAC7DmB,YAAY,EAAE,CAACpB,eAAe;AAClC,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/Workflows/handlers/DisallowUnpublishableModelsOnBeforeCreate.js","sources":["../../../../src/features/Workflows/handlers/DisallowUnpublishableModelsOnBeforeCreate.ts"],"sourcesContent":["import { WorkflowBeforeCreateHandler } from \"@webiny/api-workflows/features/workflow/CreateWorkflow/events.js\";\nimport { getModelIdFromAppName } from \"~/utils/appName.js\";\nimport { GetModelUseCase } from \"@webiny/api-headless-cms/features/contentModel/GetModel/index.js\";\n\nclass DisallowUnpublishableModelsOnBeforeCreateImpl\n implements WorkflowBeforeCreateHandler.Interface\n{\n public constructor(private getModelUseCase: GetModelUseCase.Interface) {}\n\n public async handle(event: WorkflowBeforeCreateHandler.Event): Promise<void> {\n const { workflow } = event.payload;\n const modelId = getModelIdFromAppName(workflow.app);\n if (!modelId) {\n return;\n }\n const model = await this.getModelUseCase.execute(modelId);\n if (model.isFail()) {\n return;\n }\n const tags = model.value.tags || [];\n if (tags.includes(\"$publishing:false\") === false) {\n return;\n }\n throw new Error(\n `Cannot create a workflow for the model \"${modelId}\" because it is marked as unpublishable.`\n );\n }\n}\n\nexport const DisallowUnpublishableModelsOnBeforeCreate =\n WorkflowBeforeCreateHandler.createImplementation({\n implementation: DisallowUnpublishableModelsOnBeforeCreateImpl,\n dependencies: [GetModelUseCase]\n });\n"],"names":["DisallowUnpublishableModelsOnBeforeCreateImpl","getModelUseCase","event","workflow","modelId","getModelIdFromAppName","model","tags","Error","DisallowUnpublishableModelsOnBeforeCreate","WorkflowBeforeCreateHandler","GetModelUseCase"],"mappings":";;;AAIA,MAAMA;IAGF,YAA2BC,eAA0C,CAAE;aAA5CA,eAAe,GAAfA;IAA6C;IAExE,MAAa,OAAOC,KAAwC,EAAiB;QACzE,MAAM,EAAEC,QAAQ,EAAE,GAAGD,MAAM,OAAO;QAClC,MAAME,UAAUC,sBAAsBF,SAAS,GAAG;QAClD,IAAI,CAACC,SACD;QAEJ,MAAME,QAAQ,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,CAACF;QACjD,IAAIE,MAAM,MAAM,IACZ;QAEJ,MAAMC,OAAOD,MAAM,KAAK,CAAC,IAAI,IAAI,EAAE;QACnC,IAAIC,AAAuC,UAAvCA,KAAK,QAAQ,CAAC,sBACd;QAEJ,MAAM,IAAIC,MACN,CAAC,wCAAwC,EAAEJ,QAAQ,wCAAwC,CAAC;IAEpG;AACJ;AAEO,MAAMK,4CACTC,4BAA4B,oBAAoB,CAAC;IAC7C,gBAAgBV;IAChB,cAAc;QAACW;KAAgB;AACnC"}
@@ -1,3 +1 @@
1
1
  export { WorkflowsFeature } from "./feature.js";
2
-
3
- //# sourceMappingURL=index.js.map
package/index.js CHANGED
@@ -2,19 +2,16 @@ import { createContextPlugin } from "@webiny/api";
2
2
  import { EntryWorkflowsFeature } from "./features/EntryWorkflows/feature.js";
3
3
  import { WcpContext } from "@webiny/api-core/features/wcp/WcpContext/index.js";
4
4
  import { WorkflowsFeature } from "./features/Workflows/index.js";
5
- export const createHeadlessCmsWorkflows = () => {
6
- const plugin = createContextPlugin(async context => {
7
- const wcpContext = context.container.resolve(WcpContext);
8
- if (!wcpContext.canUseWorkflows()) {
9
- return;
10
- }
11
-
12
- // Register features
13
- EntryWorkflowsFeature.register(context.container);
14
- WorkflowsFeature.register(context.container);
15
- });
16
- plugin.name = "headless-cms-workflows.context";
17
- return plugin;
5
+ const createHeadlessCmsWorkflows = ()=>{
6
+ const plugin = createContextPlugin(async (context)=>{
7
+ const wcpContext = context.container.resolve(WcpContext);
8
+ if (!wcpContext.canUseWorkflows()) return;
9
+ EntryWorkflowsFeature.register(context.container);
10
+ WorkflowsFeature.register(context.container);
11
+ });
12
+ plugin.name = "headless-cms-workflows.context";
13
+ return plugin;
18
14
  };
15
+ export { createHeadlessCmsWorkflows };
19
16
 
20
17
  //# sourceMappingURL=index.js.map
package/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"names":["createContextPlugin","EntryWorkflowsFeature","WcpContext","WorkflowsFeature","createHeadlessCmsWorkflows","plugin","context","wcpContext","container","resolve","canUseWorkflows","register","name"],"sources":["index.ts"],"sourcesContent":["import { createContextPlugin } from \"@webiny/api\";\nimport { EntryWorkflowsFeature } from \"./features/EntryWorkflows/feature.js\";\nimport { WcpContext } from \"@webiny/api-core/features/wcp/WcpContext/index.js\";\nimport { WorkflowsFeature } from \"~/features/Workflows/index.js\";\n\nexport const createHeadlessCmsWorkflows = () => {\n const plugin = createContextPlugin(async context => {\n const wcpContext = context.container.resolve(WcpContext);\n\n if (!wcpContext.canUseWorkflows()) {\n return;\n }\n\n // Register features\n EntryWorkflowsFeature.register(context.container);\n WorkflowsFeature.register(context.container);\n });\n\n plugin.name = \"headless-cms-workflows.context\";\n\n return plugin;\n};\n"],"mappings":"AAAA,SAASA,mBAAmB,QAAQ,aAAa;AACjD,SAASC,qBAAqB;AAC9B,SAASC,UAAU,QAAQ,mDAAmD;AAC9E,SAASC,gBAAgB;AAEzB,OAAO,MAAMC,0BAA0B,GAAGA,CAAA,KAAM;EAC5C,MAAMC,MAAM,GAAGL,mBAAmB,CAAC,MAAMM,OAAO,IAAI;IAChD,MAAMC,UAAU,GAAGD,OAAO,CAACE,SAAS,CAACC,OAAO,CAACP,UAAU,CAAC;IAExD,IAAI,CAACK,UAAU,CAACG,eAAe,CAAC,CAAC,EAAE;MAC/B;IACJ;;IAEA;IACAT,qBAAqB,CAACU,QAAQ,CAACL,OAAO,CAACE,SAAS,CAAC;IACjDL,gBAAgB,CAACQ,QAAQ,CAACL,OAAO,CAACE,SAAS,CAAC;EAChD,CAAC,CAAC;EAEFH,MAAM,CAACO,IAAI,GAAG,gCAAgC;EAE9C,OAAOP,MAAM;AACjB,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"index.js","sources":["../src/index.ts"],"sourcesContent":["import { createContextPlugin } from \"@webiny/api\";\nimport { EntryWorkflowsFeature } from \"./features/EntryWorkflows/feature.js\";\nimport { WcpContext } from \"@webiny/api-core/features/wcp/WcpContext/index.js\";\nimport { WorkflowsFeature } from \"~/features/Workflows/index.js\";\n\nexport const createHeadlessCmsWorkflows = () => {\n const plugin = createContextPlugin(async context => {\n const wcpContext = context.container.resolve(WcpContext);\n\n if (!wcpContext.canUseWorkflows()) {\n return;\n }\n\n // Register features\n EntryWorkflowsFeature.register(context.container);\n WorkflowsFeature.register(context.container);\n });\n\n plugin.name = \"headless-cms-workflows.context\";\n\n return plugin;\n};\n"],"names":["createHeadlessCmsWorkflows","plugin","createContextPlugin","context","wcpContext","WcpContext","EntryWorkflowsFeature","WorkflowsFeature"],"mappings":";;;;AAKO,MAAMA,6BAA6B;IACtC,MAAMC,SAASC,oBAAoB,OAAMC;QACrC,MAAMC,aAAaD,QAAQ,SAAS,CAAC,OAAO,CAACE;QAE7C,IAAI,CAACD,WAAW,eAAe,IAC3B;QAIJE,sBAAsB,QAAQ,CAACH,QAAQ,SAAS;QAChDI,iBAAiB,QAAQ,CAACJ,QAAQ,SAAS;IAC/C;IAEAF,OAAO,IAAI,GAAG;IAEd,OAAOA;AACX"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@webiny/api-headless-cms-workflows",
3
- "version": "6.3.0-beta.4",
3
+ "version": "6.4.0-beta.0",
4
4
  "type": "module",
5
5
  "exports": {
6
6
  ".": "./index.js",
@@ -17,25 +17,25 @@
17
17
  },
18
18
  "license": "MIT",
19
19
  "dependencies": {
20
- "@webiny/api": "6.3.0-beta.4",
21
- "@webiny/api-core": "6.3.0-beta.4",
22
- "@webiny/api-headless-cms": "6.3.0-beta.4",
23
- "@webiny/api-workflows": "6.3.0-beta.4",
24
- "@webiny/error": "6.3.0-beta.4",
25
- "@webiny/feature": "6.3.0-beta.4"
20
+ "@webiny/api": "6.4.0-beta.0",
21
+ "@webiny/api-core": "6.4.0-beta.0",
22
+ "@webiny/api-headless-cms": "6.4.0-beta.0",
23
+ "@webiny/api-workflows": "6.4.0-beta.0",
24
+ "@webiny/error": "6.4.0-beta.0",
25
+ "@webiny/feature": "6.4.0-beta.0"
26
26
  },
27
27
  "devDependencies": {
28
- "@webiny/build-tools": "6.3.0-beta.4",
29
- "@webiny/plugins": "6.3.0-beta.4",
30
- "@webiny/project-utils": "6.3.0-beta.4",
31
- "@webiny/testing": "6.3.0-beta.4",
32
- "@webiny/wcp": "6.3.0-beta.4",
28
+ "@webiny/build-tools": "6.4.0-beta.0",
29
+ "@webiny/plugins": "6.4.0-beta.0",
30
+ "@webiny/project-utils": "6.4.0-beta.0",
31
+ "@webiny/testing": "6.4.0-beta.0",
32
+ "@webiny/wcp": "6.4.0-beta.0",
33
33
  "typescript": "6.0.3",
34
- "vitest": "4.1.5"
34
+ "vitest": "4.1.6"
35
35
  },
36
36
  "publishConfig": {
37
37
  "access": "public",
38
38
  "directory": "dist"
39
39
  },
40
- "gitHead": "7cefe15431dbd65504e1f58147dc9e55bcbfa693"
40
+ "gitHead": "a545d7529828af07d08d49c3da1bcb967483b9ce"
41
41
  }
package/utils/appName.js CHANGED
@@ -1,14 +1,9 @@
1
- export const createWorkflowAppName = ({
2
- model
3
- }) => {
4
- return `cms.${model.modelId}`;
5
- };
6
- export const getModelIdFromAppName = app => {
7
- const matched = app.match(/^cms\.([a-zA-Z0-9_-]+)$/);
8
- if (!matched) {
9
- return null;
10
- }
11
- return matched ? matched[1] : null;
1
+ const createWorkflowAppName = ({ model })=>`cms.${model.modelId}`;
2
+ const getModelIdFromAppName = (app)=>{
3
+ const matched = app.match(/^cms\.([a-zA-Z0-9_-]+)$/);
4
+ if (!matched) return null;
5
+ return matched ? matched[1] : null;
12
6
  };
7
+ export { createWorkflowAppName, getModelIdFromAppName };
13
8
 
14
9
  //# sourceMappingURL=appName.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createWorkflowAppName","model","modelId","getModelIdFromAppName","app","matched","match"],"sources":["appName.ts"],"sourcesContent":["import type { CmsModel } from \"@webiny/api-headless-cms/types/index.js\";\n\ninterface IParams {\n model: Pick<CmsModel, \"modelId\">;\n}\nexport const createWorkflowAppName = ({ model }: IParams): string => {\n return `cms.${model.modelId}`;\n};\n\nexport const getModelIdFromAppName = (app: string): string | null => {\n const matched = app.match(/^cms\\.([a-zA-Z0-9_-]+)$/);\n if (!matched) {\n return null;\n }\n return matched ? matched[1] : null;\n};\n"],"mappings":"AAKA,OAAO,MAAMA,qBAAqB,GAAGA,CAAC;EAAEC;AAAe,CAAC,KAAa;EACjE,OAAO,OAAOA,KAAK,CAACC,OAAO,EAAE;AACjC,CAAC;AAED,OAAO,MAAMC,qBAAqB,GAAIC,GAAW,IAAoB;EACjE,MAAMC,OAAO,GAAGD,GAAG,CAACE,KAAK,CAAC,yBAAyB,CAAC;EACpD,IAAI,CAACD,OAAO,EAAE;IACV,OAAO,IAAI;EACf;EACA,OAAOA,OAAO,GAAGA,OAAO,CAAC,CAAC,CAAC,GAAG,IAAI;AACtC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"utils/appName.js","sources":["../../src/utils/appName.ts"],"sourcesContent":["import type { CmsModel } from \"@webiny/api-headless-cms/types/index.js\";\n\ninterface IParams {\n model: Pick<CmsModel, \"modelId\">;\n}\nexport const createWorkflowAppName = ({ model }: IParams): string => {\n return `cms.${model.modelId}`;\n};\n\nexport const getModelIdFromAppName = (app: string): string | null => {\n const matched = app.match(/^cms\\.([a-zA-Z0-9_-]+)$/);\n if (!matched) {\n return null;\n }\n return matched ? matched[1] : null;\n};\n"],"names":["createWorkflowAppName","model","getModelIdFromAppName","app","matched"],"mappings":"AAKO,MAAMA,wBAAwB,CAAC,EAAEC,KAAK,EAAW,GAC7C,CAAC,IAAI,EAAEA,MAAM,OAAO,EAAE;AAG1B,MAAMC,wBAAwB,CAACC;IAClC,MAAMC,UAAUD,IAAI,KAAK,CAAC;IAC1B,IAAI,CAACC,SACD,OAAO;IAEX,OAAOA,UAAUA,OAAO,CAAC,EAAE,GAAG;AAClC"}
@@ -1,13 +1,9 @@
1
1
  import { CMS_MODEL_SINGLETON_TAG } from "@webiny/api-headless-cms/constants.js";
2
- export const isModelAllowed = model => {
3
- if (model.isPrivate) {
4
- return false;
5
- }
6
- // TODO remove when we allow singleton models to have workflows.
7
- else if (model.tags?.includes(CMS_MODEL_SINGLETON_TAG)) {
8
- return false;
9
- }
10
- return true;
2
+ const isModelAllowed = (model)=>{
3
+ if (model.isPrivate) return false;
4
+ if (model.tags?.includes(CMS_MODEL_SINGLETON_TAG)) return false;
5
+ return true;
11
6
  };
7
+ export { isModelAllowed };
12
8
 
13
9
  //# sourceMappingURL=modelAllowed.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["CMS_MODEL_SINGLETON_TAG","isModelAllowed","model","isPrivate","tags","includes"],"sources":["modelAllowed.ts"],"sourcesContent":["import type { CmsModel } from \"@webiny/api-headless-cms/types/index.js\";\nimport { CMS_MODEL_SINGLETON_TAG } from \"@webiny/api-headless-cms/constants.js\";\n\nexport const isModelAllowed = (model: Pick<CmsModel, \"isPrivate\" | \"tags\">): boolean => {\n if (model.isPrivate) {\n return false;\n }\n // TODO remove when we allow singleton models to have workflows.\n else if (model.tags?.includes(CMS_MODEL_SINGLETON_TAG)) {\n return false;\n }\n return true;\n};\n"],"mappings":"AACA,SAASA,uBAAuB,QAAQ,uCAAuC;AAE/E,OAAO,MAAMC,cAAc,GAAIC,KAA2C,IAAc;EACpF,IAAIA,KAAK,CAACC,SAAS,EAAE;IACjB,OAAO,KAAK;EAChB;EACA;EAAA,KACK,IAAID,KAAK,CAACE,IAAI,EAAEC,QAAQ,CAACL,uBAAuB,CAAC,EAAE;IACpD,OAAO,KAAK;EAChB;EACA,OAAO,IAAI;AACf,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"utils/modelAllowed.js","sources":["../../src/utils/modelAllowed.ts"],"sourcesContent":["import type { CmsModel } from \"@webiny/api-headless-cms/types/index.js\";\nimport { CMS_MODEL_SINGLETON_TAG } from \"@webiny/api-headless-cms/constants.js\";\n\nexport const isModelAllowed = (model: Pick<CmsModel, \"isPrivate\" | \"tags\">): boolean => {\n if (model.isPrivate) {\n return false;\n }\n // TODO remove when we allow singleton models to have workflows.\n else if (model.tags?.includes(CMS_MODEL_SINGLETON_TAG)) {\n return false;\n }\n return true;\n};\n"],"names":["isModelAllowed","model","CMS_MODEL_SINGLETON_TAG"],"mappings":";AAGO,MAAMA,iBAAiB,CAACC;IAC3B,IAAIA,MAAM,SAAS,EACf,OAAO;IAGN,IAAIA,MAAM,IAAI,EAAE,SAASC,0BAC1B,OAAO;IAEX,OAAO;AACX"}
package/utils/state.js CHANGED
@@ -1,11 +1,12 @@
1
- export const getStateValues = state => {
2
- const activeStep = state.currentStep;
3
- return {
4
- workflowId: state.workflowId,
5
- stepId: activeStep.id,
6
- stepName: activeStep.title,
7
- state: activeStep.state
8
- };
1
+ const getStateValues = (state)=>{
2
+ const activeStep = state.currentStep;
3
+ return {
4
+ workflowId: state.workflowId,
5
+ stepId: activeStep.id,
6
+ stepName: activeStep.title,
7
+ state: activeStep.state
8
+ };
9
9
  };
10
+ export { getStateValues };
10
11
 
11
12
  //# sourceMappingURL=state.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["getStateValues","state","activeStep","currentStep","workflowId","stepId","id","stepName","title"],"sources":["state.ts"],"sourcesContent":["import type { ICmsEntryWorkflowState } from \"@webiny/api-workflows/types.js\";\nimport type { WorkflowState } from \"@webiny/api-workflows/domain/workflowState/WorkflowState.js\";\n\nexport const getStateValues = (state: WorkflowState): ICmsEntryWorkflowState => {\n const activeStep = state.currentStep;\n\n return {\n workflowId: state.workflowId,\n stepId: activeStep.id,\n stepName: activeStep.title,\n state: activeStep.state\n };\n};\n"],"mappings":"AAGA,OAAO,MAAMA,cAAc,GAAIC,KAAoB,IAA6B;EAC5E,MAAMC,UAAU,GAAGD,KAAK,CAACE,WAAW;EAEpC,OAAO;IACHC,UAAU,EAAEH,KAAK,CAACG,UAAU;IAC5BC,MAAM,EAAEH,UAAU,CAACI,EAAE;IACrBC,QAAQ,EAAEL,UAAU,CAACM,KAAK;IAC1BP,KAAK,EAAEC,UAAU,CAACD;EACtB,CAAC;AACL,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"utils/state.js","sources":["../../src/utils/state.ts"],"sourcesContent":["import type { ICmsEntryWorkflowState } from \"@webiny/api-workflows/types.js\";\nimport type { WorkflowState } from \"@webiny/api-workflows/domain/workflowState/WorkflowState.js\";\n\nexport const getStateValues = (state: WorkflowState): ICmsEntryWorkflowState => {\n const activeStep = state.currentStep;\n\n return {\n workflowId: state.workflowId,\n stepId: activeStep.id,\n stepName: activeStep.title,\n state: activeStep.state\n };\n};\n"],"names":["getStateValues","state","activeStep"],"mappings":"AAGO,MAAMA,iBAAiB,CAACC;IAC3B,MAAMC,aAAaD,MAAM,WAAW;IAEpC,OAAO;QACH,YAAYA,MAAM,UAAU;QAC5B,QAAQC,WAAW,EAAE;QACrB,UAAUA,WAAW,KAAK;QAC1B,OAAOA,WAAW,KAAK;IAC3B;AACJ"}
@@ -1 +0,0 @@
1
- {"version":3,"names":["EntryWorkflowsFeature"],"sources":["index.ts"],"sourcesContent":["export { EntryWorkflowsFeature } from \"./feature.js\";\n"],"mappings":"AAAA,SAASA,qBAAqB","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"names":["WorkflowsFeature"],"sources":["index.ts"],"sourcesContent":["export { WorkflowsFeature } from \"./feature.js\";\n"],"mappings":"AAAA,SAASA,gBAAgB","ignoreList":[]}