@o3r/localization 12.1.0-prerelease.10 → 12.1.0-prerelease.12

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 (65) hide show
  1. package/builders/helpers/localization.generator.js.map +1 -0
  2. package/builders/i18n/index.js.map +1 -0
  3. package/builders/i18n/schema.js.map +1 -0
  4. package/builders/localization/index.js.map +1 -0
  5. package/builders/localization/schema.js.map +1 -0
  6. package/builders/localization-extractor/index.js.map +1 -0
  7. package/builders/localization-extractor/schema.js.map +1 -0
  8. package/builders/localization-extractor/validations.js.map +1 -0
  9. package/builders/metadata-check/helpers/index.js.map +1 -0
  10. package/builders/metadata-check/helpers/localization-metadata-comparison.helper.js.map +1 -0
  11. package/builders/metadata-check/index.js.map +1 -0
  12. package/builders/metadata-check/schema.js.map +1 -0
  13. package/esm2022/annotations/index.mjs +2 -0
  14. package/esm2022/annotations/localization.mjs +29 -0
  15. package/esm2022/core/index.mjs +5 -0
  16. package/esm2022/core/json-localization.interface.mjs +2 -0
  17. package/esm2022/core/localization.configuration.mjs +15 -0
  18. package/esm2022/core/translatable.mjs +2 -0
  19. package/esm2022/core/translate-messageformat-lazy.compiler.mjs +67 -0
  20. package/esm2022/devkit/index.mjs +7 -0
  21. package/esm2022/devkit/localization-devkit.interface.mjs +2 -0
  22. package/esm2022/devkit/localization-devtools.console.service.mjs +87 -0
  23. package/esm2022/devkit/localization-devtools.message.service.mjs +129 -0
  24. package/esm2022/devkit/localization-devtools.module.mjs +47 -0
  25. package/esm2022/devkit/localization-devtools.service.mjs +95 -0
  26. package/esm2022/devkit/localization-devtools.token.mjs +8 -0
  27. package/esm2022/o3r-localization.mjs +5 -0
  28. package/esm2022/public_api.mjs +6 -0
  29. package/esm2022/rules-engine/localization.handler-action.mjs +30 -0
  30. package/esm2022/rules-engine/localization.interfaces.mjs +3 -0
  31. package/esm2022/rules-engine/localization.rules-engine.module.mjs +23 -0
  32. package/esm2022/rules-engine/o3r-localization-rules-engine.mjs +5 -0
  33. package/esm2022/rules-engine/public_api.mjs +4 -0
  34. package/esm2022/stores/index.mjs +7 -0
  35. package/esm2022/stores/localization-override/localization-override.actions.mjs +8 -0
  36. package/esm2022/stores/localization-override/localization-override.module.mjs +39 -0
  37. package/esm2022/stores/localization-override/localization-override.reducer.mjs +17 -0
  38. package/esm2022/stores/localization-override/localization-override.selectors.mjs +7 -0
  39. package/esm2022/stores/localization-override/localization-override.state.mjs +5 -0
  40. package/esm2022/stores/localization-override/localization-override.sync.mjs +11 -0
  41. package/esm2022/tools/index.mjs +13 -0
  42. package/esm2022/tools/localization-translate.directive.mjs +77 -0
  43. package/esm2022/tools/localization-translate.pipe.mjs +86 -0
  44. package/esm2022/tools/localization.module.mjs +89 -0
  45. package/esm2022/tools/localization.provider.mjs +25 -0
  46. package/esm2022/tools/localization.service.mjs +192 -0
  47. package/esm2022/tools/localization.token.mjs +4 -0
  48. package/esm2022/tools/localized-currency.pipe.mjs +32 -0
  49. package/esm2022/tools/localized-date.pipe.mjs +32 -0
  50. package/esm2022/tools/localized-decimal.pipe.mjs +32 -0
  51. package/esm2022/tools/text-direction.service.mjs +43 -0
  52. package/esm2022/tools/text-directionality.service.mjs +26 -0
  53. package/esm2022/tools/translations-loader.mjs +112 -0
  54. package/package.json +6 -6
  55. package/schematics/add-localization-key/index.js.map +1 -0
  56. package/schematics/add-localization-key/schema.js.map +1 -0
  57. package/schematics/cms-adapter/index.js.map +1 -0
  58. package/schematics/localization-base/index.js.map +1 -0
  59. package/schematics/localization-to-component/index.js.map +1 -0
  60. package/schematics/localization-to-component/schema.js.map +1 -0
  61. package/schematics/ng-add/helpers/devtools-registration.js.map +1 -0
  62. package/schematics/ng-add/index.js.map +1 -0
  63. package/schematics/ng-add/schema.js.map +1 -0
  64. package/schematics/ng-update/v10-0/index.js.map +1 -0
  65. package/schematics/ng-update/v11-6/index.js.map +1 -0
