@o3r/rules-engine 11.1.0-prerelease.9 → 11.1.0-rc.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 (64) hide show
  1. package/README.md +42 -19
  2. package/builders/rules-engine-extractor/helpers/index.js.map +1 -0
  3. package/builders/rules-engine-extractor/helpers/rules-engine.extractor.interfaces.js.map +1 -0
  4. package/builders/rules-engine-extractor/helpers/rules-engine.extractor.js.map +1 -0
  5. package/builders/rules-engine-extractor/index.js.map +1 -0
  6. package/builders/rules-engine-extractor/schema.js.map +1 -0
  7. package/components/rules-engine/shared/ruleset-history.helper.d.ts.map +1 -1
  8. package/devkit/rules-engine-devkit.interface.d.ts.map +1 -1
  9. package/devkit/rules-engine-devtools.message.service.d.ts +0 -1
  10. package/devkit/rules-engine-devtools.message.service.d.ts.map +1 -1
  11. package/devkit/rules-engine-devtools.service.d.ts +1 -1
  12. package/engine/helpers/filter-ruleset-event.operator.d.ts.map +1 -1
  13. package/engine/operator/operator.helpers.d.ts.map +1 -1
  14. package/engine/ruleset-executor.d.ts.map +1 -1
  15. package/esm2022/components/rules-engine/rule-actions/rule-actions-pres.component.mjs +3 -3
  16. package/esm2022/components/rules-engine/rule-condition/rule-condition-pres.component.mjs +3 -3
  17. package/esm2022/components/rules-engine/rule-key-value/rule-key-value-pres.component.mjs +3 -3
  18. package/esm2022/components/rules-engine/rule-tree/rule-tree-pres.component.mjs +3 -3
  19. package/esm2022/components/rules-engine/ruleset-history/ruleset-history-pres.component.mjs +3 -3
  20. package/esm2022/components/rules-engine/ruleset-history/ruleset-history-pres.module.mjs +4 -4
  21. package/esm2022/components/rules-engine/shared/fallback-to.pipe.mjs +6 -6
  22. package/esm2022/components/rules-engine/shared/json-or-string.pipe.mjs +3 -3
  23. package/esm2022/components/rules-engine/shared/ruleset-history.helper.mjs +3 -3
  24. package/esm2022/devkit/rules-engine-devtools.console.service.mjs +3 -3
  25. package/esm2022/devkit/rules-engine-devtools.message.service.mjs +4 -5
  26. package/esm2022/devkit/rules-engine-devtools.module.mjs +4 -4
  27. package/esm2022/devkit/rules-engine-devtools.service.mjs +3 -3
  28. package/esm2022/engine/ruleset-executor.mjs +1 -1
  29. package/esm2022/inner-facts/current-time/current-time-fact.service.mjs +3 -3
  30. package/esm2022/services/runner/rules-engine.runner.module.mjs +4 -4
  31. package/esm2022/services/runner/rules-engine.runner.service.mjs +12 -5
  32. package/esm2022/stores/rulesets/rulesets.effect.mjs +3 -3
  33. package/esm2022/stores/rulesets/rulesets.module.mjs +4 -4
  34. package/fesm2022/o3r-rules-engine.mjs +67 -61
  35. package/fesm2022/o3r-rules-engine.mjs.map +1 -1
  36. package/fixtures/jasmine/rules-engine.runner.service.fixture.jasmine.d.ts +0 -1
  37. package/fixtures/jasmine/rules-engine.runner.service.fixture.jasmine.d.ts.map +1 -1
  38. package/fixtures/jest/rules-engine.runner.service.fixture.jest.d.ts +0 -1
  39. package/fixtures/jest/rules-engine.runner.service.fixture.jest.d.ts.map +1 -1
  40. package/package.json +13 -13
  41. package/schematics/cms-adapter/index.js.map +1 -0
  42. package/schematics/facts-service/index.js.map +1 -0
  43. package/schematics/facts-service/schema.js.map +1 -0
  44. package/schematics/ng-add/helpers/devtools-registration.d.ts.map +1 -1
  45. package/schematics/ng-add/helpers/devtools-registration.js.map +1 -0
  46. package/schematics/ng-add/index.d.ts.map +1 -1
  47. package/schematics/ng-add/index.js +19 -2
  48. package/schematics/ng-add/index.js.map +1 -0
  49. package/schematics/ng-add/schema.js.map +1 -0
  50. package/schematics/ng-update/index.js +1 -2
  51. package/schematics/ng-update/index.js.map +1 -0
  52. package/schematics/ng-update/v10.0/action-module-split.js +1 -2
  53. package/schematics/ng-update/v10.0/action-module-split.js.map +1 -0
  54. package/schematics/operator/index.js.map +1 -0
  55. package/schematics/operator/schema.js.map +1 -0
  56. package/schematics/rules-engine-to-component/index.d.ts.map +1 -1
  57. package/schematics/rules-engine-to-component/index.js +95 -76
  58. package/schematics/rules-engine-to-component/index.js.map +1 -0
  59. package/schematics/rules-engine-to-component/schema.d.ts +2 -2
  60. package/schematics/rules-engine-to-component/schema.d.ts.map +1 -1
  61. package/schematics/rules-engine-to-component/schema.js.map +1 -0
  62. package/schematics/rules-engine-to-component/schema.json +1 -1
  63. package/services/runner/rules-engine.runner.service.d.ts +6 -1
  64. package/services/runner/rules-engine.runner.service.d.ts.map +1 -1
@@ -1,4 +1,3 @@
1
- /// <reference types="jasmine" />
2
1
  import type { RulesEngineRunnerService } from '@o3r/rules-engine';
3
2
  /** Jasmine Fixture class for RulesEngineRunnerService */
