@rytass/bpm-core-nestjs-module 0.19.0 → 0.20.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 (146) hide show
  1. package/CHANGELOG.md +36 -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 +105 -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-engine.service.d.ts +24 -0
  129. package/src/lib/workflow-engine/workflow-engine.service.js +240 -65
  130. package/src/lib/workflow-engine/workflow-engine.service.js.map +1 -1
  131. package/src/lib/workflow-engine/workflow-service-task-dispatcher.token.js +4 -0
  132. package/src/lib/workflow-engine/workflow-service-task-dispatcher.token.js.map +1 -1
  133. package/src/lib/workflow-webhook/workflow-webhook-delivery.service.d.ts +3 -1
  134. package/src/lib/workflow-webhook/workflow-webhook-delivery.service.js +11 -2
  135. package/src/lib/workflow-webhook/workflow-webhook-delivery.service.js.map +1 -1
  136. package/src/lib/workflow-webhook/workflow-webhook-enqueue.d.ts +8 -1
  137. package/src/lib/workflow-webhook/workflow-webhook-enqueue.js +70 -27
  138. package/src/lib/workflow-webhook/workflow-webhook-enqueue.js.map +1 -1
  139. package/src/lib/workflow-webhook/workflow-webhook-expression.d.ts +57 -0
  140. package/src/lib/workflow-webhook/workflow-webhook-expression.js +123 -0
  141. package/src/lib/workflow-webhook/workflow-webhook-expression.js.map +1 -0
  142. package/src/lib/workflow-webhook/workflow-webhook.module.js +4 -0
  143. package/src/lib/workflow-webhook/workflow-webhook.module.js.map +1 -1
  144. package/src/lib/workflow-webhook/workflow-webhook.validator.d.ts +7 -0
  145. package/src/lib/workflow-webhook/workflow-webhook.validator.js +29 -6
  146. package/src/lib/workflow-webhook/workflow-webhook.validator.js.map +1 -1
