@rytass/bpm-core-nestjs-module 0.19.0 → 0.20.1

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 (151) hide show
  1. package/CHANGELOG.md +55 -0
  2. package/package.json +3 -2
  3. package/src/index.d.ts +1 -0
  4. package/src/index.js +1 -0
  5. package/src/index.js.map +1 -1
  6. package/src/lib/bpm/bpm-root-options.d.ts +13 -0
  7. package/src/lib/bpm/bpm-root-options.js.map +1 -1
  8. package/src/lib/bpm/bpm-root.module.d.ts +12 -0
  9. package/src/lib/bpm/bpm-root.module.js +5 -0
  10. package/src/lib/bpm/bpm-root.module.js.map +1 -1
  11. package/src/lib/condition/adapters/cel-legacy.adapter.d.ts +62 -0
  12. package/src/lib/condition/adapters/cel-legacy.adapter.js +141 -0
  13. package/src/lib/condition/adapters/cel-legacy.adapter.js.map +1 -0
  14. package/src/lib/condition/adapters/cel-v2.adapter.d.ts +76 -0
  15. package/src/lib/condition/adapters/cel-v2.adapter.js +371 -0
  16. package/src/lib/condition/adapters/cel-v2.adapter.js.map +1 -0
  17. package/src/lib/condition/condition.service.d.ts +90 -5
  18. package/src/lib/condition/condition.service.js +287 -71
  19. package/src/lib/condition/condition.service.js.map +1 -1
  20. package/src/lib/condition/expression-ast.d.ts +176 -0
  21. package/src/lib/condition/expression-ast.js +1254 -0
  22. package/src/lib/condition/expression-ast.js.map +1 -0
  23. package/src/lib/condition/expression-budget.d.ts +44 -0
  24. package/src/lib/condition/expression-budget.js +61 -0
  25. package/src/lib/condition/expression-budget.js.map +1 -0
  26. package/src/lib/condition/expression-dialect.d.ts +29 -0
  27. package/src/lib/condition/expression-dialect.js +44 -0
  28. package/src/lib/condition/expression-dialect.js.map +1 -0
  29. package/src/lib/condition/expression-differential.corpus.d.ts +34 -0
  30. package/src/lib/condition/expression-differential.corpus.js +995 -0
  31. package/src/lib/condition/expression-differential.corpus.js.map +1 -0
  32. package/src/lib/condition/expression-differential.d.ts +33 -0
  33. package/src/lib/condition/expression-differential.js +48 -0
  34. package/src/lib/condition/expression-differential.js.map +1 -0
  35. package/src/lib/condition/expression-engine-failure.d.ts +15 -0
  36. package/src/lib/condition/expression-engine-failure.js +22 -0
  37. package/src/lib/condition/expression-engine-failure.js.map +1 -0
  38. package/src/lib/condition/expression-errors.d.ts +40 -0
  39. package/src/lib/condition/expression-errors.js +121 -0
  40. package/src/lib/condition/expression-errors.js.map +1 -0
  41. package/src/lib/condition/expression-function-invocation.d.ts +50 -0
  42. package/src/lib/condition/expression-function-invocation.js +290 -0
  43. package/src/lib/condition/expression-function-invocation.js.map +1 -0
  44. package/src/lib/condition/expression-result.walker.d.ts +18 -0
  45. package/src/lib/condition/expression-result.walker.js +152 -0
  46. package/src/lib/condition/expression-result.walker.js.map +1 -0
  47. package/src/lib/condition/expression-runtime.d.ts +70 -0
  48. package/src/lib/condition/expression-runtime.js +134 -0
  49. package/src/lib/condition/expression-runtime.js.map +1 -0
  50. package/src/lib/condition/index.d.ts +4 -0
  51. package/src/lib/condition/index.js +8 -0
  52. package/src/lib/condition/index.js.map +1 -1
  53. package/src/lib/delegation/delegation-rule.entity.d.ts +7 -0
  54. package/src/lib/delegation/delegation-rule.entity.js +10 -0
  55. package/src/lib/delegation/delegation-rule.entity.js.map +1 -1
  56. package/src/lib/delegation/delegation.service.d.ts +7 -1
  57. package/src/lib/delegation/delegation.service.js +22 -5
  58. package/src/lib/delegation/delegation.service.js.map +1 -1
  59. package/src/lib/delegation/dto/delegation-rule.input.d.ts +2 -0
  60. package/src/lib/delegation/dto/delegation-rule.input.js +10 -0
  61. package/src/lib/delegation/dto/delegation-rule.input.js.map +1 -1
  62. package/src/lib/expression-function/expression-function.built-ins.d.ts +9 -0
  63. package/src/lib/expression-function/expression-function.built-ins.js +117 -0
  64. package/src/lib/expression-function/expression-function.built-ins.js.map +1 -0
  65. package/src/lib/expression-function/expression-function.module.d.ts +19 -0
  66. package/src/lib/expression-function/expression-function.module.js +34 -0
  67. package/src/lib/expression-function/expression-function.module.js.map +1 -0
  68. package/src/lib/expression-function/expression-function.provider.d.ts +17 -0
  69. package/src/lib/expression-function/expression-function.provider.js +39 -0
  70. package/src/lib/expression-function/expression-function.provider.js.map +1 -0
  71. package/src/lib/expression-function/expression-function.registry.d.ts +36 -0
  72. package/src/lib/expression-function/expression-function.registry.js +231 -0
  73. package/src/lib/expression-function/expression-function.registry.js.map +1 -0
  74. package/src/lib/expression-function/expression-function.types.d.ts +30 -0
  75. package/src/lib/expression-function/expression-function.types.js +8 -0
  76. package/src/lib/expression-function/expression-function.types.js.map +1 -0
  77. package/src/lib/expression-function/index.d.ts +5 -0
  78. package/src/lib/expression-function/index.js +9 -0
  79. package/src/lib/expression-function/index.js.map +1 -0
  80. package/src/lib/form/form-schema.validator.js +53 -6
  81. package/src/lib/form/form-schema.validator.js.map +1 -1
  82. package/src/lib/form-data-source/form-data-source-value-resolver.service.d.ts +12 -1
  83. package/src/lib/form-data-source/form-data-source-value-resolver.service.js +45 -26
  84. package/src/lib/form-data-source/form-data-source-value-resolver.service.js.map +1 -1
  85. package/src/lib/form-data-source/form-data-source.expression.d.ts +95 -0
  86. package/src/lib/form-data-source/form-data-source.expression.js +267 -0
  87. package/src/lib/form-data-source/form-data-source.expression.js.map +1 -0
  88. package/src/lib/form-data-source/form-data-source.module.js +4 -0
  89. package/src/lib/form-data-source/form-data-source.module.js.map +1 -1
  90. package/src/lib/form-data-source/form-data-source.service.d.ts +22 -3
  91. package/src/lib/form-data-source/form-data-source.service.js +78 -18
  92. package/src/lib/form-data-source/form-data-source.service.js.map +1 -1
  93. package/src/lib/form-data-source/form-data-source.validation.d.ts +47 -4
  94. package/src/lib/form-data-source/form-data-source.validation.js +151 -23
  95. package/src/lib/form-data-source/form-data-source.validation.js.map +1 -1
  96. package/src/lib/migrations/0000000030000-delegation-scope-condition-dialect.d.ts +22 -0
  97. package/src/lib/migrations/0000000030000-delegation-scope-condition-dialect.js +76 -0
  98. package/src/lib/migrations/0000000030000-delegation-scope-condition-dialect.js.map +1 -0
  99. package/src/lib/migrations/index.d.ts +1 -0
  100. package/src/lib/migrations/index.js +3 -0
  101. package/src/lib/migrations/index.js.map +1 -1
  102. package/src/lib/notification/notification.service.d.ts +1 -1
  103. package/src/lib/notification/notification.service.js +7 -3
  104. package/src/lib/notification/notification.service.js.map +1 -1
  105. package/src/lib/template/dto/expression-designer.dto.d.ts +107 -0
  106. package/src/lib/template/dto/expression-designer.dto.js +415 -0
  107. package/src/lib/template/dto/expression-designer.dto.js.map +1 -0
  108. package/src/lib/template/expression-designer.queries.d.ts +16 -0
  109. package/src/lib/template/expression-designer.queries.js +66 -0
  110. package/src/lib/template/expression-designer.queries.js.map +1 -0
  111. package/src/lib/template/expression-designer.service.d.ts +72 -0
  112. package/src/lib/template/expression-designer.service.js +543 -0
  113. package/src/lib/template/expression-designer.service.js.map +1 -0
  114. package/src/lib/template/index.d.ts +2 -0
  115. package/src/lib/template/index.js +2 -0
  116. package/src/lib/template/index.js.map +1 -1
  117. package/src/lib/template/template.module.js +4 -0
  118. package/src/lib/template/template.module.js.map +1 -1
  119. package/src/lib/template/template.service.d.ts +37 -1
  120. package/src/lib/template/template.service.js +317 -29
  121. package/src/lib/template/template.service.js.map +1 -1
  122. package/src/lib/template/workflow-definition.validator.d.ts +7 -0
  123. package/src/lib/template/workflow-definition.validator.js +26 -2
  124. package/src/lib/template/workflow-definition.validator.js.map +1 -1
  125. package/src/lib/workflow-engine/time-budget.d.ts +13 -0
  126. package/src/lib/workflow-engine/time-budget.js +58 -0
  127. package/src/lib/workflow-engine/time-budget.js.map +1 -0
  128. package/src/lib/workflow-engine/workflow-condition-evaluator.js +12 -12
  129. package/src/lib/workflow-engine/workflow-condition-evaluator.js.map +1 -1
  130. package/src/lib/workflow-engine/workflow-engine.service.d.ts +24 -0
  131. package/src/lib/workflow-engine/workflow-engine.service.js +311 -88
  132. package/src/lib/workflow-engine/workflow-engine.service.js.map +1 -1
  133. package/src/lib/workflow-engine/workflow-form-value.d.ts +11 -0
  134. package/src/lib/workflow-engine/workflow-form-value.js +33 -0
  135. package/src/lib/workflow-engine/workflow-form-value.js.map +1 -0
  136. package/src/lib/workflow-engine/workflow-service-task-dispatcher.token.js +4 -0
  137. package/src/lib/workflow-engine/workflow-service-task-dispatcher.token.js.map +1 -1
  138. package/src/lib/workflow-webhook/workflow-webhook-delivery.service.d.ts +3 -1
  139. package/src/lib/workflow-webhook/workflow-webhook-delivery.service.js +11 -2
  140. package/src/lib/workflow-webhook/workflow-webhook-delivery.service.js.map +1 -1
  141. package/src/lib/workflow-webhook/workflow-webhook-enqueue.d.ts +8 -1
  142. package/src/lib/workflow-webhook/workflow-webhook-enqueue.js +70 -27
  143. package/src/lib/workflow-webhook/workflow-webhook-enqueue.js.map +1 -1
  144. package/src/lib/workflow-webhook/workflow-webhook-expression.d.ts +57 -0
  145. package/src/lib/workflow-webhook/workflow-webhook-expression.js +123 -0
  146. package/src/lib/workflow-webhook/workflow-webhook-expression.js.map +1 -0
  147. package/src/lib/workflow-webhook/workflow-webhook.module.js +4 -0
  148. package/src/lib/workflow-webhook/workflow-webhook.module.js.map +1 -1
  149. package/src/lib/workflow-webhook/workflow-webhook.validator.d.ts +7 -0
  150. package/src/lib/workflow-webhook/workflow-webhook.validator.js +29 -6
  151. package/src/lib/workflow-webhook/workflow-webhook.validator.js.map +1 -1