@@ -0,0 +1,47 @@
1
+ import { NgModule, } from '@angular/core';
2
+ import { LocalizationModule, } from '../tools/index';
3
+ import { LocalizationDevtoolsConsoleService, } from './localization-devtools.console.service';
4
+ import { LocalizationDevtoolsMessageService, } from './localization-devtools.message.service';
5
+ import { OtterLocalizationDevtools, } from './localization-devtools.service';
6
+ import { OTTER_LOCALIZATION_DEVTOOLS_DEFAULT_OPTIONS, OTTER_LOCALIZATION_DEVTOOLS_OPTIONS, } from './localization-devtools.token';
7
+ import * as i0 from "@angular/core";
8
+ export class LocalizationDevtoolsModule {
9
+ /**
10
+ * Initialize Otter Devtools
11
+ * @param options
12
+ */
13
+ static instrument(options) {
14
+ return {
15
+ ngModule: LocalizationDevtoolsModule,
16
+ providers: [
17
+ { provide: OTTER_LOCALIZATION_DEVTOOLS_OPTIONS, useValue: { ...OTTER_LOCALIZATION_DEVTOOLS_DEFAULT_OPTIONS, ...options }, multi: false },
18
+ LocalizationDevtoolsMessageService,
19
+ LocalizationDevtoolsConsoleService,
20
+ OtterLocalizationDevtools
21
+ ]
22
+ };
23
+ }
24
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LocalizationDevtoolsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
25
+ /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: LocalizationDevtoolsModule, imports: [LocalizationModule] }); }
26
+ /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LocalizationDevtoolsModule, providers: [
27
+ { provide: OTTER_LOCALIZATION_DEVTOOLS_OPTIONS, useValue: OTTER_LOCALIZATION_DEVTOOLS_DEFAULT_OPTIONS },
28
+ LocalizationDevtoolsMessageService,
29
+ LocalizationDevtoolsConsoleService,
30
+ OtterLocalizationDevtools
31
+ ], imports: [LocalizationModule] }); }
32
+ }
33
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LocalizationDevtoolsModule, decorators: [{
34
+ type: NgModule,
35
+ args: [{
36
+ imports: [
37
+ LocalizationModule
38
+ ],
39
+ providers: [
40
+ { provide: OTTER_LOCALIZATION_DEVTOOLS_OPTIONS, useValue: OTTER_LOCALIZATION_DEVTOOLS_DEFAULT_OPTIONS },
41
+ LocalizationDevtoolsMessageService,
42
+ LocalizationDevtoolsConsoleService,
43
+ OtterLocalizationDevtools
44
+ ]
45
+ }]
46
+ }] });
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWxpemF0aW9uLWRldnRvb2xzLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9kZXZraXQvbG9jYWxpemF0aW9uLWRldnRvb2xzLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsUUFBUSxHQUNULE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDTCxrQkFBa0IsR0FDbkIsTUFBTSxnQkFBZ0IsQ0FBQztBQUl4QixPQUFPLEVBQ0wsa0NBQWtDLEdBQ25DLE1BQU0seUNBQXlDLENBQUM7QUFDakQsT0FBTyxFQUNMLGtDQUFrQyxHQUNuQyxNQUFNLHlDQUF5QyxDQUFDO0FBQ2pELE9BQU8sRUFDTCx5QkFBeUIsR0FDMUIsTUFBTSxpQ0FBaUMsQ0FBQztBQUN6QyxPQUFPLEVBQ0wsMkNBQTJDLEVBQzNDLG1DQUFtQyxHQUNwQyxNQUFNLCtCQUErQixDQUFDOztBQWF2QyxNQUFNLE9BQU8sMEJBQTBCO0lBQ3JDOzs7T0FHRztJQUNJLE1BQU0sQ0FBQyxVQUFVLENBQUMsT0FBb0Q7UUFDM0UsT0FBTztZQUNMLFFBQVEsRUFBRSwwQkFBMEI7WUFDcEMsU0FBUyxFQUFFO2dCQUNULEVBQUUsT0FBTyxFQUFFLG1DQUFtQyxFQUFFLFFBQVEsRUFBRSxFQUFFLEdBQUcsMkNBQTJDLEVBQUUsR0FBRyxPQUFPLEVBQUUsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFO2dCQUN4SSxrQ0FBa0M7Z0JBQ2xDLGtDQUFrQztnQkFDbEMseUJBQXlCO2FBQzFCO1NBQ0YsQ0FBQztJQUNKLENBQUM7a0lBZlUsMEJBQTBCO21JQUExQiwwQkFBMEIsWUFUbkMsa0JBQWtCO21JQVNULDBCQUEwQixhQVAxQjtZQUNULEVBQUUsT0FBTyxFQUFFLG1DQUFtQyxFQUFFLFFBQVEsRUFBRSwyQ0FBMkMsRUFBRTtZQUN2RyxrQ0FBa0M7WUFDbEMsa0NBQWtDO1lBQ2xDLHlCQUF5QjtTQUMxQixZQVBDLGtCQUFrQjs7NEZBU1QsMEJBQTBCO2tCQVh0QyxRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRTt3QkFDUCxrQkFBa0I7cUJBQ25CO29CQUNELFNBQVMsRUFBRTt3QkFDVCxFQUFFLE9BQU8sRUFBRSxtQ0FBbUMsRUFBRSxRQUFRLEVBQUUsMkNBQTJDLEVBQUU7d0JBQ3ZHLGtDQUFrQzt3QkFDbEMsa0NBQWtDO3dCQUNsQyx5QkFBeUI7cUJBQzFCO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgTW9kdWxlV2l0aFByb3ZpZGVycyxcbiAgTmdNb2R1bGUsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgTG9jYWxpemF0aW9uTW9kdWxlLFxufSBmcm9tICcuLi90b29scy9pbmRleCc7XG5pbXBvcnQgdHlwZSB7XG4gIExvY2FsaXphdGlvbkRldnRvb2xzU2VydmljZU9wdGlvbnMsXG59IGZyb20gJy4vbG9jYWxpemF0aW9uLWRldmtpdC5pbnRlcmZhY2UnO1xuaW1wb3J0IHtcbiAgTG9jYWxpemF0aW9uRGV2dG9vbHNDb25zb2xlU2VydmljZSxcbn0gZnJvbSAnLi9sb2NhbGl6YXRpb24tZGV2dG9vbHMuY29uc29sZS5zZXJ2aWNlJztcbmltcG9ydCB7XG4gIExvY2FsaXphdGlvbkRldnRvb2xzTWVzc2FnZVNlcnZpY2UsXG59IGZyb20gJy4vbG9jYWxpemF0aW9uLWRldnRvb2xzLm1lc3NhZ2Uuc2VydmljZSc7XG5pbXBvcnQge1xuICBPdHRlckxvY2FsaXphdGlvbkRldnRvb2xzLFxufSBmcm9tICcuL2xvY2FsaXphdGlvbi1kZXZ0b29scy5zZXJ2aWNlJztcbmltcG9ydCB7XG4gIE9UVEVSX0xPQ0FMSVpBVElPTl9ERVZUT09MU19ERUZBVUxUX09QVElPTlMsXG4gIE9UVEVSX0xPQ0FMSVpBVElPTl9ERVZUT09MU19PUFRJT05TLFxufSBmcm9tICcuL2xvY2FsaXphdGlvbi1kZXZ0b29scy50b2tlbic7XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtcbiAgICBMb2NhbGl6YXRpb25Nb2R1bGVcbiAgXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAgeyBwcm92aWRlOiBPVFRFUl9MT0NBTElaQVRJT05fREVWVE9PTFNfT1BUSU9OUywgdXNlVmFsdWU6IE9UVEVSX0xPQ0FMSVpBVElPTl9ERVZUT09MU19ERUZBVUxUX09QVElPTlMgfSxcbiAgICBMb2NhbGl6YXRpb25EZXZ0b29sc01lc3NhZ2VTZXJ2aWNlLFxuICAgIExvY2FsaXphdGlvbkRldnRvb2xzQ29uc29sZVNlcnZpY2UsXG4gICAgT3R0ZXJMb2NhbGl6YXRpb25EZXZ0b29sc1xuICBdXG59KVxuZXhwb3J0IGNsYXNzIExvY2FsaXphdGlvbkRldnRvb2xzTW9kdWxlIHtcbiAgLyoqXG4gICAqIEluaXRpYWxpemUgT3R0ZXIgRGV2dG9vbHNcbiAgICogQHBhcmFtIG9wdGlvbnNcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgaW5zdHJ1bWVudChvcHRpb25zOiBQYXJ0aWFsPExvY2FsaXphdGlvbkRldnRvb2xzU2VydmljZU9wdGlvbnM+KTogTW9kdWxlV2l0aFByb3ZpZGVyczxMb2NhbGl6YXRpb25EZXZ0b29sc01vZHVsZT4ge1xuICAgIHJldHVybiB7XG4gICAgICBuZ01vZHVsZTogTG9jYWxpemF0aW9uRGV2dG9vbHNNb2R1bGUsXG4gICAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgeyBwcm92aWRlOiBPVFRFUl9MT0NBTElaQVRJT05fREVWVE9PTFNfT1BUSU9OUywgdXNlVmFsdWU6IHsgLi4uT1RURVJfTE9DQUxJWkFUSU9OX0RFVlRPT0xTX0RFRkFVTFRfT1BUSU9OUywgLi4ub3B0aW9ucyB9LCBtdWx0aTogZmFsc2UgfSxcbiAgICAgICAgTG9jYWxpemF0aW9uRGV2dG9vbHNNZXNzYWdlU2VydmljZSxcbiAgICAgICAgTG9jYWxpemF0aW9uRGV2dG9vbHNDb25zb2xlU2VydmljZSxcbiAgICAgICAgT3R0ZXJMb2NhbGl6YXRpb25EZXZ0b29sc1xuICAgICAgXVxuICAgIH07XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,95 @@
1
+ import { ApplicationRef, Injectable, } from '@angular/core';
2
+ import { TranslateCompiler, } from '@ngx-translate/core';
3
+ import { firstValueFrom, lastValueFrom, } from 'rxjs';
4
+ import { LocalizationService, } from '../tools';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "../tools";
7
+ import * as i2 from "@ngx-translate/core";
8
+ export class OtterLocalizationDevtools {
9
+ constructor(localizationService, translateCompiler, appRef) {
10
+ this.localizationService = localizationService;
11
+ this.translateCompiler = translateCompiler;
12
+ this.appRef = appRef;
13
+ }
14
+ /**
15
+ * Is the translation deactivation enabled
16
+ */
17
+ isTranslationDeactivationEnabled() {
18
+ return this.localizationService.isTranslationDeactivationEnabled();
19
+ }
20
+ /**
21
+ * Show localization keys
22
+ * @param value value enforced by the DevTools extension
23
+ */
24
+ showLocalizationKeys(value) {
25
+ this.localizationService.toggleShowKeys(value);
26
+ this.appRef.tick();
27
+ }
28
+ /**
29
+ * Returns the current language
30
+ */
31
+ getCurrentLanguage() {
32
+ return this.localizationService.getCurrentLanguage();
33
+ }
34
+ /**
35
+ * Setup a listener on language change
36
+ * @param fn called when the language is changed in the app
37
+ */
38
+ onLanguageChange(fn) {
39
+ return this.localizationService
40
+ .getTranslateService()
41
+ .onLangChange
42
+ .subscribe(({ lang }) => {
43
+ fn(lang);
44
+ });
45
+ }
46
+ /**
47
+ * Switch the current language to the specified value
48
+ * @param language new language to switch to
49
+ */
50
+ async switchLanguage(language) {
51
+ if (!language) {
52
+ return;
53
+ }
54
+ await lastValueFrom(this.localizationService.useLanguage(language));
55
+ this.appRef.tick();
56
+ }
57
+ /**
58
+ * Updates the specified localization key/values for the current language.
59
+ *
60
+ * Recommendation: To be used with a small number of keys to update to avoid performance issues.
61
+ * @param keyValues key/values to update
62
+ * @param language if not provided, the current language value
63
+ */
64
+ async updateLocalizationKeys(keyValues, language) {
65
+ const lang = language || this.getCurrentLanguage();
66
+ const translateService = this.localizationService.getTranslateService();
67
+ await firstValueFrom(translateService.getTranslation(lang));
68
+ Object.entries(keyValues).forEach(([key, value]) => {
69
+ translateService.set(key, value, lang);
70
+ });
71
+ this.appRef.tick();
72
+ }
73
+ /**
74
+ * Reload a language from the language file
75
+ * @see https://github.com/ngx-translate/core/blob/master/packages/core/lib/translate.service.ts#L490
76
+ * @param language language to reload
77
+ */
78
+ async reloadLocalizationKeys(language) {
79
+ const lang = language || this.getCurrentLanguage();
80
+ if (this.translateCompiler.clearCache) {
81
+ this.translateCompiler.clearCache();
82
+ }
83
+ const initialLocs = await lastValueFrom(this.localizationService
84
+ .getTranslateService()
85
+ .reloadLang(lang));
86
+ this.localizationService.getTranslateService().setTranslation(language || this.getCurrentLanguage(), initialLocs);
87
+ this.appRef.tick();
88
+ }
89
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: OtterLocalizationDevtools, deps: [{ token: i1.LocalizationService }, { token: i2.TranslateCompiler }, { token: i0.ApplicationRef }], target: i0.ɵɵFactoryTarget.Injectable }); }
90
+ /** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: OtterLocalizationDevtools }); }
91
+ }
92
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: OtterLocalizationDevtools, decorators: [{
93
+ type: Injectable
94
+ }], ctorParameters: () => [{ type: i1.LocalizationService }, { type: i2.TranslateCompiler }, { type: i0.ApplicationRef }] });
95
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWxpemF0aW9uLWRldnRvb2xzLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZGV2a2l0L2xvY2FsaXphdGlvbi1kZXZ0b29scy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxjQUFjLEVBQ2QsVUFBVSxHQUNYLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDTCxpQkFBaUIsR0FDbEIsTUFBTSxxQkFBcUIsQ0FBQztBQUM3QixPQUFPLEVBQ0wsY0FBYyxFQUNkLGFBQWEsR0FFZCxNQUFNLE1BQU0sQ0FBQztBQUlkLE9BQU8sRUFDTCxtQkFBbUIsR0FDcEIsTUFBTSxVQUFVLENBQUM7Ozs7QUFHbEIsTUFBTSxPQUFPLHlCQUF5QjtJQUNwQyxZQUNtQixtQkFBd0MsRUFDeEMsaUJBQW9DLEVBQ3BDLE1BQXNCO1FBRnRCLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFDeEMsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQUNwQyxXQUFNLEdBQU4sTUFBTSxDQUFnQjtJQUN0QyxDQUFDO0lBRUo7O09BRUc7SUFDSSxnQ0FBZ0M7UUFDckMsT0FBTyxJQUFJLENBQUMsbUJBQW1CLENBQUMsZ0NBQWdDLEVBQUUsQ0FBQztJQUNyRSxDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksb0JBQW9CLENBQUMsS0FBZTtRQUN6QyxJQUFJLENBQUMsbUJBQW1CLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQy9DLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUVEOztPQUVHO0lBQ0ksa0JBQWtCO1FBQ3ZCLE9BQU8sSUFBSSxDQUFDLG1CQUFtQixDQUFDLGtCQUFrQixFQUFFLENBQUM7SUFDdkQsQ0FBQztJQUVEOzs7T0FHRztJQUNJLGdCQUFnQixDQUFDLEVBQTZCO1FBQ25ELE9BQU8sSUFBSSxDQUFDLG1CQUFtQjthQUM1QixtQkFBbUIsRUFBRTthQUNyQixZQUFZO2FBQ1osU0FBUyxDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFO1lBQ3RCLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNYLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVEOzs7T0FHRztJQUNJLEtBQUssQ0FBQyxjQUFjLENBQUMsUUFBNEI7UUFDdEQsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ2QsT0FBTztRQUNULENBQUM7UUFDRCxNQUFNLGFBQWEsQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7UUFDcEUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNyQixDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0ksS0FBSyxDQUFDLHNCQUFzQixDQUFDLFNBQW9DLEVBQUUsUUFBaUI7UUFDekYsTUFBTSxJQUFJLEdBQUcsUUFBUSxJQUFJLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1FBQ25ELE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDLG1CQUFtQixFQUFFLENBQUM7UUFDeEUsTUFBTSxjQUFjLENBQUMsZ0JBQWdCLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7UUFDNUQsTUFBTSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsRUFBRSxFQUFFO1lBQ2pELGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQ3pDLENBQUMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNyQixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLEtBQUssQ0FBQyxzQkFBc0IsQ0FBQyxRQUFpQjtRQUNuRCxNQUFNLElBQUksR0FBRyxRQUFRLElBQUksSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7UUFDbkQsSUFBSyxJQUFJLENBQUMsaUJBQXdELENBQUMsVUFBVSxFQUFFLENBQUM7WUFDN0UsSUFBSSxDQUFDLGlCQUF3RCxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQzlFLENBQUM7UUFDRCxNQUFNLFdBQVcsR0FBRyxNQUFNLGFBQWEsQ0FDckMsSUFBSSxDQUFDLG1CQUFtQjthQUNyQixtQkFBbUIsRUFBRTthQUNyQixVQUFVLENBQUMsSUFBSSxDQUFDLENBQ3BCLENBQUM7UUFDRixJQUFJLENBQUMsbUJBQW1CLENBQUMsbUJBQW1CLEVBQUUsQ0FBQyxjQUFjLENBQzNELFFBQVEsSUFBSSxJQUFJLENBQUMsa0JBQWtCLEVBQUUsRUFDckMsV0FBVyxDQUNaLENBQUM7UUFDRixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3JCLENBQUM7a0lBNUZVLHlCQUF5QjtzSUFBekIseUJBQXlCOzs0RkFBekIseUJBQXlCO2tCQURyQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQXBwbGljYXRpb25SZWYsXG4gIEluamVjdGFibGUsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgVHJhbnNsYXRlQ29tcGlsZXIsXG59IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHtcbiAgZmlyc3RWYWx1ZUZyb20sXG4gIGxhc3RWYWx1ZUZyb20sXG4gIFN1YnNjcmlwdGlvbixcbn0gZnJvbSAncnhqcyc7XG5pbXBvcnQgdHlwZSB7XG4gIFRyYW5zbGF0ZU1lc3NhZ2VGb3JtYXRMYXp5Q29tcGlsZXIsXG59IGZyb20gJy4uL2NvcmUnO1xuaW1wb3J0IHtcbiAgTG9jYWxpemF0aW9uU2VydmljZSxcbn0gZnJvbSAnLi4vdG9vbHMnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgT3R0ZXJMb2NhbGl6YXRpb25EZXZ0b29scyB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgbG9jYWxpemF0aW9uU2VydmljZTogTG9jYWxpemF0aW9uU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHRyYW5zbGF0ZUNvbXBpbGVyOiBUcmFuc2xhdGVDb21waWxlcixcbiAgICBwcml2YXRlIHJlYWRvbmx5IGFwcFJlZjogQXBwbGljYXRpb25SZWZcbiAgKSB7fVxuXG4gIC8qKlxuICAgKiBJcyB0aGUgdHJhbnNsYXRpb24gZGVhY3RpdmF0aW9uIGVuYWJsZWRcbiAgICovXG4gIHB1YmxpYyBpc1RyYW5zbGF0aW9uRGVhY3RpdmF0aW9uRW5hYmxlZCgpIHtcbiAgICByZXR1cm4gdGhpcy5sb2NhbGl6YXRpb25TZXJ2aWNlLmlzVHJhbnNsYXRpb25EZWFjdGl2YXRpb25FbmFibGVkKCk7XG4gIH1cblxuICAvKipcbiAgICogU2hvdyBsb2NhbGl6YXRpb24ga2V5c1xuICAgKiBAcGFyYW0gdmFsdWUgdmFsdWUgZW5mb3JjZWQgYnkgdGhlIERldlRvb2xzIGV4dGVuc2lvblxuICAgKi9cbiAgcHVibGljIHNob3dMb2NhbGl6YXRpb25LZXlzKHZhbHVlPzogYm9vbGVhbik6IHZvaWQge1xuICAgIHRoaXMubG9jYWxpemF0aW9uU2VydmljZS50b2dnbGVTaG93S2V5cyh2YWx1ZSk7XG4gICAgdGhpcy5hcHBSZWYudGljaygpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIGN1cnJlbnQgbGFuZ3VhZ2VcbiAgICovXG4gIHB1YmxpYyBnZXRDdXJyZW50TGFuZ3VhZ2UoKSB7XG4gICAgcmV0dXJuIHRoaXMubG9jYWxpemF0aW9uU2VydmljZS5nZXRDdXJyZW50TGFuZ3VhZ2UoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXR1cCBhIGxpc3RlbmVyIG9uIGxhbmd1YWdlIGNoYW5nZVxuICAgKiBAcGFyYW0gZm4gY2FsbGVkIHdoZW4gdGhlIGxhbmd1YWdlIGlzIGNoYW5nZWQgaW4gdGhlIGFwcFxuICAgKi9cbiAgcHVibGljIG9uTGFuZ3VhZ2VDaGFuZ2UoZm46IChsYW5ndWFnZTogc3RyaW5nKSA9PiBhbnkpOiBTdWJzY3JpcHRpb24ge1xuICAgIHJldHVybiB0aGlzLmxvY2FsaXphdGlvblNlcnZpY2VcbiAgICAgIC5nZXRUcmFuc2xhdGVTZXJ2aWNlKClcbiAgICAgIC5vbkxhbmdDaGFuZ2VcbiAgICAgIC5zdWJzY3JpYmUoKHsgbGFuZyB9KSA9PiB7XG4gICAgICAgIGZuKGxhbmcpO1xuICAgICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogU3dpdGNoIHRoZSBjdXJyZW50IGxhbmd1YWdlIHRvIHRoZSBzcGVjaWZpZWQgdmFsdWVcbiAgICogQHBhcmFtIGxhbmd1YWdlIG5ldyBsYW5ndWFnZSB0byBzd2l0Y2ggdG9cbiAgICovXG4gIHB1YmxpYyBhc3luYyBzd2l0Y2hMYW5ndWFnZShsYW5ndWFnZTogc3RyaW5nIHwgdW5kZWZpbmVkKSB7XG4gICAgaWYgKCFsYW5ndWFnZSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBhd2FpdCBsYXN0VmFsdWVGcm9tKHRoaXMubG9jYWxpemF0aW9uU2VydmljZS51c2VMYW5ndWFnZShsYW5ndWFnZSkpO1xuICAgIHRoaXMuYXBwUmVmLnRpY2soKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBVcGRhdGVzIHRoZSBzcGVjaWZpZWQgbG9jYWxpemF0aW9uIGtleS92YWx1ZXMgZm9yIHRoZSBjdXJyZW50IGxhbmd1YWdlLlxuICAgKlxuICAgKiBSZWNvbW1lbmRhdGlvbjogVG8gYmUgdXNlZCB3aXRoIGEgc21hbGwgbnVtYmVyIG9mIGtleXMgdG8gdXBkYXRlIHRvIGF2b2lkIHBlcmZvcm1hbmNlIGlzc3Vlcy5cbiAgICogQHBhcmFtIGtleVZhbHVlcyBrZXkvdmFsdWVzIHRvIHVwZGF0ZVxuICAgKiBAcGFyYW0gbGFuZ3VhZ2UgaWYgbm90IHByb3ZpZGVkLCB0aGUgY3VycmVudCBsYW5ndWFnZSB2YWx1ZVxuICAgKi9cbiAgcHVibGljIGFzeW5jIHVwZGF0ZUxvY2FsaXphdGlvbktleXMoa2V5VmFsdWVzOiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9LCBsYW5ndWFnZT86IHN0cmluZykge1xuICAgIGNvbnN0IGxhbmcgPSBsYW5ndWFnZSB8fCB0aGlzLmdldEN1cnJlbnRMYW5ndWFnZSgpO1xuICAgIGNvbnN0IHRyYW5zbGF0ZVNlcnZpY2UgPSB0aGlzLmxvY2FsaXphdGlvblNlcnZpY2UuZ2V0VHJhbnNsYXRlU2VydmljZSgpO1xuICAgIGF3YWl0IGZpcnN0VmFsdWVGcm9tKHRyYW5zbGF0ZVNlcnZpY2UuZ2V0VHJhbnNsYXRpb24obGFuZykpO1xuICAgIE9iamVjdC5lbnRyaWVzKGtleVZhbHVlcykuZm9yRWFjaCgoW2tleSwgdmFsdWVdKSA9PiB7XG4gICAgICB0cmFuc2xhdGVTZXJ2aWNlLnNldChrZXksIHZhbHVlLCBsYW5nKTtcbiAgICB9KTtcbiAgICB0aGlzLmFwcFJlZi50aWNrKCk7XG4gIH1cblxuICAvKipcbiAgICogUmVsb2FkIGEgbGFuZ3VhZ2UgZnJvbSB0aGUgbGFuZ3VhZ2UgZmlsZVxuICAgKiBAc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9uZ3gtdHJhbnNsYXRlL2NvcmUvYmxvYi9tYXN0ZXIvcGFja2FnZXMvY29yZS9saWIvdHJhbnNsYXRlLnNlcnZpY2UudHMjTDQ5MFxuICAgKiBAcGFyYW0gbGFuZ3VhZ2UgbGFuZ3VhZ2UgdG8gcmVsb2FkXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgcmVsb2FkTG9jYWxpemF0aW9uS2V5cyhsYW5ndWFnZT86IHN0cmluZykge1xuICAgIGNvbnN0IGxhbmcgPSBsYW5ndWFnZSB8fCB0aGlzLmdldEN1cnJlbnRMYW5ndWFnZSgpO1xuICAgIGlmICgodGhpcy50cmFuc2xhdGVDb21waWxlciBhcyBUcmFuc2xhdGVNZXNzYWdlRm9ybWF0TGF6eUNvbXBpbGVyKS5jbGVhckNhY2hlKSB7XG4gICAgICAodGhpcy50cmFuc2xhdGVDb21waWxlciBhcyBUcmFuc2xhdGVNZXNzYWdlRm9ybWF0TGF6eUNvbXBpbGVyKS5jbGVhckNhY2hlKCk7XG4gICAgfVxuICAgIGNvbnN0IGluaXRpYWxMb2NzID0gYXdhaXQgbGFzdFZhbHVlRnJvbShcbiAgICAgIHRoaXMubG9jYWxpemF0aW9uU2VydmljZVxuICAgICAgICAuZ2V0VHJhbnNsYXRlU2VydmljZSgpXG4gICAgICAgIC5yZWxvYWRMYW5nKGxhbmcpXG4gICAgKTtcbiAgICB0aGlzLmxvY2FsaXphdGlvblNlcnZpY2UuZ2V0VHJhbnNsYXRlU2VydmljZSgpLnNldFRyYW5zbGF0aW9uKFxuICAgICAgbGFuZ3VhZ2UgfHwgdGhpcy5nZXRDdXJyZW50TGFuZ3VhZ2UoKSxcbiAgICAgIGluaXRpYWxMb2NzXG4gICAgKTtcbiAgICB0aGlzLmFwcFJlZi50aWNrKCk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,8 @@
1
+ import { InjectionToken, } from '@angular/core';
2
+ export const OTTER_LOCALIZATION_DEVTOOLS_DEFAULT_OPTIONS = {
3
+ isActivatedOnBootstrap: false,
4
+ isActivatedOnBootstrapWhenCMSContext: true,
5
+ metadataFilePath: './metadata/localisation.metadata.json'
6
+ };
7
+ export const OTTER_LOCALIZATION_DEVTOOLS_OPTIONS = new InjectionToken('Otter Localization Devtools options');
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWxpemF0aW9uLWRldnRvb2xzLnRva2VuLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2RldmtpdC9sb2NhbGl6YXRpb24tZGV2dG9vbHMudG9rZW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLGNBQWMsR0FDZixNQUFNLGVBQWUsQ0FBQztBQUt2QixNQUFNLENBQUMsTUFBTSwyQ0FBMkMsR0FBaUQ7SUFDdkcsc0JBQXNCLEVBQUUsS0FBSztJQUM3QixvQ0FBb0MsRUFBRSxJQUFJO0lBQzFDLGdCQUFnQixFQUFFLHVDQUF1QztDQUNqRCxDQUFDO0FBRVgsTUFBTSxDQUFDLE1BQU0sbUNBQW1DLEdBQUcsSUFBSSxjQUFjLENBQXFDLHFDQUFxQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBJbmplY3Rpb25Ub2tlbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBMb2NhbGl6YXRpb25EZXZ0b29sc1NlcnZpY2VPcHRpb25zLFxufSBmcm9tICcuL2xvY2FsaXphdGlvbi1kZXZraXQuaW50ZXJmYWNlJztcblxuZXhwb3J0IGNvbnN0IE9UVEVSX0xPQ0FMSVpBVElPTl9ERVZUT09MU19ERUZBVUxUX09QVElPTlM6IFJlYWRvbmx5PExvY2FsaXphdGlvbkRldnRvb2xzU2VydmljZU9wdGlvbnM+ID0ge1xuICBpc0FjdGl2YXRlZE9uQm9vdHN0cmFwOiBmYWxzZSxcbiAgaXNBY3RpdmF0ZWRPbkJvb3RzdHJhcFdoZW5DTVNDb250ZXh0OiB0cnVlLFxuICBtZXRhZGF0YUZpbGVQYXRoOiAnLi9tZXRhZGF0YS9sb2NhbGlzYXRpb24ubWV0YWRhdGEuanNvbidcbn0gYXMgY29uc3Q7XG5cbmV4cG9ydCBjb25zdCBPVFRFUl9MT0NBTElaQVRJT05fREVWVE9PTFNfT1BUSU9OUyA9IG5ldyBJbmplY3Rpb25Ub2tlbjxMb2NhbGl6YXRpb25EZXZ0b29sc1NlcnZpY2VPcHRpb25zPignT3R0ZXIgTG9jYWxpemF0aW9uIERldnRvb2xzIG9wdGlvbnMnKTtcbiJdfQ==
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './public_api';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibzNyLWxvY2FsaXphdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9vM3ItbG9jYWxpemF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljX2FwaSc7XG4iXX0=
@@ -0,0 +1,6 @@
1
+ export * from './annotations/index';
2
+ export * from './core/index';
3
+ export * from './devkit/index';
4
+ export * from './stores/index';
5
+ export * from './tools/index';
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wdWJsaWNfYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLGNBQWMscUJBQXFCLENBQUM7QUFDcEMsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxnQkFBZ0IsQ0FBQztBQUMvQixjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMsZUFBZSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHR5cGUgeyBUcmFuc2xhdGlvbiB9IGZyb20gJ0BvM3IvY29yZSc7XG5leHBvcnQgKiBmcm9tICcuL2Fubm90YXRpb25zL2luZGV4JztcbmV4cG9ydCAqIGZyb20gJy4vY29yZS9pbmRleCc7XG5leHBvcnQgKiBmcm9tICcuL2RldmtpdC9pbmRleCc7XG5leHBvcnQgKiBmcm9tICcuL3N0b3Jlcy9pbmRleCc7XG5leHBvcnQgKiBmcm9tICcuL3Rvb2xzL2luZGV4JztcbiJdfQ==
@@ -0,0 +1,30 @@
1
+ import { Injectable, } from '@angular/core';
2
+ import { Store, } from '@ngrx/store';
3
+ import { RULES_ENGINE_LOCALISATION_UPDATE_ACTION_TYPE, } from './localization.interfaces';
4
+ import { setLocalizationOverride, } from '@o3r/localization';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "@ngrx/store";
7
+ /**
8
+ * Service to handle async Localization actions
9
+ */
10
+ export class LocalizationRulesEngineActionHandler {
11
+ constructor(store) {
12
+ this.store = store;
13
+ /** @inheritdoc */
14
+ this.supportingActions = [RULES_ENGINE_LOCALISATION_UPDATE_ACTION_TYPE];
15
+ }
16
+ /** @inheritdoc */
17
+ executeActions(actions) {
18
+ const localizationOverrides = actions.reduce((acc, { key, value }) => {
19
+ acc[key] = value;
20
+ return acc;
21
+ }, {});
22
+ this.store.dispatch(setLocalizationOverride({ state: { localizationOverrides } }));
23
+ }
24
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LocalizationRulesEngineActionHandler, deps: [{ token: i1.Store }], target: i0.ɵɵFactoryTarget.Injectable }); }
25
+ /** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LocalizationRulesEngineActionHandler }); }
26
+ }
27
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LocalizationRulesEngineActionHandler, decorators: [{
28
+ type: Injectable
29
+ }], ctorParameters: () => [{ type: i1.Store }] });
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWxpemF0aW9uLmhhbmRsZXItYWN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3J1bGVzLWVuZ2luZS9sb2NhbGl6YXRpb24uaGFuZGxlci1hY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFVBQVUsR0FDWCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0wsS0FBSyxHQUNOLE1BQU0sYUFBYSxDQUFDO0FBSXJCLE9BQU8sRUFFTCw0Q0FBNEMsR0FDN0MsTUFBTSwyQkFBMkIsQ0FBQztBQUNuQyxPQUFPLEVBRUwsdUJBQXVCLEdBQ3hCLE1BQU0sbUJBQW1CLENBQUM7OztBQUUzQjs7R0FFRztBQUVILE1BQU0sT0FBTyxvQ0FBb0M7SUFJL0MsWUFBNkIsS0FBdUM7UUFBdkMsVUFBSyxHQUFMLEtBQUssQ0FBa0M7UUFIcEUsa0JBQWtCO1FBQ0Ysc0JBQWlCLEdBQUcsQ0FBQyw0Q0FBNEMsQ0FBVSxDQUFDO0lBRXJCLENBQUM7SUFFeEUsa0JBQWtCO0lBQ1gsY0FBYyxDQUFDLE9BQXdDO1FBQzVELE1BQU0scUJBQXFCLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBeUIsQ0FBQyxHQUFHLEVBQUUsRUFBRSxHQUFHLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRTtZQUMzRixHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsS0FBSyxDQUFDO1lBQ2pCLE9BQU8sR0FBRyxDQUFDO1FBQ2IsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRVAsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsdUJBQXVCLENBQUMsRUFBRSxLQUFLLEVBQUUsRUFBRSxxQkFBcUIsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ3JGLENBQUM7a0lBZFUsb0NBQW9DO3NJQUFwQyxvQ0FBb0M7OzRGQUFwQyxvQ0FBb0M7a0JBRGhELFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBJbmplY3RhYmxlLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIFN0b3JlLFxufSBmcm9tICdAbmdyeC9zdG9yZSc7XG5pbXBvcnQgdHlwZSB7XG4gIFJ1bGVzRW5naW5lQWN0aW9uSGFuZGxlcixcbn0gZnJvbSAnQG8zci9jb3JlJztcbmltcG9ydCB7XG4gIEFjdGlvblVwZGF0ZUxvY2FsaXNhdGlvbkJsb2NrLFxuICBSVUxFU19FTkdJTkVfTE9DQUxJU0FUSU9OX1VQREFURV9BQ1RJT05fVFlQRSxcbn0gZnJvbSAnLi9sb2NhbGl6YXRpb24uaW50ZXJmYWNlcyc7XG5pbXBvcnQge1xuICBMb2NhbGl6YXRpb25PdmVycmlkZVN0b3JlLFxuICBzZXRMb2NhbGl6YXRpb25PdmVycmlkZSxcbn0gZnJvbSAnQG8zci9sb2NhbGl6YXRpb24nO1xuXG4vKipcbiAqIFNlcnZpY2UgdG8gaGFuZGxlIGFzeW5jIExvY2FsaXphdGlvbiBhY3Rpb25zXG4gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBMb2NhbGl6YXRpb25SdWxlc0VuZ2luZUFjdGlvbkhhbmRsZXIgaW1wbGVtZW50cyBSdWxlc0VuZ2luZUFjdGlvbkhhbmRsZXI8QWN0aW9uVXBkYXRlTG9jYWxpc2F0aW9uQmxvY2s+IHtcbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHB1YmxpYyByZWFkb25seSBzdXBwb3J0aW5nQWN0aW9ucyA9IFtSVUxFU19FTkdJTkVfTE9DQUxJU0FUSU9OX1VQREFURV9BQ1RJT05fVFlQRV0gYXMgY29uc3Q7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBzdG9yZTogU3RvcmU8TG9jYWxpemF0aW9uT3ZlcnJpZGVTdG9yZT4pIHt9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHB1YmxpYyBleGVjdXRlQWN0aW9ucyhhY3Rpb25zOiBBY3Rpb25VcGRhdGVMb2NhbGlzYXRpb25CbG9ja1tdKTogdm9pZCB8IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IGxvY2FsaXphdGlvbk92ZXJyaWRlcyA9IGFjdGlvbnMucmVkdWNlPFJlY29yZDxzdHJpbmcsIHN0cmluZz4+KChhY2MsIHsga2V5LCB2YWx1ZSB9KSA9PiB7XG4gICAgICBhY2Nba2V5XSA9IHZhbHVlO1xuICAgICAgcmV0dXJuIGFjYztcbiAgICB9LCB7fSk7XG5cbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKHNldExvY2FsaXphdGlvbk92ZXJyaWRlKHsgc3RhdGU6IHsgbG9jYWxpemF0aW9uT3ZlcnJpZGVzIH0gfSkpO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,3 @@
1
+ /** ActionUpdateLocalisationBlock */
2
+ export const RULES_ENGINE_LOCALISATION_UPDATE_ACTION_TYPE = 'UPDATE_LOCALISATION';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWxpemF0aW9uLmludGVyZmFjZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcnVsZXMtZW5naW5lL2xvY2FsaXphdGlvbi5pbnRlcmZhY2VzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUlBLHFDQUFxQztBQUNyQyxNQUFNLENBQUMsTUFBTSw0Q0FBNEMsR0FBRyxxQkFBcUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHtcbiAgUnVsZXNFbmdpbmVBY3Rpb24sXG59IGZyb20gJ0BvM3IvY29yZSc7XG5cbi8qKiBBY3Rpb25VcGRhdGVMb2NhbGlzYXRpb25CbG9jayAgKi9cbmV4cG9ydCBjb25zdCBSVUxFU19FTkdJTkVfTE9DQUxJU0FUSU9OX1VQREFURV9BQ1RJT05fVFlQRSA9ICdVUERBVEVfTE9DQUxJU0FUSU9OJztcblxuLyoqXG4gKiBDb250ZW50IG9mIGFjdGlvbiB0aGF0IHVwZGF0ZXMgbG9jYWxpemF0aW9uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQWN0aW9uVXBkYXRlTG9jYWxpc2F0aW9uQmxvY2sgZXh0ZW5kcyBSdWxlc0VuZ2luZUFjdGlvbiB7XG4gIGFjdGlvblR5cGU6IHR5cGVvZiBSVUxFU19FTkdJTkVfTE9DQUxJU0FUSU9OX1VQREFURV9BQ1RJT05fVFlQRTtcbiAga2V5OiBzdHJpbmc7XG4gIHZhbHVlOiBzdHJpbmc7XG59XG4iXX0=
@@ -0,0 +1,23 @@
1
+ import { NgModule, } from '@angular/core';
2
+ import { LocalizationRulesEngineActionHandler, } from './localization.handler-action';
3
+ import { LocalizationOverrideStoreModule, } from '@o3r/localization';
4
+ import * as i0 from "@angular/core";
5
+ export class LocalizationRulesEngineActionModule {
6
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LocalizationRulesEngineActionModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
7
+ /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: LocalizationRulesEngineActionModule, imports: [LocalizationOverrideStoreModule] }); }
8
+ /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LocalizationRulesEngineActionModule, providers: [
9
+ LocalizationRulesEngineActionHandler
10
+ ], imports: [LocalizationOverrideStoreModule] }); }
11
+ }
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LocalizationRulesEngineActionModule, decorators: [{
13
+ type: NgModule,
14
+ args: [{
15
+ imports: [
16
+ LocalizationOverrideStoreModule
17
+ ],
18
+ providers: [
19
+ LocalizationRulesEngineActionHandler
20
+ ]
21
+ }]
22
+ }] });
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWxpemF0aW9uLnJ1bGVzLWVuZ2luZS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcnVsZXMtZW5naW5lL2xvY2FsaXphdGlvbi5ydWxlcy1lbmdpbmUubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxRQUFRLEdBQ1QsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUNMLG9DQUFvQyxHQUNyQyxNQUFNLCtCQUErQixDQUFDO0FBQ3ZDLE9BQU8sRUFDTCwrQkFBK0IsR0FDaEMsTUFBTSxtQkFBbUIsQ0FBQzs7QUFVM0IsTUFBTSxPQUFPLG1DQUFtQztrSUFBbkMsbUNBQW1DO21JQUFuQyxtQ0FBbUMsWUFONUMsK0JBQStCO21JQU10QixtQ0FBbUMsYUFKbkM7WUFDVCxvQ0FBb0M7U0FDckMsWUFKQywrQkFBK0I7OzRGQU10QixtQ0FBbUM7a0JBUi9DLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFO3dCQUNQLCtCQUErQjtxQkFDaEM7b0JBQ0QsU0FBUyxFQUFFO3dCQUNULG9DQUFvQztxQkFDckM7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBOZ01vZHVsZSxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBMb2NhbGl6YXRpb25SdWxlc0VuZ2luZUFjdGlvbkhhbmRsZXIsXG59IGZyb20gJy4vbG9jYWxpemF0aW9uLmhhbmRsZXItYWN0aW9uJztcbmltcG9ydCB7XG4gIExvY2FsaXphdGlvbk92ZXJyaWRlU3RvcmVNb2R1bGUsXG59IGZyb20gJ0BvM3IvbG9jYWxpemF0aW9uJztcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1xuICAgIExvY2FsaXphdGlvbk92ZXJyaWRlU3RvcmVNb2R1bGVcbiAgXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAgTG9jYWxpemF0aW9uUnVsZXNFbmdpbmVBY3Rpb25IYW5kbGVyXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgTG9jYWxpemF0aW9uUnVsZXNFbmdpbmVBY3Rpb25Nb2R1bGUge31cbiJdfQ==
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './public_api';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibzNyLWxvY2FsaXphdGlvbi1ydWxlcy1lbmdpbmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcnVsZXMtZW5naW5lL28zci1sb2NhbGl6YXRpb24tcnVsZXMtZW5naW5lLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljX2FwaSc7XG4iXX0=
@@ -0,0 +1,4 @@
1
+ export * from './localization.handler-action';
2
+ export * from './localization.interfaces';
3
+ export * from './localization.rules-engine.module';
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9ydWxlcy1lbmdpbmUvcHVibGljX2FwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYyxvQ0FBb0MsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbG9jYWxpemF0aW9uLmhhbmRsZXItYWN0aW9uJztcbmV4cG9ydCAqIGZyb20gJy4vbG9jYWxpemF0aW9uLmludGVyZmFjZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9sb2NhbGl6YXRpb24ucnVsZXMtZW5naW5lLm1vZHVsZSc7XG4iXX0=
@@ -0,0 +1,7 @@
1
+ export * from './localization-override/localization-override.actions';
2
+ export * from './localization-override/localization-override.module';
3
+ export * from './localization-override/localization-override.reducer';
4
+ export * from './localization-override/localization-override.selectors';
5
+ export * from './localization-override/localization-override.state';
6
+ export * from './localization-override/localization-override.sync';
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc3RvcmVzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsdURBQXVELENBQUM7QUFDdEUsY0FBYyxzREFBc0QsQ0FBQztBQUNyRSxjQUFjLHVEQUF1RCxDQUFDO0FBQ3RFLGNBQWMseURBQXlELENBQUM7QUFDeEUsY0FBYyxxREFBcUQsQ0FBQztBQUNwRSxjQUFjLG9EQUFvRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9sb2NhbGl6YXRpb24tb3ZlcnJpZGUvbG9jYWxpemF0aW9uLW92ZXJyaWRlLmFjdGlvbnMnO1xuZXhwb3J0ICogZnJvbSAnLi9sb2NhbGl6YXRpb24tb3ZlcnJpZGUvbG9jYWxpemF0aW9uLW92ZXJyaWRlLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xvY2FsaXphdGlvbi1vdmVycmlkZS9sb2NhbGl6YXRpb24tb3ZlcnJpZGUucmVkdWNlcic7XG5leHBvcnQgKiBmcm9tICcuL2xvY2FsaXphdGlvbi1vdmVycmlkZS9sb2NhbGl6YXRpb24tb3ZlcnJpZGUuc2VsZWN0b3JzJztcbmV4cG9ydCAqIGZyb20gJy4vbG9jYWxpemF0aW9uLW92ZXJyaWRlL2xvY2FsaXphdGlvbi1vdmVycmlkZS5zdGF0ZSc7XG5leHBvcnQgKiBmcm9tICcuL2xvY2FsaXphdGlvbi1vdmVycmlkZS9sb2NhbGl6YXRpb24tb3ZlcnJpZGUuc3luYyc7XG4iXX0=
@@ -0,0 +1,8 @@
1
+ import { createAction, props, } from '@ngrx/store';
2
+ /** Actions */
3
+ const ACTION_SET = '[LocalizationOverride] set';
4
+ /**
5
+ * Clear all overrides and fill the store with the payload
6
+ */
7
+ export const setLocalizationOverride = createAction(ACTION_SET, props());
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWxpemF0aW9uLW92ZXJyaWRlLmFjdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvc3RvcmVzL2xvY2FsaXphdGlvbi1vdmVycmlkZS9sb2NhbGl6YXRpb24tb3ZlcnJpZGUuYWN0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsWUFBWSxFQUNaLEtBQUssR0FDTixNQUFNLGFBQWEsQ0FBQztBQVFyQixjQUFjO0FBQ2QsTUFBTSxVQUFVLEdBQUcsNEJBQTRCLENBQUM7QUFFaEQ7O0dBRUc7QUFDSCxNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FBRyxZQUFZLENBQUMsVUFBVSxFQUFFLEtBQUssRUFBb0QsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgY3JlYXRlQWN0aW9uLFxuICBwcm9wcyxcbn0gZnJvbSAnQG5ncngvc3RvcmUnO1xuaW1wb3J0IHtcbiAgU2V0U3RhdGVBY3Rpb25QYXlsb2FkLFxufSBmcm9tICdAbzNyL2NvcmUnO1xuaW1wb3J0IHtcbiAgTG9jYWxpemF0aW9uT3ZlcnJpZGVTdGF0ZSxcbn0gZnJvbSAnLi9sb2NhbGl6YXRpb24tb3ZlcnJpZGUuc3RhdGUnO1xuXG4vKiogQWN0aW9ucyAqL1xuY29uc3QgQUNUSU9OX1NFVCA9ICdbTG9jYWxpemF0aW9uT3ZlcnJpZGVdIHNldCc7XG5cbi8qKlxuICogQ2xlYXIgYWxsIG92ZXJyaWRlcyBhbmQgZmlsbCB0aGUgc3RvcmUgd2l0aCB0aGUgcGF5bG9hZFxuICovXG5leHBvcnQgY29uc3Qgc2V0TG9jYWxpemF0aW9uT3ZlcnJpZGUgPSBjcmVhdGVBY3Rpb24oQUNUSU9OX1NFVCwgcHJvcHM8U2V0U3RhdGVBY3Rpb25QYXlsb2FkPExvY2FsaXphdGlvbk92ZXJyaWRlU3RhdGU+PigpKTtcbiJdfQ==
@@ -0,0 +1,39 @@
1
+ import { InjectionToken, NgModule, } from '@angular/core';
2
+ import { StoreModule, } from '@ngrx/store';
3
+ import { localizationOverrideReducer, } from './localization-override.reducer';
4
+ import { LOCALIZATION_OVERRIDE_STORE_NAME, } from './localization-override.state';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "@ngrx/store";
7
+ /** Token of the LocalizationOverride reducer */
8
+ export const LOCALIZATION_OVERRIDE_REDUCER_TOKEN = new InjectionToken('Feature LocalizationOverride Reducer');
9
+ /** Provide default reducer for LocalizationOverride store */
10
+ export function getDefaultLocalizationOverrideReducer() {
11
+ return localizationOverrideReducer;
12
+ }
13
+ export class LocalizationOverrideStoreModule {
14
+ static forRoot(reducerFactory) {
15
+ return {
16
+ ngModule: LocalizationOverrideStoreModule,
17
+ providers: [
18
+ { provide: LOCALIZATION_OVERRIDE_REDUCER_TOKEN, useFactory: reducerFactory }
19
+ ]
20
+ };
21
+ }
22
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LocalizationOverrideStoreModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
23
+ /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: LocalizationOverrideStoreModule, imports: [i1.StoreFeatureModule] }); }
24
+ /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LocalizationOverrideStoreModule, providers: [
25
+ { provide: LOCALIZATION_OVERRIDE_REDUCER_TOKEN, useFactory: getDefaultLocalizationOverrideReducer }
26
+ ], imports: [StoreModule.forFeature(LOCALIZATION_OVERRIDE_STORE_NAME, LOCALIZATION_OVERRIDE_REDUCER_TOKEN)] }); }
27
+ }
28
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LocalizationOverrideStoreModule, decorators: [{
29
+ type: NgModule,
30
+ args: [{
31
+ imports: [
32
+ StoreModule.forFeature(LOCALIZATION_OVERRIDE_STORE_NAME, LOCALIZATION_OVERRIDE_REDUCER_TOKEN)
33
+ ],
34
+ providers: [
35
+ { provide: LOCALIZATION_OVERRIDE_REDUCER_TOKEN, useFactory: getDefaultLocalizationOverrideReducer }
36
+ ]
37
+ }]
38
+ }] });
39
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWxpemF0aW9uLW92ZXJyaWRlLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9zdG9yZXMvbG9jYWxpemF0aW9uLW92ZXJyaWRlL2xvY2FsaXphdGlvbi1vdmVycmlkZS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLGNBQWMsRUFFZCxRQUFRLEdBQ1QsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUdMLFdBQVcsR0FDWixNQUFNLGFBQWEsQ0FBQztBQUNyQixPQUFPLEVBQ0wsMkJBQTJCLEdBQzVCLE1BQU0saUNBQWlDLENBQUM7QUFDekMsT0FBTyxFQUNMLGdDQUFnQyxHQUVqQyxNQUFNLCtCQUErQixDQUFDOzs7QUFFdkMsZ0RBQWdEO0FBQ2hELE1BQU0sQ0FBQyxNQUFNLG1DQUFtQyxHQUFHLElBQUksY0FBYyxDQUFtRCxzQ0FBc0MsQ0FBQyxDQUFDO0FBRWhLLDZEQUE2RDtBQUM3RCxNQUFNLFVBQVUscUNBQXFDO0lBQ25ELE9BQU8sMkJBQTJCLENBQUM7QUFDckMsQ0FBQztBQVVELE1BQU0sT0FBTywrQkFBK0I7SUFDbkMsTUFBTSxDQUFDLE9BQU8sQ0FBc0MsY0FBOEM7UUFDdkcsT0FBTztZQUNMLFFBQVEsRUFBRSwrQkFBK0I7WUFDekMsU0FBUyxFQUFFO2dCQUNULEVBQUUsT0FBTyxFQUFFLG1DQUFtQyxFQUFFLFVBQVUsRUFBRSxjQUFjLEVBQUU7YUFDN0U7U0FDRixDQUFDO0lBQ0osQ0FBQztrSUFSVSwrQkFBK0I7bUlBQS9CLCtCQUErQjttSUFBL0IsK0JBQStCLGFBSi9CO1lBQ1QsRUFBRSxPQUFPLEVBQUUsbUNBQW1DLEVBQUUsVUFBVSxFQUFFLHFDQUFxQyxFQUFFO1NBQ3BHLFlBSkMsV0FBVyxDQUFDLFVBQVUsQ0FBQyxnQ0FBZ0MsRUFBRSxtQ0FBbUMsQ0FBQzs7NEZBTXBGLCtCQUErQjtrQkFSM0MsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUU7d0JBQ1AsV0FBVyxDQUFDLFVBQVUsQ0FBQyxnQ0FBZ0MsRUFBRSxtQ0FBbUMsQ0FBQztxQkFDOUY7b0JBQ0QsU0FBUyxFQUFFO3dCQUNULEVBQUUsT0FBTyxFQUFFLG1DQUFtQyxFQUFFLFVBQVUsRUFBRSxxQ0FBcUMsRUFBRTtxQkFDcEc7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBJbmplY3Rpb25Ub2tlbixcbiAgTW9kdWxlV2l0aFByb3ZpZGVycyxcbiAgTmdNb2R1bGUsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgQWN0aW9uLFxuICBBY3Rpb25SZWR1Y2VyLFxuICBTdG9yZU1vZHVsZSxcbn0gZnJvbSAnQG5ncngvc3RvcmUnO1xuaW1wb3J0IHtcbiAgbG9jYWxpemF0aW9uT3ZlcnJpZGVSZWR1Y2VyLFxufSBmcm9tICcuL2xvY2FsaXphdGlvbi1vdmVycmlkZS5yZWR1Y2VyJztcbmltcG9ydCB7XG4gIExPQ0FMSVpBVElPTl9PVkVSUklERV9TVE9SRV9OQU1FLFxuICBMb2NhbGl6YXRpb25PdmVycmlkZVN0YXRlLFxufSBmcm9tICcuL2xvY2FsaXphdGlvbi1vdmVycmlkZS5zdGF0ZSc7XG5cbi8qKiBUb2tlbiBvZiB0aGUgTG9jYWxpemF0aW9uT3ZlcnJpZGUgcmVkdWNlciAqL1xuZXhwb3J0IGNvbnN0IExPQ0FMSVpBVElPTl9PVkVSUklERV9SRURVQ0VSX1RPS0VOID0gbmV3IEluamVjdGlvblRva2VuPEFjdGlvblJlZHVjZXI8TG9jYWxpemF0aW9uT3ZlcnJpZGVTdGF0ZSwgQWN0aW9uPj4oJ0ZlYXR1cmUgTG9jYWxpemF0aW9uT3ZlcnJpZGUgUmVkdWNlcicpO1xuXG4vKiogUHJvdmlkZSBkZWZhdWx0IHJlZHVjZXIgZm9yIExvY2FsaXphdGlvbk92ZXJyaWRlIHN0b3JlICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0RGVmYXVsdExvY2FsaXphdGlvbk92ZXJyaWRlUmVkdWNlcigpIHtcbiAgcmV0dXJuIGxvY2FsaXphdGlvbk92ZXJyaWRlUmVkdWNlcjtcbn1cblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1xuICAgIFN0b3JlTW9kdWxlLmZvckZlYXR1cmUoTE9DQUxJWkFUSU9OX09WRVJSSURFX1NUT1JFX05BTUUsIExPQ0FMSVpBVElPTl9PVkVSUklERV9SRURVQ0VSX1RPS0VOKVxuICBdLFxuICBwcm92aWRlcnM6IFtcbiAgICB7IHByb3ZpZGU6IExPQ0FMSVpBVElPTl9PVkVSUklERV9SRURVQ0VSX1RPS0VOLCB1c2VGYWN0b3J5OiBnZXREZWZhdWx0TG9jYWxpemF0aW9uT3ZlcnJpZGVSZWR1Y2VyIH1cbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBMb2NhbGl6YXRpb25PdmVycmlkZVN0b3JlTW9kdWxlIHtcbiAgcHVibGljIHN0YXRpYyBmb3JSb290PFQgZXh0ZW5kcyBMb2NhbGl6YXRpb25PdmVycmlkZVN0YXRlPihyZWR1Y2VyRmFjdG9yeTogKCkgPT4gQWN0aW9uUmVkdWNlcjxULCBBY3Rpb24+KTogTW9kdWxlV2l0aFByb3ZpZGVyczxMb2NhbGl6YXRpb25PdmVycmlkZVN0b3JlTW9kdWxlPiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIG5nTW9kdWxlOiBMb2NhbGl6YXRpb25PdmVycmlkZVN0b3JlTW9kdWxlLFxuICAgICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHsgcHJvdmlkZTogTE9DQUxJWkFUSU9OX09WRVJSSURFX1JFRFVDRVJfVE9LRU4sIHVzZUZhY3Rvcnk6IHJlZHVjZXJGYWN0b3J5IH1cbiAgICAgIF1cbiAgICB9O1xuICB9XG59XG4iXX0=
@@ -0,0 +1,17 @@
1
+ import { createReducer, on, } from '@ngrx/store';
2
+ import * as actions from './localization-override.actions';
3
+ /**
4
+ * LocalizationOverride Store initial value
5
+ */
6
+ export const localizationOverrideInitialState = { localizationOverrides: {} };
7
+ /**
8
+ * List of basic actions for LocalizationOverride Store
9
+ */
10
+ export const localizationOverrideReducerFeatures = [
11
+ on(actions.setLocalizationOverride, (_state, payload) => ({ ...payload.state }))
12
+ ];
13
+ /**
14
+ * LocalizationOverride Store reducer
15
+ */
16
+ export const localizationOverrideReducer = createReducer(localizationOverrideInitialState, ...localizationOverrideReducerFeatures);
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWxpemF0aW9uLW92ZXJyaWRlLnJlZHVjZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvc3RvcmVzL2xvY2FsaXphdGlvbi1vdmVycmlkZS9sb2NhbGl6YXRpb24tb3ZlcnJpZGUucmVkdWNlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsYUFBYSxFQUNiLEVBQUUsR0FFSCxNQUFNLGFBQWEsQ0FBQztBQUNyQixPQUFPLEtBQUssT0FBTyxNQUFNLGlDQUFpQyxDQUFDO0FBSzNEOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sZ0NBQWdDLEdBQThCLEVBQUUscUJBQXFCLEVBQUUsRUFBRSxFQUFFLENBQUM7QUFFekc7O0dBRUc7QUFDSCxNQUFNLENBQUMsTUFBTSxtQ0FBbUMsR0FBK0Q7SUFDN0csRUFBRSxDQUFDLE9BQU8sQ0FBQyx1QkFBdUIsRUFBRSxDQUFDLE1BQU0sRUFBRSxPQUFPLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBRSxHQUFHLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDO0NBQ2pGLENBQUM7QUFFRjs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLDJCQUEyQixHQUFHLGFBQWEsQ0FDdEQsZ0NBQWdDLEVBQ2hDLEdBQUcsbUNBQW1DLENBQ3ZDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBY3Rpb25DcmVhdG9yLFxuICBjcmVhdGVSZWR1Y2VyLFxuICBvbixcbiAgUmVkdWNlclR5cGVzLFxufSBmcm9tICdAbmdyeC9zdG9yZSc7XG5pbXBvcnQgKiBhcyBhY3Rpb25zIGZyb20gJy4vbG9jYWxpemF0aW9uLW92ZXJyaWRlLmFjdGlvbnMnO1xuaW1wb3J0IHtcbiAgTG9jYWxpemF0aW9uT3ZlcnJpZGVTdGF0ZSxcbn0gZnJvbSAnLi9sb2NhbGl6YXRpb24tb3ZlcnJpZGUuc3RhdGUnO1xuXG4vKipcbiAqIExvY2FsaXphdGlvbk92ZXJyaWRlIFN0b3JlIGluaXRpYWwgdmFsdWVcbiAqL1xuZXhwb3J0IGNvbnN0IGxvY2FsaXphdGlvbk92ZXJyaWRlSW5pdGlhbFN0YXRlOiBMb2NhbGl6YXRpb25PdmVycmlkZVN0YXRlID0geyBsb2NhbGl6YXRpb25PdmVycmlkZXM6IHt9IH07XG5cbi8qKlxuICogIExpc3Qgb2YgYmFzaWMgYWN0aW9ucyBmb3IgTG9jYWxpemF0aW9uT3ZlcnJpZGUgU3RvcmVcbiAqL1xuZXhwb3J0IGNvbnN0IGxvY2FsaXphdGlvbk92ZXJyaWRlUmVkdWNlckZlYXR1cmVzOiBSZWR1Y2VyVHlwZXM8TG9jYWxpemF0aW9uT3ZlcnJpZGVTdGF0ZSwgQWN0aW9uQ3JlYXRvcltdPltdID0gW1xuICBvbihhY3Rpb25zLnNldExvY2FsaXphdGlvbk92ZXJyaWRlLCAoX3N0YXRlLCBwYXlsb2FkKSA9PiAoeyAuLi5wYXlsb2FkLnN0YXRlIH0pKVxuXTtcblxuLyoqXG4gKiBMb2NhbGl6YXRpb25PdmVycmlkZSBTdG9yZSByZWR1Y2VyXG4gKi9cbmV4cG9ydCBjb25zdCBsb2NhbGl6YXRpb25PdmVycmlkZVJlZHVjZXIgPSBjcmVhdGVSZWR1Y2VyKFxuICBsb2NhbGl6YXRpb25PdmVycmlkZUluaXRpYWxTdGF0ZSxcbiAgLi4ubG9jYWxpemF0aW9uT3ZlcnJpZGVSZWR1Y2VyRmVhdHVyZXNcbik7XG4iXX0=
@@ -0,0 +1,7 @@
1
+ import { createFeatureSelector, createSelector, } from '@ngrx/store';
2
+ import { LOCALIZATION_OVERRIDE_STORE_NAME, } from './localization-override.state';
3
+ /** Select LocalizationOverride State */
4
+ export const selectLocalizationOverrideState = createFeatureSelector(LOCALIZATION_OVERRIDE_STORE_NAME);
5
+ /** Select all localization override map */
6
+ export const selectLocalizationOverride = createSelector(selectLocalizationOverrideState, (state) => state?.localizationOverrides || {});
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWxpemF0aW9uLW92ZXJyaWRlLnNlbGVjdG9ycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9zdG9yZXMvbG9jYWxpemF0aW9uLW92ZXJyaWRlL2xvY2FsaXphdGlvbi1vdmVycmlkZS5zZWxlY3RvcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHFCQUFxQixFQUNyQixjQUFjLEdBQ2YsTUFBTSxhQUFhLENBQUM7QUFDckIsT0FBTyxFQUNMLGdDQUFnQyxHQUVqQyxNQUFNLCtCQUErQixDQUFDO0FBRXZDLHdDQUF3QztBQUN4QyxNQUFNLENBQUMsTUFBTSwrQkFBK0IsR0FBRyxxQkFBcUIsQ0FBNEIsZ0NBQWdDLENBQUMsQ0FBQztBQUVsSSwyQ0FBMkM7QUFDM0MsTUFBTSxDQUFDLE1BQU0sMEJBQTBCLEdBQUcsY0FBYyxDQUFDLCtCQUErQixFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLEVBQUUscUJBQXFCLElBQUksRUFBRSxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBjcmVhdGVGZWF0dXJlU2VsZWN0b3IsXG4gIGNyZWF0ZVNlbGVjdG9yLFxufSBmcm9tICdAbmdyeC9zdG9yZSc7XG5pbXBvcnQge1xuICBMT0NBTElaQVRJT05fT1ZFUlJJREVfU1RPUkVfTkFNRSxcbiAgTG9jYWxpemF0aW9uT3ZlcnJpZGVTdGF0ZSxcbn0gZnJvbSAnLi9sb2NhbGl6YXRpb24tb3ZlcnJpZGUuc3RhdGUnO1xuXG4vKiogU2VsZWN0IExvY2FsaXphdGlvbk92ZXJyaWRlIFN0YXRlICovXG5leHBvcnQgY29uc3Qgc2VsZWN0TG9jYWxpemF0aW9uT3ZlcnJpZGVTdGF0ZSA9IGNyZWF0ZUZlYXR1cmVTZWxlY3RvcjxMb2NhbGl6YXRpb25PdmVycmlkZVN0YXRlPihMT0NBTElaQVRJT05fT1ZFUlJJREVfU1RPUkVfTkFNRSk7XG5cbi8qKiBTZWxlY3QgYWxsIGxvY2FsaXphdGlvbiBvdmVycmlkZSBtYXAgKi9cbmV4cG9ydCBjb25zdCBzZWxlY3RMb2NhbGl6YXRpb25PdmVycmlkZSA9IGNyZWF0ZVNlbGVjdG9yKHNlbGVjdExvY2FsaXphdGlvbk92ZXJyaWRlU3RhdGUsIChzdGF0ZSkgPT4gc3RhdGU/LmxvY2FsaXphdGlvbk92ZXJyaWRlcyB8fCB7fSk7XG4iXX0=
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Name of the LocalizationOverride Store
3
+ */
4
+ export const LOCALIZATION_OVERRIDE_STORE_NAME = 'localizationOverride';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWxpemF0aW9uLW92ZXJyaWRlLnN0YXRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3N0b3Jlcy9sb2NhbGl6YXRpb24tb3ZlcnJpZGUvbG9jYWxpemF0aW9uLW92ZXJyaWRlLnN0YXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVFBOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sZ0NBQWdDLEdBQUcsc0JBQXNCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIExvY2FsaXphdGlvbk92ZXJyaWRlIHN0b3JlIHN0YXRlXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTG9jYWxpemF0aW9uT3ZlcnJpZGVTdGF0ZSB7XG4gIC8qKiBNYXBwaW5nIG9mIGluaXRpYWwgbG9jYWxpemF0aW9uIGtleXMgdG8gdGhlIG9uZSB0aGV5IGFyZSByZXBsYWNlZCB3aXRoICovXG4gIGxvY2FsaXphdGlvbk92ZXJyaWRlczogUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcbn1cblxuLyoqXG4gKiBOYW1lIG9mIHRoZSBMb2NhbGl6YXRpb25PdmVycmlkZSBTdG9yZVxuICovXG5leHBvcnQgY29uc3QgTE9DQUxJWkFUSU9OX09WRVJSSURFX1NUT1JFX05BTUUgPSAnbG9jYWxpemF0aW9uT3ZlcnJpZGUnO1xuXG4vKipcbiAqIExvY2FsaXphdGlvbk92ZXJyaWRlIFN0b3JlIEludGVyZmFjZVxuICovXG5leHBvcnQgaW50ZXJmYWNlIExvY2FsaXphdGlvbk92ZXJyaWRlU3RvcmUge1xuICAvKiogTG9jYWxpemF0aW9uT3ZlcnJpZGUgc3RhdGUgKi9cbiAgW0xPQ0FMSVpBVElPTl9PVkVSUklERV9TVE9SRV9OQU1FXTogTG9jYWxpemF0aW9uT3ZlcnJpZGVTdGF0ZTtcbn1cbiJdfQ==
@@ -0,0 +1,11 @@
1
+ import { localizationOverrideInitialState, } from './localization-override.reducer';
2
+ export const localizationOverrideStorageDeserializer = (rawObject) => {
3
+ if (!rawObject) {
4
+ return localizationOverrideInitialState;
5
+ }
6
+ return rawObject;
7
+ };
8
+ export const localizationOverrideStorageSync = {
9
+ deserialize: localizationOverrideStorageDeserializer
10
+ };
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWxpemF0aW9uLW92ZXJyaWRlLnN5bmMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvc3RvcmVzL2xvY2FsaXphdGlvbi1vdmVycmlkZS9sb2NhbGl6YXRpb24tb3ZlcnJpZGUuc3luYy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxPQUFPLEVBQ0wsZ0NBQWdDLEdBQ2pDLE1BQU0saUNBQWlDLENBQUM7QUFLekMsTUFBTSxDQUFDLE1BQU0sdUNBQXVDLEdBQUcsQ0FBQyxTQUFjLEVBQUUsRUFBRTtJQUN4RSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDZixPQUFPLGdDQUFnQyxDQUFDO0lBQzFDLENBQUM7SUFDRCxPQUFPLFNBQVMsQ0FBQztBQUNuQixDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSwrQkFBK0IsR0FBMEM7SUFDcEYsV0FBVyxFQUFFLHVDQUF1QztDQUNyRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgU2VyaWFsaXplcixcbn0gZnJvbSAnQG8zci9jb3JlJztcbmltcG9ydCB7XG4gIGxvY2FsaXphdGlvbk92ZXJyaWRlSW5pdGlhbFN0YXRlLFxufSBmcm9tICcuL2xvY2FsaXphdGlvbi1vdmVycmlkZS5yZWR1Y2VyJztcbmltcG9ydCB7XG4gIExvY2FsaXphdGlvbk92ZXJyaWRlU3RhdGUsXG59IGZyb20gJy4vbG9jYWxpemF0aW9uLW92ZXJyaWRlLnN0YXRlJztcblxuZXhwb3J0IGNvbnN0IGxvY2FsaXphdGlvbk92ZXJyaWRlU3RvcmFnZURlc2VyaWFsaXplciA9IChyYXdPYmplY3Q6IGFueSkgPT4ge1xuICBpZiAoIXJhd09iamVjdCkge1xuICAgIHJldHVybiBsb2NhbGl6YXRpb25PdmVycmlkZUluaXRpYWxTdGF0ZTtcbiAgfVxuICByZXR1cm4gcmF3T2JqZWN0O1xufTtcblxuZXhwb3J0IGNvbnN0IGxvY2FsaXphdGlvbk92ZXJyaWRlU3RvcmFnZVN5bmM6IFNlcmlhbGl6ZXI8TG9jYWxpemF0aW9uT3ZlcnJpZGVTdGF0ZT4gPSB7XG4gIGRlc2VyaWFsaXplOiBsb2NhbGl6YXRpb25PdmVycmlkZVN0b3JhZ2VEZXNlcmlhbGl6ZXJcbn07XG4iXX0=
@@ -0,0 +1,13 @@
1
+ export * from './localization-translate.directive';
2
+ export * from './localization-translate.pipe';
3
+ export * from './localization.module';
4
+ export * from './localization.provider';
5
+ export { LocalizationService } from './localization.service';
6
+ export * from './localization.token';
7
+ export * from './localized-currency.pipe';
8
+ export * from './localized-date.pipe';
9
+ export * from './localized-decimal.pipe';
10
+ export { TextDirectionService } from './text-direction.service';
11
+ export { TextDirectionality } from './text-directionality.service';
12
+ export * from './translations-loader';
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdG9vbHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUM3RCxjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ25FLGNBQWMsdUJBQXVCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2xvY2FsaXphdGlvbi10cmFuc2xhdGUuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbG9jYWxpemF0aW9uLXRyYW5zbGF0ZS5waXBlJztcbmV4cG9ydCAqIGZyb20gJy4vbG9jYWxpemF0aW9uLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xvY2FsaXphdGlvbi5wcm92aWRlcic7XG5leHBvcnQgeyBMb2NhbGl6YXRpb25TZXJ2aWNlIH0gZnJvbSAnLi9sb2NhbGl6YXRpb24uc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xvY2FsaXphdGlvbi50b2tlbic7XG5leHBvcnQgKiBmcm9tICcuL2xvY2FsaXplZC1jdXJyZW5jeS5waXBlJztcbmV4cG9ydCAqIGZyb20gJy4vbG9jYWxpemVkLWRhdGUucGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL2xvY2FsaXplZC1kZWNpbWFsLnBpcGUnO1xuZXhwb3J0IHsgVGV4dERpcmVjdGlvblNlcnZpY2UgfSBmcm9tICcuL3RleHQtZGlyZWN0aW9uLnNlcnZpY2UnO1xuZXhwb3J0IHsgVGV4dERpcmVjdGlvbmFsaXR5IH0gZnJvbSAnLi90ZXh0LWRpcmVjdGlvbmFsaXR5LnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi90cmFuc2xhdGlvbnMtbG9hZGVyJztcbiJdfQ==
@@ -0,0 +1,77 @@
1
+ import { ChangeDetectorRef, Directive, ElementRef, Inject, Input, } from '@angular/core';
2
+ import { TranslateDirective, TranslateService, } from '@ngx-translate/core';
3
+ import { LocalizationService, } from './localization.service';
4
+ import { LOCALIZATION_CONFIGURATION_TOKEN, } from './localization.token';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "./localization.service";
7
+ import * as i2 from "@ngx-translate/core";
8
+ /**
9
+ * TranslateDirective class adding debug functionality
10
+ */
11
+ export class LocalizationTranslateDirective extends TranslateDirective {
12
+ /** @inheritdoc */
13
+ set translate(key) {
14
+ if (key && key !== this.key) {
15
+ if (this.onKeyChange) {
16
+ this.onKeyChange.unsubscribe();
17
+ }
18
+ this.onKeyChange = this.localizationService.getKey(key).subscribe((newKey) => {
19
+ this.key = newKey;
20
+ this.checkNodes();
21
+ });
22
+ }
23
+ }
24
+ constructor(localizationService, translateService, element, _ref, localizationConfig) {
25
+ super(translateService, element, _ref);
26
+ this.localizationService = localizationService;
27
+ this.localizationConfig = localizationConfig;
28
+ /**
29
+ * Should we display keys instead of translations
30
+ */
31
+ this.showKeys = false;
32
+ if (localizationConfig.enableTranslationDeactivation) {
33
+ this.onShowKeysChange = localizationService.showKeys$.subscribe((showKeys) => {
34
+ this.showKeys = showKeys;
35
+ this.checkNodes(true);
36
+ });
37
+ }
38
+ }
39
+ /**
40
+ * Overriding parent's setContent to plug debugging feature
41
+ * @param node
42
+ * @param content
43
+ */
44
+ setContent(node, content) {
45
+ const key = node.originalContent;
46
+ const newContent = this.showKeys ? key : (this.localizationConfig.debugMode && key ? `${key} - ${content}` : content);
47
+ if (typeof node.textContent !== 'undefined' && node.textContent !== null) {
48
+ node.textContent = newContent;
49
+ }
50
+ else {
51
+ node.data = newContent;
52
+ }
53
+ }
54
+ ngOnDestroy() {
55
+ super.ngOnDestroy();
56
+ if (this.onShowKeysChange) {
57
+ this.onShowKeysChange.unsubscribe();
58
+ }
59
+ if (this.onKeyChange) {
60
+ this.onKeyChange?.unsubscribe();
61
+ }
62
+ }
63
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LocalizationTranslateDirective, deps: [{ token: i1.LocalizationService }, { token: i2.TranslateService }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: LOCALIZATION_CONFIGURATION_TOKEN }], target: i0.ɵɵFactoryTarget.Directive }); }
64
+ /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: LocalizationTranslateDirective, selector: "[translate],[ngx-translate]", inputs: { translate: "translate" }, usesInheritance: true, ngImport: i0 }); }
65
+ }
66
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LocalizationTranslateDirective, decorators: [{
67
+ type: Directive,
68
+ args: [{
69
+ selector: '[translate],[ngx-translate]'
70
+ }]
71
+ }], ctorParameters: () => [{ type: i1.LocalizationService }, { type: i2.TranslateService }, { type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: undefined, decorators: [{
72
+ type: Inject,
73
+ args: [LOCALIZATION_CONFIGURATION_TOKEN]
74
+ }] }], propDecorators: { translate: [{
75
+ type: Input
76
+ }] } });
77
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWxpemF0aW9uLXRyYW5zbGF0ZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdG9vbHMvbG9jYWxpemF0aW9uLXRyYW5zbGF0ZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsVUFBVSxFQUNWLE1BQU0sRUFDTixLQUFLLEdBRU4sTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUNMLGtCQUFrQixFQUNsQixnQkFBZ0IsR0FDakIsTUFBTSxxQkFBcUIsQ0FBQztBQU83QixPQUFPLEVBQ0wsbUJBQW1CLEdBQ3BCLE1BQU0sd0JBQXdCLENBQUM7QUFDaEMsT0FBTyxFQUNMLGdDQUFnQyxHQUNqQyxNQUFNLHNCQUFzQixDQUFDOzs7O0FBQzlCOztHQUVHO0FBSUgsTUFBTSxPQUFPLDhCQUErQixTQUFRLGtCQUFrQjtJQWdCcEUsa0JBQWtCO0lBQ2xCLElBQ1csU0FBUyxDQUFDLEdBQVc7UUFDOUIsSUFBSSxHQUFHLElBQUksR0FBRyxLQUFLLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQztZQUM1QixJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztnQkFDckIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUNqQyxDQUFDO1lBQ0QsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsbUJBQW1CLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO2dCQUMzRSxJQUFJLENBQUMsR0FBRyxHQUFHLE1BQU0sQ0FBQztnQkFDbEIsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ3BCLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztJQUNILENBQUM7SUFFRCxZQUE2QixtQkFBd0MsRUFBRSxnQkFBa0MsRUFBRSxPQUFtQixFQUFFLElBQXVCLEVBQzFGLGtCQUE2QztRQUN4RyxLQUFLLENBQUMsZ0JBQWdCLEVBQUUsT0FBTyxFQUFFLElBQUksQ0FBQyxDQUFDO1FBRlosd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFxQjtRQUNSLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBMkI7UUF6QjFHOztXQUVHO1FBQ0ssYUFBUSxHQUFHLEtBQUssQ0FBQztRQXlCdkIsSUFBSSxrQkFBa0IsQ0FBQyw2QkFBNkIsRUFBRSxDQUFDO1lBQ3JELElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxtQkFBbUIsQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUU7Z0JBQzNFLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO2dCQUN6QixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ3hCLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztJQUNILENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksVUFBVSxDQUFDLElBQVMsRUFBRSxPQUFlO1FBQzFDLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUM7UUFDakMsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxTQUFTLElBQUksR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLEdBQWEsTUFBTSxPQUFPLEVBQUUsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDaEksSUFBSSxPQUFPLElBQUksQ0FBQyxXQUFXLEtBQUssV0FBVyxJQUFJLElBQUksQ0FBQyxXQUFXLEtBQUssSUFBSSxFQUFFLENBQUM7WUFDekUsSUFBSSxDQUFDLFdBQVcsR0FBRyxVQUFVLENBQUM7UUFDaEMsQ0FBQzthQUFNLENBQUM7WUFDTixJQUFJLENBQUMsSUFBSSxHQUFHLFVBQVUsQ0FBQztRQUN6QixDQUFDO0lBQ0gsQ0FBQztJQUVNLFdBQVc7UUFDaEIsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ3BCLElBQUksSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7WUFDMUIsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ3RDLENBQUM7UUFDRCxJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUNyQixJQUFJLENBQUMsV0FBVyxFQUFFLFdBQVcsRUFBRSxDQUFDO1FBQ2xDLENBQUM7SUFDSCxDQUFDO2tJQWpFVSw4QkFBOEIsZ0pBK0IvQixnQ0FBZ0M7c0hBL0IvQiw4QkFBOEI7OzRGQUE5Qiw4QkFBOEI7a0JBSDFDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLDZCQUE2QjtpQkFDeEM7OzBCQWdDSSxNQUFNOzJCQUFDLGdDQUFnQzt5Q0FiL0IsU0FBUztzQkFEbkIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBEaXJlY3RpdmUsXG4gIEVsZW1lbnRSZWYsXG4gIEluamVjdCxcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBUcmFuc2xhdGVEaXJlY3RpdmUsXG4gIFRyYW5zbGF0ZVNlcnZpY2UsXG59IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHtcbiAgU3Vic2NyaXB0aW9uLFxufSBmcm9tICdyeGpzJztcbmltcG9ydCB7XG4gIExvY2FsaXphdGlvbkNvbmZpZ3VyYXRpb24sXG59IGZyb20gJy4uL2NvcmUnO1xuaW1wb3J0IHtcbiAgTG9jYWxpemF0aW9uU2VydmljZSxcbn0gZnJvbSAnLi9sb2NhbGl6YXRpb24uc2VydmljZSc7XG5pbXBvcnQge1xuICBMT0NBTElaQVRJT05fQ09ORklHVVJBVElPTl9UT0tFTixcbn0gZnJvbSAnLi9sb2NhbGl6YXRpb24udG9rZW4nO1xuLyoqXG4gKiBUcmFuc2xhdGVEaXJlY3RpdmUgY2xhc3MgYWRkaW5nIGRlYnVnIGZ1bmN0aW9uYWxpdHlcbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW3RyYW5zbGF0ZV0sW25neC10cmFuc2xhdGVdJ1xufSlcbmV4cG9ydCBjbGFzcyBMb2NhbGl6YXRpb25UcmFuc2xhdGVEaXJlY3RpdmUgZXh0ZW5kcyBUcmFuc2xhdGVEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICAvKipcbiAgICogSW50ZXJuYWwgc3Vic2NyaXB0aW9uIHRvIHRoZSBMb2NhbGl6YXRpb25TZXJ2aWNlIHNob3dLZXlzIG1vZGUgY2hhbmdlc1xuICAgKi9cbiAgcHJpdmF0ZSByZWFkb25seSBvblNob3dLZXlzQ2hhbmdlPzogU3Vic2NyaXB0aW9uO1xuXG4gIC8qKlxuICAgKiBTaG91bGQgd2UgZGlzcGxheSBrZXlzIGluc3RlYWQgb2YgdHJhbnNsYXRpb25zXG4gICAqL1xuICBwcml2YXRlIHNob3dLZXlzID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIEludGVybmFsIHN1YnNjcmlwdGlvbiB0byB0aGUgTG9jYWxpemF0aW9uU2VydmljZSBrZXkgbWFwcGluZ1xuICAgKi9cbiAgcHJpdmF0ZSBvbktleUNoYW5nZT86IFN1YnNjcmlwdGlvbjtcblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHNldCB0cmFuc2xhdGUoa2V5OiBzdHJpbmcpIHtcbiAgICBpZiAoa2V5ICYmIGtleSAhPT0gdGhpcy5rZXkpIHtcbiAgICAgIGlmICh0aGlzLm9uS2V5Q2hhbmdlKSB7XG4gICAgICAgIHRoaXMub25LZXlDaGFuZ2UudW5zdWJzY3JpYmUoKTtcbiAgICAgIH1cbiAgICAgIHRoaXMub25LZXlDaGFuZ2UgPSB0aGlzLmxvY2FsaXphdGlvblNlcnZpY2UuZ2V0S2V5KGtleSkuc3Vic2NyaWJlKChuZXdLZXkpID0+IHtcbiAgICAgICAgdGhpcy5rZXkgPSBuZXdLZXk7XG4gICAgICAgIHRoaXMuY2hlY2tOb2RlcygpO1xuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBsb2NhbGl6YXRpb25TZXJ2aWNlOiBMb2NhbGl6YXRpb25TZXJ2aWNlLCB0cmFuc2xhdGVTZXJ2aWNlOiBUcmFuc2xhdGVTZXJ2aWNlLCBlbGVtZW50OiBFbGVtZW50UmVmLCBfcmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBASW5qZWN0KExPQ0FMSVpBVElPTl9DT05GSUdVUkFUSU9OX1RPS0VOKSBwcml2YXRlIHJlYWRvbmx5IGxvY2FsaXphdGlvbkNvbmZpZzogTG9jYWxpemF0aW9uQ29uZmlndXJhdGlvbikge1xuICAgIHN1cGVyKHRyYW5zbGF0ZVNlcnZpY2UsIGVsZW1lbnQsIF9yZWYpO1xuXG4gICAgaWYgKGxvY2FsaXphdGlvbkNvbmZpZy5lbmFibGVUcmFuc2xhdGlvbkRlYWN0aXZhdGlvbikge1xuICAgICAgdGhpcy5vblNob3dLZXlzQ2hhbmdlID0gbG9jYWxpemF0aW9uU2VydmljZS5zaG93S2V5cyQuc3Vic2NyaWJlKChzaG93S2V5cykgPT4ge1xuICAgICAgICB0aGlzLnNob3dLZXlzID0gc2hvd0tleXM7XG4gICAgICAgIHRoaXMuY2hlY2tOb2Rlcyh0cnVlKTtcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBPdmVycmlkaW5nIHBhcmVudCdzIHNldENvbnRlbnQgdG8gcGx1ZyBkZWJ1Z2dpbmcgZmVhdHVyZVxuICAgKiBAcGFyYW0gbm9kZVxuICAgKiBAcGFyYW0gY29udGVudFxuICAgKi9cbiAgcHVibGljIHNldENvbnRlbnQobm9kZTogYW55LCBjb250ZW50OiBzdHJpbmcpOiB2b2lkIHtcbiAgICBjb25zdCBrZXkgPSBub2RlLm9yaWdpbmFsQ29udGVudDtcbiAgICBjb25zdCBuZXdDb250ZW50ID0gdGhpcy5zaG93S2V5cyA/IGtleSA6ICh0aGlzLmxvY2FsaXphdGlvbkNvbmZpZy5kZWJ1Z01vZGUgJiYga2V5ID8gYCR7a2V5IGFzIHN0cmluZ30gLSAke2NvbnRlbnR9YCA6IGNvbnRlbnQpO1xuICAgIGlmICh0eXBlb2Ygbm9kZS50ZXh0Q29udGVudCAhPT0gJ3VuZGVmaW5lZCcgJiYgbm9kZS50ZXh0Q29udGVudCAhPT0gbnVsbCkge1xuICAgICAgbm9kZS50ZXh0Q29udGVudCA9IG5ld0NvbnRlbnQ7XG4gICAgfSBlbHNlIHtcbiAgICAgIG5vZGUuZGF0YSA9IG5ld0NvbnRlbnQ7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCkge1xuICAgIHN1cGVyLm5nT25EZXN0cm95KCk7XG4gICAgaWYgKHRoaXMub25TaG93S2V5c0NoYW5nZSkge1xuICAgICAgdGhpcy5vblNob3dLZXlzQ2hhbmdlLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuICAgIGlmICh0aGlzLm9uS2V5Q2hhbmdlKSB7XG4gICAgICB0aGlzLm9uS2V5Q2hhbmdlPy51bnN1YnNjcmliZSgpO1xuICAgIH1cbiAgfVxufVxuIl19
@@ -0,0 +1,86 @@
1
+ import { ChangeDetectorRef, Inject, Pipe, } from '@angular/core';
2
+ import { TranslatePipe, TranslateService, } from '@ngx-translate/core';
3
+ import { LocalizationService, } from './localization.service';
4
+ import { LOCALIZATION_CONFIGURATION_TOKEN, } from './localization.token';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "./localization.service";
7
+ import * as i2 from "@ngx-translate/core";
8
+ /**
9
+ * TranslatePipe class adding debug functionality
10
+ */
11
+ export class O3rLocalizationTranslatePipe extends TranslatePipe {
12
+ constructor(localizationService, translateService, changeDetector, localizationConfig) {
13
+ super(translateService, changeDetector);
14
+ this.localizationService = localizationService;
15
+ this.changeDetector = changeDetector;
16
+ this.localizationConfig = localizationConfig;
17
+ /**
18
+ * Should we display keys instead of translations
19
+ */
20
+ this.showKeys = false;
21
+ if (localizationConfig.enableTranslationDeactivation) {
22
+ this.onShowKeysChange = this.localizationService.showKeys$.subscribe((showKeys) => {
23
+ this.showKeys = showKeys;
24
+ this.changeDetector.markForCheck();
25
+ });
26
+ }
27
+ }
28
+ /**
29
+ * Calls original transform method and eventually outputs the key if debugMode (in LocalizationConfiguration) is enabled
30
+ * @inheritdoc
31
+ */
32
+ transform(query, ...args) {
33
+ if (this.showKeys) {
34
+ return query;
35
+ }
36
+ if (query !== this.lastQueryKey) {
37
+ this.lastQueryKey = query;
38
+ if (this.onKeyChange) {
39
+ this.onKeyChange.unsubscribe();
40
+ }
41
+ this.onKeyChange = this.localizationService.getKey(query).subscribe((key) => {
42
+ this.lastResolvedKey = key;
43
+ this.changeDetector.markForCheck();
44
+ });
45
+ }
46
+ if (this.lastResolvedKey) {
47
+ const value = super.transform(this.lastResolvedKey, ...args);
48
+ if (this.localizationConfig.debugMode) {
49
+ return `${this.lastResolvedKey} - ${value}`;
50
+ }
51
+ return value;
52
+ }
53
+ return this.value;
54
+ }
55
+ ngOnDestroy() {
56
+ super.ngOnDestroy();
57
+ if (this.onShowKeysChange) {
58
+ this.onShowKeysChange.unsubscribe();
59
+ }
60
+ if (this.onKeyChange) {
61
+ this.onKeyChange.unsubscribe();
62
+ }
63
+ }
64
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: O3rLocalizationTranslatePipe, deps: [{ token: i1.LocalizationService }, { token: i2.TranslateService }, { token: i0.ChangeDetectorRef }, { token: LOCALIZATION_CONFIGURATION_TOKEN }], target: i0.ɵɵFactoryTarget.Pipe }); }
65
+ /** @nocollapse */ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: O3rLocalizationTranslatePipe, name: "o3rTranslate", pure: false }); }
66
+ }
67
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: O3rLocalizationTranslatePipe, decorators: [{
68
+ type: Pipe,
69
+ args: [{ name: 'o3rTranslate', pure: false }]
70
+ }], ctorParameters: () => [{ type: i1.LocalizationService }, { type: i2.TranslateService }, { type: i0.ChangeDetectorRef }, { type: undefined, decorators: [{
71
+ type: Inject,
72
+ args: [LOCALIZATION_CONFIGURATION_TOKEN]
73
+ }] }] });
74
+ /**
75
+ * TranslatePipe class adding debug functionality
76
+ * @deprecated please use O3rLocalizationTranslatePipe, will be removed in v12.
77
+ */
78
+ export class LocalizationTranslatePipe extends O3rLocalizationTranslatePipe {
79
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LocalizationTranslatePipe, deps: null, target: i0.ɵɵFactoryTarget.Pipe }); }
80
+ /** @nocollapse */ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: LocalizationTranslatePipe, name: "translate", pure: false }); }
81
+ }
82
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LocalizationTranslatePipe, decorators: [{
83
+ type: Pipe,
84
+ args: [{ name: 'translate', pure: false }]
85
+ }] });
86
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWxpemF0aW9uLXRyYW5zbGF0ZS5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3Rvb2xzL2xvY2FsaXphdGlvbi10cmFuc2xhdGUucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsaUJBQWlCLEVBQ2pCLE1BQU0sRUFFTixJQUFJLEdBRUwsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUNMLGFBQWEsRUFDYixnQkFBZ0IsR0FDakIsTUFBTSxxQkFBcUIsQ0FBQztBQU83QixPQUFPLEVBQ0wsbUJBQW1CLEdBQ3BCLE1BQU0sd0JBQXdCLENBQUM7QUFDaEMsT0FBTyxFQUNMLGdDQUFnQyxHQUNqQyxNQUFNLHNCQUFzQixDQUFDOzs7O0FBRTlCOztHQUVHO0FBRUgsTUFBTSxPQUFPLDRCQUE2QixTQUFRLGFBQWE7SUFzQjdELFlBQStCLG1CQUF3QyxFQUFFLGdCQUFrQyxFQUFxQixjQUFpQyxFQUNsRyxrQkFBNkM7UUFDMUcsS0FBSyxDQUFDLGdCQUFnQixFQUFFLGNBQWMsQ0FBQyxDQUFDO1FBRlgsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFxQjtRQUF5RCxtQkFBYyxHQUFkLGNBQWMsQ0FBbUI7UUFDbEcsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUEyQjtRQVo1Rzs7V0FFRztRQUNPLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFZekIsSUFBSSxrQkFBa0IsQ0FBQyw2QkFBNkIsRUFBRSxDQUFDO1lBQ3JELElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsbUJBQW1CLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFO2dCQUNoRixJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztnQkFDekIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUNyQyxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUM7SUFDSCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksU0FBUyxDQUFDLEtBQWEsRUFBRSxHQUFHLElBQVc7UUFDNUMsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDbEIsT0FBTyxLQUFLLENBQUM7UUFDZixDQUFDO1FBRUQsSUFBSSxLQUFLLEtBQUssSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQ2hDLElBQUksQ0FBQyxZQUFZLEdBQUcsS0FBSyxDQUFDO1lBQzFCLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO2dCQUNyQixJQUFJLENBQUMsV0FBVyxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ2pDLENBQUM7WUFDRCxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUU7Z0JBQzFFLElBQUksQ0FBQyxlQUFlLEdBQUcsR0FBRyxDQUFDO2dCQUMzQixJQUFJLENBQUMsY0FBYyxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQ3JDLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztRQUVELElBQUksSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1lBQ3pCLE1BQU0sS0FBSyxHQUFHLEtBQUssQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLGVBQWUsRUFBRSxHQUFHLElBQUksQ0FBQyxDQUFDO1lBRTdELElBQUksSUFBSSxDQUFDLGtCQUFrQixDQUFDLFNBQVMsRUFBRSxDQUFDO2dCQUN0QyxPQUFPLEdBQUcsSUFBSSxDQUFDLGVBQWUsTUFBTSxLQUFlLEVBQUUsQ0FBQztZQUN4RCxDQUFDO1lBRUQsT0FBTyxLQUFLLENBQUM7UUFDZixDQUFDO1FBRUQsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3BCLENBQUM7SUFFTSxXQUFXO1FBQ2hCLEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNwQixJQUFJLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1lBQzFCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUN0QyxDQUFDO1FBQ0QsSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDckIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNqQyxDQUFDO0lBQ0gsQ0FBQztrSUEzRVUsNEJBQTRCLHNIQXVCN0IsZ0NBQWdDO2dJQXZCL0IsNEJBQTRCOzs0RkFBNUIsNEJBQTRCO2tCQUR4QyxJQUFJO21CQUFDLEVBQUUsSUFBSSxFQUFFLGNBQWMsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFOzswQkF3QnRDLE1BQU07MkJBQUMsZ0NBQWdDOztBQXVENUM7OztHQUdHO0FBRUgsTUFBTSxPQUFPLHlCQUEwQixTQUFRLDRCQUE0QjtrSUFBOUQseUJBQXlCO2dJQUF6Qix5QkFBeUI7OzRGQUF6Qix5QkFBeUI7a0JBRHJDLElBQUk7bUJBQUMsRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgSW5qZWN0LFxuICBPbkRlc3Ryb3ksXG4gIFBpcGUsXG4gIFBpcGVUcmFuc2Zvcm0sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgVHJhbnNsYXRlUGlwZSxcbiAgVHJhbnNsYXRlU2VydmljZSxcbn0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQge1xuICBTdWJzY3JpcHRpb24sXG59IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtcbiAgTG9jYWxpemF0aW9uQ29uZmlndXJhdGlvbixcbn0gZnJvbSAnLi4vY29yZSc7XG5pbXBvcnQge1xuICBMb2NhbGl6YXRpb25TZXJ2aWNlLFxufSBmcm9tICcuL2xvY2FsaXphdGlvbi5zZXJ2aWNlJztcbmltcG9ydCB7XG4gIExPQ0FMSVpBVElPTl9DT05GSUdVUkFUSU9OX1RPS0VOLFxufSBmcm9tICcuL2xvY2FsaXphdGlvbi50b2tlbic7XG5cbi8qKlxuICogVHJhbnNsYXRlUGlwZSBjbGFzcyBhZGRpbmcgZGVidWcgZnVuY3Rpb25hbGl0eVxuICovXG5AUGlwZSh7IG5hbWU6ICdvM3JUcmFuc2xhdGUnLCBwdXJlOiBmYWxzZSB9KVxuZXhwb3J0IGNsYXNzIE8zckxvY2FsaXphdGlvblRyYW5zbGF0ZVBpcGUgZXh0ZW5kcyBUcmFuc2xhdGVQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSwgT25EZXN0cm95IHtcbiAgLyoqXG4gICAqIEludGVybmFsIHN1YnNjcmlwdGlvbiB0byB0aGUgTG9jYWxpemF0aW9uU2VydmljZSBzaG93S2V5cyBtb2RlIGNoYW5nZXNcbiAgICovXG4gIHByb3RlY3RlZCByZWFkb25seSBvblNob3dLZXlzQ2hhbmdlPzogU3Vic2NyaXB0aW9uO1xuXG4gIC8qKlxuICAgKiBJbnRlcm5hbCBzdWJzY3JpcHRpb24gdG8gdGhlIExvY2FsaXphdGlvblNlcnZpY2Uga2V5IG1hcHBpbmdcbiAgICovXG4gIHByb3RlY3RlZCBvbktleUNoYW5nZT86IFN1YnNjcmlwdGlvbjtcblxuICAvKipcbiAgICogU2hvdWxkIHdlIGRpc3BsYXkga2V5cyBpbnN0ZWFkIG9mIHRyYW5zbGF0aW9uc1xuICAgKi9cbiAgcHJvdGVjdGVkIHNob3dLZXlzID0gZmFsc2U7XG5cbiAgLyoqIGxhc3Qga2V5IHF1ZXJpZWQgKi9cbiAgcHJvdGVjdGVkIGxhc3RRdWVyeUtleT86IHN0cmluZztcblxuICAvKiogbGFzdCBrZXkgcmVzb2x2ZWQgKi9cbiAgcHJvdGVjdGVkIGxhc3RSZXNvbHZlZEtleT86IHN0cmluZztcblxuICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgcmVhZG9ubHkgbG9jYWxpemF0aW9uU2VydmljZTogTG9jYWxpemF0aW9uU2VydmljZSwgdHJhbnNsYXRlU2VydmljZTogVHJhbnNsYXRlU2VydmljZSwgcHJvdGVjdGVkIHJlYWRvbmx5IGNoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBASW5qZWN0KExPQ0FMSVpBVElPTl9DT05GSUdVUkFUSU9OX1RPS0VOKSBwcm90ZWN0ZWQgcmVhZG9ubHkgbG9jYWxpemF0aW9uQ29uZmlnOiBMb2NhbGl6YXRpb25Db25maWd1cmF0aW9uKSB7XG4gICAgc3VwZXIodHJhbnNsYXRlU2VydmljZSwgY2hhbmdlRGV0ZWN0b3IpO1xuXG4gICAgaWYgKGxvY2FsaXphdGlvbkNvbmZpZy5lbmFibGVUcmFuc2xhdGlvbkRlYWN0aXZhdGlvbikge1xuICAgICAgdGhpcy5vblNob3dLZXlzQ2hhbmdlID0gdGhpcy5sb2NhbGl6YXRpb25TZXJ2aWNlLnNob3dLZXlzJC5zdWJzY3JpYmUoKHNob3dLZXlzKSA9PiB7XG4gICAgICAgIHRoaXMuc2hvd0tleXMgPSBzaG93S2V5cztcbiAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5tYXJrRm9yQ2hlY2soKTtcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBDYWxscyBvcmlnaW5hbCB0cmFuc2Zvcm0gbWV0aG9kIGFuZCBldmVudHVhbGx5IG91dHB1dHMgdGhlIGtleSBpZiBkZWJ1Z01vZGUgKGluIExvY2FsaXphdGlvbkNvbmZpZ3VyYXRpb24pIGlzIGVuYWJsZWRcbiAgICogQGluaGVyaXRkb2NcbiAgICovXG4gIHB1YmxpYyB0cmFuc2Zvcm0ocXVlcnk6IHN0cmluZywgLi4uYXJnczogYW55W10pOiBhbnkge1xuICAgIGlmICh0aGlzLnNob3dLZXlzKSB7XG4gICAgICByZXR1cm4gcXVlcnk7XG4gICAgfVxuXG4gICAgaWYgKHF1ZXJ5ICE9PSB0aGlzLmxhc3RRdWVyeUtleSkge1xuICAgICAgdGhpcy5sYXN0UXVlcnlLZXkgPSBxdWVyeTtcbiAgICAgIGlmICh0aGlzLm9uS2V5Q2hhbmdlKSB7XG4gICAgICAgIHRoaXMub25LZXlDaGFuZ2UudW5zdWJzY3JpYmUoKTtcbiAgICAgIH1cbiAgICAgIHRoaXMub25LZXlDaGFuZ2UgPSB0aGlzLmxvY2FsaXphdGlvblNlcnZpY2UuZ2V0S2V5KHF1ZXJ5KS5zdWJzY3JpYmUoKGtleSkgPT4ge1xuICAgICAgICB0aGlzLmxhc3RSZXNvbHZlZEtleSA9IGtleTtcbiAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5tYXJrRm9yQ2hlY2soKTtcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmxhc3RSZXNvbHZlZEtleSkge1xuICAgICAgY29uc3QgdmFsdWUgPSBzdXBlci50cmFuc2Zvcm0odGhpcy5sYXN0UmVzb2x2ZWRLZXksIC4uLmFyZ3MpO1xuXG4gICAgICBpZiAodGhpcy5sb2NhbGl6YXRpb25Db25maWcuZGVidWdNb2RlKSB7XG4gICAgICAgIHJldHVybiBgJHt0aGlzLmxhc3RSZXNvbHZlZEtleX0gLSAke3ZhbHVlIGFzIHN0cmluZ31gO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gdmFsdWU7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMudmFsdWU7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKSB7XG4gICAgc3VwZXIubmdPbkRlc3Ryb3koKTtcbiAgICBpZiAodGhpcy5vblNob3dLZXlzQ2hhbmdlKSB7XG4gICAgICB0aGlzLm9uU2hvd0tleXNDaGFuZ2UudW5zdWJzY3JpYmUoKTtcbiAgICB9XG4gICAgaWYgKHRoaXMub25LZXlDaGFuZ2UpIHtcbiAgICAgIHRoaXMub25LZXlDaGFuZ2UudW5zdWJzY3JpYmUoKTtcbiAgICB9XG4gIH1cbn1cblxuLyoqXG4gKiBUcmFuc2xhdGVQaXBlIGNsYXNzIGFkZGluZyBkZWJ1ZyBmdW5jdGlvbmFsaXR5XG4gKiBAZGVwcmVjYXRlZCBwbGVhc2UgdXNlIE8zckxvY2FsaXphdGlvblRyYW5zbGF0ZVBpcGUsIHdpbGwgYmUgcmVtb3ZlZCBpbiB2MTIuXG4gKi9cbkBQaXBlKHsgbmFtZTogJ3RyYW5zbGF0ZScsIHB1cmU6IGZhbHNlIH0pXG5leHBvcnQgY2xhc3MgTG9jYWxpemF0aW9uVHJhbnNsYXRlUGlwZSBleHRlbmRzIE8zckxvY2FsaXphdGlvblRyYW5zbGF0ZVBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHt9XG4iXX0=