@o3r/localization 11.6.0-prerelease.0 → 11.6.0-prerelease.10
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/annotations/localization.d.ts.map +1 -1
- package/builders/helpers/localization.generator.d.ts +1 -1
- package/builders/helpers/localization.generator.d.ts.map +1 -1
- package/builders/helpers/localization.generator.js +20 -22
- package/builders/i18n/index.d.ts.map +1 -1
- package/builders/i18n/index.js +2 -2
- package/builders/i18n/schema.d.ts +0 -2
- package/builders/i18n/schema.d.ts.map +1 -1
- package/builders/localization/index.d.ts +0 -2
- package/builders/localization/index.d.ts.map +1 -1
- package/builders/localization/index.js +28 -41
- package/builders/localization/schema.d.ts.map +1 -1
- package/builders/localization-extractor/index.d.ts.map +1 -1
- package/builders/localization-extractor/index.js +19 -19
- package/builders/localization-extractor/schema.d.ts.map +1 -1
- package/builders/localization-extractor/validations.d.ts +0 -2
- package/builders/localization-extractor/validations.d.ts.map +1 -1
- package/builders/localization-extractor/validations.js +3 -7
- package/builders/metadata-check/helpers/localization-metadata-comparison.helper.d.ts +1 -1
- package/builders/metadata-check/helpers/localization-metadata-comparison.helper.d.ts.map +1 -1
- package/builders/metadata-check/index.d.ts.map +1 -1
- package/builders/metadata-check/schema.d.ts.map +1 -1
- package/core/localization.configuration.d.ts.map +1 -1
- package/core/translatable.d.ts.map +1 -1
- package/core/translate-messageformat-lazy.compiler.d.ts.map +1 -1
- package/devkit/localization-devkit.interface.d.ts.map +1 -1
- package/devkit/localization-devtools.console.service.d.ts.map +1 -1
- package/devkit/localization-devtools.message.service.d.ts +1 -2
- package/devkit/localization-devtools.message.service.d.ts.map +1 -1
- package/devkit/localization-devtools.module.d.ts.map +1 -1
- package/devkit/localization-devtools.service.d.ts.map +1 -1
- package/devkit/localization-devtools.token.d.ts.map +1 -1
- package/esm2022/annotations/localization.mjs +3 -3
- package/esm2022/core/index.mjs +1 -1
- package/esm2022/core/localization.configuration.mjs +1 -1
- package/esm2022/core/translatable.mjs +1 -1
- package/esm2022/core/translate-messageformat-lazy.compiler.mjs +9 -10
- package/esm2022/devkit/index.mjs +1 -1
- package/esm2022/devkit/localization-devkit.interface.mjs +1 -1
- package/esm2022/devkit/localization-devtools.console.service.mjs +5 -7
- package/esm2022/devkit/localization-devtools.message.service.mjs +9 -10
- package/esm2022/devkit/localization-devtools.module.mjs +7 -7
- package/esm2022/devkit/localization-devtools.service.mjs +5 -5
- package/esm2022/devkit/localization-devtools.token.mjs +2 -2
- package/esm2022/public_api.mjs +1 -2
- package/esm2022/rules-engine/localization.handler-action.mjs +5 -5
- package/esm2022/rules-engine/localization.interfaces.mjs +1 -1
- package/esm2022/rules-engine/localization.rules-engine.module.mjs +4 -4
- package/esm2022/stores/index.mjs +1 -1
- package/esm2022/stores/localization-override/localization-override.actions.mjs +2 -2
- package/esm2022/stores/localization-override/localization-override.module.mjs +5 -5
- package/esm2022/stores/localization-override/localization-override.reducer.mjs +2 -2
- package/esm2022/stores/localization-override/localization-override.selectors.mjs +3 -3
- package/esm2022/stores/localization-override/localization-override.state.mjs +1 -1
- package/esm2022/stores/localization-override/localization-override.sync.mjs +2 -2
- package/esm2022/tools/index.mjs +1 -1
- package/esm2022/tools/localization-translate.directive.mjs +6 -6
- package/esm2022/tools/localization-translate.pipe.mjs +5 -5
- package/esm2022/tools/localization.module.mjs +23 -21
- package/esm2022/tools/localization.provider.mjs +7 -7
- package/esm2022/tools/localization.service.mjs +18 -23
- package/esm2022/tools/localization.token.mjs +2 -2
- package/esm2022/tools/localized-currency.pipe.mjs +4 -4
- package/esm2022/tools/localized-date.pipe.mjs +5 -10
- package/esm2022/tools/localized-decimal.pipe.mjs +4 -4
- package/esm2022/tools/text-direction.service.mjs +6 -6
- package/esm2022/tools/text-directionality.service.mjs +4 -4
- package/esm2022/tools/translations-loader.mjs +13 -13
- package/fesm2022/o3r-localization-rules-engine.mjs.map +1 -1
- package/fesm2022/o3r-localization.mjs +33 -45
- package/fesm2022/o3r-localization.mjs.map +1 -1
- package/package.json +6 -6
- package/public_api.d.ts +0 -1
- package/public_api.d.ts.map +1 -1
- package/rules-engine/localization.handler-action.d.ts +1 -1
- package/rules-engine/localization.handler-action.d.ts.map +1 -1
- package/rules-engine/localization.interfaces.d.ts.map +1 -1
- package/rules-engine/localization.rules-engine.module.d.ts.map +1 -1
- package/schematics/add-localization-key/index.d.ts.map +1 -1
- package/schematics/add-localization-key/index.js +12 -10
- package/schematics/add-localization-key/schema.d.ts.map +1 -1
- package/schematics/cms-adapter/index.d.ts.map +1 -1
- package/schematics/cms-adapter/index.js +1 -1
- package/schematics/localization-base/index.d.ts.map +1 -1
- package/schematics/localization-base/index.js +25 -26
- package/schematics/localization-to-component/index.d.ts.map +1 -1
- package/schematics/localization-to-component/index.js +10 -5
- package/schematics/localization-to-component/schema.d.ts.map +1 -1
- package/schematics/ng-add/helpers/devtools-registration.d.ts +0 -3
- package/schematics/ng-add/helpers/devtools-registration.d.ts.map +1 -1
- package/schematics/ng-add/helpers/devtools-registration.js +2 -5
- package/schematics/ng-add/index.d.ts.map +1 -1
- package/schematics/ng-add/index.js +2 -8
- package/schematics/ng-add/schema.d.ts.map +1 -1
- package/schematics/ng-update/v10-0/index.d.ts.map +1 -1
- package/schematics/ng-update/v10-0/index.js +2 -1
- package/stores/localization-override/localization-override.actions.d.ts.map +1 -1
- package/stores/localization-override/localization-override.module.d.ts.map +1 -1
- package/stores/localization-override/localization-override.reducer.d.ts.map +1 -1
- package/stores/localization-override/localization-override.selectors.d.ts.map +1 -1
- package/stores/localization-override/localization-override.state.d.ts.map +1 -1
- package/stores/localization-override/localization-override.sync.d.ts.map +1 -1
- package/tools/localization-translate.directive.d.ts.map +1 -1
- package/tools/localization-translate.pipe.d.ts.map +1 -1
- package/tools/localization.module.d.ts.map +1 -1
- package/tools/localization.provider.d.ts.map +1 -1
- package/tools/localization.service.d.ts.map +1 -1
- package/tools/localization.token.d.ts.map +1 -1
- package/tools/localized-currency.pipe.d.ts.map +1 -1
- package/tools/localized-date.pipe.d.ts.map +1 -1
- package/tools/localized-decimal.pipe.d.ts.map +1 -1
- package/tools/text-direction.service.d.ts.map +1 -1
- package/tools/text-directionality.service.d.ts.map +1 -1
- package/tools/translations-loader.d.ts +2 -2
- package/tools/translations-loader.d.ts.map +1 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { CurrencyPipe } from '@angular/common';
|
|
2
|
-
import { ChangeDetectorRef, Pipe } from '@angular/core';
|
|
3
|
-
import { LocalizationService } from './localization.service';
|
|
1
|
+
import { CurrencyPipe, } from '@angular/common';
|
|
2
|
+
import { ChangeDetectorRef, Pipe, } from '@angular/core';
|
|
3
|
+
import { LocalizationService, } from './localization.service';
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
5
5
|
import * as i1 from "./localization.service";
|
|
6
6
|
/**
|
|
@@ -29,4 +29,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImpo
|
|
|
29
29
|
pure: false
|
|
30
30
|
}]
|
|
31
31
|
}], ctorParameters: () => [{ type: i1.LocalizationService }, { type: i0.ChangeDetectorRef }] });
|
|
32
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWxpemVkLWN1cnJlbmN5LnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdG9vbHMvbG9jYWxpemVkLWN1cnJlbmN5LnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFlBQVksR0FDYixNQUFNLGlCQUFpQixDQUFDO0FBQ3pCLE9BQU8sRUFDTCxpQkFBaUIsRUFFakIsSUFBSSxHQUVMLE1BQU0sZUFBZSxDQUFDO0FBSXZCLE9BQU8sRUFDTCxtQkFBbUIsR0FDcEIsTUFBTSx3QkFBd0IsQ0FBQzs7O0FBRWhDOztHQUVHO0FBS0gsTUFBTSxPQUFPLHFCQUFzQixTQUFRLFlBQVk7SUFHckQsWUFBNkIsbUJBQXdDLEVBQW1CLGlCQUFvQztRQUMxSCxLQUFLLENBQUMsbUJBQW1CLENBQUMsa0JBQWtCLEVBQUUsQ0FBQyxDQUFDO1FBRHJCLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFBbUIsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQUUxSCxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxtQkFBbUIsRUFBRSxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQzdGLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxZQUFZLEVBQUUsQ0FDdEMsQ0FBQztJQUNKLENBQUM7SUFVTSxTQUFTLENBQ2QsS0FBeUMsRUFBRSxZQUFxQixFQUFFLE9BQTBCLEVBQUUsVUFBbUIsRUFBRSxNQUFlO1FBQ2xJLE9BQU8sS0FBSyxDQUFDLFNBQVMsQ0FBQyxLQUFLLEVBQUUsWUFBWSxFQUFFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxJQUFJLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxrQkFBa0IsRUFBRSxDQUFDLENBQUM7SUFDNUgsQ0FBQztJQUVNLFdBQVc7UUFDaEIsSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNsQyxDQUFDO2tJQXpCVSxxQkFBcUI7Z0lBQXJCLHFCQUFxQjs7NEZBQXJCLHFCQUFxQjtrQkFKakMsSUFBSTttQkFBQztvQkFDSixJQUFJLEVBQUUsVUFBVTtvQkFDaEIsSUFBSSxFQUFFLEtBQUs7aUJBQ1oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDdXJyZW5jeVBpcGUsXG59IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgT25EZXN0cm95LFxuICBQaXBlLFxuICBQaXBlVHJhbnNmb3JtLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIFN1YnNjcmlwdGlvbixcbn0gZnJvbSAncnhqcyc7XG5pbXBvcnQge1xuICBMb2NhbGl6YXRpb25TZXJ2aWNlLFxufSBmcm9tICcuL2xvY2FsaXphdGlvbi5zZXJ2aWNlJztcblxuLyoqXG4gKiBOYXRpdmUgYW5ndWxhciBDdXJyZW5jeVBpcGUgdGFraW5nIHRoZSBjdXJyZW50IGxhbmcgaW50byBjb25zaWRlcmF0aW9uXG4gKi9cbkBQaXBlKHtcbiAgbmFtZTogJ2N1cnJlbmN5JyxcbiAgcHVyZTogZmFsc2Vcbn0pXG5leHBvcnQgY2xhc3MgTG9jYWxpemVkQ3VycmVuY3lQaXBlIGV4dGVuZHMgQ3VycmVuY3lQaXBlIGltcGxlbWVudHMgT25EZXN0cm95LCBQaXBlVHJhbnNmb3JtIHtcbiAgcHJpdmF0ZSByZWFkb25seSBvbkxhbmdDaGFuZ2U6IFN1YnNjcmlwdGlvbjtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IGxvY2FsaXphdGlvblNlcnZpY2U6IExvY2FsaXphdGlvblNlcnZpY2UsIHByaXZhdGUgcmVhZG9ubHkgY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmKSB7XG4gICAgc3VwZXIobG9jYWxpemF0aW9uU2VydmljZS5nZXRDdXJyZW50TGFuZ3VhZ2UoKSk7XG4gICAgdGhpcy5vbkxhbmdDaGFuZ2UgPSB0aGlzLmxvY2FsaXphdGlvblNlcnZpY2UuZ2V0VHJhbnNsYXRlU2VydmljZSgpLm9uTGFuZ0NoYW5nZS5zdWJzY3JpYmUoKCkgPT5cbiAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKClcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIEBpbmhlcml0ZG9jXG4gICAqL1xuICBwdWJsaWMgdHJhbnNmb3JtKHZhbHVlOiBudW1iZXIgfCBzdHJpbmcsIGN1cnJlbmN5Q29kZT86IHN0cmluZywgZGlzcGxheT86IHN0cmluZyB8IGJvb2xlYW4sIGRpZ2l0c0luZm8/OiBzdHJpbmcsIGxvY2FsZT86IHN0cmluZyk6IHN0cmluZyB8IG51bGw7XG4gIHB1YmxpYyB0cmFuc2Zvcm0odmFsdWU6IG51bGwgfCB1bmRlZmluZWQsIGN1cnJlbmN5Q29kZT86IHN0cmluZywgZGlzcGxheT86IHN0cmluZyB8IGJvb2xlYW4sIGRpZ2l0c0luZm8/OiBzdHJpbmcsIGxvY2FsZT86IHN0cmluZyk6IG51bGw7XG4gIHB1YmxpYyB0cmFuc2Zvcm0oXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC91bmlmaWVkLXNpZ25hdHVyZXMgLS0gRXhwb3NlIHNhbWUgc2lnbmF0dXJlcyBhcyBhbmd1bGFyIEN1cnJlbmN5UGlwZVxuICAgIHZhbHVlOiBudW1iZXIgfCBzdHJpbmcgfCBudWxsIHwgdW5kZWZpbmVkLCBjdXJyZW5jeUNvZGU/OiBzdHJpbmcsIGRpc3BsYXk/OiBzdHJpbmcgfCBib29sZWFuLCBkaWdpdHNJbmZvPzogc3RyaW5nLCBsb2NhbGU/OiBzdHJpbmcpOiBzdHJpbmcgfCBudWxsO1xuICBwdWJsaWMgdHJhbnNmb3JtKFxuICAgIHZhbHVlOiBudW1iZXIgfCBzdHJpbmcgfCBudWxsIHwgdW5kZWZpbmVkLCBjdXJyZW5jeUNvZGU/OiBzdHJpbmcsIGRpc3BsYXk/OiBzdHJpbmcgfCBib29sZWFuLCBkaWdpdHNJbmZvPzogc3RyaW5nLCBsb2NhbGU/OiBzdHJpbmcpOiBzdHJpbmcgfCBudWxsIHtcbiAgICByZXR1cm4gc3VwZXIudHJhbnNmb3JtKHZhbHVlLCBjdXJyZW5jeUNvZGUsIGRpc3BsYXksIGRpZ2l0c0luZm8sIGxvY2FsZSB8fCB0aGlzLmxvY2FsaXphdGlvblNlcnZpY2UuZ2V0Q3VycmVudExhbmd1YWdlKCkpO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMub25MYW5nQ2hhbmdlLnVuc3Vic2NyaWJlKCk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { DatePipe } from '@angular/common';
|
|
2
|
-
import { ChangeDetectorRef, Pipe } from '@angular/core';
|
|
3
|
-
import { LocalizationService } from './localization.service';
|
|
1
|
+
import { DatePipe, } from '@angular/common';
|
|
2
|
+
import { ChangeDetectorRef, Pipe, } from '@angular/core';
|
|
3
|
+
import { LocalizationService, } from './localization.service';
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
5
5
|
import * as i1 from "./localization.service";
|
|
6
6
|
/**
|
|
@@ -14,12 +14,7 @@ export class LocalizedDatePipe extends DatePipe {
|
|
|
14
14
|
this.onLangChange = this.localizationService.getTranslateService().onLangChange.subscribe(() => this.changeDetectorRef.markForCheck());
|
|
15
15
|
}
|
|
16
16
|
transform(value, format = 'mediumDate', timezone, locale) {
|
|
17
|
-
|
|
18
|
-
return format;
|
|
19
|
-
}
|
|
20
|
-
else {
|
|
21
|
-
return super.transform(value, format, timezone, locale || this.localizationService.getCurrentLanguage());
|
|
22
|
-
}
|
|
17
|
+
return this.localizationService.showKeys ? format : super.transform(value, format, timezone, locale || this.localizationService.getCurrentLanguage());
|
|
23
18
|
}
|
|
24
19
|
ngOnDestroy() {
|
|
25
20
|
this.onLangChange.unsubscribe();
|
|
@@ -34,4 +29,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImpo
|
|
|
34
29
|
pure: false
|
|
35
30
|
}]
|
|
36
31
|
}], ctorParameters: () => [{ type: i1.LocalizationService }, { type: i0.ChangeDetectorRef }] });
|
|
37
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWxpemVkLWRhdGUucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90b29scy9sb2NhbGl6ZWQtZGF0ZS5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxRQUFRLEdBQ1QsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QixPQUFPLEVBQ0wsaUJBQWlCLEVBRWpCLElBQUksR0FFTCxNQUFNLGVBQWUsQ0FBQztBQUl2QixPQUFPLEVBQ0wsbUJBQW1CLEdBQ3BCLE1BQU0sd0JBQXdCLENBQUM7OztBQUVoQzs7R0FFRztBQUtILE1BQU0sT0FBTyxpQkFBa0IsU0FBUSxRQUFRO0lBRzdDLFlBQTZCLG1CQUF3QyxFQUFtQixpQkFBb0M7UUFDMUgsS0FBSyxDQUFDLG1CQUFtQixDQUFDLGtCQUFrQixFQUFFLENBQUMsQ0FBQztRQURyQix3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXFCO1FBQW1CLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7UUFFMUgsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsbUJBQW1CLENBQUMsbUJBQW1CLEVBQUUsQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUM3RixJQUFJLENBQUMsaUJBQWlCLENBQUMsWUFBWSxFQUFFLENBQ3RDLENBQUM7SUFDSixDQUFDO0lBV00sU0FBUyxDQUNkLEtBQWdELEVBQUUsTUFBTSxHQUFHLFlBQVksRUFBRSxRQUFpQixFQUMxRixNQUFlO1FBQ2YsT0FBTyxJQUFJLENBQUMsbUJBQW1CLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsTUFBTSxJQUFJLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxrQkFBa0IsRUFBRSxDQUFDLENBQUM7SUFDeEosQ0FBQztJQUVNLFdBQVc7UUFDaEIsSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNsQyxDQUFDO2tJQTNCVSxpQkFBaUI7Z0lBQWpCLGlCQUFpQjs7NEZBQWpCLGlCQUFpQjtrQkFKN0IsSUFBSTttQkFBQztvQkFDSixJQUFJLEVBQUUsTUFBTTtvQkFDWixJQUFJLEVBQUUsS0FBSztpQkFDWiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIERhdGVQaXBlLFxufSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIE9uRGVzdHJveSxcbiAgUGlwZSxcbiAgUGlwZVRyYW5zZm9ybSxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBTdWJzY3JpcHRpb24sXG59IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtcbiAgTG9jYWxpemF0aW9uU2VydmljZSxcbn0gZnJvbSAnLi9sb2NhbGl6YXRpb24uc2VydmljZSc7XG5cbi8qKlxuICogTmF0aXZlIGFuZ3VsYXIgRGF0ZVBpcGUgdGFraW5nIHRoZSBjdXJyZW50IGxhbmcgaW50byBjb25zaWRlcmF0aW9uXG4gKi9cbkBQaXBlKHtcbiAgbmFtZTogJ2RhdGUnLFxuICBwdXJlOiBmYWxzZVxufSlcbmV4cG9ydCBjbGFzcyBMb2NhbGl6ZWREYXRlUGlwZSBleHRlbmRzIERhdGVQaXBlIGltcGxlbWVudHMgT25EZXN0cm95LCBQaXBlVHJhbnNmb3JtIHtcbiAgcHJpdmF0ZSByZWFkb25seSBvbkxhbmdDaGFuZ2U6IFN1YnNjcmlwdGlvbjtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IGxvY2FsaXphdGlvblNlcnZpY2U6IExvY2FsaXphdGlvblNlcnZpY2UsIHByaXZhdGUgcmVhZG9ubHkgY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmKSB7XG4gICAgc3VwZXIobG9jYWxpemF0aW9uU2VydmljZS5nZXRDdXJyZW50TGFuZ3VhZ2UoKSk7XG4gICAgdGhpcy5vbkxhbmdDaGFuZ2UgPSB0aGlzLmxvY2FsaXphdGlvblNlcnZpY2UuZ2V0VHJhbnNsYXRlU2VydmljZSgpLm9uTGFuZ0NoYW5nZS5zdWJzY3JpYmUoKCkgPT5cbiAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKClcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIEBpbmhlcml0ZG9jXG4gICAqL1xuICBwdWJsaWMgdHJhbnNmb3JtKHZhbHVlOiBEYXRlIHwgc3RyaW5nIHwgbnVtYmVyLCBmb3JtYXQ/OiBzdHJpbmcsIHRpbWV6b25lPzogc3RyaW5nLCBsb2NhbGU/OiBzdHJpbmcpOiBzdHJpbmdcbiAgICB8IG51bGw7XG4gIHB1YmxpYyB0cmFuc2Zvcm0odmFsdWU6IG51bGwgfCB1bmRlZmluZWQsIGZvcm1hdD86IHN0cmluZywgdGltZXpvbmU/OiBzdHJpbmcsIGxvY2FsZT86IHN0cmluZyk6IG51bGw7XG4gIHB1YmxpYyB0cmFuc2Zvcm0oXG4gICAgdmFsdWU6IERhdGUgfCBzdHJpbmcgfCBudW1iZXIgfCBudWxsIHwgdW5kZWZpbmVkLCBmb3JtYXQ/OiBzdHJpbmcsIHRpbWV6b25lPzogc3RyaW5nLFxuICAgIGxvY2FsZT86IHN0cmluZyk6IHN0cmluZyB8IG51bGw7XG4gIHB1YmxpYyB0cmFuc2Zvcm0oXG4gICAgdmFsdWU6IERhdGUgfCBzdHJpbmcgfCBudW1iZXIgfCBudWxsIHwgdW5kZWZpbmVkLCBmb3JtYXQgPSAnbWVkaXVtRGF0ZScsIHRpbWV6b25lPzogc3RyaW5nLFxuICAgIGxvY2FsZT86IHN0cmluZyk6IHN0cmluZyB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLmxvY2FsaXphdGlvblNlcnZpY2Uuc2hvd0tleXMgPyBmb3JtYXQgOiBzdXBlci50cmFuc2Zvcm0odmFsdWUsIGZvcm1hdCwgdGltZXpvbmUsIGxvY2FsZSB8fCB0aGlzLmxvY2FsaXphdGlvblNlcnZpY2UuZ2V0Q3VycmVudExhbmd1YWdlKCkpO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMub25MYW5nQ2hhbmdlLnVuc3Vic2NyaWJlKCk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { DecimalPipe } from '@angular/common';
|
|
2
|
-
import { ChangeDetectorRef, Pipe } from '@angular/core';
|
|
3
|
-
import { LocalizationService } from './localization.service';
|
|
1
|
+
import { DecimalPipe, } from '@angular/common';
|
|
2
|
+
import { ChangeDetectorRef, Pipe, } from '@angular/core';
|
|
3
|
+
import { LocalizationService, } from './localization.service';
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
5
5
|
import * as i1 from "./localization.service";
|
|
6
6
|
/**
|
|
@@ -29,4 +29,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImpo
|
|
|
29
29
|
pure: false
|
|
30
30
|
}]
|
|
31
31
|
}], ctorParameters: () => [{ type: i1.LocalizationService }, { type: i0.ChangeDetectorRef }] });
|
|
32
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWxpemVkLWRlY2ltYWwucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90b29scy9sb2NhbGl6ZWQtZGVjaW1hbC5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxXQUFXLEdBQ1osTUFBTSxpQkFBaUIsQ0FBQztBQUN6QixPQUFPLEVBQ0wsaUJBQWlCLEVBRWpCLElBQUksR0FFTCxNQUFNLGVBQWUsQ0FBQztBQUl2QixPQUFPLEVBQ0wsbUJBQW1CLEdBQ3BCLE1BQU0sd0JBQXdCLENBQUM7OztBQUVoQzs7R0FFRztBQUtILE1BQU0sT0FBTyxvQkFBcUIsU0FBUSxXQUFXO0lBR25ELFlBQTZCLG1CQUF3QyxFQUFtQixpQkFBb0M7UUFDMUgsS0FBSyxDQUFDLG1CQUFtQixDQUFDLGtCQUFrQixFQUFFLENBQUMsQ0FBQztRQURyQix3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXFCO1FBQW1CLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7UUFFMUgsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsbUJBQW1CLENBQUMsbUJBQW1CLEVBQUUsQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUM3RixJQUFJLENBQUMsaUJBQWlCLENBQUMsWUFBWSxFQUFFLENBQ3RDLENBQUM7SUFDSixDQUFDO0lBT00sU0FBUyxDQUFDLEtBQXlDLEVBQUUsVUFBbUIsRUFBRSxNQUFlO1FBQzlGLE9BQU8sS0FBSyxDQUFDLFNBQVMsQ0FBQyxLQUFLLEVBQUUsVUFBVSxFQUFFLE1BQU0sSUFBSSxJQUFJLENBQUMsbUJBQW1CLENBQUMsa0JBQWtCLEVBQUUsQ0FBQyxDQUFDO0lBQ3JHLENBQUM7SUFFTSxXQUFXO1FBQ2hCLElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDbEMsQ0FBQztrSUFyQlUsb0JBQW9CO2dJQUFwQixvQkFBb0I7OzRGQUFwQixvQkFBb0I7a0JBSmhDLElBQUk7bUJBQUM7b0JBQ0osSUFBSSxFQUFFLFNBQVM7b0JBQ2YsSUFBSSxFQUFFLEtBQUs7aUJBQ1oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBEZWNpbWFsUGlwZSxcbn0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBPbkRlc3Ryb3ksXG4gIFBpcGUsXG4gIFBpcGVUcmFuc2Zvcm0sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgU3Vic2NyaXB0aW9uLFxufSBmcm9tICdyeGpzJztcbmltcG9ydCB7XG4gIExvY2FsaXphdGlvblNlcnZpY2UsXG59IGZyb20gJy4vbG9jYWxpemF0aW9uLnNlcnZpY2UnO1xuXG4vKipcbiAqIE5hdGl2ZSBhbmd1bGFyIERlY2ltYWxQaXBlIHRha2luZyB0aGUgY3VycmVudCBsYW5nIGludG8gY29uc2lkZXJhdGlvblxuICovXG5AUGlwZSh7XG4gIG5hbWU6ICdkZWNpbWFsJyxcbiAgcHVyZTogZmFsc2Vcbn0pXG5leHBvcnQgY2xhc3MgTG9jYWxpemVkRGVjaW1hbFBpcGUgZXh0ZW5kcyBEZWNpbWFsUGlwZSBpbXBsZW1lbnRzIE9uRGVzdHJveSwgUGlwZVRyYW5zZm9ybSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgb25MYW5nQ2hhbmdlOiBTdWJzY3JpcHRpb247XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBsb2NhbGl6YXRpb25TZXJ2aWNlOiBMb2NhbGl6YXRpb25TZXJ2aWNlLCBwcml2YXRlIHJlYWRvbmx5IGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZikge1xuICAgIHN1cGVyKGxvY2FsaXphdGlvblNlcnZpY2UuZ2V0Q3VycmVudExhbmd1YWdlKCkpO1xuICAgIHRoaXMub25MYW5nQ2hhbmdlID0gdGhpcy5sb2NhbGl6YXRpb25TZXJ2aWNlLmdldFRyYW5zbGF0ZVNlcnZpY2UoKS5vbkxhbmdDaGFuZ2Uuc3Vic2NyaWJlKCgpID0+XG4gICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAaW5oZXJpdGRvY1xuICAgKi9cbiAgcHVibGljIHRyYW5zZm9ybSh2YWx1ZTogbnVtYmVyIHwgc3RyaW5nLCBkaWdpdHNJbmZvPzogc3RyaW5nLCBsb2NhbGU/OiBzdHJpbmcpOiBzdHJpbmcgfCBudWxsO1xuICBwdWJsaWMgdHJhbnNmb3JtKHZhbHVlOiBudWxsIHwgdW5kZWZpbmVkLCBkaWdpdHNJbmZvPzogc3RyaW5nLCBsb2NhbGU/OiBzdHJpbmcpOiBudWxsO1xuICBwdWJsaWMgdHJhbnNmb3JtKHZhbHVlOiBudW1iZXIgfCBzdHJpbmcgfCBudWxsIHwgdW5kZWZpbmVkLCBkaWdpdHNJbmZvPzogc3RyaW5nLCBsb2NhbGU/OiBzdHJpbmcpOiBzdHJpbmcgfCBudWxsIHtcbiAgICByZXR1cm4gc3VwZXIudHJhbnNmb3JtKHZhbHVlLCBkaWdpdHNJbmZvLCBsb2NhbGUgfHwgdGhpcy5sb2NhbGl6YXRpb25TZXJ2aWNlLmdldEN1cnJlbnRMYW5ndWFnZSgpKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLm9uTGFuZ0NoYW5nZS51bnN1YnNjcmliZSgpO1xuICB9XG59XG4iXX0=
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { Directionality } from '@angular/cdk/bidi';
|
|
2
|
-
import { Inject, Injectable, RendererFactory2 } from '@angular/core';
|
|
3
|
-
import { TranslateService } from '@ngx-translate/core';
|
|
4
|
-
import { LOCALIZATION_CONFIGURATION_TOKEN } from './localization.token';
|
|
1
|
+
import { Directionality, } from '@angular/cdk/bidi';
|
|
2
|
+
import { Inject, Injectable, RendererFactory2, } from '@angular/core';
|
|
3
|
+
import { TranslateService, } from '@ngx-translate/core';
|
|
4
|
+
import { LOCALIZATION_CONFIGURATION_TOKEN, } from './localization.token';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
6
|
import * as i1 from "@ngx-translate/core";
|
|
7
7
|
import * as i2 from "@angular/cdk/bidi";
|
|
@@ -25,7 +25,7 @@ export class TextDirectionService {
|
|
|
25
25
|
return this.subscription;
|
|
26
26
|
}
|
|
27
27
|
this.subscription = this.translateService.onLangChange.subscribe((event) => {
|
|
28
|
-
const direction = this.configuration.rtlLanguages.
|
|
28
|
+
const direction = this.configuration.rtlLanguages.includes(event.lang.split('-')[0]) ? 'rtl' : 'ltr';
|
|
29
29
|
this.renderer.setAttribute(document.body, 'dir', direction);
|
|
30
30
|
this.directionality.change.emit(direction);
|
|
31
31
|
});
|
|
@@ -40,4 +40,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImpo
|
|
|
40
40
|
type: Inject,
|
|
41
41
|
args: [LOCALIZATION_CONFIGURATION_TOKEN]
|
|
42
42
|
}] }, { type: i0.RendererFactory2 }, { type: i2.Directionality }] });
|
|
43
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
43
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC1kaXJlY3Rpb24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90b29scy90ZXh0LWRpcmVjdGlvbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxjQUFjLEdBQ2YsTUFBTSxtQkFBbUIsQ0FBQztBQUMzQixPQUFPLEVBQ0wsTUFBTSxFQUNOLFVBQVUsRUFFVixnQkFBZ0IsR0FDakIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUVMLGdCQUFnQixHQUNqQixNQUFNLHFCQUFxQixDQUFDO0FBTzdCLE9BQU8sRUFDTCxnQ0FBZ0MsR0FDakMsTUFBTSxzQkFBc0IsQ0FBQzs7OztBQUU5Qjs7R0FFRztBQUVILE1BQU0sT0FBTyxvQkFBb0I7SUFJL0IsWUFDbUIsZ0JBQWtDLEVBQ1EsYUFBd0MsRUFDbEYsZUFBaUMsRUFDakMsY0FBOEI7UUFIOUIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNRLGtCQUFhLEdBQWIsYUFBYSxDQUEyQjtRQUNsRixvQkFBZSxHQUFmLGVBQWUsQ0FBa0I7UUFDakMsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBQy9DLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ2xFLENBQUM7SUFFRDs7O09BR0c7SUFDSSx3QkFBd0I7UUFDN0IsSUFBSSxJQUFJLENBQUMsWUFBWSxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNuRCxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUM7UUFDM0IsQ0FBQztRQUNELElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsQ0FBQyxLQUFzQixFQUFFLEVBQUU7WUFDMUYsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO1lBQ3JHLElBQUksQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLFNBQVMsQ0FBQyxDQUFDO1lBQzVELElBQUksQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUM3QyxDQUFDLENBQUMsQ0FBQztRQUNILE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQztJQUMzQixDQUFDO2tJQTFCVSxvQkFBb0Isa0RBTXJCLGdDQUFnQztzSUFOL0Isb0JBQW9COzs0RkFBcEIsb0JBQW9CO2tCQURoQyxVQUFVOzswQkFPTixNQUFNOzJCQUFDLGdDQUFnQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIERpcmVjdGlvbmFsaXR5LFxufSBmcm9tICdAYW5ndWxhci9jZGsvYmlkaSc7XG5pbXBvcnQge1xuICBJbmplY3QsXG4gIEluamVjdGFibGUsXG4gIFJlbmRlcmVyMixcbiAgUmVuZGVyZXJGYWN0b3J5Mixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBMYW5nQ2hhbmdlRXZlbnQsXG4gIFRyYW5zbGF0ZVNlcnZpY2UsXG59IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHtcbiAgU3Vic2NyaXB0aW9uLFxufSBmcm9tICdyeGpzJztcbmltcG9ydCB7XG4gIExvY2FsaXphdGlvbkNvbmZpZ3VyYXRpb24sXG59IGZyb20gJy4uL2NvcmUnO1xuaW1wb3J0IHtcbiAgTE9DQUxJWkFUSU9OX0NPTkZJR1VSQVRJT05fVE9LRU4sXG59IGZyb20gJy4vbG9jYWxpemF0aW9uLnRva2VuJztcblxuLyoqXG4gKiBTZXJ2aWNlIGZvciBoYW5kbGluZyB0aGUgdGV4dCBkaXJlY3Rpb24gYmFzZWQgb24gdGhlIExvY2FsaXphdGlvbkNvbmZpZ3VyYXRpb25cbiAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFRleHREaXJlY3Rpb25TZXJ2aWNlIHtcbiAgcHJpdmF0ZSBzdWJzY3JpcHRpb24/OiBTdWJzY3JpcHRpb247XG4gIHByaXZhdGUgcmVhZG9ubHkgcmVuZGVyZXI6IFJlbmRlcmVyMjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IHRyYW5zbGF0ZVNlcnZpY2U6IFRyYW5zbGF0ZVNlcnZpY2UsXG4gICAgQEluamVjdChMT0NBTElaQVRJT05fQ09ORklHVVJBVElPTl9UT0tFTikgcHJpdmF0ZSByZWFkb25seSBjb25maWd1cmF0aW9uOiBMb2NhbGl6YXRpb25Db25maWd1cmF0aW9uLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgcmVuZGVyZXJGYWN0b3J5OiBSZW5kZXJlckZhY3RvcnkyLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgZGlyZWN0aW9uYWxpdHk6IERpcmVjdGlvbmFsaXR5KSB7XG4gICAgdGhpcy5yZW5kZXJlciA9IHRoaXMucmVuZGVyZXJGYWN0b3J5LmNyZWF0ZVJlbmRlcmVyKG51bGwsIG51bGwpO1xuICB9XG5cbiAgLyoqXG4gICAqIFVwZGF0ZXMgdGhlIGRpciBhdHRyaWJ1dGUgb24gYm9keSBIVE1MIHRhZy5cbiAgICogQHJldHVybnMgYSBzdWJzY3JpcHRpb24gdGhhdCB1cGRhdGVzIHRoZSBkaXIgYXR0cmlidXRlXG4gICAqL1xuICBwdWJsaWMgb25MYW5nQ2hhbmdlU3Vic2NyaXB0aW9uKCkge1xuICAgIGlmICh0aGlzLnN1YnNjcmlwdGlvbiAmJiAhdGhpcy5zdWJzY3JpcHRpb24uY2xvc2VkKSB7XG4gICAgICByZXR1cm4gdGhpcy5zdWJzY3JpcHRpb247XG4gICAgfVxuICAgIHRoaXMuc3Vic2NyaXB0aW9uID0gdGhpcy50cmFuc2xhdGVTZXJ2aWNlLm9uTGFuZ0NoYW5nZS5zdWJzY3JpYmUoKGV2ZW50OiBMYW5nQ2hhbmdlRXZlbnQpID0+IHtcbiAgICAgIGNvbnN0IGRpcmVjdGlvbiA9IHRoaXMuY29uZmlndXJhdGlvbi5ydGxMYW5ndWFnZXMuaW5jbHVkZXMoZXZlbnQubGFuZy5zcGxpdCgnLScpWzBdKSA/ICdydGwnIDogJ2x0cic7XG4gICAgICB0aGlzLnJlbmRlcmVyLnNldEF0dHJpYnV0ZShkb2N1bWVudC5ib2R5LCAnZGlyJywgZGlyZWN0aW9uKTtcbiAgICAgIHRoaXMuZGlyZWN0aW9uYWxpdHkuY2hhbmdlLmVtaXQoZGlyZWN0aW9uKTtcbiAgICB9KTtcbiAgICByZXR1cm4gdGhpcy5zdWJzY3JpcHRpb247XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { DIR_DOCUMENT, Directionality } from '@angular/cdk/bidi';
|
|
2
|
-
import { Inject, Injectable, Optional } from '@angular/core';
|
|
3
|
-
import { startWith } from 'rxjs/operators';
|
|
1
|
+
import { DIR_DOCUMENT, Directionality, } from '@angular/cdk/bidi';
|
|
2
|
+
import { Inject, Injectable, Optional, } from '@angular/core';
|
|
3
|
+
import { startWith, } from 'rxjs/operators';
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
5
5
|
export class TextDirectionality extends Directionality {
|
|
6
6
|
constructor(_document) {
|
|
@@ -23,4 +23,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImpo
|
|
|
23
23
|
type: Inject,
|
|
24
24
|
args: [DIR_DOCUMENT]
|
|
25
25
|
}] }] });
|
|
26
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
26
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC1kaXJlY3Rpb25hbGl0eS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3Rvb2xzL3RleHQtZGlyZWN0aW9uYWxpdHkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsWUFBWSxFQUVaLGNBQWMsR0FDZixNQUFNLG1CQUFtQixDQUFDO0FBQzNCLE9BQU8sRUFDTCxNQUFNLEVBQ04sVUFBVSxFQUVWLFFBQVEsR0FDVCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0wsU0FBUyxHQUNWLE1BQU0sZ0JBQWdCLENBQUM7O0FBR3hCLE1BQU0sT0FBTyxrQkFBbUIsU0FBUSxjQUFjO0lBT3BELFlBQThDLFNBQWU7UUFDM0QsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ2pCLElBQUksQ0FBQyxNQUFNO2FBQ1IsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7YUFDM0IsU0FBUyxDQUFDLENBQUMsS0FBZ0IsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQztJQUN6RCxDQUFDO0lBRU0sV0FBVztRQUNoQixJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ3pCLENBQUM7a0lBaEJVLGtCQUFrQixrQkFPRyxZQUFZO3NJQVBqQyxrQkFBa0I7OzRGQUFsQixrQkFBa0I7a0JBRDlCLFVBQVU7OzBCQVFJLFFBQVE7OzBCQUFJLE1BQU07MkJBQUMsWUFBWSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIERJUl9ET0NVTUVOVCxcbiAgRGlyZWN0aW9uLFxuICBEaXJlY3Rpb25hbGl0eSxcbn0gZnJvbSAnQGFuZ3VsYXIvY2RrL2JpZGknO1xuaW1wb3J0IHtcbiAgSW5qZWN0LFxuICBJbmplY3RhYmxlLFxuICBPbkRlc3Ryb3ksXG4gIE9wdGlvbmFsLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIHN0YXJ0V2l0aCxcbn0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgVGV4dERpcmVjdGlvbmFsaXR5IGV4dGVuZHMgRGlyZWN0aW9uYWxpdHkgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICAvKipcbiAgICogVGhlIGN1cnJlbnQgJ2x0cicgb3IgJ3J0bCcgdmFsdWUuXG4gICAqIEBvdmVycmlkZVxuICAgKi9cbiAgcHVibGljIHZhbHVlITogRGlyZWN0aW9uO1xuXG4gIGNvbnN0cnVjdG9yKEBPcHRpb25hbCgpIEBJbmplY3QoRElSX0RPQ1VNRU5UKSBfZG9jdW1lbnQ/OiBhbnkpIHtcbiAgICBzdXBlcihfZG9jdW1lbnQpO1xuICAgIHRoaXMuY2hhbmdlXG4gICAgICAucGlwZShzdGFydFdpdGgodGhpcy52YWx1ZSkpXG4gICAgICAuc3Vic2NyaWJlKCh2YWx1ZTogRGlyZWN0aW9uKSA9PiB0aGlzLnZhbHVlID0gdmFsdWUpO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuY2hhbmdlLmNvbXBsZXRlKCk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { Inject, Injectable, Optional } from '@angular/core';
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
1
|
+
import { Inject, Injectable, Optional, } from '@angular/core';
|
|
2
|
+
import { DynamicContentService, } from '@o3r/dynamic-content';
|
|
3
|
+
import { LoggerService, } from '@o3r/logger';
|
|
4
|
+
import { combineLatest, from, of, } from 'rxjs';
|
|
5
|
+
import { catchError, map, switchMap, } from 'rxjs/operators';
|
|
6
|
+
import { LOCALIZATION_CONFIGURATION_TOKEN, } from './localization.token';
|
|
7
7
|
import * as i0 from "@angular/core";
|
|
8
8
|
import * as i1 from "@o3r/logger";
|
|
9
9
|
import * as i2 from "@o3r/dynamic-content";
|
|
@@ -40,7 +40,7 @@ export class TranslationsLoader {
|
|
|
40
40
|
let localizationPath$ = of(this.localizationConfiguration.endPointUrl);
|
|
41
41
|
if (this.localizationConfiguration.useDynamicContent) {
|
|
42
42
|
if (!this.dynamicContentService) {
|
|
43
|
-
throw Error('Dynamic Content is not available. Please verify you have imported the module DynamicContentModule in your application');
|
|
43
|
+
throw new Error('Dynamic Content is not available. Please verify you have imported the module DynamicContentModule in your application');
|
|
44
44
|
}
|
|
45
45
|
localizationPath$ = this.dynamicContentService.getContentPathStream(this.localizationConfiguration.endPointUrl);
|
|
46
46
|
}
|
|
@@ -86,14 +86,14 @@ export class TranslationsLoader {
|
|
|
86
86
|
getTranslationFromLocal(lang, fallbackLanguage) {
|
|
87
87
|
const pathPrefix = this.localizationConfiguration.bundlesOutputPath;
|
|
88
88
|
return this.downloadLanguageBundle$(pathPrefix + lang + JSON_EXT).pipe(catchError(() => {
|
|
89
|
-
if (lang
|
|
90
|
-
this.logger?.warn(`Failed to load ${lang} from ${pathPrefix + lang + JSON_EXT}. Application will fallback to ${fallbackLanguage}`);
|
|
91
|
-
return this.downloadLanguageBundle$(pathPrefix + fallbackLanguage + JSON_EXT).pipe(catchError(() => of({})));
|
|
92
|
-
}
|
|
93
|
-
else {
|
|
89
|
+
if (lang === fallbackLanguage) {
|
|
94
90
|
this.logger?.warn(`Failed to load ${lang} from ${pathPrefix + lang + JSON_EXT}.`);
|
|
95
91
|
return of({});
|
|
96
92
|
}
|
|
93
|
+
else {
|
|
94
|
+
this.logger?.warn(`Failed to load ${lang} from ${pathPrefix + lang + JSON_EXT}. Application will fallback to ${fallbackLanguage}`);
|
|
95
|
+
return this.downloadLanguageBundle$(pathPrefix + fallbackLanguage + JSON_EXT).pipe(catchError(() => of({})));
|
|
96
|
+
}
|
|
97
97
|
}));
|
|
98
98
|
}
|
|
99
99
|
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: TranslationsLoader, deps: [{ token: LOCALIZATION_CONFIGURATION_TOKEN }, { token: i1.LoggerService, optional: true }, { token: i2.DynamicContentService, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
@@ -109,4 +109,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImpo
|
|
|
109
109
|
}] }, { type: i2.DynamicContentService, decorators: [{
|
|
110
110
|
type: Optional
|
|
111
111
|
}] }] });
|
|
112
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNsYXRpb25zLWxvYWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90b29scy90cmFuc2xhdGlvbnMtbG9hZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUs3RCxPQUFPLEVBQUUsYUFBYSxFQUFFLElBQUksRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDM0QsT0FBTyxFQUFFLFVBQVUsRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFNUQsT0FBTyxFQUFFLGdDQUFnQyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFeEUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDN0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGFBQWEsQ0FBQzs7OztBQUU1QyxNQUFNLFFBQVEsR0FBRyxPQUFPLENBQUM7QUFFekI7Ozs7O0dBS0c7QUFFSCxNQUFNLE9BQU8sa0JBQWtCO0lBQzdCLFlBQXVFLHlCQUFvRCxFQUNsRixNQUFzQixFQUN0QixxQkFBNkM7UUFGZiw4QkFBeUIsR0FBekIseUJBQXlCLENBQTJCO1FBQ2xGLFdBQU0sR0FBTixNQUFNLENBQWdCO1FBQ3RCLDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBd0I7SUFBRyxDQUFDO0lBRTFGOzs7T0FHRztJQUNLLHVCQUF1QixDQUFDLEdBQVc7UUFDekMsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLHlCQUF5QixDQUFDLFdBQVcsQ0FBQztRQUUvRCxJQUFJLFdBQVcsR0FBRyxFQUFFLENBQUM7UUFDckIsSUFBSSxXQUFXLEVBQUUsQ0FBQztZQUNoQixXQUFXLEdBQUcsR0FBRyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQyxHQUFHLENBQUMsR0FBRyxHQUFHLEdBQUcsa0JBQWtCLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDNUksQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLEdBQUcsV0FBVyxFQUFFLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FDckYsU0FBUyxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsQ0FDL0MsQ0FBQztJQUNKLENBQUM7SUFFRDs7T0FFRztJQUNJLGNBQWMsQ0FBQyxJQUFZO1FBQ2hDLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxnQkFBZ0IsQ0FBQztRQUNqRSxJQUFJLGlCQUFpQixHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMseUJBQXlCLENBQUMsV0FBVyxDQUFDLENBQUM7UUFFdkUsSUFBSSxJQUFJLENBQUMseUJBQXlCLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztZQUNyRCxJQUFJLENBQUMsSUFBSSxDQUFDLHFCQUFxQixFQUFFLENBQUM7Z0JBQ2hDLE1BQU0sS0FBSyxDQUFDLHVIQUF1SCxDQUFDLENBQUM7WUFDdkksQ0FBQztZQUNELGlCQUFpQixHQUFHLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMseUJBQXlCLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDbEgsQ0FBQztRQUVELE9BQU8saUJBQWlCLENBQUMsSUFBSSxDQUMzQixTQUFTLENBQUMsQ0FBQyxnQkFBd0IsRUFBRSxFQUFFO1lBQ3JDLElBQUksZ0JBQWdCLEVBQUUsQ0FBQztnQkFFckIsTUFBTSxtQkFBbUIsR0FBRyxJQUFJLENBQUMsdUJBQXVCLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxHQUFHLFFBQVEsQ0FBQyxDQUFDO2dCQUU3RixJQUFJLElBQUksQ0FBQyx5QkFBeUIsQ0FBQywwQkFBMEIsRUFBRSxDQUFDO29CQUM5RCxPQUFPLGFBQWEsQ0FBQzt3QkFDbkIsbUJBQW1CLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQzt3QkFDbEQsSUFBSSxDQUFDLHVCQUF1QixDQUFDLElBQUksRUFBRSxRQUFRLENBQUMsQ0FBQyxJQUFJLENBQy9DLEdBQUcsQ0FBQyxDQUFDLFlBQVksRUFBRSxFQUFFOzRCQUNuQixNQUFNLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxHQUFHLFdBQVcsWUFBWSxDQUFDLEdBQUcsQ0FBVyxFQUFFLENBQUMsQ0FBQzs0QkFDekcsT0FBTyxZQUFZLENBQUM7d0JBQ3RCLENBQUMsQ0FBQyxDQUNIO3FCQUNGLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxtQkFBbUIsRUFBRSxpQkFBaUIsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUMsR0FBRyxpQkFBaUIsRUFBRSxHQUFHLG1CQUFtQixFQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQy9HLENBQUM7Z0JBRUQ7Ozs7a0JBSUU7Z0JBQ0YsT0FBTyxtQkFBbUIsQ0FBQyxJQUFJLENBQzdCLFVBQVUsQ0FBQyxHQUFHLEVBQUU7b0JBQ2QsSUFBSSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsaURBQWlELGdCQUFnQixHQUFHLElBQUksR0FBRyxRQUFRLHlDQUF5QyxDQUFDLENBQUM7b0JBQ2hKLE9BQU8sSUFBSSxDQUFDLHVCQUF1QixDQUFDLElBQUksRUFBRSxRQUFRLENBQUMsQ0FBQztnQkFDdEQsQ0FBQyxDQUFDLENBQ0gsQ0FBQztZQUNKLENBQUM7WUFDRDs7O2NBR0U7WUFDRixJQUFJLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxtRkFBbUYsQ0FBQyxDQUFDO1lBQ3ZHLE9BQU8sSUFBSSxDQUFDLHVCQUF1QixDQUFDLElBQUksRUFBRSxRQUFRLENBQUMsQ0FBQztRQUN0RCxDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQztJQUVEOzs7Ozs7OztPQVFHO0lBQ0ksdUJBQXVCLENBQUMsSUFBWSxFQUFFLGdCQUF3QjtRQUNuRSxNQUFNLFVBQVUsR0FBVyxJQUFJLENBQUMseUJBQXlCLENBQUMsaUJBQWlCLENBQUM7UUFDNUUsT0FBTyxJQUFJLENBQUMsdUJBQXVCLENBQUMsVUFBVSxHQUFHLElBQUksR0FBRyxRQUFRLENBQUMsQ0FBQyxJQUFJLENBQ3BFLFVBQVUsQ0FBQyxHQUFHLEVBQUU7WUFDZCxJQUFJLElBQUksS0FBSyxnQkFBZ0IsRUFBRSxDQUFDO2dCQUM5QixJQUFJLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxrQkFBa0IsSUFBSSxTQUFTLFVBQVUsR0FBRyxJQUFJLEdBQUcsUUFBUSxrQ0FBa0MsZ0JBQWdCLEVBQUUsQ0FBQyxDQUFDO2dCQUNuSSxPQUFPLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxVQUFVLEdBQUcsZ0JBQWdCLEdBQUcsUUFBUSxDQUFDLENBQUMsSUFBSSxDQUNoRixVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQ3pCLENBQUM7WUFDSixDQUFDO2lCQUFNLENBQUM7Z0JBQ04sSUFBSSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsa0JBQWtCLElBQUksU0FBUyxVQUFVLEdBQUcsSUFBSSxHQUFHLFFBQVEsR0FBRyxDQUFDLENBQUM7Z0JBQ2xGLE9BQU8sRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQ2hCLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQztrSUFuR1Usa0JBQWtCLGtCQUNULGdDQUFnQztzSUFEekMsa0JBQWtCOzs0RkFBbEIsa0JBQWtCO2tCQUQ5QixVQUFVOzswQkFFSSxNQUFNOzJCQUFDLGdDQUFnQzs7MEJBQ3ZDLFFBQVE7OzBCQUNSLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUsIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUcmFuc2xhdGVMb2FkZXIgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcblxuaW1wb3J0IHsgTG9jYWxpemF0aW9uQ29uZmlndXJhdGlvbiB9IGZyb20gJy4uL2NvcmUnO1xuXG5pbXBvcnQgeyBjb21iaW5lTGF0ZXN0LCBmcm9tLCBPYnNlcnZhYmxlLCBvZiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgY2F0Y2hFcnJvciwgbWFwLCBzd2l0Y2hNYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IExPQ0FMSVpBVElPTl9DT05GSUdVUkFUSU9OX1RPS0VOIH0gZnJvbSAnLi9sb2NhbGl6YXRpb24udG9rZW4nO1xuXG5pbXBvcnQgeyBEeW5hbWljQ29udGVudFNlcnZpY2UgfSBmcm9tICdAbzNyL2R5bmFtaWMtY29udGVudCc7XG5pbXBvcnQgeyBMb2dnZXJTZXJ2aWNlIH0gZnJvbSAnQG8zci9sb2dnZXInO1xuXG5jb25zdCBKU09OX0VYVCA9ICcuanNvbic7XG5cbi8qKlxuICogVGhpcyBjbGFzcyBpcyByZXNwb25zaWJsZSBmb3IgbG9hZGluZyB0cmFuc2xhdGlvbiBidW5kbGVzIGZyb20gcmVtb3RlIG9yIGxvY2FsIGVuZHBvaW50cyBkZXBlbmRpbmcgb24gdGhlIExvY2FsaXphdGlvbkNvbmZpZ3VyYXRpb24uXG4gKiBGYWxsYmFjayBtZWNoYW5pc20gZW5zdXJlcyB0aGF0IGlmIGEgYnVuZGxlIGluIHNvbWUgbGFuZ3VhZ2UgY2Fubm90IGJlIGZldGNoZWQgcmVtb3RlbHlcbiAqIHdlIHRyeSB0byBmZXRjaCB0aGUgc2FtZSBsYW5ndWFnZSBidW5kbGUgbG9jYWxseSAoYnVuZGxlcyBzdG9yZWQgaW5zaWRlIHRoZSBhcHBsaWNhdGlvbilcbiAqIGFuZCBmaW5hbGx5IGxvYWQgdGhlIGZhbGxiYWNrIGxhbmd1YWdlIGJ1bmRsZSAoaWYgYWxsIHByZXZpb3VzIGZldGNoZXMgZmFpbGVkKVxuICovXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgVHJhbnNsYXRpb25zTG9hZGVyIGltcGxlbWVudHMgVHJhbnNsYXRlTG9hZGVyIHtcbiAgY29uc3RydWN0b3IoQEluamVjdChMT0NBTElaQVRJT05fQ09ORklHVVJBVElPTl9UT0tFTikgcHJpdmF0ZSByZWFkb25seSBsb2NhbGl6YXRpb25Db25maWd1cmF0aW9uOiBMb2NhbGl6YXRpb25Db25maWd1cmF0aW9uLFxuICAgICAgICAgICAgICBAT3B0aW9uYWwoKSBwcml2YXRlIHJlYWRvbmx5IGxvZ2dlcj86IExvZ2dlclNlcnZpY2UsXG4gICAgICAgICAgICAgIEBPcHRpb25hbCgpIHByaXZhdGUgcmVhZG9ubHkgZHluYW1pY0NvbnRlbnRTZXJ2aWNlPzogRHluYW1pY0NvbnRlbnRTZXJ2aWNlKSB7fVxuXG4gIC8qKlxuICAgKiBEb3dubG9hZCBhIGxhbmd1YWdlIGJ1bmRsZSBmaWxlXG4gICAqIEBwYXJhbSAgdXJsIFVybCB0byB0aGUgYnVuZGxlIGZpbGVcbiAgICovXG4gIHByaXZhdGUgZG93bmxvYWRMYW5ndWFnZUJ1bmRsZSQodXJsOiBzdHJpbmcpIHtcbiAgICBjb25zdCBxdWVyeVBhcmFtcyA9IHRoaXMubG9jYWxpemF0aW9uQ29uZmlndXJhdGlvbi5xdWVyeVBhcmFtcztcblxuICAgIGxldCBxdWVyeVN0cmluZyA9ICcnO1xuICAgIGlmIChxdWVyeVBhcmFtcykge1xuICAgICAgcXVlcnlTdHJpbmcgPSAnPycgKyBPYmplY3Qua2V5cyhxdWVyeVBhcmFtcykubWFwKChrZXkpID0+IGVuY29kZVVSSUNvbXBvbmVudChrZXkpICsgJz0nICsgZW5jb2RlVVJJQ29tcG9uZW50KHF1ZXJ5UGFyYW1zW2tleV0pKS5qb2luKCcmJyk7XG4gICAgfVxuICAgIHJldHVybiBmcm9tKGZldGNoKHVybCArIHF1ZXJ5U3RyaW5nLCB0aGlzLmxvY2FsaXphdGlvbkNvbmZpZ3VyYXRpb24uZmV0Y2hPcHRpb25zKSkucGlwZShcbiAgICAgIHN3aXRjaE1hcCgocmVzcG9uc2UpID0+IGZyb20ocmVzcG9uc2UuanNvbigpKSlcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIEBpbmhlcml0ZG9jXG4gICAqL1xuICBwdWJsaWMgZ2V0VHJhbnNsYXRpb24obGFuZzogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBjb25zdCBmYWxsYmFjayA9IHRoaXMubG9jYWxpemF0aW9uQ29uZmlndXJhdGlvbi5mYWxsYmFja0xhbmd1YWdlO1xuICAgIGxldCBsb2NhbGl6YXRpb25QYXRoJCA9IG9mKHRoaXMubG9jYWxpemF0aW9uQ29uZmlndXJhdGlvbi5lbmRQb2ludFVybCk7XG5cbiAgICBpZiAodGhpcy5sb2NhbGl6YXRpb25Db25maWd1cmF0aW9uLnVzZUR5bmFtaWNDb250ZW50KSB7XG4gICAgICBpZiAoIXRoaXMuZHluYW1pY0NvbnRlbnRTZXJ2aWNlKSB7XG4gICAgICAgIHRocm93IEVycm9yKCdEeW5hbWljIENvbnRlbnQgaXMgbm90IGF2YWlsYWJsZS4gUGxlYXNlIHZlcmlmeSB5b3UgaGF2ZSBpbXBvcnRlZCB0aGUgbW9kdWxlIER5bmFtaWNDb250ZW50TW9kdWxlIGluIHlvdXIgYXBwbGljYXRpb24nKTtcbiAgICAgIH1cbiAgICAgIGxvY2FsaXphdGlvblBhdGgkID0gdGhpcy5keW5hbWljQ29udGVudFNlcnZpY2UuZ2V0Q29udGVudFBhdGhTdHJlYW0odGhpcy5sb2NhbGl6YXRpb25Db25maWd1cmF0aW9uLmVuZFBvaW50VXJsKTtcbiAgICB9XG5cbiAgICByZXR1cm4gbG9jYWxpemF0aW9uUGF0aCQucGlwZShcbiAgICAgIHN3aXRjaE1hcCgobG9jYWxpemF0aW9uUGF0aDogc3RyaW5nKSA9PiB7XG4gICAgICAgIGlmIChsb2NhbGl6YXRpb25QYXRoKSB7XG5cbiAgICAgICAgICBjb25zdCBsb2NhbGl6YXRpb25CdW5kbGUkID0gdGhpcy5kb3dubG9hZExhbmd1YWdlQnVuZGxlJChsb2NhbGl6YXRpb25QYXRoICsgbGFuZyArIEpTT05fRVhUKTtcblxuICAgICAgICAgIGlmICh0aGlzLmxvY2FsaXphdGlvbkNvbmZpZ3VyYXRpb24ubWVyZ2VXaXRoTG9jYWxUcmFuc2xhdGlvbnMpIHtcbiAgICAgICAgICAgIHJldHVybiBjb21iaW5lTGF0ZXN0KFtcbiAgICAgICAgICAgICAgbG9jYWxpemF0aW9uQnVuZGxlJC5waXBlKGNhdGNoRXJyb3IoKCkgPT4gb2Yoe30pKSksXG4gICAgICAgICAgICAgIHRoaXMuZ2V0VHJhbnNsYXRpb25Gcm9tTG9jYWwobGFuZywgZmFsbGJhY2spLnBpcGUoXG4gICAgICAgICAgICAgICAgbWFwKCh0cmFuc2xhdGlvbnMpID0+IHtcbiAgICAgICAgICAgICAgICAgIE9iamVjdC5rZXlzKHRyYW5zbGF0aW9ucykuZm9yRWFjaCgoa2V5KSA9PiB0cmFuc2xhdGlvbnNba2V5XSA9IGBbbG9jYWxdICR7dHJhbnNsYXRpb25zW2tleV0gYXMgc3RyaW5nfWApO1xuICAgICAgICAgICAgICAgICAgcmV0dXJuIHRyYW5zbGF0aW9ucztcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICApXG4gICAgICAgICAgICBdKS5waXBlKG1hcCgoW2R5bmFtaWNUcmFuc2xhdGlvbnMsIGxvY2FsVHJhbnNsYXRpb25zXSkgPT4gKHsuLi5sb2NhbFRyYW5zbGF0aW9ucywgLi4uZHluYW1pY1RyYW5zbGF0aW9uc30pKSk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLypcbiAgICAgICAgICAqIGlmIGVuZFBvaW50VXJsIGlzIHNwZWNpZmllZCBieSB0aGUgY29uZmlndXJhdGlvbiB0aGVuOlxuICAgICAgICAgICogICAxLiB0cnkgdG8gbG9hZCBsYW5nIGZyb20gZW5kUG9pbnRVcmxcbiAgICAgICAgICAqICAgMi4gaWYgMSBmYWlscyB0aGVuIHRyeSB0byBsb2FkIGZyb20gdGhlIGFwcCAobG9jYWwgZmlsZSlcbiAgICAgICAgICAqL1xuICAgICAgICAgIHJldHVybiBsb2NhbGl6YXRpb25CdW5kbGUkLnBpcGUoXG4gICAgICAgICAgICBjYXRjaEVycm9yKCgpID0+IHtcbiAgICAgICAgICAgICAgdGhpcy5sb2dnZXI/Lndhcm4oYEZhaWxlZCB0byBsb2FkIHRoZSBsb2NhbGl6YXRpb24gcmVzb3VyY2UgZnJvbSAke2xvY2FsaXphdGlvblBhdGggKyBsYW5nICsgSlNPTl9FWFR9LCB0cnlpbmcgZnJvbSB0aGUgYXBwbGljYXRpb24gcmVzb3VyY2VzYCk7XG4gICAgICAgICAgICAgIHJldHVybiB0aGlzLmdldFRyYW5zbGF0aW9uRnJvbUxvY2FsKGxhbmcsIGZhbGxiYWNrKTtcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgICAvKlxuICAgICAgICAqIGVsc2UgaWYgZW5kUG9pbnRVcmwgTk9UIHNwZWNpZmllZCBieSB0aGVuIGNvbmZpZ3VyYXRpb24gdGhlbjpcbiAgICAgICAgKiAgIDEuIHRyeSB0byBsb2FkIGZyb20gdGhlIGFwcCAobG9jYWwgZmlsZSlcbiAgICAgICAgKi9cbiAgICAgICAgdGhpcy5sb2dnZXI/Lndhcm4oJ05vIGxvY2FsaXphdGlvbiBlbmRwb2ludCBzcGVjaWZpZWQsIGxvY2FsaXphdGlvbiBmZXRjaCBmcm9tIGFwcGxpY2F0aW9uIHJlc291cmNlcycpO1xuICAgICAgICByZXR1cm4gdGhpcy5nZXRUcmFuc2xhdGlvbkZyb21Mb2NhbChsYW5nLCBmYWxsYmFjayk7XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICpcbiAgICpGZXRjaGVzIGxvY2FsaXphdGlvbiBidW5kbGVzIGZyb20gcHVibGlzaGVkIGZvbGRlciAoaW50ZXJuYWwgdG8gYXBwbGljYXRpb24pXG4gICAqXG4gICAqMS4gdHJ5IHRvIGxvYWQgbGFuZyBmcm9tIGxvY2FsXG4gICAqMi4gaWYgMSBmYWlscyB0cnkgdG8gbG9hZCBmYWxsYmFjayBsYW5nIGJ1dCBvbmx5IGlmIGl0J3MgZGlmZmVyZW50IGZyb20gbGFuZyBpbiAxXG4gICAqIEBwYXJhbSBsYW5nIC0gbGFuZ3VhZ2Ugb2YgdGhlIGJ1bmRsZVxuICAgKiBAcGFyYW0gZmFsbGJhY2tMYW5ndWFnZSAtIGZhbGxiYWNrIGxhbmd1YWdlIGluIGNhc2UgYnVuZGxlIGluIGxhbmd1YWdlIG5vdCBmb3VuZFxuICAgKi9cbiAgcHVibGljIGdldFRyYW5zbGF0aW9uRnJvbUxvY2FsKGxhbmc6IHN0cmluZywgZmFsbGJhY2tMYW5ndWFnZTogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBjb25zdCBwYXRoUHJlZml4OiBzdHJpbmcgPSB0aGlzLmxvY2FsaXphdGlvbkNvbmZpZ3VyYXRpb24uYnVuZGxlc091dHB1dFBhdGg7XG4gICAgcmV0dXJuIHRoaXMuZG93bmxvYWRMYW5ndWFnZUJ1bmRsZSQocGF0aFByZWZpeCArIGxhbmcgKyBKU09OX0VYVCkucGlwZShcbiAgICAgIGNhdGNoRXJyb3IoKCkgPT4ge1xuICAgICAgICBpZiAobGFuZyAhPT0gZmFsbGJhY2tMYW5ndWFnZSkge1xuICAgICAgICAgIHRoaXMubG9nZ2VyPy53YXJuKGBGYWlsZWQgdG8gbG9hZCAke2xhbmd9IGZyb20gJHtwYXRoUHJlZml4ICsgbGFuZyArIEpTT05fRVhUfS4gQXBwbGljYXRpb24gd2lsbCBmYWxsYmFjayB0byAke2ZhbGxiYWNrTGFuZ3VhZ2V9YCk7XG4gICAgICAgICAgcmV0dXJuIHRoaXMuZG93bmxvYWRMYW5ndWFnZUJ1bmRsZSQocGF0aFByZWZpeCArIGZhbGxiYWNrTGFuZ3VhZ2UgKyBKU09OX0VYVCkucGlwZShcbiAgICAgICAgICAgIGNhdGNoRXJyb3IoKCkgPT4gb2Yoe30pKVxuICAgICAgICAgICk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy5sb2dnZXI/Lndhcm4oYEZhaWxlZCB0byBsb2FkICR7bGFuZ30gZnJvbSAke3BhdGhQcmVmaXggKyBsYW5nICsgSlNPTl9FWFR9LmApO1xuICAgICAgICAgIHJldHVybiBvZih7fSk7XG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgKTtcbiAgfVxufVxuIl19
|
|
112
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNsYXRpb25zLWxvYWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90b29scy90cmFuc2xhdGlvbnMtbG9hZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxNQUFNLEVBQ04sVUFBVSxFQUNWLFFBQVEsR0FDVCxNQUFNLGVBQWUsQ0FBQztBQUl2QixPQUFPLEVBQ0wscUJBQXFCLEdBQ3RCLE1BQU0sc0JBQXNCLENBQUM7QUFDOUIsT0FBTyxFQUNMLGFBQWEsR0FDZCxNQUFNLGFBQWEsQ0FBQztBQUNyQixPQUFPLEVBQ0wsYUFBYSxFQUNiLElBQUksRUFFSixFQUFFLEdBQ0gsTUFBTSxNQUFNLENBQUM7QUFDZCxPQUFPLEVBQ0wsVUFBVSxFQUNWLEdBQUcsRUFDSCxTQUFTLEdBQ1YsTUFBTSxnQkFBZ0IsQ0FBQztBQUl4QixPQUFPLEVBQ0wsZ0NBQWdDLEdBQ2pDLE1BQU0sc0JBQXNCLENBQUM7Ozs7QUFFOUIsTUFBTSxRQUFRLEdBQUcsT0FBTyxDQUFDO0FBRXpCOzs7OztHQUtHO0FBRUgsTUFBTSxPQUFPLGtCQUFrQjtJQUM3QixZQUF1RSx5QkFBb0QsRUFDNUYsTUFBc0IsRUFDdEIscUJBQTZDO1FBRkwsOEJBQXlCLEdBQXpCLHlCQUF5QixDQUEyQjtRQUM1RixXQUFNLEdBQU4sTUFBTSxDQUFnQjtRQUN0QiwwQkFBcUIsR0FBckIscUJBQXFCLENBQXdCO0lBQUcsQ0FBQztJQUVoRjs7O09BR0c7SUFDSyx1QkFBdUIsQ0FBQyxHQUFXO1FBQ3pDLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxXQUFXLENBQUM7UUFFL0QsSUFBSSxXQUFXLEdBQUcsRUFBRSxDQUFDO1FBQ3JCLElBQUksV0FBVyxFQUFFLENBQUM7WUFDaEIsV0FBVyxHQUFHLEdBQUcsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsRUFB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Qzs7MEJBQ2pELFFBQVE7OzBCQUNSLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBJbmplY3QsXG4gIEluamVjdGFibGUsXG4gIE9wdGlvbmFsLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIFRyYW5zbGF0ZUxvYWRlcixcbn0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQge1xuICBEeW5hbWljQ29udGVudFNlcnZpY2UsXG59IGZyb20gJ0BvM3IvZHluYW1pYy1jb250ZW50JztcbmltcG9ydCB7XG4gIExvZ2dlclNlcnZpY2UsXG59IGZyb20gJ0BvM3IvbG9nZ2VyJztcbmltcG9ydCB7XG4gIGNvbWJpbmVMYXRlc3QsXG4gIGZyb20sXG4gIE9ic2VydmFibGUsXG4gIG9mLFxufSBmcm9tICdyeGpzJztcbmltcG9ydCB7XG4gIGNhdGNoRXJyb3IsXG4gIG1hcCxcbiAgc3dpdGNoTWFwLFxufSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge1xuICBMb2NhbGl6YXRpb25Db25maWd1cmF0aW9uLFxufSBmcm9tICcuLi9jb3JlJztcbmltcG9ydCB7XG4gIExPQ0FMSVpBVElPTl9DT05GSUdVUkFUSU9OX1RPS0VOLFxufSBmcm9tICcuL2xvY2FsaXphdGlvbi50b2tlbic7XG5cbmNvbnN0IEpTT05fRVhUID0gJy5qc29uJztcblxuLyoqXG4gKiBUaGlzIGNsYXNzIGlzIHJlc3BvbnNpYmxlIGZvciBsb2FkaW5nIHRyYW5zbGF0aW9uIGJ1bmRsZXMgZnJvbSByZW1vdGUgb3IgbG9jYWwgZW5kcG9pbnRzIGRlcGVuZGluZyBvbiB0aGUgTG9jYWxpemF0aW9uQ29uZmlndXJhdGlvbi5cbiAqIEZhbGxiYWNrIG1lY2hhbmlzbSBlbnN1cmVzIHRoYXQgaWYgYSBidW5kbGUgaW4gc29tZSBsYW5ndWFnZSBjYW5ub3QgYmUgZmV0Y2hlZCByZW1vdGVseVxuICogd2UgdHJ5IHRvIGZldGNoIHRoZSBzYW1lIGxhbmd1YWdlIGJ1bmRsZSBsb2NhbGx5IChidW5kbGVzIHN0b3JlZCBpbnNpZGUgdGhlIGFwcGxpY2F0aW9uKVxuICogYW5kIGZpbmFsbHkgbG9hZCB0aGUgZmFsbGJhY2sgbGFuZ3VhZ2UgYnVuZGxlIChpZiBhbGwgcHJldmlvdXMgZmV0Y2hlcyBmYWlsZWQpXG4gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBUcmFuc2xhdGlvbnNMb2FkZXIgaW1wbGVtZW50cyBUcmFuc2xhdGVMb2FkZXIge1xuICBjb25zdHJ1Y3RvcihASW5qZWN0KExPQ0FMSVpBVElPTl9DT05GSUdVUkFUSU9OX1RPS0VOKSBwcml2YXRlIHJlYWRvbmx5IGxvY2FsaXphdGlvbkNvbmZpZ3VyYXRpb246IExvY2FsaXphdGlvbkNvbmZpZ3VyYXRpb24sXG4gICAgQE9wdGlvbmFsKCkgcHJpdmF0ZSByZWFkb25seSBsb2dnZXI/OiBMb2dnZXJTZXJ2aWNlLFxuICAgIEBPcHRpb25hbCgpIHByaXZhdGUgcmVhZG9ubHkgZHluYW1pY0NvbnRlbnRTZXJ2aWNlPzogRHluYW1pY0NvbnRlbnRTZXJ2aWNlKSB7fVxuXG4gIC8qKlxuICAgKiBEb3dubG9hZCBhIGxhbmd1YWdlIGJ1bmRsZSBmaWxlXG4gICAqIEBwYXJhbSAgdXJsIFVybCB0byB0aGUgYnVuZGxlIGZpbGVcbiAgICovXG4gIHByaXZhdGUgZG93bmxvYWRMYW5ndWFnZUJ1bmRsZSQodXJsOiBzdHJpbmcpIHtcbiAgICBjb25zdCBxdWVyeVBhcmFtcyA9IHRoaXMubG9jYWxpemF0aW9uQ29uZmlndXJhdGlvbi5xdWVyeVBhcmFtcztcblxuICAgIGxldCBxdWVyeVN0cmluZyA9ICcnO1xuICAgIGlmIChxdWVyeVBhcmFtcykge1xuICAgICAgcXVlcnlTdHJpbmcgPSAnPycgKyBPYmplY3Qua2V5cyhxdWVyeVBhcmFtcykubWFwKChrZXkpID0+IGVuY29kZVVSSUNvbXBvbmVudChrZXkpICsgJz0nICsgZW5jb2RlVVJJQ29tcG9uZW50KHF1ZXJ5UGFyYW1zW2tleV0pKS5qb2luKCcmJyk7XG4gICAgfVxuICAgIHJldHVybiBmcm9tKGZldGNoKHVybCArIHF1ZXJ5U3RyaW5nLCB0aGlzLmxvY2FsaXphdGlvbkNvbmZpZ3VyYXRpb24uZmV0Y2hPcHRpb25zKSkucGlwZShcbiAgICAgIHN3aXRjaE1hcCgocmVzcG9uc2UpID0+IGZyb20ocmVzcG9uc2UuanNvbigpKSlcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIEBpbmhlcml0ZG9jXG4gICAqL1xuICBwdWJsaWMgZ2V0VHJhbnNsYXRpb24obGFuZzogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBjb25zdCBmYWxsYmFjayA9IHRoaXMubG9jYWxpemF0aW9uQ29uZmlndXJhdGlvbi5mYWxsYmFja0xhbmd1YWdlO1xuICAgIGxldCBsb2NhbGl6YXRpb25QYXRoJCA9IG9mKHRoaXMubG9jYWxpemF0aW9uQ29uZmlndXJhdGlvbi5lbmRQb2ludFVybCk7XG5cbiAgICBpZiAodGhpcy5sb2NhbGl6YXRpb25Db25maWd1cmF0aW9uLnVzZUR5bmFtaWNDb250ZW50KSB7XG4gICAgICBpZiAoIXRoaXMuZHluYW1pY0NvbnRlbnRTZXJ2aWNlKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignRHluYW1pYyBDb250ZW50IGlzIG5vdCBhdmFpbGFibGUuIFBsZWFzZSB2ZXJpZnkgeW91IGhhdmUgaW1wb3J0ZWQgdGhlIG1vZHVsZSBEeW5hbWljQ29udGVudE1vZHVsZSBpbiB5b3VyIGFwcGxpY2F0aW9uJyk7XG4gICAgICB9XG4gICAgICBsb2NhbGl6YXRpb25QYXRoJCA9IHRoaXMuZHluYW1pY0NvbnRlbnRTZXJ2aWNlLmdldENvbnRlbnRQYXRoU3RyZWFtKHRoaXMubG9jYWxpemF0aW9uQ29uZmlndXJhdGlvbi5lbmRQb2ludFVybCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGxvY2FsaXphdGlvblBhdGgkLnBpcGUoXG4gICAgICBzd2l0Y2hNYXAoKGxvY2FsaXphdGlvblBhdGg6IHN0cmluZykgPT4ge1xuICAgICAgICBpZiAobG9jYWxpemF0aW9uUGF0aCkge1xuICAgICAgICAgIGNvbnN0IGxvY2FsaXphdGlvbkJ1bmRsZSQgPSB0aGlzLmRvd25sb2FkTGFuZ3VhZ2VCdW5kbGUkKGxvY2FsaXphdGlvblBhdGggKyBsYW5nICsgSlNPTl9FWFQpO1xuXG4gICAgICAgICAgaWYgKHRoaXMubG9jYWxpemF0aW9uQ29uZmlndXJhdGlvbi5tZXJnZVdpdGhMb2NhbFRyYW5zbGF0aW9ucykge1xuICAgICAgICAgICAgcmV0dXJuIGNvbWJpbmVMYXRlc3QoW1xuICAgICAgICAgICAgICBsb2NhbGl6YXRpb25CdW5kbGUkLnBpcGUoY2F0Y2hFcnJvcigoKSA9PiBvZih7fSkpKSxcbiAgICAgICAgICAgICAgdGhpcy5nZXRUcmFuc2xhdGlvbkZyb21Mb2NhbChsYW5nLCBmYWxsYmFjaykucGlwZShcbiAgICAgICAgICAgICAgICBtYXAoKHRyYW5zbGF0aW9ucykgPT4ge1xuICAgICAgICAgICAgICAgICAgT2JqZWN0LmtleXModHJhbnNsYXRpb25zKS5mb3JFYWNoKChrZXkpID0+IHRyYW5zbGF0aW9uc1trZXldID0gYFtsb2NhbF0gJHt0cmFuc2xhdGlvbnNba2V5XSBhcyBzdHJpbmd9YCk7XG4gICAgICAgICAgICAgICAgICByZXR1cm4gdHJhbnNsYXRpb25zO1xuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgIClcbiAgICAgICAgICAgIF0pLnBpcGUobWFwKChbZHluYW1pY1RyYW5zbGF0aW9ucywgbG9jYWxUcmFuc2xhdGlvbnNdKSA9PiAoeyAuLi5sb2NhbFRyYW5zbGF0aW9ucywgLi4uZHluYW1pY1RyYW5zbGF0aW9ucyB9KSkpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC8qXG4gICAgICAgICAgKiBpZiBlbmRQb2ludFVybCBpcyBzcGVjaWZpZWQgYnkgdGhlIGNvbmZpZ3VyYXRpb24gdGhlbjpcbiAgICAgICAgICAqICAgMS4gdHJ5IHRvIGxvYWQgbGFuZyBmcm9tIGVuZFBvaW50VXJsXG4gICAgICAgICAgKiAgIDIuIGlmIDEgZmFpbHMgdGhlbiB0cnkgdG8gbG9hZCBmcm9tIHRoZSBhcHAgKGxvY2FsIGZpbGUpXG4gICAgICAgICAgKi9cbiAgICAgICAgICByZXR1cm4gbG9jYWxpemF0aW9uQnVuZGxlJC5waXBlKFxuICAgICAgICAgICAgY2F0Y2hFcnJvcigoKSA9PiB7XG4gICAgICAgICAgICAgIHRoaXMubG9nZ2VyPy53YXJuKGBGYWlsZWQgdG8gbG9hZCB0aGUgbG9jYWxpemF0aW9uIHJlc291cmNlIGZyb20gJHtsb2NhbGl6YXRpb25QYXRoICsgbGFuZyArIEpTT05fRVhUfSwgdHJ5aW5nIGZyb20gdGhlIGFwcGxpY2F0aW9uIHJlc291cmNlc2ApO1xuICAgICAgICAgICAgICByZXR1cm4gdGhpcy5nZXRUcmFuc2xhdGlvbkZyb21Mb2NhbChsYW5nLCBmYWxsYmFjayk7XG4gICAgICAgICAgICB9KVxuICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICAgICAgLypcbiAgICAgICAgKiBlbHNlIGlmIGVuZFBvaW50VXJsIE5PVCBzcGVjaWZpZWQgYnkgdGhlbiBjb25maWd1cmF0aW9uIHRoZW46XG4gICAgICAgICogICAxLiB0cnkgdG8gbG9hZCBmcm9tIHRoZSBhcHAgKGxvY2FsIGZpbGUpXG4gICAgICAgICovXG4gICAgICAgIHRoaXMubG9nZ2VyPy53YXJuKCdObyBsb2NhbGl6YXRpb24gZW5kcG9pbnQgc3BlY2lmaWVkLCBsb2NhbGl6YXRpb24gZmV0Y2ggZnJvbSBhcHBsaWNhdGlvbiByZXNvdXJjZXMnKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0VHJhbnNsYXRpb25Gcm9tTG9jYWwobGFuZywgZmFsbGJhY2spO1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqXG4gICAqRmV0Y2hlcyBsb2NhbGl6YXRpb24gYnVuZGxlcyBmcm9tIHB1Ymxpc2hlZCBmb2xkZXIgKGludGVybmFsIHRvIGFwcGxpY2F0aW9uKVxuICAgKlxuICAgKjEuIHRyeSB0byBsb2FkIGxhbmcgZnJvbSBsb2NhbFxuICAgKjIuIGlmIDEgZmFpbHMgdHJ5IHRvIGxvYWQgZmFsbGJhY2sgbGFuZyBidXQgb25seSBpZiBpdCdzIGRpZmZlcmVudCBmcm9tIGxhbmcgaW4gMVxuICAgKiBAcGFyYW0gbGFuZyAtIGxhbmd1YWdlIG9mIHRoZSBidW5kbGVcbiAgICogQHBhcmFtIGZhbGxiYWNrTGFuZ3VhZ2UgLSBmYWxsYmFjayBsYW5ndWFnZSBpbiBjYXNlIGJ1bmRsZSBpbiBsYW5ndWFnZSBub3QgZm91bmRcbiAgICovXG4gIHB1YmxpYyBnZXRUcmFuc2xhdGlvbkZyb21Mb2NhbChsYW5nOiBzdHJpbmcsIGZhbGxiYWNrTGFuZ3VhZ2U6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgY29uc3QgcGF0aFByZWZpeDogc3RyaW5nID0gdGhpcy5sb2NhbGl6YXRpb25Db25maWd1cmF0aW9uLmJ1bmRsZXNPdXRwdXRQYXRoO1xuICAgIHJldHVybiB0aGlzLmRvd25sb2FkTGFuZ3VhZ2VCdW5kbGUkKHBhdGhQcmVmaXggKyBsYW5nICsgSlNPTl9FWFQpLnBpcGUoXG4gICAgICBjYXRjaEVycm9yKCgpID0+IHtcbiAgICAgICAgaWYgKGxhbmcgPT09IGZhbGxiYWNrTGFuZ3VhZ2UpIHtcbiAgICAgICAgICB0aGlzLmxvZ2dlcj8ud2FybihgRmFpbGVkIHRvIGxvYWQgJHtsYW5nfSBmcm9tICR7cGF0aFByZWZpeCArIGxhbmcgKyBKU09OX0VYVH0uYCk7XG4gICAgICAgICAgcmV0dXJuIG9mKHt9KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLmxvZ2dlcj8ud2FybihgRmFpbGVkIHRvIGxvYWQgJHtsYW5nfSBmcm9tICR7cGF0aFByZWZpeCArIGxhbmcgKyBKU09OX0VYVH0uIEFwcGxpY2F0aW9uIHdpbGwgZmFsbGJhY2sgdG8gJHtmYWxsYmFja0xhbmd1YWdlfWApO1xuICAgICAgICAgIHJldHVybiB0aGlzLmRvd25sb2FkTGFuZ3VhZ2VCdW5kbGUkKHBhdGhQcmVmaXggKyBmYWxsYmFja0xhbmd1YWdlICsgSlNPTl9FWFQpLnBpcGUoXG4gICAgICAgICAgICBjYXRjaEVycm9yKCgpID0+IG9mKHt9KSlcbiAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICB9KVxuICAgICk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"o3r-localization-rules-engine.mjs","sources":["../../src/rules-engine/localization.interfaces.ts","../../src/rules-engine/localization.handler-action.ts","../../src/rules-engine/localization.rules-engine.module.ts","../../src/rules-engine/o3r-localization-rules-engine.ts"],"sourcesContent":["import type {
|
|
1
|
+
{"version":3,"file":"o3r-localization-rules-engine.mjs","sources":["../../src/rules-engine/localization.interfaces.ts","../../src/rules-engine/localization.handler-action.ts","../../src/rules-engine/localization.rules-engine.module.ts","../../src/rules-engine/o3r-localization-rules-engine.ts"],"sourcesContent":["import type {\n RulesEngineAction,\n} from '@o3r/core';\n\n/** ActionUpdateLocalisationBlock */\nexport const RULES_ENGINE_LOCALISATION_UPDATE_ACTION_TYPE = 'UPDATE_LOCALISATION';\n\n/**\n * Content of action that updates localization\n */\nexport interface ActionUpdateLocalisationBlock extends RulesEngineAction {\n actionType: typeof RULES_ENGINE_LOCALISATION_UPDATE_ACTION_TYPE;\n key: string;\n value: string;\n}\n","import {\n Injectable,\n} from '@angular/core';\nimport {\n Store,\n} from '@ngrx/store';\nimport type {\n RulesEngineActionHandler,\n} from '@o3r/core';\nimport {\n ActionUpdateLocalisationBlock,\n RULES_ENGINE_LOCALISATION_UPDATE_ACTION_TYPE,\n} from './localization.interfaces';\nimport {\n LocalizationOverrideStore,\n setLocalizationOverride,\n} from '@o3r/localization';\n\n/**\n * Service to handle async Localization actions\n */\n@Injectable()\nexport class LocalizationRulesEngineActionHandler implements RulesEngineActionHandler<ActionUpdateLocalisationBlock> {\n /** @inheritdoc */\n public readonly supportingActions = [RULES_ENGINE_LOCALISATION_UPDATE_ACTION_TYPE] as const;\n\n constructor(private readonly store: Store<LocalizationOverrideStore>) {}\n\n /** @inheritdoc */\n public executeActions(actions: ActionUpdateLocalisationBlock[]): void | Promise<void> {\n const localizationOverrides = actions.reduce<Record<string, string>>((acc, { key, value }) => {\n acc[key] = value;\n return acc;\n }, {});\n\n this.store.dispatch(setLocalizationOverride({ state: { localizationOverrides } }));\n }\n}\n","import {\n NgModule,\n} from '@angular/core';\nimport {\n LocalizationRulesEngineActionHandler,\n} from './localization.handler-action';\nimport {\n LocalizationOverrideStoreModule,\n} from '@o3r/localization';\n\n@NgModule({\n imports: [\n LocalizationOverrideStoreModule\n ],\n providers: [\n LocalizationRulesEngineActionHandler\n ]\n})\nexport class LocalizationRulesEngineActionModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":";;;;;AAIA;AACO,MAAM,4CAA4C,GAAG;;ACa5D;;AAEG;MAEU,oCAAoC,CAAA;AAI/C,IAAA,WAAA,CAA6B,KAAuC,EAAA;QAAvC,IAAK,CAAA,KAAA,GAAL,KAAK;;AAFlB,QAAA,IAAA,CAAA,iBAAiB,GAAG,CAAC,4CAA4C,CAAU;;;AAKpF,IAAA,cAAc,CAAC,OAAwC,EAAA;AAC5D,QAAA,MAAM,qBAAqB,GAAG,OAAO,CAAC,MAAM,CAAyB,CAAC,GAAG,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,KAAI;AAC3F,YAAA,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK;AAChB,YAAA,OAAO,GAAG;SACX,EAAE,EAAE,CAAC;AAEN,QAAA,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,uBAAuB,CAAC,EAAE,KAAK,EAAE,EAAE,qBAAqB,EAAE,EAAE,CAAC,CAAC;;kIAbzE,oCAAoC,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,KAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;sIAApC,oCAAoC,EAAA,CAAA,CAAA;;4FAApC,oCAAoC,EAAA,UAAA,EAAA,CAAA;kBADhD;;;MCHY,mCAAmC,CAAA;kIAAnC,mCAAmC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAnC,uBAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,mCAAmC,YAN5C,+BAA+B,CAAA,EAAA,CAAA,CAAA;AAMtB,uBAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,mCAAmC,EAJnC,SAAA,EAAA;YACT;AACD,SAAA,EAAA,OAAA,EAAA,CAJC,+BAA+B,CAAA,EAAA,CAAA,CAAA;;4FAMtB,mCAAmC,EAAA,UAAA,EAAA,CAAA;kBAR/C,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,OAAO,EAAE;wBACP;AACD,qBAAA;AACD,oBAAA,SAAS,EAAE;wBACT;AACD;AACF,iBAAA;;;ACjBD;;AAEG;;;;"}
|
|
@@ -20,7 +20,7 @@ import { DynamicContentModule, DynamicContentService } from '@o3r/dynamic-conten
|
|
|
20
20
|
* Decorator to pass localization url
|
|
21
21
|
* @param _url
|
|
22
22
|
*/
|
|
23
|
-
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
23
|
+
// eslint-disable-next-line @typescript-eslint/naming-convention -- decorator should start with a capital letter
|
|
24
24
|
function Localization(_url) {
|
|
25
25
|
return (target, key) => {
|
|
26
26
|
const privateField = _url || `_${key}`;
|
|
@@ -91,8 +91,8 @@ class TranslateMessageFormatLazyCompiler extends TranslateCompiler {
|
|
|
91
91
|
}
|
|
92
92
|
/** @inheritDoc */
|
|
93
93
|
compileTranslations(translations, lang) {
|
|
94
|
-
const compilingStrategy = this.config.enableCache
|
|
95
|
-
(acc, key) => {
|
|
94
|
+
const compilingStrategy = this.config.enableCache
|
|
95
|
+
? (acc, key) => {
|
|
96
96
|
acc[key] = (params) => {
|
|
97
97
|
const cached = this.cache[`${lang}_${key}`];
|
|
98
98
|
if (cached) {
|
|
@@ -103,13 +103,12 @@ class TranslateMessageFormatLazyCompiler extends TranslateCompiler {
|
|
|
103
103
|
return newCachedItem.format(params);
|
|
104
104
|
};
|
|
105
105
|
return acc;
|
|
106
|
-
}
|
|
107
|
-
(acc, key) => {
|
|
106
|
+
}
|
|
107
|
+
: (acc, key) => {
|
|
108
108
|
acc[key] = (params) => new IntlMessageFormat(translations[key], lang, undefined, this.config).format(params);
|
|
109
109
|
return acc;
|
|
110
110
|
};
|
|
111
|
-
return Object.keys(translations)
|
|
112
|
-
.reduce(compilingStrategy, {});
|
|
111
|
+
return Object.keys(translations).reduce((acc, key) => compilingStrategy(acc, key), {});
|
|
113
112
|
}
|
|
114
113
|
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: TranslateMessageFormatLazyCompiler, deps: [{ token: MESSAGE_FORMAT_CONFIG, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
115
114
|
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: TranslateMessageFormatLazyCompiler }); }
|
|
@@ -201,7 +200,6 @@ const localizationOverrideStorageSync = {
|
|
|
201
200
|
/** Localization Configuration Token */
|
|
202
201
|
const LOCALIZATION_CONFIGURATION_TOKEN = new InjectionToken('Localization Configuration injection token');
|
|
203
202
|
|
|
204
|
-
/* eslint-disable @typescript-eslint/ban-types */
|
|
205
203
|
/**
|
|
206
204
|
* Service which is wrapping the configuration logic of TranslateService from ngx-translate
|
|
207
205
|
* Any application willing to use localization just needs to inject LocalizationService
|
|
@@ -217,7 +215,6 @@ class LocalizationService {
|
|
|
217
215
|
/**
|
|
218
216
|
* Internal subject that we use to track changes between keys only and translation mode
|
|
219
217
|
*/
|
|
220
|
-
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
221
218
|
this._showKeys$ = new BehaviorSubject(false);
|
|
222
219
|
/**
|
|
223
220
|
* _showKeys$ exposed as an Observable
|
|
@@ -236,12 +233,12 @@ class LocalizationService {
|
|
|
236
233
|
* @returns selected language if supported, fallback language otherwise.
|
|
237
234
|
*/
|
|
238
235
|
checkFallbackLocalesMap(language) {
|
|
239
|
-
if (language && this.configuration.supportedLocales.
|
|
236
|
+
if (language && !this.configuration.supportedLocales.includes(language)) {
|
|
240
237
|
const closestSupportedLanguageCode = this.getFirstClosestSupportedLanguageCode(language);
|
|
241
238
|
const fallbackForLanguage = this.getFallbackMapLangCode(language);
|
|
242
|
-
const fallbackStrategyDebug = fallbackForLanguage && ' associated fallback language '
|
|
243
|
-
closestSupportedLanguageCode && ' closest supported language '
|
|
244
|
-
this.configuration.fallbackLanguage && ' configured default language ';
|
|
239
|
+
const fallbackStrategyDebug = (fallbackForLanguage && ' associated fallback language ')
|
|
240
|
+
|| (closestSupportedLanguageCode && ' closest supported language ')
|
|
241
|
+
|| (this.configuration.fallbackLanguage && ' configured default language ');
|
|
245
242
|
const fallbackLang = fallbackForLanguage || closestSupportedLanguageCode || this.configuration.fallbackLanguage || language;
|
|
246
243
|
if (language !== fallbackLang) {
|
|
247
244
|
this.logger.debug(`Non supported languages ${language} will fallback to ${fallbackStrategyDebug} ${fallbackLang}`);
|
|
@@ -344,7 +341,7 @@ class LocalizationService {
|
|
|
344
341
|
if (!this.configuration.enableTranslationDeactivation) {
|
|
345
342
|
throw new Error('Translation deactivation is not enabled. Please set the LocalizationConfiguration property "enableTranslationDeactivation" accordingly.');
|
|
346
343
|
}
|
|
347
|
-
const newValue = value
|
|
344
|
+
const newValue = value === undefined ? !this.showKeys : value;
|
|
348
345
|
this._showKeys$.next(newValue);
|
|
349
346
|
}
|
|
350
347
|
/**
|
|
@@ -358,12 +355,9 @@ class LocalizationService {
|
|
|
358
355
|
* @param requestedKey Original translation key
|
|
359
356
|
*/
|
|
360
357
|
getKey(requestedKey) {
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
else {
|
|
365
|
-
return of(requestedKey);
|
|
366
|
-
}
|
|
358
|
+
return this.keyMapping$
|
|
359
|
+
? this.keyMapping$.pipe(map((keyMapping) => keyMapping?.[requestedKey] || requestedKey), distinctUntilChanged())
|
|
360
|
+
: of(requestedKey);
|
|
367
361
|
}
|
|
368
362
|
/**
|
|
369
363
|
* Returns a stream of translated values of a key which updates whenever the language changes.
|
|
@@ -372,7 +366,7 @@ class LocalizationService {
|
|
|
372
366
|
* @returns A stream of the translated key
|
|
373
367
|
*/
|
|
374
368
|
translate(key, interpolateParams) {
|
|
375
|
-
return this.getKey(key).pipe(switchMap((translationKey) => this.getTranslationStream(translationKey, interpolateParams)), shareReplay(1));
|
|
369
|
+
return this.getKey(key).pipe(switchMap((translationKey) => this.getTranslationStream(translationKey, interpolateParams)), shareReplay({ refCount: true, bufferSize: 1 }));
|
|
376
370
|
}
|
|
377
371
|
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: LocalizationService, deps: [{ token: i2.TranslateService }, { token: i1.LoggerService }, { token: LOCALIZATION_CONFIGURATION_TOKEN }, { token: i3.Store, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
378
372
|
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: LocalizationService }); }
|
|
@@ -424,7 +418,7 @@ class LocalizationTranslateDirective extends TranslateDirective {
|
|
|
424
418
|
*/
|
|
425
419
|
setContent(node, content) {
|
|
426
420
|
const key = node.originalContent;
|
|
427
|
-
const newContent = this.showKeys ? key : this.localizationConfig.debugMode && key ? `${key} - ${content}` : content;
|
|
421
|
+
const newContent = this.showKeys ? key : (this.localizationConfig.debugMode && key ? `${key} - ${content}` : content);
|
|
428
422
|
if (typeof node.textContent !== 'undefined' && node.textContent !== null) {
|
|
429
423
|
node.textContent = newContent;
|
|
430
424
|
}
|
|
@@ -573,12 +567,7 @@ class LocalizedDatePipe extends DatePipe {
|
|
|
573
567
|
this.onLangChange = this.localizationService.getTranslateService().onLangChange.subscribe(() => this.changeDetectorRef.markForCheck());
|
|
574
568
|
}
|
|
575
569
|
transform(value, format = 'mediumDate', timezone, locale) {
|
|
576
|
-
|
|
577
|
-
return format;
|
|
578
|
-
}
|
|
579
|
-
else {
|
|
580
|
-
return super.transform(value, format, timezone, locale || this.localizationService.getCurrentLanguage());
|
|
581
|
-
}
|
|
570
|
+
return this.localizationService.showKeys ? format : super.transform(value, format, timezone, locale || this.localizationService.getCurrentLanguage());
|
|
582
571
|
}
|
|
583
572
|
ngOnDestroy() {
|
|
584
573
|
this.onLangChange.unsubscribe();
|
|
@@ -641,7 +630,7 @@ class TextDirectionService {
|
|
|
641
630
|
return this.subscription;
|
|
642
631
|
}
|
|
643
632
|
this.subscription = this.translateService.onLangChange.subscribe((event) => {
|
|
644
|
-
const direction = this.configuration.rtlLanguages.
|
|
633
|
+
const direction = this.configuration.rtlLanguages.includes(event.lang.split('-')[0]) ? 'rtl' : 'ltr';
|
|
645
634
|
this.renderer.setAttribute(document.body, 'dir', direction);
|
|
646
635
|
this.directionality.change.emit(direction);
|
|
647
636
|
});
|
|
@@ -686,7 +675,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImpo
|
|
|
686
675
|
function createLocalizationConfiguration(configuration) {
|
|
687
676
|
return {
|
|
688
677
|
...DEFAULT_LOCALIZATION_CONFIGURATION,
|
|
689
|
-
...
|
|
678
|
+
...configuration
|
|
690
679
|
};
|
|
691
680
|
}
|
|
692
681
|
/**
|
|
@@ -713,10 +702,12 @@ class LocalizationModule {
|
|
|
713
702
|
ngModule: LocalizationModule,
|
|
714
703
|
providers: [
|
|
715
704
|
LocalizationService,
|
|
716
|
-
...(configuration
|
|
717
|
-
|
|
718
|
-
|
|
719
|
-
|
|
705
|
+
...(configuration
|
|
706
|
+
? [{
|
|
707
|
+
provide: CUSTOM_LOCALIZATION_CONFIGURATION_TOKEN,
|
|
708
|
+
useFactory: configuration
|
|
709
|
+
}]
|
|
710
|
+
: [])
|
|
720
711
|
]
|
|
721
712
|
};
|
|
722
713
|
}
|
|
@@ -783,7 +774,7 @@ class TranslationsLoader {
|
|
|
783
774
|
let localizationPath$ = of(this.localizationConfiguration.endPointUrl);
|
|
784
775
|
if (this.localizationConfiguration.useDynamicContent) {
|
|
785
776
|
if (!this.dynamicContentService) {
|
|
786
|
-
throw Error('Dynamic Content is not available. Please verify you have imported the module DynamicContentModule in your application');
|
|
777
|
+
throw new Error('Dynamic Content is not available. Please verify you have imported the module DynamicContentModule in your application');
|
|
787
778
|
}
|
|
788
779
|
localizationPath$ = this.dynamicContentService.getContentPathStream(this.localizationConfiguration.endPointUrl);
|
|
789
780
|
}
|
|
@@ -829,14 +820,14 @@ class TranslationsLoader {
|
|
|
829
820
|
getTranslationFromLocal(lang, fallbackLanguage) {
|
|
830
821
|
const pathPrefix = this.localizationConfiguration.bundlesOutputPath;
|
|
831
822
|
return this.downloadLanguageBundle$(pathPrefix + lang + JSON_EXT).pipe(catchError(() => {
|
|
832
|
-
if (lang
|
|
833
|
-
this.logger?.warn(`Failed to load ${lang} from ${pathPrefix + lang + JSON_EXT}. Application will fallback to ${fallbackLanguage}`);
|
|
834
|
-
return this.downloadLanguageBundle$(pathPrefix + fallbackLanguage + JSON_EXT).pipe(catchError(() => of({})));
|
|
835
|
-
}
|
|
836
|
-
else {
|
|
823
|
+
if (lang === fallbackLanguage) {
|
|
837
824
|
this.logger?.warn(`Failed to load ${lang} from ${pathPrefix + lang + JSON_EXT}.`);
|
|
838
825
|
return of({});
|
|
839
826
|
}
|
|
827
|
+
else {
|
|
828
|
+
this.logger?.warn(`Failed to load ${lang} from ${pathPrefix + lang + JSON_EXT}. Application will fallback to ${fallbackLanguage}`);
|
|
829
|
+
return this.downloadLanguageBundle$(pathPrefix + fallbackLanguage + JSON_EXT).pipe(catchError(() => of({})));
|
|
830
|
+
}
|
|
840
831
|
}));
|
|
841
832
|
}
|
|
842
833
|
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: TranslationsLoader, deps: [{ token: LOCALIZATION_CONFIGURATION_TOKEN }, { token: i1.LoggerService, optional: true }, { token: i2$2.DynamicContentService, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
@@ -967,7 +958,7 @@ const OTTER_LOCALIZATION_DEVTOOLS_DEFAULT_OPTIONS = {
|
|
|
967
958
|
};
|
|
968
959
|
const OTTER_LOCALIZATION_DEVTOOLS_OPTIONS = new InjectionToken('Otter Localization Devtools options');
|
|
969
960
|
|
|
970
|
-
/* eslint-disable no-console */
|
|
961
|
+
/* eslint-disable no-console -- This is the purpose of this service */
|
|
971
962
|
class LocalizationDevtoolsConsoleService {
|
|
972
963
|
/** Name of the Window property to access to the devtools */
|
|
973
964
|
static { this.windowModuleName = 'localization'; }
|
|
@@ -983,9 +974,7 @@ class LocalizationDevtoolsConsoleService {
|
|
|
983
974
|
/** @inheritDoc */
|
|
984
975
|
activate() {
|
|
985
976
|
const windowWithDevtools = window;
|
|
986
|
-
// eslint-disable-next-line no-underscore-dangle
|
|
987
977
|
windowWithDevtools._OTTER_DEVTOOLS_ ||= {};
|
|
988
|
-
// eslint-disable-next-line no-underscore-dangle
|
|
989
978
|
windowWithDevtools._OTTER_DEVTOOLS_[LocalizationDevtoolsConsoleService.windowModuleName] = this;
|
|
990
979
|
console.info(`Otter localization Devtools is now accessible via the _OTTER_DEVTOOLS_.${LocalizationDevtoolsConsoleService.windowModuleName} variable`);
|
|
991
980
|
}
|
|
@@ -1110,8 +1099,7 @@ class LocalizationDevtoolsMessageService {
|
|
|
1110
1099
|
}
|
|
1111
1100
|
/**
|
|
1112
1101
|
* Function to handle the incoming messages from Otter Chrome DevTools extension
|
|
1113
|
-
* @param
|
|
1114
|
-
* @param message
|
|
1102
|
+
* @param message Message coming from the Otter Chrome DevTools extension
|
|
1115
1103
|
*/
|
|
1116
1104
|
handleEvents(message) {
|
|
1117
1105
|
this.logger.debug('Message handling by the localization service', message);
|