4
3
  export declare class RulesEngineRunnerServiceFixture implements Readonly<Partial<RulesEngineRunnerService>> {
@@ -1 +1 @@
1
- {"version":3,"file":"rules-engine.runner.service.fixture.jasmine.d.ts","sourceRoot":"","sources":["../../../src/fixtures/jasmine/rules-engine.runner.service.fixture.jasmine.ts"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAElE,yDAAyD;AACzD,qBAAa,+BAAgC,YAAW,QAAQ,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC;IAEjG,kBAAkB;IACX,WAAW,EAAE,OAAO,CAAC,GAAG,CAAoC;IAEnE,kBAAkB;IACX,eAAe,EAAE,OAAO,CAAC,GAAG,CAAwC;IAE3E,kBAAkB;IACX,gBAAgB,EAAE,OAAO,CAAC,GAAG,CAAyC;IAE7E,kBAAkB;IACX,iBAAiB,EAAE,OAAO,CAAC,GAAG,CAA0C;CAChF"}
1
+ {"version":3,"file":"rules-engine.runner.service.fixture.jasmine.d.ts","sourceRoot":"","sources":["../../../src/fixtures/jasmine/rules-engine.runner.service.fixture.jasmine.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAElE,yDAAyD;AACzD,qBAAa,+BAAgC,YAAW,QAAQ,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC;IAEjG,kBAAkB;IACX,WAAW,EAAE,OAAO,CAAC,GAAG,CAAoC;IAEnE,kBAAkB;IACX,eAAe,EAAE,OAAO,CAAC,GAAG,CAAwC;IAE3E,kBAAkB;IACX,gBAAgB,EAAE,OAAO,CAAC,GAAG,CAAyC;IAE7E,kBAAkB;IACX,iBAAiB,EAAE,OAAO,CAAC,GAAG,CAA0C;CAChF"}
@@ -1,4 +1,3 @@
1
- /// <reference types="jest" />
2
1
  import type { Fact, Operator, RulesEngineRunnerService, UnaryOperator } from '@o3r/rules-engine';
3
2
  /** Jest Fixture class for RulesEngineRunnerService */
4
3
  export declare class RulesEngineRunnerServiceFixture implements Readonly<Partial<RulesEngineRunnerService>> {
@@ -1 +1 @@
1
- {"version":3,"file":"rules-engine.runner.service.fixture.jest.d.ts","sourceRoot":"","sources":["../../../src/fixtures/jest/rules-engine.runner.service.fixture.jest.ts"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAAC,IAAI,EAAE,QAAQ,EAAE,wBAAwB,EAAE,aAAa,EAAC,MAAM,mBAAmB,CAAC;AAE/F,sDAAsD;AACtD,qBAAa,+BAAgC,YAAW,QAAQ,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC;IAEjG,kBAAkB;IACX,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAa;IAEnF,kBAAkB;IACX,eAAe,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAa;IAEnG,kBAAkB;IACX,gBAAgB,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,CAAC,CAAa;IAE/D,kBAAkB;IACX,iBAAiB,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,CAAC,CAAa;CACjE"}
1
+ {"version":3,"file":"rules-engine.runner.service.fixture.jest.d.ts","sourceRoot":"","sources":["../../../src/fixtures/jest/rules-engine.runner.service.fixture.jest.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,IAAI,EAAE,QAAQ,EAAE,wBAAwB,EAAE,aAAa,EAAC,MAAM,mBAAmB,CAAC;AAE/F,sDAAsD;AACtD,qBAAa,+BAAgC,YAAW,QAAQ,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC;IAEjG,kBAAkB;IACX,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAa;IAEnF,kBAAkB;IACX,eAAe,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAa;IAEnG,kBAAkB;IACX,gBAAgB,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,CAAC,CAAa;IAE/D,kBAAkB;IACX,iBAAiB,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,CAAC,CAAa;CACjE"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@o3r/rules-engine",
3
- "version": "11.1.0-prerelease.9",
3
+ "version": "11.1.0-rc.1",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
@@ -39,26 +39,26 @@
39
39
  }
40
40
  },
41
41
  "peerDependencies": {
42
- "@angular-devkit/architect": "~0.1800.0",
43
- "@angular-devkit/core": "~18.0.0",
44
- "@angular-devkit/schematics": "~18.0.0",
45
- "@angular/common": "~18.0.0",
46
- "@angular/core": "~18.0.0",
47
- "@angular/platform-browser-dynamic": "~18.0.0",
42
+ "@angular-devkit/architect": "~0.1801.0",
43
+ "@angular-devkit/core": "~18.1.0",
44
+ "@angular-devkit/schematics": "~18.1.0",
45
+ "@angular/common": "~18.1.0",
46
+ "@angular/core": "~18.1.0",
47
+ "@angular/platform-browser-dynamic": "~18.1.0",
48
48
  "@ngrx/effects": "~18.0.0",
49
49
  "@ngrx/entity": "~18.0.0",
50
50
  "@ngrx/store": "~18.0.0",
51
51
  "@ngx-translate/core": "~15.0.0",
52
- "@o3r/core": "^11.1.0-prerelease.9",
53
- "@o3r/extractors": "^11.1.0-prerelease.9",
54
- "@o3r/logger": "^11.1.0-prerelease.9",
55
- "@o3r/schematics": "^11.1.0-prerelease.9",
56
- "@schematics/angular": "~18.0.0",
52
+ "@o3r/core": "^11.1.0-rc.1",
53
+ "@o3r/extractors": "^11.1.0-rc.1",
54
+ "@o3r/logger": "^11.1.0-rc.1",
55
+ "@o3r/schematics": "^11.1.0-rc.1",
56
+ "@schematics/angular": "~18.1.0",
57
57
  "globby": "^11.1.0",
58
58
  "jasmine": "^5.0.0",
59
59
  "jsonpath-plus": "^9.0.0",
60
60
  "rxjs": "^7.8.1",
61
- "typescript": "~5.4.2",
61
+ "typescript": "~5.5.4",
62
62
  "typescript-json-schema": "~0.64.0"
63
63
  },
64
64
  "peerDependenciesMeta": {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../schematics/cms-adapter/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../schematics/facts-service/index.ts"],"names":[],"mappings":";;;;AAAA,2DAA6J;AAC7J,gDAAwG;AAExG,oEAA6E;AAC7E,wDAAkC;AAElC;;;GAGG;AACH,SAAS,wBAAwB,CAAC,OAA+C;IAE/E,MAAM,aAAa,GAAG,GAAG,EAAE;QACzB,MAAM,IAAI,GAAG,IAAA,mBAAS,EAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACrC,MAAM,iBAAiB,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAC9D,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,iBAAiB,EAAE,GAAG,IAAI,mBAAmB,CAAC,CAAC;QACnF,MAAM,kBAAkB,GAAG,GAAG,IAAA,kBAAQ,EAAC,IAAI,CAAC,OAAO,CAAC;QACpD,OAAO,IAAA,kBAAK,EAAC;YACX,IAAA,8BAAiB,EAAC,qBAAqB,EAAE,SAAS,EAAE;gBAClD,OAAO,EAAE,OAAO,CAAC,WAAW;gBAC5B,IAAI,EAAE,iBAAiB;gBACvB,IAAI,EAAE,IAAI;gBACV,IAAI,EAAE,kBAAkB;gBACxB,SAAS,EAAE,IAAI;aAChB,CAAC;YACF,IAAA,sBAAS,EAAC,IAAA,kBAAK,EAAC,IAAA,gBAAG,EAAC,aAAa,CAAC,EAAE;gBAClC,IAAA,qBAAQ,EAAC;oBACP,IAAI;oBACJ,kBAAkB;iBACnB,CAAC;gBACF,IAAA,gCAAmB,GAAE;gBACrB,IAAA,iBAAI,EAAC,iBAAiB,CAAC;aACxB,CAAC,EAAE,0BAAa,CAAC,SAAS,CAAC;YAC5B,IAAA,2BAAc,EAAC,WAAW,EAAE;gBAC1B;oBACE,IAAI,EAAE,mBAAmB;oBACzB,WAAW,EAAE,CAAC,cAAc,EAAE,oBAAoB,CAAC;iBACpD;gBACD;oBACE,IAAI,EAAE,KAAK,IAAI,QAAQ;oBACvB,WAAW,EAAE,CAAC,kBAAkB,CAAC;iBAClC;aACF,CAAC;YACF,CAAC,CAAC,EAAE,EAAE;gBACJ,MAAM,WAAW,GAAG,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;gBAC5C,CAAC,CAAC,SAAS,CACT,WAAW,EACX,WAAW;qBACR,OAAO,CAAC,mBAAmB,EAAE,oBAAoB,CAAC;qBAClD,OAAO,CAAC,WAAW,EAAE,gCAAgC,kBAAkB,KAAK,CAAC,CACjF,CAAC;gBACF,OAAO,CAAC,CAAC;YACX,CAAC;SACF,CAAC,CAAC;IACL,CAAC,CAAC;IAEF,OAAO,IAAA,kBAAK,EAAC;QACX,aAAa;QACb,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,IAAA,iBAAI,GAAE,CAAC,CAAC,CAAC,IAAA,2BAAc,GAAE;KAC/C,CAAC,CAAC;AACL,CAAC;AAED;;;GAGG;AACU,QAAA,sBAAsB,GAAG,IAAA,kDAAqC,EAAC,wBAAwB,CAAC,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../schematics/facts-service/schema.ts"],"names":[],"mappings":""}
@@ -1 +1 @@
1
- {"version":3,"file":"devtools-registration.d.ts","sourceRoot":"","sources":["../../../../schematics/ng-add/helpers/devtools-registration.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,IAAI,EAAE,MAAM,4BAA4B,CAAC;AAEzD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAC;AAOvD;;;;;;GAMG;AACH,eAAO,MAAM,gBAAgB,YAAmB,qBAAqB,KAAG,QAAQ,IAAI,CAgBnF,CAAC"}
1
+ {"version":3,"file":"devtools-registration.d.ts","sourceRoot":"","sources":["../../../../schematics/ng-add/helpers/devtools-registration.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,IAAI,EAAE,MAAM,4BAA4B,CAAC;AAEzD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAC;AAOvD;;;;;;GAMG;AACH,eAAO,MAAM,gBAAgB,YAAmB,qBAAqB,KAAG,OAAO,CAAC,IAAI,CAgBnF,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"devtools-registration.js","sourceRoot":"","sources":["../../../../schematics/ng-add/helpers/devtools-registration.ts"],"names":[],"mappings":";;;;AAAA,2DAAyD;AACzD,wDAAkC;AAGlC,MAAM,mBAAmB,GAAG,2BAA2B,CAAC;AACxD,MAAM,4BAA4B,GAAG,mCAAmC,CAAC;AACzE,MAAM,4BAA4B,GAAG,mCAAmC,CAAC;AACzE,MAAM,YAAY,GAAW,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC;AAErG;;;;;;GAMG;AACI,MAAM,gBAAgB,GAAG,KAAK,EAAE,OAA8B,EAAiB,EAAE;IACtF,MAAM,EAAE,6BAA6B,EAAE,GAAG,gEAAa,iBAAiB,GAAC,CAAC;IAC1E,OAAO,IAAA,kBAAK,EAAC;QACX,6BAA6B,CAAC;YAC5B,UAAU,EAAE,mBAAmB;YAC/B,WAAW,EAAE,YAAY;YACzB,WAAW,EAAE,4BAA4B;YACzC,WAAW,EAAE,OAAO,CAAC,WAAW;SACjC,CAAC;QACF,6BAA6B,CAAC;YAC5B,UAAU,EAAE,mBAAmB;YAC/B,WAAW,EAAE,YAAY;YACzB,WAAW,EAAE,4BAA4B;YACzC,WAAW,EAAE,OAAO,CAAC,WAAW;SACjC,CAAC;KACH,CAAC,CAAC;AACL,CAAC,CAAC;AAhBW,QAAA,gBAAgB,oBAgB3B"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../schematics/ng-add/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,KAAK,IAAI,EAAE,MAAM,4BAA4B,CAAC;AAE9D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,UAAU,CAAC;AA2FtD;;;GAGG;AACH,eAAO,MAAM,KAAK,YAAa,qBAAqB,KAAG,IAGtD,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../schematics/ng-add/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,KAAK,IAAI,EAAE,MAAM,4BAA4B,CAAC;AAO9D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,UAAU,CAAC;AAqHtD;;;GAGG;AACH,eAAO,MAAM,KAAK,YAAa,qBAAqB,KAAG,IAGtD,CAAC"}
@@ -3,10 +3,13 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ngAdd = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  const schematics_1 = require("@angular-devkit/schematics");
6
- const cms_adapter_1 = require("../cms-adapter");
6
+ const utility_1 = require("@schematics/angular/utility");
7
7
  const path = tslib_1.__importStar(require("node:path"));
8
8
  const fs = tslib_1.__importStar(require("node:fs"));
9
+ const ts = tslib_1.__importStar(require("typescript"));
10
+ const cms_adapter_1 = require("../cms-adapter");
9
11
  const devtools_registration_1 = require("./helpers/devtools-registration");
12
+ const ast_utils_1 = require("@schematics/angular/utility/ast-utils");
10
13
  const devDependenciesToInstall = [
11
14
  'jsonpath-plus'
12
15
  ];
@@ -16,6 +19,19 @@ If the error is related to missing @o3r dependencies you need to install '@o3r/c
16
19
  Otherwise, use the error message as guidance.`);
17
20
  throw reason;
18
21
  };
22
+ const updateAppModuleOrAppConfig = (projectName) => async (tree, context) => {
23
+ const { getAppModuleFilePath } = await Promise.resolve().then(() => tslib_1.__importStar(require('@o3r/schematics')));
24
+ const moduleFilePath = getAppModuleFilePath(tree, context, projectName);
25
+ if (!moduleFilePath) {
26
+ return () => tree;
27
+ }
28
+ const sourceFileContent = tree.readText(moduleFilePath);
29
+ const sourceFile = ts.createSourceFile(moduleFilePath, sourceFileContent, ts.ScriptTarget.ES2015, true);
30
+ if ((0, ast_utils_1.isImported)(sourceFile, 'RulesEngineRunnerModule', '@o3r/rules-engine')) {
31
+ return () => tree;
32
+ }
33
+ return (0, utility_1.addRootImport)(projectName, ({ code, external }) => code `\n${external('RulesEngineRunnerModule', '@o3r/rules-engine')}.forRoot()`);
34
+ };
19
35
  /**
20
36
  * Add Otter rules-engine to an Angular Project
21
37
  * @param options
@@ -70,7 +86,8 @@ function ngAddFn(options) {
70
86
  ngAddToRun: depsInfo.o3rPeerDeps
71
87
  }),
72
88
  ...(options.enableMetadataExtract ? [(0, cms_adapter_1.updateCmsAdapter)(options)] : []),
73
- await (0, devtools_registration_1.registerDevtools)(options)
89
+ await (0, devtools_registration_1.registerDevtools)(options),
90
+ updateAppModuleOrAppConfig(options.projectName)
74
91
  ]);
75
92
  context.logger.info(`The package ${depsInfo.packageName} comes with a debug mechanism`);
76
93
  context.logger.info('Get information on https://github.com/AmadeusITGroup/otter/tree/main/docs/rules-engine/how-to-use/debug.md');
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../schematics/ng-add/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../schematics/ng-add/schema.ts"],"names":[],"mappings":""}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.updateV100 = void 0;
3
+ exports.updateV100 = updateV100;
4
4
  const schematics_1 = require("@angular-devkit/schematics");
5
5
  const action_module_split_1 = require("./v10.0/action-module-split");
6
6
  /**
@@ -18,5 +18,4 @@ function updateV100() {
18
18
  return (0, schematics_1.chain)(updateRules)(tree, context);
19
19
  };
20
20
  }
21
- exports.updateV100 = updateV100;
22
21
  //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../schematics/ng-update/index.ts"],"names":[],"mappings":";;AAMA,gCAaC;AAnBD,2DAAyD;AACzD,qEAAsE;AAEtE;;GAEG;AACH,SAAgB,UAAU;IACxB,OAAO,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE;QAEvB,MAAM,WAAW,GAAW;YAC1B,IAAA,6CAAuB,GAAE;YACzB,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE;gBACT,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,sEAAsE,CAAC,CAAC;gBACxF,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,uIAAuI,CAAC,CAAC;YAC3J,CAAC;SACF,CAAC;QAEF,OAAO,IAAA,kBAAK,EAAC,WAAW,CAAC,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC3C,CAAC,CAAC;AACJ,CAAC"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.updateRuleEngineService = void 0;
3
+ exports.updateRuleEngineService = updateRuleEngineService;
4
4
  const schematics_1 = require("@o3r/schematics");
5
5
  /**
6
6
  * Update the Rule Engine service name
@@ -21,5 +21,4 @@ function updateRuleEngineService() {
21
21
  }, undefined, true);
22
22
  /* eslint-enable @typescript-eslint/naming-convention */
23
23
  }
24
- exports.updateRuleEngineService = updateRuleEngineService;
25
24
  //# sourceMappingURL=action-module-split.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"action-module-split.js","sourceRoot":"","sources":["../../../../schematics/ng-update/v10.0/action-module-split.ts"],"names":[],"mappings":";;AAMA,0DAeC;AApBD,gDAAgD;AAEhD;;GAEG;AACH,SAAgB,uBAAuB;IACrC,yDAAyD;IACzD,OAAO,IAAA,0BAAa,EAAC;QACnB,mBAAmB,EAAE;YACnB,kBAAkB,EAAE;gBAClB,UAAU,EAAE,mBAAmB;gBAC/B,QAAQ,EAAE,0BAA0B;aACrC;YACD,iBAAiB,EAAE;gBACjB,UAAU,EAAE,mBAAmB;gBAC/B,QAAQ,EAAE,yBAAyB;aACpC;SACF;KACF,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;IACpB,wDAAwD;AAC1D,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../schematics/operator/index.ts"],"names":[],"mappings":";;;;AAAA,2DAA0I;AAC1I,gDAAwF;AAExF,oEAA6E;AAC7E,wDAAkC;AAElC;;;GAGG;AACH,SAAS,oBAAoB,CAAC,OAA2C;IAEvE,MAAM,aAAa,GAAG,GAAG,EAAE;QACzB,MAAM,IAAI,GAAG,IAAA,mBAAS,EAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACrC,MAAM,kBAAkB,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAC/D,MAAM,YAAY,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAE,CAAC,WAAW,EAAE,GAAG,IAAA,kBAAQ,EAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9E,OAAO,IAAA,sBAAS,EAAC,IAAA,kBAAK,EAAC,IAAA,gBAAG,EAAC,aAAa,CAAC,EAAE;YACzC,IAAA,qBAAQ,EAAC;gBACP,GAAG,OAAO;gBACV,IAAI;gBACJ,YAAY;gBACZ,SAAS,EAAE,OAAO,CAAC,OAAO,KAAK,SAAS,IAAI,OAAO,CAAC,OAAO,KAAK,SAAS;gBACzE,cAAc,EAAE,OAAO,CAAC,OAAO,KAAK,QAAQ,IAAI,OAAO,CAAC,OAAO,KAAK,QAAQ,IAAI,OAAO,CAAC,OAAO,KAAK,MAAM;gBAC1G,cAAc,EAAE,CAAC,OAAO,CAAC,aAAa,IAAI,CAAC,OAAO,CAAC,OAAO,KAAK,QAAQ,IAAI,OAAO,CAAC,OAAO,KAAK,QAAQ,IAAI,OAAO,CAAC,OAAO,KAAK,MAAM,CAAC;aACvI,CAAC;YACF,IAAA,gCAAmB,GAAE;YACrB,IAAA,iBAAI,EAAC,kBAAkB,CAAC;SACzB,CAAC,EAAE,0BAAa,CAAC,SAAS,CAAC,CAAC;IAC/B,CAAC,CAAC;IAEF,OAAO,IAAA,kBAAK,EAAC;QACX,aAAa;QACb,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,IAAA,iBAAI,GAAE,CAAC,CAAC,CAAC,IAAA,2BAAc,GAAE;KAC/C,CAAC,CAAC;AACL,CAAC;AAED;;;GAGG;AACU,QAAA,kBAAkB,GAAG,IAAA,kDAAqC,EAAC,oBAAoB,CAAC,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../schematics/operator/schema.ts"],"names":[],"mappings":""}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../schematics/rules-engine-to-component/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,IAAI,EAA0B,MAAM,4BAA4B,CAAC;AAiBvF,OAAO,EAAE,gDAAgD,EAAE,MAAM,UAAU,CAAC;AAyJ5E;;;GAGG;AACH,eAAO,MAAM,gCAAgC,qEAA4E,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../schematics/rules-engine-to-component/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,IAAI,EAAQ,MAAM,4BAA4B,CAAC;AAmBrE,OAAO,EAAE,gDAAgD,EAAE,MAAM,UAAU,CAAC;AAqL5E;;;GAGG;AACH,eAAO,MAAM,gCAAgC,qEAA4E,CAAC"}
@@ -28,83 +28,102 @@ const checkRulesEngine = (componentPath) => (tree) => {
28
28
  * @param options
29
29
  */
30
30
  function ngGenerateRulesEngineToComponentFn(options) {
31
- const generateFiles = (tree, _context) => {
32
- const componentPath = options.path;
33
- const projectName = options.projectName || (0, schematics_2.getLibraryNameFromPath)(componentPath) || '';
34
- const imports = [
35
- {
36
- from: '@angular/core',
37
- importNames: ['inject', 'OnInit', 'OnDestroy']
38
- },
39
- {
40
- from: '@o3r/core',
41
- importNames: ['computeItemIdentifier']
42
- },
43
- {
44
- from: '@o3r/rules-engine',
45
- importNames: ['RulesEngineRunnerService']
46
- }
47
- ];
48
- let sourceFile = ts.createSourceFile(componentPath, tree.readText(componentPath), ts.ScriptTarget.ES2020, true);
49
- const recorder = tree.beginUpdate(componentPath);
50
- const changes = imports.reduce((acc, { importNames, from }) => acc.concat(importNames.map((importName) => (0, ast_utils_1.insertImport)(sourceFile, componentPath, importName, from))), []);
51
- (0, change_1.applyToUpdateRecorder)(recorder, changes);
52
- tree.commitUpdate(recorder);
53
- sourceFile = ts.createSourceFile(componentPath, tree.readText(componentPath), ts.ScriptTarget.ES2020, true);
54
- const result = ts.transform(sourceFile, [
55
- (ctx) => (rootNode) => {
56
- const { factory } = ctx;
57
- const visit = (node) => {
58
- if (ts.isClassDeclaration(node)) {
59
- const implementsClauses = node.heritageClauses?.find((heritageClause) => heritageClause.token === ts.SyntaxKind.ImplementsKeyword);
60
- const interfaceToImplements = (0, schematics_2.generateImplementsExpressionWithTypeArguments)('OnInit, OnDestroy');
61
- const deduplicateHeritageClauses = (clauses) => clauses.filter((h, i) => !clauses.slice(i + 1).some((h2) => h2.kind === h.kind && h2.expression.escapedText === h.expression.escapedText));
62
- const newImplementsClauses = implementsClauses
63
- ? factory.updateHeritageClause(implementsClauses, deduplicateHeritageClauses([...implementsClauses.types, ...interfaceToImplements]))
64
- : factory.createHeritageClause(ts.SyntaxKind.ImplementsKeyword, [...interfaceToImplements]);
65
- const heritageClauses = Array.from(node.heritageClauses ?? [])
66
- .filter((h) => h.token !== ts.SyntaxKind.ImplementsKeyword)
67
- .concat(newImplementsClauses);
68
- const newModifiers = []
69
- .concat(ts.getDecorators(node) || [])
70
- .concat(ts.getModifiers(node) || []);
71
- const propertiesToAdd = (0, schematics_2.generateClassElementsFromString)(`
72
- private readonly componentName = computeItemIdentifier('${node.name?.escapedText}', '${projectName}');
73
- private readonly rulesEngineService = inject(RulesEngineRunnerService, {optional: true});
74
- `);
75
- const newNgOnInit = (0, schematics_2.getSimpleUpdatedMethod)(node, factory, 'ngOnInit', (0, schematics_2.generateBlockStatementsFromString)(`
76
- if (this.rulesEngineService) {
77
- this.rulesEngineService.enableRuleSetFor(this.componentName);
78
- }
79
- `));
80
- const newNgOnDestroy = (0, schematics_2.getSimpleUpdatedMethod)(node, factory, 'ngOnDestroy', (0, schematics_2.generateBlockStatementsFromString)(`
81
- if (this.rulesEngineService) {
82
- this.rulesEngineService.disableRuleSetFor(this.componentName);
83
- }
84
- `));
85
- const newMembers = node.members
86
- .filter((classElement) => !((0, schematics_2.findMethodByName)('ngOnInit')(classElement) || (0, schematics_2.findMethodByName)('ngOnDestroy')(classElement)))
87
- .concat(propertiesToAdd, newNgOnInit, newNgOnDestroy)
88
- .sort(schematics_2.sortClassElement);
89
- return factory.updateClassDeclaration(node, newModifiers, node.name, node.typeParameters, heritageClauses, newMembers);
90
- }
91
- return ts.visitEachChild(node, visit, ctx);
92
- };
93
- return ts.visitNode(rootNode, visit);
94
- },
95
- schematics_2.fixStringLiterals
96
- ]);
97
- const printer = ts.createPrinter({
98
- removeComments: false,
99
- newLine: ts.NewLineKind.LineFeed
100
- });
101
- tree.overwrite(componentPath, printer.printFile(result.transformed[0]));
102
- return tree;
103
- };
31
+ const componentPath = options.path;
104
32
  return (0, schematics_1.chain)([
105
- checkRulesEngine(options.path),
106
- generateFiles,
107
- options.skipLinter ? (0, schematics_1.noop)() : (0, schematics_2.applyEsLintFix)()
33
+ checkRulesEngine(componentPath),
34
+ (tree) => {
35
+ const { standalone } = (0, schematics_2.getO3rComponentInfoOrThrowIfNotFound)(tree, componentPath);
36
+ const generateFiles = () => {
37
+ const projectName = options.projectName || (0, schematics_2.getLibraryNameFromPath)(componentPath) || '';
38
+ const imports = [
39
+ {
40
+ from: '@angular/core',
41
+ importNames: ['inject', 'OnInit', 'OnDestroy']
42
+ },
43
+ {
44
+ from: '@o3r/core',
45
+ importNames: ['computeItemIdentifier']
46
+ },
47
+ {
48
+ from: '@o3r/rules-engine',
49
+ importNames: ['RulesEngineRunnerService',
50
+ ...(standalone ? ['RulesEngineRunnerModule'] : [])
51
+ ]
52
+ }
53
+ ];
54
+ let sourceFile = ts.createSourceFile(componentPath, tree.readText(componentPath), ts.ScriptTarget.ES2020, true);
55
+ const recorder = tree.beginUpdate(componentPath);
56
+ const changes = imports.reduce((acc, { importNames, from }) => acc.concat(importNames.map((importName) => (0, ast_utils_1.insertImport)(sourceFile, componentPath, importName, from))), []);
57
+ (0, change_1.applyToUpdateRecorder)(recorder, changes);
58
+ tree.commitUpdate(recorder);
59
+ sourceFile = ts.createSourceFile(componentPath, tree.readText(componentPath), ts.ScriptTarget.ES2020, true);
60
+ const result = ts.transform(sourceFile, [
61
+ ...(standalone
62
+ ? [(0, schematics_2.addImportsIntoComponentDecoratorTransformerFactory)(['RulesEngineRunnerModule'])]
63
+ : []),
64
+ (ctx) => (rootNode) => {
65
+ const { factory } = ctx;
66
+ const visit = (node) => {
67
+ if (ts.isClassDeclaration(node)) {
68
+ const implementsClauses = node.heritageClauses?.find((heritageClause) => heritageClause.token === ts.SyntaxKind.ImplementsKeyword);
69
+ const interfaceToImplements = (0, schematics_2.generateImplementsExpressionWithTypeArguments)('OnInit, OnDestroy');
70
+ const deduplicateHeritageClauses = (clauses) => clauses.filter((h, i) => !clauses.slice(i + 1).some((h2) => h2.kind === h.kind && h2.expression.escapedText === h.expression.escapedText));
71
+ const newImplementsClauses = implementsClauses
72
+ ? factory.updateHeritageClause(implementsClauses, deduplicateHeritageClauses([...implementsClauses.types, ...interfaceToImplements]))
73
+ : factory.createHeritageClause(ts.SyntaxKind.ImplementsKeyword, [...interfaceToImplements]);
74
+ const heritageClauses = Array.from(node.heritageClauses ?? [])
75
+ .filter((h) => h.token !== ts.SyntaxKind.ImplementsKeyword)
76
+ .concat(newImplementsClauses);
77
+ const newModifiers = []
78
+ .concat(ts.getDecorators(node) || [])
79
+ .concat(ts.getModifiers(node) || []);
80
+ const propertiesToAdd = (0, schematics_2.generateClassElementsFromString)(`
81
+ private readonly componentName = computeItemIdentifier('${node.name?.escapedText}', '${projectName}');
82
+ private readonly rulesEngineService = inject(RulesEngineRunnerService, {optional: true});
83
+ `);
84
+ const newNgOnInit = (0, schematics_2.getSimpleUpdatedMethod)(node, factory, 'ngOnInit', (0, schematics_2.generateBlockStatementsFromString)(`
85
+ if (this.rulesEngineService) {
86
+ this.rulesEngineService.enableRuleSetFor(this.componentName);
87
+ }
88
+ `));
89
+ const newNgOnDestroy = (0, schematics_2.getSimpleUpdatedMethod)(node, factory, 'ngOnDestroy', (0, schematics_2.generateBlockStatementsFromString)(`
90
+ if (this.rulesEngineService) {
91
+ this.rulesEngineService.disableRuleSetFor(this.componentName);
92
+ }
93
+ `));
94
+ const newMembers = node.members
95
+ .filter((classElement) => !((0, schematics_2.findMethodByName)('ngOnInit')(classElement) || (0, schematics_2.findMethodByName)('ngOnDestroy')(classElement)))
96
+ .concat(propertiesToAdd, newNgOnInit, newNgOnDestroy)
97
+ .sort(schematics_2.sortClassElement);
98
+ return factory.updateClassDeclaration(node, newModifiers, node.name, node.typeParameters, heritageClauses, newMembers);
99
+ }
100
+ return ts.visitEachChild(node, visit, ctx);
101
+ };
102
+ return ts.visitNode(rootNode, visit);
103
+ },
104
+ schematics_2.fixStringLiterals
105
+ ]);
106
+ const printer = ts.createPrinter({
107
+ removeComments: false,
108
+ newLine: ts.NewLineKind.LineFeed
109
+ });
110
+ tree.overwrite(componentPath, printer.printFile(result.transformed[0]));
111
+ return tree;
112
+ };
113
+ const updateModuleRule = () => {
114
+ const moduleFilePath = options.path.replace(/component.ts$/, 'module.ts');
115
+ const moduleSourceFile = ts.createSourceFile(moduleFilePath, tree.readText(moduleFilePath), ts.ScriptTarget.ES2020, true);
116
+ const recorder = tree.beginUpdate(moduleFilePath);
117
+ const changes = (0, ast_utils_1.addImportToModule)(moduleSourceFile, moduleFilePath, 'RulesEngineRunnerModule', '@o3r/rules-engine');
118
+ (0, change_1.applyToUpdateRecorder)(recorder, changes);
119
+ tree.commitUpdate(recorder);
120
+ };
121
+ return (0, schematics_1.chain)([
122
+ standalone ? schematics_1.noop : updateModuleRule,
123
+ generateFiles,
124
+ options.skipLinter ? (0, schematics_1.noop)() : (0, schematics_2.applyEsLintFix)()
125
+ ]);
126
+ }
108
127
  ]);
109
128
  }
110
129
  /**
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../schematics/rules-engine-to-component/index.ts"],"names":[],"mappings":"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"}
@@ -2,8 +2,8 @@ import type { SchematicOptionObject } from '@o3r/schematics';
2
2
  export interface NgGenerateRulesEngineToComponentSchematicsSchema extends SchematicOptionObject {
3
3
  /** Project name */
4
4
  projectName?: string | undefined;
5
- /** Component Folder */
6
- path?: string | undefined;
5
+ /** Path to the component */
6
+ path: string;
7
7
  /** Skip the linter process */
8
8
  skipLinter: boolean;
9
9
  }
@@ -1 +1 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../schematics/rules-engine-to-component/schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAE7D,MAAM,WAAW,gDAAiD,SAAQ,qBAAqB;IAC7F,mBAAmB;IACnB,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAEjC,uBAAuB;IACvB,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAE1B,8BAA8B;IAC9B,UAAU,EAAE,OAAO,CAAC;CACrB"}
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../schematics/rules-engine-to-component/schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAE7D,MAAM,WAAW,gDAAiD,SAAQ,qBAAqB;IAC7F,mBAAmB;IACnB,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAEjC,4BAA4B;IAC5B,IAAI,EAAE,MAAM,CAAC;IAEb,8BAA8B;IAC9B,UAAU,EAAE,OAAO,CAAC;CACrB"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../schematics/rules-engine-to-component/schema.ts"],"names":[],"mappings":""}
@@ -13,7 +13,7 @@
13
13
  },
14
14
  "path": {
15
15
  "type": "string",
16
- "description": "Directory containing the component"
16
+ "description": "Path to the component"
17
17
  },
18
18
  "skipLinter": {
19
19
  "type": "boolean",
@@ -1,7 +1,7 @@
1
1
  import { OnDestroy } from '@angular/core';
2
2
  import { Store } from '@ngrx/store';
3
3
  import { BehaviorSubject, Observable, Subscription } from 'rxjs';
4
- import type { ActionBlock, Fact, Operator, UnaryOperator } from '../../engine/index';
4
+ import type { ActionBlock, Fact, Operator, Ruleset, UnaryOperator } from '../../engine/index';
5
5
  import { RulesEngine } from '../../engine/index';
6
6
  import type { RulesetsStore } from '../../stores';
7
7
  import { RulesEngineServiceOptions } from '../rules-engine.token';
@@ -42,6 +42,11 @@ export declare class RulesEngineRunnerService implements OnDestroy {
42
42
  * @param operators operator list to add / update
43
43
  */
44
44
  upsertOperators(operators: (Operator<any, any> | UnaryOperator<any>)[]): void;
45
+ /**
46
+ * Upsert a list of RuleSets to be run in the engine
47
+ * @param ruleSets
48
+ */
49
+ upsertRulesets(ruleSets: Ruleset[]): void;
45
50
  /** @inheritdoc */
46
51
  ngOnDestroy(): void;
47
52
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"rules-engine.runner.service.d.ts","sourceRoot":"","sources":["../../../src/services/runner/rules-engine.runner.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,SAAS,EAAW,MAAM,eAAe,CAAC;AACtE,OAAO,EAAS,KAAK,EAAC,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAC,eAAe,EAAiB,UAAU,EAAE,YAAY,EAAC,MAAM,MAAM,CAAC;AAE9E,OAAO,KAAK,EAAC,WAAW,EAAE,IAAI,EAAE,QAAQ,EAAW,aAAa,EAAC,MAAM,oBAAoB,CAAC;AAC5F,OAAO,EAA+B,WAAW,EAAC,MAAM,oBAAoB,CAAC;AAC7E,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,cAAc,CAAC;AAEhD,OAAO,EAAuB,yBAAyB,EAAC,MAAM,uBAAuB,CAAC;AACtF,OAAO,EAAC,aAAa,EAAC,MAAM,aAAa,CAAC;AAC1C,OAAO,KAAK,EAAC,wBAAwB,EAAC,MAAM,WAAW,CAAC;;AAExD,qBACa,wBAAyB,YAAW,SAAS;IAuBtD,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,MAAM;IAtBzB,SAAS,CAAC,YAAY,eAAsB;IAE5C,uDAAuD;IACvD,SAAS,CAAC,SAAS,EAAE,UAAU,CAAC,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC;IAEtD,sDAAsD;IACtD,SAAS,CAAC,iBAAiB,EAAE,eAAe,CAAC;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC,CAA2B;IAElG,iDAAiD;IACjD,SAAgB,MAAM,EAAE,WAAW,CAAC;IAEpC,0CAA0C;IACnC,OAAO,EAAE,UAAU,CAAC,WAAW,EAAE,CAAC,CAAC;IAE1C,kDAAkD;IAC3C,OAAO,EAAE,OAAO,CAAC;IAExB,8BAA8B;IAC9B,SAAgB,cAAc,oFAAuC;gBAGlD,KAAK,EAAE,KAAK,CAAC,aAAa,CAAC,EAC3B,MAAM,EAAE,aAAa,EACI,YAAY,CAAC,EAAE,yBAAyB;IA4CpF;;;OAGG;cACa,cAAc,CAAC,OAAO,EAAE,WAAW,EAAE;IA+BrD;;;OAGG;IACI,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,EAAE;IAIzD;;;OAGG;IACI,eAAe,CAAC,SAAS,EAAE,CAAC,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,EAAE;IAI7E,kBAAkB;IACX,WAAW,IAAI,IAAI;IAI1B;;;OAGG;IACI,gBAAgB,CAAC,qBAAqB,EAAE,MAAM;IAMrD;;;OAGG;IACI,iBAAiB,CAAC,qBAAqB,EAAE,MAAM;yCA3I3C,wBAAwB;6CAAxB,wBAAwB;CAkJpC"}
1
+ {"version":3,"file":"rules-engine.runner.service.d.ts","sourceRoot":"","sources":["../../../src/services/runner/rules-engine.runner.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,SAAS,EAAW,MAAM,eAAe,CAAC;AACtE,OAAO,EAAS,KAAK,EAAC,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAC,eAAe,EAAiB,UAAU,EAAE,YAAY,EAAC,MAAM,MAAM,CAAC;AAE9E,OAAO,KAAK,EAAC,WAAW,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAC,MAAM,oBAAoB,CAAC;AAC5F,OAAO,EAA+B,WAAW,EAAC,MAAM,oBAAoB,CAAC;AAC7E,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,cAAc,CAAC;AAOhD,OAAO,EAAuB,yBAAyB,EAAC,MAAM,uBAAuB,CAAC;AACtF,OAAO,EAAC,aAAa,EAAC,MAAM,aAAa,CAAC;AAC1C,OAAO,KAAK,EAAC,wBAAwB,EAAC,MAAM,WAAW,CAAC;;AAExD,qBACa,wBAAyB,YAAW,SAAS;IAuBtD,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,MAAM;IAtBzB,SAAS,CAAC,YAAY,eAAsB;IAE5C,uDAAuD;IACvD,SAAS,CAAC,SAAS,EAAE,UAAU,CAAC,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC;IAEtD,sDAAsD;IACtD,SAAS,CAAC,iBAAiB,EAAE,eAAe,CAAC;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC,CAA2B;IAElG,iDAAiD;IACjD,SAAgB,MAAM,EAAE,WAAW,CAAC;IAEpC,0CAA0C;IACnC,OAAO,EAAE,UAAU,CAAC,WAAW,EAAE,CAAC,CAAC;IAE1C,kDAAkD;IAC3C,OAAO,EAAE,OAAO,CAAC;IAExB,8BAA8B;IAC9B,SAAgB,cAAc,oFAAuC;gBAGlD,KAAK,EAAE,KAAK,CAAC,aAAa,CAAC,EAC3B,MAAM,EAAE,aAAa,EACI,YAAY,CAAC,EAAE,yBAAyB;IA4CpF;;;OAGG;cACa,cAAc,CAAC,OAAO,EAAE,WAAW,EAAE;IA+BrD;;;OAGG;IACI,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,EAAE;IAIzD;;;OAGG;IACI,eAAe,CAAC,SAAS,EAAE,CAAC,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,EAAE;IAI7E;;;OAGG;IACI,cAAc,CAAC,QAAQ,EAAE,OAAO,EAAE;IAIzC,kBAAkB;IACX,WAAW,IAAI,IAAI;IAI1B;;;OAGG;IACI,gBAAgB,CAAC,qBAAqB,EAAE,MAAM;IAMrD;;;OAGG;IACI,iBAAiB,CAAC,qBAAqB,EAAE,MAAM;yCAnJ3C,wBAAwB;6CAAxB,wBAAwB;CA0JpC"}