@@ -0,0 +1,134 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ExpressionRuntime = void 0;
4
+ const common_1 = require("@nestjs/common");
5
+ const time_budget_1 = require("../workflow-engine/time-budget");
6
+ const expression_errors_1 = require("./expression-errors");
7
+ const expression_engine_failure_1 = require("./expression-engine-failure");
8
+ const expression_result_walker_1 = require("./expression-result.walker");
9
+ const cel_legacy_adapter_1 = require("./adapters/cel-legacy.adapter");
10
+ const cel_v2_adapter_1 = require("./adapters/cel-v2.adapter");
11
+ const expression_function_registry_1 = require("../expression-function/expression-function.registry");
12
+ const expression_dialect_1 = require("./expression-dialect");
13
+ const logger = new common_1.Logger('ExpressionRuntime');
14
+ const runtimesByRegistry = new WeakMap();
15
+ /**
16
+ * The single place where an expression is compiled and evaluated (ADR 22 §3.2).
17
+ * Every caller goes through here: nothing reaches an engine directly.
18
+ *
19
+ * Order: compile (outside any budget, so an interrupt cannot land in module
20
+ * loading), check the budget, evaluate under `runWithinTimeBudget`, normalize
21
+ * the result, and map any failure to an {@link ExpressionRuntimeError}.
22
+ *
23
+ * A timeout raises `EXPRESSION_BUDGET_EXCEEDED`. It never returns `false`: an
24
+ * expression that did not finish is not the same as one that is false.
25
+ */
26
+ class ExpressionRuntime {
27
+ /**
28
+ * Without arguments the runtime calls the nine built-in functions only
29
+ * (ADR 22 §3.5); use {@link ExpressionRuntime.withFunctions} for a host's.
30
+ */
31
+ constructor(legacyAdapter = cel_legacy_adapter_1.celLegacyAdapter, v2Adapter = cel_v2_adapter_1.celV2Adapter) {
32
+ this.legacyAdapter = legacyAdapter;
33
+ this.v2Adapter = v2Adapter;
34
+ }
35
+ /**
36
+ * The runtime for a function registry: both dialects call the functions it
37
+ * lists, through the same argument, result and failure rules. One runtime
38
+ * per registry, cached, so every caller shares its compiled environments.
39
+ * The built-ins-only registry gets the default adapters.
40
+ */
41
+ static withFunctions(registry) {
42
+ if (registry === expression_function_registry_1.BUILT_IN_EXPRESSION_FUNCTION_REGISTRY) {
43
+ return new ExpressionRuntime();
44
+ }
45
+ const cached = runtimesByRegistry.get(registry);
46
+ if (cached) {
47
+ return cached;
48
+ }
49
+ const runtime = new ExpressionRuntime((0, cel_legacy_adapter_1.createCelLegacyAdapter)(registry), (0, cel_v2_adapter_1.createCelV2Adapter)(registry));
50
+ runtimesByRegistry.set(registry, runtime);
51
+ return runtime;
52
+ }
53
+ /**
54
+ * Compiles with the dialect's engine. This is also what loads that engine,
55
+ * so callers that compile before starting a budget never have an interrupt
56
+ * land inside module loading.
57
+ */
58
+ compile(expression, label, dialect = expression_dialect_1.DEFAULT_EXPRESSION_DIALECT) {
59
+ const adapter = this.readAdapter(dialect, label);
60
+ let handle;
61
+ try {
62
+ handle = adapter.compile(expression);
63
+ }
64
+ catch (error) {
65
+ // A classified failure (the function registry could not be read while
66
+ // the cel-v2 environment was built) is mapped like one at evaluation.
67
+ // Anything else — the engine failing to load — is a configuration
68
+ // error and passes through.
69
+ if (error instanceof expression_engine_failure_1.ExpressionEngineFailure) {
70
+ throw (0, expression_errors_1.toExpressionRuntimeError)(error, label, expression);
71
+ }
72
+ throw error;
73
+ }
74
+ if (handle === null) {
75
+ throw new expression_errors_1.ExpressionRuntimeError('EXPRESSION_SYNTAX_ERROR', label);
76
+ }
77
+ return handle;
78
+ }
79
+ evaluate(request) {
80
+ const dialect = request.dialect ?? expression_dialect_1.DEFAULT_EXPRESSION_DIALECT;
81
+ const adapter = this.readAdapter(dialect, request.label);
82
+ const handle = this.compile(request.expression, request.label, dialect);
83
+ const timeoutMs = request.budget.nextTimeoutMs();
84
+ // Below one whole millisecond nothing useful can run, and `vm` would reject
85
+ // the timeout as a range error rather than report an exhausted budget.
86
+ if (timeoutMs < 1) {
87
+ const exhausted = new expression_errors_1.ExpressionRuntimeError('EXPRESSION_BUDGET_EXCEEDED', request.label);
88
+ this.logFailure(exhausted, dialect, performance.now());
89
+ throw exhausted;
90
+ }
91
+ const startedAt = performance.now();
92
+ try {
93
+ const raw = (0, time_budget_1.runWithinTimeBudget)(() => adapter.evaluate(handle, request.roots), timeoutMs);
94
+ return (0, expression_result_walker_1.normalizeExpressionResult)(raw, request.label, expression_result_walker_1.DEFAULT_EXPRESSION_RESULT_LIMITS);
95
+ }
96
+ catch (error) {
97
+ const mapped = (0, expression_errors_1.toExpressionRuntimeError)(error, request.label, request.expression);
98
+ this.logFailure(mapped, dialect, startedAt);
99
+ throw mapped;
100
+ }
101
+ finally {
102
+ request.budget.record(performance.now() - startedAt);
103
+ }
104
+ }
105
+ readAdapter(dialect, label) {
106
+ switch (dialect) {
107
+ case 'cel-legacy':
108
+ return this.legacyAdapter;
109
+ case 'cel-v2':
110
+ return this.v2Adapter;
111
+ default:
112
+ // Unreachable for typed callers; a value cast or read from storage
113
+ // could still get here, and is refused rather than guessed at.
114
+ throw new expression_errors_1.ExpressionRuntimeError('EXPRESSION_SYNTAX_ERROR', label, {
115
+ detail: 'names an unknown expression dialect',
116
+ });
117
+ }
118
+ }
119
+ /**
120
+ * Logs only the label, the dialect, the code and the elapsed time. The message, the key
121
+ * name and the expression are not logged: they can carry case data.
122
+ */
123
+ logFailure(error, dialect, startedAt) {
124
+ const elapsedMs = Math.round(performance.now() - startedAt);
125
+ const line = `label=${error.label} dialect=${dialect} code=${error.code} elapsedMs=${elapsedMs}`;
126
+ if (error.code === 'EXPRESSION_BUDGET_EXCEEDED') {
127
+ logger.warn(line);
128
+ return;
129
+ }
130
+ logger.debug(line);
131
+ }
132
+ }
133
+ exports.ExpressionRuntime = ExpressionRuntime;
134
+ //# sourceMappingURL=expression-runtime.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"expression-runtime.js","sourceRoot":"","sources":["../../../../../../libs/bpm-core/src/lib/condition/expression-runtime.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,6 @@
1
1
  export * from './condition.module';
