@o3r/localization 10.0.0-next.8 → 11.0.0-next.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +12 -14
- package/annotations/index.d.ts +0 -1
- package/annotations/index.d.ts.map +1 -1
- package/annotations/localization.d.ts +0 -1
- package/annotations/localization.d.ts.map +1 -1
- package/builders/helpers/localization.generator.d.ts +6 -22
- package/builders/helpers/localization.generator.d.ts.map +1 -1
- package/builders/helpers/localization.generator.js +56 -57
- package/builders/helpers/localization.generator.js.map +1 -1
- package/builders/i18n/schema.json +1 -1
- package/builders/localization/index.d.ts.map +1 -1
- package/builders/localization/index.js +5 -4
- package/builders/localization/index.js.map +1 -1
- package/builders/localization/schema.json +1 -1
- package/builders/localization-extractor/index.d.ts.map +1 -1
- package/builders/localization-extractor/index.js +5 -3
- package/builders/localization-extractor/index.js.map +1 -1
- package/builders/localization-extractor/schema.d.ts +2 -0
- package/builders/localization-extractor/schema.d.ts.map +1 -1
- package/builders/localization-extractor/schema.json +6 -1
- package/core/localization.configuration.d.ts +8 -5
- package/core/localization.configuration.d.ts.map +1 -1
- package/core/translate-messageformat-lazy.compiler.d.ts +1 -3
- package/core/translate-messageformat-lazy.compiler.d.ts.map +1 -1
- package/devkit/localization-devkit.interface.d.ts +45 -2
- package/devkit/localization-devkit.interface.d.ts.map +1 -1
- package/devkit/localization-devtools.console.service.d.ts +38 -9
- package/devkit/localization-devtools.console.service.d.ts.map +1 -1
- package/devkit/localization-devtools.message.service.d.ts +4 -5
- package/devkit/localization-devtools.message.service.d.ts.map +1 -1
- package/devkit/localization-devtools.module.d.ts +0 -1
- package/devkit/localization-devtools.module.d.ts.map +1 -1
- package/devkit/localization-devtools.service.d.ts +11 -2
- package/devkit/localization-devtools.service.d.ts.map +1 -1
- package/devkit/localization-devtools.token.d.ts.map +1 -1
- package/esm2022/annotations/index.mjs +1 -2
- package/esm2022/annotations/localization.mjs +1 -2
- package/esm2022/core/localization.configuration.mjs +1 -1
- package/esm2022/core/translate-messageformat-lazy.compiler.mjs +6 -6
- package/esm2022/devkit/localization-devkit.interface.mjs +1 -1
- package/esm2022/devkit/localization-devtools.console.service.mjs +66 -12
- package/esm2022/devkit/localization-devtools.message.service.mjs +6 -7
- package/esm2022/devkit/localization-devtools.module.mjs +5 -6
- package/esm2022/devkit/localization-devtools.service.mjs +23 -6
- package/esm2022/devkit/localization-devtools.token.mjs +3 -2
- package/esm2022/rules-engine/localization.handler-action.mjs +30 -0
- package/esm2022/rules-engine/localization.interfaces.mjs +3 -0
- package/esm2022/rules-engine/localization.rules-engine.module.mjs +23 -0
- package/esm2022/rules-engine/o3r-localization-rules-engine.mjs +5 -0
- package/esm2022/rules-engine/public_api.mjs +4 -0
- package/esm2022/stores/localization-override/localization-override.module.mjs +4 -4
- package/esm2022/tools/localization-translate.directive.mjs +6 -7
- package/esm2022/tools/localization-translate.pipe.mjs +6 -7
- package/esm2022/tools/localization.module.mjs +9 -12
- package/esm2022/tools/localization.provider.mjs +1 -2
- package/esm2022/tools/localization.service.mjs +7 -14
- package/esm2022/tools/localized-currency.pipe.mjs +5 -5
- package/esm2022/tools/localized-date.pipe.mjs +5 -5
- package/esm2022/tools/localized-decimal.pipe.mjs +5 -5
- package/esm2022/tools/text-direction.service.mjs +6 -7
- package/esm2022/tools/text-directionality.service.mjs +6 -6
- package/esm2022/tools/translations-loader.mjs +9 -11
- package/fesm2022/o3r-localization-rules-engine.mjs +57 -0
- package/fesm2022/o3r-localization-rules-engine.mjs.map +1 -0
- package/fesm2022/o3r-localization.mjs +160 -139
- package/fesm2022/o3r-localization.mjs.map +1 -1
- package/package.json +40 -30
- package/rules-engine/index.d.ts +6 -0
- package/rules-engine/localization.handler-action.d.ts +19 -0
- package/rules-engine/localization.handler-action.d.ts.map +1 -0
- package/rules-engine/localization.interfaces.d.ts +12 -0
- package/rules-engine/localization.interfaces.d.ts.map +1 -0
- package/rules-engine/localization.rules-engine.module.d.ts +8 -0
- package/rules-engine/localization.rules-engine.module.d.ts.map +1 -0
- package/rules-engine/o3r-localization-rules-engine.d.ts.map +1 -0
- package/rules-engine/public_api.d.ts +4 -0
- package/rules-engine/public_api.d.ts.map +1 -0
- package/schemas/localization.metadata.schema.json +18 -3
- package/schemas/rules-engine.localisation-action.schema.json +26 -0
- package/schematics/add-localization-key/index.d.ts.map +1 -1
- package/schematics/add-localization-key/index.js +2 -2
- package/schematics/add-localization-key/index.js.map +1 -1
- package/schematics/add-localization-key/schema.json +1 -1
- package/schematics/cms-adapter/index.d.ts +0 -1
- package/schematics/cms-adapter/index.d.ts.map +1 -1
- package/schematics/cms-adapter/index.js +5 -9
- package/schematics/cms-adapter/index.js.map +1 -1
- package/schematics/localization-base/index.d.ts +2 -1
- package/schematics/localization-base/index.d.ts.map +1 -1
- package/schematics/localization-base/index.js +28 -34
- package/schematics/localization-base/index.js.map +1 -1
- package/schematics/localization-to-component/index.d.ts.map +1 -1
- package/schematics/localization-to-component/index.js +2 -2
- package/schematics/localization-to-component/index.js.map +1 -1
- package/schematics/localization-to-component/schema.json +1 -1
- package/schematics/ng-add/helpers/devtools-registration.d.ts +11 -0
- package/schematics/ng-add/helpers/devtools-registration.d.ts.map +1 -0
- package/schematics/ng-add/helpers/devtools-registration.js +35 -0
- package/schematics/ng-add/helpers/devtools-registration.js.map +1 -0
- package/schematics/ng-add/index.d.ts +0 -1
- package/schematics/ng-add/index.d.ts.map +1 -1
- package/schematics/ng-add/index.js +9 -5
- package/schematics/ng-add/index.js.map +1 -1
- package/schematics/ng-add/schema.json +1 -1
- package/tools/localization-translate.directive.d.ts +3 -4
- package/tools/localization-translate.directive.d.ts.map +1 -1
- package/tools/localization-translate.pipe.d.ts +4 -5
- package/tools/localization-translate.pipe.d.ts.map +1 -1
- package/tools/localization.module.d.ts +4 -7
- package/tools/localization.module.d.ts.map +1 -1
- package/tools/localization.provider.d.ts +0 -1
- package/tools/localization.provider.d.ts.map +1 -1
- package/tools/localization.service.d.ts +6 -14
- package/tools/localization.service.d.ts.map +1 -1
- package/tools/localized-currency.pipe.d.ts +6 -5
- package/tools/localized-currency.pipe.d.ts.map +1 -1
- package/tools/localized-date.pipe.d.ts +3 -3
- package/tools/localized-date.pipe.d.ts.map +1 -1
- package/tools/localized-decimal.pipe.d.ts +3 -3
- package/tools/localized-decimal.pipe.d.ts.map +1 -1
- package/tools/text-direction.service.d.ts +5 -6
- package/tools/text-direction.service.d.ts.map +1 -1
- package/tools/text-directionality.service.d.ts +0 -1
- package/tools/text-directionality.service.d.ts.map +1 -1
- package/tools/translations-loader.d.ts +5 -7
- package/tools/translations-loader.d.ts.map +1 -1
- package/annotations/input-merge.d.ts +0 -9
- package/annotations/input-merge.d.ts.map +0 -1
- package/builders/package.json +0 -3
- package/esm2022/annotations/input-merge.mjs +0 -29
- package/schematics/package.json +0 -3
|
@@ -16,7 +16,6 @@ import { TextDirectionality } from './text-directionality.service';
|
|
|
16
16
|
import * as i0 from "@angular/core";
|
|
17
17
|
/**
|
|
18
18
|
* creates LocalizationConfiguration, which is used if the application
|
|
19
|
-
*
|
|
20
19
|
* @param configuration Localization configuration
|
|
21
20
|
*/
|
|
22
21
|
export function createLocalizationConfiguration(configuration) {
|
|
@@ -27,7 +26,6 @@ export function createLocalizationConfiguration(configuration) {
|
|
|
27
26
|
}
|
|
28
27
|
/**
|
|
29
28
|
* Factory to inject the LOCALE_ID token with the current language into Angular context
|
|
30
|
-
*
|
|
31
29
|
* @param localizationService Localization service
|
|
32
30
|
*/
|
|
33
31
|
export function localeIdNgBridge(localizationService) {
|
|
@@ -39,11 +37,10 @@ export class LocalizationModule {
|
|
|
39
37
|
/**
|
|
40
38
|
* forRoot method should be called only once from the application index.ts
|
|
41
39
|
* It will do several things:
|
|
42
|
-
*
|
|
43
|
-
*
|
|
44
|
-
*
|
|
45
|
-
*
|
|
46
|
-
*
|
|
40
|
+
* - provide the configuration for the whole application
|
|
41
|
+
* - register all locales specified in the LocalizationConfiguration
|
|
42
|
+
* - configure TranslateService
|
|
43
|
+
* - inject LOCALE_ID token
|
|
47
44
|
* @param configuration LocalizationConfiguration
|
|
48
45
|
*/
|
|
49
46
|
static forRoot(configuration) {
|
|
@@ -58,9 +55,9 @@ export class LocalizationModule {
|
|
|
58
55
|
]
|
|
59
56
|
};
|
|
60
57
|
}
|
|
61
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
62
|
-
/** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
63
|
-
/** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
58
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: LocalizationModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
59
|
+
/** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.8", ngImport: i0, type: LocalizationModule, declarations: [LocalizationTranslatePipe, LocalizationTranslateDirective, LocalizedDatePipe, LocalizedDecimalPipe, LocalizedCurrencyPipe], imports: [TranslateModule, BidiModule, DynamicContentModule, CommonModule], exports: [TranslateModule, LocalizationTranslatePipe, LocalizationTranslateDirective, LocalizedDatePipe, LocalizedDecimalPipe, LocalizedCurrencyPipe] }); }
|
|
60
|
+
/** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: LocalizationModule, providers: [
|
|
64
61
|
{ provide: LOCALIZATION_CONFIGURATION_TOKEN, useFactory: createLocalizationConfiguration, deps: [[new Optional(), CUSTOM_LOCALIZATION_CONFIGURATION_TOKEN]] },
|
|
65
62
|
{ provide: LOCALE_ID, useFactory: localeIdNgBridge, deps: [LocalizationService] },
|
|
66
63
|
{ provide: Directionality, useClass: TextDirectionality },
|
|
@@ -70,7 +67,7 @@ export class LocalizationModule {
|
|
|
70
67
|
TextDirectionService
|
|
71
68
|
], imports: [TranslateModule, BidiModule, DynamicContentModule, CommonModule, TranslateModule] }); }
|
|
72
69
|
}
|
|
73
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
70
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: LocalizationModule, decorators: [{
|
|
74
71
|
type: NgModule,
|
|
75
72
|
args: [{
|
|
76
73
|
declarations: [LocalizationTranslatePipe, LocalizationTranslateDirective, LocalizedDatePipe, LocalizedDecimalPipe, LocalizedCurrencyPipe],
|
|
@@ -87,4 +84,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.0", ngImpor
|
|
|
87
84
|
]
|
|
88
85
|
}]
|
|
89
86
|
}] });
|
|
90
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
87
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWxpemF0aW9uLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90b29scy9sb2NhbGl6YXRpb24ubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDL0QsT0FBTyxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3BGLE9BQU8sRUFBRSxjQUFjLEVBQUUsU0FBUyxFQUF1QixRQUFRLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25HLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUM1RCxPQUFPLEVBQUUsa0NBQWtDLEVBQTZCLE1BQU0sU0FBUyxDQUFDO0FBQ3hGLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3BGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQzFFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzdELE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3hFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzFELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLCtCQUErQixDQUFDOztBQUVuRTs7O0dBR0c7QUFDSCxNQUFNLFVB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LEVBQUUsa0JBQWtCLEVBQUM7d0JBQ3ZELEVBQUMsT0FBTyxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsaUJBQWlCLEVBQUM7d0JBQ2hELEVBQUMsT0FBTyxFQUFFLFdBQVcsRUFBRSxRQUFRLEVBQUUsb0JBQW9CLEVBQUM7d0JBQ3RELEVBQUMsT0FBTyxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUUscUJBQXFCLEVBQUM7d0JBQ3hELG9CQUFvQjtxQkFDckI7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCaWRpTW9kdWxlLCBEaXJlY3Rpb25hbGl0eSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9iaWRpJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSwgQ3VycmVuY3lQaXBlLCBEYXRlUGlwZSwgRGVjaW1hbFBpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4sIExPQ0FMRV9JRCwgTW9kdWxlV2l0aFByb3ZpZGVycywgTmdNb2R1bGUsIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUcmFuc2xhdGVNb2R1bGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7IER5bmFtaWNDb250ZW50TW9kdWxlIH0gZnJvbSAnQG8zci9keW5hbWljLWNvbnRlbnQnO1xuaW1wb3J0IHsgREVGQVVMVF9MT0NBTElaQVRJT05fQ09ORklHVVJBVElPTiwgTG9jYWxpemF0aW9uQ29uZmlndXJhdGlvbiB9IGZyb20gJy4uL2NvcmUnO1xuaW1wb3J0IHsgTG9jYWxpemF0aW9uVHJhbnNsYXRlRGlyZWN0aXZlIH0gZnJvbSAnLi9sb2NhbGl6YXRpb24tdHJhbnNsYXRlLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBMb2NhbGl6YXRpb25UcmFuc2xhdGVQaXBlIH0gZnJvbSAnLi9sb2NhbGl6YXRpb24tdHJhbnNsYXRlLnBpcGUnO1xuaW1wb3J0IHsgTG9jYWxpemF0aW9uU2VydmljZSB9IGZyb20gJy4vbG9jYWxpemF0aW9uLnNlcnZpY2UnO1xuaW1wb3J0IHsgTE9DQUxJWkFUSU9OX0NPTkZJR1VSQVRJT05fVE9LRU4gfSBmcm9tICcuL2xvY2FsaXphdGlvbi50b2tlbic7XG5pbXBvcnQgeyBMb2NhbGl6ZWRDdXJyZW5jeVBpcGUgfSBmcm9tICcuL2xvY2FsaXplZC1jdXJyZW5jeS5waXBlJztcbmltcG9ydCB7IExvY2FsaXplZERhdGVQaXBlIH0gZnJvbSAnLi9sb2NhbGl6ZWQtZGF0ZS5waXBlJztcbmltcG9ydCB7IExvY2FsaXplZERlY2ltYWxQaXBlIH0gZnJvbSAnLi9sb2NhbGl6ZWQtZGVjaW1hbC5waXBlJztcbmltcG9ydCB7IFRleHREaXJlY3Rpb25TZXJ2aWNlIH0gZnJvbSAnLi90ZXh0LWRpcmVjdGlvbi5zZXJ2aWNlJztcbmltcG9ydCB7IFRleHREaXJlY3Rpb25hbGl0eSB9IGZyb20gJy4vdGV4dC1kaXJlY3Rpb25hbGl0eS5zZXJ2aWNlJztcblxuLyoqXG4gKiBjcmVhdGVzIExvY2FsaXphdGlvbkNvbmZpZ3VyYXRpb24sIHdoaWNoIGlzIHVzZWQgaWYgdGhlIGFwcGxpY2F0aW9uXG4gKiBAcGFyYW0gY29uZmlndXJhdGlvbiBMb2NhbGl6YXRpb24gY29uZmlndXJhdGlvblxuICovXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlTG9jYWxpemF0aW9uQ29uZmlndXJhdGlvbihjb25maWd1cmF0aW9uPzogUGFydGlhbDxMb2NhbGl6YXRpb25Db25maWd1cmF0aW9uPik6IExvY2FsaXphdGlvbkNvbmZpZ3VyYXRpb24ge1xuICByZXR1cm4ge1xuICAgIC4uLkRFRkFVTFRfTE9DQUxJWkFUSU9OX0NPTkZJR1VSQVRJT04sXG4gICAgLi4uKGNvbmZpZ3VyYXRpb24gfHwge30pXG4gIH07XG59XG5cbi8qKlxuICogRmFjdG9yeSB0byBpbmplY3QgdGhlIExPQ0FMRV9JRCB0b2tlbiB3aXRoIHRoZSBjdXJyZW50IGxhbmd1YWdlIGludG8gQW5ndWxhciBjb250ZXh0XG4gKiBAcGFyYW0gbG9jYWxpemF0aW9uU2VydmljZSBMb2NhbGl6YXRpb24gc2VydmljZVxuICovXG5leHBvcnQgZnVuY3Rpb24gbG9jYWxlSWROZ0JyaWRnZShsb2NhbGl6YXRpb25TZXJ2aWNlOiBMb2NhbGl6YXRpb25TZXJ2aWNlKSB7XG4gIHJldHVybiBsb2NhbGl6YXRpb25TZXJ2aWNlLmdldEN1cnJlbnRMYW5ndWFnZSgpO1xufVxuXG4vKiogQ3VzdG9tIExvY2FsaXphdGlvbiBDb25maWd1cmF0aW9uIFRva2VuIHRvIG92ZXJyaWRlIGRlZmF1bHQgbG9jYWxpemF0aW9uIGNvbmZpZ3VyYXRpb24gKi9cbmV4cG9ydCBjb25zdCBDVVNUT01fTE9DQUxJWkFUSU9OX0NPTkZJR1VSQVRJT05fVE9LRU4gPSBuZXcgSW5qZWN0aW9uVG9rZW48UGFydGlhbDxMb2NhbGl6YXRpb25Db25maWd1cmF0aW9uPj4oJ1BhcnRpYWwgTG9jYWxpemF0aW9uIGNvbmZpZ3VyYXRpb24nKTtcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbTG9jYWxpemF0aW9uVHJhbnNsYXRlUGlwZSwgTG9jYWxpemF0aW9uVHJhbnNsYXRlRGlyZWN0aXZlLCBMb2NhbGl6ZWREYXRlUGlwZSwgTG9jYWxpemVkRGVjaW1hbFBpcGUsIExvY2FsaXplZEN1cnJlbmN5UGlwZV0sXG4gIGltcG9ydHM6IFtUcmFuc2xhdGVNb2R1bGUsIEJpZGlNb2R1bGUsIER5bmFtaWNDb250ZW50TW9kdWxlLCBDb21tb25Nb2R1bGVdLFxuICBleHBvcnRzOiBbVHJhbnNsYXRlTW9kdWxlLCBMb2NhbGl6YXRpb25UcmFuc2xhdGVQaXBlLCBMb2NhbGl6YXRpb25UcmFuc2xhdGVEaXJlY3RpdmUsIExvY2FsaXplZERhdGVQaXBlLCBMb2NhbGl6ZWREZWNpbWFsUGlwZSwgTG9jYWxpemVkQ3VycmVuY3lQaXBlXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAge3Byb3ZpZGU6IExPQ0FMSVpBVElPTl9DT05GSUdVUkFUSU9OX1RPS0VOLCB1c2VGYWN0b3J5OiBjcmVhdGVMb2NhbGl6YXRpb25Db25maWd1cmF0aW9uLCBkZXBzOiBbW25ldyBPcHRpb25hbCgpLCBDVVNUT01fTE9DQUxJWkFUSU9OX0NPTkZJR1VSQVRJT05fVE9LRU5dXX0sXG4gICAge3Byb3ZpZGU6IExPQ0FMRV9JRCwgdXNlRmFjdG9yeTogbG9jYWxlSWROZ0JyaWRnZSwgZGVwczogW0xvY2FsaXphdGlvblNlcnZpY2VdfSxcbiAgICB7cHJvdmlkZTogRGlyZWN0aW9uYWxpdHksIHVzZUNsYXNzOiBUZXh0RGlyZWN0aW9uYWxpdHl9LFxuICAgIHtwcm92aWRlOiBEYXRlUGlwZSwgdXNlQ2xhc3M6IExvY2FsaXplZERhdGVQaXBlfSxcbiAgICB7cHJvdmlkZTogRGVjaW1hbFBpcGUsIHVzZUNsYXNzOiBMb2NhbGl6ZWREZWNpbWFsUGlwZX0sXG4gICAge3Byb3ZpZGU6IEN1cnJlbmN5UGlwZSwgdXNlQ2xhc3M6IExvY2FsaXplZEN1cnJlbmN5UGlwZX0sXG4gICAgVGV4dERpcmVjdGlvblNlcnZpY2VcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBMb2NhbGl6YXRpb25Nb2R1bGUge1xuICAvKipcbiAgICogZm9yUm9vdCBtZXRob2Qgc2hvdWxkIGJlIGNhbGxlZCBvbmx5IG9uY2UgZnJvbSB0aGUgYXBwbGljYXRpb24gaW5kZXgudHNcbiAgICogSXQgd2lsbCBkbyBzZXZlcmFsIHRoaW5nczpcbiAgICogLSBwcm92aWRlIHRoZSBjb25maWd1cmF0aW9uIGZvciB0aGUgd2hvbGUgYXBwbGljYXRpb25cbiAgICogLSByZWdpc3RlciBhbGwgbG9jYWxlcyBzcGVjaWZpZWQgaW4gdGhlIExvY2FsaXphdGlvbkNvbmZpZ3VyYXRpb25cbiAgICogLSBjb25maWd1cmUgVHJhbnNsYXRlU2VydmljZVxuICAgKiAtIGluamVjdCBMT0NBTEVfSUQgdG9rZW5cbiAgICogQHBhcmFtIGNvbmZpZ3VyYXRpb24gTG9jYWxpemF0aW9uQ29uZmlndXJhdGlvblxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBmb3JSb290KFxuICAgIGNvbmZpZ3VyYXRpb24/OiAoKSA9PiBQYXJ0aWFsPExvY2FsaXphdGlvbkNvbmZpZ3VyYXRpb24+XG4gICk6IE1vZHVsZVdpdGhQcm92aWRlcnM8TG9jYWxpemF0aW9uTW9kdWxlPiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIG5nTW9kdWxlOiBMb2NhbGl6YXRpb25Nb2R1bGUsXG4gICAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgTG9jYWxpemF0aW9uU2VydmljZSxcbiAgICAgICAgLi4uKGNvbmZpZ3VyYXRpb24gPyBbe1xuICAgICAgICAgIHByb3ZpZGU6IENVU1RPTV9MT0NBTElaQVRJT05fQ09ORklHVVJBVElPTl9UT0tFTixcbiAgICAgICAgICB1c2VGYWN0b3J5OiBjb25maWd1cmF0aW9uXG4gICAgICAgIH1dIDogW10pXG4gICAgICBdXG4gICAgfTtcbiAgfVxufVxuIl19
|
|
@@ -7,7 +7,6 @@ import { TranslationsLoader } from './translations-loader';
|
|
|
7
7
|
/**
|
|
8
8
|
* Creates a loader of translations bundles based on the configuration
|
|
9
9
|
* (endPointUrl and language determine which bundle we load and where do we fetch it from)
|
|
10
|
-
*
|
|
11
10
|
* @param localizationConfiguration
|
|
12
11
|
* @param logger service to handle the log of warning and errors
|
|
13
12
|
* @param dynamicContentService (optional)
|
|
@@ -23,4 +22,4 @@ export const translateLoaderProvider = {
|
|
|
23
22
|
useFactory: createTranslateLoader,
|
|
24
23
|
deps: [LOCALIZATION_CONFIGURATION_TOKEN, [new Optional(), LoggerService], [new Optional(), DynamicContentService]]
|
|
25
24
|
};
|
|
26
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWxpemF0aW9uLnByb3ZpZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3Rvb2xzL2xvY2FsaXphdGlvbi5wcm92aWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQW1CLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdEQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDN0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUU1QyxPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN4RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUUzRDs7Ozs7O0dBTUc7QUFDSCxNQUFNLFVBQVUscUJBQXFCLENBQUMseUJBQW9ELEVBQUUsTUFBc0IsRUFBRSxxQkFBNkM7SUFDL0osT0FBTyxJQUFJLGtCQUFrQixDQUFDLHlCQUF5QixFQUFFLE1BQU0sRUFBRSxxQkFBcUIsQ0FBQyxDQUFDO0FBQzFGLENBQUM7QUFFRDs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLHVCQUF1QixHQUFvQjtJQUN0RCxPQUFPLEVBQUUsZUFBZTtJQUN4QixVQUFVLEVBQUUscUJBQXFCO0lBQ2pDLElBQUksRUFBRSxDQUFDLGdDQUFnQyxFQUFFLENBQUMsSUFBSSxRQUFRLEVBQUUsRUFBRSxhQUFhLENBQUMsRUFBRSxDQUFDLElBQUksUUFBUSxFQUFFLEVBQUUscUJBQXFCLENBQUMsQ0FBQztDQUNuSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRmFjdG9yeVByb3ZpZGVyLCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVHJhbnNsYXRlTG9hZGVyIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQgeyBEeW5hbWljQ29udGVudFNlcnZpY2UgfSBmcm9tICdAbzNyL2R5bmFtaWMtY29udGVudCc7XG5pbXBvcnQgeyBMb2dnZXJTZXJ2aWNlIH0gZnJvbSAnQG8zci9sb2dnZXInO1xuaW1wb3J0IHsgTG9jYWxpemF0aW9uQ29uZmlndXJhdGlvbiB9IGZyb20gJy4uL2NvcmUnO1xuaW1wb3J0IHsgTE9DQUxJWkFUSU9OX0NPTkZJR1VSQVRJT05fVE9LRU4gfSBmcm9tICcuL2xvY2FsaXphdGlvbi50b2tlbic7XG5pbXBvcnQgeyBUcmFuc2xhdGlvbnNMb2FkZXIgfSBmcm9tICcuL3RyYW5zbGF0aW9ucy1sb2FkZXInO1xuXG4vKipcbiAqIENyZWF0ZXMgYSBsb2FkZXIgb2YgdHJhbnNsYXRpb25zIGJ1bmRsZXMgYmFzZWQgb24gdGhlIGNvbmZpZ3VyYXRpb25cbiAqIChlbmRQb2ludFVybCBhbmQgbGFuZ3VhZ2UgZGV0ZXJtaW5lIHdoaWNoIGJ1bmRsZSB3ZSBsb2FkIGFuZCB3aGVyZSBkbyB3ZSBmZXRjaCBpdCBmcm9tKVxuICogQHBhcmFtIGxvY2FsaXphdGlvbkNvbmZpZ3VyYXRpb25cbiAqIEBwYXJhbSBsb2dnZXIgc2VydmljZSB0byBoYW5kbGUgdGhlIGxvZyBvZiB3YXJuaW5nIGFuZCBlcnJvcnNcbiAqIEBwYXJhbSBkeW5hbWljQ29udGVudFNlcnZpY2UgKG9wdGlvbmFsKVxuICovXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlVHJhbnNsYXRlTG9hZGVyKGxvY2FsaXphdGlvbkNvbmZpZ3VyYXRpb246IExvY2FsaXphdGlvbkNvbmZpZ3VyYXRpb24sIGxvZ2dlcj86IExvZ2dlclNlcnZpY2UsIGR5bmFtaWNDb250ZW50U2VydmljZT86IER5bmFtaWNDb250ZW50U2VydmljZSkge1xuICByZXR1cm4gbmV3IFRyYW5zbGF0aW9uc0xvYWRlcihsb2NhbGl6YXRpb25Db25maWd1cmF0aW9uLCBsb2dnZXIsIGR5bmFtaWNDb250ZW50U2VydmljZSk7XG59XG5cbi8qKlxuICogVHJhbnNsYXRlTG9hZGVyIHByb3ZpZGVyLCB1c2luZyBmcmFtZXdvcmsncyBUcmFuc2xhdGlvbnNMb2FkZXIgY2xhc3NcbiAqL1xuZXhwb3J0IGNvbnN0IHRyYW5zbGF0ZUxvYWRlclByb3ZpZGVyOiBGYWN0b3J5UHJvdmlkZXIgPSB7XG4gIHByb3ZpZGU6IFRyYW5zbGF0ZUxvYWRlcixcbiAgdXNlRmFjdG9yeTogY3JlYXRlVHJhbnNsYXRlTG9hZGVyLFxuICBkZXBzOiBbTE9DQUxJWkFUSU9OX0NPTkZJR1VSQVRJT05fVE9LRU4sIFtuZXcgT3B0aW9uYWwoKSwgTG9nZ2VyU2VydmljZV0sIFtuZXcgT3B0aW9uYWwoKSwgRHluYW1pY0NvbnRlbnRTZXJ2aWNlXV1cbn07XG4iXX0=
|
|
@@ -26,6 +26,7 @@ export class LocalizationService {
|
|
|
26
26
|
/**
|
|
27
27
|
* Internal subject that we use to track changes between keys only and translation mode
|
|
28
28
|
*/
|
|
29
|
+
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
29
30
|
this._showKeys$ = new BehaviorSubject(false);
|
|
30
31
|
/**
|
|
31
32
|
* _showKeys$ exposed as an Observable
|
|
@@ -40,7 +41,6 @@ export class LocalizationService {
|
|
|
40
41
|
* This will handle the fallback language hierarchy to find out fallback language.
|
|
41
42
|
* supportedLocales language has highest priority, next priority goes to fallbackLocalesMap and default would be
|
|
42
43
|
* fallbackLanguage.
|
|
43
|
-
*
|
|
44
44
|
* @param language Selected language.
|
|
45
45
|
* @returns selected language if supported, fallback language otherwise.
|
|
46
46
|
*/
|
|
@@ -67,7 +67,6 @@ export class LocalizationService {
|
|
|
67
67
|
* supportedLocales: ['en-GB', 'en-US', 'fr-FR'], fallbackLocalesMap: {'en-CA': 'en-US', 'de': 'fr-FR'}
|
|
68
68
|
* translate to en-CA -> fallback to en-US, translate to de-DE -> fallback to fr-FR
|
|
69
69
|
* translate to en-NZ -> fallback to en-GB
|
|
70
|
-
*
|
|
71
70
|
* @param language Selected language.
|
|
72
71
|
* @returns Fallback language if available, undefined otherwise.
|
|
73
72
|
*/
|
|
@@ -81,7 +80,6 @@ export class LocalizationService {
|
|
|
81
80
|
* supported language.
|
|
82
81
|
* supportedLocales: ['en-GB', 'en-US', 'fr-FR']
|
|
83
82
|
* translate to en-CA -> fallback to en-GB
|
|
84
|
-
*
|
|
85
83
|
* @param language Selected language.
|
|
86
84
|
* @returns Closest supported language if available, undefined otherwise.
|
|
87
85
|
*/
|
|
@@ -92,7 +90,6 @@ export class LocalizationService {
|
|
|
92
90
|
}
|
|
93
91
|
/**
|
|
94
92
|
* Returns a stream of translated values of a key which updates whenever the language changes.
|
|
95
|
-
*
|
|
96
93
|
* @param translationKey Key to translate
|
|
97
94
|
* @param interpolateParams Object to use in translation binding
|
|
98
95
|
* @returns A stream of the translated key
|
|
@@ -124,7 +121,6 @@ export class LocalizationService {
|
|
|
124
121
|
}
|
|
125
122
|
/**
|
|
126
123
|
* Wrapper to call the ngx-translate service TranslateService method use(language).
|
|
127
|
-
*
|
|
128
124
|
* @param language
|
|
129
125
|
*/
|
|
130
126
|
useLanguage(language) {
|
|
@@ -145,7 +141,6 @@ export class LocalizationService {
|
|
|
145
141
|
}
|
|
146
142
|
/**
|
|
147
143
|
* Toggle the ShowKeys mode between active and inactive.
|
|
148
|
-
*
|
|
149
144
|
* @param value if specified, set the ShowKeys mode to value. If not specified, toggle the ShowKeys mode.
|
|
150
145
|
*/
|
|
151
146
|
toggleShowKeys(value) {
|
|
@@ -163,7 +158,6 @@ export class LocalizationService {
|
|
|
163
158
|
}
|
|
164
159
|
/**
|
|
165
160
|
* Get an observable of translation key after global mapping
|
|
166
|
-
*
|
|
167
161
|
* @param requestedKey Original translation key
|
|
168
162
|
*/
|
|
169
163
|
getKey(requestedKey) {
|
|
@@ -176,7 +170,6 @@ export class LocalizationService {
|
|
|
176
170
|
}
|
|
177
171
|
/**
|
|
178
172
|
* Returns a stream of translated values of a key which updates whenever the language changes.
|
|
179
|
-
*
|
|
180
173
|
* @param key Key to translate
|
|
181
174
|
* @param interpolateParams Object to use in translation binding
|
|
182
175
|
* @returns A stream of the translated key
|
|
@@ -184,15 +177,15 @@ export class LocalizationService {
|
|
|
184
177
|
translate(key, interpolateParams) {
|
|
185
178
|
return this.getKey(key).pipe(switchMap((translationKey) => this.getTranslationStream(translationKey, interpolateParams)), shareReplay(1));
|
|
186
179
|
}
|
|
187
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
188
|
-
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
180
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: LocalizationService, deps: [{ token: i1.TranslateService }, { token: i2.LoggerService }, { token: LOCALIZATION_CONFIGURATION_TOKEN }, { token: i3.Store, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
181
|
+
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: LocalizationService }); }
|
|
189
182
|
}
|
|
190
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
183
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: LocalizationService, decorators: [{
|
|
191
184
|
type: Injectable
|
|
192
|
-
}], ctorParameters:
|
|
185
|
+
}], ctorParameters: () => [{ type: i1.TranslateService }, { type: i2.LoggerService }, { type: undefined, decorators: [{
|
|
193
186
|
type: Inject,
|
|
194
187
|
args: [LOCALIZATION_CONFIGURATION_TOKEN]
|
|
195
188
|
}] }, { type: i3.Store, decorators: [{
|
|
196
189
|
type: Optional
|
|
197
|
-
}] }]
|
|
198
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWxpemF0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdG9vbHMvbG9jYWxpemF0aW9uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsaURBQWlEO0FBQ2pELE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM3RCxPQUFPLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUM1QyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFjLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN0RSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsR0FBRyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVuRixPQUFPLEVBQTZCLDBCQUEwQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDeEYsT0FBTyxFQUFFLGdDQUFnQyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7Ozs7O0FBRXhFOzs7O0dBSUc7QUFFSCxNQUFNLE9BQU8sbUJBQW1CO0lBbUI5QixZQUNVLGdCQUFrQyxFQUNsQyxNQUFxQixFQUNxQixhQUF3QyxFQUN0RSxLQUF3QztRQUhwRCxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQ2xDLFdBQU0sR0FBTixNQUFNLENBQWU7UUFDcUIsa0JBQWEsR0FBYixhQUFhLENBQTJCO1FBQ3RFLFVBQUssR0FBTCxLQUFLLENBQW1DO1FBckI3QywwQkFBcUIsR0FBVyxHQUFHLENBQUM7UUFFckQ7O1dBRUc7UUFDSyxlQUFVLEdBQUcsSUFBSSxlQUFlLENBQUMsS0FBSyxDQUFDLENBQUM7UUFPaEQ7O1dBRUc7UUFDSSxjQUFTLEdBQUcs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aUIsQ0FBQyxDQUFDLEVBQzNGLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FDZixDQUFDO0lBQ0osQ0FBQztpSUE5TVUsbUJBQW1CLCtFQXNCcEIsZ0NBQWdDO3FJQXRCL0IsbUJBQW1COzsyRkFBbkIsbUJBQW1CO2tCQUQvQixVQUFVOzswQkF1Qk4sTUFBTTsyQkFBQyxnQ0FBZ0M7OzBCQUN2QyxRQUFRIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgQHR5cGVzY3JpcHQtZXNsaW50L2Jhbi10eXBlcyAqL1xuaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlLCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgc2VsZWN0LCBTdG9yZSB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7IExvZ2dlclNlcnZpY2UgfSBmcm9tICdAbzNyL2xvZ2dlcic7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGNvbWJpbmVMYXRlc3QsIE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgbWFwLCBzaGFyZVJlcGxheSwgc3dpdGNoTWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgTG9jYWxpemF0aW9uQ29uZmlndXJhdGlvbiB9IGZyb20gJy4uL2NvcmUvbG9jYWxpemF0aW9uLmNvbmZpZ3VyYXRpb24nO1xuaW1wb3J0IHsgTG9jYWxpemF0aW9uT3ZlcnJpZGVTdG9yZSwgc2VsZWN0TG9jYWxpemF0aW9uT3ZlcnJpZGUgfSBmcm9tICcuLi9zdG9yZXMvaW5kZXgnO1xuaW1wb3J0IHsgTE9DQUxJWkFUSU9OX0NPTkZJR1VSQVRJT05fVE9LRU4gfSBmcm9tICcuL2xvY2FsaXphdGlvbi50b2tlbic7XG5cbi8qKlxuICogU2VydmljZSB3aGljaCBpcyB3cmFwcGluZyB0aGUgY29uZmlndXJhdGlvbiBsb2dpYyBvZiBUcmFuc2xhdGVTZXJ2aWNlIGZyb20gbmd4LXRyYW5zbGF0ZVxuICogQW55IGFwcGxpY2F0aW9uIHdpbGxpbmcgdG8gdXNlIGxvY2FsaXphdGlvbiBqdXN0IG5lZWRzIHRvIGluamVjdCBMb2NhbGl6YXRpb25TZXJ2aWNlXG4gKiBpbiB0aGUgcm9vdCBjb21wb25lbnQgYW5kIGNhbGwgaXRzIGNvbmZpZ3VyZSgpIG1ldGhvZC5cbiAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIExvY2FsaXphdGlvblNlcnZpY2Uge1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgbG9jYWxlU3BsaXRJZGVudGlmaWVyOiBzdHJpbmcgPSAnLSc7XG5cbiAgLyoqXG4gICAqIEludGVybmFsIHN1YmplY3QgdGhhdCB3ZSB1c2UgdG8gdHJhY2sgY2hhbmdlcyBiZXR3ZWVuIGtleXMgb25seSBhbmQgdHJhbnNsYXRpb24gbW9kZVxuICAgKi9cbiAgcHJpdmF0ZSBfc2hvd0tleXMkID0gbmV3IEJlaGF2aW9yU3ViamVjdChmYWxzZSk7XG5cbiAgLyoqXG4gICAqIE1hcCBvZiBsb2NhbGl6YXRpb24ga2V5cyB0byByZXBsYWNlIGEga2V5IHRvIGFub3RoZXJcbiAgICovXG4gIHByaXZhdGUga2V5TWFwcGluZyQ/OiBPYnNlcnZhYmxlPFJlY29yZDxzdHJpbmcsIGFueSB8IHVuZGVmaW5lZD4+O1xuXG4gIC8qKlxuICAgKiBfc2hvd0tleXMkIGV4cG9zZWQgYXMgYW4gT2JzZXJ2YWJsZVxuICAgKi9cbiAgcHVibGljIHNob3dLZXlzJCA9IHRoaXMuX3Nob3dLZXlzJC5hc09ic2VydmFibGUoKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHRyYW5zbGF0ZVNlcnZpY2U6IFRyYW5zbGF0ZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBsb2dnZXI6IExvZ2dlclNlcnZpY2UsXG4gICAgQEluamVjdChMT0NBTElaQVRJT05fQ09ORklHVVJBVElPTl9UT0tFTikgcHJpdmF0ZSBjb25maWd1cmF0aW9uOiBMb2NhbGl6YXRpb25Db25maWd1cmF0aW9uLFxuICAgIEBPcHRpb25hbCgpIHByaXZhdGUgc3RvcmU/OiBTdG9yZTxMb2NhbGl6YXRpb25PdmVycmlkZVN0b3JlPikge1xuICAgIHRoaXMuY29uZmlndXJlKCk7XG4gICAgaWYgKHRoaXMuc3RvcmUpIHtcbiAgICAgIHRoaXMua2V5TWFwcGluZyQgPSB0aGlzLnN0b3JlLnBpcGUoXG4gICAgICAgIHNlbGVjdChzZWxlY3RMb2NhbGl6YXRpb25PdmVycmlkZSlcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFRoaXMgd2lsbCBoYW5kbGUgdGhlIGZhbGxiYWNrIGxhbmd1YWdlIGhpZXJhcmNoeSB0byBmaW5kIG91dCBmYWxsYmFjayBsYW5ndWFnZS5cbiAgICogc3VwcG9ydGVkTG9jYWxlcyBsYW5ndWFnZSBoYXMgaGlnaGVzdCBwcmlvcml0eSwgbmV4dCBwcmlvcml0eSBnb2VzIHRvIGZhbGxiYWNrTG9jYWxlc01hcCBhbmQgZGVmYXVsdCB3b3VsZCBiZVxuICAgKiBmYWxsYmFja0xhbmd1YWdlLlxuICAgKlxuICAgKiBAcGFyYW0gbGFuZ3VhZ2UgU2VsZWN0ZWQgbGFuZ3VhZ2UuXG4gICAqIEByZXR1cm5zIHNlbGVjdGVkIGxhbmd1YWdlIGlmIHN1cHBvcnRlZCwgZmFsbGJhY2sgbGFuZ3VhZ2Ugb3RoZXJ3aXNlLlxuICAgKi9cbiAgcHJpdmF0ZSBjaGVja0ZhbGxiYWNrTG9jYWxlc01hcDxUIGV4dGVuZHMgc3RyaW5nIHwgdW5kZWZpbmVkPihsYW5ndWFnZTogVCkge1xuICAgIGlmIChsYW5ndWFnZSAmJiB0aGlzLmNvbmZpZ3VyYXRpb24uc3VwcG9ydGVkTG9jYWxlcy5pbmRleE9mKGxhbmd1YWdlKSA9PT0gLTEpIHtcbiAgICAgIGNvbnN0IGNsb3Nlc3RTdXBwb3J0ZWRMYW5ndWFnZUNvZGUgPSB0aGlzLmdldEZpcnN0Q2xvc2VzdFN1cHBvcnRlZExhbmd1YWdlQ29kZShsYW5ndWFnZSk7XG4gICAgICBjb25zdCBmYWxsYmFja0Zvckxhbmd1YWdlID0gdGhpcy5nZXRGYWxsYmFja01hcExhbmdDb2RlKGxhbmd1YWdlKTtcbiAgICAgIGNvbnN0IGZhbGxiYWNrU3RyYXRlZ3lEZWJ1ZyA9IGZhbGxiYWNrRm9yTGFuZ3VhZ2UgJiYgJyBhc3NvY2lhdGVkIGZhbGxiYWNrIGxhbmd1YWdlICcgfHxcbiAgICAgICAgY2xvc2VzdFN1cHBvcnRlZExhbmd1YWdlQ29kZSAmJiAnIGNsb3Nlc3Qgc3VwcG9ydGVkIGxhbmd1YWdlICcgfHxcbiAgICAgICAgdGhpcy5jb25maWd1cmF0aW9uLmZhbGxiYWNrTGFuZ3VhZ2UgJiYgJyBjb25maWd1cmVkIGRlZmF1bHQgbGFuZ3VhZ2UgJztcbiAgICAgIGNvbnN0IGZhbGxiYWNrTGFuZyA9IGZhbGxiYWNrRm9yTGFuZ3VhZ2UgfHwgY2xvc2VzdFN1cHBvcnRlZExhbmd1YWdlQ29kZSB8fCB0aGlzLmNvbmZpZ3VyYXRpb24uZmFsbGJhY2tMYW5ndWFnZSB8fCBsYW5ndWFnZTtcbiAgICAgIGlmIChsYW5ndWFnZSAhPT0gZmFsbGJhY2tMYW5nKSB7XG4gICAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKGBOb24gc3VwcG9ydGVkIGxhbmd1YWdlcyAke2xhbmd1YWdlfSB3aWxsIGZhbGxiYWNrIHRvICR7ZmFsbGJhY2tTdHJhdGVneURlYnVnfSAke2ZhbGxiYWNrTGFuZ31gKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBmYWxsYmFja0xhbmc7XG4gICAgfSBlbHNlIGlmICghbGFuZ3VhZ2UpIHtcbiAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKCdMYW5ndWFnZSBpcyBub3QgZGVmaW5lZCcpO1xuICAgIH1cbiAgICByZXR1cm4gbGFuZ3VhZ2U7XG4gIH1cblxuICAvKipcbiAgICogVGhpcyBmdW5jdGlvbiBjaGVja3MgaWYgZmFsbGJhY2sgbGFuZ3VhZ2UgY2FuIGJlIHByb3ZpZGVkIGZyb20gZmFsbGJhY2tMb2NhbGVzTWFwLlxuICAgKiBzdXBwb3J0ZWRMb2NhbGVzOiBbJ2VuLUdCJywgJ2VuLVVTJywgJ2ZyLUZSJ10sIGZhbGxiYWNrTG9jYWxlc01hcDogeydlbi1DQSc6ICdlbi1VUycsICdkZSc6ICdmci1GUid9XG4gICAqIHRyYW5zbGF0ZSB0byBlbi1DQSAtPiBmYWxsYmFjayB0byBlbi1VUywgdHJhbnNsYXRlIHRvIGRlLURFIC0+IGZhbGxiYWNrIHRvIGZyLUZSXG4gICAqIHRyYW5zbGF0ZSB0byBlbi1OWiAtPiBmYWxsYmFjayB0byBlbi1HQlxuICAgKlxuICAgKiBAcGFyYW0gbGFuZ3VhZ2UgU2VsZWN0ZWQgbGFuZ3VhZ2UuXG4gICAqIEByZXR1cm5zIEZhbGxiYWNrIGxhbmd1YWdlIGlmIGF2YWlsYWJsZSwgdW5kZWZpbmVkIG90aGVyd2lzZS5cbiAgICovXG4gIHByaXZhdGUgZ2V0RmFsbGJhY2tNYXBMYW5nQ29kZShsYW5ndWFnZTogc3RyaW5nKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICBjb25zdCBmYWxsYmFja0xvY2FsZXNNYXAgPSB0aGlzLmNvbmZpZ3VyYXRpb24uZmFsbGJhY2tMb2NhbGVzTWFwO1xuICAgIGNvbnN0IFtsb2NhbGVdID0gbGFuZ3VhZ2Uuc3BsaXQodGhpcy5sb2NhbGVTcGxpdElkZW50aWZpZXIpO1xuXG4gICAgcmV0dXJuIGZhbGxiYWNrTG9jYWxlc01hcCAmJiAoZmFsbGJhY2tMb2NhbGVzTWFwW2xhbmd1YWdlXSB8fCBmYWxsYmFja0xvY2FsZXNNYXBbbG9jYWxlXSk7XG5cbiAgfVxuXG4gIC8qKlxuICAgKiBUaGlzIGZ1bmN0aW9uIGNoZWNrcyBpZiBjbG9zZXN0IHN1cHBvcnRlZCBsYW5ndWFnZSBhdmFpbGFibGUgaW5jYXNlIG9mIHNlbGVjdGVkIGxhbmd1YWdlIGlzIG5vdFxuICAgKiBzdXBwb3J0ZWQgbGFuZ3VhZ2UuXG4gICAqIHN1cHBvcnRlZExvY2FsZXM6IFsnZW4tR0InLCAnZW4tVVMnLCAnZnItRlInXVxuICAgKiB0cmFuc2xhdGUgdG8gZW4tQ0EgLT4gZmFsbGJhY2sgdG8gZW4tR0JcbiAgICpcbiAgICogQHBhcmFtIGxhbmd1YWdlIFNlbGVjdGVkIGxhbmd1YWdlLlxuICAgKiBAcmV0dXJucyBDbG9zZXN0IHN1cHBvcnRlZCBsYW5ndWFnZSBpZiBhdmFpbGFibGUsIHVuZGVmaW5lZCBvdGhlcndpc2UuXG4gICAqL1xuICBwcml2YXRlIGdldEZpcnN0Q2xvc2VzdFN1cHBvcnRlZExhbmd1YWdlQ29kZShsYW5ndWFnZTogc3RyaW5nKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcblxuICAgIGNvbnN0IFtsb2NhbGVdID0gbGFuZ3VhZ2Uuc3BsaXQodGhpcy5sb2NhbGVTcGxpdElkZW50aWZpZXIpO1xuICAgIGNvbnN0IGZpcnN0Q2xvc2VzdFJlZ3ggPSBuZXcgUmVnRXhwKGBeJHtsb2NhbGV9JHt0aGlzLmxvY2FsZVNwbGl0SWRlbnRpZmllcn0/YCwgJ2knKTtcblxuICAgIHJldHVybiB0aGlzLmNvbmZpZ3VyYXRpb24uc3VwcG9ydGVkTG9jYWxlcy5maW5kKChzdXBwb3J0ZWRMYW5nKSA9PiBmaXJzdENsb3Nlc3RSZWd4LnRlc3Qoc3VwcG9ydGVkTGFuZykpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgYSBzdHJlYW0gb2YgdHJhbnNsYXRlZCB2YWx1ZXMgb2YgYSBrZXkgd2hpY2ggdXBkYXRlcyB3aGVuZXZlciB0aGUgbGFuZ3VhZ2UgY2hhbmdlcy5cbiAgICpcbiAgICogQHBhcmFtIHRyYW5zbGF0aW9uS2V5IEtleSB0byB0cmFuc2xhdGVcbiAgICogQHBhcmFtIGludGVycG9sYXRlUGFyYW1zIE9iamVjdCB0byB1c2UgaW4gdHJhbnNsYXRpb24gYmluZGluZ1xuICAgKiBAcmV0dXJucyBBIHN0cmVhbSBvZiB0aGUgdHJhbnNsYXRlZCBrZXlcbiAgICovXG4gIHByaXZhdGUgZ2V0VHJhbnNsYXRpb25TdHJlYW0odHJhbnNsYXRpb25LZXk6IHN0cmluZywgaW50ZXJwb2xhdGVQYXJhbXM/OiBvYmplY3QpIHtcbiAgICBjb25zdCB0cmFuc2xhdGlvbiQgPSB0aGlzLnRyYW5zbGF0ZVNlcnZpY2Uuc3RyZWFtKHRyYW5zbGF0aW9uS2V5LCBpbnRlcnBvbGF0ZVBhcmFtcykucGlwZShcbiAgICAgIG1hcCgodmFsdWU6IHN0cmluZykgPT4gdGhpcy5jb25maWd1cmF0aW9uLmRlYnVnTW9kZSA/IGAke3RyYW5zbGF0aW9uS2V5fSAtICR7dmFsdWV9YCA6IHZhbHVlKVxuICAgICk7XG5cbiAgICBpZiAoIXRoaXMuY29uZmlndXJhdGlvbi5lbmFibGVUcmFuc2xhdGlvbkRlYWN0aXZhdGlvbikge1xuICAgICAgcmV0dXJuIHRyYW5zbGF0aW9uJDtcbiAgICB9XG5cbiAgICByZXR1cm4gY29tYmluZUxhdGVzdChbXG4gICAgICB0cmFuc2xhdGlvbiQsXG4gICAgICB0aGlzLnNob3dLZXlzJFxuICAgIF0pLnBpcGUoXG4gICAgICBtYXAoKFt2YWx1ZSwgc2hvd0tleXNdKSA9PiBzaG93S2V5cyA/IHRyYW5zbGF0aW9uS2V5IDogdmFsdWUpXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDb25maWd1cmVzIFRyYW5zbGF0ZVNlcnZpY2UgYW5kIHJlZ2lzdGVycyBsb2NhbGVzLiBUaGlzIG1ldGhvZCBpcyBjYWxsZWQgZnJvbSB0aGUgYXBwbGljYXRpb24gbGV2ZWwuXG4gICAqL1xuICBwdWJsaWMgY29uZmlndXJlKCkge1xuICAgIGNvbnN0IGxhbmd1YWdlID0gdGhpcy5jaGVja0ZhbGxiYWNrTG9jYWxlc01hcCh0aGlzLmNvbmZpZ3VyYXRpb24ubGFuZ3VhZ2UgfHwgdGhpcy5jb25maWd1cmF0aW9uLmZhbGxiYWNrTGFuZ3VhZ2UpO1xuICAgIHRoaXMudHJhbnNsYXRlU2VydmljZS5hZGRMYW5ncyh0aGlzLmNvbmZpZ3VyYXRpb24uc3VwcG9ydGVkTG9jYWxlcyk7XG4gICAgdGhpcy50cmFuc2xhdGVTZXJ2aWNlLnNldERlZmF1bHRMYW5nKGxhbmd1YWdlKTtcbiAgICB0aGlzLnVzZUxhbmd1YWdlKGxhbmd1YWdlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBXcmFwcGVyIHRvIGNhbGwgdGhlIG5neC10cmFuc2xhdGUgc2VydmljZSBUcmFuc2xhdGVTZXJ2aWNlIG1ldGhvZCBnZXRMYW5ncygpLlxuICAgKi9cbiAgcHVibGljIGdldExhbmd1YWdlcygpIHtcbiAgICByZXR1cm4gdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmdldExhbmdzKCk7XG4gIH1cblxuICAvKipcbiAgICogV3JhcHBlciB0byBjYWxsIHRoZSBuZ3gtdHJhbnNsYXRlIHNlcnZpY2UgVHJhbnNsYXRlU2VydmljZSBtZXRob2QgdXNlKGxhbmd1YWdlKS5cbiAgICpcbiAgICogQHBhcmFtIGxhbmd1YWdlXG4gICAqL1xuICBwdWJsaWMgdXNlTGFuZ3VhZ2UobGFuZ3VhZ2U6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XG5cbiAgICBsYW5ndWFnZSA9IHRoaXMuY2hlY2tGYWxsYmFja0xvY2FsZXNNYXAobGFuZ3VhZ2UpO1xuICAgIHJldHVybiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UudXNlKGxhbmd1YWdlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBXcmFwcGVyIHRvIGdldCB0aGUgbmd4LXRyYW5zbGF0ZSBzZXJ2aWNlIFRyYW5zbGF0ZVNlcnZpY2UgY3VycmVudExhbmcuXG4gICAqL1xuICBwdWJsaWMgZ2V0Q3VycmVudExhbmd1YWdlKCkge1xuICAgIHJldHVybiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuY3VycmVudExhbmc7XG4gIH1cblxuICAvKipcbiAgICogR2V0IHRoZSBpbnN0YW5jZSBvZiB0aGUgbmd4LXRyYW5zbGF0ZSBUcmFuc2xhdGVTZXJ2aWNlIHVzZWQgYnkgTG9jYWxpemF0aW9uU2VydmljZS5cbiAgICovXG4gIHB1YmxpYyBnZXRUcmFuc2xhdGVTZXJ2aWNlKCkge1xuICAgIHJldHVybiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2U7XG4gIH1cblxuICAvKipcbiAgICogVG9nZ2xlIHRoZSBTaG93S2V5cyBtb2RlIGJldHdlZW4gYWN0aXZlIGFuZCBpbmFjdGl2ZS5cbiAgICpcbiAgICogQHBhcmFtIHZhbHVlIGlmIHNwZWNpZmllZCwgc2V0IHRoZSBTaG93S2V5cyBtb2RlIHRvIHZhbHVlLiBJZiBub3Qgc3BlY2lmaWVkLCB0b2dnbGUgdGhlIFNob3dLZXlzIG1vZGUuXG4gICAqL1xuICBwdWJsaWMgdG9nZ2xlU2hvd0tleXModmFsdWU/OiBib29sZWFuKSB7XG4gICAgaWYgKCF0aGlzLmNvbmZpZ3VyYXRpb24uZW5hYmxlVHJhbnNsYXRpb25EZWFjdGl2YXRpb24pIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignVHJhbnNsYXRpb24gZGVhY3RpdmF0aW9uIGlzIG5vdCBlbmFibGVkLiBQbGVhc2Ugc2V0IHRoZSBMb2NhbGl6YXRpb25Db25maWd1cmF0aW9uIHByb3BlcnR5IFwiZW5hYmxlVHJhbnNsYXRpb25EZWFjdGl2YXRpb25cIiBhY2NvcmRpbmdseS4nKTtcbiAgICB9XG4gICAgY29uc3QgbmV3VmFsdWUgPSB2YWx1ZSAhPT0gdW5kZWZpbmVkID8gdmFsdWUgOiAhdGhpcy5zaG93S2V5cztcbiAgICB0aGlzLl9zaG93S2V5cyQubmV4dChuZXdWYWx1ZSk7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJuIHRoZSBjdXJyZW50IHZhbHVlIG9mIGRlYnVnIHNob3cvaGlkZSB0cmFuc2xhdGlvbiBrZXlzLlxuICAgKi9cbiAgcHVibGljIGdldCBzaG93S2V5cygpIHtcbiAgICByZXR1cm4gdGhpcy5fc2hvd0tleXMkLnZhbHVlO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBhbiBvYnNlcnZhYmxlIG9mIHRyYW5zbGF0aW9uIGtleSBhZnRlciBnbG9iYWwgbWFwcGluZ1xuICAgKlxuICAgKiBAcGFyYW0gcmVxdWVzdGVkS2V5IE9yaWdpbmFsIHRyYW5zbGF0aW9uIGtleVxuICAgKi9cbiAgcHVibGljIGdldEtleShyZXF1ZXN0ZWRLZXk6IHN0cmluZykge1xuICAgIGlmICh0aGlzLmtleU1hcHBpbmckKSB7XG4gICAgICByZXR1cm4gdGhpcy5rZXlNYXBwaW5nJC5waXBlKFxuICAgICAgICBtYXAoKGtleU1hcHBpbmcpID0+IGtleU1hcHBpbmcgJiYga2V5TWFwcGluZ1tyZXF1ZXN0ZWRLZXldIHx8IHJlcXVlc3RlZEtleSksXG4gICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKClcbiAgICAgICk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBvZihyZXF1ZXN0ZWRLZXkpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIGEgc3RyZWFtIG9mIHRyYW5zbGF0ZWQgdmFsdWVzIG9mIGEga2V5IHdoaWNoIHVwZGF0ZXMgd2hlbmV2ZXIgdGhlIGxhbmd1YWdlIGNoYW5nZXMuXG4gICAqXG4gICAqIEBwYXJhbSBrZXkgS2V5IHRvIHRyYW5zbGF0ZVxuICAgKiBAcGFyYW0gaW50ZXJwb2xhdGVQYXJhbXMgT2JqZWN0IHRvIHVzZSBpbiB0cmFuc2xhdGlvbiBiaW5kaW5nXG4gICAqIEByZXR1cm5zIEEgc3RyZWFtIG9mIHRoZSB0cmFuc2xhdGVkIGtleVxuICAgKi9cbiAgcHVibGljIHRyYW5zbGF0ZShrZXk6IHN0cmluZywgaW50ZXJwb2xhdGVQYXJhbXM/OiBvYmplY3QpIHtcbiAgICByZXR1cm4gdGhpcy5nZXRLZXkoa2V5KS5waXBlKFxuICAgICAgc3dpdGNoTWFwKCh0cmFuc2xhdGlvbktleSkgPT4gdGhpcy5nZXRUcmFuc2xhdGlvblN0cmVhbSh0cmFuc2xhdGlvbktleSwgaW50ZXJwb2xhdGVQYXJhbXMpKSxcbiAgICAgIHNoYXJlUmVwbGF5KDEpXG4gICAgKTtcbiAgfVxufVxuIl19
|
|
190
|
+
}] }] });
|
|
191
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWxpemF0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdG9vbHMvbG9jYWxpemF0aW9uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsaURBQWlEO0FBQ2pELE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM3RCxPQUFPLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUM1QyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFjLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN0RSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsR0FBRyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVuRixPQUFPLEVBQTZCLDBCQUEwQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDeEYsT0FBTyxFQUFFLGdDQUFnQyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7Ozs7O0FBRXhFOzs7O0dBSUc7QUFFSCxNQUFNLE9BQU8sbUJBQW1CO0lBb0I5QixZQUNtQixnQkFBa0MsRUFDbEMsTUFBcUIsRUFDcUIsYUFBd0MsRUFDdEUsS0FBd0M7UUFIcEQscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNsQyxXQUFNLEdBQU4sTUFBTSxDQUFlO1FBQ3FCLGtCQUFhLEdBQWIsYUFBYSxDQUEyQjtRQUN0RSxVQUFLLEdBQUwsS0FBSyxDQUFtQztRQXRCdEQsMEJBQXFCLEdBQVcsR0FBRyxDQUFDO1FBRXJEOztXQUVHO1FBQ0gsZ0VBQWdFO1FBQy9DLGVBQVUsR0FBRyxJQUFJLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQU96RDs7V0FFRztR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RSxpQkFBaUIsQ0FBQyxDQUFDLEVBQzNGLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FDZixDQUFDO0lBQ0osQ0FBQztpSUF2TVUsbUJBQW1CLCtFQXVCcEIsZ0NBQWdDO3FJQXZCL0IsbUJBQW1COzsyRkFBbkIsbUJBQW1CO2tCQUQvQixVQUFVOzswQkF3Qk4sTUFBTTsyQkFBQyxnQ0FBZ0M7OzBCQUN2QyxRQUFRIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgQHR5cGVzY3JpcHQtZXNsaW50L2Jhbi10eXBlcyAqL1xuaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlLCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgc2VsZWN0LCBTdG9yZSB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7IExvZ2dlclNlcnZpY2UgfSBmcm9tICdAbzNyL2xvZ2dlcic7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGNvbWJpbmVMYXRlc3QsIE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgbWFwLCBzaGFyZVJlcGxheSwgc3dpdGNoTWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgTG9jYWxpemF0aW9uQ29uZmlndXJhdGlvbiB9IGZyb20gJy4uL2NvcmUvbG9jYWxpemF0aW9uLmNvbmZpZ3VyYXRpb24nO1xuaW1wb3J0IHsgTG9jYWxpemF0aW9uT3ZlcnJpZGVTdG9yZSwgc2VsZWN0TG9jYWxpemF0aW9uT3ZlcnJpZGUgfSBmcm9tICcuLi9zdG9yZXMvaW5kZXgnO1xuaW1wb3J0IHsgTE9DQUxJWkFUSU9OX0NPTkZJR1VSQVRJT05fVE9LRU4gfSBmcm9tICcuL2xvY2FsaXphdGlvbi50b2tlbic7XG5cbi8qKlxuICogU2VydmljZSB3aGljaCBpcyB3cmFwcGluZyB0aGUgY29uZmlndXJhdGlvbiBsb2dpYyBvZiBUcmFuc2xhdGVTZXJ2aWNlIGZyb20gbmd4LXRyYW5zbGF0ZVxuICogQW55IGFwcGxpY2F0aW9uIHdpbGxpbmcgdG8gdXNlIGxvY2FsaXphdGlvbiBqdXN0IG5lZWRzIHRvIGluamVjdCBMb2NhbGl6YXRpb25TZXJ2aWNlXG4gKiBpbiB0aGUgcm9vdCBjb21wb25lbnQgYW5kIGNhbGwgaXRzIGNvbmZpZ3VyZSgpIG1ldGhvZC5cbiAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIExvY2FsaXphdGlvblNlcnZpY2Uge1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgbG9jYWxlU3BsaXRJZGVudGlmaWVyOiBzdHJpbmcgPSAnLSc7XG5cbiAgLyoqXG4gICAqIEludGVybmFsIHN1YmplY3QgdGhhdCB3ZSB1c2UgdG8gdHJhY2sgY2hhbmdlcyBiZXR3ZWVuIGtleXMgb25seSBhbmQgdHJhbnNsYXRpb24gbW9kZVxuICAgKi9cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICBwcml2YXRlIHJlYWRvbmx5IF9zaG93S2V5cyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0KGZhbHNlKTtcblxuICAvKipcbiAgICogTWFwIG9mIGxvY2FsaXphdGlvbiBrZXlzIHRvIHJlcGxhY2UgYSBrZXkgdG8gYW5vdGhlclxuICAgKi9cbiAgcHJpdmF0ZSByZWFkb25seSBrZXlNYXBwaW5nJD86IE9ic2VydmFibGU8UmVjb3JkPHN0cmluZywgYW55Pj47XG5cbiAgLyoqXG4gICAqIF9zaG93S2V5cyQgZXhwb3NlZCBhcyBhbiBPYnNlcnZhYmxlXG4gICAqL1xuICBwdWJsaWMgc2hvd0tleXMkID0gdGhpcy5fc2hvd0tleXMkLmFzT2JzZXJ2YWJsZSgpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgdHJhbnNsYXRlU2VydmljZTogVHJhbnNsYXRlU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGxvZ2dlcjogTG9nZ2VyU2VydmljZSxcbiAgICBASW5qZWN0KExPQ0FMSVpBVElPTl9DT05GSUdVUkFUSU9OX1RPS0VOKSBwcml2YXRlIHJlYWRvbmx5IGNvbmZpZ3VyYXRpb246IExvY2FsaXphdGlvbkNvbmZpZ3VyYXRpb24sXG4gICAgQE9wdGlvbmFsKCkgcHJpdmF0ZSByZWFkb25seSBzdG9yZT86IFN0b3JlPExvY2FsaXphdGlvbk92ZXJyaWRlU3RvcmU+KSB7XG4gICAgdGhpcy5jb25maWd1cmUoKTtcbiAgICBpZiAodGhpcy5zdG9yZSkge1xuICAgICAgdGhpcy5rZXlNYXBwaW5nJCA9IHRoaXMuc3RvcmUucGlwZShcbiAgICAgICAgc2VsZWN0KHNlbGVjdExvY2FsaXphdGlvbk92ZXJyaWRlKVxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogVGhpcyB3aWxsIGhhbmRsZSB0aGUgZmFsbGJhY2sgbGFuZ3VhZ2UgaGllcmFyY2h5IHRvIGZpbmQgb3V0IGZhbGxiYWNrIGxhbmd1YWdlLlxuICAgKiBzdXBwb3J0ZWRMb2NhbGVzIGxhbmd1YWdlIGhhcyBoaWdoZXN0IHByaW9yaXR5LCBuZXh0IHByaW9yaXR5IGdvZXMgdG8gZmFsbGJhY2tMb2NhbGVzTWFwIGFuZCBkZWZhdWx0IHdvdWxkIGJlXG4gICAqIGZhbGxiYWNrTGFuZ3VhZ2UuXG4gICAqIEBwYXJhbSBsYW5ndWFnZSBTZWxlY3RlZCBsYW5ndWFnZS5cbiAgICogQHJldHVybnMgc2VsZWN0ZWQgbGFuZ3VhZ2UgaWYgc3VwcG9ydGVkLCBmYWxsYmFjayBsYW5ndWFnZSBvdGhlcndpc2UuXG4gICAqL1xuICBwcml2YXRlIGNoZWNrRmFsbGJhY2tMb2NhbGVzTWFwPFQgZXh0ZW5kcyBzdHJpbmcgfCB1bmRlZmluZWQ+KGxhbmd1YWdlOiBUKSB7XG4gICAgaWYgKGxhbmd1YWdlICYmIHRoaXMuY29uZmlndXJhdGlvbi5zdXBwb3J0ZWRMb2NhbGVzLmluZGV4T2YobGFuZ3VhZ2UpID09PSAtMSkge1xuICAgICAgY29uc3QgY2xvc2VzdFN1cHBvcnRlZExhbmd1YWdlQ29kZSA9IHRoaXMuZ2V0Rmlyc3RDbG9zZXN0U3VwcG9ydGVkTGFuZ3VhZ2VDb2RlKGxhbmd1YWdlKTtcbiAgICAgIGNvbnN0IGZhbGxiYWNrRm9yTGFuZ3VhZ2UgPSB0aGlzLmdldEZhbGxiYWNrTWFwTGFuZ0NvZGUobGFuZ3VhZ2UpO1xuICAgICAgY29uc3QgZmFsbGJhY2tTdHJhdGVneURlYnVnID0gZmFsbGJhY2tGb3JMYW5ndWFnZSAmJiAnIGFzc29jaWF0ZWQgZmFsbGJhY2sgbGFuZ3VhZ2UgJyB8fFxuICAgICAgICBjbG9zZXN0U3VwcG9ydGVkTGFuZ3VhZ2VDb2RlICYmICcgY2xvc2VzdCBzdXBwb3J0ZWQgbGFuZ3VhZ2UgJyB8fFxuICAgICAgICB0aGlzLmNvbmZpZ3VyYXRpb24uZmFsbGJhY2tMYW5ndWFnZSAmJiAnIGNvbmZpZ3VyZWQgZGVmYXVsdCBsYW5ndWFnZSAnO1xuICAgICAgY29uc3QgZmFsbGJhY2tMYW5nID0gZmFsbGJhY2tGb3JMYW5ndWFnZSB8fCBjbG9zZXN0U3VwcG9ydGVkTGFuZ3VhZ2VDb2RlIHx8IHRoaXMuY29uZmlndXJhdGlvbi5mYWxsYmFja0xhbmd1YWdlIHx8IGxhbmd1YWdlO1xuICAgICAgaWYgKGxhbmd1YWdlICE9PSBmYWxsYmFja0xhbmcpIHtcbiAgICAgICAgdGhpcy5sb2dnZXIuZGVidWcoYE5vbiBzdXBwb3J0ZWQgbGFuZ3VhZ2VzICR7bGFuZ3VhZ2V9IHdpbGwgZmFsbGJhY2sgdG8gJHtmYWxsYmFja1N0cmF0ZWd5RGVidWd9ICR7ZmFsbGJhY2tMYW5nfWApO1xuICAgICAgfVxuICAgICAgcmV0dXJuIGZhbGxiYWNrTGFuZztcbiAgICB9IGVsc2UgaWYgKCFsYW5ndWFnZSkge1xuICAgICAgdGhpcy5sb2dnZXIuZGVidWcoJ0xhbmd1YWdlIGlzIG5vdCBkZWZpbmVkJyk7XG4gICAgfVxuICAgIHJldHVybiBsYW5ndWFnZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGlzIGZ1bmN0aW9uIGNoZWNrcyBpZiBmYWxsYmFjayBsYW5ndWFnZSBjYW4gYmUgcHJvdmlkZWQgZnJvbSBmYWxsYmFja0xvY2FsZXNNYXAuXG4gICAqIHN1cHBvcnRlZExvY2FsZXM6IFsnZW4tR0InLCAnZW4tVVMnLCAnZnItRlInXSwgZmFsbGJhY2tMb2NhbGVzTWFwOiB7J2VuLUNBJzogJ2VuLVVTJywgJ2RlJzogJ2ZyLUZSJ31cbiAgICogdHJhbnNsYXRlIHRvIGVuLUNBIC0+IGZhbGxiYWNrIHRvIGVuLVVTLCB0cmFuc2xhdGUgdG8gZGUtREUgLT4gZmFsbGJhY2sgdG8gZnItRlJcbiAgICogdHJhbnNsYXRlIHRvIGVuLU5aIC0+IGZhbGxiYWNrIHRvIGVuLUdCXG4gICAqIEBwYXJhbSBsYW5ndWFnZSBTZWxlY3RlZCBsYW5ndWFnZS5cbiAgICogQHJldHVybnMgRmFsbGJhY2sgbGFuZ3VhZ2UgaWYgYXZhaWxhYmxlLCB1bmRlZmluZWQgb3RoZXJ3aXNlLlxuICAgKi9cbiAgcHJpdmF0ZSBnZXRGYWxsYmFja01hcExhbmdDb2RlKGxhbmd1YWdlOiBzdHJpbmcpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgIGNvbnN0IGZhbGxiYWNrTG9jYWxlc01hcCA9IHRoaXMuY29uZmlndXJhdGlvbi5mYWxsYmFja0xvY2FsZXNNYXA7XG4gICAgY29uc3QgW2xvY2FsZV0gPSBsYW5ndWFnZS5zcGxpdCh0aGlzLmxvY2FsZVNwbGl0SWRlbnRpZmllcik7XG5cbiAgICByZXR1cm4gZmFsbGJhY2tMb2NhbGVzTWFwICYmIChmYWxsYmFja0xvY2FsZXNNYXBbbGFuZ3VhZ2VdIHx8IGZhbGxiYWNrTG9jYWxlc01hcFtsb2NhbGVdKTtcblxuICB9XG5cbiAgLyoqXG4gICAqIFRoaXMgZnVuY3Rpb24gY2hlY2tzIGlmIGNsb3Nlc3Qgc3VwcG9ydGVkIGxhbmd1YWdlIGF2YWlsYWJsZSBpbmNhc2Ugb2Ygc2VsZWN0ZWQgbGFuZ3VhZ2UgaXMgbm90XG4gICAqIHN1cHBvcnRlZCBsYW5ndWFnZS5cbiAgICogc3VwcG9ydGVkTG9jYWxlczogWydlbi1HQicsICdlbi1VUycsICdmci1GUiddXG4gICAqIHRyYW5zbGF0ZSB0byBlbi1DQSAtPiBmYWxsYmFjayB0byBlbi1HQlxuICAgKiBAcGFyYW0gbGFuZ3VhZ2UgU2VsZWN0ZWQgbGFuZ3VhZ2UuXG4gICAqIEByZXR1cm5zIENsb3Nlc3Qgc3VwcG9ydGVkIGxhbmd1YWdlIGlmIGF2YWlsYWJsZSwgdW5kZWZpbmVkIG90aGVyd2lzZS5cbiAgICovXG4gIHByaXZhdGUgZ2V0Rmlyc3RDbG9zZXN0U3VwcG9ydGVkTGFuZ3VhZ2VDb2RlKGxhbmd1YWdlOiBzdHJpbmcpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuXG4gICAgY29uc3QgW2xvY2FsZV0gPSBsYW5ndWFnZS5zcGxpdCh0aGlzLmxvY2FsZVNwbGl0SWRlbnRpZmllcik7XG4gICAgY29uc3QgZmlyc3RDbG9zZXN0UmVneCA9IG5ldyBSZWdFeHAoYF4ke2xvY2FsZX0ke3RoaXMubG9jYWxlU3BsaXRJZGVudGlmaWVyfT9gLCAnaScpO1xuXG4gICAgcmV0dXJuIHRoaXMuY29uZmlndXJhdGlvbi5zdXBwb3J0ZWRMb2NhbGVzLmZpbmQoKHN1cHBvcnRlZExhbmcpID0+IGZpcnN0Q2xvc2VzdFJlZ3gudGVzdChzdXBwb3J0ZWRMYW5nKSk7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyBhIHN0cmVhbSBvZiB0cmFuc2xhdGVkIHZhbHVlcyBvZiBhIGtleSB3aGljaCB1cGRhdGVzIHdoZW5ldmVyIHRoZSBsYW5ndWFnZSBjaGFuZ2VzLlxuICAgKiBAcGFyYW0gdHJhbnNsYXRpb25LZXkgS2V5IHRvIHRyYW5zbGF0ZVxuICAgKiBAcGFyYW0gaW50ZXJwb2xhdGVQYXJhbXMgT2JqZWN0IHRvIHVzZSBpbiB0cmFuc2xhdGlvbiBiaW5kaW5nXG4gICAqIEByZXR1cm5zIEEgc3RyZWFtIG9mIHRoZSB0cmFuc2xhdGVkIGtleVxuICAgKi9cbiAgcHJpdmF0ZSBnZXRUcmFuc2xhdGlvblN0cmVhbSh0cmFuc2xhdGlvbktleTogc3RyaW5nLCBpbnRlcnBvbGF0ZVBhcmFtcz86IG9iamVjdCkge1xuICAgIGNvbnN0IHRyYW5zbGF0aW9uJCA9IHRoaXMudHJhbnNsYXRlU2VydmljZS5zdHJlYW0odHJhbnNsYXRpb25LZXksIGludGVycG9sYXRlUGFyYW1zKS5waXBlKFxuICAgICAgbWFwKCh2YWx1ZTogc3RyaW5nKSA9PiB0aGlzLmNvbmZpZ3VyYXRpb24uZGVidWdNb2RlID8gYCR7dHJhbnNsYXRpb25LZXl9IC0gJHt2YWx1ZX1gIDogdmFsdWUpXG4gICAgKTtcblxuICAgIGlmICghdGhpcy5jb25maWd1cmF0aW9uLmVuYWJsZVRyYW5zbGF0aW9uRGVhY3RpdmF0aW9uKSB7XG4gICAgICByZXR1cm4gdHJhbnNsYXRpb24kO1xuICAgIH1cblxuICAgIHJldHVybiBjb21iaW5lTGF0ZXN0KFtcbiAgICAgIHRyYW5zbGF0aW9uJCxcbiAgICAgIHRoaXMuc2hvd0tleXMkXG4gICAgXSkucGlwZShcbiAgICAgIG1hcCgoW3ZhbHVlLCBzaG93S2V5c10pID0+IHNob3dLZXlzID8gdHJhbnNsYXRpb25LZXkgOiB2YWx1ZSlcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbmZpZ3VyZXMgVHJhbnNsYXRlU2VydmljZSBhbmQgcmVnaXN0ZXJzIGxvY2FsZXMuIFRoaXMgbWV0aG9kIGlzIGNhbGxlZCBmcm9tIHRoZSBhcHBsaWNhdGlvbiBsZXZlbC5cbiAgICovXG4gIHB1YmxpYyBjb25maWd1cmUoKSB7XG4gICAgY29uc3QgbGFuZ3VhZ2UgPSB0aGlzLmNoZWNrRmFsbGJhY2tMb2NhbGVzTWFwKHRoaXMuY29uZmlndXJhdGlvbi5sYW5ndWFnZSB8fCB0aGlzLmNvbmZpZ3VyYXRpb24uZmFsbGJhY2tMYW5ndWFnZSk7XG4gICAgdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmFkZExhbmdzKHRoaXMuY29uZmlndXJhdGlvbi5zdXBwb3J0ZWRMb2NhbGVzKTtcbiAgICB0aGlzLnRyYW5zbGF0ZVNlcnZpY2Uuc2V0RGVmYXVsdExhbmcobGFuZ3VhZ2UpO1xuICAgIHRoaXMudXNlTGFuZ3VhZ2UobGFuZ3VhZ2UpO1xuICB9XG5cbiAgLyoqXG4gICAqIFdyYXBwZXIgdG8gY2FsbCB0aGUgbmd4LXRyYW5zbGF0ZSBzZXJ2aWNlIFRyYW5zbGF0ZVNlcnZpY2UgbWV0aG9kIGdldExhbmdzKCkuXG4gICAqL1xuICBwdWJsaWMgZ2V0TGFuZ3VhZ2VzKCkge1xuICAgIHJldHVybiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuZ2V0TGFuZ3MoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBXcmFwcGVyIHRvIGNhbGwgdGhlIG5neC10cmFuc2xhdGUgc2VydmljZSBUcmFuc2xhdGVTZXJ2aWNlIG1ldGhvZCB1c2UobGFuZ3VhZ2UpLlxuICAgKiBAcGFyYW0gbGFuZ3VhZ2VcbiAgICovXG4gIHB1YmxpYyB1c2VMYW5ndWFnZShsYW5ndWFnZTogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcblxuICAgIGxhbmd1YWdlID0gdGhpcy5jaGVja0ZhbGxiYWNrTG9jYWxlc01hcChsYW5ndWFnZSk7XG4gICAgcmV0dXJuIHRoaXMudHJhbnNsYXRlU2VydmljZS51c2UobGFuZ3VhZ2UpO1xuICB9XG5cbiAgLyoqXG4gICAqIFdyYXBwZXIgdG8gZ2V0IHRoZSBuZ3gtdHJhbnNsYXRlIHNlcnZpY2UgVHJhbnNsYXRlU2VydmljZSBjdXJyZW50TGFuZy5cbiAgICovXG4gIHB1YmxpYyBnZXRDdXJyZW50TGFuZ3VhZ2UoKSB7XG4gICAgcmV0dXJuIHRoaXMudHJhbnNsYXRlU2VydmljZS5jdXJyZW50TGFuZztcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgdGhlIGluc3RhbmNlIG9mIHRoZSBuZ3gtdHJhbnNsYXRlIFRyYW5zbGF0ZVNlcnZpY2UgdXNlZCBieSBMb2NhbGl6YXRpb25TZXJ2aWNlLlxuICAgKi9cbiAgcHVibGljIGdldFRyYW5zbGF0ZVNlcnZpY2UoKSB7XG4gICAgcmV0dXJuIHRoaXMudHJhbnNsYXRlU2VydmljZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUb2dnbGUgdGhlIFNob3dLZXlzIG1vZGUgYmV0d2VlbiBhY3RpdmUgYW5kIGluYWN0aXZlLlxuICAgKiBAcGFyYW0gdmFsdWUgaWYgc3BlY2lmaWVkLCBzZXQgdGhlIFNob3dLZXlzIG1vZGUgdG8gdmFsdWUuIElmIG5vdCBzcGVjaWZpZWQsIHRvZ2dsZSB0aGUgU2hvd0tleXMgbW9kZS5cbiAgICovXG4gIHB1YmxpYyB0b2dnbGVTaG93S2V5cyh2YWx1ZT86IGJvb2xlYW4pIHtcbiAgICBpZiAoIXRoaXMuY29uZmlndXJhdGlvbi5lbmFibGVUcmFuc2xhdGlvbkRlYWN0aXZhdGlvbikge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdUcmFuc2xhdGlvbiBkZWFjdGl2YXRpb24gaXMgbm90IGVuYWJsZWQuIFBsZWFzZSBzZXQgdGhlIExvY2FsaXphdGlvbkNvbmZpZ3VyYXRpb24gcHJvcGVydHkgXCJlbmFibGVUcmFuc2xhdGlvbkRlYWN0aXZhdGlvblwiIGFjY29yZGluZ2x5LicpO1xuICAgIH1cbiAgICBjb25zdCBuZXdWYWx1ZSA9IHZhbHVlICE9PSB1bmRlZmluZWQgPyB2YWx1ZSA6ICF0aGlzLnNob3dLZXlzO1xuICAgIHRoaXMuX3Nob3dLZXlzJC5uZXh0KG5ld1ZhbHVlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm4gdGhlIGN1cnJlbnQgdmFsdWUgb2YgZGVidWcgc2hvdy9oaWRlIHRyYW5zbGF0aW9uIGtleXMuXG4gICAqL1xuICBwdWJsaWMgZ2V0IHNob3dLZXlzKCkge1xuICAgIHJldHVybiB0aGlzLl9zaG93S2V5cyQudmFsdWU7XG4gIH1cblxuICAvKipcbiAgICogR2V0IGFuIG9ic2VydmFibGUgb2YgdHJhbnNsYXRpb24ga2V5IGFmdGVyIGdsb2JhbCBtYXBwaW5nXG4gICAqIEBwYXJhbSByZXF1ZXN0ZWRLZXkgT3JpZ2luYWwgdHJhbnNsYXRpb24ga2V5XG4gICAqL1xuICBwdWJsaWMgZ2V0S2V5KHJlcXVlc3RlZEtleTogc3RyaW5nKSB7XG4gICAgaWYgKHRoaXMua2V5TWFwcGluZyQpIHtcbiAgICAgIHJldHVybiB0aGlzLmtleU1hcHBpbmckLnBpcGUoXG4gICAgICAgIG1hcCgoa2V5TWFwcGluZykgPT4ga2V5TWFwcGluZyAmJiBrZXlNYXBwaW5nW3JlcXVlc3RlZEtleV0gfHwgcmVxdWVzdGVkS2V5KSxcbiAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKVxuICAgICAgKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIG9mKHJlcXVlc3RlZEtleSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgYSBzdHJlYW0gb2YgdHJhbnNsYXRlZCB2YWx1ZXMgb2YgYSBrZXkgd2hpY2ggdXBkYXRlcyB3aGVuZXZlciB0aGUgbGFuZ3VhZ2UgY2hhbmdlcy5cbiAgICogQHBhcmFtIGtleSBLZXkgdG8gdHJhbnNsYXRlXG4gICAqIEBwYXJhbSBpbnRlcnBvbGF0ZVBhcmFtcyBPYmplY3QgdG8gdXNlIGluIHRyYW5zbGF0aW9uIGJpbmRpbmdcbiAgICogQHJldHVybnMgQSBzdHJlYW0gb2YgdGhlIHRyYW5zbGF0ZWQga2V5XG4gICAqL1xuICBwdWJsaWMgdHJhbnNsYXRlKGtleTogc3RyaW5nLCBpbnRlcnBvbGF0ZVBhcmFtcz86IG9iamVjdCkge1xuICAgIHJldHVybiB0aGlzLmdldEtleShrZXkpLnBpcGUoXG4gICAgICBzd2l0Y2hNYXAoKHRyYW5zbGF0aW9uS2V5KSA9PiB0aGlzLmdldFRyYW5zbGF0aW9uU3RyZWFtKHRyYW5zbGF0aW9uS2V5LCBpbnRlcnBvbGF0ZVBhcmFtcykpLFxuICAgICAgc2hhcmVSZXBsYXkoMSlcbiAgICApO1xuICB9XG59XG4iXX0=
|
|
@@ -19,14 +19,14 @@ export class LocalizedCurrencyPipe extends CurrencyPipe {
|
|
|
19
19
|
ngOnDestroy() {
|
|
20
20
|
this.onLangChange.unsubscribe();
|
|
21
21
|
}
|
|
22
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
23
|
-
/** @nocollapse */ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "
|
|
22
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: LocalizedCurrencyPipe, deps: [{ token: i1.LocalizationService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Pipe }); }
|
|
23
|
+
/** @nocollapse */ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.0.8", ngImport: i0, type: LocalizedCurrencyPipe, name: "currency", pure: false }); }
|
|
24
24
|
}
|
|
25
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
25
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: LocalizedCurrencyPipe, decorators: [{
|
|
26
26
|
type: Pipe,
|
|
27
27
|
args: [{
|
|
28
28
|
name: 'currency',
|
|
29
29
|
pure: false
|
|
30
30
|
}]
|
|
31
|
-
}], ctorParameters:
|
|
32
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
31
|
+
}], ctorParameters: () => [{ type: i1.LocalizationService }, { type: i0.ChangeDetectorRef }] });
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWxpemVkLWN1cnJlbmN5LnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdG9vbHMvbG9jYWxpemVkLWN1cnJlbmN5LnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzdDLE9BQU8sRUFBQyxpQkFBaUIsRUFBYSxJQUFJLEVBQWdCLE1BQU0sZUFBZSxDQUFDO0FBRWhGLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLHdCQUF3QixDQUFDOzs7QUFFM0Q7O0dBRUc7QUFLSCxNQUFNLE9BQU8scUJBQXNCLFNBQVEsWUFBWTtJQUdyRCxZQUE2QixtQkFBd0MsRUFBbUIsaUJBQW9DO1FBQzFILEtBQUssQ0FBQyxtQkFBbUIsQ0FBQyxrQkFBa0IsRUFBRSxDQUFDLENBQUM7UUFEckIsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFxQjtRQUFtQixzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBRTFILElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDLG1CQUFtQixFQUFFLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FDN0YsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFlBQVksRUFBRSxDQUN0QyxDQUFDO0lBQ0osQ0FBQztJQVdNLFNBQVMsQ0FDZCxLQUF5QyxFQUFFLFlBQXFCLEVBQUUsT0FBMEIsRUFBRSxVQUFtQixFQUFFLE1BQWU7UUFDbEksT0FBTyxLQUFLLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxZQUFZLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLElBQUksSUFBSSxDQUFDLG1CQUFtQixDQUFDLGtCQUFrQixFQUFFLENBQUMsQ0FBQztJQUM1SCxDQUFDO0lBRU0sV0FBVztRQUNoQixJQUFJLENBQUMsWUFBWSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ2xDLENBQUM7aUlBMUJVLHFCQUFxQjsrSEFBckIscUJBQXFCOzsyRkFBckIscUJBQXFCO2tCQUpqQyxJQUFJO21CQUFDO29CQUNKLElBQUksRUFBRSxVQUFVO29CQUNoQixJQUFJLEVBQUUsS0FBSztpQkFDWiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q3VycmVuY3lQaXBlfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtDaGFuZ2VEZXRlY3RvclJlZiwgT25EZXN0cm95LCBQaXBlLCBQaXBlVHJhbnNmb3JtfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7U3Vic2NyaXB0aW9ufSBmcm9tICdyeGpzJztcbmltcG9ydCB7TG9jYWxpemF0aW9uU2VydmljZX0gZnJvbSAnLi9sb2NhbGl6YXRpb24uc2VydmljZSc7XG5cbi8qKlxuICogTmF0aXZlIGFuZ3VsYXIgQ3VycmVuY3lQaXBlIHRha2luZyB0aGUgY3VycmVudCBsYW5nIGludG8gY29uc2lkZXJhdGlvblxuICovXG5AUGlwZSh7XG4gIG5hbWU6ICdjdXJyZW5jeScsXG4gIHB1cmU6IGZhbHNlXG59KVxuZXhwb3J0IGNsYXNzIExvY2FsaXplZEN1cnJlbmN5UGlwZSBleHRlbmRzIEN1cnJlbmN5UGlwZSBpbXBsZW1lbnRzIE9uRGVzdHJveSwgUGlwZVRyYW5zZm9ybSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgb25MYW5nQ2hhbmdlOiBTdWJzY3JpcHRpb247XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBsb2NhbGl6YXRpb25TZXJ2aWNlOiBMb2NhbGl6YXRpb25TZXJ2aWNlLCBwcml2YXRlIHJlYWRvbmx5IGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZikge1xuICAgIHN1cGVyKGxvY2FsaXphdGlvblNlcnZpY2UuZ2V0Q3VycmVudExhbmd1YWdlKCkpO1xuICAgIHRoaXMub25MYW5nQ2hhbmdlID0gdGhpcy5sb2NhbGl6YXRpb25TZXJ2aWNlLmdldFRyYW5zbGF0ZVNlcnZpY2UoKS5vbkxhbmdDaGFuZ2Uuc3Vic2NyaWJlKCgpID0+XG4gICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAaW5oZXJpdGRvY1xuICAgKi9cbiAgcHVibGljIHRyYW5zZm9ybSh2YWx1ZTogbnVtYmVyIHwgc3RyaW5nLCBjdXJyZW5jeUNvZGU/OiBzdHJpbmcsIGRpc3BsYXk/OiBzdHJpbmcgfCBib29sZWFuLCBkaWdpdHNJbmZvPzogc3RyaW5nLCBsb2NhbGU/OiBzdHJpbmcpOiBzdHJpbmcgfCBudWxsO1xuICBwdWJsaWMgdHJhbnNmb3JtKHZhbHVlOiBudWxsIHwgdW5kZWZpbmVkLCBjdXJyZW5jeUNvZGU/OiBzdHJpbmcsIGRpc3BsYXk/OiBzdHJpbmcgfCBib29sZWFuLCBkaWdpdHNJbmZvPzogc3RyaW5nLCBsb2NhbGU/OiBzdHJpbmcpOiBudWxsO1xuICBwdWJsaWMgdHJhbnNmb3JtKFxuICAgIC8vIEV4cG9zZSBzYW1lIHNpZ25hdHVyZXMgYXMgYW5ndWxhciBDdXJlbmN5UGlwZVxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvdW5pZmllZC1zaWduYXR1cmVzXG4gICAgdmFsdWU6IG51bWJlciB8IHN0cmluZyB8IG51bGwgfCB1bmRlZmluZWQsIGN1cnJlbmN5Q29kZT86IHN0cmluZywgZGlzcGxheT86IHN0cmluZyB8IGJvb2xlYW4sIGRpZ2l0c0luZm8/OiBzdHJpbmcsIGxvY2FsZT86IHN0cmluZyk6IHN0cmluZyB8IG51bGw7XG4gIHB1YmxpYyB0cmFuc2Zvcm0oXG4gICAgdmFsdWU6IG51bWJlciB8IHN0cmluZyB8IG51bGwgfCB1bmRlZmluZWQsIGN1cnJlbmN5Q29kZT86IHN0cmluZywgZGlzcGxheT86IHN0cmluZyB8IGJvb2xlYW4sIGRpZ2l0c0luZm8/OiBzdHJpbmcsIGxvY2FsZT86IHN0cmluZyk6IHN0cmluZyB8IG51bGwge1xuICAgIHJldHVybiBzdXBlci50cmFuc2Zvcm0odmFsdWUsIGN1cnJlbmN5Q29kZSwgZGlzcGxheSwgZGlnaXRzSW5mbywgbG9jYWxlIHx8IHRoaXMubG9jYWxpemF0aW9uU2VydmljZS5nZXRDdXJyZW50TGFuZ3VhZ2UoKSk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5vbkxhbmdDaGFuZ2UudW5zdWJzY3JpYmUoKTtcbiAgfVxufVxuIl19
|
|
@@ -24,14 +24,14 @@ export class LocalizedDatePipe extends DatePipe {
|
|
|
24
24
|
ngOnDestroy() {
|
|
25
25
|
this.onLangChange.unsubscribe();
|
|
26
26
|
}
|
|
27
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
28
|
-
/** @nocollapse */ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "
|
|
27
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: LocalizedDatePipe, deps: [{ token: i1.LocalizationService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Pipe }); }
|
|
28
|
+
/** @nocollapse */ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.0.8", ngImport: i0, type: LocalizedDatePipe, name: "date", pure: false }); }
|
|
29
29
|
}
|
|
30
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
30
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: LocalizedDatePipe, decorators: [{
|
|
31
31
|
type: Pipe,
|
|
32
32
|
args: [{
|
|
33
33
|
name: 'date',
|
|
34
34
|
pure: false
|
|
35
35
|
}]
|
|
36
|
-
}], ctorParameters:
|
|
37
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
36
|
+
}], ctorParameters: () => [{ type: i1.LocalizationService }, { type: i0.ChangeDetectorRef }] });
|
|
37
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWxpemVkLWRhdGUucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90b29scy9sb2NhbGl6ZWQtZGF0ZS5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QyxPQUFPLEVBQUMsaUJBQWlCLEVBQWEsSUFBSSxFQUFnQixNQUFNLGVBQWUsQ0FBQztBQUVoRixPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQzs7O0FBRTNEOztHQUVHO0FBS0gsTUFBTSxPQUFPLGlCQUFrQixTQUFRLFFBQVE7SUFHN0MsWUFBNkIsbUJBQXdDLEVBQW1CLGlCQUFvQztRQUMxSCxLQUFLLENBQUMsbUJBQW1CLENBQUMsa0JBQWtCLEVBQUUsQ0FBQyxDQUFDO1FBRHJCLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFBbUIsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQUUxSCxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxtQkFBbUIsRUFBRSxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQzdGLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxZQUFZLEVBQUUsQ0FDdEMsQ0FBQztJQUNKLENBQUM7SUFXTSxTQUFTLENBQ2QsS0FBZ0QsRUFBRSxNQUFNLEdBQUcsWUFBWSxFQUFFLFFBQWlCLEVBQzFGLE1BQWU7UUFDZixJQUFJLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxRQUFRLEVBQUU7WUFDckMsT0FBTyxNQUFNLENBQUM7U0FDZjthQUFNO1lBQ0wsT0FBTyxLQUFLLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLE1BQU0sSUFBSSxJQUFJLENBQUMsbUJBQW1CLENBQUMsa0JBQWtCLEVBQUUsQ0FBQyxDQUFDO1NBQzFHO0lBQ0gsQ0FBQztJQUVNLFdBQVc7UUFDaEIsSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNsQyxDQUFDO2lJQS9CVSxpQkFBaUI7K0hBQWpCLGlCQUFpQjs7MkZBQWpCLGlCQUFpQjtrQkFKN0IsSUFBSTttQkFBQztvQkFDSixJQUFJLEVBQUUsTUFBTTtvQkFDWixJQUFJLEVBQUUsS0FBSztpQkFDWiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RGF0ZVBpcGV9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge0NoYW5nZURldGVjdG9yUmVmLCBPbkRlc3Ryb3ksIFBpcGUsIFBpcGVUcmFuc2Zvcm19IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtTdWJzY3JpcHRpb259IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtMb2NhbGl6YXRpb25TZXJ2aWNlfSBmcm9tICcuL2xvY2FsaXphdGlvbi5zZXJ2aWNlJztcblxuLyoqXG4gKiBOYXRpdmUgYW5ndWxhciBEYXRlUGlwZSB0YWtpbmcgdGhlIGN1cnJlbnQgbGFuZyBpbnRvIGNvbnNpZGVyYXRpb25cbiAqL1xuQFBpcGUoe1xuICBuYW1lOiAnZGF0ZScsXG4gIHB1cmU6IGZhbHNlXG59KVxuZXhwb3J0IGNsYXNzIExvY2FsaXplZERhdGVQaXBlIGV4dGVuZHMgRGF0ZVBpcGUgaW1wbGVtZW50cyBPbkRlc3Ryb3ksIFBpcGVUcmFuc2Zvcm0ge1xuICBwcml2YXRlIHJlYWRvbmx5IG9uTGFuZ0NoYW5nZTogU3Vic2NyaXB0aW9uO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgbG9jYWxpemF0aW9uU2VydmljZTogTG9jYWxpemF0aW9uU2VydmljZSwgcHJpdmF0ZSByZWFkb25seSBjaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHtcbiAgICBzdXBlcihsb2NhbGl6YXRpb25TZXJ2aWNlLmdldEN1cnJlbnRMYW5ndWFnZSgpKTtcbiAgICB0aGlzLm9uTGFuZ0NoYW5nZSA9IHRoaXMubG9jYWxpemF0aW9uU2VydmljZS5nZXRUcmFuc2xhdGVTZXJ2aWNlKCkub25MYW5nQ2hhbmdlLnN1YnNjcmliZSgoKSA9PlxuICAgICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKVxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogQGluaGVyaXRkb2NcbiAgICovXG4gIHB1YmxpYyB0cmFuc2Zvcm0odmFsdWU6IERhdGUgfCBzdHJpbmcgfCBudW1iZXIsIGZvcm1hdD86IHN0cmluZywgdGltZXpvbmU/OiBzdHJpbmcsIGxvY2FsZT86IHN0cmluZyk6IHN0cmluZ1xuICAgIHwgbnVsbDtcbiAgcHVibGljIHRyYW5zZm9ybSh2YWx1ZTogbnVsbCB8IHVuZGVmaW5lZCwgZm9ybWF0Pzogc3RyaW5nLCB0aW1lem9uZT86IHN0cmluZywgbG9jYWxlPzogc3RyaW5nKTogbnVsbDtcbiAgcHVibGljIHRyYW5zZm9ybShcbiAgICB2YWx1ZTogRGF0ZSB8IHN0cmluZyB8IG51bWJlciB8IG51bGwgfCB1bmRlZmluZWQsIGZvcm1hdD86IHN0cmluZywgdGltZXpvbmU/OiBzdHJpbmcsXG4gICAgbG9jYWxlPzogc3RyaW5nKTogc3RyaW5nIHwgbnVsbDtcbiAgcHVibGljIHRyYW5zZm9ybShcbiAgICB2YWx1ZTogRGF0ZSB8IHN0cmluZyB8IG51bWJlciB8IG51bGwgfCB1bmRlZmluZWQsIGZvcm1hdCA9ICdtZWRpdW1EYXRlJywgdGltZXpvbmU/OiBzdHJpbmcsXG4gICAgbG9jYWxlPzogc3RyaW5nKTogc3RyaW5nIHwgbnVsbCB7XG4gICAgaWYgKHRoaXMubG9jYWxpemF0aW9uU2VydmljZS5zaG93S2V5cykge1xuICAgICAgcmV0dXJuIGZvcm1hdDtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIHN1cGVyLnRyYW5zZm9ybSh2YWx1ZSwgZm9ybWF0LCB0aW1lem9uZSwgbG9jYWxlIHx8IHRoaXMubG9jYWxpemF0aW9uU2VydmljZS5nZXRDdXJyZW50TGFuZ3VhZ2UoKSk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMub25MYW5nQ2hhbmdlLnVuc3Vic2NyaWJlKCk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -19,14 +19,14 @@ export class LocalizedDecimalPipe extends DecimalPipe {
|
|
|
19
19
|
ngOnDestroy() {
|
|
20
20
|
this.onLangChange.unsubscribe();
|
|
21
21
|
}
|
|
22
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
23
|
-
/** @nocollapse */ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "
|
|
22
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: LocalizedDecimalPipe, deps: [{ token: i1.LocalizationService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Pipe }); }
|
|
23
|
+
/** @nocollapse */ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.0.8", ngImport: i0, type: LocalizedDecimalPipe, name: "decimal", pure: false }); }
|
|
24
24
|
}
|
|
25
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
25
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: LocalizedDecimalPipe, decorators: [{
|
|
26
26
|
type: Pipe,
|
|
27
27
|
args: [{
|
|
28
28
|
name: 'decimal',
|
|
29
29
|
pure: false
|
|
30
30
|
}]
|
|
31
|
-
}], ctorParameters:
|
|
32
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
31
|
+
}], ctorParameters: () => [{ type: i1.LocalizationService }, { type: i0.ChangeDetectorRef }] });
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWxpemVkLWRlY2ltYWwucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90b29scy9sb2NhbGl6ZWQtZGVjaW1hbC5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM5QyxPQUFPLEVBQUMsaUJBQWlCLEVBQWEsSUFBSSxFQUFnQixNQUFNLGVBQWUsQ0FBQztBQUVoRixPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQzs7O0FBRTNEOztHQUVHO0FBS0gsTUFBTSxPQUFPLG9CQUFxQixTQUFRLFdBQVc7SUFHbkQsWUFBNkIsbUJBQXdDLEVBQW1CLGlCQUFvQztRQUMxSCxLQUFLLENBQUMsbUJBQW1CLENBQUMsa0JBQWtCLEVBQUUsQ0FBQyxDQUFDO1FBRHJCLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFBbUIsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQUUxSCxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxtQkFBbUIsRUFBRSxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQzdGLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxZQUFZLEVBQUUsQ0FDdEMsQ0FBQztJQUNKLENBQUM7SUFPTSxTQUFTLENBQUMsS0FBeUMsRUFBRSxVQUFtQixFQUFFLE1BQWU7UUFDOUYsT0FBTyxLQUFLLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxVQUFVLEVBQUUsTUFBTSxJQUFJLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxrQkFBa0IsRUFBRSxDQUFDLENBQUM7SUFDckcsQ0FBQztJQUVNLFdBQVc7UUFDaEIsSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNsQyxDQUFDO2lJQXJCVSxvQkFBb0I7K0hBQXBCLG9CQUFvQjs7MkZBQXBCLG9CQUFvQjtrQkFKaEMsSUFBSTttQkFBQztvQkFDSixJQUFJLEVBQUUsU0FBUztvQkFDZixJQUFJLEVBQUUsS0FBSztpQkFDWiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERlY2ltYWxQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7Q2hhbmdlRGV0ZWN0b3JSZWYsIE9uRGVzdHJveSwgUGlwZSwgUGlwZVRyYW5zZm9ybX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1N1YnNjcmlwdGlvbn0gZnJvbSAncnhqcyc7XG5pbXBvcnQge0xvY2FsaXphdGlvblNlcnZpY2V9IGZyb20gJy4vbG9jYWxpemF0aW9uLnNlcnZpY2UnO1xuXG4vKipcbiAqIE5hdGl2ZSBhbmd1bGFyIERlY2ltYWxQaXBlIHRha2luZyB0aGUgY3VycmVudCBsYW5nIGludG8gY29uc2lkZXJhdGlvblxuICovXG5AUGlwZSh7XG4gIG5hbWU6ICdkZWNpbWFsJyxcbiAgcHVyZTogZmFsc2Vcbn0pXG5leHBvcnQgY2xhc3MgTG9jYWxpemVkRGVjaW1hbFBpcGUgZXh0ZW5kcyBEZWNpbWFsUGlwZSBpbXBsZW1lbnRzIE9uRGVzdHJveSwgUGlwZVRyYW5zZm9ybSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgb25MYW5nQ2hhbmdlOiBTdWJzY3JpcHRpb247XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBsb2NhbGl6YXRpb25TZXJ2aWNlOiBMb2NhbGl6YXRpb25TZXJ2aWNlLCBwcml2YXRlIHJlYWRvbmx5IGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZikge1xuICAgIHN1cGVyKGxvY2FsaXphdGlvblNlcnZpY2UuZ2V0Q3VycmVudExhbmd1YWdlKCkpO1xuICAgIHRoaXMub25MYW5nQ2hhbmdlID0gdGhpcy5sb2NhbGl6YXRpb25TZXJ2aWNlLmdldFRyYW5zbGF0ZVNlcnZpY2UoKS5vbkxhbmdDaGFuZ2Uuc3Vic2NyaWJlKCgpID0+XG4gICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAaW5oZXJpdGRvY1xuICAgKi9cbiAgcHVibGljIHRyYW5zZm9ybSh2YWx1ZTogbnVtYmVyIHwgc3RyaW5nLCBkaWdpdHNJbmZvPzogc3RyaW5nLCBsb2NhbGU/OiBzdHJpbmcpOiBzdHJpbmcgfCBudWxsO1xuICBwdWJsaWMgdHJhbnNmb3JtKHZhbHVlOiBudWxsIHwgdW5kZWZpbmVkLCBkaWdpdHNJbmZvPzogc3RyaW5nLCBsb2NhbGU/OiBzdHJpbmcpOiBudWxsO1xuICBwdWJsaWMgdHJhbnNmb3JtKHZhbHVlOiBudW1iZXIgfCBzdHJpbmcgfCBudWxsIHwgdW5kZWZpbmVkLCBkaWdpdHNJbmZvPzogc3RyaW5nLCBsb2NhbGU/OiBzdHJpbmcpOiBzdHJpbmcgfCBudWxsIHtcbiAgICByZXR1cm4gc3VwZXIudHJhbnNmb3JtKHZhbHVlLCBkaWdpdHNJbmZvLCBsb2NhbGUgfHwgdGhpcy5sb2NhbGl6YXRpb25TZXJ2aWNlLmdldEN1cnJlbnRMYW5ndWFnZSgpKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLm9uTGFuZ0NoYW5nZS51bnN1YnNjcmliZSgpO1xuICB9XG59XG4iXX0=
|
|
@@ -18,7 +18,6 @@ export class TextDirectionService {
|
|
|
18
18
|
}
|
|
19
19
|
/**
|
|
20
20
|
* Updates the dir attribute on body HTML tag.
|
|
21
|
-
*
|
|
22
21
|
* @returns a subscription that updates the dir attribute
|
|
23
22
|
*/
|
|
24
23
|
onLangChangeSubscription() {
|
|
@@ -32,13 +31,13 @@ export class TextDirectionService {
|
|
|
32
31
|
});
|
|
33
32
|
return this.subscription;
|
|
34
33
|
}
|
|
35
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
36
|
-
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
34
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: TextDirectionService, deps: [{ token: i1.TranslateService }, { token: LOCALIZATION_CONFIGURATION_TOKEN }, { token: i0.RendererFactory2 }, { token: i2.Directionality }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
35
|
+
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: TextDirectionService }); }
|
|
37
36
|
}
|
|
38
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
37
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: TextDirectionService, decorators: [{
|
|
39
38
|
type: Injectable
|
|
40
|
-
}], ctorParameters:
|
|
39
|
+
}], ctorParameters: () => [{ type: i1.TranslateService }, { type: undefined, decorators: [{
|
|
41
40
|
type: Inject,
|
|
42
41
|
args: [LOCALIZATION_CONFIGURATION_TOKEN]
|
|
43
|
-
}] }, { type: i0.RendererFactory2 }, { type: i2.Directionality }]
|
|
44
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
42
|
+
}] }, { type: i0.RendererFactory2 }, { type: i2.Directionality }] });
|
|
43
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC1kaXJlY3Rpb24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90b29scy90ZXh0LWRpcmVjdGlvbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBYSxnQkFBZ0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNoRixPQUFPLEVBQW1CLGdCQUFnQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFHeEUsT0FBTyxFQUFFLGdDQUFnQyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7Ozs7QUFFeEU7O0dBRUc7QUFFSCxNQUFNLE9BQU8sb0JBQW9CO0lBSS9CLFlBQ21CLGdCQUFrQyxFQUNRLGFBQXdDLEVBQ2xGLGVBQWlDLEVBQ2pDLGNBQThCO1FBSDlCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDUSxrQkFBYSxHQUFiLGFBQWEsQ0FBMkI7UUFDbEYsb0JBQWUsR0FBZixlQUFlLENBQWtCO1FBQ2pDLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUMvQyxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNsRSxDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksd0JBQXdCO1FBQzdCLElBQUksSUFBSSxDQUFDLFlBQVksSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxFQUFFO1lBQ2xELE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQztTQUMxQjtRQUNELElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsQ0FBQyxLQUFzQixFQUFFLEVBQUU7WUFDMUYsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO1lBQ3pHLElBQUksQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLFNBQVMsQ0FBQyxDQUFDO1lBQzVELElBQUksQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUM3QyxDQUFDLENBQUMsQ0FBQztRQUNILE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQztJQUMzQixDQUFDO2lJQTFCVSxvQkFBb0Isa0RBTXJCLGdDQUFnQztxSUFOL0Isb0JBQW9COzsyRkFBcEIsb0JBQW9CO2tCQURoQyxVQUFVOzswQkFPTixNQUFNOzJCQUFDLGdDQUFnQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGlvbmFsaXR5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2JpZGknO1xuaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlLCBSZW5kZXJlcjIsIFJlbmRlcmVyRmFjdG9yeTIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IExhbmdDaGFuZ2VFdmVudCwgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBMb2NhbGl6YXRpb25Db25maWd1cmF0aW9uIH0gZnJvbSAnLi4vY29yZSc7XG5pbXBvcnQgeyBMT0NBTElaQVRJT05fQ09ORklHVVJBVElPTl9UT0tFTiB9IGZyb20gJy4vbG9jYWxpemF0aW9uLnRva2VuJztcblxuLyoqXG4gKiBTZXJ2aWNlIGZvciBoYW5kbGluZyB0aGUgdGV4dCBkaXJlY3Rpb24gYmFzZWQgb24gdGhlIExvY2FsaXphdGlvbkNvbmZpZ3VyYXRpb25cbiAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFRleHREaXJlY3Rpb25TZXJ2aWNlIHtcbiAgcHJpdmF0ZSBzdWJzY3JpcHRpb24/OiBTdWJzY3JpcHRpb247XG4gIHByaXZhdGUgcmVhZG9ubHkgcmVuZGVyZXI6IFJlbmRlcmVyMjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IHRyYW5zbGF0ZVNlcnZpY2U6IFRyYW5zbGF0ZVNlcnZpY2UsXG4gICAgQEluamVjdChMT0NBTElaQVRJT05fQ09ORklHVVJBVElPTl9UT0tFTikgcHJpdmF0ZSByZWFkb25seSBjb25maWd1cmF0aW9uOiBMb2NhbGl6YXRpb25Db25maWd1cmF0aW9uLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgcmVuZGVyZXJGYWN0b3J5OiBSZW5kZXJlckZhY3RvcnkyLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgZGlyZWN0aW9uYWxpdHk6IERpcmVjdGlvbmFsaXR5KSB7XG4gICAgdGhpcy5yZW5kZXJlciA9IHRoaXMucmVuZGVyZXJGYWN0b3J5LmNyZWF0ZVJlbmRlcmVyKG51bGwsIG51bGwpO1xuICB9XG5cbiAgLyoqXG4gICAqIFVwZGF0ZXMgdGhlIGRpciBhdHRyaWJ1dGUgb24gYm9keSBIVE1MIHRhZy5cbiAgICogQHJldHVybnMgYSBzdWJzY3JpcHRpb24gdGhhdCB1cGRhdGVzIHRoZSBkaXIgYXR0cmlidXRlXG4gICAqL1xuICBwdWJsaWMgb25MYW5nQ2hhbmdlU3Vic2NyaXB0aW9uKCkge1xuICAgIGlmICh0aGlzLnN1YnNjcmlwdGlvbiAmJiAhdGhpcy5zdWJzY3JpcHRpb24uY2xvc2VkKSB7XG4gICAgICByZXR1cm4gdGhpcy5zdWJzY3JpcHRpb247XG4gICAgfVxuICAgIHRoaXMuc3Vic2NyaXB0aW9uID0gdGhpcy50cmFuc2xhdGVTZXJ2aWNlLm9uTGFuZ0NoYW5nZS5zdWJzY3JpYmUoKGV2ZW50OiBMYW5nQ2hhbmdlRXZlbnQpID0+IHtcbiAgICAgIGNvbnN0IGRpcmVjdGlvbiA9IHRoaXMuY29uZmlndXJhdGlvbi5ydGxMYW5ndWFnZXMuaW5kZXhPZihldmVudC5sYW5nLnNwbGl0KCctJylbMF0pID4gLTEgPyAncnRsJyA6ICdsdHInO1xuICAgICAgdGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUoZG9jdW1lbnQuYm9keSwgJ2RpcicsIGRpcmVjdGlvbik7XG4gICAgICB0aGlzLmRpcmVjdGlvbmFsaXR5LmNoYW5nZS5lbWl0KGRpcmVjdGlvbik7XG4gICAgfSk7XG4gICAgcmV0dXJuIHRoaXMuc3Vic2NyaXB0aW9uO1xuICB9XG59XG4iXX0=
|
|
@@ -12,15 +12,15 @@ export class TextDirectionality extends Directionality {
|
|
|
12
12
|
ngOnDestroy() {
|
|
13
13
|
this.change.complete();
|
|
14
14
|
}
|
|
15
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
16
|
-
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
15
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: TextDirectionality, deps: [{ token: DIR_DOCUMENT, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
16
|
+
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: TextDirectionality }); }
|
|
17
17
|
}
|
|
18
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
18
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: TextDirectionality, decorators: [{
|
|
19
19
|
type: Injectable
|
|
20
|
-
}], ctorParameters:
|
|
20
|
+
}], ctorParameters: () => [{ type: undefined, decorators: [{
|
|
21
21
|
type: Optional
|
|
22
22
|
}, {
|
|
23
23
|
type: Inject,
|
|
24
24
|
args: [DIR_DOCUMENT]
|
|
25
|
-
}] }]
|
|
26
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
25
|
+
}] }] });
|
|
26
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC1kaXJlY3Rpb25hbGl0eS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3Rvb2xzL3RleHQtZGlyZWN0aW9uYWxpdHkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFhLGNBQWMsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRTVFLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM3RCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7O0FBRzNDLE1BQU0sT0FBTyxrQkFBbUIsU0FBUSxjQUFjO0lBT3BELFlBQThDLFNBQWU7UUFDM0QsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ2pCLElBQUksQ0FBQyxNQUFNO2FBQ1IsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7YUFDM0IsU0FBUyxDQUFDLENBQUMsS0FBZ0IsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQztJQUN6RCxDQUFDO0lBRU0sV0FBVztRQUNoQixJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ3pCLENBQUM7aUlBaEJVLGtCQUFrQixrQkFPRyxZQUFZO3FJQVBqQyxrQkFBa0I7OzJGQUFsQixrQkFBa0I7a0JBRDlCLFVBQVU7OzBCQVFJLFFBQVE7OzBCQUFJLE1BQU07MkJBQUMsWUFBWSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERJUl9ET0NVTUVOVCwgRGlyZWN0aW9uLCBEaXJlY3Rpb25hbGl0eSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9iaWRpJztcblxuaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlLCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgc3RhcnRXaXRoIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgVGV4dERpcmVjdGlvbmFsaXR5IGV4dGVuZHMgRGlyZWN0aW9uYWxpdHkge1xuICAvKipcbiAgICogVGhlIGN1cnJlbnQgJ2x0cicgb3IgJ3J0bCcgdmFsdWUuXG4gICAqIEBvdmVycmlkZVxuICAgKi9cbiAgcHVibGljIHZhbHVlITogRGlyZWN0aW9uO1xuXG4gIGNvbnN0cnVjdG9yKEBPcHRpb25hbCgpIEBJbmplY3QoRElSX0RPQ1VNRU5UKSBfZG9jdW1lbnQ/OiBhbnkpIHtcbiAgICBzdXBlcihfZG9jdW1lbnQpO1xuICAgIHRoaXMuY2hhbmdlXG4gICAgICAucGlwZShzdGFydFdpdGgodGhpcy52YWx1ZSkpXG4gICAgICAuc3Vic2NyaWJlKCh2YWx1ZTogRGlyZWN0aW9uKSA9PiB0aGlzLnZhbHVlID0gdmFsdWUpO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuY2hhbmdlLmNvbXBsZXRlKCk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -22,7 +22,6 @@ export class TranslationsLoader {
|
|
|
22
22
|
}
|
|
23
23
|
/**
|
|
24
24
|
* Download a language bundle file
|
|
25
|
-
*
|
|
26
25
|
* @param url Url to the bundle file
|
|
27
26
|
*/
|
|
28
27
|
downloadLanguageBundle$(url) {
|
|
@@ -77,11 +76,10 @@ export class TranslationsLoader {
|
|
|
77
76
|
}
|
|
78
77
|
/**
|
|
79
78
|
*
|
|
80
|
-
*
|
|
81
|
-
*
|
|
82
|
-
* 1. try to load lang from local
|
|
83
|
-
* 2. if 1 fails try to load fallback lang but only if it's different from lang in 1
|
|
79
|
+
*Fetches localization bundles from published folder (internal to application)
|
|
84
80
|
*
|
|
81
|
+
*1. try to load lang from local
|
|
82
|
+
*2. if 1 fails try to load fallback lang but only if it's different from lang in 1
|
|
85
83
|
* @param lang - language of the bundle
|
|
86
84
|
* @param fallbackLanguage - fallback language in case bundle in language not found
|
|
87
85
|
*/
|
|
@@ -98,17 +96,17 @@ export class TranslationsLoader {
|
|
|
98
96
|
}
|
|
99
97
|
}));
|
|
100
98
|
}
|
|
101
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
102
|
-
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
99
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: TranslationsLoader, deps: [{ token: LOCALIZATION_CONFIGURATION_TOKEN }, { token: i1.LoggerService, optional: true }, { token: i2.DynamicContentService, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
100
|
+
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: TranslationsLoader }); }
|
|
103
101
|
}
|
|
104
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
102
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: TranslationsLoader, decorators: [{
|
|
105
103
|
type: Injectable
|
|
106
|
-
}], ctorParameters:
|
|
104
|
+
}], ctorParameters: () => [{ type: undefined, decorators: [{
|
|
107
105
|
type: Inject,
|
|
108
106
|
args: [LOCALIZATION_CONFIGURATION_TOKEN]
|
|
109
107
|
}] }, { type: i1.LoggerService, decorators: [{
|
|
110
108
|
type: Optional
|
|
111
109
|
}] }, { type: i2.DynamicContentService, decorators: [{
|
|
112
110
|
type: Optional
|
|
113
|
-
}] }]
|
|
114
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNsYXRpb25zLWxvYWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90b29scy90cmFuc2xhdGlvbnMtbG9hZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUs3RCxPQUFPLEVBQUUsYUFBYSxFQUFFLElBQUksRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDM0QsT0FBTyxFQUFFLFVBQVUsRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFNUQsT0FBTyxFQUFFLGdDQUFnQyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFeEUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDN0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGFBQWEsQ0FBQzs7OztBQUU1QyxNQUFNLFFBQVEsR0FBRyxPQUFPLENBQUM7QUFFekI7Ozs7O0dBS0c7QUFFSCxNQUFNLE9BQU8sa0JBQWtCO0lBQzdCLFlBQThELHlCQUFvRCxFQUN6RSxNQUFzQixFQUMvQixxQkFBNkM7UUFGZiw4QkFBeUIsR0FBekIseUJBQXlCLENBQTJCO1FBQ3pFLFdBQU0sR0FBTixNQUFNLENBQWdCO1FBQy9CLDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBd0I7SUFBRyxDQUFDO0lBRWpGOzs7O09BSUc7SUFDSyx1QkFBdUIsQ0FBQyxHQUFXO1FBQ3pDLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxXQUFXLENBQUM7UUFFL0QsSUFBSSxXQUFXLEdBQUcsRUFBRSxDQUFDO1FBQ3JCLElBQUksV0FBVyxFQUFFO1lBQ2YsV0FBVyxHQUFHLEdBQUcsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFF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T3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRyYW5zbGF0ZUxvYWRlciB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuXG5pbXBvcnQgeyBMb2NhbGl6YXRpb25Db25maWd1cmF0aW9uIH0gZnJvbSAnLi4vY29yZSc7XG5cbmltcG9ydCB7IGNvbWJpbmVMYXRlc3QsIGZyb20sIE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBjYXRjaEVycm9yLCBtYXAsIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgTE9DQUxJWkFUSU9OX0NPTkZJR1VSQVRJT05fVE9LRU4gfSBmcm9tICcuL2xvY2FsaXphdGlvbi50b2tlbic7XG5cbmltcG9ydCB7IER5bmFtaWNDb250ZW50U2VydmljZSB9IGZyb20gJ0BvM3IvZHluYW1pYy1jb250ZW50JztcbmltcG9ydCB7IExvZ2dlclNlcnZpY2UgfSBmcm9tICdAbzNyL2xvZ2dlcic7XG5cbmNvbnN0IEpTT05fRVhUID0gJy5qc29uJztcblxuLyoqXG4gKiBUaGlzIGNsYXNzIGlzIHJlc3BvbnNpYmxlIGZvciBsb2FkaW5nIHRyYW5zbGF0aW9uIGJ1bmRsZXMgZnJvbSByZW1vdGUgb3IgbG9jYWwgZW5kcG9pbnRzIGRlcGVuZGluZyBvbiB0aGUgTG9jYWxpemF0aW9uQ29uZmlndXJhdGlvbi5cbiAqIEZhbGxiYWNrIG1lY2hhbmlzbSBlbnN1cmVzIHRoYXQgaWYgYSBidW5kbGUgaW4gc29tZSBsYW5ndWFnZSBjYW5ub3QgYmUgZmV0Y2hlZCByZW1vdGVseVxuICogd2UgdHJ5IHRvIGZldGNoIHRoZSBzYW1lIGxhbmd1YWdlIGJ1bmRsZSBsb2NhbGx5IChidW5kbGVzIHN0b3JlZCBpbnNpZGUgdGhlIGFwcGxpY2F0aW9uKVxuICogYW5kIGZpbmFsbHkgbG9hZCB0aGUgZmFsbGJhY2sgbGFuZ3VhZ2UgYnVuZGxlIChpZiBhbGwgcHJldmlvdXMgZmV0Y2hlcyBmYWlsZWQpXG4gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBUcmFuc2xhdGlvbnNMb2FkZXIgaW1wbGVtZW50cyBUcmFuc2xhdGVMb2FkZXIge1xuICBjb25zdHJ1Y3RvcihASW5qZWN0KExPQ0FMSVpBVElPTl9DT05GSUdVUkFUSU9OX1RPS0VOKSBwcml2YXRlIGxvY2FsaXphdGlvbkNvbmZpZ3VyYXRpb246IExvY2FsaXphdGlvbkNvbmZpZ3VyYXRpb24sXG4gICAgICAgICAgICAgIEBPcHRpb25hbCgpIHByaXZhdGUgcmVhZG9ubHkgbG9nZ2VyPzogTG9nZ2VyU2VydmljZSxcbiAgICAgICAgICAgICAgQE9wdGlvbmFsKCkgcHJpdmF0ZSBkeW5hbWljQ29udGVudFNlcnZpY2U/OiBEeW5hbWljQ29udGVudFNlcnZpY2UpIHt9XG5cbiAgLyoqXG4gICAqIERvd25sb2FkIGEgbGFuZ3VhZ2UgYnVuZGxlIGZpbGVcbiAgICpcbiAgICogQHBhcmFtICB1cmwgVXJsIHRvIHRoZSBidW5kbGUgZmlsZVxuICAgKi9cbiAgcHJpdmF0ZSBkb3dubG9hZExhbmd1YWdlQnVuZGxlJCh1cmw6IHN0cmluZykge1xuICAgIGNvbnN0IHF1ZXJ5UGFyYW1zID0gdGhpcy5sb2NhbGl6YXRpb25Db25maWd1cmF0aW9uLnF1ZXJ5UGFyYW1zO1xuXG4gICAgbGV0IHF1ZXJ5U3RyaW5nID0gJyc7XG4gICAgaWYgKHF1ZXJ5UGFyYW1zKSB7XG4gICAgICBxdWVyeVN0cmluZyA9ICc/JyArIE9iamVjdC5rZXlzKHF1ZXJ5UGFyYW1zKS5tYXAoKGtleSkgPT4gZW5jb2RlVVJJQ29tcG9uZW50KGtleSkgKyAnPScgKyBlbmNvZGVVUklDb21wb25lbnQocXVlcnlQYXJhbXNba2V5XSkpLmpvaW4oJyYnKTtcbiAgICB9XG4gICAgcmV0dXJuIGZyb20oZmV0Y2godXJsICsgcXVlcnlTdHJpbmcsIHRoaXMubG9jYWxpemF0aW9uQ29uZmlndXJhdGlvbi5mZXRjaE9wdGlvbnMpKS5waXBlKFxuICAgICAgc3dpdGNoTWFwKChyZXNwb25zZSkgPT4gZnJvbShyZXNwb25zZS5qc29uKCkpKVxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogQGluaGVyaXRkb2NcbiAgICovXG4gIHB1YmxpYyBnZXRUcmFuc2xhdGlvbihsYW5nOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGNvbnN0IGZhbGxiYWNrID0gdGhpcy5sb2NhbGl6YXRpb25Db25maWd1cmF0aW9uLmZhbGxiYWNrTGFuZ3VhZ2U7XG4gICAgbGV0IGxvY2FsaXphdGlvblBhdGgkID0gb2YodGhpcy5sb2NhbGl6YXRpb25Db25maWd1cmF0aW9uLmVuZFBvaW50VXJsKTtcblxuICAgIGlmICh0aGlzLmxvY2FsaXphdGlvbkNvbmZpZ3VyYXRpb24udXNlRHluYW1pY0NvbnRlbnQpIHtcbiAgICAgIGlmICghdGhpcy5keW5hbWljQ29udGVudFNlcnZpY2UpIHtcbiAgICAgICAgdGhyb3cgRXJyb3IoJ0R5bmFtaWMgQ29udGVudCBpcyBub3QgYXZhaWxhYmxlLiBQbGVhc2UgdmVyaWZ5IHlvdSBoYXZlIGltcG9ydGVkIHRoZSBtb2R1bGUgRHluYW1pY0NvbnRlbnRNb2R1bGUgaW4geW91ciBhcHBsaWNhdGlvbicpO1xuICAgICAgfVxuICAgICAgbG9jYWxpemF0aW9uUGF0aCQgPSB0aGlzLmR5bmFtaWNDb250ZW50U2VydmljZS5nZXRDb250ZW50UGF0aFN0cmVhbSh0aGlzLmxvY2FsaXphdGlvbkNvbmZpZ3VyYXRpb24uZW5kUG9pbnRVcmwpO1xuICAgIH1cblxuICAgIHJldHVybiBsb2NhbGl6YXRpb25QYXRoJC5waXBlKFxuICAgICAgc3dpdGNoTWFwKChsb2NhbGl6YXRpb25QYXRoOiBzdHJpbmcpID0+IHtcbiAgICAgICAgaWYgKGxvY2FsaXphdGlvblBhdGgpIHtcblxuICAgICAgICAgIGNvbnN0IGxvY2FsaXphdGlvbkJ1bmRsZSQgPSB0aGlzLmRvd25sb2FkTGFuZ3VhZ2VCdW5kbGUkKGxvY2FsaXphdGlvblBhdGggKyBsYW5nICsgSlNPTl9FWFQpO1xuXG4gICAgICAgICAgaWYgKHRoaXMubG9jYWxpemF0aW9uQ29uZmlndXJhdGlvbi5tZXJnZVdpdGhMb2NhbFRyYW5zbGF0aW9ucykge1xuICAgICAgICAgICAgcmV0dXJuIGNvbWJpbmVMYXRlc3QoW1xuICAgICAgICAgICAgICBsb2NhbGl6YXRpb25CdW5kbGUkLnBpcGUoY2F0Y2hFcnJvcigoKSA9PiBvZih7fSkpKSxcbiAgICAgICAgICAgICAgdGhpcy5nZXRUcmFuc2xhdGlvbkZyb21Mb2NhbChsYW5nLCBmYWxsYmFjaykucGlwZShcbiAgICAgICAgICAgICAgICBtYXAoKHRyYW5zbGF0aW9ucykgPT4ge1xuICAgICAgICAgICAgICAgICAgT2JqZWN0LmtleXModHJhbnNsYXRpb25zKS5mb3JFYWNoKChrZXkpID0+IHRyYW5zbGF0aW9uc1trZXldID0gYFtsb2NhbF0gJHt0cmFuc2xhdGlvbnNba2V5XSBhcyBzdHJpbmd9YCk7XG4gICAgICAgICAgICAgICAgICByZXR1cm4gdHJhbnNsYXRpb25zO1xuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgIClcbiAgICAgICAgICAgIF0pLnBpcGUobWFwKChbZHluYW1pY1RyYW5zbGF0aW9ucywgbG9jYWxUcmFuc2xhdGlvbnNdKSA9PiAoey4uLmxvY2FsVHJhbnNsYXRpb25zLCAuLi5keW5hbWljVHJhbnNsYXRpb25zfSkpKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAvKlxuICAgICAgICAgICogaWYgZW5kUG9pbnRVcmwgaXMgc3BlY2lmaWVkIGJ5IHRoZSBjb25maWd1cmF0aW9uIHRoZW46XG4gICAgICAgICAgKiAgIDEuIHRyeSB0byBsb2FkIGxhbmcgZnJvbSBlbmRQb2ludFVybFxuICAgICAgICAgICogICAyLiBpZiAxIGZhaWxzIHRoZW4gdHJ5IHRvIGxvYWQgZnJvbSB0aGUgYXBwIChsb2NhbCBmaWxlKVxuICAgICAgICAgICovXG4gICAgICAgICAgcmV0dXJuIGxvY2FsaXphdGlvbkJ1bmRsZSQucGlwZShcbiAgICAgICAgICAgIGNhdGNoRXJyb3IoKCkgPT4ge1xuICAgICAgICAgICAgICB0aGlzLmxvZ2dlcj8ud2FybihgRmFpbGVkIHRvIGxvYWQgdGhlIGxvY2FsaXphdGlvbiByZXNvdXJjZSBmcm9tICR7bG9jYWxpemF0aW9uUGF0aCArIGxhbmcgKyBKU09OX0VYVH0sIHRyeWluZyBmcm9tIHRoZSBhcHBsaWNhdGlvbiByZXNvdXJjZXNgKTtcbiAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuZ2V0VHJhbnNsYXRpb25Gcm9tTG9jYWwobGFuZywgZmFsbGJhY2spO1xuICAgICAgICAgICAgfSlcbiAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICAgIC8qXG4gICAgICAgICogZWxzZSBpZiBlbmRQb2ludFVybCBOT1Qgc3BlY2lmaWVkIGJ5IHRoZW4gY29uZmlndXJhdGlvbiB0aGVuOlxuICAgICAgICAqICAgMS4gdHJ5IHRvIGxvYWQgZnJvbSB0aGUgYXBwIChsb2NhbCBmaWxlKVxuICAgICAgICAqL1xuICAgICAgICB0aGlzLmxvZ2dlcj8ud2FybignTm8gbG9jYWxpemF0aW9uIGVuZHBvaW50IHNwZWNpZmllZCwgbG9jYWxpemF0aW9uIGZldGNoIGZyb20gYXBwbGljYXRpb24gcmVzb3VyY2VzJyk7XG4gICAgICAgIHJldHVybiB0aGlzLmdldFRyYW5zbGF0aW9uRnJvbUxvY2FsKGxhbmcsIGZhbGxiYWNrKTtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKlxuICAgKiBGZXRjaGVzIGxvY2FsaXphdGlvbiBidW5kbGVzIGZyb20gcHVibGlzaGVkIGZvbGRlciAoaW50ZXJuYWwgdG8gYXBwbGljYXRpb24pXG4gICAqXG4gICAqIDEuIHRyeSB0byBsb2FkIGxhbmcgZnJvbSBsb2NhbFxuICAgKiAyLiBpZiAxIGZhaWxzIHRyeSB0byBsb2FkIGZhbGxiYWNrIGxhbmcgYnV0IG9ubHkgaWYgaXQncyBkaWZmZXJlbnQgZnJvbSBsYW5nIGluIDFcbiAgICpcbiAgICogQHBhcmFtIGxhbmcgLSBsYW5ndWFnZSBvZiB0aGUgYnVuZGxlXG4gICAqIEBwYXJhbSBmYWxsYmFja0xhbmd1YWdlIC0gZmFsbGJhY2sgbGFuZ3VhZ2UgaW4gY2FzZSBidW5kbGUgaW4gbGFuZ3VhZ2Ugbm90IGZvdW5kXG4gICAqL1xuICBwdWJsaWMgZ2V0VHJhbnNsYXRpb25Gcm9tTG9jYWwobGFuZzogc3RyaW5nLCBmYWxsYmFja0xhbmd1YWdlOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGNvbnN0IHBhdGhQcmVmaXg6IHN0cmluZyA9IHRoaXMubG9jYWxpemF0aW9uQ29uZmlndXJhdGlvbi5idW5kbGVzT3V0cHV0UGF0aDtcbiAgICByZXR1cm4gdGhpcy5kb3dubG9hZExhbmd1YWdlQnVuZGxlJChwYXRoUHJlZml4ICsgbGFuZyArIEpTT05fRVhUKS5waXBlKFxuICAgICAgY2F0Y2hFcnJvcigoKSA9PiB7XG4gICAgICAgIGlmIChsYW5nICE9PSBmYWxsYmFja0xhbmd1YWdlKSB7XG4gICAgICAgICAgdGhpcy5sb2dnZXI/Lndhcm4oYEZhaWxlZCB0byBsb2FkICR7bGFuZ30gZnJvbSAke3BhdGhQcmVmaXggKyBsYW5nICsgSlNPTl9FWFR9LiBBcHBsaWNhdGlvbiB3aWxsIGZhbGxiYWNrIHRvICR7ZmFsbGJhY2tMYW5ndWFnZX1gKTtcbiAgICAgICAgICByZXR1cm4gdGhpcy5kb3dubG9hZExhbmd1YWdlQnVuZGxlJChwYXRoUHJlZml4ICsgZmFsbGJhY2tMYW5ndWFnZSArIEpTT05fRVhUKS5waXBlKFxuICAgICAgICAgICAgY2F0Y2hFcnJvcigoKSA9PiBvZih7fSkpXG4gICAgICAgICAgKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLmxvZ2dlcj8ud2FybihgRmFpbGVkIHRvIGxvYWQgJHtsYW5nfSBmcm9tICR7cGF0aFByZWZpeCArIGxhbmcgKyBKU09OX0VYVH0uYCk7XG4gICAgICAgICAgcmV0dXJuIG9mKHt9KTtcbiAgICAgICAgfVxuICAgICAgfSlcbiAgICApO1xuICB9XG59XG4iXX0=
|
|
111
|
+
}] }] });
|
|
112
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNsYXRpb25zLWxvYWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90b29scy90cmFuc2xhdGlvbnMtbG9hZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUs3RCxPQUFPLEVBQUUsYUFBYSxFQUFFLElBQUksRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDM0QsT0FBTyxFQUFFLFVBQVUsRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFNUQsT0FBTyxFQUFFLGdDQUFnQyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFeEUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDN0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGFBQWEsQ0FBQzs7OztBQUU1QyxNQUFNLFFBQVEsR0FBRyxPQUFPLENBQUM7QUFFekI7Ozs7O0dBS0c7QUFFSCxNQUFNLE9BQU8sa0JBQWtCO0lBQzdCLFlBQXVFLHlCQUFvRCxFQUNsRixNQUFzQixFQUN0QixxQkFBNkM7UUFGZiw4QkFBeUIsR0FBekIseUJBQXlCLENBQTJCO1FBQ2xGLFdBQU0sR0FBTixNQUFNLENBQWdCO1FBQ3RCLDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBd0I7SUFBRyxDQUFDO0lBRTFGOzs7T0FHRztJQUNLLHVCQUF1QixDQUFDLEdBQVc7UUFDekMsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLHlCQUF5QixDQUFDLFdBQVcsQ0FBQztRQUUvRCxJQUFJLFdBQVcsR0FBRyxFQUFFLENBQUM7UUFDckIsSUFBSSxXQUFXLEVBQUU7WUFDZixXQUFXLEdBQUcsR0FBRyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUs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dGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUcmFuc2xhdGVMb2FkZXIgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcblxuaW1wb3J0IHsgTG9jYWxpemF0aW9uQ29uZmlndXJhdGlvbiB9IGZyb20gJy4uL2NvcmUnO1xuXG5pbXBvcnQgeyBjb21iaW5lTGF0ZXN0LCBmcm9tLCBPYnNlcnZhYmxlLCBvZiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgY2F0Y2hFcnJvciwgbWFwLCBzd2l0Y2hNYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IExPQ0FMSVpBVElPTl9DT05GSUdVUkFUSU9OX1RPS0VOIH0gZnJvbSAnLi9sb2NhbGl6YXRpb24udG9rZW4nO1xuXG5pbXBvcnQgeyBEeW5hbWljQ29udGVudFNlcnZpY2UgfSBmcm9tICdAbzNyL2R5bmFtaWMtY29udGVudCc7XG5pbXBvcnQgeyBMb2dnZXJTZXJ2aWNlIH0gZnJvbSAnQG8zci9sb2dnZXInO1xuXG5jb25zdCBKU09OX0VYVCA9ICcuanNvbic7XG5cbi8qKlxuICogVGhpcyBjbGFzcyBpcyByZXNwb25zaWJsZSBmb3IgbG9hZGluZyB0cmFuc2xhdGlvbiBidW5kbGVzIGZyb20gcmVtb3RlIG9yIGxvY2FsIGVuZHBvaW50cyBkZXBlbmRpbmcgb24gdGhlIExvY2FsaXphdGlvbkNvbmZpZ3VyYXRpb24uXG4gKiBGYWxsYmFjayBtZWNoYW5pc20gZW5zdXJlcyB0aGF0IGlmIGEgYnVuZGxlIGluIHNvbWUgbGFuZ3VhZ2UgY2Fubm90IGJlIGZldGNoZWQgcmVtb3RlbHlcbiAqIHdlIHRyeSB0byBmZXRjaCB0aGUgc2FtZSBsYW5ndWFnZSBidW5kbGUgbG9jYWxseSAoYnVuZGxlcyBzdG9yZWQgaW5zaWRlIHRoZSBhcHBsaWNhdGlvbilcbiAqIGFuZCBmaW5hbGx5IGxvYWQgdGhlIGZhbGxiYWNrIGxhbmd1YWdlIGJ1bmRsZSAoaWYgYWxsIHByZXZpb3VzIGZldGNoZXMgZmFpbGVkKVxuICovXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgVHJhbnNsYXRpb25zTG9hZGVyIGltcGxlbWVudHMgVHJhbnNsYXRlTG9hZGVyIHtcbiAgY29uc3RydWN0b3IoQEluamVjdChMT0NBTElaQVRJT05fQ09ORklHVVJBVElPTl9UT0tFTikgcHJpdmF0ZSByZWFkb25seSBsb2NhbGl6YXRpb25Db25maWd1cmF0aW9uOiBMb2NhbGl6YXRpb25Db25maWd1cmF0aW9uLFxuICAgICAgICAgICAgICBAT3B0aW9uYWwoKSBwcml2YXRlIHJlYWRvbmx5IGxvZ2dlcj86IExvZ2dlclNlcnZpY2UsXG4gICAgICAgICAgICAgIEBPcHRpb25hbCgpIHByaXZhdGUgcmVhZG9ubHkgZHluYW1pY0NvbnRlbnRTZXJ2aWNlPzogRHluYW1pY0NvbnRlbnRTZXJ2aWNlKSB7fVxuXG4gIC8qKlxuICAgKiBEb3dubG9hZCBhIGxhbmd1YWdlIGJ1bmRsZSBmaWxlXG4gICAqIEBwYXJhbSAgdXJsIFVybCB0byB0aGUgYnVuZGxlIGZpbGVcbiAgICovXG4gIHByaXZhdGUgZG93bmxvYWRMYW5ndWFnZUJ1bmRsZSQodXJsOiBzdHJpbmcpIHtcbiAgICBjb25zdCBxdWVyeVBhcmFtcyA9IHRoaXMubG9jYWxpemF0aW9uQ29uZmlndXJhdGlvbi5xdWVyeVBhcmFtcztcblxuICAgIGxldCBxdWVyeVN0cmluZyA9ICcnO1xuICAgIGlmIChxdWVyeVBhcmFtcykge1xuICAgICAgcXVlcnlTdHJpbmcgPSAnPycgKyBPYmplY3Qua2V5cyhxdWVyeVBhcmFtcykubWFwKChrZXkpID0+IGVuY29kZVVSSUNvbXBvbmVudChrZXkpICsgJz0nICsgZW5jb2RlVVJJQ29tcG9uZW50KHF1ZXJ5UGFyYW1zW2tleV0pKS5qb2luKCcmJyk7XG4gICAgfVxuICAgIHJldHVybiBmcm9tKGZldGNoKHVybCArIHF1ZXJ5U3RyaW5nLCB0aGlzLmxvY2FsaXphdGlvbkNvbmZpZ3VyYXRpb24uZmV0Y2hPcHRpb25zKSkucGlwZShcbiAgICAgIHN3aXRjaE1hcCgocmVzcG9uc2UpID0+IGZyb20ocmVzcG9uc2UuanNvbigpKSlcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIEBpbmhlcml0ZG9jXG4gICAqL1xuICBwdWJsaWMgZ2V0VHJhbnNsYXRpb24obGFuZzogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBjb25zdCBmYWxsYmFjayA9IHRoaXMubG9jYWxpemF0aW9uQ29uZmlndXJhdGlvbi5mYWxsYmFja0xhbmd1YWdlO1xuICAgIGxldCBsb2NhbGl6YXRpb25QYXRoJCA9IG9mKHRoaXMubG9jYWxpemF0aW9uQ29uZmlndXJhdGlvbi5lbmRQb2ludFVybCk7XG5cbiAgICBpZiAodGhpcy5sb2NhbGl6YXRpb25Db25maWd1cmF0aW9uLnVzZUR5bmFtaWNDb250ZW50KSB7XG4gICAgICBpZiAoIXRoaXMuZHluYW1pY0NvbnRlbnRTZXJ2aWNlKSB7XG4gICAgICAgIHRocm93IEVycm9yKCdEeW5hbWljIENvbnRlbnQgaXMgbm90IGF2YWlsYWJsZS4gUGxlYXNlIHZlcmlmeSB5b3UgaGF2ZSBpbXBvcnRlZCB0aGUgbW9kdWxlIER5bmFtaWNDb250ZW50TW9kdWxlIGluIHlvdXIgYXBwbGljYXRpb24nKTtcbiAgICAgIH1cbiAgICAgIGxvY2FsaXphdGlvblBhdGgkID0gdGhpcy5keW5hbWljQ29udGVudFNlcnZpY2UuZ2V0Q29udGVudFBhdGhTdHJlYW0odGhpcy5sb2NhbGl6YXRpb25Db25maWd1cmF0aW9uLmVuZFBvaW50VXJsKTtcbiAgICB9XG5cbiAgICByZXR1cm4gbG9jYWxpemF0aW9uUGF0aCQucGlwZShcbiAgICAgIHN3aXRjaE1hcCgobG9jYWxpemF0aW9uUGF0aDogc3RyaW5nKSA9PiB7XG4gICAgICAgIGlmIChsb2NhbGl6YXRpb25QYXRoKSB7XG5cbiAgICAgICAgICBjb25zdCBsb2NhbGl6YXRpb25CdW5kbGUkID0gdGhpcy5kb3dubG9hZExhbmd1YWdlQnVuZGxlJChsb2NhbGl6YXRpb25QYXRoICsgbGFuZyArIEpTT05fRVhUKTtcblxuICAgICAgICAgIGlmICh0aGlzLmxvY2FsaXphdGlvbkNvbmZpZ3VyYXRpb24ubWVyZ2VXaXRoTG9jYWxUcmFuc2xhdGlvbnMpIHtcbiAgICAgICAgICAgIHJldHVybiBjb21iaW5lTGF0ZXN0KFtcbiAgICAgICAgICAgICAgbG9jYWxpemF0aW9uQnVuZGxlJC5waXBlKGNhdGNoRXJyb3IoKCkgPT4gb2Yoe30pKSksXG4gICAgICAgICAgICAgIHRoaXMuZ2V0VHJhbnNsYXRpb25Gcm9tTG9jYWwobGFuZywgZmFsbGJhY2spLnBpcGUoXG4gICAgICAgICAgICAgICAgbWFwKCh0cmFuc2xhdGlvbnMpID0+IHtcbiAgICAgICAgICAgICAgICAgIE9iamVjdC5rZXlzKHRyYW5zbGF0aW9ucykuZm9yRWFjaCgoa2V5KSA9PiB0cmFuc2xhdGlvbnNba2V5XSA9IGBbbG9jYWxdICR7dHJhbnNsYXRpb25zW2tleV0gYXMgc3RyaW5nfWApO1xuICAgICAgICAgICAgICAgICAgcmV0dXJuIHRyYW5zbGF0aW9ucztcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICApXG4gICAgICAgICAgICBdKS5waXBlKG1hcCgoW2R5bmFtaWNUcmFuc2xhdGlvbnMsIGxvY2FsVHJhbnNsYXRpb25zXSkgPT4gKHsuLi5sb2NhbFRyYW5zbGF0aW9ucywgLi4uZHluYW1pY1RyYW5zbGF0aW9uc30pKSk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLypcbiAgICAgICAgICAqIGlmIGVuZFBvaW50VXJsIGlzIHNwZWNpZmllZCBieSB0aGUgY29uZmlndXJhdGlvbiB0aGVuOlxuICAgICAgICAgICogICAxLiB0cnkgdG8gbG9hZCBsYW5nIGZyb20gZW5kUG9pbnRVcmxcbiAgICAgICAgICAqICAgMi4gaWYgMSBmYWlscyB0aGVuIHRyeSB0byBsb2FkIGZyb20gdGhlIGFwcCAobG9jYWwgZmlsZSlcbiAgICAgICAgICAqL1xuICAgICAgICAgIHJldHVybiBsb2NhbGl6YXRpb25CdW5kbGUkLnBpcGUoXG4gICAgICAgICAgICBjYXRjaEVycm9yKCgpID0+IHtcbiAgICAgICAgICAgICAgdGhpcy5sb2dnZXI/Lndhcm4oYEZhaWxlZCB0byBsb2FkIHRoZSBsb2NhbGl6YXRpb24gcmVzb3VyY2UgZnJvbSAke2xvY2FsaXphdGlvblBhdGggKyBsYW5nICsgSlNPTl9FWFR9LCB0cnlpbmcgZnJvbSB0aGUgYXBwbGljYXRpb24gcmVzb3VyY2VzYCk7XG4gICAgICAgICAgICAgIHJldHVybiB0aGlzLmdldFRyYW5zbGF0aW9uRnJvbUxvY2FsKGxhbmcsIGZhbGxiYWNrKTtcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgICAvKlxuICAgICAgICAqIGVsc2UgaWYgZW5kUG9pbnRVcmwgTk9UIHNwZWNpZmllZCBieSB0aGVuIGNvbmZpZ3VyYXRpb24gdGhlbjpcbiAgICAgICAgKiAgIDEuIHRyeSB0byBsb2FkIGZyb20gdGhlIGFwcCAobG9jYWwgZmlsZSlcbiAgICAgICAgKi9cbiAgICAgICAgdGhpcy5sb2dnZXI/Lndhcm4oJ05vIGxvY2FsaXphdGlvbiBlbmRwb2ludCBzcGVjaWZpZWQsIGxvY2FsaXphdGlvbiBmZXRjaCBmcm9tIGFwcGxpY2F0aW9uIHJlc291cmNlcycpO1xuICAgICAgICByZXR1cm4gdGhpcy5nZXRUcmFuc2xhdGlvbkZyb21Mb2NhbChsYW5nLCBmYWxsYmFjayk7XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICpcbiAgICpGZXRjaGVzIGxvY2FsaXphdGlvbiBidW5kbGVzIGZyb20gcHVibGlzaGVkIGZvbGRlciAoaW50ZXJuYWwgdG8gYXBwbGljYXRpb24pXG4gICAqXG4gICAqMS4gdHJ5IHRvIGxvYWQgbGFuZyBmcm9tIGxvY2FsXG4gICAqMi4gaWYgMSBmYWlscyB0cnkgdG8gbG9hZCBmYWxsYmFjayBsYW5nIGJ1dCBvbmx5IGlmIGl0J3MgZGlmZmVyZW50IGZyb20gbGFuZyBpbiAxXG4gICAqIEBwYXJhbSBsYW5nIC0gbGFuZ3VhZ2Ugb2YgdGhlIGJ1bmRsZVxuICAgKiBAcGFyYW0gZmFsbGJhY2tMYW5ndWFnZSAtIGZhbGxiYWNrIGxhbmd1YWdlIGluIGNhc2UgYnVuZGxlIGluIGxhbmd1YWdlIG5vdCBmb3VuZFxuICAgKi9cbiAgcHVibGljIGdldFRyYW5zbGF0aW9uRnJvbUxvY2FsKGxhbmc6IHN0cmluZywgZmFsbGJhY2tMYW5ndWFnZTogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBjb25zdCBwYXRoUHJlZml4OiBzdHJpbmcgPSB0aGlzLmxvY2FsaXphdGlvbkNvbmZpZ3VyYXRpb24uYnVuZGxlc091dHB1dFBhdGg7XG4gICAgcmV0dXJuIHRoaXMuZG93bmxvYWRMYW5ndWFnZUJ1bmRsZSQocGF0aFByZWZpeCArIGxhbmcgKyBKU09OX0VYVCkucGlwZShcbiAgICAgIGNhdGNoRXJyb3IoKCkgPT4ge1xuICAgICAgICBpZiAobGFuZyAhPT0gZmFsbGJhY2tMYW5ndWFnZSkge1xuICAgICAgICAgIHRoaXMubG9nZ2VyPy53YXJuKGBGYWlsZWQgdG8gbG9hZCAke2xhbmd9IGZyb20gJHtwYXRoUHJlZml4ICsgbGFuZyArIEpTT05fRVhUfS4gQXBwbGljYXRpb24gd2lsbCBmYWxsYmFjayB0byAke2ZhbGxiYWNrTGFuZ3VhZ2V9YCk7XG4gICAgICAgICAgcmV0dXJuIHRoaXMuZG93bmxvYWRMYW5ndWFnZUJ1bmRsZSQocGF0aFByZWZpeCArIGZhbGxiYWNrTGFuZ3VhZ2UgKyBKU09OX0VYVCkucGlwZShcbiAgICAgICAgICAgIGNhdGNoRXJyb3IoKCkgPT4gb2Yoe30pKVxuICAgICAgICAgICk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy5sb2dnZXI/Lndhcm4oYEZhaWxlZCB0byBsb2FkICR7bGFuZ30gZnJvbSAke3BhdGhQcmVmaXggKyBsYW5nICsgSlNPTl9FWFR9LmApO1xuICAgICAgICAgIHJldHVybiBvZih7fSk7XG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgKTtcbiAgfVxufVxuIl19
|