@o3r/rules-engine 10.0.0-next.9 → 11.0.0-next.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +16 -17
- package/builders/rules-engine-extractor/helpers/rules-engine.extractor.d.ts +1 -1
- package/builders/rules-engine-extractor/helpers/rules-engine.extractor.d.ts.map +1 -1
- package/builders/rules-engine-extractor/helpers/rules-engine.extractor.interfaces.d.ts +2 -0
- package/builders/rules-engine-extractor/helpers/rules-engine.extractor.interfaces.d.ts.map +1 -1
- package/builders/rules-engine-extractor/helpers/rules-engine.extractor.js +10 -2
- package/builders/rules-engine-extractor/helpers/rules-engine.extractor.js.map +1 -1
- package/builders/rules-engine-extractor/index.js.map +1 -1
- package/builders/rules-engine-extractor/schema.json +1 -1
- package/components/rules-engine/rule-condition/rule-condition-pres.component.d.ts +2 -2
- package/components/rules-engine/rule-condition/rule-condition-pres.component.d.ts.map +1 -1
- package/components/rules-engine/rule-key-value/rule-key-value-pres.component.d.ts +1 -1
- package/components/rules-engine/rule-key-value/rule-key-value-pres.component.d.ts.map +1 -1
- package/components/rules-engine/ruleset-history/ruleset-history-pres.component.d.ts +1 -3
- package/components/rules-engine/ruleset-history/ruleset-history-pres.component.d.ts.map +1 -1
- package/components/rules-engine/shared/ruleset-history.helper.d.ts +0 -2
- package/components/rules-engine/shared/ruleset-history.helper.d.ts.map +1 -1
- package/devkit/rules-engine-devtools.console.service.d.ts +0 -7
- package/devkit/rules-engine-devtools.console.service.d.ts.map +1 -1
- package/devkit/rules-engine-devtools.message.service.d.ts +4 -6
- package/devkit/rules-engine-devtools.message.service.d.ts.map +1 -1
- package/devkit/rules-engine-devtools.module.d.ts +0 -1
- package/devkit/rules-engine-devtools.module.d.ts.map +1 -1
- package/devkit/rules-engine-devtools.service.d.ts +3 -10
- package/devkit/rules-engine-devtools.service.d.ts.map +1 -1
- package/engine/debug/engine.debug.d.ts +4 -12
- package/engine/debug/engine.debug.d.ts.map +1 -1
- package/engine/debug/helpers.d.ts +2 -4
- package/engine/debug/helpers.d.ts.map +1 -1
- package/engine/engine.d.ts +4 -13
- package/engine/engine.d.ts.map +1 -1
- package/engine/engine.interface.d.ts +2 -6
- package/engine/engine.interface.d.ts.map +1 -1
- package/engine/fact/fact.interfaces.d.ts +2 -0
- package/engine/fact/fact.interfaces.d.ts.map +1 -1
- package/engine/helpers/filter-ruleset-event.operator.d.ts +0 -1
- package/engine/helpers/filter-ruleset-event.operator.d.ts.map +1 -1
- package/engine/operator/operator.helpers.d.ts +10 -9
- package/engine/operator/operator.helpers.d.ts.map +1 -1
- package/engine/operator/operator.interface.d.ts +4 -1
- package/engine/operator/operator.interface.d.ts.map +1 -1
- package/engine/operator/operators/array-based.operators.d.ts +0 -23
- package/engine/operator/operators/array-based.operators.d.ts.map +1 -1
- package/engine/operator/operators/basic.operators.d.ts +5 -8
- package/engine/operator/operators/basic.operators.d.ts.map +1 -1
- package/engine/operator/operators/date-based.operators.d.ts +13 -6
- package/engine/operator/operators/date-based.operators.d.ts.map +1 -1
- package/engine/operator/operators/index.d.ts +1 -1
- package/engine/operator/operators/index.d.ts.map +1 -1
- package/engine/operator/operators/number-based.operators.d.ts +0 -4
- package/engine/operator/operators/number-based.operators.d.ts.map +1 -1
- package/engine/rule/rule.helpers.d.ts +0 -7
- package/engine/rule/rule.helpers.d.ts.map +1 -1
- package/engine/ruleset-executor.d.ts +15 -13
- package/engine/ruleset-executor.d.ts.map +1 -1
- package/engine/structure.d.ts +9 -5
- package/engine/structure.d.ts.map +1 -1
- package/esm2022/components/rules-engine/rule-actions/rule-actions-pres.component.mjs +4 -4
- package/esm2022/components/rules-engine/rule-condition/rule-condition-pres.component.mjs +8 -13
- package/esm2022/components/rules-engine/rule-key-value/rule-key-value-pres.component.mjs +5 -5
- package/esm2022/components/rules-engine/rule-tree/rule-tree-pres.component.mjs +5 -5
- package/esm2022/components/rules-engine/ruleset-history/ruleset-history-pres.component.mjs +6 -8
- package/esm2022/components/rules-engine/ruleset-history/ruleset-history-pres.module.mjs +4 -4
- package/esm2022/components/rules-engine/shared/fallback-to.pipe.mjs +3 -3
- package/esm2022/components/rules-engine/shared/ruleset-history.helper.mjs +1 -3
- package/esm2022/devkit/rules-engine-devtools.console.service.mjs +6 -13
- package/esm2022/devkit/rules-engine-devtools.message.service.mjs +6 -8
- package/esm2022/devkit/rules-engine-devtools.module.mjs +5 -6
- package/esm2022/devkit/rules-engine-devtools.service.mjs +7 -14
- package/esm2022/engine/debug/engine.debug.mjs +2 -10
- package/esm2022/engine/debug/helpers.mjs +1 -4
- package/esm2022/engine/engine.interface.mjs +1 -1
- package/esm2022/engine/engine.mjs +1 -9
- package/esm2022/engine/fact/fact.interfaces.mjs +1 -1
- package/esm2022/engine/helpers/filter-ruleset-event.operator.mjs +1 -2
- package/esm2022/engine/operator/index.mjs +1 -1
- package/esm2022/engine/operator/operator.helpers.mjs +33 -13
- package/esm2022/engine/operator/operator.interface.mjs +1 -1
- package/esm2022/engine/operator/operators/array-based.operators.mjs +6 -29
- package/esm2022/engine/operator/operators/basic.operators.mjs +16 -11
- package/esm2022/engine/operator/operators/date-based.operators.mjs +48 -8
- package/esm2022/engine/operator/operators/number-based.operators.mjs +1 -5
- package/esm2022/engine/rule/rule.helpers.mjs +1 -8
- package/esm2022/engine/ruleset-executor.mjs +58 -32
- package/esm2022/engine/structure.mjs +1 -1
- package/esm2022/fact/fact.abstract-service.mjs +1 -1
- package/esm2022/facts/current-time/current-time.facts.mjs +2 -0
- package/esm2022/facts/current-time/index.mjs +2 -0
- package/esm2022/facts/index.mjs +2 -0
- package/esm2022/fixtures/jasmine/index.mjs +2 -2
- package/esm2022/fixtures/jasmine/rules-engine.runner.service.fixture.jasmine.mjs +14 -0
- package/esm2022/fixtures/jest/index.mjs +2 -2
- package/esm2022/fixtures/jest/rules-engine.runner.service.fixture.jest.mjs +14 -0
- package/esm2022/interfaces/action.interfaces.mjs +1 -1
- package/esm2022/public_api.mjs +2 -1
- package/esm2022/services/index.mjs +2 -3
- package/esm2022/services/rules-engine.token.mjs +2 -1
- package/esm2022/services/runner/index.mjs +3 -0
- package/esm2022/services/runner/rules-engine.runner.module.mjs +37 -0
- package/esm2022/services/runner/rules-engine.runner.service.mjs +119 -0
- package/esm2022/stores/rulesets/rulesets.effect.mjs +4 -4
- package/esm2022/stores/rulesets/rulesets.module.mjs +4 -4
- package/esm2022/stores/rulesets/rulesets.selectors.mjs +3 -4
- package/fact/fact.abstract-service.d.ts +3 -3
- package/fact/fact.abstract-service.d.ts.map +1 -1
- package/facts/current-time/current-time.facts.d.ts +11 -0
- package/facts/current-time/current-time.facts.d.ts.map +1 -0
- package/facts/current-time/index.d.ts +2 -0
- package/facts/current-time/index.d.ts.map +1 -0
- package/facts/index.d.ts +2 -0
- package/facts/index.d.ts.map +1 -0
- package/fesm2022/o3r-rules-engine-fixtures-jasmine.mjs +3 -6
- package/fesm2022/o3r-rules-engine-fixtures-jasmine.mjs.map +1 -1
- package/fesm2022/o3r-rules-engine-fixtures-jest.mjs +3 -6
- package/fesm2022/o3r-rules-engine-fixtures-jest.mjs.map +1 -1
- package/fesm2022/o3r-rules-engine.mjs +264 -560
- package/fesm2022/o3r-rules-engine.mjs.map +1 -1
- package/fixtures/jasmine/index.d.ts +1 -1
- package/fixtures/jasmine/index.d.ts.map +1 -1
- package/fixtures/jasmine/rules-engine.runner.service.fixture.jasmine.d.ts +14 -0
- package/fixtures/jasmine/rules-engine.runner.service.fixture.jasmine.d.ts.map +1 -0
- package/fixtures/jest/index.d.ts +1 -1
- package/fixtures/jest/index.d.ts.map +1 -1
- package/fixtures/jest/index.js +1 -1
- package/fixtures/jest/index.js.map +1 -1
- package/fixtures/jest/rules-engine.runner.service.fixture.jest.d.ts +14 -0
- package/fixtures/jest/rules-engine.runner.service.fixture.jest.d.ts.map +1 -0
- package/fixtures/jest/{rules-engine.service.fixture.jest.js → rules-engine.runner.service.fixture.jest.js} +3 -6
- package/fixtures/jest/rules-engine.runner.service.fixture.jest.js.map +1 -0
- package/interfaces/action.interfaces.d.ts +5 -0
- package/interfaces/action.interfaces.d.ts.map +1 -1
- package/migration.json +10 -0
- package/package.json +57 -46
- package/public_api.d.ts +1 -0
- package/public_api.d.ts.map +1 -1
- package/rules.facts.metadata.json +7 -1
- package/rules.operators.metadata.json +61 -0
- package/schemas/rulesets.schema.json +6 -110
- package/schematics/cms-adapter/index.d.ts +0 -1
- package/schematics/cms-adapter/index.d.ts.map +1 -1
- package/schematics/cms-adapter/index.js +5 -9
- package/schematics/cms-adapter/index.js.map +1 -1
- package/schematics/facts-service/schema.json +1 -1
- package/schematics/ng-add/helpers/devtools-registration.d.ts +11 -0
- package/schematics/ng-add/helpers/devtools-registration.d.ts.map +1 -0
- package/schematics/ng-add/helpers/devtools-registration.js +36 -0
- package/schematics/ng-add/helpers/devtools-registration.js.map +1 -0
- package/schematics/ng-add/index.d.ts +1 -0
- package/schematics/ng-add/index.d.ts.map +1 -1
- package/schematics/ng-add/index.js +8 -4
- package/schematics/ng-add/index.js.map +1 -1
- package/schematics/ng-add/schema.json +1 -1
- package/schematics/ng-update/index.d.ts +6 -0
- package/schematics/ng-update/index.d.ts.map +1 -0
- package/schematics/ng-update/index.js +22 -0
- package/schematics/ng-update/index.js.map +1 -0
- package/schematics/ng-update/v10.0/action-module-split.d.ts +6 -0
- package/schematics/ng-update/v10.0/action-module-split.d.ts.map +1 -0
- package/schematics/ng-update/v10.0/action-module-split.js +21 -0
- package/schematics/ng-update/v10.0/action-module-split.js.map +1 -0
- package/schematics/operator/schema.json +1 -1
- package/schematics/rules-engine-to-component/index.d.ts +0 -1
- package/schematics/rules-engine-to-component/index.d.ts.map +1 -1
- package/schematics/rules-engine-to-component/index.js +7 -8
- package/schematics/rules-engine-to-component/index.js.map +1 -1
- package/schematics/rules-engine-to-component/schema.json +1 -1
- package/services/index.d.ts +1 -2
- package/services/index.d.ts.map +1 -1
- package/services/rules-engine.token.d.ts +1 -0
- package/services/rules-engine.token.d.ts.map +1 -1
- package/services/runner/index.d.ts +3 -0
- package/services/runner/index.d.ts.map +1 -0
- package/services/runner/rules-engine.runner.module.d.ts +13 -0
- package/services/runner/rules-engine.runner.module.d.ts.map +1 -0
- package/services/runner/rules-engine.runner.service.d.ts +60 -0
- package/services/runner/rules-engine.runner.service.d.ts.map +1 -0
- package/stores/rulesets/rulesets.selectors.d.ts.map +1 -1
- package/builders/package.json +0 -3
- package/esm2022/fixtures/jasmine/rules-engine.service.fixture.jasmine.mjs +0 -17
- package/esm2022/fixtures/jest/rules-engine.service.fixture.jest.mjs +0 -17
- package/esm2022/services/rules-engine.effect.mjs +0 -162
- package/esm2022/services/rules-engine.module.mjs +0 -50
- package/esm2022/services/rules-engine.service.mjs +0 -272
- package/fixtures/jasmine/rules-engine.service.fixture.jasmine.d.ts +0 -17
- package/fixtures/jasmine/rules-engine.service.fixture.jasmine.d.ts.map +0 -1
- package/fixtures/jest/rules-engine.service.fixture.jest.d.ts +0 -18
- package/fixtures/jest/rules-engine.service.fixture.jest.d.ts.map +0 -1
- package/fixtures/jest/rules-engine.service.fixture.jest.js.map +0 -1
- package/schematics/package.json +0 -3
- package/services/rules-engine.effect.d.ts +0 -53
- package/services/rules-engine.effect.d.ts.map +0 -1
- package/services/rules-engine.module.d.ts +0 -16
- package/services/rules-engine.module.d.ts.map +0 -1
- package/services/rules-engine.service.d.ts +0 -90
- package/services/rules-engine.service.d.ts.map +0 -1
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
/// <reference types="jest" />
|
|
2
|
-
import type { Fact, Operator, RulesEngineService, UnaryOperator } from '@o3r/rules-engine';
|
|
3
|
-
import { PlaceholderRequestReply } from '@o3r/components';
|
|
4
|
-
export declare class RulesEngineServiceFixture implements Readonly<Partial<RulesEngineService>> {
|
|
5
|
-
/** @inheritDoc */
|
|
6
|
-
upsertFacts: jest.Mock<void, [Fact<unknown> | Fact<unknown>[]]>;
|
|
7
|
-
/** @inheritDoc */
|
|
8
|
-
upsertOperators: jest.Mock<void, [(Operator<any, any> | UnaryOperator<any>)[]]>;
|
|
9
|
-
/** @inheritDoc */
|
|
10
|
-
resolveUrlWithLang: jest.Mock<string, [string, string]>;
|
|
11
|
-
/** @inheritDoc */
|
|
12
|
-
retrieveTemplate: jest.Mock<Promise<PlaceholderRequestReply>, [string]>;
|
|
13
|
-
/** @inheritDoc */
|
|
14
|
-
enableRuleSetFor: jest.Mock<void, [string]>;
|
|
15
|
-
/** @inheritDoc */
|
|
16
|
-
disableRuleSetFor: jest.Mock<void, [string]>;
|
|
17
|
-
}
|
|
18
|
-
//# sourceMappingURL=rules-engine.service.fixture.jest.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"rules-engine.service.fixture.jest.d.ts","sourceRoot":"","sources":["../../../src/fixtures/jest/rules-engine.service.fixture.jest.ts"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAAC,IAAI,EAAE,QAAQ,EAAE,kBAAkB,EAAE,aAAa,EAAC,MAAM,mBAAmB,CAAC;AACzF,OAAO,EAAC,uBAAuB,EAAC,MAAM,iBAAiB,CAAC;AAExD,qBAAa,yBAA0B,YAAW,QAAQ,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAErF,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,kBAAkB,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAa;IAE3E,kBAAkB;IACX,gBAAgB,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,uBAAuB,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAa;IAE3F,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 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"rules-engine.service.fixture.jest.js","sourceRoot":"","sources":["../../../src/fixtures/jest/rules-engine.service.fixture.jest.ts"],"names":[],"mappings":"AAGA,MAAM,OAAO,yBAAyB;IAAtC;QAEE,kBAAkB;QACX,gBAAW,GAAuD,IAAI,CAAC,EAAE,EAAE,CAAC;QAEnF,kBAAkB;QACX,oBAAe,GAAmE,IAAI,CAAC,EAAE,EAAE,CAAC;QAEnG,kBAAkB;QACX,uBAAkB,GAAwC,IAAI,CAAC,EAAE,EAAE,CAAC;QAE3E,kBAAkB;QACX,qBAAgB,GAA0D,IAAI,CAAC,EAAE,EAAE,CAAC;QAE3F,kBAAkB;QACX,qBAAgB,GAA8B,IAAI,CAAC,EAAE,EAAE,CAAC;QAE/D,kBAAkB;QACX,sBAAiB,GAA8B,IAAI,CAAC,EAAE,EAAE,CAAC;IAClE,CAAC;CAAA"}
|
package/schematics/package.json
DELETED
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
import { Actions } from '@ngrx/effects';
|
|
2
|
-
import { PlaceholderRequestStore, PlaceholderVariable } from '@o3r/components';
|
|
3
|
-
import { DynamicContentService } from '@o3r/dynamic-content';
|
|
4
|
-
import { LocalizationService } from '@o3r/localization';
|
|
5
|
-
import { Observable } from 'rxjs';
|
|
6
|
-
import { RulesEngineService } from './rules-engine.service';
|
|
7
|
-
import { Store } from '@ngrx/store';
|
|
8
|
-
import * as i0 from "@angular/core";
|
|
9
|
-
/**
|
|
10
|
-
* Service to handle async PlaceholderTemplate actions
|
|
11
|
-
*/
|
|
12
|
-
export declare class PlaceholderTemplateResponseEffect {
|
|
13
|
-
private actions$;
|
|
14
|
-
private rulesEngineService;
|
|
15
|
-
private dynamicContentService;
|
|
16
|
-
private store;
|
|
17
|
-
private translationService?;
|
|
18
|
-
/**
|
|
19
|
-
* Set the PlaceholderRequest entity with the reply content, dispatch failPlaceholderRequestEntity if it catches a failure
|
|
20
|
-
* Handles the rendering of the HTML content from the template and creates the combine latest from facts list if needed
|
|
21
|
-
* Disables unused templates refresh if used is false in the store
|
|
22
|
-
*/
|
|
23
|
-
setPlaceholderRequestEntityFromUrl$: Observable<(import("@o3r/core").UpdateAsyncStoreItemEntityActionPayloadWithId<import("@o3r/components").PlaceholderRequestModel> & import("@ngrx/store/src/models").TypedAction<"[PlaceholderRequest] update entity">) | (import("@o3r/core").FailAsyncStoreItemEntitiesActionPayload<any> & import("@ngrx/store/src/models").TypedAction<"[PlaceholderRequest] fail entities">) | (import("@o3r/core").AsyncRequest & {
|
|
24
|
-
id: string;
|
|
25
|
-
} & import("@ngrx/store/src/models").TypedAction<"[PlaceholderRequest] cancel request">)> & import("@ngrx/effects").CreateEffectMetadata;
|
|
26
|
-
constructor(actions$: Actions, rulesEngineService: RulesEngineService, dynamicContentService: DynamicContentService, store: Store<PlaceholderRequestStore>, translationService?: LocalizationService | undefined);
|
|
27
|
-
/**
|
|
28
|
-
* Renders the html template, replacing facts and urls and localizationKeys
|
|
29
|
-
*
|
|
30
|
-
* @param template
|
|
31
|
-
* @param vars
|
|
32
|
-
* @param facts
|
|
33
|
-
*/
|
|
34
|
-
private getRenderedHTML$;
|
|
35
|
-
/**
|
|
36
|
-
* Renders the html template, replacing facts and urls
|
|
37
|
-
*
|
|
38
|
-
* @param template
|
|
39
|
-
* @param vars
|
|
40
|
-
* @param facts
|
|
41
|
-
* @deprecated will be removed in v10
|
|
42
|
-
*/
|
|
43
|
-
renderHTML(template?: string, vars?: Record<string, PlaceholderVariable>, facts?: {
|
|
44
|
-
name: string;
|
|
45
|
-
factValue: any;
|
|
46
|
-
}[]): Promise<{
|
|
47
|
-
renderedTemplate: string | undefined;
|
|
48
|
-
unknownTypeFound: boolean;
|
|
49
|
-
}>;
|
|
50
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<PlaceholderTemplateResponseEffect, [null, null, null, null, { optional: true; }]>;
|
|
51
|
-
static ɵprov: i0.ɵɵInjectableDeclaration<PlaceholderTemplateResponseEffect>;
|
|
52
|
-
}
|
|
53
|
-
//# sourceMappingURL=rules-engine.effect.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"rules-engine.effect.d.ts","sourceRoot":"","sources":["../../src/services/rules-engine.effect.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,OAAO,EAAuB,MAAM,eAAe,CAAC;AAC5D,OAAO,EAGL,uBAAuB,EACvB,mBAAmB,EAIpB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAC,qBAAqB,EAAC,MAAM,sBAAsB,CAAC;AAC3D,OAAO,EAAC,mBAAmB,EAAC,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAuC,UAAU,EAAK,MAAM,MAAM,CAAC;AAE1E,OAAO,EAAC,kBAAkB,EAAC,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAC,KAAK,EAAC,MAAM,aAAa,CAAC;;AAGlC;;GAEG;AACH,qBACa,iCAAiC;IAkD1C,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,kBAAkB;IAC1B,OAAO,CAAC,qBAAqB;IAC7B,OAAO,CAAC,KAAK;IACD,OAAO,CAAC,kBAAkB,CAAC;IArDzC;;;;OAIG;IACI,mCAAmC;;6IAyCxC;gBAGQ,QAAQ,EAAE,OAAO,EACjB,kBAAkB,EAAE,kBAAkB,EACtC,qBAAqB,EAAE,qBAAqB,EAC5C,KAAK,EAAE,KAAK,CAAC,uBAAuB,CAAC,EACzB,kBAAkB,CAAC,iCAAqB;IAG9D;;;;;;OAMG;IACH,OAAO,CAAC,gBAAgB;IA+DxB;;;;;;;OAOG;IACU,UAAU,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,EAAE,KAAK,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,GAAG,CAAA;KAAE,EAAE;;;;yCAvItH,iCAAiC;6CAAjC,iCAAiC;CAsK7C"}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { ModuleWithProviders } from '@angular/core';
|
|
2
|
-
import { RulesEngineServiceOptions } from './rules-engine.token';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "@ngrx/store";
|
|
5
|
-
import * as i2 from "@o3r/dynamic-content";
|
|
6
|
-
import * as i3 from "../stores/rulesets/rulesets.module";
|
|
7
|
-
import * as i4 from "@o3r/logger";
|
|
8
|
-
import * as i5 from "@ngx-translate/core";
|
|
9
|
-
import * as i6 from "@ngrx/effects";
|
|
10
|
-
export declare class RulesEngineModule {
|
|
11
|
-
static forRoot(options?: Partial<RulesEngineServiceOptions>): ModuleWithProviders<RulesEngineModule>;
|
|
12
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<RulesEngineModule, never>;
|
|
13
|
-
static ɵmod: i0.ɵɵNgModuleDeclaration<RulesEngineModule, never, [typeof i1.StoreModule, typeof i2.DynamicContentModule, typeof i3.RulesetsStoreModule, typeof i4.LoggerModule, typeof i5.TranslateModule, typeof i6.EffectsFeatureModule], never>;
|
|
14
|
-
static ɵinj: i0.ɵɵInjectorDeclaration<RulesEngineModule>;
|
|
15
|
-
}
|
|
16
|
-
//# sourceMappingURL=rules-engine.module.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"rules-engine.module.d.ts","sourceRoot":"","sources":["../../src/services/rules-engine.module.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAY,MAAM,eAAe,CAAC;AAS9D,OAAO,EAAsD,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;;;;;;;;AAErH,qBAUa,iBAAiB;WACd,OAAO,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,yBAAyB,CAAC,GAAG,mBAAmB,CAAC,iBAAiB,CAAC;yCADhG,iBAAiB;0CAAjB,iBAAiB;0CAAjB,iBAAiB;CAW7B"}
|
|
@@ -1,90 +0,0 @@
|
|
|
1
|
-
import { OnDestroy } from '@angular/core';
|
|
2
|
-
import { Store } from '@ngrx/store';
|
|
3
|
-
import { TranslateService } from '@ngx-translate/core';
|
|
4
|
-
import type { PlaceholderRequestReply, PlaceholderTemplateStore } from '@o3r/components';
|
|
5
|
-
import type { ConfigOverrideStore } from '@o3r/configuration';
|
|
6
|
-
import { AssetPathOverrideStore, DynamicContentService } from '@o3r/dynamic-content';
|
|
7
|
-
import type { LocalizationOverrideStore } from '@o3r/localization';
|
|
8
|
-
import { BehaviorSubject, Observable, Subject, Subscription } from 'rxjs';
|
|
9
|
-
import type { Fact, Operator, UnaryOperator } from '../engine/index';
|
|
10
|
-
import { RulesEngine } from '../engine/index';
|
|
11
|
-
import type { ActionOverrideBlock } from '../interfaces/index';
|
|
12
|
-
import type { RulesetsStore } from '../stores';
|
|
13
|
-
import { RulesEngineServiceOptions } from './rules-engine.token';
|
|
14
|
-
import { LoggerService } from '@o3r/logger';
|
|
15
|
-
import * as i0 from "@angular/core";
|
|
16
|
-
export declare class RulesEngineService implements OnDestroy {
|
|
17
|
-
private store;
|
|
18
|
-
private translateService;
|
|
19
|
-
private dynamicContentService;
|
|
20
|
-
private logger;
|
|
21
|
-
/** Map of engines dedicated to each rule sets */
|
|
22
|
-
readonly engine: RulesEngine;
|
|
23
|
-
/** stream of the whole ruleset results */
|
|
24
|
-
events$: Observable<ActionOverrideBlock[]>;
|
|
25
|
-
/** Enable action execution on new state change */
|
|
26
|
-
enabled: boolean;
|
|
27
|
-
protected subscription: Subscription;
|
|
28
|
-
/** Map that stores subscriptions to onDemand ruleset */
|
|
29
|
-
protected readonly temporarySubscriptionMap: Record<string, Subscription>;
|
|
30
|
-
/** Rulesets to restrict the execution of the engine */
|
|
31
|
-
protected ruleSets$: Observable<string[] | undefined>;
|
|
32
|
-
protected linkedComponents$: BehaviorSubject<{
|
|
33
|
-
[key: string]: number;
|
|
34
|
-
}>;
|
|
35
|
-
protected placeholdersActions$: Subject<{
|
|
36
|
-
placeholderId: string;
|
|
37
|
-
templateUrl: string;
|
|
38
|
-
priority: number;
|
|
39
|
-
}[]>;
|
|
40
|
-
constructor(store: Store<RulesetsStore & PlaceholderTemplateStore & AssetPathOverrideStore & LocalizationOverrideStore & ConfigOverrideStore>, translateService: TranslateService, dynamicContentService: DynamicContentService, logger: LoggerService, engineConfig?: RulesEngineServiceOptions);
|
|
41
|
-
/**
|
|
42
|
-
* Execute the list of actions
|
|
43
|
-
*
|
|
44
|
-
* @param ruleEvent Rule engine execution result
|
|
45
|
-
* @param actions
|
|
46
|
-
*/
|
|
47
|
-
protected executeActionSync(actions: ActionOverrideBlock[]): void;
|
|
48
|
-
/**
|
|
49
|
-
* Update or insert fact in rules engine
|
|
50
|
-
*
|
|
51
|
-
* @param facts fact list to add / update
|
|
52
|
-
*/
|
|
53
|
-
upsertFacts(facts: Fact<unknown> | Fact<unknown>[]): void;
|
|
54
|
-
/**
|
|
55
|
-
* Update or insert operator in rules engine
|
|
56
|
-
*
|
|
57
|
-
* @param operators operator list to add / update
|
|
58
|
-
*/
|
|
59
|
-
upsertOperators(operators: (Operator<any, any> | UnaryOperator<any>)[]): void;
|
|
60
|
-
/** @inheritdoc */
|
|
61
|
-
ngOnDestroy(): void;
|
|
62
|
-
/**
|
|
63
|
-
* Enable temporary a rule set
|
|
64
|
-
*
|
|
65
|
-
* @param componentComputedName Name of the component to enable the ruleset for
|
|
66
|
-
*/
|
|
67
|
-
enableRuleSetFor(componentComputedName: string): void;
|
|
68
|
-
/**
|
|
69
|
-
* Disable temporary a rule set
|
|
70
|
-
*
|
|
71
|
-
* @param componentComputedName Name of the component to disable the ruleset for
|
|
72
|
-
*/
|
|
73
|
-
disableRuleSetFor(componentComputedName: string): void;
|
|
74
|
-
/**
|
|
75
|
-
* Localize the url, replacing the language marker
|
|
76
|
-
*
|
|
77
|
-
* @param url
|
|
78
|
-
* @param language
|
|
79
|
-
*/
|
|
80
|
-
resolveUrlWithLang(url: string, language: string): string;
|
|
81
|
-
/**
|
|
82
|
-
* Retrieve template as json from a given url
|
|
83
|
-
*
|
|
84
|
-
* @param url
|
|
85
|
-
*/
|
|
86
|
-
retrieveTemplate(url: string): Promise<PlaceholderRequestReply>;
|
|
87
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<RulesEngineService, [null, null, null, null, { optional: true; }]>;
|
|
88
|
-
static ɵprov: i0.ɵɵInjectableDeclaration<RulesEngineService>;
|
|
89
|
-
}
|
|
90
|
-
//# sourceMappingURL=rules-engine.service.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"rules-engine.service.d.ts","sourceRoot":"","sources":["../../src/services/rules-engine.service.ts"],"names":[],"mappings":"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"}
|