@igo2/core 16.3.0 → 17.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/esm2022/lib/activity/activity.interceptor.mjs +5 -5
- package/esm2022/lib/activity/activity.module.mjs +5 -5
- package/esm2022/lib/activity/activity.service.mjs +5 -5
- package/esm2022/lib/activity/index.mjs +1 -1
- package/esm2022/lib/analytics/index.mjs +1 -1
- package/esm2022/lib/analytics/shared/analytics.service.mjs +5 -5
- package/esm2022/lib/analytics/shared/index.mjs +1 -1
- package/esm2022/lib/compression/compression.service.mjs +5 -5
- package/esm2022/lib/compression/index.mjs +1 -1
- package/esm2022/lib/config/config.module.mjs +5 -5
- package/esm2022/lib/config/config.service.mjs +5 -5
- package/esm2022/lib/config/index.mjs +1 -1
- package/esm2022/lib/config/version.mjs +3 -3
- package/esm2022/lib/core.module.mjs +12 -14
- package/esm2022/lib/gesture/gesture.module.mjs +5 -5
- package/esm2022/lib/gesture/gesture.provider.mjs +4 -4
- package/esm2022/lib/language/index.mjs +1 -1
- package/esm2022/lib/language/language.module.mjs +6 -29
- package/esm2022/lib/language/shared/index.mjs +3 -1
- package/esm2022/lib/language/shared/language-mock.provider.mjs +5 -0
- package/esm2022/lib/language/shared/language.interface.mjs +3 -2
- package/esm2022/lib/language/shared/language.loader.mjs +23 -16
- package/esm2022/lib/language/shared/language.provider.mjs +37 -18
- package/esm2022/lib/language/shared/language.service.mjs +5 -5
- package/esm2022/lib/language/shared/missing-translation.guard.mjs +2 -2
- package/esm2022/lib/media/index.mjs +1 -1
- package/esm2022/lib/media/media.enum.mjs +1 -1
- package/esm2022/lib/media/media.service.mjs +5 -5
- package/esm2022/lib/message/index.mjs +1 -1
- package/esm2022/lib/message/message.module.mjs +5 -5
- package/esm2022/lib/message/shared/message.enum.mjs +1 -1
- package/esm2022/lib/message/shared/message.service.mjs +8 -7
- package/esm2022/lib/monitoring/monitoring.provider.mjs +1 -1
- package/esm2022/lib/monitoring/sentry/sentry.interface.mjs +1 -1
- package/esm2022/lib/monitoring/sentry/sentry.mjs +1 -1
- package/esm2022/lib/monitoring/sentry/sentry.provider.mjs +1 -1
- package/esm2022/lib/monitoring/sentry/sentry.utils.mjs +4 -2
- package/esm2022/lib/monitoring/shared/any-monitoring.interface.mjs +1 -1
- package/esm2022/lib/network/index.mjs +1 -1
- package/esm2022/lib/network/network.service.mjs +5 -5
- package/esm2022/lib/regex/index.mjs +1 -1
- package/esm2022/lib/regex/regex.service.mjs +5 -5
- package/esm2022/lib/request/error.interceptor.mjs +5 -5
- package/esm2022/lib/request/error.module.mjs +7 -7
- package/esm2022/lib/request/index.mjs +1 -1
- package/esm2022/lib/request/logging.interceptor.mjs +4 -4
- package/esm2022/lib/request/logging.module.mjs +5 -5
- package/esm2022/lib/route/route.interface.mjs +1 -1
- package/esm2022/lib/route/route.service.mjs +6 -6
- package/esm2022/lib/storage/storage.interface.mjs +1 -1
- package/esm2022/lib/storage/storage.mjs +1 -1
- package/esm2022/lib/storage/storage.service.mjs +5 -5
- package/esm2022/public_api.mjs +1 -2
- package/fesm2022/igo2-core.mjs +203 -192
- package/fesm2022/igo2-core.mjs.map +1 -1
- package/lib/core.module.d.ts +4 -4
- package/lib/language/language.module.d.ts +1 -3
- package/lib/language/shared/index.d.ts +2 -0
- package/lib/language/shared/language-mock.provider.d.ts +2 -0
- package/lib/language/shared/language.interface.d.ts +6 -0
- package/lib/language/shared/language.loader.d.ts +6 -4
- package/lib/language/shared/language.provider.d.ts +8 -15
- package/lib/message/shared/message.enum.d.ts +1 -1
- package/lib/monitoring/sentry/sentry.utils.d.ts +1 -1
- package/lib/monitoring/shared/any-monitoring.interface.d.ts +1 -1
- package/locale/en.json +1 -1
- package/locale/fr.json +1 -1
- package/package.json +9 -9
- package/public_api.d.ts +0 -1
- package/src/packages.import.scss +1 -0
- package/src/style/partial/media.scss +80 -80
- package/src/theming/all-theme.scss +1 -0
- package/theming/prebuilt-themes/blue-theme.css +823 -963
- package/theming/prebuilt-themes/bluedark-theme.css +823 -963
- package/theming/prebuilt-themes/bluedq-theme.css +823 -963
- package/theming/prebuilt-themes/bluegrey-theme.css +823 -963
- package/theming/prebuilt-themes/dark-theme.css +823 -970
- package/theming/prebuilt-themes/deeppurple-theme.css +823 -963
- package/theming/prebuilt-themes/indigo-theme.css +823 -963
- package/theming/prebuilt-themes/orange-theme.css +823 -963
- package/theming/prebuilt-themes/teal-theme.css +823 -963
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
export * from './language.interface';
|
|
2
2
|
export * from './language.loader';
|
|
3
|
+
export * from './language.provider';
|
|
4
|
+
export * from './language-mock.provider';
|
|
3
5
|
export * from './language.service';
|
|
4
6
|
export * from './missing-translation.guard';
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL3NyYy9saWIvbGFuZ3VhZ2Uvc2hhcmVkL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsc0JBQXNCLENBQUM7QUFDckMsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLDZCQUE2QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9sYW5ndWFnZS5pbnRlcmZhY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xhbmd1YWdlLmxvYWRlcic7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGFuZ3VhZ2UucHJvdmlkZXInO1xyXG5leHBvcnQgKiBmcm9tICcuL2xhbmd1YWdlLW1vY2sucHJvdmlkZXInO1xyXG5leHBvcnQgKiBmcm9tICcuL2xhbmd1YWdlLnNlcnZpY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL21pc3NpbmctdHJhbnNsYXRpb24uZ3VhcmQnO1xyXG4iXX0=
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { TranslateModule } from '@ngx-translate/core';
|
|
2
|
+
export function provideMockRootTranslation(loader) {
|
|
3
|
+
return TranslateModule.forRoot();
|
|
4
|
+
}
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFuZ3VhZ2UtbW9jay5wcm92aWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvc3JjL2xpYi9sYW5ndWFnZS9zaGFyZWQvbGFuZ3VhZ2UtbW9jay5wcm92aWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFdEQsTUFBTSxVQUFVLDBCQUEwQixDQUN4QyxNQUFpQjtJQUVqQixPQUFPLGVBQWUsQ0FBQyxPQUFPLEVBQUUsQ0FBQztBQUNuQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW1wb3J0UHJvdmlkZXJzU291cmNlLCBQcm92aWRlciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gcHJvdmlkZU1vY2tSb290VHJhbnNsYXRpb24oXHJcbiAgbG9hZGVyPzogUHJvdmlkZXJcclxuKTogSW1wb3J0UHJvdmlkZXJzU291cmNlIHtcclxuICByZXR1cm4gVHJhbnNsYXRlTW9kdWxlLmZvclJvb3QoKTtcclxufVxyXG4iXX0=
|
|
@@ -1,2 +1,3 @@
|
|
|
1
|
-
export {
|
|
2
|
-
|
|
1
|
+
export class LanguageLoaderBase {
|
|
2
|
+
}
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFuZ3VhZ2UuaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS9zcmMvbGliL2xhbmd1YWdlL3NoYXJlZC9sYW5ndWFnZS5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBT0EsTUFBTSxPQUFnQixrQkFBa0I7Q0FHdkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUcmFuc2xhdGVMb2FkZXIgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBMYW5ndWFnZU9wdGlvbnMge1xyXG4gIHByZWZpeD86IHN0cmluZyB8IHN0cmluZ1tdO1xyXG59XHJcblxyXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgTGFuZ3VhZ2VMb2FkZXJCYXNlIGltcGxlbWVudHMgVHJhbnNsYXRlTG9hZGVyIHtcclxuICBhYnN0cmFjdCBpc0xvYWRlZCQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XHJcbiAgYWJzdHJhY3QgZ2V0VHJhbnNsYXRpb24obGFuZzogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+O1xyXG59XHJcbiJdfQ==
|
|
@@ -1,31 +1,38 @@
|
|
|
1
1
|
import { HttpClient } from '@angular/common/http';
|
|
2
2
|
import { ObjectUtils } from '@igo2/utils';
|
|
3
|
-
import { forkJoin, map } from 'rxjs';
|
|
3
|
+
import { BehaviorSubject, first, forkJoin, map, switchMap, tap } from 'rxjs';
|
|
4
4
|
export class LanguageLoader {
|
|
5
|
+
configService;
|
|
5
6
|
prefix;
|
|
6
7
|
suffix;
|
|
7
|
-
config;
|
|
8
8
|
httpClient;
|
|
9
|
-
|
|
9
|
+
_isLoaded$ = new BehaviorSubject(null);
|
|
10
|
+
isLoaded$ = this._isLoaded$.asObservable();
|
|
11
|
+
constructor(handler, configService, prefix, suffix = '.json') {
|
|
12
|
+
this.configService = configService;
|
|
10
13
|
this.prefix = prefix;
|
|
11
14
|
this.suffix = suffix;
|
|
12
|
-
this.config = config;
|
|
13
15
|
this.httpClient = new HttpClient(handler);
|
|
14
16
|
}
|
|
15
17
|
getTranslation(lang) {
|
|
16
18
|
const igoLocale$ = this.httpClient.get(`locale/libs_locale/${lang}.json`);
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
19
|
+
return this.configService.isLoaded$.pipe(first((isLoaded) => isLoaded), switchMap(() => {
|
|
20
|
+
if (this.configService && !this.prefix) {
|
|
21
|
+
const prefix = this.configService.getConfig('language.prefix');
|
|
22
|
+
this.prefix = !prefix || Array.isArray(prefix) ? prefix : [prefix];
|
|
23
|
+
}
|
|
24
|
+
if (!this.prefix || this.prefix.length === 0) {
|
|
25
|
+
this._isLoaded$.next(true);
|
|
26
|
+
return igoLocale$;
|
|
27
|
+
}
|
|
28
|
+
const appLocale$ = this.prefix.map((prefix) => this.httpClient.get(`${prefix}${lang}${this.suffix}`));
|
|
29
|
+
const locale$ = forkJoin([igoLocale$, ...appLocale$]);
|
|
30
|
+
return locale$.pipe(map((translations) => {
|
|
31
|
+
return translations.reduce((acc, current) => ObjectUtils.mergeDeep(acc, current), {});
|
|
32
|
+
}), tap(() => {
|
|
33
|
+
this._isLoaded$.next(true);
|
|
34
|
+
}));
|
|
28
35
|
}));
|
|
29
36
|
}
|
|
30
37
|
}
|
|
31
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
38
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFuZ3VhZ2UubG9hZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS9zcmMvbGliL2xhbmd1YWdlL3NoYXJlZC9sYW5ndWFnZS5sb2FkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFlLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRS9ELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFMUMsT0FBTyxFQUFFLGVBQWUsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBSzdFLE1BQU0sT0FBTyxjQUFjO0lBUWY7SUFDQTtJQUNBO0lBVEYsVUFBVSxDQUFhO0lBRXZCLFVBQVUsR0FBRyxJQUFJLGVBQWUsQ0FBVSxJQUFJLENBQUMsQ0FBQztJQUN4RCxTQUFTLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUUzQyxZQUNFLE9BQW9CLEVBQ1osYUFBNEIsRUFDNUIsTUFBMEIsRUFDMUIsU0FBaUIsT0FBTztRQUZ4QixrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUM1QixXQUFNLEdBQU4sTUFBTSxDQUFvQjtRQUMxQixXQUFNLEdBQU4sTUFBTSxDQUFrQjtRQUVoQyxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQzVDLENBQUM7SUFFTSxjQUFjLENBQUMsSUFBWTtRQUNoQyxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxzQkFBc0IsSUFBSSxPQUFPLENBQUMsQ0FBQztRQUMxRSxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLElBQUksQ0FDdEMsS0FBSyxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxRQUFRLENBQUMsRUFDN0IsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUNiLElBQUksSUFBSSxDQUFDLGFBQWEsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztnQkFDdkMsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsaUJBQWlCLENBQUMsQ0FBQztnQkFDL0QsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLE1BQU0sSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDckUsQ0FBQztZQUVELElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDO2dCQUM3QyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDM0IsT0FBTyxVQUFVLENBQUM7WUFDcEIsQ0FBQztZQUVELE1BQU0sVUFBVSxHQUFJLElBQUksQ0FBQyxNQUFtQixDQUFDLEdBQUcsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQzFELElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLEdBQUcsTUFBTSxHQUFHLElBQUksR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FDdEQsQ0FBQztZQUVGLE1BQU0sT0FBTyxHQUFHLFFBQVEsQ0FBQyxDQUFDLFVBQVUsRUFBRSxHQUFHLFVBQVUsQ0FBQyxDQUFDLENBQUM7WUFFdEQsT0FBTyxPQUFPLENBQUMsSUFBSSxDQUNqQixHQUFHLENBQUMsQ0FBQyxZQUFZLEVBQUUsRUFBRTtnQkFDbkIsT0FBTyxZQUFZLENBQUMsTUFBTSxDQUN4QixDQUFDLEdBQUcsRUFBRSxPQUFPLEVBQUUsRUFBRSxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLE9BQU8sQ0FBQyxFQUNyRCxFQUFFLENBQ0gsQ0FBQztZQUNKLENBQUMsQ0FBQyxFQUNGLEdBQUcsQ0FBQyxHQUFHLEVBQUU7Z0JBQ1AsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDN0IsQ0FBQyxDQUFDLENBQ0gsQ0FBQztRQUNKLENBQUMsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQmFja2VuZCwgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuXHJcbmltcG9ydCB7IE9iamVjdFV0aWxzIH0gZnJvbSAnQGlnbzIvdXRpbHMnO1xyXG5cclxuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBmaXJzdCwgZm9ya0pvaW4sIG1hcCwgc3dpdGNoTWFwLCB0YXAgfSBmcm9tICdyeGpzJztcclxuXHJcbmltcG9ydCB7IENvbmZpZ1NlcnZpY2UgfSBmcm9tICcuLi8uLi9jb25maWcvY29uZmlnLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBMYW5ndWFnZUxvYWRlckJhc2UgfSBmcm9tICcuL2xhbmd1YWdlLmludGVyZmFjZSc7XHJcblxyXG5leHBvcnQgY2xhc3MgTGFuZ3VhZ2VMb2FkZXIgaW1wbGVtZW50cyBMYW5ndWFnZUxvYWRlckJhc2Uge1xyXG4gIHByaXZhdGUgaHR0cENsaWVudDogSHR0cENsaWVudDtcclxuXHJcbiAgcHJpdmF0ZSBfaXNMb2FkZWQkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihudWxsKTtcclxuICBpc0xvYWRlZCQgPSB0aGlzLl9pc0xvYWRlZCQuYXNPYnNlcnZhYmxlKCk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgaGFuZGxlcjogSHR0cEJhY2tlbmQsXHJcbiAgICBwcml2YXRlIGNvbmZpZ1NlcnZpY2U6IENvbmZpZ1NlcnZpY2UsXHJcbiAgICBwcml2YXRlIHByZWZpeD86IHN0cmluZyB8IHN0cmluZ1tdLFxyXG4gICAgcHJpdmF0ZSBzdWZmaXg6IHN0cmluZyA9ICcuanNvbidcclxuICApIHtcclxuICAgIHRoaXMuaHR0cENsaWVudCA9IG5ldyBIdHRwQ2xpZW50KGhhbmRsZXIpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldFRyYW5zbGF0aW9uKGxhbmc6IHN0cmluZyk6IGFueSB7XHJcbiAgICBjb25zdCBpZ29Mb2NhbGUkID0gdGhpcy5odHRwQ2xpZW50LmdldChgbG9jYWxlL2xpYnNfbG9jYWxlLyR7bGFuZ30uanNvbmApO1xyXG4gICAgcmV0dXJuIHRoaXMuY29uZmlnU2VydmljZS5pc0xvYWRlZCQucGlwZShcclxuICAgICAgZmlyc3QoKGlzTG9hZGVkKSA9PiBpc0xvYWRlZCksXHJcbiAgICAgIHN3aXRjaE1hcCgoKSA9PiB7XHJcbiAgICAgICAgaWYgKHRoaXMuY29uZmlnU2VydmljZSAmJiAhdGhpcy5wcmVmaXgpIHtcclxuICAgICAgICAgIGNvbnN0IHByZWZpeCA9IHRoaXMuY29uZmlnU2VydmljZS5nZXRDb25maWcoJ2xhbmd1YWdlLnByZWZpeCcpO1xyXG4gICAgICAgICAgdGhpcy5wcmVmaXggPSAhcHJlZml4IHx8IEFycmF5LmlzQXJyYXkocHJlZml4KSA/IHByZWZpeCA6IFtwcmVmaXhdO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKCF0aGlzLnByZWZpeCB8fCB0aGlzLnByZWZpeC5sZW5ndGggPT09IDApIHtcclxuICAgICAgICAgIHRoaXMuX2lzTG9hZGVkJC5uZXh0KHRydWUpO1xyXG4gICAgICAgICAgcmV0dXJuIGlnb0xvY2FsZSQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBjb25zdCBhcHBMb2NhbGUkID0gKHRoaXMucHJlZml4IGFzIHN0cmluZ1tdKS5tYXAoKHByZWZpeCkgPT5cclxuICAgICAgICAgIHRoaXMuaHR0cENsaWVudC5nZXQoYCR7cHJlZml4fSR7bGFuZ30ke3RoaXMuc3VmZml4fWApXHJcbiAgICAgICAgKTtcclxuXHJcbiAgICAgICAgY29uc3QgbG9jYWxlJCA9IGZvcmtKb2luKFtpZ29Mb2NhbGUkLCAuLi5hcHBMb2NhbGUkXSk7XHJcblxyXG4gICAgICAgIHJldHVybiBsb2NhbGUkLnBpcGUoXHJcbiAgICAgICAgICBtYXAoKHRyYW5zbGF0aW9ucykgPT4ge1xyXG4gICAgICAgICAgICByZXR1cm4gdHJhbnNsYXRpb25zLnJlZHVjZShcclxuICAgICAgICAgICAgICAoYWNjLCBjdXJyZW50KSA9PiBPYmplY3RVdGlscy5tZXJnZURlZXAoYWNjLCBjdXJyZW50KSxcclxuICAgICAgICAgICAgICB7fVxyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgICAgfSksXHJcbiAgICAgICAgICB0YXAoKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLl9pc0xvYWRlZCQubmV4dCh0cnVlKTtcclxuICAgICAgICAgIH0pXHJcbiAgICAgICAgKTtcclxuICAgICAgfSlcclxuICAgICk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -1,22 +1,41 @@
|
|
|
1
1
|
import { HttpBackend } from '@angular/common/http';
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
2
|
+
import { APP_INITIALIZER, importProvidersFrom, makeEnvironmentProviders } from '@angular/core';
|
|
3
|
+
import { MissingTranslationHandler, TranslateLoader, TranslateModule } from '@ngx-translate/core';
|
|
4
|
+
import { first } from 'rxjs';
|
|
5
|
+
import { ConfigService } from '../../config';
|
|
4
6
|
import { LanguageLoader } from './language.loader';
|
|
5
|
-
|
|
6
|
-
|
|
7
|
+
import { LanguageService } from './language.service';
|
|
8
|
+
import { IgoMissingTranslationHandler } from './missing-translation.guard';
|
|
9
|
+
/**
|
|
10
|
+
* Make sure you only call this method in the root module of your application, most of the time called AppModule.
|
|
11
|
+
*/
|
|
12
|
+
export function provideRootTranslation(loader) {
|
|
13
|
+
return makeEnvironmentProviders([
|
|
14
|
+
importProvidersFrom(TranslateModule.forRoot(setTranslationConfig(loader))),
|
|
15
|
+
{
|
|
16
|
+
provide: APP_INITIALIZER,
|
|
17
|
+
useFactory: (languageService) => () => {
|
|
18
|
+
return languageService.translate.currentLoader.isLoaded$?.pipe(first((isLoaded) => isLoaded === true));
|
|
19
|
+
},
|
|
20
|
+
deps: [LanguageService],
|
|
21
|
+
multi: true
|
|
22
|
+
}
|
|
23
|
+
]);
|
|
7
24
|
}
|
|
8
|
-
export
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
25
|
+
export const setTranslationConfig = (loader) => ({
|
|
26
|
+
defaultLanguage: 'fr',
|
|
27
|
+
loader: loader ?? DEFAULT_LANGUAGE_LOADER,
|
|
28
|
+
missingTranslationHandler: {
|
|
29
|
+
provide: MissingTranslationHandler,
|
|
30
|
+
useClass: IgoMissingTranslationHandler
|
|
31
|
+
}
|
|
32
|
+
});
|
|
33
|
+
export const DEFAULT_LANGUAGE_LOADER = {
|
|
34
|
+
provide: TranslateLoader,
|
|
35
|
+
useFactory: defaultLanguageLoader,
|
|
36
|
+
deps: [HttpBackend, ConfigService]
|
|
37
|
+
};
|
|
38
|
+
function defaultLanguageLoader(http, config) {
|
|
39
|
+
return new LanguageLoader(http, config, undefined, undefined);
|
|
14
40
|
}
|
|
15
|
-
|
|
16
|
-
return {
|
|
17
|
-
provide: TranslateLoader,
|
|
18
|
-
useFactory: loader || defaultLanguageLoader,
|
|
19
|
-
deps: [HttpBackend, ConfigService]
|
|
20
|
-
};
|
|
21
|
-
}
|
|
22
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFuZ3VhZ2UucHJvdmlkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL3NyYy9saWIvbGFuZ3VhZ2Uvc2hhcmVkL2xhbmd1YWdlLnByb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUVuRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFdEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzVELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUVuRCxNQUFNLFVBQVUscUJBQXFCLENBQ25DLElBQWlCLEVBQ2pCLE1BQXNCO0lBRXRCLE9BQU8sSUFBSSxjQUFjLENBQUMsSUFBSSxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsTUFBTSxDQUFDLENBQUM7QUFDaEUsQ0FBQztBQUVELE1BQU0sVUFBVSxxQkFBcUIsQ0FBQyxNQUFPO0lBQzNDLE9BQU87UUFDTCxPQUFPLEVBQUUsZUFBZTtRQUN4QixVQUFVLEVBQUUsTUFBTSxJQUFJLHFCQUFxQjtRQUMzQyxJQUFJLEVBQUUsQ0FBQyxXQUFXLENBQUM7S0FDcEIsQ0FBQztBQUNKLENBQUM7QUFFRCxNQUFNLFVBQVUsNEJBQTRCLENBQUMsTUFBTztJQUNsRCxPQUFPO1FBQ0wsT0FBTyxFQUFFLGVBQWU7UUFDeEIsVUFBVSxFQUFFLE1BQU0sSUFBSSxxQkFBcUI7UUFDM0MsSUFBSSxFQUFFLENBQUMsV0FBVyxFQUFFLGFBQWEsQ0FBQztLQUNuQyxDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBCYWNrZW5kIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5cclxuaW1wb3J0IHsgVHJhbnNsYXRlTG9hZGVyIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XHJcblxyXG5pbXBvcnQgeyBDb25maWdTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY29uZmlnL2NvbmZpZy5zZXJ2aWNlJztcclxuaW1wb3J0IHsgTGFuZ3VhZ2VMb2FkZXIgfSBmcm9tICcuL2xhbmd1YWdlLmxvYWRlcic7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gZGVmYXVsdExhbmd1YWdlTG9hZGVyKFxyXG4gIGh0dHA6IEh0dHBCYWNrZW5kLFxyXG4gIGNvbmZpZz86IENvbmZpZ1NlcnZpY2VcclxuKSB7XHJcbiAgcmV0dXJuIG5ldyBMYW5ndWFnZUxvYWRlcihodHRwLCB1bmRlZmluZWQsIHVuZGVmaW5lZCwgY29uZmlnKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHByb3ZpZGVMYW5ndWFnZUxvYWRlcihsb2FkZXI/KSB7XHJcbiAgcmV0dXJuIHtcclxuICAgIHByb3ZpZGU6IFRyYW5zbGF0ZUxvYWRlcixcclxuICAgIHVzZUZhY3Rvcnk6IGxvYWRlciB8fCBkZWZhdWx0TGFuZ3VhZ2VMb2FkZXIsXHJcbiAgICBkZXBzOiBbSHR0cEJhY2tlbmRdXHJcbiAgfTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHByb3ZpZGVEZWZhdWx0TGFuZ3VhZ2VMb2FkZXIobG9hZGVyPykge1xyXG4gIHJldHVybiB7XHJcbiAgICBwcm92aWRlOiBUcmFuc2xhdGVMb2FkZXIsXHJcbiAgICB1c2VGYWN0b3J5OiBsb2FkZXIgfHwgZGVmYXVsdExhbmd1YWdlTG9hZGVyLFxyXG4gICAgZGVwczogW0h0dHBCYWNrZW5kLCBDb25maWdTZXJ2aWNlXVxyXG4gIH07XHJcbn1cclxuIl19
|
|
41
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFuZ3VhZ2UucHJvdmlkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL3NyYy9saWIvbGFuZ3VhZ2Uvc2hhcmVkL2xhbmd1YWdlLnByb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNuRCxPQUFPLEVBQ0wsZUFBZSxFQUdmLG1CQUFtQixFQUNuQix3QkFBd0IsRUFDekIsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUNMLHlCQUF5QixFQUN6QixlQUFlLEVBQ2YsZUFBZSxFQUVoQixNQUFNLHFCQUFxQixDQUFDO0FBQzdCLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFN0IsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUU3QyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDbkQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3JELE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBRTNFOztHQUVHO0FBQ0gsTUFBTSxVQUFVLHNCQUFzQixDQUNwQyxNQUFpQjtJQUVqQixPQUFPLHdCQUF3QixDQUFDO1FBQzlCLG1CQUFtQixDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUMsb0JBQW9CLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztRQUMxRTtZQUNFLE9BQU8sRUFBRSxlQUFlO1lBQ3hCLFVBQVUsRUFBRSxDQUFDLGVBQWdDLEVBQUUsRUFBRSxDQUFDLEdBQUcsRUFBRTtnQkFDckQsT0FDRSxlQUFlLENBQUMsU0FBUyxDQUFDLGFBQzNCLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLFFBQVEsS0FBSyxJQUFJLENBQUMsQ0FBQyxDQUFDO1lBQzVELENBQUM7WUFDRCxJQUFJLEVBQUUsQ0FBQyxlQUFlLENBQUM7WUFDdkIsS0FBSyxFQUFFLElBQUk7U0FDWjtLQUNGLENBQUMsQ0FBQztBQUNMLENBQUM7QUFFRCxNQUFNLENBQUMsTUFBTSxvQkFBb0IsR0FBRyxDQUNsQyxNQUFpQixFQUNNLEVBQUUsQ0FBQyxDQUFDO0lBQzNCLGVBQWUsRUFBRSxJQUFJO0lBQ3JCLE1BQU0sRUFBRSxNQUFNLElBQUksdUJBQXVCO0lBQ3pDLHlCQUF5QixFQUFFO1FBQ3pCLE9BQU8sRUFBRSx5QkFBeUI7UUFDbEMsUUFBUSxFQUFFLDRCQUE0QjtLQUN2QztDQUNGLENBQUMsQ0FBQztBQUVILE1BQU0sQ0FBQyxNQUFNLHVCQUF1QixHQUFhO0lBQy9DLE9BQU8sRUFBRSxlQUFlO0lBQ3hCLFVBQVUsRUFBRSxxQkFBcUI7SUFDakMsSUFBSSxFQUFFLENBQUMsV0FBVyxFQUFFLGFBQWEsQ0FBQztDQUNuQyxDQUFDO0FBRUYsU0FBUyxxQkFBcUIsQ0FBQyxJQUFpQixFQUFFLE1BQXNCO0lBQ3RFLE9BQU8sSUFBSSxjQUFjLENBQUMsSUFBSSxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsU0FBUyxDQUFDLENBQUM7QUFDaEUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBCYWNrZW5kIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQge1xyXG4gIEFQUF9JTklUSUFMSVpFUixcclxuICBFbnZpcm9ubWVudFByb3ZpZGVycyxcclxuICBQcm92aWRlcixcclxuICBpbXBvcnRQcm92aWRlcnNGcm9tLFxyXG4gIG1ha2VFbnZpcm9ubWVudFByb3ZpZGVyc1xyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuaW1wb3J0IHtcclxuICBNaXNzaW5nVHJhbnNsYXRpb25IYW5kbGVyLFxyXG4gIFRyYW5zbGF0ZUxvYWRlcixcclxuICBUcmFuc2xhdGVNb2R1bGUsXHJcbiAgVHJhbnNsYXRlTW9kdWxlQ29uZmlnXHJcbn0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XHJcbmltcG9ydCB7IGZpcnN0IH0gZnJvbSAncnhqcyc7XHJcblxyXG5pbXBvcnQgeyBDb25maWdTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY29uZmlnJztcclxuaW1wb3J0IHsgTGFuZ3VhZ2VMb2FkZXJCYXNlIH0gZnJvbSAnLi9sYW5ndWFnZS5pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBMYW5ndWFnZUxvYWRlciB9IGZyb20gJy4vbGFuZ3VhZ2UubG9hZGVyJztcclxuaW1wb3J0IHsgTGFuZ3VhZ2VTZXJ2aWNlIH0gZnJvbSAnLi9sYW5ndWFnZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgSWdvTWlzc2luZ1RyYW5zbGF0aW9uSGFuZGxlciB9IGZyb20gJy4vbWlzc2luZy10cmFuc2xhdGlvbi5ndWFyZCc7XHJcblxyXG4vKipcclxuICogTWFrZSBzdXJlIHlvdSBvbmx5IGNhbGwgdGhpcyBtZXRob2QgaW4gdGhlIHJvb3QgbW9kdWxlIG9mIHlvdXIgYXBwbGljYXRpb24sIG1vc3Qgb2YgdGhlIHRpbWUgY2FsbGVkIEFwcE1vZHVsZS5cclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBwcm92aWRlUm9vdFRyYW5zbGF0aW9uKFxyXG4gIGxvYWRlcj86IFByb3ZpZGVyXHJcbik6IEVudmlyb25tZW50UHJvdmlkZXJzIHtcclxuICByZXR1cm4gbWFrZUVudmlyb25tZW50UHJvdmlkZXJzKFtcclxuICAgIGltcG9ydFByb3ZpZGVyc0Zyb20oVHJhbnNsYXRlTW9kdWxlLmZvclJvb3Qoc2V0VHJhbnNsYXRpb25Db25maWcobG9hZGVyKSkpLFxyXG4gICAge1xyXG4gICAgICBwcm92aWRlOiBBUFBfSU5JVElBTElaRVIsXHJcbiAgICAgIHVzZUZhY3Rvcnk6IChsYW5ndWFnZVNlcnZpY2U6IExhbmd1YWdlU2VydmljZSkgPT4gKCkgPT4ge1xyXG4gICAgICAgIHJldHVybiAoXHJcbiAgICAgICAgICBsYW5ndWFnZVNlcnZpY2UudHJhbnNsYXRlLmN1cnJlbnRMb2FkZXIgYXMgTGFuZ3VhZ2VMb2FkZXJCYXNlXHJcbiAgICAgICAgKS5pc0xvYWRlZCQ/LnBpcGUoZmlyc3QoKGlzTG9hZGVkKSA9PiBpc0xvYWRlZCA9PT0gdHJ1ZSkpO1xyXG4gICAgICB9LFxyXG4gICAgICBkZXBzOiBbTGFuZ3VhZ2VTZXJ2aWNlXSxcclxuICAgICAgbXVsdGk6IHRydWVcclxuICAgIH1cclxuICBdKTtcclxufVxyXG5cclxuZXhwb3J0IGNvbnN0IHNldFRyYW5zbGF0aW9uQ29uZmlnID0gKFxyXG4gIGxvYWRlcj86IFByb3ZpZGVyXHJcbik6IFRyYW5zbGF0ZU1vZHVsZUNvbmZpZyA9PiAoe1xyXG4gIGRlZmF1bHRMYW5ndWFnZTogJ2ZyJyxcclxuICBsb2FkZXI6IGxvYWRlciA/PyBERUZBVUxUX0xBTkdVQUdFX0xPQURFUixcclxuICBtaXNzaW5nVHJhbnNsYXRpb25IYW5kbGVyOiB7XHJcbiAgICBwcm92aWRlOiBNaXNzaW5nVHJhbnNsYXRpb25IYW5kbGVyLFxyXG4gICAgdXNlQ2xhc3M6IElnb01pc3NpbmdUcmFuc2xhdGlvbkhhbmRsZXJcclxuICB9XHJcbn0pO1xyXG5cclxuZXhwb3J0IGNvbnN0IERFRkFVTFRfTEFOR1VBR0VfTE9BREVSOiBQcm92aWRlciA9IHtcclxuICBwcm92aWRlOiBUcmFuc2xhdGVMb2FkZXIsXHJcbiAgdXNlRmFjdG9yeTogZGVmYXVsdExhbmd1YWdlTG9hZGVyLFxyXG4gIGRlcHM6IFtIdHRwQmFja2VuZCwgQ29uZmlnU2VydmljZV1cclxufTtcclxuXHJcbmZ1bmN0aW9uIGRlZmF1bHRMYW5ndWFnZUxvYWRlcihodHRwOiBIdHRwQmFja2VuZCwgY29uZmlnPzogQ29uZmlnU2VydmljZSkge1xyXG4gIHJldHVybiBuZXcgTGFuZ3VhZ2VMb2FkZXIoaHR0cCwgY29uZmlnLCB1bmRlZmluZWQsIHVuZGVmaW5lZCk7XHJcbn1cclxuIl19
|
|
@@ -26,13 +26,13 @@ export class LanguageService {
|
|
|
26
26
|
this.language$.next(this.language);
|
|
27
27
|
});
|
|
28
28
|
}
|
|
29
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
30
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
29
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: LanguageService, deps: [{ token: i1.TranslateService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
30
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: LanguageService, providedIn: 'root' });
|
|
31
31
|
}
|
|
32
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
32
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: LanguageService, decorators: [{
|
|
33
33
|
type: Injectable,
|
|
34
34
|
args: [{
|
|
35
35
|
providedIn: 'root'
|
|
36
36
|
}]
|
|
37
|
-
}], ctorParameters:
|
|
38
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
37
|
+
}], ctorParameters: () => [{ type: i1.TranslateService }] });
|
|
38
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFuZ3VhZ2Uuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvc3JjL2xpYi9sYW5ndWFnZS9zaGFyZWQvbGFuZ3VhZ2Uuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7QUFLdEQsTUFBTSxPQUFPLGVBQWU7SUFJUDtJQUhYLFFBQVEsQ0FBUztJQUNoQixTQUFTLEdBQTRCLElBQUksZUFBZSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBRTdFLFlBQW1CLFNBQTJCO1FBQTNCLGNBQVMsR0FBVCxTQUFTLENBQWtCO1FBQzVDLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUNoRCxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDaEMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDcEMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDNUIsQ0FBQztJQUVNLFdBQVc7UUFDaEIsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0lBQzdELENBQUM7SUFFTSxXQUFXLENBQUMsUUFBZ0I7UUFDakMsSUFBSSxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztRQUMxRCxhQUFhLENBQUM7WUFDWixJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDO1lBQ2pDLElBQUksQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7U0FDekMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDaEIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3JDLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzt1R0F2QlUsZUFBZTsyR0FBZixlQUFlLGNBRmQsTUFBTTs7MkZBRVAsZUFBZTtrQkFIM0IsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XHJcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgY29tYmluZUxhdGVzdCB9IGZyb20gJ3J4anMnO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgTGFuZ3VhZ2VTZXJ2aWNlIHtcclxuICBwcml2YXRlIGxhbmd1YWdlOiBzdHJpbmc7XHJcbiAgcmVhZG9ubHkgbGFuZ3VhZ2UkOiBCZWhhdmlvclN1YmplY3Q8c3RyaW5nPiA9IG5ldyBCZWhhdmlvclN1YmplY3QodW5kZWZpbmVkKTtcclxuXHJcbiAgY29uc3RydWN0b3IocHVibGljIHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSkge1xyXG4gICAgdGhpcy5sYW5ndWFnZSA9IHRoaXMudHJhbnNsYXRlLmdldEJyb3dzZXJMYW5nKCk7XHJcbiAgICBjb25zdCBsYW5nID0gdGhpcy5nZXRMYW5ndWFnZSgpO1xyXG4gICAgdGhpcy50cmFuc2xhdGUuc2V0RGVmYXVsdExhbmcobGFuZyk7XHJcbiAgICB0aGlzLmxhbmd1YWdlJC5uZXh0KGxhbmcpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldExhbmd1YWdlKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5sYW5ndWFnZS5tYXRjaCgvZW58ZnIvKSA/IHRoaXMubGFuZ3VhZ2UgOiAnZW4nO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHNldExhbmd1YWdlKGxhbmd1YWdlOiBzdHJpbmcpIHtcclxuICAgIHRoaXMubGFuZ3VhZ2UgPSBsYW5ndWFnZS5tYXRjaCgvZW58ZnIvKSA/IGxhbmd1YWdlIDogJ2VuJztcclxuICAgIGNvbWJpbmVMYXRlc3QoW1xyXG4gICAgICB0aGlzLnRyYW5zbGF0ZS51c2UodGhpcy5sYW5ndWFnZSksXHJcbiAgICAgIHRoaXMudHJhbnNsYXRlLnJlbG9hZExhbmcodGhpcy5sYW5ndWFnZSlcclxuICAgIF0pLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgIHRoaXMubGFuZ3VhZ2UkLm5leHQodGhpcy5sYW5ndWFnZSk7XHJcbiAgICB9KTtcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
export class IgoMissingTranslationHandler {
|
|
2
2
|
handle(params) {
|
|
3
3
|
if (!params.translateService.langs.length) {
|
|
4
|
-
const error = 'Translations are not yet loaded. \
|
|
4
|
+
const error = 'Translations are not yet loaded. \
|
|
5
5
|
Check that the LanguageService is injected.';
|
|
6
6
|
throw new Error(error);
|
|
7
7
|
}
|
|
@@ -13,4 +13,4 @@ export class IgoMissingTranslationHandler {
|
|
|
13
13
|
}
|
|
14
14
|
}
|
|
15
15
|
}
|
|
16
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlzc2luZy10cmFuc2xhdGlvbi5ndWFyZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvc3JjL2xpYi9sYW5ndWFnZS9zaGFyZWQvbWlzc2luZy10cmFuc2xhdGlvbi5ndWFyZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFLQSxNQUFNLE9BQU8sNEJBQTRCO0lBQ3ZDLE1BQU0sQ0FBQyxNQUF1QztRQUM1QyxJQUFJLENBQUMsTUFBTSxDQUFDLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUMxQyxNQUFNLEtBQUssR0FDVDtxREFDNkMsQ0FBQztZQUNoRCxNQUFNLElBQUksS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3pCLENBQUM7UUFFRCxJQUFJLE1BQU0sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxNQUFNLEVBQUUsQ0FBQztZQUN2QyxNQUFNLElBQUksS0FBSyxDQUFDLFlBQVksTUFBTSxDQUFDLEdBQUcsOEJBQThCLENBQUMsQ0FBQztRQUN4RSxDQUFDO2FBQU0sQ0FBQztZQUNOLE9BQU8sTUFBTSxDQUFDLEdBQUcsQ0FBQztRQUNwQixDQUFDO0lBQ0gsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBNaXNzaW5nVHJhbnNsYXRpb25IYW5kbGVyLFxyXG4gIE1pc3NpbmdUcmFuc2xhdGlvbkhhbmRsZXJQYXJhbXNcclxufSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcclxuXHJcbmV4cG9ydCBjbGFzcyBJZ29NaXNzaW5nVHJhbnNsYXRpb25IYW5kbGVyIGltcGxlbWVudHMgTWlzc2luZ1RyYW5zbGF0aW9uSGFuZGxlciB7XHJcbiAgaGFuZGxlKHBhcmFtczogTWlzc2luZ1RyYW5zbGF0aW9uSGFuZGxlclBhcmFtcykge1xyXG4gICAgaWYgKCFwYXJhbXMudHJhbnNsYXRlU2VydmljZS5sYW5ncy5sZW5ndGgpIHtcclxuICAgICAgY29uc3QgZXJyb3IgPVxyXG4gICAgICAgICdUcmFuc2xhdGlvbnMgYXJlIG5vdCB5ZXQgbG9hZGVkLiBcXFxyXG4gICAgICAgICBDaGVjayB0aGF0IHRoZSBMYW5ndWFnZVNlcnZpY2UgaXMgaW5qZWN0ZWQuJztcclxuICAgICAgdGhyb3cgbmV3IEVycm9yKGVycm9yKTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAocGFyYW1zLmtleS5zdWJzdHIoMCwgNCkgPT09ICdpZ28uJykge1xyXG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYFRoZSBLZXkgXCIke3BhcmFtcy5rZXl9XCIgaXMgbWlzc2luZyBpbiBsb2NhbGUgZmlsZS5gKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiBwYXJhbXMua2V5O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export * from './media.enum';
|
|
2
2
|
export * from './media.service';
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL3NyYy9saWIvbWVkaWEvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxpQkFBaUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbWVkaWEuZW51bSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbWVkaWEuc2VydmljZSc7XHJcbiJdfQ==
|
|
@@ -9,4 +9,4 @@ export var MediaOrientation;
|
|
|
9
9
|
MediaOrientation["Portrait"] = "portrait";
|
|
10
10
|
MediaOrientation["Landscape"] = "landscape";
|
|
11
11
|
})(MediaOrientation || (MediaOrientation = {}));
|
|
12
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
12
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVkaWEuZW51bS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvc3JjL2xpYi9tZWRpYS9tZWRpYS5lbnVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBTixJQUFZLEtBSVg7QUFKRCxXQUFZLEtBQUs7SUFDZiwwQkFBaUIsQ0FBQTtJQUNqQiwwQkFBaUIsQ0FBQTtJQUNqQiw0QkFBbUIsQ0FBQTtBQUNyQixDQUFDLEVBSlcsS0FBSyxLQUFMLEtBQUssUUFJaEI7QUFFRCxNQUFNLENBQU4sSUFBWSxnQkFHWDtBQUhELFdBQVksZ0JBQWdCO0lBQzFCLHlDQUFxQixDQUFBO0lBQ3JCLDJDQUF1QixDQUFBO0FBQ3pCLENBQUMsRUFIVyxnQkFBZ0IsS0FBaEIsZ0JBQWdCLFFBRzNCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGVudW0gTWVkaWEge1xyXG4gIE1vYmlsZSA9ICdtb2JpbGUnLFxyXG4gIFRhYmxldCA9ICd0YWJsZXQnLFxyXG4gIERlc2t0b3AgPSAnZGVza3RvcCdcclxufVxyXG5cclxuZXhwb3J0IGVudW0gTWVkaWFPcmllbnRhdGlvbiB7XHJcbiAgUG9ydHJhaXQgPSAncG9ydHJhaXQnLFxyXG4gIExhbmRzY2FwZSA9ICdsYW5kc2NhcGUnXHJcbn1cclxuIl19
|
|
@@ -70,13 +70,13 @@ export class MediaService {
|
|
|
70
70
|
const media = this.getMedia();
|
|
71
71
|
return media === 'desktop';
|
|
72
72
|
}
|
|
73
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
74
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
73
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: MediaService, deps: [{ token: i1.BreakpointObserver }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
74
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: MediaService, providedIn: 'root' });
|
|
75
75
|
}
|
|
76
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
76
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: MediaService, decorators: [{
|
|
77
77
|
type: Injectable,
|
|
78
78
|
args: [{
|
|
79
79
|
providedIn: 'root'
|
|
80
80
|
}]
|
|
81
|
-
}], ctorParameters:
|
|
82
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
81
|
+
}], ctorParameters: () => [{ type: i1.BreakpointObserver }] });
|
|
82
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVkaWEuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvc3JjL2xpYi9tZWRpYS9tZWRpYS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxXQUFXLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFdkMsT0FBTyxFQUFFLEtBQUssRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGNBQWMsQ0FBQzs7O0FBS3ZELE1BQU0sT0FBTyxZQUFZO0lBQ2hCLE1BQU0sR0FBRyxJQUFJLGVBQWUsQ0FBUSxTQUFTLENBQUMsQ0FBQztJQUMvQyxZQUFZLEdBQUcsSUFBSSxlQUFlLENBQW1CLFNBQVMsQ0FBQyxDQUFDO0lBRXZFLFlBQVksa0JBQXNDO1FBQ2hELGtCQUFrQjthQUNmLE9BQU8sQ0FBQyxDQUFDLFdBQVcsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO2FBQ3ZDLFNBQVMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO1lBQ2pCLElBQUksR0FBRyxDQUFDLE9BQU8sRUFBRSxDQUFDO2dCQUNoQixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7Z0JBQy9CLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQ3JELENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztRQUVMLGtCQUFrQjthQUNmLE9BQU8sQ0FBQyxDQUFDLFdBQVcsQ0FBQyxlQUFlLENBQUMsQ0FBQzthQUN0QyxTQUFTLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRTtZQUNqQixJQUFJLEdBQUcsQ0FBQyxPQUFPLEVBQUUsQ0FBQztnQkFDaEIs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QU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQnJlYWtwb2ludE9ic2VydmVyLCBCcmVha3BvaW50cyB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9sYXlvdXQnO1xyXG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QgfSBmcm9tICdyeGpzJztcclxuXHJcbmltcG9ydCB7IE1lZGlhLCBNZWRpYU9yaWVudGF0aW9uIH0gZnJvbSAnLi9tZWRpYS5lbnVtJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIE1lZGlhU2VydmljZSB7XHJcbiAgcHVibGljIG1lZGlhJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8TWVkaWE+KHVuZGVmaW5lZCk7XHJcbiAgcHVibGljIG9yaWVudGF0aW9uJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8TWVkaWFPcmllbnRhdGlvbj4odW5kZWZpbmVkKTtcclxuXHJcbiAgY29uc3RydWN0b3IoYnJlYWtwb2ludE9ic2VydmVyOiBCcmVha3BvaW50T2JzZXJ2ZXIpIHtcclxuICAgIGJyZWFrcG9pbnRPYnNlcnZlclxyXG4gICAgICAub2JzZXJ2ZShbQnJlYWtwb2ludHMuSGFuZHNldExhbmRzY2FwZV0pXHJcbiAgICAgIC5zdWJzY3JpYmUoKHJlcykgPT4ge1xyXG4gICAgICAgIGlmIChyZXMubWF0Y2hlcykge1xyXG4gICAgICAgICAgdGhpcy5tZWRpYSQubmV4dChNZWRpYS5Nb2JpbGUpO1xyXG4gICAgICAgICAgdGhpcy5vcmllbnRhdGlvbiQubmV4dChNZWRpYU9yaWVudGF0aW9uLkxhbmRzY2FwZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuXHJcbiAgICBicmVha3BvaW50T2JzZXJ2ZXJcclxuICAgICAgLm9ic2VydmUoW0JyZWFrcG9pbnRzLkhhbmRzZXRQb3J0cmFpdF0pXHJcbiAgICAgIC5zdWJzY3JpYmUoKHJlcykgPT4ge1xyXG4gICAgICAgIGlmIChyZXMubWF0Y2hlcykge1xyXG4gICAgICAgICAgdGhpcy5tZWRpYSQubmV4dChNZWRpYS5Nb2JpbGUpO1xyXG4gICAgICAgICAgdGhpcy5vcmllbnRhdGlvbiQubmV4dChNZWRpYU9yaWVudGF0aW9uLlBvcnRyYWl0KTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG5cclxuICAgIGJyZWFrcG9pbnRPYnNlcnZlclxyXG4gICAgICAub2JzZXJ2ZShbQnJlYWtwb2ludHMuVGFibGV0TGFuZHNjYXBlXSlcclxuICAgICAgLnN1YnNjcmliZSgocmVzKSA9PiB7XHJcbiAgICAgICAgaWYgKHJlcy5tYXRjaGVzKSB7XHJcbiAgICAgICAgICB0aGlzLm1lZGlhJC5uZXh0KE1lZGlhLlRhYmxldCk7XHJcbiAgICAgICAgICB0aGlzLm9yaWVudGF0aW9uJC5uZXh0KE1lZGlhT3JpZW50YXRpb24uTGFuZHNjYXBlKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG5cclxuICAgIGJyZWFrcG9pbnRPYnNlcnZlclxyXG4gICAgICAub2JzZXJ2ZShbQnJlYWtwb2ludHMuVGFibGV0UG9ydHJhaXRdKVxyXG4gICAgICAuc3Vic2NyaWJlKChyZXMpID0+IHtcclxuICAgICAgICBpZiAocmVzLm1hdGNoZXMpIHtcclxuICAgICAgICAgIHRoaXMubWVkaWEkLm5leHQoTWVkaWEuVGFibGV0KTtcclxuICAgICAgICAgIHRoaXMub3JpZW50YXRpb24kLm5leHQoTWVkaWFPcmllbnRhdGlvbi5Qb3J0cmFpdCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuXHJcbiAgICBicmVha3BvaW50T2JzZXJ2ZXIub2JzZXJ2ZShbQnJlYWtwb2ludHMuV2ViTGFuZHNjYXBlXSkuc3Vic2NyaWJlKChyZXMpID0+IHtcclxuICAgICAgaWYgKHJlcy5tYXRjaGVzKSB7XHJcbiAgICAgICAgdGhpcy5tZWRpYSQubmV4dChNZWRpYS5EZXNrdG9wKTtcclxuICAgICAgICB0aGlzLm9yaWVudGF0aW9uJC5uZXh0KE1lZGlhT3JpZW50YXRpb24uTGFuZHNjYXBlKTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcblxyXG4gICAgYnJlYWtwb2ludE9ic2VydmVyLm9ic2VydmUoW0JyZWFrcG9pbnRzLldlYlBvcnRyYWl0XSkuc3Vic2NyaWJlKChyZXMpID0+IHtcclxuICAgICAgaWYgKHJlcy5tYXRjaGVzKSB7XHJcbiAgICAgICAgdGhpcy5tZWRpYSQubmV4dChNZWRpYS5EZXNrdG9wKTtcclxuICAgICAgICB0aGlzLm9yaWVudGF0aW9uJC5uZXh0KE1lZGlhT3JpZW50YXRpb24uUG9ydHJhaXQpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIGdldE1lZGlhKCk6IE1lZGlhIHtcclxuICAgIHJldHVybiB0aGlzLm1lZGlhJC52YWx1ZTtcclxuICB9XHJcblxyXG4gIGdldE9yaWVudGF0aW9uKCk6IE1lZGlhT3JpZW50YXRpb24ge1xyXG4gICAgcmV0dXJuIHRoaXMub3JpZW50YXRpb24kLnZhbHVlO1xyXG4gIH1cclxuXHJcbiAgaXNUb3VjaFNjcmVlbigpOiBib29sZWFuIHtcclxuICAgIHJldHVybiAnb250b3VjaHN0YXJ0JyBpbiBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQgPyB0cnVlIDogZmFsc2U7XHJcbiAgfVxyXG5cclxuICBpc01vYmlsZSgpOiBib29sZWFuIHtcclxuICAgIGNvbnN0IG1lZGlhID0gdGhpcy5nZXRNZWRpYSgpO1xyXG4gICAgcmV0dXJuIG1lZGlhID09PSAnbW9iaWxlJztcclxuICB9XHJcblxyXG4gIGlzRGVza3RvcCgpOiBib29sZWFuIHtcclxuICAgIGNvbnN0IG1lZGlhID0gdGhpcy5nZXRNZWRpYSgpO1xyXG4gICAgcmV0dXJuIG1lZGlhID09PSAnZGVza3RvcCc7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export * from './shared';
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL3NyYy9saWIvbWVzc2FnZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLFVBQVUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vc2hhcmVkJztcclxuIl19
|
|
@@ -10,9 +10,9 @@ export class IgoMessageModule {
|
|
|
10
10
|
providers: []
|
|
11
11
|
};
|
|
12
12
|
}
|
|
13
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
14
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
15
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
13
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: IgoMessageModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
14
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.2.1", ngImport: i0, type: IgoMessageModule, imports: [CommonModule, i1.ToastrModule] });
|
|
15
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: IgoMessageModule, imports: [CommonModule,
|
|
16
16
|
ToastrModule.forRoot({
|
|
17
17
|
positionClass: 'toast-bottom-right',
|
|
18
18
|
timeOut: 10000,
|
|
@@ -30,7 +30,7 @@ export class IgoMessageModule {
|
|
|
30
30
|
includeTitleDuplicates: true
|
|
31
31
|
})] });
|
|
32
32
|
}
|
|
33
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
33
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: IgoMessageModule, decorators: [{
|
|
34
34
|
type: NgModule,
|
|
35
35
|
args: [{
|
|
36
36
|
imports: [
|
|
@@ -56,4 +56,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
56
56
|
exports: []
|
|
57
57
|
}]
|
|
58
58
|
}] });
|
|
59
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
59
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVzc2FnZS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL3NyYy9saWIvbWVzc2FnZS9tZXNzYWdlLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUF1QixRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFOUQsT0FBTyxFQUFnQixZQUFZLEVBQUUsTUFBTSxZQUFZLENBQUM7OztBQXlCeEQsTUFBTSxPQUFPLGdCQUFnQjtJQUMzQixNQUFNLENBQUMsT0FBTztRQUNaLE9BQU87WUFDTCxRQUFRLEVBQUUsZ0JBQWdCO1lBQzFCLFNBQVMsRUFBRSxFQUFFO1NBQ2QsQ0FBQztJQUNKLENBQUM7dUdBTlUsZ0JBQWdCO3dHQUFoQixnQkFBZ0IsWUFyQnpCLFlBQVk7d0dBcUJILGdCQUFnQixZQXJCekIsWUFBWTtZQUNaLFlBQVksQ0FBQyxPQUFPLENBQUM7Z0JBQ25CLGFBQWEsRUFBRSxvQkFBb0I7Z0JBQ25DLE9BQU8sRUFBRSxLQUFLO2dCQUNkLGVBQWUsRUFBRSxLQUFLO2dCQUN0QixVQUFVLEVBQUUsZ0JBQWdCO2dCQUM1QixZQUFZLEVBQUUsZUFBZTtnQkFDN0IsV0FBVyxFQUFFLElBQUk7Z0JBQ2pCLFdBQVcsRUFBRSxJQUFJO2dCQUNqQixVQUFVLEVBQUUsSUFBSTtnQkFDaEIsWUFBWSxFQUFFLElBQUk7Z0JBQ2xCLFNBQVMsRUFBRSxDQUFDO2dCQUNaLGlCQUFpQixFQUFFLElBQUk7Z0JBQ3ZCLHVCQUF1QixFQUFFLElBQUk7Z0JBQzdCLGVBQWUsRUFBRSxLQUFLO2dCQUN0QixzQkFBc0IsRUFBRSxJQUFJO2FBQ2IsQ0FBQzs7MkZBS1QsZ0JBQWdCO2tCQXZCNUIsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFDWixZQUFZLENBQUMsT0FBTyxDQUFDOzRCQUNuQixhQUFhLEVBQUUsb0JBQW9COzRCQUNuQyxPQUFPLEVBQUUsS0FBSzs0QkFDZCxlQUFlLEVBQUUsS0FBSzs0QkFDdEIsVUFBVSxFQUFFLGdCQUFnQjs0QkFDNUIsWUFBWSxFQUFFLGVBQWU7NEJBQzdCLFdBQVcsRUFBRSxJQUFJOzRCQUNqQixXQUFXLEVBQUUsSUFBSTs0QkFDakIsVUFBVSxFQUFFLElBQUk7NEJBQ2hCLFlBQVksRUFBRSxJQUFJOzRCQUNsQixTQUFTLEVBQUUsQ0FBQzs0QkFDWixpQkFBaUIsRUFBRSxJQUFJOzRCQUN2Qix1QkFBdUIsRUFBRSxJQUFJOzRCQUM3QixlQUFlLEVBQUUsS0FBSzs0QkFDdEIsc0JBQXNCLEVBQUUsSUFBSTt5QkFDYixDQUFDO3FCQUNuQjtvQkFDRCxZQUFZLEVBQUUsRUFBRTtvQkFDaEIsT0FBTyxFQUFFLEVBQUU7aUJBQ1oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBNb2R1bGVXaXRoUHJvdmlkZXJzLCBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuaW1wb3J0IHsgR2xvYmFsQ29uZmlnLCBUb2FzdHJNb2R1bGUgfSBmcm9tICduZ3gtdG9hc3RyJztcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgaW1wb3J0czogW1xyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgVG9hc3RyTW9kdWxlLmZvclJvb3Qoe1xyXG4gICAgICBwb3NpdGlvbkNsYXNzOiAndG9hc3QtYm90dG9tLXJpZ2h0JyxcclxuICAgICAgdGltZU91dDogMTAwMDAsXHJcbiAgICAgIGV4dGVuZGVkVGltZU91dDogMTAwMDAsXHJcbiAgICAgIHRpdGxlQ2xhc3M6ICdtYXQtc3VidGl0bGUtMicsXHJcbiAgICAgIG1lc3NhZ2VDbGFzczogJ3RvYXN0LW1lc3NhZ2UnLFxyXG4gICAgICBjbG9zZUJ1dHRvbjogdHJ1ZSxcclxuICAgICAgcHJvZ3Jlc3NCYXI6IHRydWUsXHJcbiAgICAgIGVuYWJsZUh0bWw6IHRydWUsXHJcbiAgICAgIHRhcFRvRGlzbWlzczogdHJ1ZSxcclxuICAgICAgbWF4T3BlbmVkOiA0LFxyXG4gICAgICBwcmV2ZW50RHVwbGljYXRlczogdHJ1ZSxcclxuICAgICAgcmVzZXRUaW1lb3V0T25EdXBsaWNhdGU6IHRydWUsXHJcbiAgICAgIGNvdW50RHVwbGljYXRlczogZmFsc2UsXHJcbiAgICAgIGluY2x1ZGVUaXRsZUR1cGxpY2F0ZXM6IHRydWVcclxuICAgIH0gYXMgR2xvYmFsQ29uZmlnKVxyXG4gIF0sXHJcbiAgZGVjbGFyYXRpb25zOiBbXSxcclxuICBleHBvcnRzOiBbXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgSWdvTWVzc2FnZU1vZHVsZSB7XHJcbiAgc3RhdGljIGZvclJvb3QoKTogTW9kdWxlV2l0aFByb3ZpZGVyczxJZ29NZXNzYWdlTW9kdWxlPiB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICBuZ01vZHVsZTogSWdvTWVzc2FnZU1vZHVsZSxcclxuICAgICAgcHJvdmlkZXJzOiBbXVxyXG4gICAgfTtcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -7,4 +7,4 @@ export var MessageType;
|
|
|
7
7
|
MessageType["SUCCESS"] = "success";
|
|
8
8
|
MessageType["SHOW"] = "show";
|
|
9
9
|
})(MessageType || (MessageType = {}));
|
|
10
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
10
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVzc2FnZS5lbnVtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS9zcmMvbGliL21lc3NhZ2Uvc2hhcmVkL21lc3NhZ2UuZW51bS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQU4sSUFBWSxXQU9YO0FBUEQsV0FBWSxXQUFXO0lBQ3JCLDhCQUFlLENBQUE7SUFDZixnQ0FBaUIsQ0FBQTtJQUNqQixrQ0FBbUIsQ0FBQTtJQUNuQiw0QkFBYSxDQUFBO0lBQ2Isa0NBQW1CLENBQUE7SUFDbkIsNEJBQWEsQ0FBQTtBQUNmLENBQUMsRUFQVyxXQUFXLEtBQVgsV0FBVyxRQU90QiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIE1lc3NhZ2VUeXBlIHtcclxuICBFUlJPUiA9ICdlcnJvcicsXHJcbiAgQUxFUlQgPSAnd2FybmluZycsIC8vIHRvZG8gZGVsZXRlICh0cmFuc2l0aW9uIHRvIG5neC10b2FzdHIpXHJcbiAgV0FSTklORyA9ICd3YXJuaW5nJyxcclxuICBJTkZPID0gJ2luZm8nLFxyXG4gIFNVQ0NFU1MgPSAnc3VjY2VzcycsXHJcbiAgU0hPVyA9ICdzaG93J1xyXG59XHJcbiJdfQ==
|
|
@@ -90,7 +90,8 @@ export class MessageService {
|
|
|
90
90
|
if (currentDate > message.options.from &&
|
|
91
91
|
currentDate < message.options.to) {
|
|
92
92
|
if (message.showIcon === false) {
|
|
93
|
-
this.toastr.toastrConfig.iconClasses[messageType] =
|
|
93
|
+
this.toastr.toastrConfig.iconClasses[messageType] =
|
|
94
|
+
`toast-${messageType} toast-no-icon`;
|
|
94
95
|
}
|
|
95
96
|
message = this.handleTemplate(message);
|
|
96
97
|
if (message.text) {
|
|
@@ -209,16 +210,16 @@ export class MessageService {
|
|
|
209
210
|
message.title = undefined;
|
|
210
211
|
return message;
|
|
211
212
|
}
|
|
212
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
213
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
213
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: MessageService, deps: [{ token: Injector }, { token: i1.ConfigService }, { token: i2.LanguageService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
214
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: MessageService, providedIn: 'root' });
|
|
214
215
|
}
|
|
215
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
216
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: MessageService, decorators: [{
|
|
216
217
|
type: Injectable,
|
|
217
218
|
args: [{
|
|
218
219
|
providedIn: 'root'
|
|
219
220
|
}]
|
|
220
|
-
}], ctorParameters:
|
|
221
|
+
}], ctorParameters: () => [{ type: i0.Injector, decorators: [{
|
|
221
222
|
type: Inject,
|
|
222
223
|
args: [Injector]
|
|
223
|
-
}] }, { type: i1.ConfigService }, { type: i2.LanguageService }]
|
|
224
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVzc2FnZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS9zcmMvbGliL21lc3NhZ2Uvc2hhcmVkL21lc3NhZ2Uuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFN0QsT0FBTyxFQUFpQyxhQUFhLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDMUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxRQUFRLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDakQsT0FBTyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVyRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDNUQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7OztBQWE3QyxNQUFNLE9BQU8sY0FBYztJQU1HO0lBQ2xCO0lBQ0E7SUFQSCxTQUFTLEdBQUcsSUFBSSxlQUFlLENBQVksRUFBRSxDQUFDLENBQUM7SUFDOUMsT0FBTyxDQUFrQjtJQUN6Qix5QkFBeUIsR0FBK0IsRUFBRSxDQUFDO0lBRW5FLFlBQzRCLFFBQWtCLEVBQ3BDLGFBQTRCLEVBQzVCLGVBQWdDO1FBRmQsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQUNwQyxrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUM1QixvQkFBZSxHQUFmLGVBQWUsQ0FBaUI7UUFFeEMsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUN2RCxJQUFJLENBQUMsZUFBZSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENB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LENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ3pCLENBQUM7SUFFRCxvQkFBb0I7UUFDbEIsS0FBSyxNQUFNLElBQUksSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRTtZQUN2QyxJQUFJLElBQUksQ0FBQyxJQUFJLEtBQUssV0FBVyxDQUFDLEtBQUssRUFBRTtnQkFDbkMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUFDO2FBQzlCO1NBQ0Y7SUFDSCxDQUFDO0lBRU8sY0FBYyxDQUFDLE9BQWdCO1FBQ3JDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLFFBQVEsSUFBSSxPQUFPLENBQUMsSUFBSSxFQUFFO1lBQzNDLE9BQU8sT0FBTyxDQUFDO1NBQ2hCO1FBRUQsSUFBSSxJQUFJLEdBQUcsSUFBSSxDQUFDLE9BQU8sRUFBRSxRQUFRLENBQUM7UUFDbEMsSUFBSSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxFQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM3QyxJQUFJLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxVQUFVLEVBQUUsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRS9DLE9BQU8sQ0FBQyxJQUFJLEdBQUcsU0FBUyxDQUFDO1FBQ3pCLE9BQU8sQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ3BCLE9BQU8sQ0FBQyxLQUFLLEdBQUcsU0FBUyxDQUFDO1FBQzFCLE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7d0dBeFdVLGNBQWMsa0JBTWYsUUFBUTs0R0FOUCxjQUFjLGNBRmIsTUFBTTs7NEZBRVAsY0FBYztrQkFIMUIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkI7OzBCQU9JLE1BQU07MkJBQUMsUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBFcnJvclJlc3BvbnNlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUsIEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5pbXBvcnQgeyBBY3RpdmVUb2FzdCwgSW5kaXZpZHVhbENvbmZpZywgVG9hc3RyU2VydmljZSB9IGZyb20gJ25neC10b2FzdHInO1xyXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGZvcmtKb2luIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IGRlYm91bmNlVGltZSwgZmlyc3QgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcblxyXG5pbXBvcnQgeyBDb25maWdTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY29uZmlnL2NvbmZpZy5zZXJ2aWNlJztcclxuaW1wb3J0IHsgTGFuZ3VhZ2VTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vbGFuZ3VhZ2Uvc2hhcmVkL2xhbmd1YWdlLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBNZXNzYWdlVHlwZSB9IGZyb20gJy4vbWVzc2FnZS5lbnVtJztcclxuaW1wb3J0IHsgTWVzc2FnZSwgTWVzc2FnZU9wdGlvbnMgfSBmcm9tICcuL21lc3NhZ2UuaW50ZXJmYWNlJztcclxuXHJcbmludGVyZmFjZSBBY3RpdmVNZXNzYWdlVHJhbnNsYXRpb24ge1xyXG4gIGlkOiBudW1iZXI7XHJcbiAgdGl0bGVLZXk6IHN0cmluZztcclxuICB0ZXh0S2V5OiBzdHJpbmc7XHJcbiAgdGV4dEludGVycG9sYXRlUGFyYW1zPzogT2JqZWN0O1xyXG4gIHRpdGxlSW50ZXJwb2xhdGVQYXJhbXM/OiBPYmplY3Q7XHJcbn1cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgTWVzc2FnZVNlcnZpY2Uge1xyXG4gIHB1YmxpYyBtZXNzYWdlcyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PE1lc3NhZ2VbXT4oW10pO1xyXG4gIHByaXZhdGUgb3B0aW9ucz86IE1lc3NhZ2VPcHRpb25zO1xyXG4gIHByaXZhdGUgYWN0aXZlTWVzc2FnZVRyYW5zbGF0aW9uczogQWN0aXZlTWVzc2FnZVRyYW5zbGF0aW9uW10gPSBbXTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBASW5qZWN0KEluamVjdG9yKSBwcml2YXRlIGluamVjdG9yOiBJbmplY3RvcixcclxuICAgIHByaXZhdGUgY29uZmlnU2VydmljZTogQ29uZmlnU2VydmljZSxcclxuICAgIHByaXZhdGUgbGFuZ3VhZ2VTZXJ2aWNlOiBMYW5ndWFnZVNlcnZpY2VcclxuICApIHtcclxuICAgIHRoaXMub3B0aW9ucyA9IHRoaXMuY29uZmlnU2VydmljZS5nZXRDb25maWcoJ21lc3NhZ2UnKTtcclxuICAgIHRoaXMubGFuZ3VhZ2VTZXJ2aWNlLmxhbmd1YWdlJC5waXBlKGRlYm91bmNlVGltZSg1MDApKS5zdWJzY3JpYmUoKHIpID0+IHtcclxuICAgICAgaWYgKHRoaXMudG9hc3RyLnRvYXN0cy5sZW5ndGggPT09IDApIHtcclxuICAgICAgICB0aGlzLmFjdGl2ZU1lc3NhZ2VUcmFuc2xhdGlvbnMgPSBbXTtcclxuICAgICAgfVxyXG4gICAgICB0aGlzLnRvYXN0ci50b2FzdHMubWFwKCh0b2FzdCkgPT4ge1xyXG4gICAgICAgIGNvbnN0IGFjdGl2ZU1lc3NhZ2VUcmFuc2xhdGlvbiA9IHRoaXMuYWN0aXZlTWVzc2FnZVRyYW5zbGF0aW9ucy5maW5kKFxyXG4gICAgICAgICAgKGFtdCkgPT4gYW10LmlkID09PSB0b2FzdC50b2FzdElkXHJcbiAgICAgICAgKTtcclxuICAgICAgICBpZiAoYWN0aXZlTWVzc2FnZVRyYW5zbGF0aW9uKSB7XHJcbiAgICAgICAgICBjb25zdCB0cmFuc2xhdGVkVGV4dEludGVycG9sYXRlUGFyYW1zID0ge1xyXG4gICAgICAgICAgICAuLi5hY3RpdmVNZXNzYWdlVHJhbnNsYXRpb24udGV4dEludGVycG9sYXRlUGFyYW1zXHJcbiAgICAgICAgICB9O1xyXG4gICAgICAgICAgY29uc3QgdHJhbnNsYXRlZFRpdGxlSW50ZXJwb2xhdGVQYXJhbXMgPSB7XHJcbiAgICAgICAgICAgIC4uLmFjdGl2ZU1lc3NhZ2VUcmFuc2xhdGlvbi50aXRsZUludGVycG9sYXRlUGFyYW1zXHJcbiAgICAgICAgICB9O1xyXG5cclxuICAgICAgICAgIGlmIChhY3RpdmVNZXNzYWdlVHJhbnNsYXRpb24udGV4dEludGVycG9sYXRlUGFyYW1zKSB7XHJcbiAgICAgICAgICAgIE9iamVjdC5rZXlzKGFjdGl2ZU1lc3NhZ2VUcmFuc2xhdGlvbi50ZXh0SW50ZXJwb2xhdGVQYXJhbXMpLm1hcChcclxuICAgICAgICAgICAgICAoaykgPT4ge1xyXG4gICAgICAgICAgICAgICAgaWYgKGspIHtcclxuICAgICAgICAgICAgICAgICAgdHJhbnNsYXRlZFRleHRJbnRlcnBvbGF0ZVBhcmFtc1trXSA9XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5sYW5ndWFnZVNlcnZpY2UudHJhbnNsYXRlLmluc3RhbnQoXHJcbiAgICAgICAgICAgICAgICAgICAgICBhY3RpdmVNZXNzYWdlVHJhbnNsYXRpb24udGV4dEludGVycG9sYXRlUGFyYW1zW2tdXHJcbiAgICAgICAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBpZiAoYWN0aXZlTWVzc2FnZVRyYW5zbGF0aW9uLnRpdGxlSW50ZXJwb2xhdGVQYXJhbXMpIHtcclxuICAgICAgICAgICAgT2JqZWN0LmtleXMoYWN0aXZlTWVzc2FnZVRyYW5zbGF0aW9uLnRpdGxlSW50ZXJwb2xhdGVQYXJhbXMpLm1hcChcclxuICAgICAgICAgICAgICAoaykgPT4ge1xyXG4gICAgICAgICAgICAgICAgaWYgKGspIHtcclxuICAgICAgICAgICAgICAgICAgdHJhbnNsYXRlZFRpdGxlSW50ZXJwb2xhdGVQYXJhbXNba10gPVxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMubGFuZ3VhZ2VTZXJ2aWNlLnRyYW5zbGF0ZS5pbnN0YW50KFxyXG4gICAgICAgICAgICAgICAgICAgICAgYWN0aXZlTWVzc2FnZVRyYW5zbGF0aW9uLnRpdGxlSW50ZXJwb2xhdGVQYXJhbXNba11cclxuICAgICAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgKTtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICBmb3JrSm9pbihbXHJcbiAgICAgICAgICAgIHRoaXMubGFuZ3VhZ2VTZXJ2aWNlLnRyYW5zbGF0ZS5nZXQoXHJcbiAgICAgICAgICAgICAgYWN0aXZlTWVzc2FnZVRyYW5zbGF0aW9uLnRleHRLZXksXHJcbiAgICAgICAgICAgICAgdHJhbnNsYXRlZFRleHRJbnRlcnBvbGF0ZVBhcmFtc1xyXG4gICAgICAgICAgICApLFxyXG4gICAgICAgICAgICB0aGlzLmxhbmd1YWdlU2VydmljZS50cmFuc2xhdGUuZ2V0KFxyXG4gICAgICAgICAgICAgIGFjdGl2ZU1lc3NhZ2VUcmFuc2xhdGlvbi50aXRsZUtleSxcclxuICAgICAgICAgICAgICB0cmFuc2xhdGVkVGl0bGVJbnRlcnBvbGF0ZVBhcmFtc1xyXG4gICAgICAgICAgICApXHJcbiAgICAgICAgICBdKVxyXG4gICAgICAgICAgICAucGlwZShmaXJzdCgpKVxyXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChyZXM6IFtzdHJpbmcsIHN0cmluZ10pID0+IHtcclxuICAgICAgICAgICAgICB0b2FzdC50b2FzdFJlZi5jb21wb25lbnRJbnN0YW5jZS5tZXNzYWdlID0gcmVzWzBdO1xyXG4gICAgICAgICAgICAgIHRvYXN0LnRvYXN0UmVmLmNvbXBvbmVudEluc3RhbmNlLnRpdGxlID0gcmVzWzFdO1xyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdldCB0b2FzdHIoKTogVG9hc3RyU2VydmljZSB7XHJcbiAgICByZXR1cm4gdGhpcy5pbmplY3Rvci5nZXQoVG9hc3RyU2VydmljZSk7XHJcbiAgfVxyXG5cclxuICBzaG93RXJyb3IoaHR0cEVycm9yOiBIdHRwRXJyb3JSZXNwb25zZSkge1xyXG4gICAgaHR0cEVycm9yLmVycm9yLmNhdWdodCA9IHRydWU7XHJcbiAgICByZXR1cm4gdGhpcy5lcnJvcihodHRwRXJyb3IuZXJyb3IubWVzc2FnZSwgaHR0cEVycm9yLmVycm9yLnRpdGxlKTtcclxuICB9XHJcblxyXG4gIG1lc3NhZ2UobWVzc2FnZTogTWVzc2FnZSkge1xyXG4gICAgY29uc3QgbWVzc2FnZVR5cGUgPSBtZXNzYWdlLnR5cGU7XHJcbiAgICB0aGlzLnRvYXN0ci50b2FzdHJDb25maWcuaWNvbkNsYXNzZXNbbWVzc2FnZVR5cGVdID0gYHRvYXN0LSR7bWVzc2FnZVR5cGV9YDtcclxuXHJcbiAgICB0aGlzLm1lc3NhZ2VzJC5uZXh0KHRoaXMubWVzc2FnZXMkLnZhbHVlLmNvbmNhdChbbWVzc2FnZV0pKTtcclxuXHJcbiAgICBtZXNzYWdlLm9wdGlvbnMgPSBtZXNzYWdlLm9wdGlvbnMgfHwgKHt9IGFzIE1lc3NhZ2VPcHRpb25zKTtcclxuICAgIGNvbnN0IGN1cnJlbnREYXRlID0gbmV3IERhdGUoKTtcclxuXHJcbiAgICBtZXNzYWdlLm9wdGlvbnMuZnJvbSA9IG1lc3NhZ2Uub3B0aW9ucy5mcm9tXHJcbiAgICAgID8gbWVzc2FnZS5vcHRpb25zLmZyb21cclxuICAgICAgOiBuZXcgRGF0ZSgnMSBqYW4gMTkwMCcpO1xyXG4gICAgbWVzc2FnZS5vcHRpb25zLnRvID0gbWVzc2FnZS5vcHRpb25zLnRvXHJcbiAgICAgID8gbWVzc2FnZS5vcHRpb25zLnRvXHJcbiAgICAgIDogbmV3IERhdGUoJzEgamFuIDMwMDAnKTtcclxuICAgIGlmICh0eXBlb2YgbWVzc2FnZS5vcHRpb25zLmZyb20gPT09ICdzdHJpbmcnKSB7XHJcbiAgICAgIG1lc3NhZ2Uub3B0aW9ucy5mcm9tID0gbmV3IERhdGUoXHJcbiAgICAgICAgRGF0ZS5wYXJzZShtZXNzYWdlLm9wdGlvbnMuZnJvbS5yZXBsYWNlKC8tL2csICcgJykpXHJcbiAgICAgICk7XHJcbiAgICB9XHJcbiAgICBpZiAodHlwZW9mIG1lc3NhZ2Uub3B0aW9ucy50byA9PT0gJ3N0cmluZycpIHtcclxuICAgICAgbWVzc2FnZS5vcHRpb25zLnRvID0gbmV3IERhdGUoXHJcbiAgICAgICAgRGF0ZS5wYXJzZShtZXNzYWdlLm9wdGlvbnMudG8ucmVwbGFjZSgvLS9nLCAnICcpKVxyXG4gICAgICApO1xyXG4gICAgfVxyXG4gICAgaWYgKFxyXG4gICAgICBjdXJyZW50RGF0ZSA+IG1lc3NhZ2Uub3B0aW9ucy5mcm9tICYmXHJcbiAgICAgIGN1cnJlbnREYXRlIDwgbWVzc2FnZS5vcHRpb25zLnRvXHJcbiAgICApIHtcclxuICAgICAgaWYgKG1lc3NhZ2Uuc2hvd0ljb24gPT09IGZhbHNlKSB7XHJcbiAgICAgICAgdGhpcy50b2FzdHIudG9hc3RyQ29uZmlnLmljb25DbGFzc2VzW1xyXG4gICAgICAgICAgbWVzc2FnZVR5cGVcclxuICAgICAgICBdID0gYHRvYXN0LSR7bWVzc2FnZVR5cGV9IHRvYXN0LW5vLWljb25gO1xyXG4gICAgICB9XHJcbiAgICAgIG1lc3NhZ2UgPSB0aGlzLmhhbmRsZVRlbXBsYXRlKG1lc3NhZ2UpO1xyXG5cclxuICAgICAgaWYgKG1lc3NhZ2UudGV4dCkge1xyXG4gICAgICAgIGxldCBtZXNzYWdlU2hvd246IEFjdGl2ZVRvYXN0PGFueT47XHJcbiAgICAgICAgc3dpdGNoIChtZXNzYWdlLnR5cGUpIHtcclxuICAgICAgICAgIGNhc2UgTWVzc2FnZVR5cGUuU1VDQ0VTUzpcclxuICAgICAgICAgICAgbWVzc2FnZVNob3duID0gdGhpcy5zdWNjZXNzKFxyXG4gICAgICAgICAgICAgIG1lc3NhZ2UudGV4dCxcclxuICAgICAgICAgICAgICBtZXNzYWdlLnRpdGxlLFxyXG4gICAgICAgICAgICAgIG1lc3NhZ2Uub3B0aW9ucyxcclxuICAgICAgICAgICAgICBtZXNzYWdlLnRleHRJbnRlcnBvbGF0ZVBhcmFtcyxcclxuICAgICAgICAgICAgICBtZXNzYWdlLnRpdGxlSW50ZXJwb2xhdGVQYXJhbXNcclxuICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICBjYXNlIE1lc3NhZ2VUeXBlLkVSUk9SOlxyXG4gICAgICAgICAgICBtZXNzYWdlU2hvd24gPSB0aGlzLmVycm9yKFxyXG4gICAgICAgICAgICAgIG1lc3NhZ2UudGV4dCxcclxuICAgICAgICAgICAgICBtZXNzYWdlLnRpdGxlLFxyXG4gICAgICAgICAgICAgIG1lc3NhZ2Uub3B0aW9ucyxcclxuICAgICAgICAgICAgICBtZXNzYWdlLnRleHRJbnRlcnBvbGF0ZVBhcmFtcyxcclxuICAgICAgICAgICAgICBtZXNzYWdlLnRpdGxlSW50ZXJwb2xhdGVQYXJhbXNcclxuICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICBjYXNlIE1lc3NhZ2VUeXBlLklORk86XHJcbiAgICAgICAgICAgIG1lc3NhZ2VTaG93biA9IHRoaXMuaW5mbyhcclxuICAgICAgICAgICAgICBtZXNzYWdlLnRleHQsXHJcbiAgICAgICAgICAgICAgbWVzc2FnZS50aXRsZSxcclxuICAgICAgICAgICAgICBtZXNzYWdlLm9wdGlvbnMsXHJcbiAgICAgICAgICAgICAgbWVzc2FnZS50ZXh0SW50ZXJwb2xhdGVQYXJhbXMsXHJcbiAgICAgICAgICAgICAgbWVzc2FnZS50aXRsZUludGVycG9sYXRlUGFyYW1zXHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgY2FzZSBNZXNzYWdlVHlwZS5TSE9XOlxyXG4gICAgICAgICAgICBtZXNzYWdlU2hvd24gPSB0aGlzLnNob3coXHJcbiAgICAgICAgICAgICAgbWVzc2FnZS50ZXh0LFxyXG4gICAgICAgICAgICAgIG1lc3NhZ2UudGl0bGUsXHJcbiAgICAgICAgICAgICAgbWVzc2FnZS5vcHRpb25zLFxyXG4gICAgICAgICAgICAgIG1lc3NhZ2UudGV4dEludGVycG9sYXRlUGFyYW1zLFxyXG4gICAgICAgICAgICAgIG1lc3NhZ2UudGl0bGVJbnRlcnBvbGF0ZVBhcmFtc1xyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgIGNhc2UgTWVzc2FnZVR5cGUuQUxFUlQ6XHJcbiAgICAgICAgICBjYXNlIE1lc3NhZ2VUeXBlLldBUk5JTkc6XHJcbiAgICAgICAgICAgIG1lc3NhZ2VTaG93biA9IHRoaXMuYWxlcnQoXHJcbiAgICAgICAgICAgICAgbWVzc2FnZS50ZXh0LFxyXG4gICAgICAgICAgICAgIG1lc3NhZ2UudGl0bGUsXHJcbiAgICAgICAgICAgICAgbWVzc2FnZS5vcHRpb25zLFxyXG4gICAgICAgICAgICAgIG1lc3NhZ2UudGV4dEludGVycG9sYXRlUGFyYW1zLFxyXG4gICAgICAgICAgICAgIG1lc3NhZ2UudGl0bGVJbnRlcnBvbGF0ZVBhcmFtc1xyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICAgIG1lc3NhZ2VTaG93biA9IHRoaXMuaW5mbyhcclxuICAgICAgICAgICAgICBtZXNzYWdlLnRleHQsXHJcbiAgICAgICAgICAgICAgbWVzc2FnZS50aXRsZSxcclxuICAgICAgICAgICAgICBtZXNzYWdlLm9wdGlvbnMsXHJcbiAgICAgICAgICAgICAgbWVzc2FnZS50ZXh0SW50ZXJwb2xhdGVQYXJhbXMsXHJcbiAgICAgICAgICAgICAgbWVzc2FnZS50aXRsZUludGVycG9sYXRlUGFyYW1zXHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIH1cclxuICAgICAgICBtZXNzYWdlLm9wdGlvbnMuaWQgPSBtZXNzYWdlU2hvd24udG9hc3RJZDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgc3VjY2VzcyhcclxuICAgIHRleHQ6IHN0cmluZyxcclxuICAgIHRpdGxlOiBzdHJpbmcgPSAnaWdvLmNvcmUubWVzc2FnZS5zdWNjZXNzJyxcclxuICAgIG9wdGlvbnM6IFBhcnRpYWw8SW5kaXZpZHVhbENvbmZpZz4gPSB7fSxcclxuICAgIHRleHRJbnRlcnBvbGF0ZVBhcmFtcz86IE9iamVjdCxcclxuICAgIHRpdGxlSW50ZXJwb2xhdGVQYXJhbXM/OiBPYmplY3RcclxuICApOiBBY3RpdmVUb2FzdDxhbnk+IHtcclxuICAgIHJldHVybiB0aGlzLmhhbmRsZU5neFRvYXN0cihcclxuICAgICAgJ3N1Y2Nlc3MnLFxyXG4gICAgICB0ZXh0LFxyXG4gICAgICB0aXRsZSxcclxuICAgICAgb3B0aW9ucyxcclxuICAgICAgdGV4dEludGVycG9sYXRlUGFyYW1zLFxyXG4gICAgICB0aXRsZUludGVycG9sYXRlUGFyYW1zXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgZXJyb3IoXHJcbiAgICB0ZXh0OiBzdHJpbmcsXHJcbiAgICB0aXRsZTogc3RyaW5nID0gJ2lnby5jb3JlLm1lc3NhZ2UuZXJyb3InLFxyXG4gICAgb3B0aW9uczogUGFydGlhbDxJbmRpdmlkdWFsQ29uZmlnPiA9IHt9LFxyXG4gICAgdGV4dEludGVycG9sYXRlUGFyYW1zPzogT2JqZWN0LFxyXG4gICAgdGl0bGVJbnRlcnBvbGF0ZVBhcmFtcz86IE9iamVjdFxyXG4gICk6IEFjdGl2ZVRvYXN0PGFueT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaGFuZGxlTmd4VG9hc3RyKFxyXG4gICAgICAnZXJyb3InLFxyXG4gICAgICB0ZXh0LFxyXG4gICAgICB0aXRsZSxcclxuICAgICAgb3B0aW9ucyxcclxuICAgICAgdGV4dEludGVycG9sYXRlUGFyYW1zLFxyXG4gICAgICB0aXRsZUludGVycG9sYXRlUGFyYW1zXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgaW5mbyhcclxuICAgIHRleHQ6IHN0cmluZyxcclxuICAgIHRpdGxlOiBzdHJpbmcgPSAnaWdvLmNvcmUubWVzc2FnZS5pbmZvJyxcclxuICAgIG9wdGlvbnM6IFBhcnRpYWw8SW5kaXZpZHVhbENvbmZpZz4gPSB7fSxcclxuICAgIHRleHRJbnRlcnBvbGF0ZVBhcmFtcz86IE9iamVjdCxcclxuICAgIHRpdGxlSW50ZXJwb2xhdGVQYXJhbXM/OiBPYmplY3RcclxuICApOiBBY3RpdmVUb2FzdDxhbnk+IHtcclxuICAgIHJldHVybiB0aGlzLmhhbmRsZU5neFRvYXN0cihcclxuICAgICAgJ2luZm8nLFxyXG4gICAgICB0ZXh0LFxyXG4gICAgICB0aXRsZSxcclxuICAgICAgb3B0aW9ucyxcclxuICAgICAgdGV4dEludGVycG9sYXRlUGFyYW1zLFxyXG4gICAgICB0aXRsZUludGVycG9sYXRlUGFyYW1zXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgYWxlcnQoXHJcbiAgICB0ZXh0OiBzdHJpbmcsXHJcbiAgICB0aXRsZTogc3RyaW5nID0gJ2lnby5jb3JlLm1lc3NhZ2UuYWxlcnQnLFxyXG4gICAgb3B0aW9uczogUGFydGlhbDxJbmRpdmlkdWFsQ29uZmlnPiA9IHt9LFxyXG4gICAgdGV4dEludGVycG9sYXRlUGFyYW1zPzogT2JqZWN0LFxyXG4gICAgdGl0bGVJbnRlcnBvbGF0ZVBhcmFtcz86IE9iamVjdFxyXG4gICk6IEFjdGl2ZVRvYXN0PGFueT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaGFuZGxlTmd4VG9hc3RyKFxyXG4gICAgICAnYWxlcnQnLFxyXG4gICAgICB0ZXh0LFxyXG4gICAgICB0aXRsZSxcclxuICAgICAgb3B0aW9ucyxcclxuICAgICAgdGV4dEludGVycG9sYXRlUGFyYW1zLFxyXG4gICAgICB0aXRsZUludGVycG9sYXRlUGFyYW1zXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgc2hvdyhcclxuICAgIHRleHQ6IHN0cmluZyxcclxuICAgIHRpdGxlOiBzdHJpbmcgPSAnaWdvLmNvcmUubWVzc2FnZS5pbmZvJyxcclxuICAgIG9wdGlvbnM6IFBhcnRpYWw8SW5kaXZpZHVhbENvbmZpZz4gPSB7fSxcclxuICAgIHRleHRJbnRlcnBvbGF0ZVBhcmFtcz86IE9iamVjdCxcclxuICAgIHRpdGxlSW50ZXJwb2xhdGVQYXJhbXM/OiBPYmplY3RcclxuICApOiBBY3RpdmVUb2FzdDxhbnk+IHtcclxuICAgIHJldHVybiB0aGlzLmhhbmRsZU5neFRvYXN0cihcclxuICAgICAgJ3Nob3cnLFxyXG4gICAgICB0ZXh0LFxyXG4gICAgICB0aXRsZSxcclxuICAgICAgb3B0aW9ucyxcclxuICAgICAgdGV4dEludGVycG9sYXRlUGFyYW1zLFxyXG4gICAgICB0aXRsZUludGVycG9sYXRlUGFyYW1zXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBoYW5kbGVOZ3hUb2FzdHIoXHJcbiAgICB0eXBlOiAnYWxlcnQnIHwgJ2luZm8nIHwgJ2Vycm9yJyB8ICdzdWNjZXNzJyB8ICdzaG93JyxcclxuICAgIHRleHQ6IHN0cmluZyxcclxuICAgIHRpdGxlOiBzdHJpbmcsXHJcbiAgICBvcHRpb25zOiBQYXJ0aWFsPEluZGl2aWR1YWxDb25maWc+ID0ge30sXHJcbiAgICB0ZXh0SW50ZXJwb2xhdGVQYXJhbXM/OiBPYmplY3QsXHJcbiAgICB0aXRsZUludGVycG9sYXRlUGFyYW1zPzogT2JqZWN0XHJcbiAgKTogQWN0aXZlVG9hc3Q8YW55PiB7XHJcbiAgICBjb25zdCB0cmFuc2xhdGVkVGV4dEludGVycG9sYXRlUGFyYW1zID0geyAuLi50ZXh0SW50ZXJwb2xhdGVQYXJhbXMgfTtcclxuICAgIGNvbnN0IHRyYW5zbGF0ZWRUaXRsZW50ZXJwb2xhdGVQYXJhbXMgPSB7IC4uLnRpdGxlSW50ZXJwb2xhdGVQYXJhbXMgfTtcclxuXHJcbiAgICBpZiAodGV4dEludGVycG9sYXRlUGFyYW1zKSB7XHJcbiAgICAgIE9iamVjdC5rZXlzKHRleHRJbnRlcnBvbGF0ZVBhcmFtcykubWFwKChrKSA9PiB7XHJcbiAgICAgICAgY29uc3QgdmFsdWUgPSB0ZXh0SW50ZXJwb2xhdGVQYXJhbXNba107XHJcbiAgICAgICAgaWYgKHZhbHVlKSB7XHJcbiAgICAgICAgICB0cmFuc2xhdGVkVGV4dEludGVycG9sYXRlUGFyYW1zW2tdID1cclxuICAgICAgICAgICAgdHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJ1xyXG4gICAgICAgICAgICAgID8gdGhpcy5sYW5ndWFnZVNlcnZpY2UudHJhbnNsYXRlLmluc3RhbnQodmFsdWUpXHJcbiAgICAgICAgICAgICAgOiB2YWx1ZTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gICAgaWYgKHRpdGxlSW50ZXJwb2xhdGVQYXJhbXMpIHtcclxuICAgICAgT2JqZWN0LmtleXModGl0bGVJbnRlcnBvbGF0ZVBhcmFtcykubWFwKChrKSA9PiB7XHJcbiAgICAgICAgaWYgKGspIHtcclxuICAgICAgICAgIGNvbnN0IHZhbHVlID0gdGl0bGVJbnRlcnBvbGF0ZVBhcmFtc1trXTtcclxuICAgICAgICAgIHRyYW5zbGF0ZWRUaXRsZW50ZXJwb2xhdGVQYXJhbXNba10gPVxyXG4gICAgICAgICAgICB0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnXHJcbiAgICAgICAgICAgICAgPyB0aGlzLmxhbmd1YWdlU2VydmljZS50cmFuc2xhdGUuaW5zdGFudCh2YWx1ZSlcclxuICAgICAgICAgICAgICA6IHZhbHVlO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgbWVzc2FnZSA9IHRoaXMubGFuZ3VhZ2VTZXJ2aWNlLnRyYW5zbGF0ZS5pbnN0YW50KFxyXG4gICAgICB0ZXh0LFxyXG4gICAgICB0cmFuc2xhdGVkVGV4dEludGVycG9sYXRlUGFyYW1zXHJcbiAgICApO1xyXG4gICAgY29uc3QgdHJhbnNsYXRlZFRpdGxlID0gdGhpcy5sYW5ndWFnZVNlcnZpY2UudHJhbnNsYXRlLmluc3RhbnQoXHJcbiAgICAgIHRpdGxlLFxyXG4gICAgICB0cmFuc2xhdGVkVGl0bGVudGVycG9sYXRlUGFyYW1zXHJcbiAgICApO1xyXG5cclxuICAgIGxldCBhY3RpdmVUb2FzdDtcclxuICAgIHN3aXRjaCAodHlwZSkge1xyXG4gICAgICBjYXNlICdzdWNjZXNzJzpcclxuICAgICAgICBhY3RpdmVUb2FzdCA9IHRoaXMudG9hc3RyLnN1Y2Nlc3MobWVzc2FnZSwgdHJhbnNsYXRlZFRpdGxlLCBvcHRpb25zKTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSAnZXJyb3InOlxyXG4gICAgICAgIGFjdGl2ZVRvYXN0ID0gdGhpcy50b2FzdHIuZXJyb3IobWVzc2FnZSwgdHJhbnNsYXRlZFRpdGxlLCBvcHRpb25zKTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSAnc2hvdyc6XHJcbiAgICAgIGNhc2UgJ2luZm8nOlxyXG4gICAgICAgIGFjdGl2ZVRvYXN0ID0gdGhpcy50b2FzdHIuaW5mbyhtZXNzYWdlLCB0cmFuc2xhdGVkVGl0bGUsIG9wdGlvbnMpO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlICdhbGVydCc6XHJcbiAgICAgICAgYWN0aXZlVG9hc3QgPSB0aGlzLnRvYXN0ci53YXJuaW5nKG1lc3NhZ2UsIHRyYW5zbGF0ZWRUaXRsZSwgb3B0aW9ucyk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICB9XHJcbiAgICB0aGlzLmFjdGl2ZU1lc3NhZ2VUcmFuc2xhdGlvbnMucHVzaCh7XHJcbiAgICAgIGlkOiBhY3RpdmVUb2FzdC50b2FzdElkLFxyXG4gICAgICB0aXRsZUtleTogdGl0bGUsXHJcbiAgICAgIHRleHRLZXk6IHRleHQsXHJcbiAgICAgIHRleHRJbnRlcnBvbGF0ZVBhcmFtcyxcclxuICAgICAgdGl0bGVJbnRlcnBvbGF0ZVBhcmFtc1xyXG4gICAgfSk7XHJcbiAgICByZXR1cm4gYWN0aXZlVG9hc3Q7XHJcbiAgfVxyXG5cclxuICByZW1vdmUoaWQ/OiBudW1iZXIpIHtcclxuICAgIHRoaXMudG9hc3RyLnJlbW92ZShpZCk7XHJcbiAgfVxyXG5cclxuICByZW1vdmVBbGxBcmVOb3RFcnJvcigpIHtcclxuICAgIGZvciAoY29uc3QgbWVzcyBvZiB0aGlzLm1lc3NhZ2VzJC52YWx1ZSkge1xyXG4gICAgICBpZiAobWVzcy50eXBlICE9PSBNZXNzYWdlVHlwZS5FUlJPUikge1xyXG4gICAgICAgIHRoaXMucmVtb3ZlKG1lc3Mub3B0aW9ucy5pZCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgaGFuZGxlVGVtcGxhdGUobWVzc2FnZTogTWVzc2FnZSk6IE1lc3NhZ2Uge1xyXG4gICAgaWYgKCF0aGlzLm9wdGlvbnM/LnRlbXBsYXRlIHx8IG1lc3NhZ2UuaHRtbCkge1xyXG4gICAgICByZXR1cm4gbWVzc2FnZTtcclxuICAgIH1cclxuXHJcbiAgICBsZXQgaHRtbCA9IHRoaXMub3B0aW9ucz8udGVtcGxhdGU7XHJcbiAgICBodG1sID0gaHRtbC5yZXBsYWNlKCcke3RleHR9JywgbWVzc2FnZS50ZXh0KTtcclxuICAgIGh0bWwgPSBodG1sLnJlcGxhY2UoJyR7dGl0bGV9JywgbWVzc2FnZS50aXRsZSk7XHJcblxyXG4gICAgbWVzc2FnZS5odG1sID0gdW5kZWZpbmVkO1xyXG4gICAgbWVzc2FnZS50ZXh0ID0gaHRtbDtcclxuICAgIG1lc3NhZ2UudGl0bGUgPSB1bmRlZmluZWQ7XHJcbiAgICByZXR1cm4gbWVzc2FnZTtcclxuICB9XHJcbn1cclxuIl19
|
|
224
|
+
}] }, { type: i1.ConfigService }, { type: i2.LanguageService }] });
|
|
225
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVzc2FnZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS9zcmMvbGliL21lc3NhZ2Uvc2hhcmVkL21lc3NhZ2Uuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFN0QsT0FBTyxFQUFpQyxhQUFhLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDMUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxRQUFRLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDakQsT0FBTyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVyRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDNUQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7OztBQWE3QyxNQUFNLE9BQU8sY0FBYztJQU1HO0lBQ2xCO0lBQ0E7SUFQSCxTQUFTLEdBQUcsSUFBSSxlQUFlLENBQVksRUFBRSxDQUFDLENBQUM7SUFDOUMsT0FBTyxDQUFrQjtJQUN6Qix5QkFBeUIsR0FBK0IsRUFBRSxDQUFDO0lBRW5FLFlBQzRCLFFBQWtCLEVBQ3BDLGFBQTRCLEVBQzVCLGVBQWdDO1FBRmQsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQUNwQyxrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUM1QixvQkFBZSxHQUFmLGVBQWUsQ0FBaUI7UUFFeEMsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUN2RCxJQUFJLENBQUMsZUFBZSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENB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QWMsa0JBTWYsUUFBUTsyR0FOUCxjQUFjLGNBRmIsTUFBTTs7MkZBRVAsY0FBYztrQkFIMUIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkI7OzBCQU9JLE1BQU07MkJBQUMsUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBFcnJvclJlc3BvbnNlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUsIEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5pbXBvcnQgeyBBY3RpdmVUb2FzdCwgSW5kaXZpZHVhbENvbmZpZywgVG9hc3RyU2VydmljZSB9IGZyb20gJ25neC10b2FzdHInO1xyXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGZvcmtKb2luIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IGRlYm91bmNlVGltZSwgZmlyc3QgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcblxyXG5pbXBvcnQgeyBDb25maWdTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY29uZmlnL2NvbmZpZy5zZXJ2aWNlJztcclxuaW1wb3J0IHsgTGFuZ3VhZ2VTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vbGFuZ3VhZ2Uvc2hhcmVkL2xhbmd1YWdlLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBNZXNzYWdlVHlwZSB9IGZyb20gJy4vbWVzc2FnZS5lbnVtJztcclxuaW1wb3J0IHsgTWVzc2FnZSwgTWVzc2FnZU9wdGlvbnMgfSBmcm9tICcuL21lc3NhZ2UuaW50ZXJmYWNlJztcclxuXHJcbmludGVyZmFjZSBBY3RpdmVNZXNzYWdlVHJhbnNsYXRpb24ge1xyXG4gIGlkOiBudW1iZXI7XHJcbiAgdGl0bGVLZXk6IHN0cmluZztcclxuICB0ZXh0S2V5OiBzdHJpbmc7XHJcbiAgdGV4dEludGVycG9sYXRlUGFyYW1zPzogT2JqZWN0O1xyXG4gIHRpdGxlSW50ZXJwb2xhdGVQYXJhbXM/OiBPYmplY3Q7XHJcbn1cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgTWVzc2FnZVNlcnZpY2Uge1xyXG4gIHB1YmxpYyBtZXNzYWdlcyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PE1lc3NhZ2VbXT4oW10pO1xyXG4gIHByaXZhdGUgb3B0aW9ucz86IE1lc3NhZ2VPcHRpb25zO1xyXG4gIHByaXZhdGUgYWN0aXZlTWVzc2FnZVRyYW5zbGF0aW9uczogQWN0aXZlTWVzc2FnZVRyYW5zbGF0aW9uW10gPSBbXTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBASW5qZWN0KEluamVjdG9yKSBwcml2YXRlIGluamVjdG9yOiBJbmplY3RvcixcclxuICAgIHByaXZhdGUgY29uZmlnU2VydmljZTogQ29uZmlnU2VydmljZSxcclxuICAgIHByaXZhdGUgbGFuZ3VhZ2VTZXJ2aWNlOiBMYW5ndWFnZVNlcnZpY2VcclxuICApIHtcclxuICAgIHRoaXMub3B0aW9ucyA9IHRoaXMuY29uZmlnU2VydmljZS5nZXRDb25maWcoJ21lc3NhZ2UnKTtcclxuICAgIHRoaXMubGFuZ3VhZ2VTZXJ2aWNlLmxhbmd1YWdlJC5waXBlKGRlYm91bmNlVGltZSg1MDApKS5zdWJzY3JpYmUoKHIpID0+IHtcclxuICAgICAgaWYgKHRoaXMudG9hc3RyLnRvYXN0cy5sZW5ndGggPT09IDApIHtcclxuICAgICAgICB0aGlzLmFjdGl2ZU1lc3NhZ2VUcmFuc2xhdGlvbnMgPSBbXTtcclxuICAgICAgfVxyXG4gICAgICB0aGlzLnRvYXN0ci50b2FzdHMubWFwKCh0b2FzdCkgPT4ge1xyXG4gICAgICAgIGNvbnN0IGFjdGl2ZU1lc3NhZ2VUcmFuc2xhdGlvbiA9IHRoaXMuYWN0aXZlTWVzc2FnZVRyYW5zbGF0aW9ucy5maW5kKFxyXG4gICAgICAgICAgKGFtdCkgPT4gYW10LmlkID09PSB0b2FzdC50b2FzdElkXHJcbiAgICAgICAgKTtcclxuICAgICAgICBpZiAoYWN0aXZlTWVzc2FnZVRyYW5zbGF0aW9uKSB7XHJcbiAgICAgICAgICBjb25zdCB0cmFuc2xhdGVkVGV4dEludGVycG9sYXRlUGFyYW1zID0ge1xyXG4gICAgICAgICAgICAuLi5hY3RpdmVNZXNzYWdlVHJhbnNsYXRpb24udGV4dEludGVycG9sYXRlUGFyYW1zXHJcbiAgICAgICAgICB9O1xyXG4gICAgICAgICAgY29uc3QgdHJhbnNsYXRlZFRpdGxlSW50ZXJwb2xhdGVQYXJhbXMgPSB7XHJcbiAgICAgICAgICAgIC4uLmFjdGl2ZU1lc3NhZ2VUcmFuc2xhdGlvbi50aXRsZUludGVycG9sYXRlUGFyYW1zXHJcbiAgICAgICAgICB9O1xyXG5cclxuICAgICAgICAgIGlmIChhY3RpdmVNZXNzYWdlVHJhbnNsYXRpb24udGV4dEludGVycG9sYXRlUGFyYW1zKSB7XHJcbiAgICAgICAgICAgIE9iamVjdC5rZXlzKGFjdGl2ZU1lc3NhZ2VUcmFuc2xhdGlvbi50ZXh0SW50ZXJwb2xhdGVQYXJhbXMpLm1hcChcclxuICAgICAgICAgICAgICAoaykgPT4ge1xyXG4gICAgICAgICAgICAgICAgaWYgKGspIHtcclxuICAgICAgICAgICAgICAgICAgdHJhbnNsYXRlZFRleHRJbnRlcnBvbGF0ZVBhcmFtc1trXSA9XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5sYW5ndWFnZVNlcnZpY2UudHJhbnNsYXRlLmluc3RhbnQoXHJcbiAgICAgICAgICAgICAgICAgICAgICBhY3RpdmVNZXNzYWdlVHJhbnNsYXRpb24udGV4dEludGVycG9sYXRlUGFyYW1zW2tdXHJcbiAgICAgICAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBpZiAoYWN0aXZlTWVzc2FnZVRyYW5zbGF0aW9uLnRpdGxlSW50ZXJwb2xhdGVQYXJhbXMpIHtcclxuICAgICAgICAgICAgT2JqZWN0LmtleXMoYWN0aXZlTWVzc2FnZVRyYW5zbGF0aW9uLnRpdGxlSW50ZXJwb2xhdGVQYXJhbXMpLm1hcChcclxuICAgICAgICAgICAgICAoaykgPT4ge1xyXG4gICAgICAgICAgICAgICAgaWYgKGspIHtcclxuICAgICAgICAgICAgICAgICAgdHJhbnNsYXRlZFRpdGxlSW50ZXJwb2xhdGVQYXJhbXNba10gPVxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMubGFuZ3VhZ2VTZXJ2aWNlLnRyYW5zbGF0ZS5pbnN0YW50KFxyXG4gICAgICAgICAgICAgICAgICAgICAgYWN0aXZlTWVzc2FnZVRyYW5zbGF0aW9uLnRpdGxlSW50ZXJwb2xhdGVQYXJhbXNba11cclxuICAgICAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgKTtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICBmb3JrSm9pbihbXHJcbiAgICAgICAgICAgIHRoaXMubGFuZ3VhZ2VTZXJ2aWNlLnRyYW5zbGF0ZS5nZXQoXHJcbiAgICAgICAgICAgICAgYWN0aXZlTWVzc2FnZVRyYW5zbGF0aW9uLnRleHRLZXksXHJcbiAgICAgICAgICAgICAgdHJhbnNsYXRlZFRleHRJbnRlcnBvbGF0ZVBhcmFtc1xyXG4gICAgICAgICAgICApLFxyXG4gICAgICAgICAgICB0aGlzLmxhbmd1YWdlU2VydmljZS50cmFuc2xhdGUuZ2V0KFxyXG4gICAgICAgICAgICAgIGFjdGl2ZU1lc3NhZ2VUcmFuc2xhdGlvbi50aXRsZUtleSxcclxuICAgICAgICAgICAgICB0cmFuc2xhdGVkVGl0bGVJbnRlcnBvbGF0ZVBhcmFtc1xyXG4gICAgICAgICAgICApXHJcbiAgICAgICAgICBdKVxyXG4gICAgICAgICAgICAucGlwZShmaXJzdCgpKVxyXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChyZXM6IFtzdHJpbmcsIHN0cmluZ10pID0+IHtcclxuICAgICAgICAgICAgICB0b2FzdC50b2FzdFJlZi5jb21wb25lbnRJbnN0YW5jZS5tZXNzYWdlID0gcmVzWzBdO1xyXG4gICAgICAgICAgICAgIHRvYXN0LnRvYXN0UmVmLmNvbXBvbmVudEluc3RhbmNlLnRpdGxlID0gcmVzWzFdO1xyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdldCB0b2FzdHIoKTogVG9hc3RyU2VydmljZSB7XHJcbiAgICByZXR1cm4gdGhpcy5pbmplY3Rvci5nZXQoVG9hc3RyU2VydmljZSk7XHJcbiAgfVxyXG5cclxuICBzaG93RXJyb3IoaHR0cEVycm9yOiBIdHRwRXJyb3JSZXNwb25zZSkge1xyXG4gICAgaHR0cEVycm9yLmVycm9yLmNhdWdodCA9IHRydWU7XHJcbiAgICByZXR1cm4gdGhpcy5lcnJvcihodHRwRXJyb3IuZXJyb3IubWVzc2FnZSwgaHR0cEVycm9yLmVycm9yLnRpdGxlKTtcclxuICB9XHJcblxyXG4gIG1lc3NhZ2UobWVzc2FnZTogTWVzc2FnZSkge1xyXG4gICAgY29uc3QgbWVzc2FnZVR5cGUgPSBtZXNzYWdlLnR5cGU7XHJcbiAgICB0aGlzLnRvYXN0ci50b2FzdHJDb25maWcuaWNvbkNsYXNzZXNbbWVzc2FnZVR5cGVdID0gYHRvYXN0LSR7bWVzc2FnZVR5cGV9YDtcclxuXHJcbiAgICB0aGlzLm1lc3NhZ2VzJC5uZXh0KHRoaXMubWVzc2FnZXMkLnZhbHVlLmNvbmNhdChbbWVzc2FnZV0pKTtcclxuXHJcbiAgICBtZXNzYWdlLm9wdGlvbnMgPSBtZXNzYWdlLm9wdGlvbnMgfHwgKHt9IGFzIE1lc3NhZ2VPcHRpb25zKTtcclxuICAgIGNvbnN0IGN1cnJlbnREYXRlID0gbmV3IERhdGUoKTtcclxuXHJcbiAgICBtZXNzYWdlLm9wdGlvbnMuZnJvbSA9IG1lc3NhZ2Uub3B0aW9ucy5mcm9tXHJcbiAgICAgID8gbWVzc2FnZS5vcHRpb25zLmZyb21cclxuICAgICAgOiBuZXcgRGF0ZSgnMSBqYW4gMTkwMCcpO1xyXG4gICAgbWVzc2FnZS5vcHRpb25zLnRvID0gbWVzc2FnZS5vcHRpb25zLnRvXHJcbiAgICAgID8gbWVzc2FnZS5vcHRpb25zLnRvXHJcbiAgICAgIDogbmV3IERhdGUoJzEgamFuIDMwMDAnKTtcclxuICAgIGlmICh0eXBlb2YgbWVzc2FnZS5vcHRpb25zLmZyb20gPT09ICdzdHJpbmcnKSB7XHJcbiAgICAgIG1lc3NhZ2Uub3B0aW9ucy5mcm9tID0gbmV3IERhdGUoXHJcbiAgICAgICAgRGF0ZS5wYXJzZShtZXNzYWdlLm9wdGlvbnMuZnJvbS5yZXBsYWNlKC8tL2csICcgJykpXHJcbiAgICAgICk7XHJcbiAgICB9XHJcbiAgICBpZiAodHlwZW9mIG1lc3NhZ2Uub3B0aW9ucy50byA9PT0gJ3N0cmluZycpIHtcclxuICAgICAgbWVzc2FnZS5vcHRpb25zLnRvID0gbmV3IERhdGUoXHJcbiAgICAgICAgRGF0ZS5wYXJzZShtZXNzYWdlLm9wdGlvbnMudG8ucmVwbGFjZSgvLS9nLCAnICcpKVxyXG4gICAgICApO1xyXG4gICAgfVxyXG4gICAgaWYgKFxyXG4gICAgICBjdXJyZW50RGF0ZSA+IG1lc3NhZ2Uub3B0aW9ucy5mcm9tICYmXHJcbiAgICAgIGN1cnJlbnREYXRlIDwgbWVzc2FnZS5vcHRpb25zLnRvXHJcbiAgICApIHtcclxuICAgICAgaWYgKG1lc3NhZ2Uuc2hvd0ljb24gPT09IGZhbHNlKSB7XHJcbiAgICAgICAgdGhpcy50b2FzdHIudG9hc3RyQ29uZmlnLmljb25DbGFzc2VzW21lc3NhZ2VUeXBlXSA9XHJcbiAgICAgICAgICBgdG9hc3QtJHttZXNzYWdlVHlwZX0gdG9hc3Qtbm8taWNvbmA7XHJcbiAgICAgIH1cclxuICAgICAgbWVzc2FnZSA9IHRoaXMuaGFuZGxlVGVtcGxhdGUobWVzc2FnZSk7XHJcblxyXG4gICAgICBpZiAobWVzc2FnZS50ZXh0KSB7XHJcbiAgICAgICAgbGV0IG1lc3NhZ2VTaG93bjogQWN0aXZlVG9hc3Q8YW55PjtcclxuICAgICAgICBzd2l0Y2ggKG1lc3NhZ2UudHlwZSkge1xyXG4gICAgICAgICAgY2FzZSBNZXNzYWdlVHlwZS5TVUNDRVNTOlxyXG4gICAgICAgICAgICBtZXNzYWdlU2hvd24gPSB0aGlzLnN1Y2Nlc3MoXHJcbiAgICAgICAgICAgICAgbWVzc2FnZS50ZXh0LFxyXG4gICAgICAgICAgICAgIG1lc3NhZ2UudGl0bGUsXHJcbiAgICAgICAgICAgICAgbWVzc2FnZS5vcHRpb25zLFxyXG4gICAgICAgICAgICAgIG1lc3NhZ2UudGV4dEludGVycG9sYXRlUGFyYW1zLFxyXG4gICAgICAgICAgICAgIG1lc3NhZ2UudGl0bGVJbnRlcnBvbGF0ZVBhcmFtc1xyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgIGNhc2UgTWVzc2FnZVR5cGUuRVJST1I6XHJcbiAgICAgICAgICAgIG1lc3NhZ2VTaG93biA9IHRoaXMuZXJyb3IoXHJcbiAgICAgICAgICAgICAgbWVzc2FnZS50ZXh0LFxyXG4gICAgICAgICAgICAgIG1lc3NhZ2UudGl0bGUsXHJcbiAgICAgICAgICAgICAgbWVzc2FnZS5vcHRpb25zLFxyXG4gICAgICAgICAgICAgIG1lc3NhZ2UudGV4dEludGVycG9sYXRlUGFyYW1zLFxyXG4gICAgICAgICAgICAgIG1lc3NhZ2UudGl0bGVJbnRlcnBvbGF0ZVBhcmFtc1xyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgIGNhc2UgTWVzc2FnZVR5cGUuSU5GTzpcclxuICAgICAgICAgICAgbWVzc2FnZVNob3duID0gdGhpcy5pbmZvKFxyXG4gICAgICAgICAgICAgIG1lc3NhZ2UudGV4dCxcclxuICAgICAgICAgICAgICBtZXNzYWdlLnRpdGxlLFxyXG4gICAgICAgICAgICAgIG1lc3NhZ2Uub3B0aW9ucyxcclxuICAgICAgICAgICAgICBtZXNzYWdlLnRleHRJbnRlcnBvbGF0ZVBhcmFtcyxcclxuICAgICAgICAgICAgICBtZXNzYWdlLnRpdGxlSW50ZXJwb2xhdGVQYXJhbXNcclxuICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICBjYXNlIE1lc3NhZ2VUeXBlLlNIT1c6XHJcbiAgICAgICAgICAgIG1lc3NhZ2VTaG93biA9IHRoaXMuc2hvdyhcclxuICAgICAgICAgICAgICBtZXNzYWdlLnRleHQsXHJcbiAgICAgICAgICAgICAgbWVzc2FnZS50aXRsZSxcclxuICAgICAgICAgICAgICBtZXNzYWdlLm9wdGlvbnMsXHJcbiAgICAgICAgICAgICAgbWVzc2FnZS50ZXh0SW50ZXJwb2xhdGVQYXJhbXMsXHJcbiAgICAgICAgICAgICAgbWVzc2FnZS50aXRsZUludGVycG9sYXRlUGFyYW1zXHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgY2FzZSBNZXNzYWdlVHlwZS5BTEVSVDpcclxuICAgICAgICAgIGNhc2UgTWVzc2FnZVR5cGUuV0FSTklORzpcclxuICAgICAgICAgICAgbWVzc2FnZVNob3duID0gdGhpcy5hbGVydChcclxuICAgICAgICAgICAgICBtZXNzYWdlLnRleHQsXHJcbiAgICAgICAgICAgICAgbWVzc2FnZS50aXRsZSxcclxuICAgICAgICAgICAgICBtZXNzYWdlLm9wdGlvbnMsXHJcbiAgICAgICAgICAgICAgbWVzc2FnZS50ZXh0SW50ZXJwb2xhdGVQYXJhbXMsXHJcbiAgICAgICAgICAgICAgbWVzc2FnZS50aXRsZUludGVycG9sYXRlUGFyYW1zXHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgZGVmYXVsdDpcclxuICAgICAgICAgICAgbWVzc2FnZVNob3duID0gdGhpcy5pbmZvKFxyXG4gICAgICAgICAgICAgIG1lc3NhZ2UudGV4dCxcclxuICAgICAgICAgICAgICBtZXNzYWdlLnRpdGxlLFxyXG4gICAgICAgICAgICAgIG1lc3NhZ2Uub3B0aW9ucyxcclxuICAgICAgICAgICAgICBtZXNzYWdlLnRleHRJbnRlcnBvbGF0ZVBhcmFtcyxcclxuICAgICAgICAgICAgICBtZXNzYWdlLnRpdGxlSW50ZXJwb2xhdGVQYXJhbXNcclxuICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIG1lc3NhZ2Uub3B0aW9ucy5pZCA9IG1lc3NhZ2VTaG93bi50b2FzdElkO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzdWNjZXNzKFxyXG4gICAgdGV4dDogc3RyaW5nLFxyXG4gICAgdGl0bGU6IHN0cmluZyA9ICdpZ28uY29yZS5tZXNzYWdlLnN1Y2Nlc3MnLFxyXG4gICAgb3B0aW9uczogUGFydGlhbDxJbmRpdmlkdWFsQ29uZmlnPiA9IHt9LFxyXG4gICAgdGV4dEludGVycG9sYXRlUGFyYW1zPzogT2JqZWN0LFxyXG4gICAgdGl0bGVJbnRlcnBvbGF0ZVBhcmFtcz86IE9iamVjdFxyXG4gICk6IEFjdGl2ZVRvYXN0PGFueT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaGFuZGxlTmd4VG9hc3RyKFxyXG4gICAgICAnc3VjY2VzcycsXHJcbiAgICAgIHRleHQsXHJcbiAgICAgIHRpdGxlLFxyXG4gICAgICBvcHRpb25zLFxyXG4gICAgICB0ZXh0SW50ZXJwb2xhdGVQYXJhbXMsXHJcbiAgICAgIHRpdGxlSW50ZXJwb2xhdGVQYXJhbXNcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBlcnJvcihcclxuICAgIHRleHQ6IHN0cmluZyxcclxuICAgIHRpdGxlOiBzdHJpbmcgPSAnaWdvLmNvcmUubWVzc2FnZS5lcnJvcicsXHJcbiAgICBvcHRpb25zOiBQYXJ0aWFsPEluZGl2aWR1YWxDb25maWc+ID0ge30sXHJcbiAgICB0ZXh0SW50ZXJwb2xhdGVQYXJhbXM/OiBPYmplY3QsXHJcbiAgICB0aXRsZUludGVycG9sYXRlUGFyYW1zPzogT2JqZWN0XHJcbiAgKTogQWN0aXZlVG9hc3Q8YW55PiB7XHJcbiAgICByZXR1cm4gdGhpcy5oYW5kbGVOZ3hUb2FzdHIoXHJcbiAgICAgICdlcnJvcicsXHJcbiAgICAgIHRleHQsXHJcbiAgICAgIHRpdGxlLFxyXG4gICAgICBvcHRpb25zLFxyXG4gICAgICB0ZXh0SW50ZXJwb2xhdGVQYXJhbXMsXHJcbiAgICAgIHRpdGxlSW50ZXJwb2xhdGVQYXJhbXNcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBpbmZvKFxyXG4gICAgdGV4dDogc3RyaW5nLFxyXG4gICAgdGl0bGU6IHN0cmluZyA9ICdpZ28uY29yZS5tZXNzYWdlLmluZm8nLFxyXG4gICAgb3B0aW9uczogUGFydGlhbDxJbmRpdmlkdWFsQ29uZmlnPiA9IHt9LFxyXG4gICAgdGV4dEludGVycG9sYXRlUGFyYW1zPzogT2JqZWN0LFxyXG4gICAgdGl0bGVJbnRlcnBvbGF0ZVBhcmFtcz86IE9iamVjdFxyXG4gICk6IEFjdGl2ZVRvYXN0PGFueT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaGFuZGxlTmd4VG9hc3RyKFxyXG4gICAgICAnaW5mbycsXHJcbiAgICAgIHRleHQsXHJcbiAgICAgIHRpdGxlLFxyXG4gICAgICBvcHRpb25zLFxyXG4gICAgICB0ZXh0SW50ZXJwb2xhdGVQYXJhbXMsXHJcbiAgICAgIHRpdGxlSW50ZXJwb2xhdGVQYXJhbXNcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBhbGVydChcclxuICAgIHRleHQ6IHN0cmluZyxcclxuICAgIHRpdGxlOiBzdHJpbmcgPSAnaWdvLmNvcmUubWVzc2FnZS5hbGVydCcsXHJcbiAgICBvcHRpb25zOiBQYXJ0aWFsPEluZGl2aWR1YWxDb25maWc+ID0ge30sXHJcbiAgICB0ZXh0SW50ZXJwb2xhdGVQYXJhbXM/OiBPYmplY3QsXHJcbiAgICB0aXRsZUludGVycG9sYXRlUGFyYW1zPzogT2JqZWN0XHJcbiAgKTogQWN0aXZlVG9hc3Q8YW55PiB7XHJcbiAgICByZXR1cm4gdGhpcy5oYW5kbGVOZ3hUb2FzdHIoXHJcbiAgICAgICdhbGVydCcsXHJcbiAgICAgIHRleHQsXHJcbiAgICAgIHRpdGxlLFxyXG4gICAgICBvcHRpb25zLFxyXG4gICAgICB0ZXh0SW50ZXJwb2xhdGVQYXJhbXMsXHJcbiAgICAgIHRpdGxlSW50ZXJwb2xhdGVQYXJhbXNcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBzaG93KFxyXG4gICAgdGV4dDogc3RyaW5nLFxyXG4gICAgdGl0bGU6IHN0cmluZyA9ICdpZ28uY29yZS5tZXNzYWdlLmluZm8nLFxyXG4gICAgb3B0aW9uczogUGFydGlhbDxJbmRpdmlkdWFsQ29uZmlnPiA9IHt9LFxyXG4gICAgdGV4dEludGVycG9sYXRlUGFyYW1zPzogT2JqZWN0LFxyXG4gICAgdGl0bGVJbnRlcnBvbGF0ZVBhcmFtcz86IE9iamVjdFxyXG4gICk6IEFjdGl2ZVRvYXN0PGFueT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaGFuZGxlTmd4VG9hc3RyKFxyXG4gICAgICAnc2hvdycsXHJcbiAgICAgIHRleHQsXHJcbiAgICAgIHRpdGxlLFxyXG4gICAgICBvcHRpb25zLFxyXG4gICAgICB0ZXh0SW50ZXJwb2xhdGVQYXJhbXMsXHJcbiAgICAgIHRpdGxlSW50ZXJwb2xhdGVQYXJhbXNcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGhhbmRsZU5neFRvYXN0cihcclxuICAgIHR5cGU6ICdhbGVydCcgfCAnaW5mbycgfCAnZXJyb3InIHwgJ3N1Y2Nlc3MnIHwgJ3Nob3cnLFxyXG4gICAgdGV4dDogc3RyaW5nLFxyXG4gICAgdGl0bGU6IHN0cmluZyxcclxuICAgIG9wdGlvbnM6IFBhcnRpYWw8SW5kaXZpZHVhbENvbmZpZz4gPSB7fSxcclxuICAgIHRleHRJbnRlcnBvbGF0ZVBhcmFtcz86IE9iamVjdCxcclxuICAgIHRpdGxlSW50ZXJwb2xhdGVQYXJhbXM/OiBPYmplY3RcclxuICApOiBBY3RpdmVUb2FzdDxhbnk+IHtcclxuICAgIGNvbnN0IHRyYW5zbGF0ZWRUZXh0SW50ZXJwb2xhdGVQYXJhbXMgPSB7IC4uLnRleHRJbnRlcnBvbGF0ZVBhcmFtcyB9O1xyXG4gICAgY29uc3QgdHJhbnNsYXRlZFRpdGxlbnRlcnBvbGF0ZVBhcmFtcyA9IHsgLi4udGl0bGVJbnRlcnBvbGF0ZVBhcmFtcyB9O1xyXG5cclxuICAgIGlmICh0ZXh0SW50ZXJwb2xhdGVQYXJhbXMpIHtcclxuICAgICAgT2JqZWN0LmtleXModGV4dEludGVycG9sYXRlUGFyYW1zKS5tYXAoKGspID0+IHtcclxuICAgICAgICBjb25zdCB2YWx1ZSA9IHRleHRJbnRlcnBvbGF0ZVBhcmFtc1trXTtcclxuICAgICAgICBpZiAodmFsdWUpIHtcclxuICAgICAgICAgIHRyYW5zbGF0ZWRUZXh0SW50ZXJwb2xhdGVQYXJhbXNba10gPVxyXG4gICAgICAgICAgICB0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnXHJcbiAgICAgICAgICAgICAgPyB0aGlzLmxhbmd1YWdlU2VydmljZS50cmFuc2xhdGUuaW5zdGFudCh2YWx1ZSlcclxuICAgICAgICAgICAgICA6IHZhbHVlO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgICBpZiAodGl0bGVJbnRlcnBvbGF0ZVBhcmFtcykge1xyXG4gICAgICBPYmplY3Qua2V5cyh0aXRsZUludGVycG9sYXRlUGFyYW1zKS5tYXAoKGspID0+IHtcclxuICAgICAgICBpZiAoaykge1xyXG4gICAgICAgICAgY29uc3QgdmFsdWUgPSB0aXRsZUludGVycG9sYXRlUGFyYW1zW2tdO1xyXG4gICAgICAgICAgdHJhbnNsYXRlZFRpdGxlbnRlcnBvbGF0ZVBhcmFtc1trXSA9XHJcbiAgICAgICAgICAgIHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZydcclxuICAgICAgICAgICAgICA/IHRoaXMubGFuZ3VhZ2VTZXJ2aWNlLnRyYW5zbGF0ZS5pbnN0YW50KHZhbHVlKVxyXG4gICAgICAgICAgICAgIDogdmFsdWU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdCBtZXNzYWdlID0gdGhpcy5sYW5ndWFnZVNlcnZpY2UudHJhbnNsYXRlLmluc3RhbnQoXHJcbiAgICAgIHRleHQsXHJcbiAgICAgIHRyYW5zbGF0ZWRUZXh0SW50ZXJwb2xhdGVQYXJhbXNcclxuICAgICk7XHJcbiAgICBjb25zdCB0cmFuc2xhdGVkVGl0bGUgPSB0aGlzLmxhbmd1YWdlU2VydmljZS50cmFuc2xhdGUuaW5zdGFudChcclxuICAgICAgdGl0bGUsXHJcbiAgICAgIHRyYW5zbGF0ZWRUaXRsZW50ZXJwb2xhdGVQYXJhbXNcclxuICAgICk7XHJcblxyXG4gICAgbGV0IGFjdGl2ZVRvYXN0O1xyXG4gICAgc3dpdGNoICh0eXBlKSB7XHJcbiAgICAgIGNhc2UgJ3N1Y2Nlc3MnOlxyXG4gICAgICAgIGFjdGl2ZVRvYXN0ID0gdGhpcy50b2FzdHIuc3VjY2VzcyhtZXNzYWdlLCB0cmFuc2xhdGVkVGl0bGUsIG9wdGlvbnMpO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlICdlcnJvcic6XHJcbiAgICAgICAgYWN0aXZlVG9hc3QgPSB0aGlzLnRvYXN0ci5lcnJvcihtZXNzYWdlLCB0cmFuc2xhdGVkVGl0bGUsIG9wdGlvbnMpO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlICdzaG93JzpcclxuICAgICAgY2FzZSAnaW5mbyc6XHJcbiAgICAgICAgYWN0aXZlVG9hc3QgPSB0aGlzLnRvYXN0ci5pbmZvKG1lc3NhZ2UsIHRyYW5zbGF0ZWRUaXRsZSwgb3B0aW9ucyk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgJ2FsZXJ0JzpcclxuICAgICAgICBhY3RpdmVUb2FzdCA9IHRoaXMudG9hc3RyLndhcm5pbmcobWVzc2FnZSwgdHJhbnNsYXRlZFRpdGxlLCBvcHRpb25zKTtcclxuICAgICAgICBicmVhaztcclxuICAgIH1cclxuICAgIHRoaXMuYWN0aXZlTWVzc2FnZVRyYW5zbGF0aW9ucy5wdXNoKHtcclxuICAgICAgaWQ6IGFjdGl2ZVRvYXN0LnRvYXN0SWQsXHJcbiAgICAgIHRpdGxlS2V5OiB0aXRsZSxcclxuICAgICAgdGV4dEtleTogdGV4dCxcclxuICAgICAgdGV4dEludGVycG9sYXRlUGFyYW1zLFxyXG4gICAgICB0aXRsZUludGVycG9sYXRlUGFyYW1zXHJcbiAgICB9KTtcclxuICAgIHJldHVybiBhY3RpdmVUb2FzdDtcclxuICB9XHJcblxyXG4gIHJlbW92ZShpZD86IG51bWJlcikge1xyXG4gICAgdGhpcy50b2FzdHIucmVtb3ZlKGlkKTtcclxuICB9XHJcblxyXG4gIHJlbW92ZUFsbEFyZU5vdEVycm9yKCkge1xyXG4gICAgZm9yIChjb25zdCBtZXNzIG9mIHRoaXMubWVzc2FnZXMkLnZhbHVlKSB7XHJcbiAgICAgIGlmIChtZXNzLnR5cGUgIT09IE1lc3NhZ2VUeXBlLkVSUk9SKSB7XHJcbiAgICAgICAgdGhpcy5yZW1vdmUobWVzcy5vcHRpb25zLmlkKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBoYW5kbGVUZW1wbGF0ZShtZXNzYWdlOiBNZXNzYWdlKTogTWVzc2FnZSB7XHJcbiAgICBpZiAoIXRoaXMub3B0aW9ucz8udGVtcGxhdGUgfHwgbWVzc2FnZS5odG1sKSB7XHJcbiAgICAgIHJldHVybiBtZXNzYWdlO1xyXG4gICAgfVxyXG5cclxuICAgIGxldCBodG1sID0gdGhpcy5vcHRpb25zPy50ZW1wbGF0ZTtcclxuICAgIGh0bWwgPSBodG1sLnJlcGxhY2UoJyR7dGV4dH0nLCBtZXNzYWdlLnRleHQpO1xyXG4gICAgaHRtbCA9IGh0bWwucmVwbGFjZSgnJHt0aXRsZX0nLCBtZXNzYWdlLnRpdGxlKTtcclxuXHJcbiAgICBtZXNzYWdlLmh0bWwgPSB1bmRlZmluZWQ7XHJcbiAgICBtZXNzYWdlLnRleHQgPSBodG1sO1xyXG4gICAgbWVzc2FnZS50aXRsZSA9IHVuZGVmaW5lZDtcclxuICAgIHJldHVybiBtZXNzYWdlO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -17,4 +17,4 @@ export function provideMonitoring(options) {
|
|
|
17
17
|
}
|
|
18
18
|
return providers;
|
|
19
19
|
}
|
|
20
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9uaXRvcmluZy5wcm92aWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvc3JjL2xpYi9tb25pdG9yaW5nL21vbml0b3JpbmcucHJvdmlkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBWSxNQUFNLGVBQWUsQ0FBQztBQUV6RCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUduRSxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxJQUFJLGNBQWMsQ0FDbEQsb0JBQW9CLENBQ3JCLENBQUM7QUFFRixNQUFNLFVBQVUsaUJBQWlCLENBQy9CLE9BQW9DO0lBRXBDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNiLE9BQU8sRUFBRSxDQUFDO0lBQ1osQ0FBQztJQUVELE1BQU0sU0FBUyxHQUFlO1FBQzVCLEVBQUUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUU7S0FDbkQsQ0FBQztJQUVGLFFBQVEsT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ3pCLEtBQUssUUFBUTtZQUNYLFNBQVMsQ0FBQyxJQUFJLENBQUMsR0FBRyx1QkFBdUIsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO1lBQ3BELE1BQU07UUFDUjtZQUNFLE1BQU07SUFDVixDQUFDO0lBRUQsT0FBTyxTQUFTLENBQUM7QUFDbkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGlvblRva2VuLCBQcm92aWRlciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuaW1wb3J0IHsgcHJvdmlkZVNlbnRyeU1vbml0b3JpbmcgfSBmcm9tICcuL3NlbnRyeS9zZW50cnkucHJvdmlkZXInO1xyXG5pbXBvcnQgeyBBbnlNb25pdG9yaW5nT3B0aW9ucywgTW9uaXRvcmluZ09wdGlvbnMgfSBmcm9tICcuL3NoYXJlZCc7XHJcblxyXG5leHBvcnQgY29uc3QgTU9OSVRPUklOR19PUFRJT05TID0gbmV3IEluamVjdGlvblRva2VuPE1vbml0b3JpbmdPcHRpb25zIHwgbnVsbD4oXHJcbiAgJ21vbml0b3Jpbmcub3B0aW9ucydcclxuKTtcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBwcm92aWRlTW9uaXRvcmluZyhcclxuICBvcHRpb25zOiBBbnlNb25pdG9yaW5nT3B0aW9ucyB8IG51bGxcclxuKTogUHJvdmlkZXJbXSB7XHJcbiAgaWYgKCFvcHRpb25zKSB7XHJcbiAgICByZXR1cm4gW107XHJcbiAgfVxyXG5cclxuICBjb25zdCBwcm92aWRlcnM6IFByb3ZpZGVyW10gPSBbXHJcbiAgICB7IHByb3ZpZGU6IE1PTklUT1JJTkdfT1BUSU9OUywgdXNlVmFsdWU6IG9wdGlvbnMgfVxyXG4gIF07XHJcblxyXG4gIHN3aXRjaCAob3B0aW9ucy5wcm92aWRlcikge1xyXG4gICAgY2FzZSAnc2VudHJ5JzpcclxuICAgICAgcHJvdmlkZXJzLnB1c2goLi4ucHJvdmlkZVNlbnRyeU1vbml0b3Jpbmcob3B0aW9ucykpO1xyXG4gICAgICBicmVhaztcclxuICAgIGRlZmF1bHQ6XHJcbiAgICAgIGJyZWFrO1xyXG4gIH1cclxuXHJcbiAgcmV0dXJuIHByb3ZpZGVycztcclxufVxyXG4iXX0=
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VudHJ5LmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvc3JjL2xpYi9tb25pdG9yaW5nL3NlbnRyeS9zZW50cnkuaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCcm93c2VyT3B0aW9ucywgRXJyb3JIYW5kbGVyT3B0aW9ucyB9IGZyb20gJ0BzZW50cnkvYW5ndWxhci1pdnknO1xyXG5cclxuaW1wb3J0IHsgTW9uaXRvcmluZ09wdGlvbnMgfSBmcm9tICcuLi9zaGFyZWQvbW9uaXRvcmluZy5pbnRlcmZhY2UnO1xyXG5cclxuZXhwb3J0IHR5cGUgU2VudHJ5TW9uaXRvcmluZ09wdGlvbnMgPSBCcm93c2VyT3B0aW9ucyAmXHJcbiAgTW9uaXRvcmluZ09wdGlvbnMgJiB7XHJcbiAgICBwcm92aWRlcjogJ3NlbnRyeSc7XHJcbiAgICBlcnJvckhhbmRsZXJPcHRpb25zPzogRXJyb3JIYW5kbGVyT3B0aW9ucztcclxuICAgIGVuYWJsZVJlcGxheT86IGJvb2xlYW47XHJcbiAgfTtcclxuIl19
|
|
@@ -26,4 +26,4 @@ export const initSentry = (options) => {
|
|
|
26
26
|
};
|
|
27
27
|
init(baseConfig);
|
|
28
28
|
};
|
|
29
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
29
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VudHJ5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS9zcmMvbGliL21vbml0b3Jpbmcvc2VudHJ5L3NlbnRyeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsY0FBYyxFQUNkLE1BQU0sRUFFTixrQkFBa0IsRUFDbEIsYUFBYSxFQUNiLElBQUksRUFDSix3QkFBd0IsRUFDekIsTUFBTSxxQkFBcUIsQ0FBQztBQUc3QixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVsRCxNQUFNLENBQUMsTUFBTSx3QkFBd0IsR0FBRyxDQUN0QyxPQUFnQyxFQUNaLEVBQUU7SUFDdEIsT0FBTyxrQkFBa0IsQ0FBQztRQUN4QixTQUFTLEVBQUUsT0FBTyxDQUFDLFNBQVM7UUFDNUIsR0FBRyxDQUFDLE9BQU8sQ0FBQyxtQkFBbUIsSUFBSSxFQUFFLENBQUM7S0FDdkMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHLENBQUMsT0FBZ0MsRUFBUSxFQUFFO0lBQ25FLE1BQU0sTUFBTSxHQUFHLGFBQWEsRUFBRSxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQzNDLElBQUksTUFBTSxFQUFFLENBQUM7UUFDWCxPQUFPO0lBQ1QsQ0FBQztJQUVELE1BQU0sY0FBYyxHQUFHLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ2pELE1BQU0sVUFBVSxHQUFtQjtRQUNqQyxHQUFHLEVBQUUsT0FBTyxDQUFDLEdBQUc7UUFDaEIsV0FBVyxFQUFFLE9BQU8sQ0FBQyxXQUFXO1FBQ2hDLE9BQU8sRUFBRSxPQUFPLENBQUMsT0FBTztRQUN4QixZQUFZLEVBQUU7WUFDWixjQUFjO2dCQUNaLElBQUksY0FBYyxDQUFDO29CQUNqQixzQkFBc0IsRUFBRSx3QkFBd0I7aUJBQ2pELENBQUM7WUFDSixPQUFPLENBQUMsWUFBWSxJQUFJLElBQUksTUFBTSxFQUFFO1NBQ3JDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQztLQUNsQixDQUFDO0lBRUYsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0FBQ25CLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQnJvd3Nlck9wdGlvbnMsXHJcbiAgQnJvd3NlclRyYWNpbmcsXHJcbiAgUmVwbGF5LFxyXG4gIFNlbnRyeUVycm9ySGFuZGxlcixcclxuICBjcmVhdGVFcnJvckhhbmRsZXIsXHJcbiAgZ2V0Q3VycmVudEh1YixcclxuICBpbml0LFxyXG4gIGluc3RydW1lbnRBbmd1bGFyUm91dGluZ1xyXG59IGZyb20gJ0BzZW50cnkvYW5ndWxhci1pdnknO1xyXG5cclxuaW1wb3J0IHsgU2VudHJ5TW9uaXRvcmluZ09wdGlvbnMgfSBmcm9tICcuL3NlbnRyeS5pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBpc1RyYWNpbmdFbmFibGVkIH0gZnJvbSAnLi9zZW50cnkudXRpbHMnO1xyXG5cclxuZXhwb3J0IGNvbnN0IGNyZWF0ZVNlbnRyeUVycm9ySGFuZGxlciA9IChcclxuICBvcHRpb25zOiBTZW50cnlNb25pdG9yaW5nT3B0aW9uc1xyXG4pOiBTZW50cnlFcnJvckhhbmRsZXIgPT4ge1xyXG4gIHJldHVybiBjcmVhdGVFcnJvckhhbmRsZXIoe1xyXG4gICAgbG9nRXJyb3JzOiBvcHRpb25zLmxvZ0Vycm9ycyxcclxuICAgIC4uLihvcHRpb25zLmVycm9ySGFuZGxlck9wdGlvbnMgPz8ge30pXHJcbiAgfSk7XHJcbn07XHJcblxyXG5leHBvcnQgY29uc3QgaW5pdFNlbnRyeSA9IChvcHRpb25zOiBTZW50cnlNb25pdG9yaW5nT3B0aW9ucyk6IHZvaWQgPT4ge1xyXG4gIGNvbnN0IGNsaWVudCA9IGdldEN1cnJlbnRIdWIoKS5nZXRDbGllbnQoKTtcclxuICBpZiAoY2xpZW50KSB7XHJcbiAgICByZXR1cm47XHJcbiAgfVxyXG5cclxuICBjb25zdCB0cmFjaW5nRW5hYmxlZCA9IGlzVHJhY2luZ0VuYWJsZWQob3B0aW9ucyk7XHJcbiAgY29uc3QgYmFzZUNvbmZpZzogQnJvd3Nlck9wdGlvbnMgPSB7XHJcbiAgICBkc246IG9wdGlvbnMuZHNuLFxyXG4gICAgZW52aXJvbm1lbnQ6IG9wdGlvbnMuZW52aXJvbm1lbnQsXHJcbiAgICByZWxlYXNlOiBvcHRpb25zLnJlbGVhc2UsXHJcbiAgICBpbnRlZ3JhdGlvbnM6IFtcclxuICAgICAgdHJhY2luZ0VuYWJsZWQgJiZcclxuICAgICAgICBuZXcgQnJvd3NlclRyYWNpbmcoe1xyXG4gICAgICAgICAgcm91dGluZ0luc3RydW1lbnRhdGlvbjogaW5zdHJ1bWVudEFuZ3VsYXJSb3V0aW5nXHJcbiAgICAgICAgfSksXHJcbiAgICAgIG9wdGlvbnMuZW5hYmxlUmVwbGF5ICYmIG5ldyBSZXBsYXkoKVxyXG4gICAgXS5maWx0ZXIoQm9vbGVhbilcclxuICB9O1xyXG5cclxuICBpbml0KGJhc2VDb25maWcpO1xyXG59O1xyXG4iXX0=
|
|
@@ -28,4 +28,4 @@ export const provideSentryMonitoring = (options) => {
|
|
|
28
28
|
}
|
|
29
29
|
].filter(Boolean);
|
|
30
30
|
};
|
|
31
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VudHJ5LnByb3ZpZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS9zcmMvbGliL21vbml0b3Jpbmcvc2VudHJ5L3NlbnRyeS5wcm92aWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsZUFBZSxFQUVmLFlBQVksRUFFYixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRW5ELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxVQUFVLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFFaEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFbEQsTUFBTSxDQUFDLE1BQU0sdUJBQXVCLEdBQUcsQ0FDckMsT0FBZ0MsRUFDVyxFQUFFO0lBQzdDLE1BQU0sU0FBUyxHQUFHLE9BQU8sQ0FBQyxPQUFPLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDekUsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQ2YsT0FBTyxFQUFFLENBQUM7SUFDWixDQUFDO0lBRUQsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBRXBCLE1BQU0sY0FBYyxHQUFHLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBRWpELE9BQU87UUFDTDtZQUNFLE9BQU8sRUFBRSxZQUFZO1lBQ3JCLFVBQVUsRUFBRSxHQUFHLEVBQUUsQ0FBQyx3QkFBd0IsQ0FBQyxPQUFPLENBQUM7U0FDcEQ7UUFDRCxjQUFjLElBQUk7WUFDaEIsT0FBTyxFQUFFLFlBQVk7WUFDckIsSUFBSSxFQUFFLENBQUMsTUFBTSxDQUFDO1NBQ2Y7UUFDRCx5RUFBeUU7UUFDekUsY0FBYyxJQUFJO1lBQ2hCLE9BQU8sRUFBRSxlQUFlO1lBQ3hCLFVBQVUsRUFBRSxHQUFHLEVBQUUsQ0FBQyxHQUFHLEVBQUUsR0FBRSxDQUFDO1lBQzFCLElBQUksRUFBRSxDQUFDLFlBQVksQ0FBQztZQUNwQixLQUFLLEVBQUUsSUFBSTtTQUNaO0tBQ0YsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7QUFDcEIsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBBUFBfSU5JVElBTElaRVIsXHJcbiAgQ29uc3RydWN0b3JQcm92aWRlcixcclxuICBFcnJvckhhbmRsZXIsXHJcbiAgRmFjdG9yeVByb3ZpZGVyXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcblxyXG5pbXBvcnQgeyBUcmFjZVNlcnZpY2UgfSBmcm9tICdAc2VudHJ5L2FuZ3VsYXItaXZ5JztcclxuXHJcbmltcG9ydCB7IGNyZWF0ZVNlbnRyeUVycm9ySGFuZGxlciwgaW5pdFNlbnRyeSB9IGZyb20gJy4vc2VudHJ5JztcclxuaW1wb3J0IHsgU2VudHJ5TW9uaXRvcmluZ09wdGlvbnMgfSBmcm9tICcuL3NlbnRyeS5pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBpc1RyYWNpbmdFbmFibGVkIH0gZnJvbSAnLi9zZW50cnkudXRpbHMnO1xyXG5cclxuZXhwb3J0IGNvbnN0IHByb3ZpZGVTZW50cnlNb25pdG9yaW5nID0gKFxyXG4gIG9wdGlvbnM6IFNlbnRyeU1vbml0b3JpbmdPcHRpb25zXHJcbik6IChGYWN0b3J5UHJvdmlkZXIgfCBDb25zdHJ1Y3RvclByb3ZpZGVyKVtdID0+IHtcclxuICBjb25zdCBpc0VuYWJsZWQgPSBvcHRpb25zLmVuYWJsZWQgIT09IHVuZGVmaW5lZCA/IG9wdGlvbnMuZW5hYmxlZCA6IHRydWU7XHJcbiAgaWYgKCFpc0VuYWJsZWQpIHtcclxuICAgIHJldHVybiBbXTtcclxuICB9XHJcblxyXG4gIGluaXRTZW50cnkob3B0aW9ucyk7XHJcblxyXG4gIGNvbnN0IHRyYWNpbmdFbmFibGVkID0gaXNUcmFjaW5nRW5hYmxlZChvcHRpb25zKTtcclxuXHJcbiAgcmV0dXJuIFtcclxuICAgIHtcclxuICAgICAgcHJvdmlkZTogRXJyb3JIYW5kbGVyLFxyXG4gICAgICB1c2VGYWN0b3J5OiAoKSA9PiBjcmVhdGVTZW50cnlFcnJvckhhbmRsZXIob3B0aW9ucylcclxuICAgIH0sXHJcbiAgICB0cmFjaW5nRW5hYmxlZCAmJiB7XHJcbiAgICAgIHByb3ZpZGU6IFRyYWNlU2VydmljZSxcclxuICAgICAgZGVwczogW1JvdXRlcl1cclxuICAgIH0sXHJcbiAgICAvLyBGb3JjZSBpbnN0YW50aWF0ZSBUcmFjZVNlcnZpY2UgdG8gYXZvaWQgcmVxdWlyZSBpdCBpbiBhbnkgY29uc3RydWN0b3IuXHJcbiAgICB0cmFjaW5nRW5hYmxlZCAmJiB7XHJcbiAgICAgIHByb3ZpZGU6IEFQUF9JTklUSUFMSVpFUixcclxuICAgICAgdXNlRmFjdG9yeTogKCkgPT4gKCkgPT4ge30sXHJcbiAgICAgIGRlcHM6IFtUcmFjZVNlcnZpY2VdLFxyXG4gICAgICBtdWx0aTogdHJ1ZVxyXG4gICAgfVxyXG4gIF0uZmlsdGVyKEJvb2xlYW4pO1xyXG59O1xyXG4iXX0=
|