2
2
  export * from './condition.service';
3
+ export * from './expression-errors';
4
+ export { DEFAULT_EXPRESSION_DIALECT, EXPRESSION_DIALECTS, isExpressionDialect, readExpressionDialect, readWorkflowExpressionDialect, } from './expression-dialect';
5
+ export type { ExpressionDialect } from './expression-dialect';
6
+ export type { ExpressionBudget, ExpressionBudgetOptions, } from './expression-budget';
@@ -1,6 +1,14 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.readWorkflowExpressionDialect = exports.readExpressionDialect = exports.isExpressionDialect = exports.EXPRESSION_DIALECTS = exports.DEFAULT_EXPRESSION_DIALECT = void 0;
3
4
  const tslib_1 = require("tslib");
4
5
  tslib_1.__exportStar(require("./condition.module"), exports);
5
6
  tslib_1.__exportStar(require("./condition.service"), exports);
7
+ tslib_1.__exportStar(require("./expression-errors"), exports);
8
+ var expression_dialect_1 = require("./expression-dialect");
9
+ Object.defineProperty(exports, "DEFAULT_EXPRESSION_DIALECT", { enumerable: true, get: function () { return expression_dialect_1.DEFAULT_EXPRESSION_DIALECT; } });
10
+ Object.defineProperty(exports, "EXPRESSION_DIALECTS", { enumerable: true, get: function () { return expression_dialect_1.EXPRESSION_DIALECTS; } });
11
+ Object.defineProperty(exports, "isExpressionDialect", { enumerable: true, get: function () { return expression_dialect_1.isExpressionDialect; } });
12
+ Object.defineProperty(exports, "readExpressionDialect", { enumerable: true, get: function () { return expression_dialect_1.readExpressionDialect; } });
13
+ Object.defineProperty(exports, "readWorkflowExpressionDialect", { enumerable: true, get: function () { return expression_dialect_1.readWorkflowExpressionDialect; } });
6
14
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../libs/bpm-core/src/lib/condition/index.ts"],"names":[],"mappings":";;;AAAA,6DAAmC;AACnC,8DAAoC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../libs/bpm-core/src/lib/condition/index.ts"],"names":[],"mappings":";;;;AAAA,6DAAmC;AACnC,8DAAoC;AACpC,8DAAoC;AACpC,2DAM8B;AAL5B,gIAAA,0BAA0B,OAAA;AAC1B,yHAAA,mBAAmB,OAAA;AACnB,yHAAA,mBAAmB,OAAA;AACnB,2HAAA,qBAAqB,OAAA;AACrB,mIAAA,6BAA6B,OAAA"}
@@ -1,3 +1,4 @@
1
+ import type { ExpressionDialect } from '../condition/expression-dialect';
1
2
  import { DelegationRuleStatusEnum, DelegationScopeTypeEnum } from './delegation.enums';