@@ -0,0 +1,11 @@
1
+ /**
2
+ * A form value by key, own properties only: an absent key named like an
3
+ * inherited member (`constructor`, `toString`) reads as `undefined`, not as a
4
+ * function.
5
+ */
6
+ export declare function readOwnFormValue(formData: Readonly<Record<string, unknown>>, fieldKey: string): unknown;
7
+ /**
8
+ * Whether a form value counts as unfilled: absent, `null`, `""`, whitespace
9
+ * only or an empty list. The same set `IS_EMPTY` reports.
10
+ */
11
+ export declare function isEmptyWorkflowValue(value: unknown): boolean;
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ /*
3
+ * Form-value reads shared by the structured condition evaluator and the
4
+ * engine's structured fallback. Internal to the workflow engine: this file is
5
+ * deliberately not re-exported from `index.ts`.
6
+ */
7
+ Object.defineProperty(exports, "__esModule", { value: true });
8
+ exports.readOwnFormValue = readOwnFormValue;
9
+ exports.isEmptyWorkflowValue = isEmptyWorkflowValue;
10
+ /**
11
+ * A form value by key, own properties only: an absent key named like an
12
+ * inherited member (`constructor`, `toString`) reads as `undefined`, not as a
13
+ * function.
14
+ */
15
+ function readOwnFormValue(formData, fieldKey) {
16
+ return Object.prototype.hasOwnProperty.call(formData, fieldKey)
17
+ ? formData[fieldKey]
18
+ : undefined;
19
+ }
20
+ /**
21
+ * Whether a form value counts as unfilled: absent, `null`, `""`, whitespace
22
+ * only or an empty list. The same set `IS_EMPTY` reports.
23
+ */
24
+ function isEmptyWorkflowValue(value) {
25
+ if (value === null || typeof value === 'undefined') {
26
+ return true;
27
+ }
28
+ if (Array.isArray(value)) {
29
+ return value.length === 0;
30
+ }
31
+ return typeof value === 'string' ? value.trim() === '' : false;
32
+ }
33
+ //# sourceMappingURL=workflow-form-value.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workflow-form-value.js","sourceRoot":"","sources":["../../../../../../libs/bpm-core/src/lib/workflow-engine/workflow-form-value.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;AAOH,4CAOC;AAMD,oDAUC;AA5BD;;;;GAIG;AACH,SAAgB,gBAAgB,CAC9B,QAA2C,EAC3C,QAAgB;IAEhB,OAAO,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC;QAC7D,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC;QACpB,CAAC,CAAC,SAAS,CAAC;AAChB,CAAC;AAED;;;GAGG;AACH,SAAgB,oBAAoB,CAAC,KAAc;IACjD,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,WAAW,EAAE,CAAC;QACnD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC;IAC5B,CAAC;IAED,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;AACjE,CAAC"}
@@ -2,6 +2,9 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.DefaultWorkflowServiceTaskDispatcher = exports.BPM_WORKFLOW_SERVICE_TASK_DISPATCHER = void 0;
4
4
  exports.BPM_WORKFLOW_SERVICE_TASK_DISPATCHER = Symbol('BPM_WORKFLOW_SERVICE_TASK_DISPATCHER');
