@rytass/bpm-core-nestjs-module 0.9.1 → 0.11.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 (68) hide show
  1. package/CHANGELOG.md +62 -0
  2. package/README.md +17 -5
  3. package/package.json +3 -3
  4. package/src/lib/attachment/attachment-options.js +7 -1
  5. package/src/lib/attachment/attachment-options.js.map +1 -1
  6. package/src/lib/attachment/attachment.service.js +7 -0
  7. package/src/lib/attachment/attachment.service.js.map +1 -1
  8. package/src/lib/bpm/bpm-root.module.d.ts +11 -0
  9. package/src/lib/bpm/bpm-root.module.js.map +1 -1
  10. package/src/lib/calendar/calendar.module.d.ts +12 -0
  11. package/src/lib/calendar/calendar.module.js.map +1 -1
  12. package/src/lib/common/filters/all-exceptions.filter.d.ts +11 -0
  13. package/src/lib/common/filters/all-exceptions.filter.js +35 -1
  14. package/src/lib/common/filters/all-exceptions.filter.js.map +1 -1
  15. package/src/lib/form-data-source/form-data-source-value-resolver.service.d.ts +6 -7
  16. package/src/lib/form-data-source/form-data-source-value-resolver.service.js +91 -291
  17. package/src/lib/form-data-source/form-data-source-value-resolver.service.js.map +1 -1
  18. package/src/lib/form-data-source/form-data-source.queries.d.ts +24 -0
  19. package/src/lib/form-data-source/form-data-source.queries.js +179 -7
  20. package/src/lib/form-data-source/form-data-source.queries.js.map +1 -1
  21. package/src/lib/form-data-source/form-data-source.service.d.ts +36 -21
  22. package/src/lib/form-data-source/form-data-source.service.js +143 -359
  23. package/src/lib/form-data-source/form-data-source.service.js.map +1 -1
  24. package/src/lib/form-data-source/form-data-source.types.d.ts +17 -0
  25. package/src/lib/form-data-source/form-data-source.types.js.map +1 -1
  26. package/src/lib/form-data-source/form-data-source.validation.d.ts +78 -0
  27. package/src/lib/form-data-source/form-data-source.validation.js +409 -0
  28. package/src/lib/form-data-source/form-data-source.validation.js.map +1 -0
  29. package/src/lib/migrations/0000000021000-notification-silenced.d.ts +15 -0
  30. package/src/lib/migrations/0000000021000-notification-silenced.js +31 -0
  31. package/src/lib/migrations/0000000021000-notification-silenced.js.map +1 -0
  32. package/src/lib/migrations/index.d.ts +1 -0
  33. package/src/lib/migrations/index.js +3 -0
  34. package/src/lib/migrations/index.js.map +1 -1
  35. package/src/lib/notification/index.d.ts +1 -0
  36. package/src/lib/notification/index.js +1 -0
  37. package/src/lib/notification/index.js.map +1 -1
  38. package/src/lib/notification/notification-delivery.service.d.ts +26 -1
  39. package/src/lib/notification/notification-delivery.service.js +205 -20
  40. package/src/lib/notification/notification-delivery.service.js.map +1 -1
  41. package/src/lib/notification/notification-dispatcher.token.d.ts +13 -0
  42. package/src/lib/notification/notification-dispatcher.token.js.map +1 -1
  43. package/src/lib/notification/notification-observer.token.d.ts +6 -0
  44. package/src/lib/notification/notification-observer.token.js.map +1 -1
  45. package/src/lib/notification/notification-options.d.ts +43 -0
  46. package/src/lib/notification/notification-options.js +45 -4
  47. package/src/lib/notification/notification-options.js.map +1 -1
  48. package/src/lib/notification/notification-schedule.d.ts +41 -0
  49. package/src/lib/notification/notification-schedule.js +158 -0
  50. package/src/lib/notification/notification-schedule.js.map +1 -0
  51. package/src/lib/notification/notification.entity.d.ts +12 -0
  52. package/src/lib/notification/notification.entity.js +5 -0
  53. package/src/lib/notification/notification.entity.js.map +1 -1
  54. package/src/lib/notification/notification.service.d.ts +10 -0
  55. package/src/lib/notification/notification.service.js +100 -21
  56. package/src/lib/notification/notification.service.js.map +1 -1
  57. package/src/lib/template/index.d.ts +1 -0
  58. package/src/lib/template/index.js +1 -0
  59. package/src/lib/template/index.js.map +1 -1
  60. package/src/lib/template/template-observer.token.d.ts +67 -0
  61. package/src/lib/template/template-observer.token.js +16 -0
  62. package/src/lib/template/template-observer.token.js.map +1 -0
  63. package/src/lib/template/template.mutations.d.ts +1 -1
  64. package/src/lib/template/template.mutations.js +4 -3
  65. package/src/lib/template/template.mutations.js.map +1 -1
  66. package/src/lib/template/template.service.d.ts +18 -2
  67. package/src/lib/template/template.service.js +117 -17
  68. package/src/lib/template/template.service.js.map +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"notification.service.js","sourceRoot":"","sources":["../../../../../../libs/bpm-core/src/lib/notification/notification.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"notification.service.js","sourceRoot":"","sources":["../../../../../../libs/bpm-core/src/lib/notification/notification.service.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@ export * from './approval-template.entity';
4
4
  export * from './compose-approval-template.object';
5
5
  export * from './dto/approval-template.input';
6
6
  export * from './dto/compose-approval-template.input';
7
+ export * from './template-observer.token';
7
8
  export * from './template.enums';
8
9
  export * from './template.module';
9
10
  export * from './template.service';
@@ -7,6 +7,7 @@ tslib_1.__exportStar(require("./approval-template.entity"), exports);
7
7
  tslib_1.__exportStar(require("./compose-approval-template.object"), exports);
8
8
  tslib_1.__exportStar(require("./dto/approval-template.input"), exports);
9
9
  tslib_1.__exportStar(require("./dto/compose-approval-template.input"), exports);
10
+ tslib_1.__exportStar(require("./template-observer.token"), exports);
10
11
  tslib_1.__exportStar(require("./template.enums"), exports);
11
12
  tslib_1.__exportStar(require("./template.module"), exports);
12
13
  tslib_1.__exportStar(require("./template.service"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../libs/bpm-core/src/lib/template/index.ts"],"names":[],"mappings":";;;AAAA,8EAAoD;AACpD,6EAAmD;AACnD,qEAA2C;AAC3C,6EAAmD;AACnD,wEAA8C;AAC9C,gFAAsD;AACtD,2DAAiC;AACjC,4DAAkC;AAClC,6DAAmC;AACnC,0EAAgD"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../libs/bpm-core/src/lib/template/index.ts"],"names":[],"mappings":";;;AAAA,8EAAoD;AACpD,6EAAmD;AACnD,qEAA2C;AAC3C,6EAAmD;AACnD,wEAA8C;AAC9C,gFAAsD;AACtD,oEAA0C;AAC1C,2DAAiC;AACjC,4DAAkC;AAClC,6DAAmC;AACnC,0EAAgD"}
@@ -0,0 +1,67 @@
1
+ import { InjectionToken } from '@nestjs/common';
2
+ import { EntityManager } from 'typeorm';
3
+ import { ApprovalTemplateEntity } from './approval-template.entity';
4
+ import { ApprovalTemplateVersionEntity } from './approval-template-version.entity';
5
+ /**
6
+ * Which host-facing template mutation produced the change. One event is emitted
7
+ * per mutation, so a compose that also publishes reports `COMPOSED` with
8
+ * `published: true` rather than two separate events.
9
+ */
10
+ export declare enum BPMTemplateChangeActionEnum {
11
+ COMPOSED = "COMPOSED",
12
+ VERSION_PUBLISHED = "VERSION_PUBLISHED",
13
+ VERSION_ROLLED_BACK = "VERSION_ROLLED_BACK"
14
+ }
15
+ export interface BPMTemplateChangedEvent {
16
+ /** Which mutation ran. */
17
+ readonly action: BPMTemplateChangeActionEnum;
18
+ /** The template as it stands after the change. */
19
+ readonly template: ApprovalTemplateEntity;
20
+ /** The version the mutation acted on, after the change. */
21
+ readonly version: ApprovalTemplateVersionEntity;
22
+ /**
23
+ * The template's `currentVersionId` before the change, so a host can record
24
+ * "v6 → v4" for a rollback. `null` when the template had no published
25
+ * version yet; equal to `version.id` when the change did not move the
26
+ * pointer (a `COMPOSED` that only saved a draft).
27
+ */
28
+ readonly previousVersionId: string | null;
29
+ /**
30
+ * Whether `version` is the template's published version as of this event.
31
+ * Always `true` for `VERSION_PUBLISHED` and `VERSION_ROLLED_BACK`; follows
32
+ * the `publish` flag for `COMPOSED`.
33
+ */
34
+ readonly published: boolean;
35
+ /**
36
+ * The member BPM was told performed the change, or `null` when the caller
37
+ * supplied none. BPM does not authenticate this value — it is whatever the
38
+ * host's resolver passed in.
39
+ */
40
+ readonly actorMemberId: string | null;
41
+ /**
42
+ * Present when the change was written inside a caller-supplied transaction,
43
+ * in which case it is **not committed yet** — a host writing an audit row
44
+ * should join this manager or defer until it commits. Absent when BPM owned
45
+ * the transaction, which means the change is already committed.
46
+ */
47
+ readonly manager?: EntityManager;
48
+ }
49
+ /**
50
+ * Observes approval-template changes, so a host can keep an audit trail of
51
+ * "who changed the approval flow, and when".
52
+ *
53
+ * BPM registers `publishApprovalTemplateVersion`,
54
+ * `rollbackApprovalTemplateVersion` and `composeApprovalTemplateWithForm` on
55
+ * the same GraphQL schema as the host's own resolvers, and the embedded
56
+ * `<WorkflowDesigner>` calls them directly. Without this hook the only way for
57
+ * a host to learn that a template moved is to match those field names in an
58
+ * interceptor, which couples the host to BPM's schema rather than to an
59
+ * interface.
60
+ *
61
+ * Failures are swallowed by BPM: an observer must never fail the mutation that
62
+ * produced the change.
63
+ */
64
+ export interface BPMTemplateObserver {
65
+ onTemplateChanged(event: BPMTemplateChangedEvent): Promise<void> | void;
66
+ }
67
+ export declare const BPM_TEMPLATE_OBSERVER: InjectionToken<BPMTemplateObserver>;
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BPM_TEMPLATE_OBSERVER = exports.BPMTemplateChangeActionEnum = void 0;
4
+ /**
5
+ * Which host-facing template mutation produced the change. One event is emitted
6
+ * per mutation, so a compose that also publishes reports `COMPOSED` with
7
+ * `published: true` rather than two separate events.
8
+ */
9
+ var BPMTemplateChangeActionEnum;
10
+ (function (BPMTemplateChangeActionEnum) {
11
+ BPMTemplateChangeActionEnum["COMPOSED"] = "COMPOSED";
12
+ BPMTemplateChangeActionEnum["VERSION_PUBLISHED"] = "VERSION_PUBLISHED";
13
+ BPMTemplateChangeActionEnum["VERSION_ROLLED_BACK"] = "VERSION_ROLLED_BACK";
14
+ })(BPMTemplateChangeActionEnum || (exports.BPMTemplateChangeActionEnum = BPMTemplateChangeActionEnum = {}));
15
+ exports.BPM_TEMPLATE_OBSERVER = Symbol('BPM_TEMPLATE_OBSERVER');
16
+ //# sourceMappingURL=template-observer.token.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"template-observer.token.js","sourceRoot":"","sources":["../../../../../../libs/bpm-core/src/lib/template/template-observer.token.ts"],"names":[],"mappings":";;;AAKA;;;;GAIG;AACH,IAAY,2BAIX;AAJD,WAAY,2BAA2B;IACrC,oDAAqB,CAAA;IACrB,sEAAuC,CAAA;IACvC,0EAA2C,CAAA;AAC7C,CAAC,EAJW,2BAA2B,2CAA3B,2BAA2B,QAItC;AAwDY,QAAA,qBAAqB,GAChC,MAAM,CAAC,uBAAuB,CAAC,CAAC"}
@@ -18,5 +18,5 @@ export declare class TemplateMutations {
18
18
  updateApprovalTemplateDraft(input: UpdateApprovalTemplateDraftInput): Promise<ApprovalTemplateVersionEntity>;
19
19
  forkApprovalTemplate(templateId: string): Promise<ApprovalTemplateVersionEntity>;
20
20
  publishApprovalTemplateVersion(versionId: string, publishedByMemberId?: string, currentMemberId?: string): Promise<ApprovalTemplateVersionEntity>;
21
- rollbackApprovalTemplateVersion(versionId: string): Promise<ApprovalTemplateVersionEntity>;
21
+ rollbackApprovalTemplateVersion(versionId: string, currentMemberId?: string): Promise<ApprovalTemplateVersionEntity>;
22
22
  }
@@ -52,8 +52,8 @@ let TemplateMutations = class TemplateMutations {
52
52
  async publishApprovalTemplateVersion(versionId, publishedByMemberId, currentMemberId) {
53
53
  return this.templateService.publishApprovalTemplateVersion(versionId, currentMemberId ?? publishedByMemberId);
54
54
  }
55
- async rollbackApprovalTemplateVersion(versionId) {
56
- return this.templateService.rollbackApprovalTemplateVersion(versionId);
55
+ async rollbackApprovalTemplateVersion(versionId, currentMemberId) {
56
+ return this.templateService.rollbackApprovalTemplateVersion(versionId, currentMemberId);
57
57
  }
58
58
  };
59
59
  exports.TemplateMutations = TemplateMutations;
@@ -147,8 +147,9 @@ tslib_1.__decorate([
147
147
  tslib_1.__decorate([
148
148
  (0, graphql_1.Mutation)(() => approval_template_version_entity_1.ApprovalTemplateVersionEntity),
149
149
  tslib_1.__param(0, (0, graphql_1.Args)('versionId', { type: () => String })),
150
+ tslib_1.__param(1, (0, bpm_auth_1.BPMCurrentMemberId)()),
150
151
  tslib_1.__metadata("design:type", Function),
151
- tslib_1.__metadata("design:paramtypes", [String]),
152
+ tslib_1.__metadata("design:paramtypes", [String, String]),
152
153
  tslib_1.__metadata("design:returntype", Promise)
153
154
  ], TemplateMutations.prototype, "rollbackApprovalTemplateVersion", null);
154
155
  exports.TemplateMutations = TemplateMutations = tslib_1.__decorate([
@@ -1 +1 @@
1
- {"version":3,"file":"template.mutations.js","sourceRoot":"","sources":["../../../../../../libs/bpm-core/src/lib/template/template.mutations.ts"],"names":[],"mappings":";;;;AAAA,6CAA2D;AAC3D,0CAAkE;AAClE,2FAAqF;AACrF,yEAAoE;AACpE,yFAAmF;AACnF,2EAMuC;AACvC,yDAAqD;AAI9C,IAAM,iBAAiB,GAAvB,MAAM,iBAAiB;IAC5B,YAA6B,eAAgC;QAAhC,oBAAe,GAAf,eAAe,CAAiB;IAAG,CAAC;IAG3D,AAAN,KAAK,CAAC,sBAAsB,CACX,KAAkC,EAC3B,eAAuB;QAE7C,OAAO,IAAI,CAAC,eAAe,CAAC,sBAAsB,CAAC;YACjD,GAAG,KAAK;YACR,iBAAiB,EAAE,eAAe;SACnC,CAAC,CAAC;IACL,CAAC;IAGK,AAAN,KAAK,CAAC,sBAAsB,CACX,KAAkC;QAEjD,OAAO,IAAI,CAAC,eAAe,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC;IAC5D,CAAC;IAGK,AAAN,KAAK,CAAC,wBAAwB,CACQ,EAAU;QAE9C,OAAO,IAAI,CAAC,eAAe,CAAC,wBAAwB,CAAC,EAAE,CAAC,CAAC;IAC3D,CAAC;IAGK,AAAN,KAAK,CAAC,0BAA0B,CACM,EAAU;QAE9C,OAAO,IAAI,CAAC,eAAe,CAAC,0BAA0B,CAAC,EAAE,CAAC,CAAC;IAC7D,CAAC;IAGK,AAAN,KAAK,CAAC,8BAA8B,CACnB,KAA0C;QAEzD,OAAO,IAAI,CAAC,eAAe,CAAC,8BAA8B,CAAC,KAAK,CAAC,CAAC;IACpE,CAAC;IAGK,AAAN,KAAK,CAAC,8BAA8B,CACnB,KAA0C;QAEzD,OAAO,IAAI,CAAC,eAAe,CAAC,8BAA8B,CAAC,KAAK,CAAC,CAAC;IACpE,CAAC;IAGK,AAAN,KAAK,CAAC,gCAAgC,CACA,EAAU;QAE9C,OAAO,IAAI,CAAC,eAAe,CAAC,gCAAgC,CAAC,EAAE,CAAC,CAAC;IACnE,CAAC;IAGK,AAAN,KAAK,CAAC,kCAAkC,CACF,EAAU;QAE9C,OAAO,IAAI,CAAC,eAAe,CAAC,kCAAkC,CAAC,EAAE,CAAC,CAAC;IACrE,CAAC;IAGK,AAAN,KAAK,CAAC,8BAA8B,CACE,EAAU;QAE9C,OAAO,IAAI,CAAC,eAAe,CAAC,8BAA8B,CAAC,EAAE,CAAC,CAAC;IACjE,CAAC;IAGK,AAAN,KAAK,CAAC,2BAA2B,CAChB,KAAuC;QAEtD,OAAO,IAAI,CAAC,eAAe,CAAC,2BAA2B,CAAC,KAAK,CAAC,CAAC;IACjE,CAAC;IAGK,AAAN,KAAK,CAAC,oBAAoB,CACoB,UAAkB;QAE9D,OAAO,IAAI,CAAC,eAAe,CAAC,oBAAoB,CAAC,UAAU,CAAC,CAAC;IAC/D,CAAC;IAGK,AAAN,KAAK,CAAC,8BAA8B,CACS,SAAiB,EAE5D,mBAA4B,EACN,eAAwB;QAE9C,OAAO,IAAI,CAAC,eAAe,CAAC,8BAA8B,CACxD,SAAS,EACT,eAAe,IAAI,mBAAmB,CACvC,CAAC;IACJ,CAAC;IAGK,AAAN,KAAK,CAAC,+BAA+B,CACQ,SAAiB;QAE5D,OAAO,IAAI,CAAC,eAAe,CAAC,+BAA+B,CAAC,SAAS,CAAC,CAAC;IACzE,CAAC;CACF,CAAA;AAvGY,8CAAiB;AAItB;IADL,IAAA,kBAAQ,EAAC,GAAG,EAAE,CAAC,iDAAsB,CAAC;IAEpC,mBAAA,IAAA,cAAI,EAAC,OAAO,CAAC,CAAA;IACb,mBAAA,IAAA,6BAAkB,GAAE,CAAA;;6CADC,qDAA2B;;+DAOlD;AAGK;IADL,IAAA,kBAAQ,EAAC,GAAG,EAAE,CAAC,iDAAsB,CAAC;IAEpC,mBAAA,IAAA,cAAI,EAAC,OAAO,CAAC,CAAA;;6CAAQ,qDAA2B;;+DAGlD;AAGK;IADL,IAAA,kBAAQ,EAAC,GAAG,EAAE,CAAC,iDAAsB,CAAC;IAEpC,mBAAA,IAAA,cAAI,EAAC,IAAI,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,MAAM,EAAE,CAAC,CAAA;;;;iEAGpC;AAGK;IADL,IAAA,kBAAQ,EAAC,GAAG,EAAE,CAAC,iDAAsB,CAAC;IAEpC,mBAAA,IAAA,cAAI,EAAC,IAAI,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,MAAM,EAAE,CAAC,CAAA;;;;mEAGpC;AAGK;IADL,IAAA,kBAAQ,EAAC,GAAG,EAAE,CAAC,kEAA8B,CAAC;IAE5C,mBAAA,IAAA,cAAI,EAAC,OAAO,CAAC,CAAA;;6CAAQ,6DAAmC;;uEAG1D;AAGK;IADL,IAAA,kBAAQ,EAAC,GAAG,EAAE,CAAC,kEAA8B,CAAC;IAE5C,mBAAA,IAAA,cAAI,EAAC,OAAO,CAAC,CAAA;;6CAAQ,6DAAmC;;uEAG1D;AAGK;IADL,IAAA,kBAAQ,EAAC,GAAG,EAAE,CAAC,kEAA8B,CAAC;IAE5C,mBAAA,IAAA,cAAI,EAAC,IAAI,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,MAAM,EAAE,CAAC,CAAA;;;;yEAGpC;AAGK;IADL,IAAA,kBAAQ,EAAC,GAAG,EAAE,CAAC,kEAA8B,CAAC;IAE5C,mBAAA,IAAA,cAAI,EAAC,IAAI,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,MAAM,EAAE,CAAC,CAAA;;;;2EAGpC;AAGK;IADL,IAAA,kBAAQ,EAAC,GAAG,EAAE,CAAC,kEAA8B,CAAC;IAE5C,mBAAA,IAAA,cAAI,EAAC,IAAI,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,MAAM,EAAE,CAAC,CAAA;;;;uEAGpC;AAGK;IADL,IAAA,kBAAQ,EAAC,GAAG,EAAE,CAAC,gEAA6B,CAAC;IAE3C,mBAAA,IAAA,cAAI,EAAC,OAAO,CAAC,CAAA;;6CAAQ,0DAAgC;;oEAGvD;AAGK;IADL,IAAA,kBAAQ,EAAC,GAAG,EAAE,CAAC,gEAA6B,CAAC;IAE3C,mBAAA,IAAA,cAAI,EAAC,YAAY,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,MAAM,EAAE,CAAC,CAAA;;;;6DAG5C;AAGK;IADL,IAAA,kBAAQ,EAAC,GAAG,EAAE,CAAC,gEAA6B,CAAC;IAE3C,mBAAA,IAAA,cAAI,EAAC,WAAW,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,MAAM,EAAE,CAAC,CAAA;IACzC,mBAAA,IAAA,cAAI,EAAC,qBAAqB,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,MAAM,EAAE,CAAC,CAAA;IAEnE,mBAAA,IAAA,6BAAkB,GAAE,CAAA;;;;uEAMtB;AAGK;IADL,IAAA,kBAAQ,EAAC,GAAG,EAAE,CAAC,gEAA6B,CAAC;IAE3C,mBAAA,IAAA,cAAI,EAAC,WAAW,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,MAAM,EAAE,CAAC,CAAA;;;;wEAG3C;4BAtGU,iBAAiB;IAF7B,IAAA,kBAAQ,GAAE;IACV,IAAA,0BAAe,GAAE;6CAE8B,kCAAe;GADlD,iBAAiB,CAuG7B"}
1
+ {"version":3,"file":"template.mutations.js","sourceRoot":"","sources":["../../../../../../libs/bpm-core/src/lib/template/template.mutations.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import { ModuleRef } from '@nestjs/core';
1
2
  import { EntityManager, Repository } from 'typeorm';
2
3
  import { ConditionService } from '../condition/condition.service';
3
4
  import { FormDefinitionVersionEntity } from '../form/form-definition-version.entity';
@@ -30,7 +31,9 @@ export declare class TemplateService {
30
31
  private readonly formDefinitionVersionRepository;
31
32
  private readonly conditionService;
32
33
  private readonly formService;
33
- constructor(templateRepository: Repository<ApprovalTemplateEntity>, templateCategoryRepository: Repository<ApprovalTemplateCategoryEntity>, templateVersionRepository: Repository<ApprovalTemplateVersionEntity>, formDefinitionVersionRepository: Repository<FormDefinitionVersionEntity>, conditionService: ConditionService, formService: FormService);
34
+ private readonly moduleRef;
35
+ private readonly logger;
36
+ constructor(templateRepository: Repository<ApprovalTemplateEntity>, templateCategoryRepository: Repository<ApprovalTemplateCategoryEntity>, templateVersionRepository: Repository<ApprovalTemplateVersionEntity>, formDefinitionVersionRepository: Repository<FormDefinitionVersionEntity>, conditionService: ConditionService, formService: FormService, moduleRef: ModuleRef);
34
37
  createApprovalTemplate(input: CreateApprovalTemplateInput, manager?: EntityManager): Promise<ApprovalTemplateEntity>;
35
38
  private createApprovalTemplateWithManager;
36
39
  /**
@@ -68,8 +71,21 @@ export declare class TemplateService {
68
71
  updateApprovalTemplateDraft(input: UpdateApprovalTemplateDraftInput, manager?: EntityManager): Promise<ApprovalTemplateVersionEntity>;
69
72
  forkApprovalTemplate(templateId: string, manager?: EntityManager): Promise<ApprovalTemplateVersionEntity>;
70
73
  publishApprovalTemplateVersion(versionId: string, publishedByMemberId?: string, manager?: EntityManager): Promise<ApprovalTemplateVersionEntity>;
74
+ /**
75
+ * The publish itself, without the observer notification. Split out so
76
+ * `composeApprovalTemplateWithForm` can publish inside its own transaction
77
+ * and still report a single `COMPOSED` event rather than two.
78
+ */
79
+ private publishVersion;
71
80
  private publishApprovalTemplateVersionWithManager;
72
- rollbackApprovalTemplateVersion(versionId: string): Promise<ApprovalTemplateVersionEntity>;
81
+ rollbackApprovalTemplateVersion(versionId: string, rolledBackByMemberId?: string): Promise<ApprovalTemplateVersionEntity>;
82
+ /**
83
+ * Tells a host-provided observer that a template changed. Errors are logged
84
+ * and dropped: an audit-trail hook must not be able to fail the mutation it
85
+ * is observing.
86
+ */
87
+ private notifyTemplateObserver;
88
+ private readHostObserver;
73
89
  private validatePublishableVersion;
74
90
  private validateOptionalFormDefinitionVersion;
75
91
  private validateOptionalTemplateCategory;
@@ -1,8 +1,10 @@
1
1
  "use strict";
2
+ var TemplateService_1;
2
3
  Object.defineProperty(exports, "__esModule", { value: true });
3
4
  exports.TemplateService = void 0;
4
5
  const tslib_1 = require("tslib");
5
6
  const common_1 = require("@nestjs/common");
7
+ const core_1 = require("@nestjs/core");
6
8
  const typeorm_1 = require("@nestjs/typeorm");
7
9
  const typeorm_2 = require("typeorm");
8
10
  const condition_service_1 = require("../condition/condition.service");
@@ -13,16 +15,19 @@ const form_service_1 = require("../form/form.service");
13
15
  const approval_template_category_entity_1 = require("./approval-template-category.entity");
14
16
  const approval_template_entity_1 = require("./approval-template.entity");
15
17
  const approval_template_version_entity_1 = require("./approval-template-version.entity");
18
+ const template_observer_token_1 = require("./template-observer.token");
16
19
  const template_enums_1 = require("./template.enums");
17
20
  const workflow_definition_validator_1 = require("./workflow-definition.validator");
18
- let TemplateService = class TemplateService {
19
- constructor(templateRepository, templateCategoryRepository, templateVersionRepository, formDefinitionVersionRepository, conditionService, formService) {
21
+ let TemplateService = TemplateService_1 = class TemplateService {
22
+ constructor(templateRepository, templateCategoryRepository, templateVersionRepository, formDefinitionVersionRepository, conditionService, formService, moduleRef) {
20
23
  this.templateRepository = templateRepository;
21
24
  this.templateCategoryRepository = templateCategoryRepository;
22
25
  this.templateVersionRepository = templateVersionRepository;
23
26
  this.formDefinitionVersionRepository = formDefinitionVersionRepository;
24
27
  this.conditionService = conditionService;
25
28
  this.formService = formService;
29
+ this.moduleRef = moduleRef;
30
+ this.logger = new common_1.Logger(TemplateService_1.name);
26
31
  }
27
32
  async createApprovalTemplate(input, manager) {
28
33
  const run = (txManager) => this.createApprovalTemplateWithManager(txManager, input);
@@ -43,6 +48,10 @@ let TemplateService = class TemplateService {
43
48
  createdByMemberId: input.createdByMemberId,
44
49
  currentVersionId: null,
45
50
  description: input.description,
51
+ // Stated rather than left to the column default, because publishing
52
+ // reads `isActive` back and a template that never carried the value
53
+ // in memory would read as deactivated.
54
+ isActive: true,
46
55
  name: input.name,
47
56
  }));
48
57
  await versionRepository.save(versionRepository.create({
@@ -69,7 +78,7 @@ let TemplateService = class TemplateService {
69
78
  * transaction so a partial failure rolls back both sides.
70
79
  */
71
80
  async composeApprovalTemplateWithForm(input, currentMemberId) {
72
- return this.templateRepository.manager.transaction(async (manager) => {
81
+ const { event, result } = await this.templateRepository.manager.transaction(async (manager) => {
73
82
  const formDefinitionVersion = await this.resolveComposedFormVersion(manager, input, currentMemberId);
74
83
  const templateDraftVersion = await this.resolveComposedTemplateDraftVersion(manager, input, currentMemberId);
75
84
  let templateVersion = await this.updateApprovalTemplateDraft({
@@ -80,8 +89,11 @@ let TemplateService = class TemplateService {
80
89
  versionId: templateDraftVersion.id,
81
90
  workflowDefinitionJson: input.workflowDefinitionJson,
82
91
  }, manager);
92
+ let previousVersionId = null;
83
93
  if (input.publish) {
84
- templateVersion = await this.publishApprovalTemplateVersion(templateDraftVersion.id, currentMemberId ?? undefined, manager);
94
+ const published = await this.publishVersion(templateDraftVersion.id, currentMemberId ?? undefined, manager);
95
+ previousVersionId = published.previousVersionId;
96
+ templateVersion = published.version;
85
97
  }
86
98
  const formDefinition = await manager
87
99
  .getRepository(form_definition_entity_1.FormDefinitionEntity)
@@ -90,13 +102,27 @@ let TemplateService = class TemplateService {
90
102
  .getRepository(approval_template_entity_1.ApprovalTemplateEntity)
91
103
  .findOneByOrFail({ id: templateVersion.templateId });
92
104
  return {
93
- formDefinition,
94
- formDefinitionVersion,
95
- published: input.publish,
96
- template,
97
- templateVersion,
105
+ event: {
106
+ action: template_observer_token_1.BPMTemplateChangeActionEnum.COMPOSED,
107
+ actorMemberId: currentMemberId,
108
+ previousVersionId: input.publish
109
+ ? previousVersionId
110
+ : template.currentVersionId,
111
+ published: input.publish,
112
+ template,
113
+ version: templateVersion,
114
+ },
115
+ result: {
116
+ formDefinition,
117
+ formDefinitionVersion,
118
+ published: input.publish,
119
+ template,
120
+ templateVersion,
121
+ },
98
122
  };
99
123
  });
124
+ await this.notifyTemplateObserver(event);
125
+ return result;
100
126
  }
101
127
  async resolveComposedFormVersion(manager, input, currentMemberId) {
102
128
  if (!input.formDefinitionId) {
@@ -353,6 +379,24 @@ let TemplateService = class TemplateService {
353
379
  }));
354
380
  }
355
381
  async publishApprovalTemplateVersion(versionId, publishedByMemberId, manager) {
382
+ const published = await this.publishVersion(versionId, publishedByMemberId, manager);
383
+ await this.notifyTemplateObserver({
384
+ action: template_observer_token_1.BPMTemplateChangeActionEnum.VERSION_PUBLISHED,
385
+ actorMemberId: publishedByMemberId ?? null,
386
+ previousVersionId: published.previousVersionId,
387
+ published: true,
388
+ template: published.template,
389
+ version: published.version,
390
+ ...(manager ? { manager } : {}),
391
+ });
392
+ return published.version;
393
+ }
394
+ /**
395
+ * The publish itself, without the observer notification. Split out so
396
+ * `composeApprovalTemplateWithForm` can publish inside its own transaction
397
+ * and still report a single `COMPOSED` event rather than two.
398
+ */
399
+ async publishVersion(versionId, publishedByMemberId, manager) {
356
400
  const version = await this.getTemplateVersionOrThrow(versionId, manager);
357
401
  if (version.status !== template_enums_1.ApprovalTemplateVersionStatusEnum.DRAFT) {
358
402
  throw new common_1.ConflictException('Only draft approval template versions can be published');
@@ -372,6 +416,13 @@ let TemplateService = class TemplateService {
372
416
  if (!template) {
373
417
  throw new common_1.NotFoundException(`Approval template ${version.templateId} was not found`);
374
418
  }
419
+ // Same refusal the workflow engine applies when starting or advancing an
420
+ // instance: a deactivated template must not gain a new published version
421
+ // behind the host's back.
422
+ if (!template.isActive) {
423
+ throw new common_1.ConflictException('Approval template is deactivated');
424
+ }
425
+ const previousVersionId = template.currentVersionId;
375
426
  if (template.currentVersionId) {
376
427
  await versionRepository.update({ id: template.currentVersionId }, {
377
428
  archivedAt: new Date(),
@@ -385,17 +436,21 @@ let TemplateService = class TemplateService {
385
436
  status: template_enums_1.ApprovalTemplateVersionStatusEnum.PUBLISHED,
386
437
  });
387
438
  const saved = await versionRepository.save(published);
388
- await templateRepository.save(templateRepository.merge(template, {
439
+ const savedTemplate = await templateRepository.save(templateRepository.merge(template, {
389
440
  currentVersionId: saved.id,
390
441
  }));
391
- return saved;
442
+ return {
443
+ previousVersionId,
444
+ template: savedTemplate,
445
+ version: saved,
446
+ };
392
447
  }
393
- async rollbackApprovalTemplateVersion(versionId) {
448
+ async rollbackApprovalTemplateVersion(versionId, rolledBackByMemberId) {
394
449
  const target = await this.getTemplateVersionOrThrow(versionId);
395
450
  if (target.status === template_enums_1.ApprovalTemplateVersionStatusEnum.DRAFT) {
396
451
  throw new common_1.ConflictException('Draft approval template versions cannot be rollback targets');
397
452
  }
398
- return this.templateRepository.manager.transaction(async (manager) => {
453
+ const rolledBack = await this.templateRepository.manager.transaction(async (manager) => {
399
454
  const templateRepository = manager.getRepository(approval_template_entity_1.ApprovalTemplateEntity);
400
455
  const versionRepository = manager.getRepository(approval_template_version_entity_1.ApprovalTemplateVersionEntity);
401
456
  const template = await templateRepository.findOne({
@@ -404,6 +459,12 @@ let TemplateService = class TemplateService {
404
459
  if (!template) {
405
460
  throw new common_1.NotFoundException(`Approval template ${target.templateId} was not found`);
406
461
  }
462
+ // See `publishApprovalTemplateVersionWithManager`: rolling back moves
463
+ // the published pointer, which a deactivated template must not do.
464
+ if (!template.isActive) {
465
+ throw new common_1.ConflictException('Approval template is deactivated');
466
+ }
467
+ const previousVersionId = template.currentVersionId;
407
468
  if (template.currentVersionId &&
408
469
  template.currentVersionId !== target.id) {
409
470
  await versionRepository.update({ id: template.currentVersionId }, {
@@ -416,11 +477,49 @@ let TemplateService = class TemplateService {
416
477
  status: template_enums_1.ApprovalTemplateVersionStatusEnum.PUBLISHED,
417
478
  });
418
479
  const saved = await versionRepository.save(restored);
419
- await templateRepository.save(templateRepository.merge(template, {
480
+ const savedTemplate = await templateRepository.save(templateRepository.merge(template, {
420
481
  currentVersionId: saved.id,
421
482
  }));
422
- return saved;
483
+ return {
484
+ previousVersionId,
485
+ template: savedTemplate,
486
+ version: saved,
487
+ };
488
+ });
489
+ await this.notifyTemplateObserver({
490
+ action: template_observer_token_1.BPMTemplateChangeActionEnum.VERSION_ROLLED_BACK,
491
+ actorMemberId: rolledBackByMemberId ?? null,
492
+ previousVersionId: rolledBack.previousVersionId,
493
+ published: true,
494
+ template: rolledBack.template,
495
+ version: rolledBack.version,
423
496
  });
497
+ return rolledBack.version;
498
+ }
499
+ /**
500
+ * Tells a host-provided observer that a template changed. Errors are logged
501
+ * and dropped: an audit-trail hook must not be able to fail the mutation it
502
+ * is observing.
503
+ */
504
+ async notifyTemplateObserver(event) {
505
+ const observer = this.readHostObserver();
506
+ if (!observer) {
507
+ return;
508
+ }
509
+ try {
510
+ await observer.onTemplateChanged(event);
511
+ }
512
+ catch (error) {
513
+ this.logger.error(`BPM_TEMPLATE_OBSERVER failed for ${event.action} on template ${event.template.id}`, error instanceof Error ? error.stack : String(error));
514
+ }
515
+ }
516
+ readHostObserver() {
517
+ try {
518
+ return this.moduleRef.get(template_observer_token_1.BPM_TEMPLATE_OBSERVER, { strict: false });
519
+ }
520
+ catch {
521
+ return null;
522
+ }
424
523
  }
425
524
  async validatePublishableVersion(version, manager) {
426
525
  if (!version.formDefinitionVersionId) {
@@ -549,7 +648,7 @@ let TemplateService = class TemplateService {
549
648
  }
550
649
  };
551
650
  exports.TemplateService = TemplateService;
552
- exports.TemplateService = TemplateService = tslib_1.__decorate([
651
+ exports.TemplateService = TemplateService = TemplateService_1 = tslib_1.__decorate([
553
652
  (0, common_1.Injectable)(),
554
653
  tslib_1.__param(0, (0, typeorm_1.InjectRepository)(approval_template_entity_1.ApprovalTemplateEntity)),
555
654
  tslib_1.__param(1, (0, typeorm_1.InjectRepository)(approval_template_category_entity_1.ApprovalTemplateCategoryEntity)),
@@ -560,7 +659,8 @@ exports.TemplateService = TemplateService = tslib_1.__decorate([
560
659
  typeorm_2.Repository,
561
660
  typeorm_2.Repository,
562
661
  condition_service_1.ConditionService,
563
- form_service_1.FormService])
662
+ form_service_1.FormService,
663
+ core_1.ModuleRef])
564
664
  ], TemplateService);
565
665
  function parseOptionalJsonObject(value) {
566
666
  if (!value) {