@o3r/rules-engine 11.7.0-prerelease.41 → 11.7.0-prerelease.43

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.
@@ -0,0 +1,25 @@
1
+ import type { Facts } from '../../../engine';
2
+ import * as i0 from "@angular/core";
3
+ export declare class FactsSnapshotComponent {
4
+ /**
5
+ * Full list of available facts with their current value
6
+ */
7
+ readonly facts: import("@angular/core").InputSignal<{
8
+ factName: string;
9
+ value: Facts;
10
+ }[]>;
11
+ /**
12
+ * Search terms
13
+ */
14
+ readonly search: import("@angular/core").WritableSignal<string>;
15
+ /**
16
+ * Filtered list of facts using search terms
17
+ */
18
+ readonly filteredFacts: import("@angular/core").Signal<{
19
+ factName: string;
20
+ value: Facts;
21
+ }[]>;
22
+ static ɵfac: i0.ɵɵFactoryDeclaration<FactsSnapshotComponent, never>;
23
+ static ɵcmp: i0.ɵɵComponentDeclaration<FactsSnapshotComponent, "o3r-facts-snapshot", never, { "facts": { "alias": "facts"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
24
+ }
25
+ //# sourceMappingURL=facts-snapshot.component.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"facts-snapshot.component.d.ts","sourceRoot":"","sources":["../../../../src/components/rules-engine/facts-snapshot/facts-snapshot.component.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EACV,KAAK,EACN,MAAM,iBAAiB,CAAC;;AAKzB,qBAaa,sBAAsB;IACjC;;OAEG;IACH,SAAgB,KAAK;kBAA8B,MAAM;eAAS,KAAK;SAAQ;IAE/E;;OAEG;IACH,SAAgB,MAAM,iDAAc;IAEpC;;OAEG;IACH,SAAgB,aAAa;kBAVsB,MAAM;eAAS,KAAK;SAwBpE;yCA5BQ,sBAAsB;2CAAtB,sBAAsB;CA6BlC"}
@@ -1,3 +1,4 @@
1
+ export * from './facts-snapshot/facts-snapshot.component';
1
2
  export * from './ruleset-history/ruleset-history-pres.component';
2
3
  export * from './ruleset-history/ruleset-history-pres.module';
3
4
  export * from './shared/index';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/rules-engine/index.ts"],"names":[],"mappings":"AAAA,cAAc,kDAAkD,CAAC;AACjE,cAAc,+CAA+C,CAAC;AAC9D,cAAc,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/rules-engine/index.ts"],"names":[],"mappings":"AAAA,cAAc,2CAA2C,CAAC;AAC1D,cAAc,kDAAkD,CAAC;AACjE,cAAc,+CAA+C,CAAC;AAC9D,cAAc,gBAAgB,CAAC"}
@@ -1,4 +1,4 @@
1
- import type { AllBlock, Facts } from '../../../engine';
1
+ import type { ActionBlock, AllBlock, Facts } from '../../../engine';
2
2
  import * as i0 from "@angular/core";
3
3
  export declare class RuleActionsPresComponent {
4
4
  /**
@@ -14,6 +14,11 @@ export declare class RuleActionsPresComponent {
14
14
  * List of temporary facts that will be modified by the ruleset or the rule.
15
15
  */
16
16
  runtimeOutputs: string[];
17
+ /**
18
+ * Check if a given block is of type ActionBlock
19
+ * @param block
20
+ */
21
+ isActionBlock(block: AllBlock): block is ActionBlock;
17
22
  static ɵfac: i0.ɵɵFactoryDeclaration<RuleActionsPresComponent, never>;
18
23
  static ɵcmp: i0.ɵɵComponentDeclaration<RuleActionsPresComponent, "o3r-rule-actions-pres", never, { "actions": { "alias": "actions"; "required": false; }; "temporaryFacts": { "alias": "temporaryFacts"; "required": false; }; "runtimeOutputs": { "alias": "runtimeOutputs"; "required": false; }; }, {}, never, never, false, never>;
19
24
  }
@@ -1 +1 @@
1
- {"version":3,"file":"rule-actions-pres.component.d.ts","sourceRoot":"","sources":["../../../../src/components/rules-engine/rule-actions/rule-actions-pres.component.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EACV,QAAQ,EACR,KAAK,EACN,MAAM,iBAAiB,CAAC;;AAEzB,qBAOa,wBAAwB;IACnC;;OAEG;IAEI,OAAO,EAAE,QAAQ,EAAE,CAAM;IAEhC;;;OAGG;IAEI,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAM;IAElD;;OAEG;IAEI,cAAc,EAAE,MAAM,EAAE,CAAM;yCAlB1B,wBAAwB;2CAAxB,wBAAwB;CAmBpC"}
1
+ {"version":3,"file":"rule-actions-pres.component.d.ts","sourceRoot":"","sources":["../../../../src/components/rules-engine/rule-actions/rule-actions-pres.component.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EACV,WAAW,EACX,QAAQ,EACR,KAAK,EACN,MAAM,iBAAiB,CAAC;;AAEzB,qBAOa,wBAAwB;IACnC;;OAEG;IAEI,OAAO,EAAE,QAAQ,EAAE,CAAM;IAEhC;;;OAGG;IAEI,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAM;IAElD;;OAEG;IAEI,cAAc,EAAE,MAAM,EAAE,CAAM;IAErC;;;OAGG;IACI,aAAa,CAAC,KAAK,EAAE,QAAQ,GAAG,KAAK,IAAI,WAAW;yCAxBhD,wBAAwB;2CAAxB,wBAAwB;CA2BpC"}
@@ -66,11 +66,11 @@ export declare class EngineDebugger {
66
66
  activeRulesetsChange(ruleSetExecutorMap: Record<string, RulesetExecutor>, restrictiveRuleSets?: string[]): void;
67
67
  /**
68
68
  * Emits an 'AllActions' debug event each time the rules engine outputs the list of actions
69
- * @param actions list of outputed actions
69
+ * @param actions list of outputted actions
70
70
  */
71
71
  allActionsChange(actions: ActionBlock[]): void;
72
72
  /**
73
- * Emits a 'RulesetExecution' debug event at the ouput of a successful ruleset execution
73
+ * Emits a 'RulesetExecution' debug event at the output of a successful ruleset execution
74
74
  * @param ruleset
75
75
  * @param executionCounter
76
76
  * @param rulesetInputFacts
@@ -81,7 +81,7 @@ export declare class EngineDebugger {
81
81
  */
82
82
  addRulesetExecutionEvent(ruleset: Ruleset, executionCounter: number, rulesetInputFacts: string[], allOutputActions: ActionBlock[], runtimeFactValues: Record<string, Facts>, rulesetTriggers: Record<string, Record<string, EvaluationReason>>, rulesExecutions: RuleEvaluation[]): void;
83
83
  /**
84
- * Emits a 'RulesetExecutionError' debug event at the ouput of a failing ruleset execution
84
+ * Emits a 'RulesetExecutionError' debug event at the output of a failing ruleset execution
85
85
  * @param ruleset
86
86
  * @param rulesetInputFacts
87
87
  * @param executionCounter
@@ -90,6 +90,12 @@ export declare class EngineDebugger {
90
90
  * @param rulesExecutions
91
91
  */
92
92
  addRulesetExecutionErrorEvent(ruleset: Ruleset, rulesetInputFacts: string[], executionCounter: number, runtimeFactValues: Record<string, Facts>, rulesetTriggers: Record<string, Record<string, EvaluationReason>>, rulesExecutions: RuleEvaluation[]): void;
93
+ /**
94
+ * Emits a 'AvailableFactsSnapshot' debug event when a fact value is updated
95
+ * @param _id
96
+ * @param factValue$
97
+ */
98
+ addAvailableFactsSnapshotEvent(_id: string, factValue$: Observable<any>): void;
93
99
  /**
94
100
  * Returns a list of fact name and value pairs
95
101
  * @param factsNames List of facts names to get the value for
@@ -1 +1 @@
1
- {"version":3,"file":"engine.debug.d.ts","sourceRoot":"","sources":["../../../src/engine/debug/engine.debug.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EAEX,MAAM,MAAM,CAAC;AASd,OAAO,KAAK,EACV,WAAW,EACZ,MAAM,WAAW,CAAC;AACnB,OAAO,EAEL,UAAU,EACV,gBAAgB,EAChB,cAAc,EACd,oBAAoB,EAGrB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EACV,KAAK,EACN,MAAM,SAAS,CAAC;AACjB,OAAO,EACL,eAAe,EAChB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EACV,WAAW,EACX,OAAO,EACR,MAAM,cAAc,CAAC;AAMtB,MAAM,WAAW,qBAAqB;IACpC;;;OAGG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED;;GAEG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,oBAAoB,CAAC,CAAc;IAE3C,OAAO,CAAC,kBAAkB,CAAsC;IAGhE,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAA0D;IAE9F,OAAO,CAAC,oBAAoB,CAAoC;IAEhE,oEAAoE;IACpE,SAAgB,YAAY,EAAE,UAAU,CAAC,UAAU,CAAC,CAAC;IAErD,yDAAyD;IACzD,IAAW,WAAW,IAAI,WAAW,GAAG,SAAS,CAEhD;IAED;;;OAGG;gBACS,OAAO,CAAC,EAAE,qBAAqB;IA+B3C,OAAO,CAAC,6BAA6B;YAUvB,+BAA+B;YAkB/B,gBAAgB;YAqBhB,qBAAqB;IAsBnC;;;OAGG;IACI,kBAAkB,CAAC,WAAW,EAAE,WAAW;IAIlD;;;;;;;;;OASG;IACI,+BAA+B,CACpC,OAAO,EAAE,oBAAoB,EAAE,EAC/B,OAAO,EAAE,oBAAoB,EAAE,GAAG,SAAS,EAC3C,kBAAkB,EAAE,OAAO,EAC3B,iBAAiB,EAAE,MAAM,EAAE,EAC3B,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,EACxC,gBAAgB,EAAE,MAAM,EACxB,OAAO,EAAE,OAAO;;;;;;IAgBlB;;;OAGG;IACI,oBAAoB,CAAC,QAAQ,EAAE,OAAO,EAAE;IAU/C;;;;OAIG;IACI,oBAAoB,CAAC,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,EAAE,mBAAmB,CAAC,EAAE,MAAM,EAAE;IAc/G;;;OAGG;IACI,gBAAgB,CAAC,OAAO,EAAE,WAAW,EAAE;IAK9C;;;;;;;;;OASG;IACI,wBAAwB,CAAC,OAAO,EAAE,OAAO,EAAE,gBAAgB,EAAE,MAAM,EACxE,iBAAiB,EAAE,MAAM,EAAE,EAAE,gBAAgB,EAAE,WAAW,EAAE,EAAE,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,EACtG,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC,EAAE,eAAe,EAAE,cAAc,EAAE;IAMtG;;;;;;;;OAQG;IACI,6BAA6B,CAClC,OAAO,EAAE,OAAO,EAChB,iBAAiB,EAAE,MAAM,EAAE,EAC3B,gBAAgB,EAAE,MAAM,EACxB,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,EACxC,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC,EACjE,eAAe,EAAE,cAAc,EAAE;IAMnC;;;OAGG;IACU,gBAAgB,CAAC,UAAU,EAAE,MAAM,EAAE;kBACvB,MAAM;eAAS,GAAG;;CAS9C"}
1
+ {"version":3,"file":"engine.debug.d.ts","sourceRoot":"","sources":["../../../src/engine/debug/engine.debug.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EAEX,MAAM,MAAM,CAAC;AASd,OAAO,KAAK,EACV,WAAW,EACZ,MAAM,WAAW,CAAC;AACnB,OAAO,EAEL,UAAU,EACV,gBAAgB,EAChB,cAAc,EACd,oBAAoB,EAGrB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EACV,KAAK,EACN,MAAM,SAAS,CAAC;AACjB,OAAO,EACL,eAAe,EAChB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EACV,WAAW,EACX,OAAO,EACR,MAAM,cAAc,CAAC;AAMtB,MAAM,WAAW,qBAAqB;IACpC;;;OAGG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED;;GAEG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,oBAAoB,CAAC,CAAc;IAE3C,OAAO,CAAC,kBAAkB,CAAsC;IAGhE,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAA0D;IAE9F,OAAO,CAAC,oBAAoB,CAAoC;IAEhE,oEAAoE;IACpE,SAAgB,YAAY,EAAE,UAAU,CAAC,UAAU,CAAC,CAAC;IAErD,yDAAyD;IACzD,IAAW,WAAW,IAAI,WAAW,GAAG,SAAS,CAEhD;IAED;;;OAGG;gBACS,OAAO,CAAC,EAAE,qBAAqB;IA+B3C,OAAO,CAAC,6BAA6B;YAUvB,+BAA+B;YAkB/B,gBAAgB;YAqBhB,qBAAqB;IAsBnC;;;OAGG;IACI,kBAAkB,CAAC,WAAW,EAAE,WAAW;IAIlD;;;;;;;;;OASG;IACI,+BAA+B,CACpC,OAAO,EAAE,oBAAoB,EAAE,EAC/B,OAAO,EAAE,oBAAoB,EAAE,GAAG,SAAS,EAC3C,kBAAkB,EAAE,OAAO,EAC3B,iBAAiB,EAAE,MAAM,EAAE,EAC3B,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,EACxC,gBAAgB,EAAE,MAAM,EACxB,OAAO,EAAE,OAAO;;;;;;IAgBlB;;;OAGG;IACI,oBAAoB,CAAC,QAAQ,EAAE,OAAO,EAAE;IAU/C;;;;OAIG;IACI,oBAAoB,CAAC,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,EAAE,mBAAmB,CAAC,EAAE,MAAM,EAAE;IAc/G;;;OAGG;IACI,gBAAgB,CAAC,OAAO,EAAE,WAAW,EAAE;IAK9C;;;;;;;;;OASG;IACI,wBAAwB,CAAC,OAAO,EAAE,OAAO,EAAE,gBAAgB,EAAE,MAAM,EACxE,iBAAiB,EAAE,MAAM,EAAE,EAAE,gBAAgB,EAAE,WAAW,EAAE,EAAE,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,EACtG,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC,EAAE,eAAe,EAAE,cAAc,EAAE;IAMtG;;;;;;;;OAQG;IACI,6BAA6B,CAClC,OAAO,EAAE,OAAO,EAChB,iBAAiB,EAAE,MAAM,EAAE,EAC3B,gBAAgB,EAAE,MAAM,EACxB,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,EACxC,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC,EACjE,eAAe,EAAE,cAAc,EAAE;IAMnC;;;;OAIG;IACI,8BAA8B,CACnC,GAAG,EAAE,MAAM,EACX,UAAU,EAAE,UAAU,CAAC,GAAG,CAAC;IAa7B;;;OAGG;IACU,gBAAgB,CAAC,UAAU,EAAE,MAAM,EAAE;kBACvB,MAAM;eAAS,GAAG;;CAS9C"}
@@ -1 +1 @@
1
- {"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../../src/engine/engine.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,MAAM,EACP,MAAM,aAAa,CAAC;AACrB,OAAO,EAIL,UAAU,EAEX,MAAM,MAAM,CAAC;AASd,OAAO,EACL,cAAc,EACf,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAEL,kBAAkB,EACnB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EACV,IAAI,EACJ,KAAK,EACN,MAAM,cAAc,CAAC;AAItB,OAAO,EACL,QAAQ,EAER,aAAa,EACd,MAAM,kBAAkB,CAAC;AAI1B,OAAO,EACL,WAAW,EACX,OAAO,EACR,MAAM,aAAa,CAAC;AAErB,mBAAmB;AACnB,qBAAa,WAAW;IACtB,kFAAkF;IAClF,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAuC;IAE/D,4DAA4D;IAC5D,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAA4D;IAE9F,iCAAiC;IAC1B,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;IAE7D,+DAA+D;IAC/D,SAAgB,OAAO,EAAE,UAAU,CAAC,WAAW,EAAE,CAAC,CAAC;IAEnD,gDAAgD;IACzC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAEjC;;OAEG;IACH,SAAgB,WAAW,CAAC,EAAE,cAAc,CAAC;IAE7C,wCAAwC;IACxC,SAAgB,uBAAuB,EAAE,MAAM,CAAC;IAEhD;;;OAGG;IACH,SAAgB,WAAW,oEAAC;IAE5B;;OAEG;IACH,SAAgB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChC;;OAEG;IACH,IAAW,SAAS,IAAI,OAAO,CAE9B;IAED;;;OAGG;gBACS,OAAO,CAAC,EAAE,kBAAkB;IA2BxC;;OAEG;IACH,OAAO,CAAC,yBAAyB;IAIjC;;;OAGG;IACH,OAAO,CAAC,oBAAoB;IAQ5B;;;;;OAKG;IACI,0BAA0B,CAAC,CAAC,GAAG,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,CAAC,GAAG,SAAS,CAAC;IA4B/G;;;;OAIG;IACI,iBAAiB,CAAC,CAAC,GAAG,OAAO,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC,GAAG,SAAS;IAIrF;;;OAGG;IACI,WAAW,CAAC,CAAC,GAAG,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE;IAM1D;;;OAGG;IACI,cAAc,CAAC,QAAQ,EAAE,OAAO,EAAE;IAWzC;;;OAGG;IACI,eAAe,CAAC,SAAS,EAAE,CAAC,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,EAAE;IAO7E;;;OAGG;IACI,cAAc,CAAC,CAAC,SAAS,WAAW,GAAG,WAAW,KAAK,CAAC,YAAY,EAAE,UAAU,CAAC,MAAM,EAAE,GAAG,SAAS,CAAC,KAAK,UAAU,CAAC,CAAC,EAAE,CAAC;IAQjI,6CAA6C;IACtC,uBAAuB;CAG/B"}
1
+ {"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../../src/engine/engine.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,MAAM,EACP,MAAM,aAAa,CAAC;AACrB,OAAO,EAIL,UAAU,EAEX,MAAM,MAAM,CAAC;AASd,OAAO,EACL,cAAc,EACf,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAEL,kBAAkB,EACnB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EACV,IAAI,EACJ,KAAK,EACN,MAAM,cAAc,CAAC;AAItB,OAAO,EACL,QAAQ,EAER,aAAa,EACd,MAAM,kBAAkB,CAAC;AAI1B,OAAO,EACL,WAAW,EACX,OAAO,EACR,MAAM,aAAa,CAAC;AAErB,mBAAmB;AACnB,qBAAa,WAAW;IACtB,kFAAkF;IAClF,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAuC;IAE/D,4DAA4D;IAC5D,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAA4D;IAE9F,iCAAiC;IAC1B,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;IAE7D,+DAA+D;IAC/D,SAAgB,OAAO,EAAE,UAAU,CAAC,WAAW,EAAE,CAAC,CAAC;IAEnD,gDAAgD;IACzC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAEjC;;OAEG;IACH,SAAgB,WAAW,CAAC,EAAE,cAAc,CAAC;IAE7C,wCAAwC;IACxC,SAAgB,uBAAuB,EAAE,MAAM,CAAC;IAEhD;;;OAGG;IACH,SAAgB,WAAW,oEAAC;IAE5B;;OAEG;IACH,SAAgB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChC;;OAEG;IACH,IAAW,SAAS,IAAI,OAAO,CAE9B;IAED;;;OAGG;gBACS,OAAO,CAAC,EAAE,kBAAkB;IA2BxC;;OAEG;IACH,OAAO,CAAC,yBAAyB;IAIjC;;;OAGG;IACH,OAAO,CAAC,oBAAoB;IAQ5B;;;;;OAKG;IACI,0BAA0B,CAAC,CAAC,GAAG,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,CAAC,GAAG,SAAS,CAAC;IA4B/G;;;;OAIG;IACI,iBAAiB,CAAC,CAAC,GAAG,OAAO,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC,GAAG,SAAS;IAIrF;;;OAGG;IACI,WAAW,CAAC,CAAC,GAAG,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE;IAO1D;;;OAGG;IACI,cAAc,CAAC,QAAQ,EAAE,OAAO,EAAE;IAWzC;;;OAGG;IACI,eAAe,CAAC,SAAS,EAAE,CAAC,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,EAAE;IAO7E;;;OAGG;IACI,cAAc,CAAC,CAAC,SAAS,WAAW,GAAG,WAAW,KAAK,CAAC,YAAY,EAAE,UAAU,CAAC,MAAM,EAAE,GAAG,SAAS,CAAC,KAAK,UAAU,CAAC,CAAC,EAAE,CAAC;IAQjI,6CAA6C;IACtC,uBAAuB;CAG/B"}
@@ -30,7 +30,7 @@ export interface RulesEngineOptions {
30
30
  factDefaultDelay?: number;
31
31
  /**
32
32
  * Skip the rule and fact circular dependency checks
33
- * Turn to true to increase the speed of the upsertion of a rule
33
+ * Turn to true to increase the speed of the upsert of a rule
34
34
  */
35
35
  skipCircularDependencyChecks?: boolean;
36
36
  /**
@@ -104,7 +104,7 @@ export interface RuleEvaluation extends TimedEvent {
104
104
  id: string;
105
105
  /** Evaluated rule identifier */
106
106
  rule: Pick<Rule, 'id' | 'name'>;
107
- /** Actions outputed by the rule evaluation */
107
+ /** Actions outputted by the rule evaluation */
108
108
  outputActions: ActionBlock[] | undefined;
109
109
  /** Map containing the facts changes triggering the rule evaluation */
110
110
  triggers: Record<string, Record<string, EvaluationReason>>;
@@ -124,7 +124,7 @@ export interface RuleEvaluationOutput {
124
124
  /** Error object emitted at the end of rule evaluation, if any */
125
125
  error?: any;
126
126
  }
127
- /** Base obeject resulted at the end of a ruleset execution */
127
+ /** Base object resulted at the end of a ruleset execution */
128
128
  export interface BaseRulesetExecution {
129
129
  /** Id of the ruleset execution */
130
130
  executionId: string;
@@ -183,6 +183,16 @@ export interface AvailableRulesets extends TimedEvent {
183
183
  /** Registered rulesets list */
184
184
  availableRulesets: Pick<Ruleset, 'name' | 'id'>[];
185
185
  }
186
- /** Type of possible debug events emited by Rules Engine */
187
- export type DebugEvent = RulesetExecutionEvent | RulesetExecutionErrorEvent | ActiveRulesetsEvent | AllActionsEvent | AvailableRulesets;
186
+ /** Debug event emitted when facts are updated */
187
+ export interface AvailableFactsSnapshot extends TimedEvent {
188
+ /** Event type */
189
+ type: 'AvailableFactsSnapshot';
190
+ /** List of all facts */
191
+ facts: {
192
+ factName: string;
193
+ value: Facts;
194
+ }[];
195
+ }
196
+ /** Type of possible debug events emitted by Rules Engine */
197
+ export type DebugEvent = RulesetExecutionEvent | RulesetExecutionErrorEvent | ActiveRulesetsEvent | AllActionsEvent | AvailableRulesets | AvailableFactsSnapshot;
188
198
  //# sourceMappingURL=engine.interface.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"engine.interface.d.ts","sourceRoot":"","sources":["../../src/engine/engine.interface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EACd,MAAM,EACP,MAAM,WAAW,CAAC;AACnB,OAAO,EACL,eAAe,EACf,UAAU,EACX,MAAM,MAAM,CAAC;AACd,OAAO,KAAK,EACV,cAAc,EACf,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EACV,IAAI,EACJ,KAAK,EACN,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,QAAQ,EACT,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,WAAW,EACX,IAAI,EACJ,OAAO,EACR,MAAM,aAAa,CAAC;AAErB,sFAAsF;AACtF,MAAM,MAAM,wBAAwB,GAAG;IACrC,4BAA4B;IAC5B,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,UAAU,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,KAAK,UAAU,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,CAAC;IACxF,+BAA+B;IAC/B,OAAO,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,qBAAqB,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,KAAK,UAAU,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,GAAG,IAAI,CAAC;CAC/H,CAAC;AAEF,yDAAyD;AACzD,MAAM,WAAW,UAAU,CAAC,CAAC;IAC3B,6BAA6B;IAC7B,OAAO,EAAE,eAAe,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC;IACpD,+BAA+B;IAC/B,MAAM,EAAE,UAAU,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC;CACnC;AAED,sCAAsC;AACtC,MAAM,WAAW,kBAAkB;IACjC,oBAAoB;IACpB,KAAK,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;IAEtB,oBAAoB;IACpB,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC;IAElB,+BAA+B;IAC/B,SAAS,CAAC,EAAE,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC;IAEjC,gDAAgD;IAChD,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B;;;OAGG;IACH,4BAA4B,CAAC,EAAE,OAAO,CAAC;IAEvC;;OAEG;IACH,QAAQ,CAAC,EAAE,cAAc,CAAC;IAE1B;;;OAGG;IACH,WAAW,CAAC,EAAE,wBAAwB,CAAC;IAEvC;;;OAGG;IACH,uBAAuB,CAAC,EAAE,MAAM,CAAC;IAEjC;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,yCAAyC;AACzC,MAAM,WAAW,UAAW,SAAQ,IAAI;IACtC,2CAA2C;IAC3C,OAAO,EAAE,eAAe,CAAC,WAAW,EAAE,CAAC,CAAC;CACzC;AAED,yCAAyC;AACzC,MAAM,WAAW,aAAa;IAC5B,8JAA8J;IAC9J,aAAa,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;QAAC,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;IACjE;;;;OAIG;IACH,gBAAgB,CAAC,EAAE;QAAE,EAAE,EAAE,cAAc,EAAE,CAAA;KAAE,CAAC;IAC5C;;;OAGG;IACH,eAAe,CAAC,EAAE,cAAc,CAAC;IACjC,8BAA8B;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,uDAAuD;IACvD,oBAAoB,EAAE,UAAU,CAAC,WAAW,EAAE,CAAC,CAAC;CACjD;AACD,+CAA+C;AAC/C,MAAM,WAAW,UAAU;IACzB,4CAA4C;IAC5C,SAAS,EAAE,MAAM,CAAC;IAClB,gCAAgC;IAChC,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,6EAA6E;AAC7E,MAAM,WAAW,gBAAgB;IAC/B,oCAAoC;IACpC,QAAQ,EAAE,MAAM,CAAC;IACjB,4BAA4B;IAC5B,QAAQ,CAAC,EAAE,KAAK,CAAC;IACjB,4BAA4B;IAC5B,QAAQ,CAAC,EAAE,KAAK,CAAC;CAClB;AAED,6DAA6D;AAC7D,MAAM,WAAW,cAAe,SAAQ,UAAU;IAChD,8DAA8D;IAC9D,EAAE,EAAE,MAAM,CAAC;IACX,gCAAgC;IAChC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,CAAC,CAAC;IAChC,8CAA8C;IAC9C,aAAa,EAAE,WAAW,EAAE,GAAG,SAAS,CAAC;IACzC,sEAAsE;IACtE,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAC;IAC3D,sDAAsD;IACtD,KAAK,CAAC,EAAE,GAAG,CAAC;IACZ,+DAA+D;IAC/D,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IACvC,iFAAiF;IACjF,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,qCAAqC;AACrC,MAAM,WAAW,oBAAoB;IACnC,oDAAoD;IACpD,OAAO,EAAE,WAAW,EAAE,GAAG,SAAS,CAAC;IACnC,oCAAoC;IACpC,UAAU,CAAC,EAAE,cAAc,CAAC;IAC5B,iEAAiE;IACjE,KAAK,CAAC,EAAE,GAAG,CAAC;CACb;AAED,8DAA8D;AAC9D,MAAM,WAAW,oBAAoB;IACnC,kCAAkC;IAClC,WAAW,EAAE,MAAM,CAAC;IACpB,2CAA2C;IAC3C,SAAS,EAAE,MAAM,CAAC;IAClB,mCAAmC;IACnC,WAAW,EAAE,MAAM,CAAC;IACpB,4CAA4C;IAC5C,gBAAgB,EAAE,MAAM,CAAC;IACzB,4CAA4C;IAC5C,UAAU,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,KAAK,CAAA;KAAE,EAAE,CAAC;IACjD,4CAA4C;IAC5C,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IACvC,gEAAgE;IAChE,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAC;IAC3D,uDAAuD;IACvD,gBAAgB,EAAE,cAAc,EAAE,CAAC;CACpC;AAED,kEAAkE;AAClE,MAAM,WAAW,qBAAsB,SAAQ,oBAAoB,EAAE,UAAU;IAC7E,iBAAiB;IACjB,IAAI,EAAE,kBAAkB,CAAC;IACzB,kEAAkE;IAClE,aAAa,EAAE,WAAW,EAAE,CAAC;CAC9B;AAED,+DAA+D;AAC/D,MAAM,WAAW,0BAA2B,SAAQ,oBAAoB,EAAE,UAAU;IAClF,iBAAiB;IACjB,IAAI,EAAE,uBAAuB,CAAC;IAC9B,+CAA+C;IAC/C,oBAAoB,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC;IAClD,+BAA+B;IAC/B,MAAM,EAAE,GAAG,EAAE,CAAC;CACf;AAED,4DAA4D;AAC5D,MAAM,WAAW,mBAAoB,SAAQ,UAAU;IACrD,iBAAiB;IACjB,IAAI,EAAE,gBAAgB,CAAC;IACvB,8BAA8B;IAC9B,QAAQ,EAAE,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC;CAC1C;AAED,+EAA+E;AAC/E,MAAM,WAAW,eAAgB,SAAQ,UAAU;IACjD,iBAAiB;IACjB,IAAI,EAAE,YAAY,CAAC;IACnB,8BAA8B;IAC9B,OAAO,EAAE,WAAW,EAAE,CAAC;CACxB;AAED,4EAA4E;AAC5E,MAAM,WAAW,iBAAkB,SAAQ,UAAU;IACnD,iBAAiB;IACjB,IAAI,EAAE,mBAAmB,CAAC;IAC1B,+BAA+B;IAC/B,iBAAiB,EAAE,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC;CACnD;AAED,2DAA2D;AAC3D,MAAM,MAAM,UAAU,GAAG,qBAAqB,GAAG,0BAA0B,GAAG,mBAAmB,GAAG,eAAe,GAAG,iBAAiB,CAAC"}
1
+ {"version":3,"file":"engine.interface.d.ts","sourceRoot":"","sources":["../../src/engine/engine.interface.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,45 @@
1
+ import { ChangeDetectionStrategy, Component, computed, input, signal, ViewEncapsulation, } from '@angular/core';
2
+ import { FormsModule, ReactiveFormsModule, } from '@angular/forms';
3
+ import { O3rJsonOrStringPipe, } from '../shared/index';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@angular/forms";
6
+ export class FactsSnapshotComponent {
7
+ constructor() {
8
+ /**
9
+ * Full list of available facts with their current value
10
+ */
11
+ this.facts = input.required();
12
+ /**
13
+ * Search terms
14
+ */
15
+ this.search = signal('');
16
+ /**
17
+ * Filtered list of facts using search terms
18
+ */
19
+ this.filteredFacts = computed(() => {
20
+ const search = this.search();
21
+ const facts = this.facts();
22
+ if (search) {
23
+ const matchString = new RegExp(search.replace(/[\s#$()*+,.?[\\\]^{|}-]/g, '\\$&'), 'i');
24
+ return facts.filter(({ factName, value }) => matchString.test(factName)
25
+ || (typeof value === 'object'
26
+ ? matchString.test(JSON.stringify(value))
27
+ : matchString.test(String(value))));
28
+ }
29
+ else {
30
+ return facts;
31
+ }
32
+ });
33
+ }
34
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FactsSnapshotComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
35
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: FactsSnapshotComponent, isStandalone: true, selector: "o3r-facts-snapshot", inputs: { facts: { classPropertyName: "facts", publicName: "facts", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: "<section>\n @if (facts().length < 1) {\n <div class=\"m-2\">\n No facts are registered.\n </div>\n } @else {\n <div class=\"input-group\">\n <label class=\"input-group-text\" for=\"search-fact\">\n <span class=\"mx-1 fa-search\" aria-label=\"Search\"></span>\n </label>\n <input class=\"form-control\" [(ngModel)]=\"search\" type=\"text\" id=\"search-fact\" placeholder=\"Search for fact name or value\" />\n </div>\n <div class=\"mt-3\">\n List of <b>{{facts().length}}</b> registered facts\n @if (facts().length > filteredFacts().length) { (<b>{{filteredFacts().length}}</b> matching the search) }\n </div>\n <ul>\n @for (fact of filteredFacts(); track fact.factName) {\n <li>\n <span class=\"fact-name\">{{fact.factName}}: </span>\n <span class=\"fact-value\">{{fact.value | o3rJsonOrString}}</span>\n </li>\n }\n </ul>\n }\n</section>\n", styles: ["o3r-facts-snapshot .fact-name{color:#26c}o3r-facts-snapshot .fact-value{color:#c29}o3r-facts-snapshot .fact-name,o3r-facts-snapshot .fact-value{font-family:monospace}\n"], dependencies: [{ kind: "pipe", type: O3rJsonOrStringPipe, name: "o3rJsonOrString" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: ReactiveFormsModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
36
+ }
37
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FactsSnapshotComponent, decorators: [{
38
+ type: Component,
39
+ args: [{ selector: 'o3r-facts-snapshot', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
40
+ O3rJsonOrStringPipe,
41
+ FormsModule,
42
+ ReactiveFormsModule
43
+ ], encapsulation: ViewEncapsulation.None, template: "<section>\n @if (facts().length < 1) {\n <div class=\"m-2\">\n No facts are registered.\n </div>\n } @else {\n <div class=\"input-group\">\n <label class=\"input-group-text\" for=\"search-fact\">\n <span class=\"mx-1 fa-search\" aria-label=\"Search\"></span>\n </label>\n <input class=\"form-control\" [(ngModel)]=\"search\" type=\"text\" id=\"search-fact\" placeholder=\"Search for fact name or value\" />\n </div>\n <div class=\"mt-3\">\n List of <b>{{facts().length}}</b> registered facts\n @if (facts().length > filteredFacts().length) { (<b>{{filteredFacts().length}}</b> matching the search) }\n </div>\n <ul>\n @for (fact of filteredFacts(); track fact.factName) {\n <li>\n <span class=\"fact-name\">{{fact.factName}}: </span>\n <span class=\"fact-value\">{{fact.value | o3rJsonOrString}}</span>\n </li>\n }\n </ul>\n }\n</section>\n", styles: ["o3r-facts-snapshot .fact-name{color:#26c}o3r-facts-snapshot .fact-value{color:#c29}o3r-facts-snapshot .fact-name,o3r-facts-snapshot .fact-value{font-family:monospace}\n"] }]
44
+ }] });
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFjdHMtc25hcHNob3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvcnVsZXMtZW5naW5lL2ZhY3RzLXNuYXBzaG90L2ZhY3RzLXNuYXBzaG90LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL3J1bGVzLWVuZ2luZS9mYWN0cy1zbmFwc2hvdC9mYWN0cy1zbmFwc2hvdC50ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFFBQVEsRUFDUixLQUFLLEVBQ0wsTUFBTSxFQUNOLGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0wsV0FBVyxFQUNYLG1CQUFtQixHQUNwQixNQUFNLGdCQUFnQixDQUFDO0FBSXhCLE9BQU8sRUFDTCxtQkFBbUIsR0FDcEIsTUFBTSxpQkFBaUIsQ0FBQzs7O0FBZXpCLE1BQU0sT0FBTyxzQkFBc0I7SUFibkM7UUFjRTs7V0FFRztRQUNhLFVBQUssR0FBRyxLQUFLLENBQUMsUUFBUSxFQUF3QyxDQUFDO1FBRS9FOztXQUVHO1FBQ2EsV0FBTSxHQUFHLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUVwQzs7V0FFRztRQUNhLGtCQUFhLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRTtZQUM1QyxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDN0IsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQzNCLElBQUksTUFBTSxFQUFFLENBQUM7Z0JBQ1gsTUFBTSxXQUFXLEdBQUcsSUFBSSxNQUFNLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQywwQkFBMEIsRUFBRSxNQUFNLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQztnQkFDeEYsT0FBTyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxDQUMxQyxXQUFXLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQzt1QkFDdkIsQ0FBQyxPQUFPLEtBQUssS0FBSyxRQUFRO3dCQUMzQixDQUFDLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDO3dCQUN6QyxDQUFDLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUNyQyxDQUFDO1lBQ0osQ0FBQztpQkFBTSxDQUFDO2dCQUNOLE9BQU8sS0FBSyxDQUFDO1lBQ2YsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFDO0tBQ0o7a0lBN0JZLHNCQUFzQjtzSEFBdEIsc0JBQXNCLGlOQ2hDbkMsdzZCQTBCQSw2TkRBSSxtQkFBbUIsdURBQ25CLFdBQVcsOG1CQUNYLG1CQUFtQjs7NEZBSVYsc0JBQXNCO2tCQWJsQyxTQUFTOytCQUNFLG9CQUFvQixtQkFHYix1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLElBQUksV0FDUDt3QkFDUCxtQkFBbUI7d0JBQ25CLFdBQVc7d0JBQ1gsbUJBQW1CO3FCQUNwQixpQkFDYyxpQkFBaUIsQ0FBQyxJQUFJIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgY29tcHV0ZWQsXG4gIGlucHV0LFxuICBzaWduYWwsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIEZvcm1zTW9kdWxlLFxuICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxufSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgdHlwZSB7XG4gIEZhY3RzLFxufSBmcm9tICcuLi8uLi8uLi9lbmdpbmUnO1xuaW1wb3J0IHtcbiAgTzNySnNvbk9yU3RyaW5nUGlwZSxcbn0gZnJvbSAnLi4vc2hhcmVkL2luZGV4JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbzNyLWZhY3RzLXNuYXBzaG90JyxcbiAgc3R5bGVVcmxzOiBbJy4vZmFjdHMtc25hcHNob3Quc3R5bGUuc2NzcyddLFxuICB0ZW1wbGF0ZVVybDogJy4vZmFjdHMtc25hcHNob3QudGVtcGxhdGUuaHRtbCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgTzNySnNvbk9yU3RyaW5nUGlwZSxcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlXG4gIF0sXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcbn0pXG5leHBvcnQgY2xhc3MgRmFjdHNTbmFwc2hvdENvbXBvbmVudCB7XG4gIC8qKlxuICAgKiBGdWxsIGxpc3Qgb2YgYXZhaWxhYmxlIGZhY3RzIHdpdGggdGhlaXIgY3VycmVudCB2YWx1ZVxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGZhY3RzID0gaW5wdXQucmVxdWlyZWQ8eyBmYWN0TmFtZTogc3RyaW5nOyB2YWx1ZTogRmFjdHMgfVtdPigpO1xuXG4gIC8qKlxuICAgKiBTZWFyY2ggdGVybXNcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBzZWFyY2ggPSBzaWduYWwoJycpO1xuXG4gIC8qKlxuICAgKiBGaWx0ZXJlZCBsaXN0IG9mIGZhY3RzIHVzaW5nIHNlYXJjaCB0ZXJtc1xuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGZpbHRlcmVkRmFjdHMgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3Qgc2VhcmNoID0gdGhpcy5zZWFyY2goKTtcbiAgICBjb25zdCBmYWN0cyA9IHRoaXMuZmFjdHMoKTtcbiAgICBpZiAoc2VhcmNoKSB7XG4gICAgICBjb25zdCBtYXRjaFN0cmluZyA9IG5ldyBSZWdFeHAoc2VhcmNoLnJlcGxhY2UoL1tcXHMjJCgpKissLj9bXFxcXFxcXV57fH0tXS9nLCAnXFxcXCQmJyksICdpJyk7XG4gICAgICByZXR1cm4gZmFjdHMuZmlsdGVyKCh7IGZhY3ROYW1lLCB2YWx1ZSB9KSA9PlxuICAgICAgICBtYXRjaFN0cmluZy50ZXN0KGZhY3ROYW1lKVxuICAgICAgICB8fCAodHlwZW9mIHZhbHVlID09PSAnb2JqZWN0J1xuICAgICAgICAgID8gbWF0Y2hTdHJpbmcudGVzdChKU09OLnN0cmluZ2lmeSh2YWx1ZSkpXG4gICAgICAgICAgOiBtYXRjaFN0cmluZy50ZXN0KFN0cmluZyh2YWx1ZSkpKVxuICAgICAgKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIGZhY3RzO1xuICAgIH1cbiAgfSk7XG59XG4iLCI8c2VjdGlvbj5cbiAgQGlmIChmYWN0cygpLmxlbmd0aCA8IDEpIHtcbiAgICA8ZGl2IGNsYXNzPVwibS0yXCI+XG4gICAgICBObyBmYWN0cyBhcmUgcmVnaXN0ZXJlZC5cbiAgICA8L2Rpdj5cbiAgfSBAZWxzZSB7XG4gICAgPGRpdiBjbGFzcz1cImlucHV0LWdyb3VwXCI+XG4gICAgICA8bGFiZWwgY2xhc3M9XCJpbnB1dC1ncm91cC10ZXh0XCIgZm9yPVwic2VhcmNoLWZhY3RcIj5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJteC0xIGZhLXNlYXJjaFwiIGFyaWEtbGFiZWw9XCJTZWFyY2hcIj48L3NwYW4+XG4gICAgICA8L2xhYmVsPlxuICAgICAgPGlucHV0IGNsYXNzPVwiZm9ybS1jb250cm9sXCIgWyhuZ01vZGVsKV09XCJzZWFyY2hcIiB0eXBlPVwidGV4dFwiIGlkPVwic2VhcmNoLWZhY3RcIiBwbGFjZWhvbGRlcj1cIlNlYXJjaCBmb3IgZmFjdCBuYW1lIG9yIHZhbHVlXCIgLz5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwibXQtM1wiPlxuICAgICAgTGlzdCBvZiA8Yj57e2ZhY3RzKCkubGVuZ3RofX08L2I+IHJlZ2lzdGVyZWQgZmFjdHNcbiAgICAgIEBpZiAoZmFjdHMoKS5sZW5ndGggPiBmaWx0ZXJlZEZhY3RzKCkubGVuZ3RoKSB7ICg8Yj57e2ZpbHRlcmVkRmFjdHMoKS5sZW5ndGh9fTwvYj4gbWF0Y2hpbmcgdGhlIHNlYXJjaCkgfVxuICAgIDwvZGl2PlxuICAgIDx1bD5cbiAgICBAZm9yIChmYWN0IG9mIGZpbHRlcmVkRmFjdHMoKTsgdHJhY2sgZmFjdC5mYWN0TmFtZSkge1xuICAgICAgPGxpPlxuICAgICAgICA8c3BhbiBjbGFzcz1cImZhY3QtbmFtZVwiPnt7ZmFjdC5mYWN0TmFtZX19OiA8L3NwYW4+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwiZmFjdC12YWx1ZVwiPnt7ZmFjdC52YWx1ZSB8IG8zckpzb25PclN0cmluZ319PC9zcGFuPlxuICAgICAgPC9saT5cbiAgICB9XG4gICAgPC91bD5cbiAgfVxuPC9zZWN0aW9uPlxuIl19
@@ -1,4 +1,5 @@
1
+ export * from './facts-snapshot/facts-snapshot.component';
1
2
  export * from './ruleset-history/ruleset-history-pres.component';
2
3
  export * from './ruleset-history/ruleset-history-pres.module';
3
4
  export * from './shared/index';
4
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9ydWxlcy1lbmdpbmUvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxrREFBa0QsQ0FBQztBQUNqRSxjQUFjLCtDQUErQyxDQUFDO0FBQzlELGNBQWMsZ0JBQWdCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3J1bGVzZXQtaGlzdG9yeS9ydWxlc2V0LWhpc3RvcnktcHJlcy5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9ydWxlc2V0LWhpc3RvcnkvcnVsZXNldC1oaXN0b3J5LXByZXMubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2luZGV4JztcbiJdfQ==
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9ydWxlcy1lbmdpbmUvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYywyQ0FBMkMsQ0FBQztBQUMxRCxjQUFjLGtEQUFrRCxDQUFDO0FBQ2pFLGNBQWMsK0NBQStDLENBQUM7QUFDOUQsY0FBYyxnQkFBZ0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZmFjdHMtc25hcHNob3QvZmFjdHMtc25hcHNob3QuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vcnVsZXNldC1oaXN0b3J5L3J1bGVzZXQtaGlzdG9yeS1wcmVzLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3J1bGVzZXQtaGlzdG9yeS9ydWxlc2V0LWhpc3RvcnktcHJlcy5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvaW5kZXgnO1xuIl19
@@ -1,8 +1,8 @@
1
1
  import { ChangeDetectionStrategy, Component, Input, ViewEncapsulation, } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
- import * as i1 from "@angular/common";
4
- import * as i2 from "../rule-key-value/rule-key-value-pres.component";
5
- import * as i3 from "../shared/fallback-to.pipe";
3
+ import * as i1 from "../rule-key-value/rule-key-value-pres.component";
4
+ import * as i2 from "../shared/fallback-to.pipe";
5
+ import * as i3 from "@angular/common";
6
6
  export class RuleActionsPresComponent {
7
7
  constructor() {
8
8
  /**
@@ -19,12 +19,19 @@ export class RuleActionsPresComponent {
19
19
  */
20
20
  this.runtimeOutputs = [];
21
21
  }
22
+ /**
23
+ * Check if a given block is of type ActionBlock
24
+ * @param block
25
+ */
26
+ isActionBlock(block) {
27
+ return !!block.actionType;
28
+ }
22
29
  /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: RuleActionsPresComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
23
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: RuleActionsPresComponent, selector: "o3r-rule-actions-pres", inputs: { actions: "actions", temporaryFacts: "temporaryFacts", runtimeOutputs: "runtimeOutputs" }, ngImport: i0, template: "<div class=\"ruleset-panel-category-title\">Output Actions</div>\n<div *ngIf=\"actions.length === 0 && runtimeOutputs.length === 0\" class=\"ruleset-panel-category-body empty\">\n No action\n</div>\n<ul class=\"ruleset-panel-category-body\">\n <li *ngFor=\"let action of actions\">\n <ng-container *ngIf=\"action.actionType\">\n <ng-container [ngSwitch]=\"action.actionType\">\n <div *ngSwitchCase=\"'SET_FACT'\">\n <div>Set Fact</div>\n <div>\n <o3r-rule-key-value-pres\n [key]=\"action.fact | o3rFallbackTo: 'Missing \\'fact\\''\"\n [value]=\"action.value | o3rFallbackTo\"\n [type]=\"'assignment'\"></o3r-rule-key-value-pres>\n </div>\n </div>\n <div *ngSwitchCase=\"'UPDATE_CONFIG'\">\n <div>Update Config {{action.component}} {{action.library}}</div>\n <div>\n <o3r-rule-key-value-pres\n [key]=\"action.property | o3rFallbackTo: 'Missing \\'property\\''\"\n [value]=\"action.value | o3rFallbackTo\"\n [type]=\"'assignment'\"></o3r-rule-key-value-pres>\n </div>\n </div>\n <div *ngSwitchCase=\"'UPDATE_ASSET'\">\n <div>Update Asset:</div>\n <div>\n <o3r-rule-key-value-pres\n [oldValue]=\"action.asset | o3rFallbackTo: 'Missing \\'asset\\''\"\n [value]=\"action.value | o3rFallbackTo\"\n [type]=\"'state'\"></o3r-rule-key-value-pres>\n </div>\n </div>\n <div *ngSwitchCase=\"'UPDATE_LOCALISATION'\">\n <div>Update localization:</div>\n <div>\n <o3r-rule-key-value-pres\n [oldValue]=\"action.key | o3rFallbackTo: 'Missing \\'key\\''\"\n [value]=\"action.value | o3rFallbackTo\"\n [type]=\"'state'\"></o3r-rule-key-value-pres>\n </div>\n </div>\n <div\n *ngSwitchCase=\"'UPDATE_PLACEHOLDER'\"\n [class.error]=\"!action.placeholderId\">\n <div>Update placeholder in {{action.component}} {{action.library}}</div>\n <div>\n <o3r-rule-key-value-pres\n [oldValue]=\"action.placeholderId | o3rFallbackTo: 'Missing \\'placeholderId\\''\"\n [value]=\"action.value\"\n [type]=\"'state'\"></o3r-rule-key-value-pres>\n </div>\n </div>\n <div *ngSwitchDefault class=\"error\">\n <div>Unrecognized action</div>\n <div>{{action | json}}</div>\n </div>\n </ng-container>\n </ng-container>\n </li>\n <li *ngFor=\"let runtimeOutput of runtimeOutputs\">\n <div>Set temporary fact</div>\n <div>\n <o3r-rule-key-value-pres\n [key]=\"runtimeOutput | o3rFallbackTo: 'Missing \\'fact\\''\"\n [value]=\"temporaryFacts[runtimeOutput] | o3rFallbackTo\"\n [type]=\"'assignment'\"></o3r-rule-key-value-pres>\n </div>\n </li>\n</ul>\n", styles: ["o3r-rule-actions-pres .ruleset-panel-title,o3r-rule-actions-pres .ruleset-panel-category-title{display:flex;justify-content:space-between;align-items:center}o3r-rule-actions-pres .ruleset-panel-title{font-size:1rem;padding:.5rem 0 .1rem}o3r-rule-actions-pres .ruleset-expansion-action,o3r-rule-actions-pres .icon-caret-down,o3r-rule-actions-pres .icon-caret-up{cursor:pointer}o3r-rule-actions-pres .ruleset-panel-subtitle{font-size:.75rem}o3r-rule-actions-pres .ruleset-panel-title-aside{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;min-width:fit-content}o3r-rule-actions-pres .ruleset-panel-category-title{font-size:.95rem;background:#eee;padding:.5rem;margin-bottom:.5rem;margin-top:1rem}o3r-rule-actions-pres .rule-description .ruleset-panel-category-title{font-size:.893rem;cursor:default}o3r-rule-actions-pres .rule-description .ruleset-panel-title{font-size:.94rem}o3r-rule-actions-pres .rule-description .ruleset-panel-category-body{padding-bottom:.5rem;padding-left:1.5rem}o3r-rule-actions-pres .rule-description .ruleset-panel-category-body:empty{margin:0;padding:0 0 0 1.5rem}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i1.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "component", type: i2.RuleKeyValuePresComponent, selector: "o3r-rule-key-value-pres", inputs: ["key", "value", "oldValue", "type"] }, { kind: "pipe", type: i3.O3rFallbackToPipe, name: "o3rFallbackTo" }, { kind: "pipe", type: i1.JsonPipe, name: "json" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
30
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: RuleActionsPresComponent, selector: "o3r-rule-actions-pres", inputs: { actions: "actions", temporaryFacts: "temporaryFacts", runtimeOutputs: "runtimeOutputs" }, ngImport: i0, template: "<div class=\"ruleset-panel-category-title\">Output Actions</div>\n@if (actions?.length === 0 && runtimeOutputs.length === 0) {\n <div class=\"ruleset-panel-category-body empty\">\n No action\n </div>\n} @else {\n <ul class=\"ruleset-panel-category-body\">\n @for (action of actions; track $index) {\n <li>\n @if (isActionBlock(action)) {\n @switch (action.actionType) {\n @case ('SET_FACT') {\n <div>\n <div>Set Fact</div>\n <div>\n <o3r-rule-key-value-pres\n [key]=\"action.fact | o3rFallbackTo: 'Missing \\'fact\\''\"\n [value]=\"action.value | o3rFallbackTo\"\n [type]=\"'assignment'\"></o3r-rule-key-value-pres>\n </div>\n </div>\n }\n @case ('UPDATE_CONFIG') {\n <div>\n <div>Update Config {{action.component}} {{action.library}}</div>\n <div>\n <o3r-rule-key-value-pres\n [key]=\"action.property | o3rFallbackTo: 'Missing \\'property\\''\"\n [value]=\"action.value | o3rFallbackTo\"\n [type]=\"'assignment'\"></o3r-rule-key-value-pres>\n </div>\n </div>\n }\n @case ('UPDATE_ASSET') {\n <div>\n <div>Update Asset:</div>\n <div>\n <o3r-rule-key-value-pres\n [oldValue]=\"action.asset | o3rFallbackTo: 'Missing \\'asset\\''\"\n [value]=\"action.value | o3rFallbackTo\"\n [type]=\"'state'\"></o3r-rule-key-value-pres>\n </div>\n </div>\n }\n @case ('UPDATE_LOCALISATION') {\n <div>\n <div>Update localization:</div>\n <div>\n <o3r-rule-key-value-pres\n [oldValue]=\"action.key | o3rFallbackTo: 'Missing \\'key\\''\"\n [value]=\"action.value | o3rFallbackTo\"\n [type]=\"'state'\"></o3r-rule-key-value-pres>\n </div>\n </div>\n }\n @case ('UPDATE_PLACEHOLDER') {\n <div [class.error]=\"!action.placeholderId\">\n <div>Update placeholder in {{action.component}} {{action.library}}</div>\n <div>\n <o3r-rule-key-value-pres\n [oldValue]=\"action.placeholderId | o3rFallbackTo: 'Missing \\'placeholderId\\''\"\n [value]=\"action.value\"\n [type]=\"'state'\"></o3r-rule-key-value-pres>\n </div>\n </div>\n }\n @default {\n <div class=\"error\">\n <div>Unrecognized action</div>\n <div>{{action | json}}</div>\n </div>\n }\n }\n }\n </li>\n }\n @for (runtimeOutput of runtimeOutputs; track $index) {\n <li>\n <div>Set temporary fact</div>\n <div>\n <o3r-rule-key-value-pres\n [key]=\"runtimeOutput | o3rFallbackTo: 'Missing \\'fact\\''\"\n [value]=\"temporaryFacts[runtimeOutput] | o3rFallbackTo\"\n [type]=\"'assignment'\"></o3r-rule-key-value-pres>\n </div>\n </li>\n }\n </ul>\n}\n", styles: ["o3r-rule-actions-pres .ruleset-panel-title,o3r-rule-actions-pres .ruleset-panel-category-title{display:flex;justify-content:space-between;align-items:center}o3r-rule-actions-pres .ruleset-panel-title{font-size:1rem;padding:.5rem 0 .1rem}o3r-rule-actions-pres .ruleset-expansion-action,o3r-rule-actions-pres .icon-caret-down,o3r-rule-actions-pres .icon-caret-up{cursor:pointer}o3r-rule-actions-pres .ruleset-panel-subtitle{font-size:.75rem}o3r-rule-actions-pres .ruleset-panel-title-aside{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;min-width:fit-content}o3r-rule-actions-pres .ruleset-panel-category-title{font-size:.95rem;background:#eee;padding:.5rem;margin-bottom:.5rem;margin-top:1rem}o3r-rule-actions-pres .rule-description .ruleset-panel-category-title{font-size:.893rem;cursor:default}o3r-rule-actions-pres .rule-description .ruleset-panel-title{font-size:.94rem}o3r-rule-actions-pres .rule-description .ruleset-panel-category-body{padding-bottom:.5rem;padding-left:1.5rem}o3r-rule-actions-pres .rule-description .ruleset-panel-category-body:empty{margin:0;padding:0 0 0 1.5rem}\n"], dependencies: [{ kind: "component", type: i1.RuleKeyValuePresComponent, selector: "o3r-rule-key-value-pres", inputs: ["key", "value", "oldValue", "type"] }, { kind: "pipe", type: i2.O3rFallbackToPipe, name: "o3rFallbackTo" }, { kind: "pipe", type: i3.JsonPipe, name: "json" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
24
31
  }
25
32
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: RuleActionsPresComponent, decorators: [{
26
33
  type: Component,
27
- args: [{ selector: 'o3r-rule-actions-pres', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<div class=\"ruleset-panel-category-title\">Output Actions</div>\n<div *ngIf=\"actions.length === 0 && runtimeOutputs.length === 0\" class=\"ruleset-panel-category-body empty\">\n No action\n</div>\n<ul class=\"ruleset-panel-category-body\">\n <li *ngFor=\"let action of actions\">\n <ng-container *ngIf=\"action.actionType\">\n <ng-container [ngSwitch]=\"action.actionType\">\n <div *ngSwitchCase=\"'SET_FACT'\">\n <div>Set Fact</div>\n <div>\n <o3r-rule-key-value-pres\n [key]=\"action.fact | o3rFallbackTo: 'Missing \\'fact\\''\"\n [value]=\"action.value | o3rFallbackTo\"\n [type]=\"'assignment'\"></o3r-rule-key-value-pres>\n </div>\n </div>\n <div *ngSwitchCase=\"'UPDATE_CONFIG'\">\n <div>Update Config {{action.component}} {{action.library}}</div>\n <div>\n <o3r-rule-key-value-pres\n [key]=\"action.property | o3rFallbackTo: 'Missing \\'property\\''\"\n [value]=\"action.value | o3rFallbackTo\"\n [type]=\"'assignment'\"></o3r-rule-key-value-pres>\n </div>\n </div>\n <div *ngSwitchCase=\"'UPDATE_ASSET'\">\n <div>Update Asset:</div>\n <div>\n <o3r-rule-key-value-pres\n [oldValue]=\"action.asset | o3rFallbackTo: 'Missing \\'asset\\''\"\n [value]=\"action.value | o3rFallbackTo\"\n [type]=\"'state'\"></o3r-rule-key-value-pres>\n </div>\n </div>\n <div *ngSwitchCase=\"'UPDATE_LOCALISATION'\">\n <div>Update localization:</div>\n <div>\n <o3r-rule-key-value-pres\n [oldValue]=\"action.key | o3rFallbackTo: 'Missing \\'key\\''\"\n [value]=\"action.value | o3rFallbackTo\"\n [type]=\"'state'\"></o3r-rule-key-value-pres>\n </div>\n </div>\n <div\n *ngSwitchCase=\"'UPDATE_PLACEHOLDER'\"\n [class.error]=\"!action.placeholderId\">\n <div>Update placeholder in {{action.component}} {{action.library}}</div>\n <div>\n <o3r-rule-key-value-pres\n [oldValue]=\"action.placeholderId | o3rFallbackTo: 'Missing \\'placeholderId\\''\"\n [value]=\"action.value\"\n [type]=\"'state'\"></o3r-rule-key-value-pres>\n </div>\n </div>\n <div *ngSwitchDefault class=\"error\">\n <div>Unrecognized action</div>\n <div>{{action | json}}</div>\n </div>\n </ng-container>\n </ng-container>\n </li>\n <li *ngFor=\"let runtimeOutput of runtimeOutputs\">\n <div>Set temporary fact</div>\n <div>\n <o3r-rule-key-value-pres\n [key]=\"runtimeOutput | o3rFallbackTo: 'Missing \\'fact\\''\"\n [value]=\"temporaryFacts[runtimeOutput] | o3rFallbackTo\"\n [type]=\"'assignment'\"></o3r-rule-key-value-pres>\n </div>\n </li>\n</ul>\n", styles: ["o3r-rule-actions-pres .ruleset-panel-title,o3r-rule-actions-pres .ruleset-panel-category-title{display:flex;justify-content:space-between;align-items:center}o3r-rule-actions-pres .ruleset-panel-title{font-size:1rem;padding:.5rem 0 .1rem}o3r-rule-actions-pres .ruleset-expansion-action,o3r-rule-actions-pres .icon-caret-down,o3r-rule-actions-pres .icon-caret-up{cursor:pointer}o3r-rule-actions-pres .ruleset-panel-subtitle{font-size:.75rem}o3r-rule-actions-pres .ruleset-panel-title-aside{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;min-width:fit-content}o3r-rule-actions-pres .ruleset-panel-category-title{font-size:.95rem;background:#eee;padding:.5rem;margin-bottom:.5rem;margin-top:1rem}o3r-rule-actions-pres .rule-description .ruleset-panel-category-title{font-size:.893rem;cursor:default}o3r-rule-actions-pres .rule-description .ruleset-panel-title{font-size:.94rem}o3r-rule-actions-pres .rule-description .ruleset-panel-category-body{padding-bottom:.5rem;padding-left:1.5rem}o3r-rule-actions-pres .rule-description .ruleset-panel-category-body:empty{margin:0;padding:0 0 0 1.5rem}\n"] }]
34
+ args: [{ selector: 'o3r-rule-actions-pres', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<div class=\"ruleset-panel-category-title\">Output Actions</div>\n@if (actions?.length === 0 && runtimeOutputs.length === 0) {\n <div class=\"ruleset-panel-category-body empty\">\n No action\n </div>\n} @else {\n <ul class=\"ruleset-panel-category-body\">\n @for (action of actions; track $index) {\n <li>\n @if (isActionBlock(action)) {\n @switch (action.actionType) {\n @case ('SET_FACT') {\n <div>\n <div>Set Fact</div>\n <div>\n <o3r-rule-key-value-pres\n [key]=\"action.fact | o3rFallbackTo: 'Missing \\'fact\\''\"\n [value]=\"action.value | o3rFallbackTo\"\n [type]=\"'assignment'\"></o3r-rule-key-value-pres>\n </div>\n </div>\n }\n @case ('UPDATE_CONFIG') {\n <div>\n <div>Update Config {{action.component}} {{action.library}}</div>\n <div>\n <o3r-rule-key-value-pres\n [key]=\"action.property | o3rFallbackTo: 'Missing \\'property\\''\"\n [value]=\"action.value | o3rFallbackTo\"\n [type]=\"'assignment'\"></o3r-rule-key-value-pres>\n </div>\n </div>\n }\n @case ('UPDATE_ASSET') {\n <div>\n <div>Update Asset:</div>\n <div>\n <o3r-rule-key-value-pres\n [oldValue]=\"action.asset | o3rFallbackTo: 'Missing \\'asset\\''\"\n [value]=\"action.value | o3rFallbackTo\"\n [type]=\"'state'\"></o3r-rule-key-value-pres>\n </div>\n </div>\n }\n @case ('UPDATE_LOCALISATION') {\n <div>\n <div>Update localization:</div>\n <div>\n <o3r-rule-key-value-pres\n [oldValue]=\"action.key | o3rFallbackTo: 'Missing \\'key\\''\"\n [value]=\"action.value | o3rFallbackTo\"\n [type]=\"'state'\"></o3r-rule-key-value-pres>\n </div>\n </div>\n }\n @case ('UPDATE_PLACEHOLDER') {\n <div [class.error]=\"!action.placeholderId\">\n <div>Update placeholder in {{action.component}} {{action.library}}</div>\n <div>\n <o3r-rule-key-value-pres\n [oldValue]=\"action.placeholderId | o3rFallbackTo: 'Missing \\'placeholderId\\''\"\n [value]=\"action.value\"\n [type]=\"'state'\"></o3r-rule-key-value-pres>\n </div>\n </div>\n }\n @default {\n <div class=\"error\">\n <div>Unrecognized action</div>\n <div>{{action | json}}</div>\n </div>\n }\n }\n }\n </li>\n }\n @for (runtimeOutput of runtimeOutputs; track $index) {\n <li>\n <div>Set temporary fact</div>\n <div>\n <o3r-rule-key-value-pres\n [key]=\"runtimeOutput | o3rFallbackTo: 'Missing \\'fact\\''\"\n [value]=\"temporaryFacts[runtimeOutput] | o3rFallbackTo\"\n [type]=\"'assignment'\"></o3r-rule-key-value-pres>\n </div>\n </li>\n }\n </ul>\n}\n", styles: ["o3r-rule-actions-pres .ruleset-panel-title,o3r-rule-actions-pres .ruleset-panel-category-title{display:flex;justify-content:space-between;align-items:center}o3r-rule-actions-pres .ruleset-panel-title{font-size:1rem;padding:.5rem 0 .1rem}o3r-rule-actions-pres .ruleset-expansion-action,o3r-rule-actions-pres .icon-caret-down,o3r-rule-actions-pres .icon-caret-up{cursor:pointer}o3r-rule-actions-pres .ruleset-panel-subtitle{font-size:.75rem}o3r-rule-actions-pres .ruleset-panel-title-aside{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;min-width:fit-content}o3r-rule-actions-pres .ruleset-panel-category-title{font-size:.95rem;background:#eee;padding:.5rem;margin-bottom:.5rem;margin-top:1rem}o3r-rule-actions-pres .rule-description .ruleset-panel-category-title{font-size:.893rem;cursor:default}o3r-rule-actions-pres .rule-description .ruleset-panel-title{font-size:.94rem}o3r-rule-actions-pres .rule-description .ruleset-panel-category-body{padding-bottom:.5rem;padding-left:1.5rem}o3r-rule-actions-pres .rule-description .ruleset-panel-category-body:empty{margin:0;padding:0 0 0 1.5rem}\n"] }]
28
35
  }], propDecorators: { actions: [{
29
36
  type: Input
30
37
  }], temporaryFacts: [{
@@ -32,4 +39,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
32
39
  }], runtimeOutputs: [{
33
40
  type: Input
34
41
  }] } });
35
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnVsZS1hY3Rpb25zLXByZXMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvcnVsZXMtZW5naW5lL3J1bGUtYWN0aW9ucy9ydWxlLWFjdGlvbnMtcHJlcy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9ydWxlcy1lbmdpbmUvcnVsZS1hY3Rpb25zL3J1bGUtYWN0aW9ucy1wcmVzLnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsS0FBSyxFQUNMLGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQzs7Ozs7QUFhdkIsTUFBTSxPQUFPLHdCQUF3QjtJQVByQztRQVFFOztXQUVHO1FBRUksWUFBTyxHQUFlLEVBQUUsQ0FBQztRQUVoQzs7O1dBR0c7UUFFSSxtQkFBYyxHQUEwQixFQUFFLENBQUM7UUFFbEQ7O1dBRUc7UUFFSSxtQkFBYyxHQUFhLEVBQUUsQ0FBQztLQUN0QztrSUFuQlksd0JBQXdCO3NIQUF4Qix3QkFBd0IsaUtDbEJyQywwNUZBd0VBOzs0RkR0RGEsd0JBQXdCO2tCQVBwQyxTQUFTOytCQUNFLHVCQUF1QixtQkFHaEIsdUJBQXVCLENBQUMsTUFBTSxpQkFDaEMsaUJBQWlCLENBQUMsSUFBSTs4QkFPOUIsT0FBTztzQkFEYixLQUFLO2dCQVFDLGNBQWM7c0JBRHBCLEtBQUs7Z0JBT0MsY0FBYztzQkFEcEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIElucHV0LFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgdHlwZSB7XG4gIEFsbEJsb2NrLFxuICBGYWN0cyxcbn0gZnJvbSAnLi4vLi4vLi4vZW5naW5lJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbzNyLXJ1bGUtYWN0aW9ucy1wcmVzJyxcbiAgc3R5bGVVcmxzOiBbJy4vcnVsZS1hY3Rpb25zLXByZXMuc3R5bGUuc2NzcyddLFxuICB0ZW1wbGF0ZVVybDogJy4vcnVsZS1hY3Rpb25zLXByZXMudGVtcGxhdGUuaHRtbCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXG59KVxuZXhwb3J0IGNsYXNzIFJ1bGVBY3Rpb25zUHJlc0NvbXBvbmVudCB7XG4gIC8qKlxuICAgKiBMaXN0IG9mIGFsbCB0aGUgb3V0cHV0IGFjdGlvbnMgb2YgYSBydWxlcyBvciBydWxlc2V0IGV4ZWN1dGlvblxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIGFjdGlvbnM6IEFsbEJsb2NrW10gPSBbXTtcblxuICAvKipcbiAgICogVGhlIGxpc3Qgb2YgdGVtcG9yYXJ5IGZhY3RzIHVzZWQgYW5kL29yIG1vZGlmaWVkIHdpdGhpbiB0aGUgcnVsZSBvciB0aGUgcnVsZXNldC5cbiAgICogVGhleSBhcmUgc2NvcGVkIHRvIHRoZSBydWxlc2V0IGFuZCB0aGVpciB2YWx1ZSBpcyB0aGUgb25lIGFmdGVyIHRoZSBydWxlIG9yIHJ1bGVzZXQgZXhlY3V0aW9uLlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHRlbXBvcmFyeUZhY3RzOiBSZWNvcmQ8c3RyaW5nLCBGYWN0cz4gPSB7fTtcblxuICAvKipcbiAgICogTGlzdCBvZiB0ZW1wb3JhcnkgZmFjdHMgdGhhdCB3aWxsIGJlIG1vZGlmaWVkIGJ5IHRoZSBydWxlc2V0IG9yIHRoZSBydWxlLlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHJ1bnRpbWVPdXRwdXRzOiBzdHJpbmdbXSA9IFtdO1xufVxuIiwiPGRpdiBjbGFzcz1cInJ1bGVzZXQtcGFuZWwtY2F0ZWdvcnktdGl0bGVcIj5PdXRwdXQgQWN0aW9uczwvZGl2PlxuPGRpdiAqbmdJZj1cImFjdGlvbnMubGVuZ3RoID09PSAwICYmIHJ1bnRpbWVPdXRwdXRzLmxlbmd0aCA9PT0gMFwiIGNsYXNzPVwicnVsZXNldC1wYW5lbC1jYXRlZ29yeS1ib2R5IGVtcHR5XCI+XG4gIE5vIGFjdGlvblxuPC9kaXY+XG48dWwgY2xhc3M9XCJydWxlc2V0LXBhbmVsLWNhdGVnb3J5LWJvZHlcIj5cbiAgPGxpICpuZ0Zvcj1cImxldCBhY3Rpb24gb2YgYWN0aW9uc1wiPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJhY3Rpb24uYWN0aW9uVHlwZVwiPlxuICAgICAgPG5nLWNvbnRhaW5lciBbbmdTd2l0Y2hdPVwiYWN0aW9uLmFjdGlvblR5cGVcIj5cbiAgICAgICAgPGRpdiAqbmdTd2l0Y2hDYXNlPVwiJ1NFVF9GQUNUJ1wiPlxuICAgICAgICAgIDxkaXY+U2V0IEZhY3Q8L2Rpdj5cbiAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgPG8zci1ydWxlLWtleS12YWx1ZS1wcmVzXG4gICAgICAgICAgICAgIFtrZXldPVwiYWN0aW9uLmZhY3QgfCBvM3JGYWxsYmFja1RvOiAnTWlzc2luZyBcXCdmYWN0XFwnJ1wiXG4gICAgICAgICAgICAgIFt2YWx1ZV09XCJhY3Rpb24udmFsdWUgfCBvM3JGYWxsYmFja1RvXCJcbiAgICAgICAgICAgICAgW3R5cGVdPVwiJ2Fzc2lnbm1lbnQnXCI+PC9vM3ItcnVsZS1rZXktdmFsdWUtcHJlcz5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgKm5nU3dpdGNoQ2FzZT1cIidVUERBVEVfQ09ORklHJ1wiPlxuICAgICAgICAgIDxkaXY+VXBkYXRlIENvbmZpZyB7e2FjdGlvbi5jb21wb25lbnR9fSB7e2FjdGlvbi5saWJyYXJ5fX08L2Rpdj5cbiAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgPG8zci1ydWxlLWtleS12YWx1ZS1wcmVzXG4gICAgICAgICAgICAgIFtrZXldPVwiYWN0aW9uLnByb3BlcnR5IHwgbzNyRmFsbGJhY2tUbzogJ01pc3NpbmcgXFwncHJvcGVydHlcXCcnXCJcbiAgICAgICAgICAgICAgW3ZhbHVlXT1cImFjdGlvbi52YWx1ZSB8IG8zckZhbGxiYWNrVG9cIlxuICAgICAgICAgICAgICBbdHlwZV09XCInYXNzaWdubWVudCdcIj48L28zci1ydWxlLWtleS12YWx1ZS1wcmVzPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiAqbmdTd2l0Y2hDYXNlPVwiJ1VQREFURV9BU1NFVCdcIj5cbiAgICAgICAgICA8ZGl2PlVwZGF0ZSBBc3NldDo8L2Rpdj5cbiAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgPG8zci1ydWxlLWtleS12YWx1ZS1wcmVzXG4gICAgICAgICAgICAgIFtvbGRWYWx1ZV09XCJhY3Rpb24uYXNzZXQgfCBvM3JGYWxsYmFja1RvOiAnTWlzc2luZyBcXCdhc3NldFxcJydcIlxuICAgICAgICAgICAgICBbdmFsdWVdPVwiYWN0aW9uLnZhbHVlIHwgbzNyRmFsbGJhY2tUb1wiXG4gICAgICAgICAgICAgIFt0eXBlXT1cIidzdGF0ZSdcIj48L28zci1ydWxlLWtleS12YWx1ZS1wcmVzPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiAqbmdTd2l0Y2hDYXNlPVwiJ1VQREFURV9MT0NBTElTQVRJT04nXCI+XG4gICAgICAgICAgPGRpdj5VcGRhdGUgbG9jYWxpemF0aW9uOjwvZGl2PlxuICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICA8bzNyLXJ1bGUta2V5LXZhbHVlLXByZXNcbiAgICAgICAgICAgICAgW29sZFZhbHVlXT1cImFjdGlvbi5rZXkgfCBvM3JGYWxsYmFja1RvOiAnTWlzc2luZyBcXCdrZXlcXCcnXCJcbiAgICAgICAgICAgICAgW3ZhbHVlXT1cImFjdGlvbi52YWx1ZSB8IG8zckZhbGxiYWNrVG9cIlxuICAgICAgICAgICAgICBbdHlwZV09XCInc3RhdGUnXCI+PC9vM3ItcnVsZS1rZXktdmFsdWUtcHJlcz5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICAqbmdTd2l0Y2hDYXNlPVwiJ1VQREFURV9QTEFDRUhPTERFUidcIlxuICAgICAgICAgIFtjbGFzcy5lcnJvcl09XCIhYWN0aW9uLnBsYWNlaG9sZGVySWRcIj5cbiAgICAgICAgICA8ZGl2PlVwZGF0ZSBwbGFjZWhvbGRlciBpbiB7e2FjdGlvbi5jb21wb25lbnR9fSB7e2FjdGlvbi5saWJyYXJ5fX08L2Rpdj5cbiAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgPG8zci1ydWxlLWtleS12YWx1ZS1wcmVzXG4gICAgICAgICAgICAgIFtvbGRWYWx1ZV09XCJhY3Rpb24ucGxhY2Vob2xkZXJJZCB8IG8zckZhbGxiYWNrVG86ICdNaXNzaW5nIFxcJ3BsYWNlaG9sZGVySWRcXCcnXCJcbiAgICAgICAgICAgICAgW3ZhbHVlXT1cImFjdGlvbi52YWx1ZVwiXG4gICAgICAgICAgICAgIFt0eXBlXT1cIidzdGF0ZSdcIj48L28zci1ydWxlLWtleS12YWx1ZS1wcmVzPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiAqbmdTd2l0Y2hEZWZhdWx0IGNsYXNzPVwiZXJyb3JcIj5cbiAgICAgICAgICA8ZGl2PlVucmVjb2duaXplZCBhY3Rpb248L2Rpdj5cbiAgICAgICAgICA8ZGl2Pnt7YWN0aW9uIHwganNvbn19PC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC9uZy1jb250YWluZXI+XG4gIDwvbGk+XG4gIDxsaSAqbmdGb3I9XCJsZXQgcnVudGltZU91dHB1dCBvZiBydW50aW1lT3V0cHV0c1wiPlxuICAgIDxkaXY+U2V0IHRlbXBvcmFyeSBmYWN0PC9kaXY+XG4gICAgPGRpdj5cbiAgICAgIDxvM3ItcnVsZS1rZXktdmFsdWUtcHJlc1xuICAgICAgICBba2V5XT1cInJ1bnRpbWVPdXRwdXQgfCBvM3JGYWxsYmFja1RvOiAnTWlzc2luZyBcXCdmYWN0XFwnJ1wiXG4gICAgICAgIFt2YWx1ZV09XCJ0ZW1wb3JhcnlGYWN0c1tydW50aW1lT3V0cHV0XSB8IG8zckZhbGxiYWNrVG9cIlxuICAgICAgICBbdHlwZV09XCInYXNzaWdubWVudCdcIj48L28zci1ydWxlLWtleS12YWx1ZS1wcmVzPlxuICAgIDwvZGl2PlxuICA8L2xpPlxuPC91bD5cbiJdfQ==
42
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnVsZS1hY3Rpb25zLXByZXMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvcnVsZXMtZW5naW5lL3J1bGUtYWN0aW9ucy9ydWxlLWFjdGlvbnMtcHJlcy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9ydWxlcy1lbmdpbmUvcnVsZS1hY3Rpb25zL3J1bGUtYWN0aW9ucy1wcmVzLnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsS0FBSyxFQUNMLGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQzs7Ozs7QUFjdkIsTUFBTSxPQUFPLHdCQUF3QjtJQVByQztRQVFFOztXQUVHO1FBRUksWUFBTyxHQUFlLEVBQUUsQ0FBQztRQUVoQzs7O1dBR0c7UUFFSSxtQkFBYyxHQUEwQixFQUFFLENBQUM7UUFFbEQ7O1dBRUc7UUFFSSxtQkFBYyxHQUFhLEVBQUUsQ0FBQztLQVN0QztJQVBDOzs7T0FHRztJQUNJLGFBQWEsQ0FBQyxLQUFlO1FBQ2xDLE9BQU8sQ0FBQyxDQUFFLEtBQXFCLENBQUMsVUFBVSxDQUFDO0lBQzdDLENBQUM7a0lBMUJVLHdCQUF3QjtzSEFBeEIsd0JBQXdCLGlLQ25CckMscTJHQXlGQTs7NEZEdEVhLHdCQUF3QjtrQkFQcEMsU0FBUzsrQkFDRSx1QkFBdUIsbUJBR2hCLHVCQUF1QixDQUFDLE1BQU0saUJBQ2hDLGlCQUFpQixDQUFDLElBQUk7OEJBTzlCLE9BQU87c0JBRGIsS0FBSztnQkFRQyxjQUFjO3NCQURwQixLQUFLO2dCQU9DLGNBQWM7c0JBRHBCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBJbnB1dCxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHR5cGUge1xuICBBY3Rpb25CbG9jayxcbiAgQWxsQmxvY2ssXG4gIEZhY3RzLFxufSBmcm9tICcuLi8uLi8uLi9lbmdpbmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdvM3ItcnVsZS1hY3Rpb25zLXByZXMnLFxuICBzdHlsZVVybHM6IFsnLi9ydWxlLWFjdGlvbnMtcHJlcy5zdHlsZS5zY3NzJ10sXG4gIHRlbXBsYXRlVXJsOiAnLi9ydWxlLWFjdGlvbnMtcHJlcy50ZW1wbGF0ZS5odG1sJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcbn0pXG5leHBvcnQgY2xhc3MgUnVsZUFjdGlvbnNQcmVzQ29tcG9uZW50IHtcbiAgLyoqXG4gICAqIExpc3Qgb2YgYWxsIHRoZSBvdXRwdXQgYWN0aW9ucyBvZiBhIHJ1bGVzIG9yIHJ1bGVzZXQgZXhlY3V0aW9uXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgYWN0aW9uczogQWxsQmxvY2tbXSA9IFtdO1xuXG4gIC8qKlxuICAgKiBUaGUgbGlzdCBvZiB0ZW1wb3JhcnkgZmFjdHMgdXNlZCBhbmQvb3IgbW9kaWZpZWQgd2l0aGluIHRoZSBydWxlIG9yIHRoZSBydWxlc2V0LlxuICAgKiBUaGV5IGFyZSBzY29wZWQgdG8gdGhlIHJ1bGVzZXQgYW5kIHRoZWlyIHZhbHVlIGlzIHRoZSBvbmUgYWZ0ZXIgdGhlIHJ1bGUgb3IgcnVsZXNldCBleGVjdXRpb24uXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgdGVtcG9yYXJ5RmFjdHM6IFJlY29yZDxzdHJpbmcsIEZhY3RzPiA9IHt9O1xuXG4gIC8qKlxuICAgKiBMaXN0IG9mIHRlbXBvcmFyeSBmYWN0cyB0aGF0IHdpbGwgYmUgbW9kaWZpZWQgYnkgdGhlIHJ1bGVzZXQgb3IgdGhlIHJ1bGUuXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgcnVudGltZU91dHB1dHM6IHN0cmluZ1tdID0gW107XG5cbiAgLyoqXG4gICAqIENoZWNrIGlmIGEgZ2l2ZW4gYmxvY2sgaXMgb2YgdHlwZSBBY3Rpb25CbG9ja1xuICAgKiBAcGFyYW0gYmxvY2tcbiAgICovXG4gIHB1YmxpYyBpc0FjdGlvbkJsb2NrKGJsb2NrOiBBbGxCbG9jayk6IGJsb2NrIGlzIEFjdGlvbkJsb2NrIHtcbiAgICByZXR1cm4gISEoYmxvY2sgYXMgQWN0aW9uQmxvY2spLmFjdGlvblR5cGU7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJydWxlc2V0LXBhbmVsLWNhdGVnb3J5LXRpdGxlXCI+T3V0cHV0IEFjdGlvbnM8L2Rpdj5cbkBpZiAoYWN0aW9ucz8ubGVuZ3RoID09PSAwICYmIHJ1bnRpbWVPdXRwdXRzLmxlbmd0aCA9PT0gMCkge1xuICA8ZGl2IGNsYXNzPVwicnVsZXNldC1wYW5lbC1jYXRlZ29yeS1ib2R5IGVtcHR5XCI+XG4gICAgTm8gYWN0aW9uXG4gIDwvZGl2PlxufSBAZWxzZSB7XG4gIDx1bCBjbGFzcz1cInJ1bGVzZXQtcGFuZWwtY2F0ZWdvcnktYm9keVwiPlxuICAgIEBmb3IgKGFjdGlvbiBvZiBhY3Rpb25zOyB0cmFjayAkaW5kZXgpIHtcbiAgICAgIDxsaT5cbiAgICAgICAgQGlmIChpc0FjdGlvbkJsb2NrKGFjdGlvbikpIHtcbiAgICAgICAgICBAc3dpdGNoIChhY3Rpb24uYWN0aW9uVHlwZSkge1xuICAgICAgICAgICAgQGNhc2UgKCdTRVRfRkFDVCcpIHtcbiAgICAgICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgICAgICA8ZGl2PlNldCBGYWN0PC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgICAgICAgIDxvM3ItcnVsZS1rZXktdmFsdWUtcHJlc1xuICAgICAgICAgICAgICAgICAgICBba2V5XT1cImFjdGlvbi5mYWN0IHwgbzNyRmFsbGJhY2tUbzogJ01pc3NpbmcgXFwnZmFjdFxcJydcIlxuICAgICAgICAgICAgICAgICAgICBbdmFsdWVdPVwiYWN0aW9uLnZhbHVlIHwgbzNyRmFsbGJhY2tUb1wiXG4gICAgICAgICAgICAgICAgICAgIFt0eXBlXT1cIidhc3NpZ25tZW50J1wiPjwvbzNyLXJ1bGUta2V5LXZhbHVlLXByZXM+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGNhc2UgKCdVUERBVEVfQ09ORklHJykge1xuICAgICAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgICAgIDxkaXY+VXBkYXRlIENvbmZpZyB7e2FjdGlvbi5jb21wb25lbnR9fSB7e2FjdGlvbi5saWJyYXJ5fX08L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgICAgICAgPG8zci1ydWxlLWtleS12YWx1ZS1wcmVzXG4gICAgICAgICAgICAgICAgICAgIFtrZXldPVwiYWN0aW9uLnByb3BlcnR5IHwgbzNyRmFsbGJhY2tUbzogJ01pc3NpbmcgXFwncHJvcGVydHlcXCcnXCJcbiAgICAgICAgICAgICAgICAgICAgW3ZhbHVlXT1cImFjdGlvbi52YWx1ZSB8IG8zckZhbGxiYWNrVG9cIlxuICAgICAgICAgICAgICAgICAgICBbdHlwZV09XCInYXNzaWdubWVudCdcIj48L28zci1ydWxlLWtleS12YWx1ZS1wcmVzPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBjYXNlICgnVVBEQVRFX0FTU0VUJykge1xuICAgICAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgICAgIDxkaXY+VXBkYXRlIEFzc2V0OjwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICAgICAgICA8bzNyLXJ1bGUta2V5LXZhbHVlLXByZXNcbiAgICAgICAgICAgICAgICAgICAgW29sZFZhbHVlXT1cImFjdGlvbi5hc3NldCB8IG8zckZhbGxiYWNrVG86ICdNaXNzaW5nIFxcJ2Fzc2V0XFwnJ1wiXG4gICAgICAgICAgICAgICAgICAgIFt2YWx1ZV09XCJhY3Rpb24udmFsdWUgfCBvM3JGYWxsYmFja1RvXCJcbiAgICAgICAgICAgICAgICAgICAgW3R5cGVdPVwiJ3N0YXRlJ1wiPjwvbzNyLXJ1bGUta2V5LXZhbHVlLXByZXM+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGNhc2UgKCdVUERBVEVfTE9DQUxJU0FUSU9OJykge1xuICAgICAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgICAgIDxkaXY+VXBkYXRlIGxvY2FsaXphdGlvbjo8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgICAgICAgPG8zci1ydWxlLWtleS12YWx1ZS1wcmVzXG4gICAgICAgICAgICAgICAgICAgIFtvbGRWYWx1ZV09XCJhY3Rpb24ua2V5IHwgbzNyRmFsbGJhY2tUbzogJ01pc3NpbmcgXFwna2V5XFwnJ1wiXG4gICAgICAgICAgICAgICAgICAgIFt2YWx1ZV09XCJhY3Rpb24udmFsdWUgfCBvM3JGYWxsYmFja1RvXCJcbiAgICAgICAgICAgICAgICAgICAgW3R5cGVdPVwiJ3N0YXRlJ1wiPjwvbzNyLXJ1bGUta2V5LXZhbHVlLXByZXM+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGNhc2UgKCdVUERBVEVfUExBQ0VIT0xERVInKSB7XG4gICAgICAgICAgICAgIDxkaXYgW2NsYXNzLmVycm9yXT1cIiFhY3Rpb24ucGxhY2Vob2xkZXJJZFwiPlxuICAgICAgICAgICAgICAgIDxkaXY+VXBkYXRlIHBsYWNlaG9sZGVyIGluIHt7YWN0aW9uLmNvbXBvbmVudH19IHt7YWN0aW9uLmxpYnJhcnl9fTwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICAgICAgICA8bzNyLXJ1bGUta2V5LXZhbHVlLXByZXNcbiAgICAgICAgICAgICAgICAgICAgW29sZFZhbHVlXT1cImFjdGlvbi5wbGFjZWhvbGRlcklkIHwgbzNyRmFsbGJhY2tUbzogJ01pc3NpbmcgXFwncGxhY2Vob2xkZXJJZFxcJydcIlxuICAgICAgICAgICAgICAgICAgICBbdmFsdWVdPVwiYWN0aW9uLnZhbHVlXCJcbiAgICAgICAgICAgICAgICAgICAgW3R5cGVdPVwiJ3N0YXRlJ1wiPjwvbzNyLXJ1bGUta2V5LXZhbHVlLXByZXM+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGRlZmF1bHQge1xuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZXJyb3JcIj5cbiAgICAgICAgICAgICAgICA8ZGl2PlVucmVjb2duaXplZCBhY3Rpb248L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2Pnt7YWN0aW9uIHwganNvbn19PC9kaXY+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgPC9saT5cbiAgICB9XG4gICAgQGZvciAocnVudGltZU91dHB1dCBvZiBydW50aW1lT3V0cHV0czsgdHJhY2sgJGluZGV4KSB7XG4gICAgICA8bGk+XG4gICAgICAgIDxkaXY+U2V0IHRlbXBvcmFyeSBmYWN0PC9kaXY+XG4gICAgICAgIDxkaXY+XG4gICAgICAgICAgPG8zci1ydWxlLWtleS12YWx1ZS1wcmVzXG4gICAgICAgICAgICBba2V5XT1cInJ1bnRpbWVPdXRwdXQgfCBvM3JGYWxsYmFja1RvOiAnTWlzc2luZyBcXCdmYWN0XFwnJ1wiXG4gICAgICAgICAgICBbdmFsdWVdPVwidGVtcG9yYXJ5RmFjdHNbcnVudGltZU91dHB1dF0gfCBvM3JGYWxsYmFja1RvXCJcbiAgICAgICAgICAgIFt0eXBlXT1cIidhc3NpZ25tZW50J1wiPjwvbzNyLXJ1bGUta2V5LXZhbHVlLXByZXM+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9saT5cbiAgICB9XG4gIDwvdWw+XG59XG4iXX0=