5
+ // Covers reading an error body too. A host whose endpoint needs longer binds its
6
+ // own dispatcher under BPM_WORKFLOW_SERVICE_TASK_DISPATCHER.
7
+ const WEBHOOK_TIMEOUT_MS = 30_000;
5
8
  class DefaultWorkflowServiceTaskDispatcher {
6
9
  async dispatchWebhook(input) {
7
10
  const response = await fetch(input.url, {
@@ -13,6 +16,7 @@ class DefaultWorkflowServiceTaskDispatcher {
13
16
  : { 'content-type': 'application/json' }),
14
17
  },
15
18
  method: 'POST',
19
+ signal: AbortSignal.timeout(WEBHOOK_TIMEOUT_MS),
16
20
  });
17
21
  if (response.ok) {
18
22
  return { ok: true, status: response.status };
@@ -1 +1 @@
1
- {"version":3,"file":"workflow-service-task-dispatcher.token.js","sourceRoot":"","sources":["../../../../../../libs/bpm-core/src/lib/workflow-engine/workflow-service-task-dispatcher.token.ts"],"names":[],"mappings":";;;AAoBa,QAAA,oCAAoC,GAC/C,MAAM,CAAC,sCAAsC,CAAC,CAAC;AAEjD,MAAa,oCAAoC;IAC/C,KAAK,CAAC,eAAe,CACnB,KAAsC;QAEtC,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE;YACtC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC;YACnC,OAAO,EAAE;gBACP,GAAG,KAAK,CAAC,OAAO;gBAChB,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,EAAE,cAAc,CAAC;oBAC1C,CAAC,CAAC,EAAE;oBACJ,CAAC,CAAC,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC;aAC5C;YACD,MAAM,EAAE,MAAM;SACf,CAAC,CAAC;QAEH,IAAI,QAAQ,CAAC,EAAE,EAAE,CAAC;YAChB,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC;QAC/C,CAAC;QAED,OAAO;YACL,KAAK,EAAE,MAAM,wBAAwB,CAAC,QAAQ,CAAC;YAC/C,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,QAAQ,CAAC,MAAM;SACxB,CAAC;IACJ,CAAC;CACF;AAzBD,oFAyBC;AAED,SAAS,SAAS,CAChB,OAAqD,EACrD,IAAY;IAEZ,MAAM,cAAc,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;IAEhD,OAAO,MAAM,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,CACpC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,iBAAiB,EAAE,KAAK,cAAc,CAClE,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,wBAAwB,CAAC,QAAkB;IACxD,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;IACnC,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;IAEhC,OAAO,WAAW;QAChB,CAAC,CAAC,QAAQ,QAAQ,CAAC,MAAM,KAAK,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE;QACzD,CAAC,CAAC,QAAQ,QAAQ,CAAC,MAAM,EAAE,CAAC;AAChC,CAAC"}
1
+ {"version":3,"file":"workflow-service-task-dispatcher.token.js","sourceRoot":"","sources":["../../../../../../libs/bpm-core/src/lib/workflow-engine/workflow-service-task-dispatcher.token.ts"],"names":[],"mappings":";;;AAoBa,QAAA,oCAAoC,GAC/C,MAAM,CAAC,sCAAsC,CAAC,CAAC;AAEjD,iFAAiF;AACjF,6DAA6D;AAC7D,MAAM,kBAAkB,GAAG,MAAM,CAAC;AAElC,MAAa,oCAAoC;IAC/C,KAAK,CAAC,eAAe,CACnB,KAAsC;QAEtC,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE;YACtC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC;YACnC,OAAO,EAAE;gBACP,GAAG,KAAK,CAAC,OAAO;gBAChB,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,EAAE,cAAc,CAAC;oBAC1C,CAAC,CAAC,EAAE;oBACJ,CAAC,CAAC,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC;aAC5C;YACD,MAAM,EAAE,MAAM;YACd,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,kBAAkB,CAAC;SAChD,CAAC,CAAC;QAEH,IAAI,QAAQ,CAAC,EAAE,EAAE,CAAC;YAChB,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC;QAC/C,CAAC;QAED,OAAO;YACL,KAAK,EAAE,MAAM,wBAAwB,CAAC,QAAQ,CAAC;YAC/C,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,QAAQ,CAAC,MAAM;SACxB,CAAC;IACJ,CAAC;CACF;AA1BD,oFA0BC;AAED,SAAS,SAAS,CAChB,OAAqD,EACrD,IAAY;IAEZ,MAAM,cAAc,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;IAEhD,OAAO,MAAM,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,CACpC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,iBAAiB,EAAE,KAAK,cAAc,CAClE,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,wBAAwB,CAAC,QAAkB;IACxD,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;IACnC,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;IAEhC,OAAO,WAAW;QAChB,CAAC,CAAC,QAAQ,QAAQ,CAAC,MAAM,KAAK,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE;QACzD,CAAC,CAAC,QAAQ,QAAQ,CAAC,MAAM,EAAE,CAAC;AAChC,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import { InjectionToken } from '@nestjs/common';
2
2
  import { EntityManager, Repository } from 'typeorm';
3
+ import { ConditionService } from '../condition/condition.service';
3
4
  import { ActivityLogEntity } from '../workflow-engine/activity-log.entity';
4
5
  import { WorkflowWebhookDeliveryEntity } from './workflow-webhook-delivery.entity';
5
6
  import { WorkflowWebhookEnqueueContext } from './workflow-webhook-enqueue';
@@ -25,9 +26,10 @@ export declare class WorkflowWebhookDeliveryService {
25
26
  private readonly activityLogRepository;
26
27
  private readonly webhookService;
27
28
  private readonly options;
29
+ private readonly conditionService?;
28
30
  private readonly logger;
29
31
  private readonly fetchImpl;
30
- constructor(deliveryRepository: Repository<WorkflowWebhookDeliveryEntity>, activityLogRepository: Repository<ActivityLogEntity>, webhookService: WorkflowWebhookService, options?: BPMResolvedWorkflowWebhookOptions, fetchImpl?: WorkflowWebhookFetch);
32
+ constructor(deliveryRepository: Repository<WorkflowWebhookDeliveryEntity>, activityLogRepository: Repository<ActivityLogEntity>, webhookService: WorkflowWebhookService, options?: BPMResolvedWorkflowWebhookOptions, fetchImpl?: WorkflowWebhookFetch, conditionService?: (ConditionService | null) | undefined);
31
33
  /** The clock every attempt reads; separate so tests can pin it. */
32
34
  readCurrentTime(): Date;
33
35
  /**
@@ -8,6 +8,7 @@ const common_1 = require("@nestjs/common");
8
8
  const typeorm_1 = require("@nestjs/typeorm");
9
9
  const typeorm_2 = require("typeorm");
10
10
  const outbox_1 = require("../common/outbox");
11
+ const condition_service_1 = require("../condition/condition.service");
11
12
  const activity_log_entity_1 = require("../workflow-engine/activity-log.entity");
12
13
  const workflow_engine_enums_1 = require("../workflow-engine/workflow-engine.enums");
13
14
  const workflow_graph_1 = require("@rytass/bpm-core-shared/workflow-graph");
@@ -15,6 +16,7 @@ const workflow_webhook_allowlist_1 = require("./workflow-webhook-allowlist");
15
16
  const workflow_webhook_delivery_enums_1 = require("./workflow-webhook-delivery.enums");
16
17
  const workflow_webhook_delivery_entity_1 = require("./workflow-webhook-delivery.entity");
17
18
  const workflow_webhook_enqueue_1 = require("./workflow-webhook-enqueue");
19
+ const workflow_webhook_expression_1 = require("./workflow-webhook-expression");
18
20
  const workflow_webhook_options_1 = require("./workflow-webhook-options");
19
21
  const workflow_webhook_service_1 = require("./workflow-webhook.service");
20
22
  /**
@@ -38,11 +40,12 @@ const MAX_CONCURRENT_ATTEMPTS = 5;
38
40
  */
39
41
  const STALE_CLAIM_MS = workflow_webhook_options_1.WORKFLOW_WEBHOOK_MAX_TIMEOUT_MS * 3;
40
42
  let WorkflowWebhookDeliveryService = WorkflowWebhookDeliveryService_1 = class WorkflowWebhookDeliveryService {
41
- constructor(deliveryRepository, activityLogRepository, webhookService, options = workflow_webhook_options_1.DEFAULT_BPM_WORKFLOW_WEBHOOK_OPTIONS, fetchImpl) {
43
+ constructor(deliveryRepository, activityLogRepository, webhookService, options = workflow_webhook_options_1.DEFAULT_BPM_WORKFLOW_WEBHOOK_OPTIONS, fetchImpl, conditionService) {
42
44
  this.deliveryRepository = deliveryRepository;
43
45
  this.activityLogRepository = activityLogRepository;
44
46
  this.webhookService = webhookService;
45
47
  this.options = options;
48
+ this.conditionService = conditionService;
46
49
  this.logger = new common_1.Logger(WorkflowWebhookDeliveryService_1.name);
47
50
  this.fetchImpl =
48
51
  fetchImpl ??
@@ -69,6 +72,10 @@ let WorkflowWebhookDeliveryService = WorkflowWebhookDeliveryService_1 = class Wo
69
72
  }
70
73
  const drafts = await (0, workflow_webhook_enqueue_1.buildWorkflowWebhookDeliveryDrafts)({
71
74
  context,
75
+ // Evaluated here, inside the engine transaction and before the outbox
76
+ // rows are written, with one budget for this node's bindings that is
77
+ // separate from the transaction's own (ADR 22 §3.7).
78
+ expressions: (0, workflow_webhook_expression_1.createNotifyWebhookExpressionEvaluator)(this.conditionService),
72
79
  resolveEndpoint: (key, version) => this.webhookService.getEndpoint(key, version, manager),
73
80
  targets,
74
81
  });
@@ -611,9 +618,11 @@ exports.WorkflowWebhookDeliveryService = WorkflowWebhookDeliveryService = Workfl
611
618
  tslib_1.__param(3, (0, common_1.Inject)(workflow_webhook_options_1.BPM_WORKFLOW_WEBHOOK_OPTIONS)),
612
619
  tslib_1.__param(4, (0, common_1.Optional)()),
613
620
  tslib_1.__param(4, (0, common_1.Inject)(exports.BPM_WORKFLOW_WEBHOOK_FETCH)),
621
+ tslib_1.__param(5, (0, common_1.Optional)()),
622
+ tslib_1.__param(5, (0, common_1.Inject)(condition_service_1.ConditionService)),
614
623
  tslib_1.__metadata("design:paramtypes", [typeorm_2.Repository,
615
624
  typeorm_2.Repository,
616
- workflow_webhook_service_1.WorkflowWebhookService, Object, Function])
625
+ workflow_webhook_service_1.WorkflowWebhookService, Object, Function, Object])
617
626
  ], WorkflowWebhookDeliveryService);
618
627
  function isWebhookRequest(value) {
619
628
  return (typeof value === 'object' &&
@@ -1 +1 @@
1
- {"version":3,"file":"workflow-webhook-delivery.service.js","sourceRoot":"","sources":["../../../../../../libs/bpm-core/src/lib/workflow-webhook/workflow-webhook-delivery.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workflow-webhook-delivery.service.js","sourceRoot":"","sources":["../../../../../../libs/bpm-core/src/lib/workflow-webhook/workflow-webhook-delivery.service.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import { WorkflowWebhookDeliveryStatusEnum } from './workflow-webhook-delivery.enums';
2
2
  import { WorkflowWebhookFrozenEvent } from './workflow-webhook-delivery.entity';
3
+ import { NotifyWebhookExpressionEvaluator } from './workflow-webhook-expression';
3
4
  import { BPMWorkflowWebhookEndpointEntry } from './workflow-webhook.types';
4
5
  export interface WorkflowWebhookEnqueueContext {
5
6
  readonly instance: {
@@ -39,8 +40,14 @@ export interface WorkflowWebhookDeliveryDraft {
39
40
  * that reached the node carries on. Parameters are resolved here, once, so
40
41
  * every retry sends exactly what the node saw.
41
42
  */
42
- export declare function buildWorkflowWebhookDeliveryDrafts({ context, resolveEndpoint, targets, }: {
43
+ export declare function buildWorkflowWebhookDeliveryDrafts({ context, expressions, resolveEndpoint, targets, }: {
43
44
  readonly context: WorkflowWebhookEnqueueContext;
45
+ /**
46
+ * Evaluates `EXPRESSION` sources (ADR 22 §3.7), one budget for the whole
47
+ * node. Absent: an `EXPRESSION` binding cannot be evaluated and its target
48
+ * is recorded `FAILED`.
49
+ */
50
+ readonly expressions?: NotifyWebhookExpressionEvaluator;
44
51
  readonly resolveEndpoint: (key: string, version: number) => Promise<BPMWorkflowWebhookEndpointEntry | null>;
45
52
  readonly targets: unknown;
46
53
  }): Promise<readonly WorkflowWebhookDeliveryDraft[]>;
@@ -12,7 +12,7 @@ const workflow_webhook_delivery_enums_1 = require("./workflow-webhook-delivery.e
12
12
  * that reached the node carries on. Parameters are resolved here, once, so
13
13
  * every retry sends exactly what the node saw.
14
14
  */
15
- async function buildWorkflowWebhookDeliveryDrafts({ context, resolveEndpoint, targets, }) {
15
+ async function buildWorkflowWebhookDeliveryDrafts({ context, expressions, resolveEndpoint, targets, }) {
16
16
  const issues = (0, workflow_graph_1.readNotifyWebhookStructureIssues)(targets);
17
17
  // The snapshot passed publish, so this only guards against a definition
18
18
  // written around the lint. A malformed list has nothing safe to deliver.
@@ -28,7 +28,7 @@ async function buildWorkflowWebhookDeliveryDrafts({ context, resolveEndpoint, ta
28
28
  const lookup = await resolveEndpoint(target.endpoint.key, target.endpoint.version).then((value) => ({ entry: value, lookupFailed: false }), () => ({ entry: null, lookupFailed: true }));
29
29
  const entry = lookup.entry;
30
30
  const parameters = entry
31
- ? resolveParameters(target.bindings, entry.endpoint.descriptor.parameters, context)
31
+ ? resolveParameters(target.bindings, entry.endpoint.descriptor.parameters, context, expressions)
32
32
  : { issue: null, values: {} };
33
33
  const failure = lookup.lookupFailed
34
34
  ? {
@@ -82,42 +82,85 @@ async function buildWorkflowWebhookDeliveryDrafts({ context, resolveEndpoint, ta
82
82
  };
83
83
  }));
84
84
  }
85
- function resolveParameters(bindings, declared, context) {
86
- const resolved = declared.flatMap((parameter) => {
85
+ function resolveParameters(bindings, declared, context, expressions) {
86
+ const outcomes = declared.flatMap((parameter) => {
87
87
  const binding = bindings.find((candidate) => candidate.parameter === parameter.key);
88
88
  return binding
89
- ? [{ parameter, value: readBindingValue(binding, context) }]
89
+ ? [
90
+ {
91
+ outcome: readBindingValue(binding, context, expressions),
92
+ parameter,
93
+ },
94
+ ]
90
95
  : [];
91
96
  });
92
- const issue = declared
93
- .map((parameter) => {
94
- const match = resolved.find((candidate) => candidate.parameter.key === parameter.key);
95
- const value = match?.value ?? null;
96
- if (parameter.required && value === null) {
97
- return `parameter "${parameter.key}" is required but resolved to no value`;
98
- }
99
- return match &&
100
- !(0, workflow_graph_1.isNotifyWebhookValueCompatibleWithParameter)(value, parameter.type)
101
- ? `parameter "${parameter.key}" expects ${parameter.type}`
102
- : null;
103
- })
104
- .find((candidate) => candidate !== null) ?? null;
97
+ const resolved = outcomes.map(({ outcome, parameter }) => ({
98
+ parameter,
99
+ value: outcome.value,
100
+ }));
101
+ // An expression that produced nothing fails the delivery like a value that
102
+ // does not fit: recorded `WEBHOOK_PARAMETER_INVALID`, never a rollback.
103
+ const expressionIssue = outcomes.find(({ outcome }) => outcome.issue !== null)?.outcome.issue ??
104
+ null;
105
+ const issue = expressionIssue ??
106
+ declared
107
+ .map((parameter) => {
108
+ const match = resolved.find((candidate) => candidate.parameter.key === parameter.key);
109
+ const value = match?.value ?? null;
110
+ if (parameter.required && value === null) {
111
+ return `parameter "${parameter.key}" is required but resolved to no value`;
112
+ }
113
+ return match &&
114
+ !(0, workflow_graph_1.isNotifyWebhookValueCompatibleWithParameter)(value, parameter.type)
115
+ ? `parameter "${parameter.key}" expects ${parameter.type}`
116
+ : null;
117
+ })
118
+ .find((candidate) => candidate !== null) ?? null;
105
119
  return {
106
120
  issue,
107
121
  values: Object.fromEntries(resolved.map(({ parameter, value }) => [parameter.key, value])),
108
122
  };
109
123
  }
110
- function readBindingValue(binding, context) {
124
+ /**
125
+ * The value one binding sends. Exhaustive: a source kind this version does not
126
+ * know fails the delivery rather than being read as another kind.
127
+ */
128
+ function readBindingValue(binding, context, expressions) {
111
129
  const from = binding.from;
112
- if (from.kind === 'CONSTANT') {
113
- return from.value;
114
- }
115
- if (from.kind === 'FIELD') {
116
- return Object.prototype.hasOwnProperty.call(context.instance.formData, from.fieldKey)
117
- ? (context.instance.formData[from.fieldKey] ?? null)
118
- : null;
130
+ switch (from.kind) {
131
+ case 'CONSTANT':
132
+ return { issue: null, value: from.value };
133
+ case 'FIELD':
134
+ return {
135
+ issue: null,
136
+ value: Object.prototype.hasOwnProperty.call(context.instance.formData, from.fieldKey)
137
+ ? (context.instance.formData[from.fieldKey] ?? null)
138
+ : null,
139
+ };
140
+ case 'CONTEXT':
141
+ return { issue: null, value: readContextValue(from.path, context) };
142
+ case 'EXPRESSION': {
143
+ const outcome = expressions
144
+ ? expressions.evaluate(from.expression, context.instance.formData)
145
+ : { code: 'EXPRESSION_UNAVAILABLE', ok: false };
146
+ // Only the parameter key and the code: never the expression or a value.
147
+ return outcome.ok
148
+ ? { issue: null, value: outcome.value }
149
+ : {
150
+ issue: `parameter "${binding.parameter}" expression failed (${outcome.code})`,
151
+ value: null,
152
+ };
153
+ }
154
+ default:
155
+ return rejectUnknownSource(binding.parameter, from);
119
156
  }
120
- return readContextValue(from.path, context);
157
+ }
158
+ function rejectUnknownSource(parameter, from) {
159
+ void from;
160
+ return {
161
+ issue: `parameter "${parameter}" has an unsupported source`,
162
+ value: null,
163
+ };
121
164
  }
122
165
  function readContextValue(path, context) {
123
166
  const values = {
@@ -1 +1 @@
1
- {"version":3,"file":"workflow-webhook-enqueue.js","sourceRoot":"","sources":["../../../../../../libs/bpm-core/src/lib/workflow-webhook/workflow-webhook-enqueue.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workflow-webhook-enqueue.js","sourceRoot":"","sources":["../../../../../../libs/bpm-core/src/lib/workflow-webhook/workflow-webhook-enqueue.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,57 @@
1
+ import type { FormDefinitionSchema } from '@rytass/bpm-core-shared/form';
2
+ import type { NotifyWebhookExpressionBindingSource, NotifyWebhookParameterType } from '@rytass/bpm-core-shared/workflow';
3
+ import type { ConditionService } from '../condition/condition.service';
4
+ import { type ExpressionBudget } from '../condition/expression-budget';
5
+ import { ExpressionBindingValue } from '../form-data-source/form-data-source.expression';
6
+ /** A well-formed `EXPRESSION` source: a non-blank expression and nothing else. */
7
+ export declare function isNotifyWebhookExpressionSource(value: unknown): value is NotifyWebhookExpressionBindingSource;
8
+ /**
9
+ * Why an `EXPRESSION` binding produced no value. Never engine text or a value.
10
+ *
11
+ * Six of these are the runtime contract codes (docs/24 §2.1). The seventh,
12
+ * `EXPRESSION_UNAVAILABLE`, is internal and deliberately not one of them: it
13
+ * means no expression was evaluated at all, because the host wired no
14
+ * `ConditionService` (a configuration error, not an expression's failure).
15
+ * None of the six fits that: `EXPRESSION_FUNCTION_FAILED` would blame a
16
+ * function nobody called, `EXPRESSION_SYNTAX_ERROR` an expression that is
17
+ * fine. It never leaves BPM as an error code; it only appears in the
18
+ * delivery's `lastErrorDetail` (`parameter "<key>" expression failed
19
+ * (EXPRESSION_UNAVAILABLE)`), which is recorded as `FAILED` with
20
+ * `WEBHOOK_PARAMETER_INVALID` like every other binding failure (§2.1).
21
+ */
22
+ export type NotifyWebhookExpressionFailure = 'EXPRESSION_BUDGET_EXCEEDED' | 'EXPRESSION_FUNCTION_FAILED' | 'EXPRESSION_INVALID_RESULT' | 'EXPRESSION_MISSING_KEY' | 'EXPRESSION_SYNTAX_ERROR' | 'EXPRESSION_TYPE_ERROR' | 'EXPRESSION_UNAVAILABLE';
23
+ export type NotifyWebhookExpressionOutcome = {
24
+ readonly ok: true;
25
+ readonly value: ExpressionBindingValue;
26
+ } | {
27
+ readonly code: NotifyWebhookExpressionFailure;
28
+ readonly ok: false;
29
+ };
30
+ /** Evaluates the `EXPRESSION` sources of one NOTIFY node's webhooks. */
31
+ export interface NotifyWebhookExpressionEvaluator {
32
+ evaluate(expression: string, formData: Readonly<Record<string, unknown>>): NotifyWebhookExpressionOutcome;
33
+ }
34
+ /**
35
+ * One evaluator per enqueue: every `EXPRESSION` binding of the node's targets
36
+ * shares one budget, separate from the transaction's own operation budget. It
37
+ * never throws: a failure is an outcome the caller records as a `FAILED`
38
+ * delivery (`WEBHOOK_PARAMETER_INVALID`), and the approval goes on.
39
+ *
40
+ * `conditionService` must be the injected one (the host's function registry);
41
+ * without it every expression is `EXPRESSION_UNAVAILABLE`.
42
+ */
43
+ export declare function createNotifyWebhookExpressionEvaluator(conditionService: ConditionService | null | undefined, budget?: ExpressionBudget): NotifyWebhookExpressionEvaluator;
44
+ /**
45
+ * The publish lint of one `EXPRESSION` webhook binding: the cel-v2 lint of
46
+ * `NOTIFY_WEBHOOK_BINDING` (only `form`, built-in functions only, the bound
47
+ * form's fields and types), then a result that fits the parameter
48
+ * (`EXPR_RESULT_TYPE_MISMATCH`; a `stringArray` parameter never fits).
49
+ * Lines are `<label>: <code>[ <subject>]`.
50
+ */
51
+ export declare function lintNotifyWebhookExpressionBinding(input: {
52
+ readonly conditionService: Pick<ConditionService, 'lintExpression'> | null | undefined;
53
+ readonly expression: string;
54
+ readonly formSchema: FormDefinitionSchema;
55
+ readonly label: string;
56
+ readonly parameterType: NotifyWebhookParameterType | null;
57
+ }): readonly string[];
@@ -0,0 +1,123 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isNotifyWebhookExpressionSource = isNotifyWebhookExpressionSource;
4
+ exports.createNotifyWebhookExpressionEvaluator = createNotifyWebhookExpressionEvaluator;
5
+ exports.lintNotifyWebhookExpressionBinding = lintNotifyWebhookExpressionBinding;
6
+ const bpm_core_shared_1 = require("@rytass/bpm-core-shared");
7
+ const expression_budget_1 = require("../condition/expression-budget");
8
+ const expression_errors_1 = require("../condition/expression-errors");
9
+ const form_data_source_expression_1 = require("../form-data-source/form-data-source.expression");
10
+ /*
11
+ * `EXPRESSION` sources of NOTIFY webhook bindings (ADR 22 §3.7). NOTIFY has no
12
+ * row: the only root is `form`. Evaluated inside the engine transaction,
13
+ * before the outbox row is written, with a budget of its own so the gateway
14
+ * conditions of the same transaction keep theirs.
15
+ */
16
+ /** NOTIFY binding roots: `form` only. */
17
+ const NOTIFY_WEBHOOK_BINDING_ROOTS = bpm_core_shared_1.EXPRESSION_ROOT_IDENTIFIERS_BY_USAGE_POINT.NOTIFY_WEBHOOK_BINDING;
18
+ const EXPRESSION_SOURCE_PROPERTIES = ['expression', 'kind'];
19
+ const isRecord = (value) => typeof value === 'object' && value !== null && !Array.isArray(value);
20
+ /** A well-formed `EXPRESSION` source: a non-blank expression and nothing else. */
21
+ function isNotifyWebhookExpressionSource(value) {
22
+ return (isRecord(value) &&
23
+ value.kind === 'EXPRESSION' &&
24
+ typeof value.expression === 'string' &&
25
+ value.expression.trim().length > 0 &&
26
+ Object.keys(value)
27
+ .filter((key) => value[key] !== undefined)
28
+ .every((key) => EXPRESSION_SOURCE_PROPERTIES.includes(key)));
29
+ }
30
+ const failure = (code) => ({ code, ok: false });
31
+ /**
32
+ * One evaluator per enqueue: every `EXPRESSION` binding of the node's targets
33
+ * shares one budget, separate from the transaction's own operation budget. It
34
+ * never throws: a failure is an outcome the caller records as a `FAILED`
35
+ * delivery (`WEBHOOK_PARAMETER_INVALID`), and the approval goes on.
36
+ *
37
+ * `conditionService` must be the injected one (the host's function registry);
38
+ * without it every expression is `EXPRESSION_UNAVAILABLE`.
39
+ */
40
+ function createNotifyWebhookExpressionEvaluator(conditionService, budget = (0, expression_budget_1.createExpressionBudget)()) {
41
+ return {
42
+ evaluate(expression, formData) {
43
+ if (!conditionService) {
44
+ return failure('EXPRESSION_UNAVAILABLE');
45
+ }
46
+ const dependencies = (0, form_data_source_expression_1.readExpressionBindingDependencies)(expression);
47
+ if (dependencies === null ||
48
+ dependencies.rowColumnKeys.length > 0 ||
49
+ !(0, form_data_source_expression_1.callsOnlyBuiltInExpressionFunctions)(expression)) {
50
+ return failure('EXPRESSION_SYNTAX_ERROR');
51
+ }
52
+ const form = Object.fromEntries(dependencies.formFieldKeys
53
+ .filter((key) => Object.prototype.hasOwnProperty.call(formData, key))
54
+ .map((key) => [key, formData[key]]));
55
+ try {
56
+ const value = conditionService.evaluateValue(expression, { form }, 'webhook.binding', {
57
+ allowedRootIdentifiers: NOTIFY_WEBHOOK_BINDING_ROOTS,
58
+ budget,
59
+ dialect: form_data_source_expression_1.EXPRESSION_BINDING_DIALECT,
60
+ });
61
+ return (0, form_data_source_expression_1.isExpressionBindingValue)(value)
62
+ ? { ok: true, value }
63
+ : failure('EXPRESSION_INVALID_RESULT');
64
+ }
65
+ catch (error) {
66
+ return failure(error instanceof expression_errors_1.ExpressionRuntimeError
67
+ ? error.code
68
+ : 'EXPRESSION_TYPE_ERROR');
69
+ }
70
+ },
71
+ };
72
+ }
73
+ /** CEL base types each webhook parameter type accepts from an expression. */
74
+ const ACCEPTED_RESULT_TYPES = {
75
+ boolean: ['bool'],
76
+ // A json parameter takes any scalar the expression produces.
77
+ json: null,
78
+ number: ['double', 'int', 'uint'],
79
+ string: ['string'],
80
+ // ADR 22 §3.7: an expression yields a scalar, never a list.
81
+ stringArray: [],
82
+ };
83
+ const isResultTypeAccepted = (type, parameterType) => {
84
+ const accepted = ACCEPTED_RESULT_TYPES[parameterType];
85
+ if (accepted === null) {
86
+ return true;
87
+ }
88
+ if (accepted.length === 0) {
89
+ return false;
90
+ }
91
+ if (type === null) {
92
+ return true;
93
+ }
94
+ const base = type.split('<')[0].trim();
95
+ return base === 'dyn' || base === 'null_type' || accepted.includes(base);
96
+ };
97
+ /**
98
+ * The publish lint of one `EXPRESSION` webhook binding: the cel-v2 lint of
99
+ * `NOTIFY_WEBHOOK_BINDING` (only `form`, built-in functions only, the bound
100
+ * form's fields and types), then a result that fits the parameter
101
+ * (`EXPR_RESULT_TYPE_MISMATCH`; a `stringArray` parameter never fits).
102
+ * Lines are `<label>: <code>[ <subject>]`.
103
+ */
104
+ function lintNotifyWebhookExpressionBinding(input) {
105
+ if (!input.conditionService) {
106
+ return [
107
+ `${input.label} cannot be checked: no ConditionService is available`,
108
+ ];
109
+ }
110
+ const expression = input.expression.trim();
111
+ const lintErrors = input.conditionService.lintExpression(expression, input.label, {
112
+ dialect: form_data_source_expression_1.EXPRESSION_BINDING_DIALECT,
113
+ formSchema: input.formSchema,
114
+ usagePoint: 'NOTIFY_WEBHOOK_BINDING',
115
+ });
116
+ if (lintErrors.length > 0 || input.parameterType === null) {
117
+ return lintErrors;
118
+ }
119
+ return isResultTypeAccepted((0, form_data_source_expression_1.readExpressionBindingResultType)(expression, input.formSchema, null), input.parameterType)
120
+ ? []
121
+ : [`${input.label}: EXPR_RESULT_TYPE_MISMATCH`];
122
+ }
123
+ //# sourceMappingURL=workflow-webhook-expression.js.map