2
3
  export declare class DelegationRuleEntity {
3
4
  id: string;
@@ -6,6 +7,12 @@ export declare class DelegationRuleEntity {
6
7
  scopeType: DelegationScopeTypeEnum;
7
8
  scopeTemplateIds: readonly string[];
8
9
  scopeConditionCel: string | null;
10
+ /**
11
+ * The engine `scopeConditionCel` is evaluated with (ADR 22 §3.3). Rows
12
+ * written before the column existed are `cel-legacy` (migration
13
+ * `DelegationScopeConditionDialect0000000030000`).
14
+ */
15
+ scopeConditionDialect: ExpressionDialect;
9
16
  priority: number;
10
17
  startAt: Date;
11
18
  endAt: Date | null;
@@ -42,6 +42,16 @@ tslib_1.__decorate([
42
42
  (0, graphql_1.Field)(() => String, { nullable: true }),
43
43
  tslib_1.__metadata("design:type", Object)
44
44
  ], DelegationRuleEntity.prototype, "scopeConditionCel", void 0);
45
+ tslib_1.__decorate([
46
+ (0, typeorm_1.Column)('text', {
47
+ default: 'cel-legacy',
48
+ name: 'scope_condition_dialect',
49
+ }),
50
+ (0, graphql_1.Field)(() => String, {
51
+ description: 'Expression dialect of scopeConditionCel: cel-legacy or cel-v2.',
52
+ }),
53
+ tslib_1.__metadata("design:type", String)
54
+ ], DelegationRuleEntity.prototype, "scopeConditionDialect", void 0);
45
55
  tslib_1.__decorate([
46
56
  (0, typeorm_1.Column)('int', { default: 100 }),
47
57
  (0, graphql_1.Field)({
@@ -1 +1 @@
1
- {"version":3,"file":"delegation-rule.entity.js","sourceRoot":"","sources":["../../../../../../libs/bpm-core/src/lib/delegation/delegation-rule.entity.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"delegation-rule.entity.js","sourceRoot":"","sources":["../../../../../../libs/bpm-core/src/lib/delegation/delegation-rule.entity.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { ModuleRef } from '@nestjs/core';
2
- import { Repository } from 'typeorm';
2
+ import { EntityManager, Repository } from 'typeorm';
3
3
  import { ConditionService } from '../condition/condition.service';
4
4
  import { CreateDelegationRuleInput, UpdateDelegationRuleInput } from './dto/delegation-rule.input';
5
5
  import { DelegationRuleEntity } from './delegation-rule.entity';
@@ -9,6 +9,12 @@ export interface DelegationResolutionContext {
9
9
  readonly initiatorMemberId: string;
10
10
  readonly initiatorMetadataSnapshot: Readonly<Record<string, unknown>>;
11
11
  readonly instanceId: string;
12
+ /**
13
+ * The open transaction to read rules through. A caller inside one must pass
14
+ * it: reading on a second pooled connection while holding the first lets
15
+ * concurrent transactions wait on each other until the pool never recovers.
16
+ */
17
+ readonly manager?: EntityManager;
12
18
  readonly nodeId: string;
13
19
  readonly state: string;
14
20
  readonly templateId: string;
@@ -9,6 +9,7 @@ const unknown_element_exception_js_1 = require("@nestjs/core/errors/exceptions/u
9
9
  const typeorm_1 = require("@nestjs/typeorm");
10
10
  const typeorm_2 = require("typeorm");
11
11
  const condition_service_1 = require("../condition/condition.service");
12
+ const expression_dialect_1 = require("../condition/expression-dialect");
12
13
  const identity_service_1 = require("../identity/identity.service");
13
14
  const delegation_rule_entity_1 = require("./delegation-rule.entity");
14
15
  const delegation_enums_1 = require("./delegation.enums");
@@ -76,6 +77,9 @@ let DelegationService = DelegationService_1 = class DelegationService {
76
77
  ...input,
77
78
  principalMemberId: currentRule.principalMemberId,
78
79
  createdByMemberId: currentRule.createdByMemberId,
80
+ // An update cannot change the dialect: the condition keeps being read
81
+ // by the engine it was written and tested for (ADR 22 §3.3).
82
+ scopeConditionDialect: (0, expression_dialect_1.readExpressionDialect)(currentRule.scopeConditionDialect, `delegationRules.${currentRule.id}.scopeConditionDialect`),
79
83
  });
80
84
  await this.assertNoActiveCycle(normalizedRule.principalMemberId, normalizedRule.agentMemberId, currentRule.id);
81
85
  // Assigning onto a fresh entity keeps the prototype. `DelegationRuleEntity`
@@ -155,7 +159,7 @@ let DelegationService = DelegationService_1 = class DelegationService {
155
159
  * of scope never waits on, or is refused by, the host directory.
156
160
  */
157
161
  async readScopedRules(principalMemberId, context, at) {
158
- const rules = await this.readCurrentRules(principalMemberId, at);
162
+ const rules = await this.readCurrentRules(principalMemberId, at, context.manager);
159
163
  return rules.flatMap((rule) => {
160
164
  try {
161
165
  return this.matchesRuleScope(rule, context)
@@ -168,8 +172,10 @@ let DelegationService = DelegationService_1 = class DelegationService {
168
172
  });
169
173
  }
170
174
  /** The principal's rules in force at `at`, the applicable one first. */
171
- async readCurrentRules(principalMemberId, at) {
172
- return (await this.delegationRuleRepository.find({
175
+ async readCurrentRules(principalMemberId, at, manager) {
176
+ const repository = manager?.getRepository(delegation_rule_entity_1.DelegationRuleEntity) ??
177
+ this.delegationRuleRepository;
178
+ return (await repository.find({
173
179
  // Higher priority wins, as with manager rules; among equal priorities
174
180
  // the rule created first wins. TypeORM sorts by key order, so
175
181
  // `priority` has to be the first key — it used to come second and
@@ -246,7 +252,9 @@ let DelegationService = DelegationService_1 = class DelegationService {
246
252
  if (rule.scopeType === delegation_enums_1.DelegationScopeTypeEnum.TEMPLATE_LIST) {
247
253
  return rule.scopeTemplateIds.includes(context.templateId);
248
254
  }
249
- return this.conditionService.evaluateBoolean(rule.scopeConditionCel, buildDelegationExpressionContext(rule.principalMemberId, context), `delegationRules.${rule.id}.scopeConditionCel`);
255
+ return this.conditionService.evaluateBoolean(rule.scopeConditionCel, buildDelegationExpressionContext(rule.principalMemberId, context), `delegationRules.${rule.id}.scopeConditionCel`, {
256
+ dialect: (0, expression_dialect_1.readExpressionDialect)(rule.scopeConditionDialect, `delegationRules.${rule.id}.scopeConditionDialect`),
257
+ });
250
258
  }
251
259
  async assertNoActiveCycle(principalMemberId, agentMemberId, ignoredRuleId = null) {
252
260
  if (principalMemberId === agentMemberId) {
@@ -297,6 +305,7 @@ let DelegationService = DelegationService_1 = class DelegationService {
297
305
  }
298
306
  const scopeTemplateIds = input.scopeTemplateIds ?? [];
299
307
  const scopeConditionCel = input.scopeConditionCel?.trim() || null;
308
+ const scopeConditionDialect = (0, expression_dialect_1.readExpressionDialect)(input.scopeConditionDialect, 'scopeConditionDialect');
300
309
  if (input.scopeType === delegation_enums_1.DelegationScopeTypeEnum.TEMPLATE_LIST &&
301
310
  scopeTemplateIds.length === 0) {
302
311
  throw new common_1.BadRequestException('Template scoped delegation requires templates');
@@ -305,7 +314,14 @@ let DelegationService = DelegationService_1 = class DelegationService {
305
314
  !scopeConditionCel) {
306
315
  throw new common_1.BadRequestException('Condition scoped delegation requires CEL');
307
316
  }
308
- const lintErrors = this.conditionService.lintExpression(scopeConditionCel, 'scopeConditionCel', { allowedRootIdentifiers: DELEGATION_EXPRESSION_ROOT_IDENTIFIERS });
317
+ const lintErrors = this.conditionService.lintExpression(scopeConditionCel, 'scopeConditionCel', {
318
+ allowedRootIdentifiers: DELEGATION_EXPRESSION_ROOT_IDENTIFIERS,
319
+ dialect: scopeConditionDialect,
320
+ // The use point brings the cel-v2 result type (bool) and the function
321
+ // rules (host functions allowed); its roots equal the list above, so
322
+ // cel-legacy reads the same roots as before.
323
+ usagePoint: 'DELEGATION_CONDITION',
324
+ });
309
325
  if (lintErrors.length > 0) {
310
326
  throw new common_1.BadRequestException(lintErrors.join('; '));
311
327
  }
@@ -318,6 +334,7 @@ let DelegationService = DelegationService_1 = class DelegationService {
318
334
  scopeConditionCel: input.scopeType === delegation_enums_1.DelegationScopeTypeEnum.CONDITION_BASED
319
335
  ? scopeConditionCel
320
336
  : null,
337
+ scopeConditionDialect,
321
338
  scopeTemplateIds: input.scopeType === delegation_enums_1.DelegationScopeTypeEnum.TEMPLATE_LIST
322
339
  ? scopeTemplateIds
323
340
  : [],
@@ -1 +1 @@
1
- {"version":3,"file":"delegation.service.js","sourceRoot":"","sources":["../../../../../../libs/bpm-core/src/lib/delegation/delegation.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"delegation.service.js","sourceRoot":"","sources":["../../../../../../libs/bpm-core/src/lib/delegation/delegation.service.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import type { ExpressionDialect } from '../../condition/expression-dialect';
1
2
  import { DelegationScopeTypeEnum } from '../delegation.enums';
2
3
  export declare class CreateDelegationRuleInput {
3
4
  principalMemberId: string;
@@ -5,6 +6,7 @@ export declare class CreateDelegationRuleInput {
5
6
  scopeType: DelegationScopeTypeEnum;
6
7
  scopeTemplateIds?: readonly string[] | null;
7
8
  scopeConditionCel?: string | null;
9
+ scopeConditionDialect?: ExpressionDialect | null;
8
10
  priority?: number | null;
9
11
  startAt?: string | null;
10
12
  endAt?: string | null;
@@ -4,6 +4,7 @@ exports.UpdateDelegationRuleInput = exports.CreateDelegationRuleInput = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  const graphql_1 = require("@nestjs/graphql");
6
6
  const class_validator_1 = require("class-validator");
7
+ const expression_dialect_1 = require("../../condition/expression-dialect");
7
8
  const delegation_enums_1 = require("../delegation.enums");
8
9
  const PRIORITY_DESCRIPTION = 'Higher wins when several active rules of one principal match; ties go to the rule created first.';
9
10
  const ISO_DATE_TIME_WITH_TIME_ZONE_PATTERN = /^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}(?::\d{2}(?:\.\d{3})?)?(?:Z|[+-]\d{2}:\d{2})$/;
@@ -38,6 +39,15 @@ tslib_1.__decorate([
38
39
  (0, class_validator_1.IsString)(),
39
40
  tslib_1.__metadata("design:type", Object)
40
41
  ], CreateDelegationRuleInput.prototype, "scopeConditionCel", void 0);
42
+ tslib_1.__decorate([
43
+ (0, graphql_1.Field)(() => String, {
44
+ description: 'Expression dialect of scopeConditionCel: cel-legacy (default) or cel-v2. Fixed once the rule exists; updating a rule keeps it.',
45
+ nullable: true,
46
+ }),
47
+ (0, class_validator_1.IsOptional)(),
48
+ (0, class_validator_1.IsIn)(expression_dialect_1.EXPRESSION_DIALECTS),
49
+ tslib_1.__metadata("design:type", Object)
50
+ ], CreateDelegationRuleInput.prototype, "scopeConditionDialect", void 0);
41
51
  tslib_1.__decorate([
42
52
  (0, graphql_1.Field)(() => graphql_1.Int, {
43
53
  description: `${PRIORITY_DESCRIPTION} Defaults to 100.`,
@@ -1 +1 @@
1
- {"version":3,"file":"delegation-rule.input.js","sourceRoot":"","sources":["../../../../../../../libs/bpm-core/src/lib/delegation/dto/delegation-rule.input.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"delegation-rule.input.js","sourceRoot":"","sources":["../../../../../../../libs/bpm-core/src/lib/delegation/dto/delegation-rule.input.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import type { BPMBuiltInExpressionFunctionName } from '@rytass/bpm-core-shared';
2
+ import type { BPMExpressionFunction } from './expression-function.types';
3
+ /**
4
+ * The built-ins, in the order `list()` reports them (alphabetical, matching
5
+ * `BPM_BUILT_IN_EXPRESSION_FUNCTION_NAMES`).
6
+ */
7
+ export declare const BPM_BUILT_IN_EXPRESSION_FUNCTIONS: readonly (BPMExpressionFunction & {
8
+ readonly name: BPMBuiltInExpressionFunctionName;
9
+ })[];
@@ -0,0 +1,117 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BPM_BUILT_IN_EXPRESSION_FUNCTIONS = void 0;
4
+ /*
5
+ * The nine core functions (ADR 22 §3.5). Pure computation only: no time, no
6
+ * randomness, no I/O, so a dry run, a preview and the real evaluation always
7
+ * agree. Their names are reserved and carry no version suffix.
8
+ *
9
+ * Every handler receives arguments the runtime has already checked against
10
+ * `parameters` (a `double` is a finite JS number, a `string` a string), so the
11
+ * casts below only restate that check.
12
+ *
13
+ * Numeric results are always `double`, in both dialects: cel-legacy only has JS
14
+ * numbers, and in cel-v2 `round(form.amount) == 2` still holds through the
15
+ * exact `int == double` operator the adapter registers.
16
+ */
17
+ const NUMBER_PARAMETER = {
18
+ name: 'value',
19
+ type: 'double',
20
+ };
21
+ const STRING_PARAMETER = {
22
+ name: 'value',
23
+ type: 'string',
24
+ };
25
+ const PAIR_PARAMETERS = [
26
+ { name: 'left', type: 'double' },
27
+ { name: 'right', type: 'double' },
28
+ ];
29
+ /** `-0` reads as `0` in JSON but not to `Object.is`; results never carry it. */
30
+ const withoutNegativeZero = (value) => value === 0 ? 0 : value;
31
+ const unaryNumber = (operation) => (...args) => withoutNegativeZero(operation(args[0]));
32
+ const binaryNumber = (operation) => (...args) => withoutNegativeZero(operation(args[0], args[1]));
33
+ const unaryString = (operation) => (...args) => operation(args[0]);
34
+ /**
35
+ * Rounds half away from zero, as spreadsheets and most business rules do:
36
+ * `round(2.5)` is 3 and `round(-2.5)` is -3. `Math.round` alone would give -2.
37
+ */
38
+ const roundHalfAwayFromZero = (value) => Math.sign(value) * Math.round(Math.abs(value));
39
+ /**
40
+ * The built-ins, in the order `list()` reports them (alphabetical, matching
41
+ * `BPM_BUILT_IN_EXPRESSION_FUNCTION_NAMES`).
42
+ */
43
+ exports.BPM_BUILT_IN_EXPRESSION_FUNCTIONS = Object.freeze([
44
+ {
45
+ description: 'The absolute value of a number.',
46
+ handler: unaryNumber(Math.abs),
47
+ label: '絕對值',
48
+ name: 'abs',
49
+ parameters: [NUMBER_PARAMETER],
50
+ returnType: 'double',
51
+ },
52
+ {
53
+ description: 'The smallest integer not less than a number.',
54
+ handler: unaryNumber(Math.ceil),
55
+ label: '無條件進位',
56
+ name: 'ceil',
57
+ parameters: [NUMBER_PARAMETER],
58
+ returnType: 'double',
59
+ },
60
+ {
61
+ description: 'The largest integer not greater than a number.',
62
+ handler: unaryNumber(Math.floor),
63
+ label: '無條件捨去',
64
+ name: 'floor',
65
+ parameters: [NUMBER_PARAMETER],
66
+ returnType: 'double',
67
+ },
68
+ {
69
+ description: 'A string in lower case. Locale independent: the same input always gives the same result.',
70
+ handler: unaryString((value) => value.toLowerCase()),
71
+ label: '轉小寫',
72
+ name: 'lower',
73
+ parameters: [STRING_PARAMETER],
74
+ returnType: 'string',
75
+ },
76
+ {
77
+ description: 'The larger of two numbers.',
78
+ handler: binaryNumber(Math.max),
79
+ label: '較大值',
80
+ name: 'max',
81
+ parameters: PAIR_PARAMETERS,
82
+ returnType: 'double',
83
+ },
84
+ {
85
+ description: 'The smaller of two numbers.',
86
+ handler: binaryNumber(Math.min),
87
+ label: '較小值',
88
+ name: 'min',
89
+ parameters: PAIR_PARAMETERS,
90
+ returnType: 'double',
91
+ },
92
+ {
93
+ description: 'A number rounded to the nearest integer; halves round away from zero.',
94
+ handler: unaryNumber(roundHalfAwayFromZero),
95
+ label: '四捨五入',
96
+ name: 'round',
97
+ parameters: [NUMBER_PARAMETER],
98
+ returnType: 'double',
99
+ },
100
+ {
101
+ description: 'A string without leading and trailing whitespace.',
102
+ handler: unaryString((value) => value.trim()),
103
+ label: '去除前後空白',
104
+ name: 'trim',
105
+ parameters: [STRING_PARAMETER],
106
+ returnType: 'string',
107
+ },
108
+ {
109
+ description: 'A string in upper case. Locale independent: the same input always gives the same result.',
110
+ handler: unaryString((value) => value.toUpperCase()),
111
+ label: '轉大寫',
112
+ name: 'upper',
113
+ parameters: [STRING_PARAMETER],
114
+ returnType: 'string',
115
+ },
116
+ ]);
117
+ //# sourceMappingURL=expression-function.built-ins.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"expression-function.built-ins.js","sourceRoot":"","sources":["../../../../../../libs/bpm-core/src/lib/expression-function/expression-function.built-ins.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ import { DynamicModule, ModuleMetadata, Provider } from '@nestjs/common';
2
+ import { BPMExpressionFunction } from './expression-function.types';
3
+ export interface ExpressionFunctionModuleOptions extends Pick<ModuleMetadata, 'imports'> {
4
+ /**
5
+ * Host functions as a Nest provider for `BPM_EXPRESSION_FUNCTIONS`, for
6
+ * functions that need injected dependencies to be built. Added after the
7
+ * `expressionFunctions` runtime option; a name in both is a boot error.
8
+ */
9
+ readonly functionsProvider?: Provider<readonly BPMExpressionFunction[]>;
10
+ }
11
+ /**
12
+ * Publishes the expression function registry (ADR 22 §3.5) under
13
+ * `BPM_EXPRESSION_FUNCTION_REGISTRY`. Global, because every module that
14
+ * evaluates or lints an expression (`ConditionModule` consumers: templates,
15
+ * the workflow engine, delegation) reads the same registry.
16
+ */
17
+ export declare class ExpressionFunctionModule {
18
+ static forRoot(options?: ExpressionFunctionModuleOptions): DynamicModule;
19
+ }