nuxeo-development-framework 5.9.9 → 6.0.1
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/bundles/nuxeo-development-framework.umd.js +90 -29
- package/bundles/nuxeo-development-framework.umd.js.map +1 -1
- package/esm2015/lib/components/dynamic-form/services/vocabulary-api.service.js +32 -0
- package/esm2015/lib/components/notifications/components/notifications-settings/notifications-settings.component.js +10 -6
- package/esm2015/lib/components/notifications/services/notifications.service.js +34 -13
- package/esm2015/lib/core/services/nuxeo/nuxeo.service.js +8 -2
- package/fesm2015/nuxeo-development-framework.js +87 -29
- package/fesm2015/nuxeo-development-framework.js.map +1 -1
- package/lib/components/dynamic-form/services/vocabulary-api.service.d.ts +12 -0
- package/lib/components/notifications/components/notification-source-select/notification-source-select.component.d.ts +1 -1
- package/lib/components/notifications/services/notifications.service.d.ts +6 -2
- package/lib/core/services/nuxeo/nuxeo.service.d.ts +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { from } from 'rxjs';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "../../../core/services/nuxeo/nuxeo.service";
|
|
5
|
+
import * as i2 from "@ngx-translate/core";
|
|
6
|
+
export class VocabularyApiService {
|
|
7
|
+
constructor(nuxeoService, translate) {
|
|
8
|
+
this.nuxeoService = nuxeoService;
|
|
9
|
+
this.translate = translate;
|
|
10
|
+
}
|
|
11
|
+
getVocabularyList(listName) {
|
|
12
|
+
return from(this.nuxeoService.nuxeoClient
|
|
13
|
+
.operation('Directory.SuggestEntries', {})
|
|
14
|
+
.params({
|
|
15
|
+
directoryName: listName,
|
|
16
|
+
dbl10n: false,
|
|
17
|
+
localize: true,
|
|
18
|
+
lang: this.translate.currentLang,
|
|
19
|
+
searchTerm: '',
|
|
20
|
+
})
|
|
21
|
+
.execute());
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
VocabularyApiService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: VocabularyApiService, deps: [{ token: i1.NuxeoService }, { token: i2.TranslateService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
25
|
+
VocabularyApiService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: VocabularyApiService, providedIn: 'root' });
|
|
26
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: VocabularyApiService, decorators: [{
|
|
27
|
+
type: Injectable,
|
|
28
|
+
args: [{
|
|
29
|
+
providedIn: 'root',
|
|
30
|
+
}]
|
|
31
|
+
}], ctorParameters: function () { return [{ type: i1.NuxeoService }, { type: i2.TranslateService }]; } });
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidm9jYWJ1bGFyeS1hcGkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL251eGVvLWRldmVsb3BtZW50LWZyYW1ld29yay9zcmMvbGliL2NvbXBvbmVudHMvZHluYW1pYy1mb3JtL3NlcnZpY2VzL3ZvY2FidWxhcnktYXBpLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUsSUFBSSxFQUFjLE1BQU0sTUFBTSxDQUFDOzs7O0FBTXhDLE1BQU0sT0FBTyxvQkFBb0I7SUFDL0IsWUFDVSxZQUEwQixFQUMxQixTQUEyQjtRQUQzQixpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUMxQixjQUFTLEdBQVQsU0FBUyxDQUFrQjtJQUVyQyxDQUFDO0lBRUQsaUJBQWlCLENBQUMsUUFBUTtRQUN4QixPQUFPLElBQUksQ0FDVCxJQUFJLENBQUMsWUFBWSxDQUFDLFdBQVc7YUFDMUIsU0FBUyxDQUFDLDBCQUEwQixFQUFFLEVBQUUsQ0FBQzthQUN6QyxNQUFNLENBQUM7WUFDTixhQUFhLEVBQUUsUUFBUTtZQUN2QixNQUFNLEVBQUUsS0FBSztZQUNiLFFBQVEsRUFBRSxJQUFJO1lBQ2QsSUFBSSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsV0FBVztZQUNoQyxVQUFVLEVBQUUsRUFBRTtTQUNmLENBQUM7YUFDRCxPQUFPLEVBQUUsQ0FDYixDQUFDO0lBQ0osQ0FBQzs7a0hBcEJVLG9CQUFvQjtzSEFBcEIsb0JBQW9CLGNBRm5CLE1BQU07NEZBRVAsb0JBQW9CO2tCQUhoQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xyXG5pbXBvcnQgeyBmcm9tLCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IE51eGVvU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL2NvcmUvc2VydmljZXMvbnV4ZW8vbnV4ZW8uc2VydmljZSc7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgVm9jYWJ1bGFyeUFwaVNlcnZpY2Uge1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBudXhlb1NlcnZpY2U6IE51eGVvU2VydmljZSxcclxuICAgIHByaXZhdGUgdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLFxyXG4gICkge1xyXG4gIH1cclxuXHJcbiAgZ2V0Vm9jYWJ1bGFyeUxpc3QobGlzdE5hbWUpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgcmV0dXJuIGZyb20oXHJcbiAgICAgIHRoaXMubnV4ZW9TZXJ2aWNlLm51eGVvQ2xpZW50XHJcbiAgICAgICAgLm9wZXJhdGlvbignRGlyZWN0b3J5LlN1Z2dlc3RFbnRyaWVzJywge30pXHJcbiAgICAgICAgLnBhcmFtcyh7XHJcbiAgICAgICAgICBkaXJlY3RvcnlOYW1lOiBsaXN0TmFtZSxcclxuICAgICAgICAgIGRibDEwbjogZmFsc2UsXHJcbiAgICAgICAgICBsb2NhbGl6ZTogdHJ1ZSxcclxuICAgICAgICAgIGxhbmc6IHRoaXMudHJhbnNsYXRlLmN1cnJlbnRMYW5nLFxyXG4gICAgICAgICAgc2VhcmNoVGVybTogJycsXHJcbiAgICAgICAgfSlcclxuICAgICAgICAuZXhlY3V0ZSgpXHJcbiAgICApO1xyXG4gIH1cclxuXHJcblxyXG59XHJcbiJdfQ==
|
|
@@ -102,13 +102,17 @@ export class NotificationsSettingsComponent extends BaseNotification {
|
|
|
102
102
|
_handleUnsubscribe(definition) {
|
|
103
103
|
const subscriptions = this._subscriptionsSub.getValue();
|
|
104
104
|
const _subscription = this._findSubscription(subscriptions, definition);
|
|
105
|
-
|
|
106
|
-
|
|
105
|
+
let _apiCall;
|
|
106
|
+
// no subsc and sent by defult then call api
|
|
107
|
+
if (!_subscription && definition.sentByDefault) {
|
|
108
|
+
_apiCall = this.notificationsService.callUnSubscribeForNoSubscription(definition.uid);
|
|
109
|
+
}
|
|
110
|
+
else {
|
|
111
|
+
_apiCall = this.notificationsService
|
|
112
|
+
.unsubscribe(_subscription.uid);
|
|
107
113
|
}
|
|
108
114
|
this.changingItemId = definition.uid;
|
|
109
|
-
this.
|
|
110
|
-
.unsubscribe(_subscription.uid)
|
|
111
|
-
.pipe(switchMap(() => this.getSubscriptionsByChannel(this._channel.id).pipe(finalize(() => {
|
|
115
|
+
_apiCall.pipe(switchMap(() => this.getSubscriptionsByChannel(this._channel.id).pipe(finalize(() => {
|
|
112
116
|
this.changingItemId = null;
|
|
113
117
|
this._cdr.detectChanges();
|
|
114
118
|
}))), finalize(() => {
|
|
@@ -160,4 +164,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
160
164
|
}], channel: [{
|
|
161
165
|
type: Input
|
|
162
166
|
}] } });
|
|
163
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9ucy1zZXR0aW5ncy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9jb21wb25lbnRzL25vdGlmaWNhdGlvbnMvY29tcG9uZW50cy9ub3RpZmljYXRpb25zLXNldHRpbmdzL25vdGlmaWNhdGlvbnMtc2V0dGluZ3MuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9ub3RpZmljYXRpb25zL2NvbXBvbmVudHMvbm90aWZpY2F0aW9ucy1zZXR0aW5ncy9ub3RpZmljYXRpb25zLXNldHRpbmdzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFFdkIsU0FBUyxFQUNULFlBQVksRUFDWixNQUFNLEVBRU4sS0FBSyxFQUNMLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxhQUFhLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDckUsT0FBTyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQVMxRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNuRSxPQUFPLEVBQ0wsd0JBQXdCLEVBQ3hCLDBCQUEwQixHQUMzQixNQUFNLGtDQUFrQyxDQUFDOzs7Ozs7Ozs7O0FBUTFDLE1BQU0sT0FBTyw4QkFBK0IsU0FBUSxnQkFBZ0I7SUE2QmxFLFlBQ1ksTUFBZ0IsRUFDbEIsaUJBQXFDLEVBQ3JDLElBQXVCLEVBQ3ZCLGNBQW1DLEVBQ1osWUFBaUM7UUFFaEUs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LENBQUM7UUFDOUIsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN0QixPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7OzRIQTNMVSw4QkFBOEIsZ0pBa0MvQixhQUFhO2dIQWxDWiw4QkFBOEIsa01DakMzQywyMURBMENBOzRGRFRhLDhCQUE4QjtrQkFOMUMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsNEJBQTRCO29CQUN0QyxXQUFXLEVBQUUseUNBQXlDO29CQUN0RCxTQUFTLEVBQUUsQ0FBQyx5Q0FBeUMsQ0FBQztvQkFDdEQsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07aUJBQ2hEOzswQkFtQ0ksTUFBTTsyQkFBQyxhQUFhOzRDQWpDYixXQUFXO3NCQUFwQixNQUFNO2dCQUNHLGFBQWE7c0JBQXRCLE1BQU07Z0JBT00sT0FBTztzQkFBbkIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXHJcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgQ29tcG9uZW50LFxyXG4gIEV2ZW50RW1pdHRlcixcclxuICBJbmplY3QsXHJcbiAgSW5qZWN0b3IsXHJcbiAgSW5wdXQsXHJcbiAgT3V0cHV0LFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBNYXRTbGlkZVRvZ2dsZUNoYW5nZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NsaWRlLXRvZ2dsZSc7XHJcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgY29tYmluZUxhdGVzdCwgUmVwbGF5U3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBmaW5hbGl6ZSwgbWFwLCBzd2l0Y2hNYXAsIHRha2VVbnRpbCwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBUcmFuc2xhdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi9jb3JlL3NlcnZpY2VzL3RyYW5zbGF0aW9uL3RyYW5zbGF0aW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBDdXN0b21Ub2FzdHJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vY3VzdG9tLXRvYXN0ci9zZXJ2aWNlcy9jdXN0b20tdG9hc3RyLnNlcnZpY2UnO1xyXG5pbXBvcnQge1xyXG4gIE5vdGlmaWNhdGlvbkRlZmluaXRpb25Nb2RlbCxcclxuICBOb3RpZmljYXRpb25EZWZpbml0aW9uUHJlc2VudGVyLFxyXG4gIE5vdGlmaWNhdGlvblN1YnNjcmlwdGlvblByZXNlbnRlcixcclxuICBWb2NhYnVsYXJ5VHlwZSxcclxufSBmcm9tICcuLi8uLi9tb2RlbHMnO1xyXG5pbXBvcnQgeyBCYXNlTm90aWZpY2F0aW9uIH0gZnJvbSAnLi4vYmFzZS1ub3RpZmljYXRpb25zLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7XHJcbiAgbWFwRGVmaW5pdGlvblRvUHJlc2VudGVyLFxyXG4gIG1hcFN1YnNjcmlwdGlvblRvUHJlc2VudGVyLFxyXG59IGZyb20gJy4vbm90aWZpY2F0aW9ucy1zZXR0aW5ncy5hZGFwdGVyJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYXBwLW5vdGlmaWNhdGlvbnMtc2V0dGluZ3MnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9ub3RpZmljYXRpb25zLXNldHRpbmdzLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9ub3RpZmljYXRpb25zLXNldHRpbmdzLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBOb3RpZmljYXRpb25zU2V0dGluZ3NDb21wb25lbnQgZXh0ZW5kcyBCYXNlTm90aWZpY2F0aW9uIHtcclxuICBAT3V0cHV0KCkgb25TdWJzY3JpYmUgPSBuZXcgRXZlbnRFbWl0dGVyPE5vdGlmaWNhdGlvbkRlZmluaXRpb25QcmVzZW50ZXI+KCk7XHJcbiAgQE91dHB1dCgpIG9uVW5zdWJzY3JpYmUgPSBuZXcgRXZlbnRFbWl0dGVyPFJlY29yZDxzdHJpbmcsIGFueT4+KCk7XHJcblxyXG4gIHByaXZhdGUgcmVhZG9ubHkgX2NoYW5uZWxTdWIgPSBuZXcgUmVwbGF5U3ViamVjdDxWb2NhYnVsYXJ5VHlwZT4oKTtcclxuXHJcbiAgY2hhbmdpbmdJdGVtSWQ6IHN0cmluZztcclxuICBpc0xvYWRpbmdSZXN1bHQgPSBmYWxzZTtcclxuICBwcml2YXRlIF9jaGFubmVsOiBWb2NhYnVsYXJ5VHlwZTtcclxuICBASW5wdXQoKSBzZXQgY2hhbm5lbCh2YWx1ZTogVm9jYWJ1bGFyeVR5cGUpIHtcclxuICAgIHRoaXMuX2NoYW5uZWwgPSB2YWx1ZTtcclxuICAgIGlmICh2YWx1ZSkge1xyXG4gICAgICB0aGlzLl9jaGFubmVsU3ViLm5leHQodmFsdWUpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZ2V0IGN1cnJlbnRMYW5nKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuX3RyYW5zbGF0ZVNlcnZpY2UudXNlckxhbmc7XHJcbiAgfVxyXG4gIHByaXZhdGUgZ2V0IF9hcHBLZXkoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5fZW52aXJvbm1lbnQ/LmFwcEtleTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgcmVhZG9ubHkgX3N1YnNjcmlwdGlvbnNTdWIgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFxyXG4gICAgTm90aWZpY2F0aW9uU3Vic2NyaXB0aW9uUHJlc2VudGVyW11cclxuICA+KFtdKTtcclxuXHJcbiAgcmVhZG9ubHkgc2V0dGluZ3MkID0gdGhpcy5fcHJlcGFyZVNldHRpbmdzKCk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJvdGVjdGVkIGluamVjdDogSW5qZWN0b3IsXHJcbiAgICBwcml2YXRlIF90cmFuc2xhdGVTZXJ2aWNlOiBUcmFuc2xhdGlvblNlcnZpY2UsXHJcbiAgICBwcml2YXRlIF9jZHI6IENoYW5nZURldGVjdG9yUmVmLFxyXG4gICAgcHJpdmF0ZSBfdG9hc3RyU2VydmljZTogQ3VzdG9tVG9hc3RyU2VydmljZSxcclxuICAgIEBJbmplY3QoJ2Vudmlyb25tZW50JykgcHJpdmF0ZSBfZW52aXJvbm1lbnQ6IFJlY29yZDxzdHJpbmcsIGFueT5cclxuICApIHtcclxuICAgIHN1cGVyKGluamVjdCk7XHJcbiAgfVxyXG5cclxuICBnZXRTdWJzY3JpcHRpb25zQnlDaGFubmVsKGNoYW5uZWw6IHN0cmluZykge1xyXG4gICAgcmV0dXJuIHRoaXMubm90aWZpY2F0aW9uc1NlcnZpY2VcclxuICAgICAgLmdldFN1YnNjcmlwdGlvbnMoe1xyXG4gICAgICAgIG5vdGZzdWJzY3JpcHRpb25fY2hhbm5lbDogY2hhbm5lbCxcclxuICAgICAgfSlcclxuICAgICAgLnBpcGUobWFwKChkYXRhKSA9PiBkYXRhLm1hcChtYXBTdWJzY3JpcHRpb25Ub1ByZXNlbnRlcikpKTtcclxuICB9XHJcblxyXG4gIGdldERlZmluaXRpb25zQnlDaGFubmVsKGNoYW5uZWw6IHN0cmluZykge1xyXG4gICAgcmV0dXJuIHRoaXMubm90aWZpY2F0aW9uc1NlcnZpY2VcclxuICAgICAgLmdldERlZmluaXRpb25zKHtcclxuICAgICAgICBub3Rmbm90aWZpY2F0aW9uZGVmX2NoYW5uZWw6IGNoYW5uZWwsXHJcbiAgICAgIH0pXHJcbiAgICAgIC5waXBlKFxyXG4gICAgICAgIG1hcCgocmVzcG9uc2UpID0+IHtcclxuICAgICAgICAgIHJldHVybiByZXNwb25zZS5yZWR1Y2UoKGdyb3VwLCBpdGVtKSA9PiB7XHJcbiAgICAgICAgICAgIGlmICghdGhpcy5fbWF0Y2hJdGVtKGl0ZW0sIGNoYW5uZWwpKSB7XHJcbiAgICAgICAgICAgICAgcmV0dXJuIGdyb3VwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGNvbnN0IF9kYXRhID0gbWFwRGVmaW5pdGlvblRvUHJlc2VudGVyKGl0ZW0pO1xyXG4gICAgICAgICAgICByZXR1cm4gdGhpcy5fZ3JvdXBCeShncm91cCwgX2RhdGEpO1xyXG4gICAgICAgICAgfSwge30gYXMgUmVjb3JkPHN0cmluZywgTm90aWZpY2F0aW9uRGVmaW5pdGlvblByZXNlbnRlcltdPik7XHJcbiAgICAgICAgfSlcclxuICAgICAgKTtcclxuICB9XHJcblxyXG4gIHNldHRpbmdDaGFuZ2VkKFxyXG4gICAgZGVmaW5pdGlvbjogTm90aWZpY2F0aW9uRGVmaW5pdGlvblByZXNlbnRlcixcclxuICAgIHN0YXRlOiBNYXRTbGlkZVRvZ2dsZUNoYW5nZVxyXG4gICkge1xyXG4gICAgaWYgKHN0YXRlLmNoZWNrZWQpIHtcclxuICAgICAgdGhpcy5faGFuZGxlU3Vic2NyaWJlKGRlZmluaXRpb24pO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5faGFuZGxlVW5zdWJzY3JpYmUoZGVmaW5pdGlvbik7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9wcmVwYXJlU2V0dGluZ3MoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5fY2hhbm5lbFN1Yi5waXBlKFxyXG4gICAgICB0YXAoKCkgPT4ge1xyXG4gICAgICAgIHRoaXMuaXNMb2FkaW5nUmVzdWx0ID0gdHJ1ZTtcclxuICAgICAgfSksXHJcbiAgICAgIHN3aXRjaE1hcCgoY2hhbm5lbCkgPT4ge1xyXG4gICAgICAgIGNvbnN0IGRlZmluaXRpb24gPSB0aGlzLmdldERlZmluaXRpb25zQnlDaGFubmVsKGNoYW5uZWwuaWQpO1xyXG4gICAgICAgIGNvbnN0IHN1YnNjcmlwdGlvbnMgPSB0aGlzLmdldFN1YnNjcmlwdGlvbnNCeUNoYW5uZWwoY2hhbm5lbC5pZCkucGlwZShcclxuICAgICAgICAgIHN3aXRjaE1hcCgoZGF0YSkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLl9zdWJzY3JpcHRpb25zU3ViLm5leHQoZGF0YSk7XHJcbiAgICAgICAgICAgIHJldHVybiB0aGlzLl9zdWJzY3JpcHRpb25zU3ViLmFzT2JzZXJ2YWJsZSgpO1xyXG4gICAgICAgICAgfSlcclxuICAgICAgICApO1xyXG4gICAgICAgIHJldHVybiBjb21iaW5lTGF0ZXN0KFtkZWZpbml0aW9uLCBzdWJzY3JpcHRpb25zXSkucGlwZShcclxuICAgICAgICAgIG1hcCgoW2RlZmluaXRpb25zLCBzdWJzY3JpcHRpb25zXSkgPT4gKHsgZGVmaW5pdGlvbnMsIHN1YnNjcmlwdGlvbnMgfSkpLFxyXG4gICAgICAgICAgdGFwKCgpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5pc0xvYWRpbmdSZXN1bHQgPSBmYWxzZTtcclxuICAgICAgICAgICAgdGhpcy5fY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICAgICAgICAgIH0pXHJcbiAgICAgICAgKTtcclxuICAgICAgfSlcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9oYW5kbGVTdWJzY3JpYmUoZGVmaW5pdGlvbjogTm90aWZpY2F0aW9uRGVmaW5pdGlvblByZXNlbnRlcikge1xyXG4gICAgdGhpcy5jaGFuZ2luZ0l0ZW1JZCA9IGRlZmluaXRpb24udWlkO1xyXG4gICAgdGhpcy5ub3RpZmljYXRpb25zU2VydmljZVxyXG4gICAgICAuc3Vic2NyaWJlKGRlZmluaXRpb24udWlkKVxyXG4gICAgICAucGlwZShcclxuICAgICAgICBzd2l0Y2hNYXAoKCkgPT5cclxuICAgICAgICAgIHRoaXMuZ2V0U3Vic2NyaXB0aW9uc0J5Q2hhbm5lbCh0aGlzLl9jaGFubmVsLmlkKS5waXBlKFxyXG4gICAgICAgICAgICBmaW5hbGl6ZSgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgdGhpcy5jaGFuZ2luZ0l0ZW1JZCA9IG51bGw7XHJcbiAgICAgICAgICAgICAgdGhpcy5fY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICAgICAgICAgICAgfSlcclxuICAgICAgICAgIClcclxuICAgICAgICApLFxyXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKVxyXG4gICAgICApXHJcbiAgICAgIC5zdWJzY3JpYmUoKHJlcykgPT4ge1xyXG4gICAgICAgIHRoaXMub25TdWJzY3JpYmUuZW1pdChkZWZpbml0aW9uKTtcclxuICAgICAgICB0aGlzLl9zdWJzY3JpcHRpb25zU3ViLm5leHQocmVzKTtcclxuICAgICAgICB0aGlzLl90b2FzdHJTZXJ2aWNlLnNob3coXHJcbiAgICAgICAgICAnc3VjY2VzcycsXHJcbiAgICAgICAgICAnbm90aWZpY2F0aW9ucy5ub3RpZmljYXRpb25zJyxcclxuICAgICAgICAgICdub3RpZmljYXRpb25zLnN1YnNjcmliZWREb25lJ1xyXG4gICAgICAgICk7XHJcbiAgICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfaGFuZGxlVW5zdWJzY3JpYmUoZGVmaW5pdGlvbjogTm90aWZpY2F0aW9uRGVmaW5pdGlvblByZXNlbnRlcikge1xyXG4gICAgY29uc3Qgc3Vic2NyaXB0aW9ucyA9IHRoaXMuX3N1YnNjcmlwdGlvbnNTdWIuZ2V0VmFsdWUoKTtcclxuICAgIGNvbnN0IF9zdWJzY3JpcHRpb24gPSB0aGlzLl9maW5kU3Vic2NyaXB0aW9uKHN1YnNjcmlwdGlvbnMsIGRlZmluaXRpb24pO1xyXG4gICAgaWYgKCFfc3Vic2NyaXB0aW9uKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLmNoYW5naW5nSXRlbUlkID0gZGVmaW5pdGlvbi51aWQ7XHJcbiAgICB0aGlzLm5vdGlmaWNhdGlvbnNTZXJ2aWNlXHJcbiAgICAgIC51bnN1YnNjcmliZShfc3Vic2NyaXB0aW9uLnVpZClcclxuICAgICAgLnBpcGUoXHJcbiAgICAgICAgc3dpdGNoTWFwKCgpID0+XHJcbiAgICAgICAgICB0aGlzLmdldFN1YnNjcmlwdGlvbnNCeUNoYW5uZWwodGhpcy5fY2hhbm5lbC5pZCkucGlwZShcclxuICAgICAgICAgICAgZmluYWxpemUoKCkgPT4ge1xyXG4gICAgICAgICAgICAgIHRoaXMuY2hhbmdpbmdJdGVtSWQgPSBudWxsO1xyXG4gICAgICAgICAgICAgIHRoaXMuX2Nkci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICApXHJcbiAgICAgICAgKSxcclxuICAgICAgICBmaW5hbGl6ZSgoKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLmNoYW5naW5nSXRlbUlkID0gbnVsbDtcclxuICAgICAgICAgIHRoaXMuX2Nkci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgICAgfSksXHJcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuZGVzdHJveSQpXHJcbiAgICAgIClcclxuICAgICAgLnN1YnNjcmliZSgocmVzKSA9PiB7XHJcbiAgICAgICAgdGhpcy5fc3Vic2NyaXB0aW9uc1N1Yi5uZXh0KHJlcyk7XHJcbiAgICAgICAgdGhpcy5vblVuc3Vic2NyaWJlLmVtaXQoX3N1YnNjcmlwdGlvbik7XHJcbiAgICAgICAgdGhpcy5fdG9hc3RyU2VydmljZS5zaG93KFxyXG4gICAgICAgICAgJ3N1Y2Nlc3MnLFxyXG4gICAgICAgICAgJ25vdGlmaWNhdGlvbnMubm90aWZpY2F0aW9ucycsXHJcbiAgICAgICAgICAnbm90aWZpY2F0aW9ucy51bnN1YnNjcmliZWREb25lJ1xyXG4gICAgICAgICk7XHJcbiAgICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfZmluZFN1YnNjcmlwdGlvbihcclxuICAgIHN1YnNjcmlwdGlvbnM6IE5vdGlmaWNhdGlvblN1YnNjcmlwdGlvblByZXNlbnRlcltdLFxyXG4gICAgZGVmaW5pdGlvbjogTm90aWZpY2F0aW9uRGVmaW5pdGlvblByZXNlbnRlclxyXG4gICkge1xyXG4gICAgcmV0dXJuIHN1YnNjcmlwdGlvbnMuZmluZCgoc3ViKSA9PiB7XHJcbiAgICAgIHJldHVybiAoXHJcbiAgICAgICAgc3ViLmNoYW5uZWwgPT0gZGVmaW5pdGlvbi5jaGFubmVsICYmXHJcbiAgICAgICAgc3ViLmFwcGxpY2F0aW9uS2V5ID09IGRlZmluaXRpb24uYXBwbGljYXRpb25LZXkgJiZcclxuICAgICAgICBzdWIubm90aWZpY2F0aW9uS2V5ID09IGRlZmluaXRpb24ubm90aWZpY2F0aW9uS2V5XHJcbiAgICAgICk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX21hdGNoSXRlbShkZWY6IE5vdGlmaWNhdGlvbkRlZmluaXRpb25Nb2RlbCwgY2hhbm5lbDogc3RyaW5nKSB7XHJcbiAgICByZXR1cm4gKFxyXG4gICAgICBkZWYucHJvcGVydGllc1snbm90aWZfZGVmOmFwcGxpY2F0aW9uS2V5J10gPT0gdGhpcy5fYXBwS2V5ICYmXHJcbiAgICAgIGRlZi5wcm9wZXJ0aWVzWydub3RpZl9kZWY6Y2hhbm5lbCddID09IGNoYW5uZWxcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9ncm91cEJ5KGdyb3VwOiBSZWNvcmQ8c3RyaW5nLCBhbnk+LCBpdGVtOiBOb3RpZmljYXRpb25EZWZpbml0aW9uUHJlc2VudGVyKSB7XHJcbiAgICBjb25zdCBrZXkgPSBpdGVtWydzb3VyY2VUeXBlJ107XHJcbiAgICBncm91cFtrZXldID0gZ3JvdXBba2V5XSA/PyBbXTtcclxuICAgIGdyb3VwW2tleV0ucHVzaChpdGVtKTtcclxuICAgIHJldHVybiBncm91cDtcclxuICB9XHJcbn1cclxuIiwiPG1hdC1zcGlubmVyICpuZ0lmPVwiaXNMb2FkaW5nUmVzdWx0XCIgY2xhc3M9XCJtdC00IG14LWF1dG9cIiBbZGlhbWV0ZXJdPVwiNDhcIj48L21hdC1zcGlubmVyPlxyXG48ZGl2ICpuZ0lmPVwic2V0dGluZ3MkIHwgYXN5bmMgYXMgc2V0dGluZ3NcIiBjbGFzcz1cIm5vdGlmaWNhdGlvbnMtc2V0dGluZ3NcIj5cclxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWlzTG9hZGluZ1Jlc3VsdCAmJiBzZXR0aW5ncy5kZWZpbml0aW9uc1wiPlxyXG4gICAgPGRpdlxyXG4gICAgICAqbmdGb3I9XCJsZXQgZ3JvdXAgb2Ygc2V0dGluZ3MuZGVmaW5pdGlvbnMgfCBrZXl2YWx1ZVwiXHJcbiAgICAgIGNsYXNzPVwibm90aWZpY2F0aW9ucy1zZXR0aW5nc19fc2VjdGlvbiBub3RpZmljYXRpb25zLXNldHRpbmdzX19zZWN0aW9uLS17e1xyXG4gICAgICAgIGdyb3VwLmtleVxyXG4gICAgICB9fVwiXHJcbiAgICA+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJub3RpZmljYXRpb25zLXNldHRpbmdzX19zZWN0aW9uX190aXRsZVwiPlxyXG4gICAgICAgIDxtYXQtaWNvbj4gdHVuZSA8L21hdC1pY29uPlxyXG4gICAgICAgIDxzdHJvbmc+IHt7ICd2b2NhYnVsYXJ5LlZPQ19Ob3RmX1NvdXJjZVR5cGVzLicgKyBncm91cC5rZXkgfCB0cmFuc2xhdGUgfX08L3N0cm9uZz5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJub3RpZmljYXRpb25zLXNldHRpbmdzX19zZWN0aW9uX19jb250ZW50XCI+XHJcbiAgICAgICAgPGRpdiAqbmdGb3I9XCJsZXQgZGVmaW5pdGlvbiBvZiBncm91cC52YWx1ZVwiIGNsYXNzPVwibm90aWZpY2F0aW9ucy1zZXR0aW5nc19fZ3JvdXBcIj5cclxuICAgICAgICAgIDxtYXQtc2xpZGUtdG9nZ2xlXHJcbiAgICAgICAgICAgIFtuYW1lXT1cImRlZmluaXRpb24udGl0bGVcIlxyXG4gICAgICAgICAgICBbY2hlY2tlZF09XCJcclxuICAgICAgICAgICAgICBkZWZpbml0aW9uLmF1dG9TdWJzY3JpcHRpb25cclxuICAgICAgICAgICAgICAgID8gdHJ1ZVxyXG4gICAgICAgICAgICAgICAgOiAoZGVmaW5pdGlvbiB8IGNoZWNrSWZTdWJzY3JpYmVkIDogc2V0dGluZ3Muc3Vic2NyaXB0aW9ucylcclxuICAgICAgICAgICAgXCJcclxuICAgICAgICAgICAgY2xhc3M9XCJub3RpZmljYXRpb25zLXNldHRpbmdzX19ncm91cF9fdG9nZ2xlXCJcclxuICAgICAgICAgICAgW2NsYXNzLmlzLWxvYWRpbmddPVwiY2hhbmdpbmdJdGVtSWQgPT09IGRlZmluaXRpb24udWlkXCJcclxuICAgICAgICAgICAgW2Rpc2FibGVkXT1cImRlZmluaXRpb24uYXV0b1N1YnNjcmlwdGlvblwiXHJcbiAgICAgICAgICAgIChjaGFuZ2UpPVwic2V0dGluZ0NoYW5nZWQoZGVmaW5pdGlvbiwgJGV2ZW50KVwiXHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgICA8L21hdC1zbGlkZS10b2dnbGU+XHJcbiAgICAgICAgICA8c3BhbiBjbGFzcz1cIm5vdGlmaWNhdGlvbnMtc2V0dGluZ3NfX2dyb3VwX190aXRsZVwiXHJcbiAgICAgICAgICAgID57eyBjdXJyZW50TGFuZyA9PSAnYXInID8gZGVmaW5pdGlvbj8uYXJUaXRsZSA6IGRlZmluaXRpb24/LmVuVGl0bGUgfX1cclxuICAgICAgICAgIDwvc3Bhbj5cclxuXHJcbiAgICAgICAgICA8cCBjbGFzcz1cIm5vdGlmaWNhdGlvbnMtc2V0dGluZ3NfX2dyb3VwX19kZXNjcmlwdGlvblwiPlxyXG4gICAgICAgICAgICB7e1xyXG4gICAgICAgICAgICAgIGN1cnJlbnRMYW5nID09ICdhcicgPyBkZWZpbml0aW9uPy5hckRlc2NyaXB0aW9uIDogZGVmaW5pdGlvbj8uZW5EZXNjcmlwdGlvblxyXG4gICAgICAgICAgICB9fVxyXG4gICAgICAgICAgPC9wPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gIDwvbmctY29udGFpbmVyPlxyXG48L2Rpdj5cclxuIl19
|
|
167
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9ucy1zZXR0aW5ncy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9jb21wb25lbnRzL25vdGlmaWNhdGlvbnMvY29tcG9uZW50cy9ub3RpZmljYXRpb25zLXNldHRpbmdzL25vdGlmaWNhdGlvbnMtc2V0dGluZ3MuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9ub3RpZmljYXRpb25zL2NvbXBvbmVudHMvbm90aWZpY2F0aW9ucy1zZXR0aW5ncy9ub3RpZmljYXRpb25zLXNldHRpbmdzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFFdkIsU0FBUyxFQUNULFlBQVksRUFDWixNQUFNLEVBRU4sS0FBSyxFQUNMLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxhQUFhLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDckUsT0FBTyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQVMxRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNuRSxPQUFPLEVBQ0wsd0JBQXdCLEVBQ3hCLDBCQUEwQixHQUMzQixNQUFNLGtDQUFrQyxDQUFDOzs7Ozs7Ozs7O0FBUTFDLE1BQU0sT0FBTyw4QkFBK0IsU0FBUSxnQkFBZ0I7SUE2QmxFLFlBQ1ksTUFBZ0IsRUFDbEIsaUJBQXFDLEVBQ3JDLElBQXVCLEVBQ3ZCLGNBQW1DLEVBQ1osWUFBaUM7UUFFaEUs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QUNKLENBQUM7SUFFTyxRQUFRLENBQUMsS0FBMEIsRUFBRSxJQUFxQzs7UUFDaEYsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQy9CLEtBQUssQ0FBQyxHQUFHLENBQUMsR0FBRyxNQUFBLEtBQUssQ0FBQyxHQUFHLENBQUMsbUNBQUksRUFBRSxDQUFDO1FBQzlCLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDdEIsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDOzs0SEE3TFUsOEJBQThCLGdKQWtDL0IsYUFBYTtnSEFsQ1osOEJBQThCLGtNQ2pDM0MsMjFEQTBDQTs0RkRUYSw4QkFBOEI7a0JBTjFDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLDRCQUE0QjtvQkFDdEMsV0FBVyxFQUFFLHlDQUF5QztvQkFDdEQsU0FBUyxFQUFFLENBQUMseUNBQXlDLENBQUM7b0JBQ3RELGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO2lCQUNoRDs7MEJBbUNJLE1BQU07MkJBQUMsYUFBYTs0Q0FqQ2IsV0FBVztzQkFBcEIsTUFBTTtnQkFDRyxhQUFhO3NCQUF0QixNQUFNO2dCQU9NLE9BQU87c0JBQW5CLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxyXG4gIENoYW5nZURldGVjdG9yUmVmLFxyXG4gIENvbXBvbmVudCxcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgSW5qZWN0LFxyXG4gIEluamVjdG9yLFxyXG4gIElucHV0LFxyXG4gIE91dHB1dCxcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTWF0U2xpZGVUb2dnbGVDaGFuZ2UgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zbGlkZS10b2dnbGUnO1xyXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGNvbWJpbmVMYXRlc3QsIFJlcGxheVN1YmplY3QgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgZmluYWxpemUsIG1hcCwgc3dpdGNoTWFwLCB0YWtlVW50aWwsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgVHJhbnNsYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vY29yZS9zZXJ2aWNlcy90cmFuc2xhdGlvbi90cmFuc2xhdGlvbi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQ3VzdG9tVG9hc3RyU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL2N1c3RvbS10b2FzdHIvc2VydmljZXMvY3VzdG9tLXRvYXN0ci5zZXJ2aWNlJztcclxuaW1wb3J0IHtcclxuICBOb3RpZmljYXRpb25EZWZpbml0aW9uTW9kZWwsXHJcbiAgTm90aWZpY2F0aW9uRGVmaW5pdGlvblByZXNlbnRlcixcclxuICBOb3RpZmljYXRpb25TdWJzY3JpcHRpb25QcmVzZW50ZXIsXHJcbiAgVm9jYWJ1bGFyeVR5cGUsXHJcbn0gZnJvbSAnLi4vLi4vbW9kZWxzJztcclxuaW1wb3J0IHsgQmFzZU5vdGlmaWNhdGlvbiB9IGZyb20gJy4uL2Jhc2Utbm90aWZpY2F0aW9ucy5jb21wb25lbnQnO1xyXG5pbXBvcnQge1xyXG4gIG1hcERlZmluaXRpb25Ub1ByZXNlbnRlcixcclxuICBtYXBTdWJzY3JpcHRpb25Ub1ByZXNlbnRlcixcclxufSBmcm9tICcuL25vdGlmaWNhdGlvbnMtc2V0dGluZ3MuYWRhcHRlcic7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FwcC1ub3RpZmljYXRpb25zLXNldHRpbmdzJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vbm90aWZpY2F0aW9ucy1zZXR0aW5ncy5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vbm90aWZpY2F0aW9ucy1zZXR0aW5ncy5jb21wb25lbnQuc2NzcyddLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgTm90aWZpY2F0aW9uc1NldHRpbmdzQ29tcG9uZW50IGV4dGVuZHMgQmFzZU5vdGlmaWNhdGlvbiB7XHJcbiAgQE91dHB1dCgpIG9uU3Vic2NyaWJlID0gbmV3IEV2ZW50RW1pdHRlcjxOb3RpZmljYXRpb25EZWZpbml0aW9uUHJlc2VudGVyPigpO1xyXG4gIEBPdXRwdXQoKSBvblVuc3Vic2NyaWJlID0gbmV3IEV2ZW50RW1pdHRlcjxSZWNvcmQ8c3RyaW5nLCBhbnk+PigpO1xyXG5cclxuICBwcml2YXRlIHJlYWRvbmx5IF9jaGFubmVsU3ViID0gbmV3IFJlcGxheVN1YmplY3Q8Vm9jYWJ1bGFyeVR5cGU+KCk7XHJcblxyXG4gIGNoYW5naW5nSXRlbUlkOiBzdHJpbmc7XHJcbiAgaXNMb2FkaW5nUmVzdWx0ID0gZmFsc2U7XHJcbiAgcHJpdmF0ZSBfY2hhbm5lbDogVm9jYWJ1bGFyeVR5cGU7XHJcbiAgQElucHV0KCkgc2V0IGNoYW5uZWwodmFsdWU6IFZvY2FidWxhcnlUeXBlKSB7XHJcbiAgICB0aGlzLl9jaGFubmVsID0gdmFsdWU7XHJcbiAgICBpZiAodmFsdWUpIHtcclxuICAgICAgdGhpcy5fY2hhbm5lbFN1Yi5uZXh0KHZhbHVlKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGdldCBjdXJyZW50TGFuZygpIHtcclxuICAgIHJldHVybiB0aGlzLl90cmFuc2xhdGVTZXJ2aWNlLnVzZXJMYW5nO1xyXG4gIH1cclxuICBwcml2YXRlIGdldCBfYXBwS2V5KCkge1xyXG4gICAgcmV0dXJuIHRoaXMuX2Vudmlyb25tZW50Py5hcHBLZXk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHJlYWRvbmx5IF9zdWJzY3JpcHRpb25zU3ViID0gbmV3IEJlaGF2aW9yU3ViamVjdDxcclxuICAgIE5vdGlmaWNhdGlvblN1YnNjcmlwdGlvblByZXNlbnRlcltdXHJcbiAgPihbXSk7XHJcblxyXG4gIHJlYWRvbmx5IHNldHRpbmdzJCA9IHRoaXMuX3ByZXBhcmVTZXR0aW5ncygpO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByb3RlY3RlZCBpbmplY3Q6IEluamVjdG9yLFxyXG4gICAgcHJpdmF0ZSBfdHJhbnNsYXRlU2VydmljZTogVHJhbnNsYXRpb25TZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcclxuICAgIHByaXZhdGUgX3RvYXN0clNlcnZpY2U6IEN1c3RvbVRvYXN0clNlcnZpY2UsXHJcbiAgICBASW5qZWN0KCdlbnZpcm9ubWVudCcpIHByaXZhdGUgX2Vudmlyb25tZW50OiBSZWNvcmQ8c3RyaW5nLCBhbnk+XHJcbiAgKSB7XHJcbiAgICBzdXBlcihpbmplY3QpO1xyXG4gIH1cclxuXHJcbiAgZ2V0U3Vic2NyaXB0aW9uc0J5Q2hhbm5lbChjaGFubmVsOiBzdHJpbmcpIHtcclxuICAgIHJldHVybiB0aGlzLm5vdGlmaWNhdGlvbnNTZXJ2aWNlXHJcbiAgICAgIC5nZXRTdWJzY3JpcHRpb25zKHtcclxuICAgICAgICBub3Rmc3Vic2NyaXB0aW9uX2NoYW5uZWw6IGNoYW5uZWwsXHJcbiAgICAgIH0pXHJcbiAgICAgIC5waXBlKG1hcCgoZGF0YSkgPT4gZGF0YS5tYXAobWFwU3Vic2NyaXB0aW9uVG9QcmVzZW50ZXIpKSk7XHJcbiAgfVxyXG5cclxuICBnZXREZWZpbml0aW9uc0J5Q2hhbm5lbChjaGFubmVsOiBzdHJpbmcpIHtcclxuICAgIHJldHVybiB0aGlzLm5vdGlmaWNhdGlvbnNTZXJ2aWNlXHJcbiAgICAgIC5nZXREZWZpbml0aW9ucyh7XHJcbiAgICAgICAgbm90Zm5vdGlmaWNhdGlvbmRlZl9jaGFubmVsOiBjaGFubmVsLFxyXG4gICAgICB9KVxyXG4gICAgICAucGlwZShcclxuICAgICAgICBtYXAoKHJlc3BvbnNlKSA9PiB7XHJcbiAgICAgICAgICByZXR1cm4gcmVzcG9uc2UucmVkdWNlKChncm91cCwgaXRlbSkgPT4ge1xyXG4gICAgICAgICAgICBpZiAoIXRoaXMuX21hdGNoSXRlbShpdGVtLCBjaGFubmVsKSkge1xyXG4gICAgICAgICAgICAgIHJldHVybiBncm91cDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBjb25zdCBfZGF0YSA9IG1hcERlZmluaXRpb25Ub1ByZXNlbnRlcihpdGVtKTtcclxuICAgICAgICAgICAgcmV0dXJuIHRoaXMuX2dyb3VwQnkoZ3JvdXAsIF9kYXRhKTtcclxuICAgICAgICAgIH0sIHt9IGFzIFJlY29yZDxzdHJpbmcsIE5vdGlmaWNhdGlvbkRlZmluaXRpb25QcmVzZW50ZXJbXT4pO1xyXG4gICAgICAgIH0pXHJcbiAgICAgICk7XHJcbiAgfVxyXG5cclxuICBzZXR0aW5nQ2hhbmdlZChcclxuICAgIGRlZmluaXRpb246IE5vdGlmaWNhdGlvbkRlZmluaXRpb25QcmVzZW50ZXIsXHJcbiAgICBzdGF0ZTogTWF0U2xpZGVUb2dnbGVDaGFuZ2VcclxuICApIHtcclxuICAgIGlmIChzdGF0ZS5jaGVja2VkKSB7XHJcbiAgICAgIHRoaXMuX2hhbmRsZVN1YnNjcmliZShkZWZpbml0aW9uKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuX2hhbmRsZVVuc3Vic2NyaWJlKGRlZmluaXRpb24pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfcHJlcGFyZVNldHRpbmdzKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuX2NoYW5uZWxTdWIucGlwZShcclxuICAgICAgdGFwKCgpID0+IHtcclxuICAgICAgICB0aGlzLmlzTG9hZGluZ1Jlc3VsdCA9IHRydWU7XHJcbiAgICAgIH0pLFxyXG4gICAgICBzd2l0Y2hNYXAoKGNoYW5uZWwpID0+IHtcclxuICAgICAgICBjb25zdCBkZWZpbml0aW9uID0gdGhpcy5nZXREZWZpbml0aW9uc0J5Q2hhbm5lbChjaGFubmVsLmlkKTtcclxuICAgICAgICBjb25zdCBzdWJzY3JpcHRpb25zID0gdGhpcy5nZXRTdWJzY3JpcHRpb25zQnlDaGFubmVsKGNoYW5uZWwuaWQpLnBpcGUoXHJcbiAgICAgICAgICBzd2l0Y2hNYXAoKGRhdGEpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5fc3Vic2NyaXB0aW9uc1N1Yi5uZXh0KGRhdGEpO1xyXG4gICAgICAgICAgICByZXR1cm4gdGhpcy5fc3Vic2NyaXB0aW9uc1N1Yi5hc09ic2VydmFibGUoKTtcclxuICAgICAgICAgIH0pXHJcbiAgICAgICAgKTtcclxuICAgICAgICByZXR1cm4gY29tYmluZUxhdGVzdChbZGVmaW5pdGlvbiwgc3Vic2NyaXB0aW9uc10pLnBpcGUoXHJcbiAgICAgICAgICBtYXAoKFtkZWZpbml0aW9ucywgc3Vic2NyaXB0aW9uc10pID0+ICh7IGRlZmluaXRpb25zLCBzdWJzY3JpcHRpb25zIH0pKSxcclxuICAgICAgICAgIHRhcCgoKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuaXNMb2FkaW5nUmVzdWx0ID0gZmFsc2U7XHJcbiAgICAgICAgICAgIHRoaXMuX2Nkci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgICAgICB9KVxyXG4gICAgICAgICk7XHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfaGFuZGxlU3Vic2NyaWJlKGRlZmluaXRpb246IE5vdGlmaWNhdGlvbkRlZmluaXRpb25QcmVzZW50ZXIpIHtcclxuICAgIHRoaXMuY2hhbmdpbmdJdGVtSWQgPSBkZWZpbml0aW9uLnVpZDtcclxuICAgIHRoaXMubm90aWZpY2F0aW9uc1NlcnZpY2VcclxuICAgICAgLnN1YnNjcmliZShkZWZpbml0aW9uLnVpZClcclxuICAgICAgLnBpcGUoXHJcbiAgICAgICAgc3dpdGNoTWFwKCgpID0+XHJcbiAgICAgICAgICB0aGlzLmdldFN1YnNjcmlwdGlvbnNCeUNoYW5uZWwodGhpcy5fY2hhbm5lbC5pZCkucGlwZShcclxuICAgICAgICAgICAgZmluYWxpemUoKCkgPT4ge1xyXG4gICAgICAgICAgICAgIHRoaXMuY2hhbmdpbmdJdGVtSWQgPSBudWxsO1xyXG4gICAgICAgICAgICAgIHRoaXMuX2Nkci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICApXHJcbiAgICAgICAgKSxcclxuICAgICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95JClcclxuICAgICAgKVxyXG4gICAgICAuc3Vic2NyaWJlKChyZXMpID0+IHtcclxuICAgICAgICB0aGlzLm9uU3Vic2NyaWJlLmVtaXQoZGVmaW5pdGlvbik7XHJcbiAgICAgICAgdGhpcy5fc3Vic2NyaXB0aW9uc1N1Yi5uZXh0KHJlcyk7XHJcbiAgICAgICAgdGhpcy5fdG9hc3RyU2VydmljZS5zaG93KFxyXG4gICAgICAgICAgJ3N1Y2Nlc3MnLFxyXG4gICAgICAgICAgJ25vdGlmaWNhdGlvbnMubm90aWZpY2F0aW9ucycsXHJcbiAgICAgICAgICAnbm90aWZpY2F0aW9ucy5zdWJzY3JpYmVkRG9uZSdcclxuICAgICAgICApO1xyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX2hhbmRsZVVuc3Vic2NyaWJlKGRlZmluaXRpb246IE5vdGlmaWNhdGlvbkRlZmluaXRpb25QcmVzZW50ZXIpIHtcclxuICAgIGNvbnN0IHN1YnNjcmlwdGlvbnMgPSB0aGlzLl9zdWJzY3JpcHRpb25zU3ViLmdldFZhbHVlKCk7XHJcbiAgICBjb25zdCBfc3Vic2NyaXB0aW9uID0gdGhpcy5fZmluZFN1YnNjcmlwdGlvbihzdWJzY3JpcHRpb25zLCBkZWZpbml0aW9uKTtcclxuICAgIGxldCBfYXBpQ2FsbDtcclxuICAgIC8vIG5vIHN1YnNjIGFuZCBzZW50IGJ5IGRlZnVsdCB0aGVuIGNhbGwgYXBpXHJcbiAgICBpZiAoIV9zdWJzY3JpcHRpb24gJiYgZGVmaW5pdGlvbi5zZW50QnlEZWZhdWx0KSB7XHJcbiAgICAgIF9hcGlDYWxsID0gIHRoaXMubm90aWZpY2F0aW9uc1NlcnZpY2UuY2FsbFVuU3Vic2NyaWJlRm9yTm9TdWJzY3JpcHRpb24oZGVmaW5pdGlvbi51aWQpXHJcbiAgICB9ZWxzZSB7XHJcbiAgICAgIF9hcGlDYWxsID0gIHRoaXMubm90aWZpY2F0aW9uc1NlcnZpY2VcclxuICAgICAgLnVuc3Vic2NyaWJlKF9zdWJzY3JpcHRpb24udWlkKVxyXG4gICAgfVxyXG4gICAgdGhpcy5jaGFuZ2luZ0l0ZW1JZCA9IGRlZmluaXRpb24udWlkO1xyXG4gICAgICBfYXBpQ2FsbC5waXBlKFxyXG4gICAgICAgIHN3aXRjaE1hcCgoKSA9PlxyXG4gICAgICAgICAgdGhpcy5nZXRTdWJzY3JpcHRpb25zQnlDaGFubmVsKHRoaXMuX2NoYW5uZWwuaWQpLnBpcGUoXHJcbiAgICAgICAgICAgIGZpbmFsaXplKCgpID0+IHtcclxuICAgICAgICAgICAgICB0aGlzLmNoYW5naW5nSXRlbUlkID0gbnVsbDtcclxuICAgICAgICAgICAgICB0aGlzLl9jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgICAgKVxyXG4gICAgICAgICksXHJcbiAgICAgICAgZmluYWxpemUoKCkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5jaGFuZ2luZ0l0ZW1JZCA9IG51bGw7XHJcbiAgICAgICAgICB0aGlzLl9jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICAgIH0pLFxyXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKVxyXG4gICAgICApXHJcbiAgICAgIC5zdWJzY3JpYmUoKHJlcykgPT4ge1xyXG4gICAgICAgIHRoaXMuX3N1YnNjcmlwdGlvbnNTdWIubmV4dChyZXMpO1xyXG4gICAgICAgIHRoaXMub25VbnN1YnNjcmliZS5lbWl0KF9zdWJzY3JpcHRpb24pO1xyXG4gICAgICAgIHRoaXMuX3RvYXN0clNlcnZpY2Uuc2hvdyhcclxuICAgICAgICAgICdzdWNjZXNzJyxcclxuICAgICAgICAgICdub3RpZmljYXRpb25zLm5vdGlmaWNhdGlvbnMnLFxyXG4gICAgICAgICAgJ25vdGlmaWNhdGlvbnMudW5zdWJzY3JpYmVkRG9uZSdcclxuICAgICAgICApO1xyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX2ZpbmRTdWJzY3JpcHRpb24oXHJcbiAgICBzdWJzY3JpcHRpb25zOiBOb3RpZmljYXRpb25TdWJzY3JpcHRpb25QcmVzZW50ZXJbXSxcclxuICAgIGRlZmluaXRpb246IE5vdGlmaWNhdGlvbkRlZmluaXRpb25QcmVzZW50ZXJcclxuICApIHtcclxuICAgIHJldHVybiBzdWJzY3JpcHRpb25zLmZpbmQoKHN1YikgPT4ge1xyXG4gICAgICByZXR1cm4gKFxyXG4gICAgICAgIHN1Yi5jaGFubmVsID09IGRlZmluaXRpb24uY2hhbm5lbCAmJlxyXG4gICAgICAgIHN1Yi5hcHBsaWNhdGlvbktleSA9PSBkZWZpbml0aW9uLmFwcGxpY2F0aW9uS2V5ICYmXHJcbiAgICAgICAgc3ViLm5vdGlmaWNhdGlvbktleSA9PSBkZWZpbml0aW9uLm5vdGlmaWNhdGlvbktleVxyXG4gICAgICApO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9tYXRjaEl0ZW0oZGVmOiBOb3RpZmljYXRpb25EZWZpbml0aW9uTW9kZWwsIGNoYW5uZWw6IHN0cmluZykge1xyXG4gICAgcmV0dXJuIChcclxuICAgICAgZGVmLnByb3BlcnRpZXNbJ25vdGlmX2RlZjphcHBsaWNhdGlvbktleSddID09IHRoaXMuX2FwcEtleSAmJlxyXG4gICAgICBkZWYucHJvcGVydGllc1snbm90aWZfZGVmOmNoYW5uZWwnXSA9PSBjaGFubmVsXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfZ3JvdXBCeShncm91cDogUmVjb3JkPHN0cmluZywgYW55PiwgaXRlbTogTm90aWZpY2F0aW9uRGVmaW5pdGlvblByZXNlbnRlcikge1xyXG4gICAgY29uc3Qga2V5ID0gaXRlbVsnc291cmNlVHlwZSddO1xyXG4gICAgZ3JvdXBba2V5XSA9IGdyb3VwW2tleV0gPz8gW107XHJcbiAgICBncm91cFtrZXldLnB1c2goaXRlbSk7XHJcbiAgICByZXR1cm4gZ3JvdXA7XHJcbiAgfVxyXG59XHJcbiIsIjxtYXQtc3Bpbm5lciAqbmdJZj1cImlzTG9hZGluZ1Jlc3VsdFwiIGNsYXNzPVwibXQtNCBteC1hdXRvXCIgW2RpYW1ldGVyXT1cIjQ4XCI+PC9tYXQtc3Bpbm5lcj5cclxuPGRpdiAqbmdJZj1cInNldHRpbmdzJCB8IGFzeW5jIGFzIHNldHRpbmdzXCIgY2xhc3M9XCJub3RpZmljYXRpb25zLXNldHRpbmdzXCI+XHJcbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFpc0xvYWRpbmdSZXN1bHQgJiYgc2V0dGluZ3MuZGVmaW5pdGlvbnNcIj5cclxuICAgIDxkaXZcclxuICAgICAgKm5nRm9yPVwibGV0IGdyb3VwIG9mIHNldHRpbmdzLmRlZmluaXRpb25zIHwga2V5dmFsdWVcIlxyXG4gICAgICBjbGFzcz1cIm5vdGlmaWNhdGlvbnMtc2V0dGluZ3NfX3NlY3Rpb24gbm90aWZpY2F0aW9ucy1zZXR0aW5nc19fc2VjdGlvbi0te3tcclxuICAgICAgICBncm91cC5rZXlcclxuICAgICAgfX1cIlxyXG4gICAgPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwibm90aWZpY2F0aW9ucy1zZXR0aW5nc19fc2VjdGlvbl9fdGl0bGVcIj5cclxuICAgICAgICA8bWF0LWljb24+IHR1bmUgPC9tYXQtaWNvbj5cclxuICAgICAgICA8c3Ryb25nPiB7eyAndm9jYWJ1bGFyeS5WT0NfTm90Zl9Tb3VyY2VUeXBlcy4nICsgZ3JvdXAua2V5IHwgdHJhbnNsYXRlIH19PC9zdHJvbmc+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2IGNsYXNzPVwibm90aWZpY2F0aW9ucy1zZXR0aW5nc19fc2VjdGlvbl9fY29udGVudFwiPlxyXG4gICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IGRlZmluaXRpb24gb2YgZ3JvdXAudmFsdWVcIiBjbGFzcz1cIm5vdGlmaWNhdGlvbnMtc2V0dGluZ3NfX2dyb3VwXCI+XHJcbiAgICAgICAgICA8bWF0LXNsaWRlLXRvZ2dsZVxyXG4gICAgICAgICAgICBbbmFtZV09XCJkZWZpbml0aW9uLnRpdGxlXCJcclxuICAgICAgICAgICAgW2NoZWNrZWRdPVwiXHJcbiAgICAgICAgICAgICAgZGVmaW5pdGlvbi5hdXRvU3Vic2NyaXB0aW9uXHJcbiAgICAgICAgICAgICAgICA/IHRydWVcclxuICAgICAgICAgICAgICAgIDogKGRlZmluaXRpb24gfCBjaGVja0lmU3Vic2NyaWJlZCA6IHNldHRpbmdzLnN1YnNjcmlwdGlvbnMpXHJcbiAgICAgICAgICAgIFwiXHJcbiAgICAgICAgICAgIGNsYXNzPVwibm90aWZpY2F0aW9ucy1zZXR0aW5nc19fZ3JvdXBfX3RvZ2dsZVwiXHJcbiAgICAgICAgICAgIFtjbGFzcy5pcy1sb2FkaW5nXT1cImNoYW5naW5nSXRlbUlkID09PSBkZWZpbml0aW9uLnVpZFwiXHJcbiAgICAgICAgICAgIFtkaXNhYmxlZF09XCJkZWZpbml0aW9uLmF1dG9TdWJzY3JpcHRpb25cIlxyXG4gICAgICAgICAgICAoY2hhbmdlKT1cInNldHRpbmdDaGFuZ2VkKGRlZmluaXRpb24sICRldmVudClcIlxyXG4gICAgICAgICAgPlxyXG4gICAgICAgICAgPC9tYXQtc2xpZGUtdG9nZ2xlPlxyXG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJub3RpZmljYXRpb25zLXNldHRpbmdzX19ncm91cF9fdGl0bGVcIlxyXG4gICAgICAgICAgICA+e3sgY3VycmVudExhbmcgPT0gJ2FyJyA/IGRlZmluaXRpb24/LmFyVGl0bGUgOiBkZWZpbml0aW9uPy5lblRpdGxlIH19XHJcbiAgICAgICAgICA8L3NwYW4+XHJcblxyXG4gICAgICAgICAgPHAgY2xhc3M9XCJub3RpZmljYXRpb25zLXNldHRpbmdzX19ncm91cF9fZGVzY3JpcHRpb25cIj5cclxuICAgICAgICAgICAge3tcclxuICAgICAgICAgICAgICBjdXJyZW50TGFuZyA9PSAnYXInID8gZGVmaW5pdGlvbj8uYXJEZXNjcmlwdGlvbiA6IGRlZmluaXRpb24/LmVuRGVzY3JpcHRpb25cclxuICAgICAgICAgICAgfX1cclxuICAgICAgICAgIDwvcD5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICA8L25nLWNvbnRhaW5lcj5cclxuPC9kaXY+XHJcbiJdfQ==
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { Inject, Injectable } from '@angular/core';
|
|
2
|
-
import { HttpHeaders } from '@angular/common/http';
|
|
3
2
|
import { from, Subject, throwError } from 'rxjs';
|
|
4
3
|
import { catchError, map, switchMap, takeUntil } from 'rxjs/operators';
|
|
5
4
|
import { NOTIFICATION_STATUS } from '../constants';
|
|
@@ -9,17 +8,19 @@ import * as i0 from "@angular/core";
|
|
|
9
8
|
import * as i1 from "../../../core/services/nuxeo/nuxeo.service";
|
|
10
9
|
import * as i2 from "../../../core/services/callApi/call-api.service";
|
|
11
10
|
import * as i3 from "@angular/common/http";
|
|
11
|
+
import * as i4 from "../../dynamic-form/services/vocabulary-api.service";
|
|
12
12
|
export class NotificationsService extends SocketService {
|
|
13
13
|
/**
|
|
14
14
|
*
|
|
15
15
|
*/
|
|
16
|
-
constructor(_environment, _nuxeoService, _callApi, _http) {
|
|
16
|
+
constructor(_environment, _nuxeoService, _callApi, _http, vocabularyApi) {
|
|
17
17
|
var _a, _b, _c;
|
|
18
18
|
super(_environment, _nuxeoService);
|
|
19
19
|
this._environment = _environment;
|
|
20
20
|
this._nuxeoService = _nuxeoService;
|
|
21
21
|
this._callApi = _callApi;
|
|
22
22
|
this._http = _http;
|
|
23
|
+
this.vocabularyApi = vocabularyApi;
|
|
23
24
|
this.listenerObserver = new Subject();
|
|
24
25
|
if (((_b = (_a = this._nuxeoService.nuxeoClient) === null || _a === void 0 ? void 0 : _a.user) === null || _b === void 0 ? void 0 : _b.id) && ((_c = this._environment) === null || _c === void 0 ? void 0 : _c.socketUrl)) {
|
|
25
26
|
this.socketConnect()
|
|
@@ -75,6 +76,11 @@ export class NotificationsService extends SocketService {
|
|
|
75
76
|
unsubscribe(id) {
|
|
76
77
|
return this._operation(id, 'unsubscribe');
|
|
77
78
|
}
|
|
79
|
+
callUnSubscribeForNoSubscription(id) {
|
|
80
|
+
return this._operation(id, 'unSubscripFromSelectByDefultSubscitp', {
|
|
81
|
+
companyName: `${this._tenantId}`
|
|
82
|
+
});
|
|
83
|
+
}
|
|
78
84
|
subscribe(id) {
|
|
79
85
|
return this._operation(id, 'subscribe', {
|
|
80
86
|
companyName: `${this._tenantId}`
|
|
@@ -92,10 +98,18 @@ export class NotificationsService extends SocketService {
|
|
|
92
98
|
.execute());
|
|
93
99
|
}
|
|
94
100
|
getSourceTypes() {
|
|
95
|
-
return this._getVocabulary(
|
|
101
|
+
return this._getVocabulary('VOC_Notf_SourceTypes').pipe(map((items) => {
|
|
102
|
+
const defaults = this._environment.notificationDefaultSourceTypes;
|
|
103
|
+
if (defaults === null || defaults === void 0 ? void 0 : defaults.length) {
|
|
104
|
+
return items.filter((item) => defaults.includes(item.id));
|
|
105
|
+
}
|
|
106
|
+
return items;
|
|
107
|
+
}));
|
|
108
|
+
// return this._getVocabulary(`${this._environment.nuxeo}${NotificationsService.sourceType}`);
|
|
96
109
|
}
|
|
97
110
|
getChannels() {
|
|
98
|
-
return this._getVocabulary(
|
|
111
|
+
return this._getVocabulary('VOC_Notf_NotificationChannels');
|
|
112
|
+
// return this._getVocabulary(`${this._environment.nuxeo}${NotificationsService.channels}`);
|
|
99
113
|
}
|
|
100
114
|
getDefinitions(payload = {}) {
|
|
101
115
|
return this._callApi
|
|
@@ -125,11 +139,17 @@ export class NotificationsService extends SocketService {
|
|
|
125
139
|
.pipe(map((data) => mapNotificationsToPagingResponse(data)));
|
|
126
140
|
}
|
|
127
141
|
_getVocabulary(url) {
|
|
128
|
-
return
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
142
|
+
return this.vocabularyApi.getVocabularyList(url);
|
|
143
|
+
// return from(this._nuxeoService.getToken()).pipe(
|
|
144
|
+
// map((token) => {
|
|
145
|
+
// const bearerToken = `Bearer ${token}`;
|
|
146
|
+
// const headers = new HttpHeaders().set('Authorization', bearerToken);
|
|
147
|
+
// return headers;
|
|
148
|
+
// }),
|
|
149
|
+
// switchMap((headers) => this._http.get<ApiResponseModel<VocabularyType>>(url, { headers })),
|
|
150
|
+
// map((response) => response.entries),
|
|
151
|
+
// map((data) => data.sort((a, b) => (b.properties['ordering'] < a.properties['ordering'] ? 1 : -1)))
|
|
152
|
+
// );
|
|
133
153
|
}
|
|
134
154
|
_operation(id, option, params = {}) {
|
|
135
155
|
return from(this._nuxeoService.nuxeoClient
|
|
@@ -165,14 +185,15 @@ NotificationsService.operations = {
|
|
|
165
185
|
unsubscribe: 'AC_UA_NotfNotification_Unsubscribe',
|
|
166
186
|
subscribe: 'AC_UA_NotfNotification_Subscribe',
|
|
167
187
|
reset: 'AC_UA_NotfNotification_ResetSubscription',
|
|
168
|
-
markAllAsUnread: 'AC_UA_NotfNotification_UnreadAll'
|
|
188
|
+
markAllAsUnread: 'AC_UA_NotfNotification_UnreadAll',
|
|
189
|
+
unSubscripFromSelectByDefultSubscitp: 'AC_UA_NotfNotification_UnSubscribe'
|
|
169
190
|
};
|
|
170
|
-
NotificationsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: NotificationsService, deps: [{ token: 'environment' }, { token: i1.NuxeoService }, { token: i2.CallApiService }, { token: i3.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
191
|
+
NotificationsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: NotificationsService, deps: [{ token: 'environment' }, { token: i1.NuxeoService }, { token: i2.CallApiService }, { token: i3.HttpClient }, { token: i4.VocabularyApiService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
171
192
|
NotificationsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: NotificationsService });
|
|
172
193
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: NotificationsService, decorators: [{
|
|
173
194
|
type: Injectable
|
|
174
195
|
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
175
196
|
type: Inject,
|
|
176
197
|
args: ['environment']
|
|
177
|
-
}] }, { type: i1.NuxeoService }, { type: i2.CallApiService }, { type: i3.HttpClient }]; } });
|
|
178
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9ucy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9ub3RpZmljYXRpb25zL3NlcnZpY2VzL25vdGlmaWNhdGlvbnMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVuRCxPQUFPLEVBQWMsV0FBVyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDL0QsT0FBTyxFQUFFLElBQUksRUFBYyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzdELE9BQU8sRUFBRSxVQUFVLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUt2RSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFTbkQsT0FBTyxFQUFFLGdDQUFnQyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ2hFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7Ozs7QUFFakQsTUFBTSxPQUFPLG9CQUFxQixTQUFRLGFBQWE7SUErQnREOztPQUVHO0lBQ0gsWUFDa0MsWUFBaUMsRUFDeEQsYUFBMkIsRUFDM0IsUUFBd0IsRUFDeEIsS0FBaUI7O1FBRTNCLEtBQUssQ0FBQyxZQUFZLEVBQUUsYUFBYSxDQUFDLENBQUM7UUFMRixpQkFBWSxHQUFaLFlBQVksQ0FBcUI7UUFDeEQsa0JBQWEsR0FBYixhQUFhLENBQWM7UUFDM0IsYUFBUSxHQUFSLFFBQVEsQ0FBZ0I7UUFDeEIsVUFBSyxHQUFMLEtBQUssQ0FBWTtRQXJDNUIscUJBQWdCLEdBQUcsSUFBSSxPQUFPLEVBQTRCLENBQUM7UUF5QzFELElBQUksQ0FBQSxNQUFBLE1BQUEs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b0JBQW9COzRGQUFwQixvQkFBb0I7a0JBRGhDLFVBQVU7OzBCQW9DUixNQUFNOzJCQUFDLGFBQWEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbmltcG9ydCB7IEh0dHBDbGllbnQsIEh0dHBIZWFkZXJzIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgeyBmcm9tLCBPYnNlcnZhYmxlLCBTdWJqZWN0LCB0aHJvd0Vycm9yIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IGNhdGNoRXJyb3IsIG1hcCwgc3dpdGNoTWFwLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IEFwaVJlc3BvbnNlTW9kZWwsIEF1dG9tYXRpb25SZXNwb25zZU1vZGVsIH0gZnJvbSAnLi4vLi4vLi4vY29yZS9tb2RlbHMnO1xyXG5pbXBvcnQgeyBDYWxsQXBpU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL2NvcmUvc2VydmljZXMvY2FsbEFwaS9jYWxsLWFwaS5zZXJ2aWNlJztcclxuXHJcbmltcG9ydCB7IE51eGVvU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL2NvcmUvc2VydmljZXMvbnV4ZW8vbnV4ZW8uc2VydmljZSc7XHJcbmltcG9ydCB7IE5PVElGSUNBVElPTl9TVEFUVVMgfSBmcm9tICcuLi9jb25zdGFudHMnO1xyXG5pbXBvcnQge1xyXG5cdE5vdGlmaWNhdGlvbkRlZmluaXRpb25Nb2RlbCxcclxuXHROb3RpZmljYXRpb25NZXNzYWdlTW9kZWwsXHJcblx0Tm90aWZpY2F0aW9uTW9kZWwsXHJcblx0Tm90aWZpY2F0aW9uU3Vic2NyaXB0aW9uTW9kZWwsXHJcblx0UGF5bG9hZFBhcmFtc01vZGVsLFxyXG5cdFZvY2FidWxhcnlUeXBlXHJcbn0gZnJvbSAnLi4vbW9kZWxzJztcclxuaW1wb3J0IHsgbWFwTm90aWZpY2F0aW9uc1RvUGFnaW5nUmVzcG9uc2UgfSBmcm9tICcuLi91dGlsaXRpZXMnO1xyXG5pbXBvcnQgeyBTb2NrZXRTZXJ2aWNlIH0gZnJvbSAnLi9zb2NrZXQuc2VydmljZSc7XHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIE5vdGlmaWNhdGlvbnNTZXJ2aWNlIGV4dGVuZHMgU29ja2V0U2VydmljZSB7XHJcblx0bGlzdGVuZXJPYnNlcnZlciA9IG5ldyBTdWJqZWN0PE5vdGlmaWNhdGlvbk1lc3NhZ2VNb2RlbD4oKTtcclxuXHRzdGF0aWMgcmVhZG9ubHkgc291cmNlVHlwZSA9ICcvYXBpL3YxL2RpcmVjdG9yeS9WT0NfTm90Zl9Tb3VyY2VUeXBlcyc7XHJcblx0c3RhdGljIHJlYWRvbmx5IGNoYW5uZWxzID0gJy9hcGkvdjEvZGlyZWN0b3J5L1ZPQ19Ob3RmX05vdGlmaWNhdGlvbkNoYW5uZWxzJztcclxuXHJcblx0c3RhdGljIHJlYWRvbmx5IHByb3ZpZGVycyA9IHtcclxuXHRcdG5vdGlmaWNhdGlvbnM6ICdQUF9Ob3RmTm90aWZpY2F0aW9uQ29udGVudCcsXHJcblx0XHRub3RpZmljYXRpb25zTWFuZ286ICdQUF9Ob3RmTm90aWZpY2F0aW9uQ29udGVudF9Nb25nbycsXHJcblx0XHRzdWJzY3JpcHRpb246ICdQUF9Ob3RmU3Vic2NyaXB0aW9uX01vbmdvJyxcclxuXHRcdGRlZmluaXRpb246ICdQUF9Ob3RmTm90aWZpY2F0aW9uRGVmaW5pdGlvbl9Nb25nbydcclxuXHR9O1xyXG5cclxuXHRzdGF0aWMgcmVhZG9ubHkgb3BlcmF0aW9ucyA9IHtcclxuXHRcdG1hcmtBbGxBc1JlYWQ6ICdBQ19VQV9Ob3RmTm90aWZpY2F0aW9uX1JlYWRBbGwnLFxyXG5cdFx0bWFya0FzUmVhZDogJ0FDX1VBX05vdGZOb3RpZmljYXRpb25fUmVhZCcsXHJcblx0XHRtYXJrQXNVbnJlYWQ6ICdBQ19VQV9Ob3RmTm90aWZpY2F0aW9uX1VucmVhZCcsXHJcblx0XHRtYXJrQXNEZWxldGVkOiAnQUNfVUFfTm90Zk5vdGlmaWNhdGlvbl9Ub0RlbGV0ZWQnLFxyXG5cdFx0dW5zdWJzY3JpYmU6ICdBQ19VQV9Ob3RmTm90aWZpY2F0aW9uX1Vuc3Vic2NyaWJlJyxcclxuXHRcdHN1YnNjcmliZTogJ0FDX1VBX05vdGZOb3RpZmljYXRpb25fU3Vic2NyaWJlJyxcclxuXHRcdHJlc2V0OiAnQUNfVUFfTm90Zk5vdGlmaWNhdGlvbl9SZXNldFN1YnNjcmlwdGlvbicsXHJcblx0XHRtYXJrQWxsQXNVbnJlYWQ6ICdBQ19VQV9Ob3RmTm90aWZpY2F0aW9uX1VucmVhZEFsbCdcclxuXHR9O1xyXG5cclxuXHRwcml2YXRlIGdldCBfdGVuYW50SWQoKSB7XHJcblx0XHRyZXR1cm4gdGhpcy5fbnV4ZW9TZXJ2aWNlLm51eGVvQ2xpZW50LnVzZXIucHJvcGVydGllcy50ZW5hbnRJZCA/PyAnJztcclxuXHR9XHJcblxyXG5cdHByaXZhdGUgZ2V0IF9hcHBLZXkoKSB7XHJcblx0XHRyZXR1cm4gdGhpcy5fZW52aXJvbm1lbnQ/LmFwcEtleTtcclxuXHR9XHJcblxyXG5cdC8qKlxyXG5cdCAqXHJcblx0ICovXHJcblx0Y29uc3RydWN0b3IoXHJcblx0XHRASW5qZWN0KCdlbnZpcm9ubWVudCcpIHByb3RlY3RlZCBfZW52aXJvbm1lbnQ6IFJlY29yZDxzdHJpbmcsIGFueT4sXHJcblx0XHRwcm90ZWN0ZWQgX251eGVvU2VydmljZTogTnV4ZW9TZXJ2aWNlLFxyXG5cdFx0cHJvdGVjdGVkIF9jYWxsQXBpOiBDYWxsQXBpU2VydmljZSxcclxuXHRcdHByb3RlY3RlZCBfaHR0cDogSHR0cENsaWVudFxyXG5cdCkge1xyXG5cdFx0c3VwZXIoX2Vudmlyb25tZW50LCBfbnV4ZW9TZXJ2aWNlKTtcclxuXHJcblx0XHRpZiAodGhpcy5fbnV4ZW9TZXJ2aWNlLm51eGVvQ2xpZW50Py51c2VyPy5pZCAmJiB0aGlzLl9lbnZpcm9ubWVudD8uc29ja2V0VXJsKSB7XHJcblx0XHRcdHRoaXMuc29ja2V0Q29ubmVjdCgpXHJcblx0XHRcdFx0LnBpcGUoXHJcblx0XHRcdFx0XHRzd2l0Y2hNYXAoKCkgPT4gdGhpcy5vbk1lc3NhZ2UkKSxcclxuXHRcdFx0XHRcdGNhdGNoRXJyb3IoKGVycm9yOiBhbnkpID0+IHtcclxuXHRcdFx0XHRcdFx0Y29uc29sZS5sb2coZXJyb3IpO1xyXG5cdFx0XHRcdFx0XHRyZXR1cm4gdGhyb3dFcnJvcigoKSA9PiBlcnJvcik7XHJcblx0XHRcdFx0XHR9KSxcclxuXHRcdFx0XHRcdHRha2VVbnRpbCh0aGlzLl9kZXN0cm95JClcclxuXHRcdFx0XHQpXHJcblx0XHRcdFx0LnN1YnNjcmliZSgocmVzKSA9PiB7XHJcblx0XHRcdFx0XHR0aGlzLmxpc3RlbmVyT2JzZXJ2ZXIubmV4dChyZXMpO1xyXG5cdFx0XHRcdH0pO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0Z2V0VW5SZWFkQ291bnQoKTogT2JzZXJ2YWJsZTxudW1iZXI+IHtcclxuXHRcdHJldHVybiB0aGlzLl9jYWxsQXBpXHJcblx0XHRcdC5xdWVyeShcclxuXHRcdFx0XHR7XHJcblx0XHRcdFx0XHRwYWdlUHJvdmlkZXI6IE5vdGlmaWNhdGlvbnNTZXJ2aWNlLnByb3ZpZGVycy5ub3RpZmljYXRpb25zTWFuZ28sXHJcblx0XHRcdFx0XHRwYWdlU2l6ZTogMSxcclxuXHRcdFx0XHRcdG5vdGZub3RpZmljYXRpb25jb250ZW50X2NvbXBhbnk6IGAke3RoaXMuX3RlbmFudElkfWAsXHJcblx0XHRcdFx0XHRub3Rmbm90aWZpY2F0aW9uY29udGVudF9hcHBsaWNhdGlvbktleTogdGhpcy5fYXBwS2V5LFxyXG5cdFx0XHRcdFx0bm90Zm5vdGlmaWNhdGlvbmNvbnRlbnRfc3RhdHVzOiBOT1RJRklDQVRJT05fU1RBVFVTLm5ld1xyXG5cdFx0XHRcdH0sXHJcblx0XHRcdFx0e31cclxuXHRcdFx0KVxyXG5cdFx0XHQucGlwZShtYXAoKGRhdGE6IEFwaVJlc3BvbnNlTW9kZWw8Tm90aWZpY2F0aW9uTW9kZWw+KSA9PiBkYXRhLnRvdGFsU2l6ZSA/PyAwKSk7XHJcblx0fVxyXG5cclxuXHRnZXROb3RpZmljYXRpb25zTW9uZ28ocGF5bG9hZDogUGF5bG9hZFBhcmFtc01vZGVsID0ge30pIHtcclxuXHRcdHJldHVybiB0aGlzLl9nZXROb3RpZmljYXRpb25zKE5vdGlmaWNhdGlvbnNTZXJ2aWNlLnByb3ZpZGVycy5ub3RpZmljYXRpb25zTWFuZ28sIHBheWxvYWQpO1xyXG5cdH1cclxuXHJcblx0Z2V0Tm90aWZpY2F0aW9ucyhwYXlsb2FkOiBQYXlsb2FkUGFyYW1zTW9kZWwgPSB7fSkge1xyXG5cdFx0cmV0dXJuIHRoaXMuX2dldE5vdGlmaWNhdGlvbnMoTm90aWZpY2F0aW9uc1NlcnZpY2UucHJvdmlkZXJzLm5vdGlmaWNhdGlvbnMsIHBheWxvYWQpO1xyXG5cdH1cclxuXHJcblx0bWFya0FsbEFzUmVhZCgpIHtcclxuXHRcdHJldHVybiB0aGlzLl9nbG9iYWxPcGVyYXRpb24oJ21hcmtBbGxBc1JlYWQnKTtcclxuXHR9XHJcblxyXG5cdG1hcmtBbGxOZXdBc1VucmVhZCgpIHtcclxuXHRcdHJldHVybiB0aGlzLl9nbG9iYWxPcGVyYXRpb24oJ21hcmtBbGxBc1VucmVhZCcpO1xyXG5cdH1cclxuXHJcblx0bWFya0FzUmVhZChpZDogc3RyaW5nKSB7XHJcblx0XHRyZXR1cm4gdGhpcy5fb3BlcmF0aW9uKGlkLCAnbWFya0FzUmVhZCcpO1xyXG5cdH1cclxuXHJcblx0bWFya0FzVW5yZWFkKGlkOiBzdHJpbmcpIHtcclxuXHRcdHJldHVybiB0aGlzLl9vcGVyYXRpb24oaWQsICdtYXJrQXNVbnJlYWQnKTtcclxuXHR9XHJcblxyXG5cdG1hcmtBc0RlbGV0ZWQoaWQ6IHN0cmluZykge1xyXG5cdFx0cmV0dXJuIHRoaXMuX29wZXJhdGlvbihpZCwgJ21hcmtBc0RlbGV0ZWQnKTtcclxuXHR9XHJcblxyXG5cdHVuc3Vic2NyaWJlKGlkOiBzdHJpbmcpIHtcclxuXHRcdHJldHVybiB0aGlzLl9vcGVyYXRpb24oaWQsICd1bnN1YnNjcmliZScpO1xyXG5cdH1cclxuXHJcblx0c3Vic2NyaWJlKGlkOiBzdHJpbmcpIHtcclxuXHRcdHJldHVybiB0aGlzLl9vcGVyYXRpb24oaWQsICdzdWJzY3JpYmUnLCB7XHJcblx0XHRcdGNvbXBhbnlOYW1lOiBgJHt0aGlzLl90ZW5hbnRJZH1gXHJcblx0XHR9KTtcclxuXHR9XHJcblxyXG5cdHJlc2V0U3Vic2NyaXB0aW9ucygpIHtcclxuXHRcdHJldHVybiBmcm9tKFxyXG5cdFx0XHR0aGlzLl9udXhlb1NlcnZpY2UubnV4ZW9DbGllbnRcclxuXHRcdFx0XHQub3BlcmF0aW9uKE5vdGlmaWNhdGlvbnNTZXJ2aWNlLm9wZXJhdGlvbnMucmVzZXQsIHtcclxuXHRcdFx0XHRcdHVybDogYCR7dGhpcy5fZW52aXJvbm1lbnQubnV4ZW99JHt0aGlzLl9lbnZpcm9ubWVudC5jdXN0b21BdXRvbWF0aW9ufWBcclxuXHRcdFx0XHR9KVxyXG5cdFx0XHRcdC5wYXJhbXMoe1xyXG5cdFx0XHRcdFx0Y29tcGFueU5hbWU6IGAke3RoaXMuX3RlbmFudElkfWAsXHJcblx0XHRcdFx0XHRhcHBsaWNhdGlvbktleTogdGhpcy5fYXBwS2V5XHJcblx0XHRcdFx0fSlcclxuXHRcdFx0XHQuZXhlY3V0ZSgpXHJcblx0XHQpIGFzIE9ic2VydmFibGU8QXV0b21hdGlvblJlc3BvbnNlTW9kZWw8UmVjb3JkPFByb3BlcnR5S2V5LCBhbnk+Pj47XHJcblx0fVxyXG5cclxuXHRnZXRTb3VyY2VUeXBlcygpIHtcclxuXHRcdHJldHVybiB0aGlzLl9nZXRWb2NhYnVsYXJ5KGAke3RoaXMuX2Vudmlyb25tZW50Lm51eGVvfSR7Tm90aWZpY2F0aW9uc1NlcnZpY2Uuc291cmNlVHlwZX1gKTtcclxuXHR9XHJcblxyXG5cdGdldENoYW5uZWxzKCkge1xyXG5cdFx0cmV0dXJuIHRoaXMuX2dldFZvY2FidWxhcnkoYCR7dGhpcy5fZW52aXJvbm1lbnQubnV4ZW99JHtOb3RpZmljYXRpb25zU2VydmljZS5jaGFubmVsc31gKTtcclxuXHR9XHJcblxyXG5cdGdldERlZmluaXRpb25zKHBheWxvYWQ6IFBheWxvYWRQYXJhbXNNb2RlbCA9IHt9KSB7XHJcblx0XHRyZXR1cm4gdGhpcy5fY2FsbEFwaVxyXG5cdFx0XHQucXVlcnkoXHJcblx0XHRcdFx0e1xyXG5cdFx0XHRcdFx0cGFnZVByb3ZpZGVyOiBOb3RpZmljYXRpb25zU2VydmljZS5wcm92aWRlcnMuZGVmaW5pdGlvbixcclxuXHRcdFx0XHRcdG5vdGZub3RpZmljYXRpb25kZWZfYXBwbGljYXRpb25LZXk6IHRoaXMuX2FwcEtleSxcclxuXHRcdFx0XHRcdHBhZ2VTaXplOiBOdW1iZXIuTUFYX1NBRkVfSU5URUdFUixcclxuXHRcdFx0XHRcdG5vdGZub3RpZmljYXRpb25kZWZfaXNBY3RpdmU6IHRydWUsXHJcblx0XHRcdFx0XHQuLi5wYXlsb2FkXHJcblx0XHRcdFx0fSxcclxuXHRcdFx0XHR7XHJcblx0XHRcdFx0XHRoZWFkZXJzOiB7XHJcblx0XHRcdFx0XHRcdHByb3BlcnRpZXM6ICcqJ1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0KVxyXG5cdFx0XHQucGlwZShtYXAoKGRhdGE6IEFwaVJlc3BvbnNlTW9kZWw8Tm90aWZpY2F0aW9uRGVmaW5pdGlvbk1vZGVsPikgPT4gZGF0YS5lbnRyaWVzKSk7XHJcblx0fVxyXG5cclxuXHRnZXRTdWJzY3JpcHRpb25zKHBheWxvYWQ6IFBheWxvYWRQYXJhbXNNb2RlbCA9IHt9KSB7XHJcblx0XHRyZXR1cm4gdGhpcy5fY2FsbEFwaVxyXG5cdFx0XHQucXVlcnkoXHJcblx0XHRcdFx0e1xyXG5cdFx0XHRcdFx0cGFnZVByb3ZpZGVyOiBOb3RpZmljYXRpb25zU2VydmljZS5wcm92aWRlcnMuc3Vic2NyaXB0aW9uLFxyXG5cdFx0XHRcdFx0bm90ZnN1YnNjcmlwdGlvbl9jb21wYW55TmFtZTogYCR7dGhpcy5fdGVuYW50SWR9YCxcclxuXHRcdFx0XHRcdG5vdGZzdWJzY3JpcHRpb25fYXBwbGljYXRpb25LZXk6IHRoaXMuX2FwcEtleSxcclxuXHRcdFx0XHRcdHBhZ2VTaXplOiBOdW1iZXIuTUFYX1NBRkVfSU5URUdFUixcclxuXHRcdFx0XHRcdC4uLnBheWxvYWRcclxuXHRcdFx0XHR9LFxyXG5cdFx0XHRcdHtcclxuXHRcdFx0XHRcdGhlYWRlcnM6IHtcclxuXHRcdFx0XHRcdFx0cHJvcGVydGllczogJyonXHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHQpXHJcblx0XHRcdC5waXBlKG1hcCgoZGF0YTogQXBpUmVzcG9uc2VNb2RlbDxOb3RpZmljYXRpb25TdWJzY3JpcHRpb25Nb2RlbD4pID0+IGRhdGEuZW50cmllcykpO1xyXG5cdH1cclxuXHJcblx0cHJpdmF0ZSBfZ2V0Tm90aWZpY2F0aW9ucyhwYWdlUHJvdmlkZXI6IHN0cmluZywgcGF5bG9hZDogUGF5bG9hZFBhcmFtc01vZGVsID0ge30pIHtcclxuXHRcdHJldHVybiB0aGlzLl9jYWxsQXBpXHJcblx0XHRcdC5xdWVyeShcclxuXHRcdFx0XHR7XHJcblx0XHRcdFx0XHRwYWdlUHJvdmlkZXI6IHBhZ2VQcm92aWRlcixcclxuXHRcdFx0XHRcdG5vdGZub3RpZmljYXRpb25jb250ZW50X2NvbXBhbnk6IGAke3RoaXMuX3RlbmFudElkfWAsXHJcblx0XHRcdFx0XHRub3Rmbm90aWZpY2F0aW9uY29udGVudF9hcHBsaWNhdGlvbktleTogdGhpcy5fYXBwS2V5LFxyXG5cdFx0XHRcdFx0Li4ucGF5bG9hZFxyXG5cdFx0XHRcdH0sXHJcblx0XHRcdFx0e1xyXG5cdFx0XHRcdFx0aGVhZGVyczoge1xyXG5cdFx0XHRcdFx0XHRwcm9wZXJ0aWVzOiAnKidcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdClcclxuXHRcdFx0LnBpcGUobWFwKChkYXRhOiBBcGlSZXNwb25zZU1vZGVsPE5vdGlmaWNhdGlvbk1vZGVsPikgPT4gbWFwTm90aWZpY2F0aW9uc1RvUGFnaW5nUmVzcG9uc2UoZGF0YSkpKTtcclxuXHR9XHJcblxyXG5cdHByaXZhdGUgX2dldFZvY2FidWxhcnkodXJsOiBzdHJpbmcpOiBPYnNlcnZhYmxlPFZvY2FidWxhcnlUeXBlW10+IHtcclxuXHRcdHJldHVybiBmcm9tKHRoaXMuX251eGVvU2VydmljZS5nZXRUb2tlbigpKS5waXBlKFxyXG5cdFx0XHRtYXAoKHRva2VuKSA9PiB7XHJcblx0XHRcdFx0Y29uc3QgYmVhcmVyVG9rZW4gPSBgQmVhcmVyICR7dG9rZW59YDtcclxuXHRcdFx0XHRjb25zdCBoZWFkZXJzID0gbmV3IEh0dHBIZWFkZXJzKCkuc2V0KCdBdXRob3JpemF0aW9uJywgYmVhcmVyVG9rZW4pO1xyXG5cdFx0XHRcdHJldHVybiBoZWFkZXJzO1xyXG5cdFx0XHR9KSxcclxuXHRcdFx0c3dpdGNoTWFwKChoZWFkZXJzKSA9PiB0aGlzLl9odHRwLmdldDxBcGlSZXNwb25zZU1vZGVsPFZvY2FidWxhcnlUeXBlPj4odXJsLCB7IGhlYWRlcnMgfSkpLFxyXG5cdFx0XHRtYXAoKHJlc3BvbnNlKSA9PiByZXNwb25zZS5lbnRyaWVzKSxcclxuXHRcdFx0bWFwKChkYXRhKSA9PiBkYXRhLnNvcnQoKGEsIGIpID0+IChiLnByb3BlcnRpZXNbJ29yZGVyaW5nJ10gPCBhLnByb3BlcnRpZXNbJ29yZGVyaW5nJ10gPyAxIDogLTEpKSlcclxuXHRcdCk7XHJcblx0fVxyXG5cdHByaXZhdGUgX29wZXJhdGlvbjxUUmVzcG9uc2UgPSBSZWNvcmQ8UHJvcGVydHlLZXksIGFueT4+KFxyXG5cdFx0aWQ6IHN0cmluZyxcclxuXHRcdG9wdGlvbjoga2V5b2YgdHlwZW9mIE5vdGlmaWNhdGlvbnNTZXJ2aWNlLm9wZXJhdGlvbnMsXHJcblx0XHRwYXJhbXM6IFJlY29yZDxzdHJpbmcsIGFueT4gPSB7fVxyXG5cdCkge1xyXG5cdFx0cmV0dXJuIGZyb20oXHJcblx0XHRcdHRoaXMuX251eGVvU2VydmljZS5udXhlb0NsaWVudFxyXG5cdFx0XHRcdC5vcGVyYXRpb24oTm90aWZpY2F0aW9uc1NlcnZpY2Uub3BlcmF0aW9uc1tvcHRpb25dLCB7XHJcblx0XHRcdFx0XHR1cmw6IGAke3RoaXMuX2Vudmlyb25tZW50Lm51eGVvfSR7dGhpcy5fZW52aXJvbm1lbnQuY3VzdG9tQXV0b21hdGlvbn1gXHJcblx0XHRcdFx0fSlcclxuXHRcdFx0XHQucGFyYW1zKHBhcmFtcylcclxuXHRcdFx0XHQuaW5wdXQoaWQpXHJcblx0XHRcdFx0LmV4ZWN1dGUoKVxyXG5cdFx0KSBhcyBPYnNlcnZhYmxlPEF1dG9tYXRpb25SZXNwb25zZU1vZGVsPFRSZXNwb25zZT4+O1xyXG5cdH1cclxuXHJcblx0cHJpdmF0ZSBfZ2xvYmFsT3BlcmF0aW9uKFxyXG5cdFx0b3B0aW9uOiBrZXlvZiB0eXBlb2YgTm90aWZpY2F0aW9uc1NlcnZpY2Uub3BlcmF0aW9ucyxcclxuXHRcdHBhcmFtczogUmVjb3JkPHN0cmluZywgYW55PiA9IHt9LFxyXG5cdFx0aGVhZGVyczogUmVjb3JkPHN0cmluZywgYW55PiA9IHt9XHJcblx0KSB7XHJcblx0XHRyZXR1cm4gZnJvbShcclxuXHRcdFx0dGhpcy5fbnV4ZW9TZXJ2aWNlLm51eGVvQ2xpZW50XHJcblx0XHRcdFx0Lm9wZXJhdGlvbihOb3RpZmljYXRpb25zU2VydmljZS5vcGVyYXRpb25zW29wdGlvbl0sIHtcclxuXHRcdFx0XHRcdHVybDogYCR7dGhpcy5fZW52aXJvbm1lbnQubnV4ZW99JHt0aGlzLl9lbnZpcm9ubWVudC5jdXN0b21BdXRvbWF0aW9ufWBcclxuXHRcdFx0XHR9KVxyXG5cdFx0XHRcdC5wYXJhbXMoe1xyXG5cdFx0XHRcdFx0Y29tcGFueU5hbWU6IGAke3RoaXMuX3RlbmFudElkfWAsXHJcblx0XHRcdFx0XHRhcHBsaWNhdGlvbktleTogdGhpcy5fYXBwS2V5LFxyXG5cdFx0XHRcdFx0Li4ucGFyYW1zXHJcblx0XHRcdFx0fSlcclxuXHRcdFx0XHQuZXhlY3V0ZSh7fSlcclxuXHRcdCkgYXMgT2JzZXJ2YWJsZTxBdXRvbWF0aW9uUmVzcG9uc2VNb2RlbDxSZWNvcmQ8UHJvcGVydHlLZXksIGFueT4+PjtcclxuXHR9XHJcbn1cclxuIl19
|
|
198
|
+
}] }, { type: i1.NuxeoService }, { type: i2.CallApiService }, { type: i3.HttpClient }, { type: i4.VocabularyApiService }]; } });
|
|
199
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9ucy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9ub3RpZmljYXRpb25zL3NlcnZpY2VzL25vdGlmaWNhdGlvbnMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUduRCxPQUFPLEVBQUUsSUFBSSxFQUFjLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDN0QsT0FBTyxFQUFFLFVBQVUsRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBS3ZFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQVNuRCxPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDaEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtCQUFrQixDQUFDOzs7Ozs7QUFHakQsTUFBTSxPQUFPLG9CQUFxQixTQUFRLGFBQWE7SUFnQ3REOztPQUVHO0lBQ0gsWUFDa0MsWUFBaUMsRUFDeEQsYUFBMkIsRUFDM0IsUUFBd0IsRUFDeEIsS0FBaUIsRUFDakIsYUFBb0M7O1FBRzlDLEtBQUssQ0FBQyxZQUFZLEVBQUUsYUFBYSxDQUFDLENBQUM7UUFQRixpQkFBWSxHQUFaLFlBQVksQ0FBcUI7UUFDeEQsa0JBQWEsR0FBYixhQUFhLENBQWM7UUFDM0IsYUFBUSxHQUFSLFFBQVEsQ0FBZ0I7UUFDeEIsVUFBSyxHQUFMLEtBQUssQ0FBWTtRQUNqQixrQkFBYSxHQUFiLGFBQWEsQ0FBdUI7UUF2Qy9DLHFCQUFnQixHQUFHLElBQUksT0FBTyxFQUE0QixDQUFDO1FBNEMxRCxJQUFJLENBQUEsTUFBQSxNQUFBLElB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dCB7IEluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuaW1wb3J0IHsgSHR0cENsaWVudCwgSHR0cEhlYWRlcnMgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcbmltcG9ydCB7IGZyb20sIE9ic2VydmFibGUsIFN1YmplY3QsIHRocm93RXJyb3IgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgY2F0Y2hFcnJvciwgbWFwLCBzd2l0Y2hNYXAsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgQXBpUmVzcG9uc2VNb2RlbCwgQXV0b21hdGlvblJlc3BvbnNlTW9kZWwgfSBmcm9tICcuLi8uLi8uLi9jb3JlL21vZGVscyc7XHJcbmltcG9ydCB7IENhbGxBcGlTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vY29yZS9zZXJ2aWNlcy9jYWxsQXBpL2NhbGwtYXBpLnNlcnZpY2UnO1xyXG5cclxuaW1wb3J0IHsgTnV4ZW9TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vY29yZS9zZXJ2aWNlcy9udXhlby9udXhlby5zZXJ2aWNlJztcclxuaW1wb3J0IHsgTk9USUZJQ0FUSU9OX1NUQVRVUyB9IGZyb20gJy4uL2NvbnN0YW50cyc7XHJcbmltcG9ydCB7XHJcblx0Tm90aWZpY2F0aW9uRGVmaW5pdGlvbk1vZGVsLFxyXG5cdE5vdGlmaWNhdGlvbk1lc3NhZ2VNb2RlbCxcclxuXHROb3RpZmljYXRpb25Nb2RlbCxcclxuXHROb3RpZmljYXRpb25TdWJzY3JpcHRpb25Nb2RlbCxcclxuXHRQYXlsb2FkUGFyYW1zTW9kZWwsXHJcblx0Vm9jYWJ1bGFyeVR5cGVcclxufSBmcm9tICcuLi9tb2RlbHMnO1xyXG5pbXBvcnQgeyBtYXBOb3RpZmljYXRpb25zVG9QYWdpbmdSZXNwb25zZSB9IGZyb20gJy4uL3V0aWxpdGllcyc7XHJcbmltcG9ydCB7IFNvY2tldFNlcnZpY2UgfSBmcm9tICcuL3NvY2tldC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgVm9jYWJ1bGFyeUFwaVNlcnZpY2UgfSBmcm9tICcuLi8uLi9keW5hbWljLWZvcm0vc2VydmljZXMvdm9jYWJ1bGFyeS1hcGkuc2VydmljZSc7XHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIE5vdGlmaWNhdGlvbnNTZXJ2aWNlIGV4dGVuZHMgU29ja2V0U2VydmljZSB7XHJcblx0bGlzdGVuZXJPYnNlcnZlciA9IG5ldyBTdWJqZWN0PE5vdGlmaWNhdGlvbk1lc3NhZ2VNb2RlbD4oKTtcclxuXHRzdGF0aWMgcmVhZG9ubHkgc291cmNlVHlwZSA9ICcvYXBpL3YxL2RpcmVjdG9yeS9WT0NfTm90Zl9Tb3VyY2VUeXBlcyc7XHJcblx0c3RhdGljIHJlYWRvbmx5IGNoYW5uZWxzID0gJy9hcGkvdjEvZGlyZWN0b3J5L1ZPQ19Ob3RmX05vdGlmaWNhdGlvbkNoYW5uZWxzJztcclxuXHJcblx0c3RhdGljIHJlYWRvbmx5IHByb3ZpZGVycyA9IHtcclxuXHRcdG5vdGlmaWNhdGlvbnM6ICdQUF9Ob3RmTm90aWZpY2F0aW9uQ29udGVudCcsXHJcblx0XHRub3RpZmljYXRpb25zTWFuZ286ICdQUF9Ob3RmTm90aWZpY2F0aW9uQ29udGVudF9Nb25nbycsXHJcblx0XHRzdWJzY3JpcHRpb246ICdQUF9Ob3RmU3Vic2NyaXB0aW9uX01vbmdvJyxcclxuXHRcdGRlZmluaXRpb246ICdQUF9Ob3RmTm90aWZpY2F0aW9uRGVmaW5pdGlvbl9Nb25nbydcclxuXHR9O1xyXG5cclxuXHRzdGF0aWMgcmVhZG9ubHkgb3BlcmF0aW9ucyA9IHtcclxuXHRcdG1hcmtBbGxBc1JlYWQ6ICdBQ19VQV9Ob3RmTm90aWZpY2F0aW9uX1JlYWRBbGwnLFxyXG5cdFx0bWFya0FzUmVhZDogJ0FDX1VBX05vdGZOb3RpZmljYXRpb25fUmVhZCcsXHJcblx0XHRtYXJrQXNVbnJlYWQ6ICdBQ19VQV9Ob3RmTm90aWZpY2F0aW9uX1VucmVhZCcsXHJcblx0XHRtYXJrQXNEZWxldGVkOiAnQUNfVUFfTm90Zk5vdGlmaWNhdGlvbl9Ub0RlbGV0ZWQnLFxyXG5cdFx0dW5zdWJzY3JpYmU6ICdBQ19VQV9Ob3RmTm90aWZpY2F0aW9uX1Vuc3Vic2NyaWJlJyxcclxuXHRcdHN1YnNjcmliZTogJ0FDX1VBX05vdGZOb3RpZmljYXRpb25fU3Vic2NyaWJlJyxcclxuXHRcdHJlc2V0OiAnQUNfVUFfTm90Zk5vdGlmaWNhdGlvbl9SZXNldFN1YnNjcmlwdGlvbicsXHJcblx0XHRtYXJrQWxsQXNVbnJlYWQ6ICdBQ19VQV9Ob3RmTm90aWZpY2F0aW9uX1VucmVhZEFsbCcsXHJcblx0XHR1blN1YnNjcmlwRnJvbVNlbGVjdEJ5RGVmdWx0U3Vic2NpdHAgOiAnQUNfVUFfTm90Zk5vdGlmaWNhdGlvbl9VblN1YnNjcmliZSdcclxuXHR9O1xyXG5cclxuXHRwcml2YXRlIGdldCBfdGVuYW50SWQoKSB7XHJcblx0XHRyZXR1cm4gdGhpcy5fbnV4ZW9TZXJ2aWNlLm51eGVvQ2xpZW50LnVzZXIucHJvcGVydGllcy50ZW5hbnRJZCA/PyAnJztcclxuXHR9XHJcblxyXG5cdHByaXZhdGUgZ2V0IF9hcHBLZXkoKSB7XHJcblx0XHRyZXR1cm4gdGhpcy5fZW52aXJvbm1lbnQ/LmFwcEtleTtcclxuXHR9XHJcblxyXG5cdC8qKlxyXG5cdCAqXHJcblx0ICovXHJcblx0Y29uc3RydWN0b3IoXHJcblx0XHRASW5qZWN0KCdlbnZpcm9ubWVudCcpIHByb3RlY3RlZCBfZW52aXJvbm1lbnQ6IFJlY29yZDxzdHJpbmcsIGFueT4sXHJcblx0XHRwcm90ZWN0ZWQgX251eGVvU2VydmljZTogTnV4ZW9TZXJ2aWNlLFxyXG5cdFx0cHJvdGVjdGVkIF9jYWxsQXBpOiBDYWxsQXBpU2VydmljZSxcclxuXHRcdHByb3RlY3RlZCBfaHR0cDogSHR0cENsaWVudCxcclxuICAgIHByaXZhdGUgdm9jYWJ1bGFyeUFwaSA6IFZvY2FidWxhcnlBcGlTZXJ2aWNlXHJcblxyXG5cdCkge1xyXG5cdFx0c3VwZXIoX2Vudmlyb25tZW50LCBfbnV4ZW9TZXJ2aWNlKTtcclxuXHJcblx0XHRpZiAodGhpcy5fbnV4ZW9TZXJ2aWNlLm51eGVvQ2xpZW50Py51c2VyPy5pZCAmJiB0aGlzLl9lbnZpcm9ubWVudD8uc29ja2V0VXJsKSB7XHJcblx0XHRcdHRoaXMuc29ja2V0Q29ubmVjdCgpXHJcblx0XHRcdFx0LnBpcGUoXHJcblx0XHRcdFx0XHRzd2l0Y2hNYXAoKCkgPT4gdGhpcy5vbk1lc3NhZ2UkKSxcclxuXHRcdFx0XHRcdGNhdGNoRXJyb3IoKGVycm9yOiBhbnkpID0+IHtcclxuXHRcdFx0XHRcdFx0Y29uc29sZS5sb2coZXJyb3IpO1xyXG5cdFx0XHRcdFx0XHRyZXR1cm4gdGhyb3dFcnJvcigoKSA9PiBlcnJvcik7XHJcblx0XHRcdFx0XHR9KSxcclxuXHRcdFx0XHRcdHRha2VVbnRpbCh0aGlzLl9kZXN0cm95JClcclxuXHRcdFx0XHQpXHJcblx0XHRcdFx0LnN1YnNjcmliZSgocmVzKSA9PiB7XHJcblx0XHRcdFx0XHR0aGlzLmxpc3RlbmVyT2JzZXJ2ZXIubmV4dChyZXMpO1xyXG5cdFx0XHRcdH0pO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0Z2V0VW5SZWFkQ291bnQoKTogT2JzZXJ2YWJsZTxudW1iZXI+IHtcclxuXHRcdHJldHVybiB0aGlzLl9jYWxsQXBpXHJcblx0XHRcdC5xdWVyeShcclxuXHRcdFx0XHR7XHJcblx0XHRcdFx0XHRwYWdlUHJvdmlkZXI6IE5vdGlmaWNhdGlvbnNTZXJ2aWNlLnByb3ZpZGVycy5ub3RpZmljYXRpb25zTWFuZ28sXHJcblx0XHRcdFx0XHRwYWdlU2l6ZTogMSxcclxuXHRcdFx0XHRcdG5vdGZub3RpZmljYXRpb25jb250ZW50X2NvbXBhbnk6IGAke3RoaXMuX3RlbmFudElkfWAsXHJcblx0XHRcdFx0XHRub3Rmbm90aWZpY2F0aW9uY29udGVudF9hcHBsaWNhdGlvbktleTogdGhpcy5fYXBwS2V5LFxyXG5cdFx0XHRcdFx0bm90Zm5vdGlmaWNhdGlvbmNvbnRlbnRfc3RhdHVzOiBOT1RJRklDQVRJT05fU1RBVFVTLm5ld1xyXG5cdFx0XHRcdH0sXHJcblx0XHRcdFx0e31cclxuXHRcdFx0KVxyXG5cdFx0XHQucGlwZShtYXAoKGRhdGE6IEFwaVJlc3BvbnNlTW9kZWw8Tm90aWZpY2F0aW9uTW9kZWw+KSA9PiBkYXRhLnRvdGFsU2l6ZSA/PyAwKSk7XHJcblx0fVxyXG5cclxuXHRnZXROb3RpZmljYXRpb25zTW9uZ28ocGF5bG9hZDogUGF5bG9hZFBhcmFtc01vZGVsID0ge30pIHtcclxuXHRcdHJldHVybiB0aGlzLl9nZXROb3RpZmljYXRpb25zKE5vdGlmaWNhdGlvbnNTZXJ2aWNlLnByb3ZpZGVycy5ub3RpZmljYXRpb25zTWFuZ28sIHBheWxvYWQpO1xyXG5cdH1cclxuXHJcblx0Z2V0Tm90aWZpY2F0aW9ucyhwYXlsb2FkOiBQYXlsb2FkUGFyYW1zTW9kZWwgPSB7fSkge1xyXG5cdFx0cmV0dXJuIHRoaXMuX2dldE5vdGlmaWNhdGlvbnMoTm90aWZpY2F0aW9uc1NlcnZpY2UucHJvdmlkZXJzLm5vdGlmaWNhdGlvbnMsIHBheWxvYWQpO1xyXG5cdH1cclxuXHJcblx0bWFya0FsbEFzUmVhZCgpIHtcclxuXHRcdHJldHVybiB0aGlzLl9nbG9iYWxPcGVyYXRpb24oJ21hcmtBbGxBc1JlYWQnKTtcclxuXHR9XHJcblxyXG5cdG1hcmtBbGxOZXdBc1VucmVhZCgpIHtcclxuXHRcdHJldHVybiB0aGlzLl9nbG9iYWxPcGVyYXRpb24oJ21hcmtBbGxBc1VucmVhZCcpO1xyXG5cdH1cclxuXHJcblx0bWFya0FzUmVhZChpZDogc3RyaW5nKSB7XHJcblx0XHRyZXR1cm4gdGhpcy5fb3BlcmF0aW9uKGlkLCAnbWFya0FzUmVhZCcpO1xyXG5cdH1cclxuXHJcblx0bWFya0FzVW5yZWFkKGlkOiBzdHJpbmcpIHtcclxuXHRcdHJldHVybiB0aGlzLl9vcGVyYXRpb24oaWQsICdtYXJrQXNVbnJlYWQnKTtcclxuXHR9XHJcblxyXG5cdG1hcmtBc0RlbGV0ZWQoaWQ6IHN0cmluZykge1xyXG5cdFx0cmV0dXJuIHRoaXMuX29wZXJhdGlvbihpZCwgJ21hcmtBc0RlbGV0ZWQnKTtcclxuXHR9XHJcblxyXG5cdHVuc3Vic2NyaWJlKGlkOiBzdHJpbmcpIHtcclxuXHRcdHJldHVybiB0aGlzLl9vcGVyYXRpb24oaWQsICd1bnN1YnNjcmliZScpO1xyXG5cdH1cclxuXHJcblx0Y2FsbFVuU3Vic2NyaWJlRm9yTm9TdWJzY3JpcHRpb24oaWQpe1xyXG5cdFx0cmV0dXJuIHRoaXMuX29wZXJhdGlvbihpZCwgJ3VuU3Vic2NyaXBGcm9tU2VsZWN0QnlEZWZ1bHRTdWJzY2l0cCcsIHtcclxuXHRcdFx0Y29tcGFueU5hbWU6IGAke3RoaXMuX3RlbmFudElkfWBcclxuXHRcdH0pO1xyXG5cdH1cclxuXHRzdWJzY3JpYmUoaWQ6IHN0cmluZykge1xyXG5cdFx0cmV0dXJuIHRoaXMuX29wZXJhdGlvbihpZCwgJ3N1YnNjcmliZScsIHtcclxuXHRcdFx0Y29tcGFueU5hbWU6IGAke3RoaXMuX3RlbmFudElkfWBcclxuXHRcdH0pO1xyXG5cdH1cclxuXHJcblx0cmVzZXRTdWJzY3JpcHRpb25zKCkge1xyXG5cdFx0cmV0dXJuIGZyb20oXHJcblx0XHRcdHRoaXMuX251eGVvU2VydmljZS5udXhlb0NsaWVudFxyXG5cdFx0XHRcdC5vcGVyYXRpb24oTm90aWZpY2F0aW9uc1NlcnZpY2Uub3BlcmF0aW9ucy5yZXNldCwge1xyXG5cdFx0XHRcdFx0dXJsOiBgJHt0aGlzLl9lbnZpcm9ubWVudC5udXhlb30ke3RoaXMuX2Vudmlyb25tZW50LmN1c3RvbUF1dG9tYXRpb259YFxyXG5cdFx0XHRcdH0pXHJcblx0XHRcdFx0LnBhcmFtcyh7XHJcblx0XHRcdFx0XHRjb21wYW55TmFtZTogYCR7dGhpcy5fdGVuYW50SWR9YCxcclxuXHRcdFx0XHRcdGFwcGxpY2F0aW9uS2V5OiB0aGlzLl9hcHBLZXlcclxuXHRcdFx0XHR9KVxyXG5cdFx0XHRcdC5leGVjdXRlKClcclxuXHRcdCkgYXMgT2JzZXJ2YWJsZTxBdXRvbWF0aW9uUmVzcG9uc2VNb2RlbDxSZWNvcmQ8UHJvcGVydHlLZXksIGFueT4+PjtcclxuXHR9XHJcblxyXG5cdGdldFNvdXJjZVR5cGVzKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuX2dldFZvY2FidWxhcnkoJ1ZPQ19Ob3RmX1NvdXJjZVR5cGVzJykucGlwZShcclxuICAgICAgbWFwKChpdGVtczogYW55W10pID0+IHtcclxuICAgICAgICBjb25zdCBkZWZhdWx0cyA9IHRoaXMuX2Vudmlyb25tZW50Lm5vdGlmaWNhdGlvbkRlZmF1bHRTb3VyY2VUeXBlcztcclxuICAgICAgICBpZiAoZGVmYXVsdHM/Lmxlbmd0aCkge1xyXG4gICAgICAgICAgcmV0dXJuIGl0ZW1zLmZpbHRlcigoaXRlbSkgPT4gZGVmYXVsdHMuaW5jbHVkZXMoaXRlbS5pZCkpO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gaXRlbXM7XHJcbiAgICAgIH0pLFxyXG4gICAgKTtcclxuXHRcdC8vIHJldHVybiB0aGlzLl9nZXRWb2NhYnVsYXJ5KGAke3RoaXMuX2Vudmlyb25tZW50Lm51eGVvfSR7Tm90aWZpY2F0aW9uc1NlcnZpY2Uuc291cmNlVHlwZX1gKTtcclxuXHR9XHJcblxyXG5cdGdldENoYW5uZWxzKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuX2dldFZvY2FidWxhcnkoJ1ZPQ19Ob3RmX05vdGlmaWNhdGlvbkNoYW5uZWxzJyk7XHJcblx0XHQvLyByZXR1cm4gdGhpcy5fZ2V0Vm9jYWJ1bGFyeShgJHt0aGlzLl9lbnZpcm9ubWVudC5udXhlb30ke05vdGlmaWNhdGlvbnNTZXJ2aWNlLmNoYW5uZWxzfWApO1xyXG5cdH1cclxuXHJcblx0Z2V0RGVmaW5pdGlvbnMocGF5bG9hZDogUGF5bG9hZFBhcmFtc01vZGVsID0ge30pIHtcclxuXHRcdHJldHVybiB0aGlzLl9jYWxsQXBpXHJcblx0XHRcdC5xdWVyeShcclxuXHRcdFx0XHR7XHJcblx0XHRcdFx0XHRwYWdlUHJvdmlkZXI6IE5vdGlmaWNhdGlvbnNTZXJ2aWNlLnByb3ZpZGVycy5kZWZpbml0aW9uLFxyXG5cdFx0XHRcdFx0bm90Zm5vdGlmaWNhdGlvbmRlZl9hcHBsaWNhdGlvbktleTogdGhpcy5fYXBwS2V5LFxyXG5cdFx0XHRcdFx0cGFnZVNpemU6IE51bWJlci5NQVhfU0FGRV9JTlRFR0VSLFxyXG5cdFx0XHRcdFx0bm90Zm5vdGlmaWNhdGlvbmRlZl9pc0FjdGl2ZTogdHJ1ZSxcclxuXHRcdFx0XHRcdC4uLnBheWxvYWRcclxuXHRcdFx0XHR9LFxyXG5cdFx0XHRcdHtcclxuXHRcdFx0XHRcdGhlYWRlcnM6IHtcclxuXHRcdFx0XHRcdFx0cHJvcGVydGllczogJyonXHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHQpXHJcblx0XHRcdC5waXBlKG1hcCgoZGF0YTogQXBpUmVzcG9uc2VNb2RlbDxOb3RpZmljYXRpb25EZWZpbml0aW9uTW9kZWw+KSA9PiBkYXRhLmVudHJpZXMpKTtcclxuXHR9XHJcblxyXG5cdGdldFN1YnNjcmlwdGlvbnMocGF5bG9hZDogUGF5bG9hZFBhcmFtc01vZGVsID0ge30pIHtcclxuXHRcdHJldHVybiB0aGlzLl9jYWxsQXBpXHJcblx0XHRcdC5xdWVyeShcclxuXHRcdFx0XHR7XHJcblx0XHRcdFx0XHRwYWdlUHJvdmlkZXI6IE5vdGlmaWNhdGlvbnNTZXJ2aWNlLnByb3ZpZGVycy5zdWJzY3JpcHRpb24sXHJcblx0XHRcdFx0XHRub3Rmc3Vic2NyaXB0aW9uX2NvbXBhbnlOYW1lOiBgJHt0aGlzLl90ZW5hbnRJZH1gLFxyXG5cdFx0XHRcdFx0bm90ZnN1YnNjcmlwdGlvbl9hcHBsaWNhdGlvbktleTogdGhpcy5fYXBwS2V5LFxyXG5cdFx0XHRcdFx0cGFnZVNpemU6IE51bWJlci5NQVhfU0FGRV9JTlRFR0VSLFxyXG5cdFx0XHRcdFx0Li4ucGF5bG9hZFxyXG5cdFx0XHRcdH0sXHJcblx0XHRcdFx0e1xyXG5cdFx0XHRcdFx0aGVhZGVyczoge1xyXG5cdFx0XHRcdFx0XHRwcm9wZXJ0aWVzOiAnKidcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdClcclxuXHRcdFx0LnBpcGUobWFwKChkYXRhOiBBcGlSZXNwb25zZU1vZGVsPE5vdGlmaWNhdGlvblN1YnNjcmlwdGlvbk1vZGVsPikgPT4gZGF0YS5lbnRyaWVzKSk7XHJcblx0fVxyXG5cclxuXHRwcml2YXRlIF9nZXROb3RpZmljYXRpb25zKHBhZ2VQcm92aWRlcjogc3RyaW5nLCBwYXlsb2FkOiBQYXlsb2FkUGFyYW1zTW9kZWwgPSB7fSkge1xyXG5cdFx0cmV0dXJuIHRoaXMuX2NhbGxBcGlcclxuXHRcdFx0LnF1ZXJ5KFxyXG5cdFx0XHRcdHtcclxuXHRcdFx0XHRcdHBhZ2VQcm92aWRlcjogcGFnZVByb3ZpZGVyLFxyXG5cdFx0XHRcdFx0bm90Zm5vdGlmaWNhdGlvbmNvbnRlbnRfY29tcGFueTogYCR7dGhpcy5fdGVuYW50SWR9YCxcclxuXHRcdFx0XHRcdG5vdGZub3RpZmljYXRpb25jb250ZW50X2FwcGxpY2F0aW9uS2V5OiB0aGlzLl9hcHBLZXksXHJcblx0XHRcdFx0XHQuLi5wYXlsb2FkXHJcblx0XHRcdFx0fSxcclxuXHRcdFx0XHR7XHJcblx0XHRcdFx0XHRoZWFkZXJzOiB7XHJcblx0XHRcdFx0XHRcdHByb3BlcnRpZXM6ICcqJ1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0KVxyXG5cdFx0XHQucGlwZShtYXAoKGRhdGE6IEFwaVJlc3BvbnNlTW9kZWw8Tm90aWZpY2F0aW9uTW9kZWw+KSA9PiBtYXBOb3RpZmljYXRpb25zVG9QYWdpbmdSZXNwb25zZShkYXRhKSkpO1xyXG5cdH1cclxuXHJcblx0cHJpdmF0ZSBfZ2V0Vm9jYWJ1bGFyeSh1cmw6IHN0cmluZyk6IE9ic2VydmFibGU8Vm9jYWJ1bGFyeVR5cGVbXT4ge1xyXG5cdFx0cmV0dXJuIHRoaXMudm9jYWJ1bGFyeUFwaS5nZXRWb2NhYnVsYXJ5TGlzdCh1cmwpO1xyXG5cclxuXHRcdC8vIHJldHVybiBmcm9tKHRoaXMuX251eGVvU2VydmljZS5nZXRUb2tlbigpKS5waXBlKFxyXG5cdFx0Ly8gXHRtYXAoKHRva2VuKSA9PiB7XHJcblx0XHQvLyBcdFx0Y29uc3QgYmVhcmVyVG9rZW4gPSBgQmVhcmVyICR7dG9rZW59YDtcclxuXHRcdC8vIFx0XHRjb25zdCBoZWFkZXJzID0gbmV3IEh0dHBIZWFkZXJzKCkuc2V0KCdBdXRob3JpemF0aW9uJywgYmVhcmVyVG9rZW4pO1xyXG5cdFx0Ly8gXHRcdHJldHVybiBoZWFkZXJzO1xyXG5cdFx0Ly8gXHR9KSxcclxuXHRcdC8vIFx0c3dpdGNoTWFwKChoZWFkZXJzKSA9PiB0aGlzLl9odHRwLmdldDxBcGlSZXNwb25zZU1vZGVsPFZvY2FidWxhcnlUeXBlPj4odXJsLCB7IGhlYWRlcnMgfSkpLFxyXG5cdFx0Ly8gXHRtYXAoKHJlc3BvbnNlKSA9PiByZXNwb25zZS5lbnRyaWVzKSxcclxuXHRcdC8vIFx0bWFwKChkYXRhKSA9PiBkYXRhLnNvcnQoKGEsIGIpID0+IChiLnByb3BlcnRpZXNbJ29yZGVyaW5nJ10gPCBhLnByb3BlcnRpZXNbJ29yZGVyaW5nJ10gPyAxIDogLTEpKSlcclxuXHRcdC8vICk7XHJcblx0fVxyXG5cclxuXHRwcml2YXRlIF9vcGVyYXRpb248VFJlc3BvbnNlID0gUmVjb3JkPFByb3BlcnR5S2V5LCBhbnk+PihcclxuXHRcdGlkOiBzdHJpbmcsXHJcblx0XHRvcHRpb246IGtleW9mIHR5cGVvZiBOb3RpZmljYXRpb25zU2VydmljZS5vcGVyYXRpb25zLFxyXG5cdFx0cGFyYW1zOiBSZWNvcmQ8c3RyaW5nLCBhbnk+ID0ge31cclxuXHQpIHtcclxuXHRcdHJldHVybiBmcm9tKFxyXG5cdFx0XHR0aGlzLl9udXhlb1NlcnZpY2UubnV4ZW9DbGllbnRcclxuXHRcdFx0XHQub3BlcmF0aW9uKE5vdGlmaWNhdGlvbnNTZXJ2aWNlLm9wZXJhdGlvbnNbb3B0aW9uXSwge1xyXG5cdFx0XHRcdFx0dXJsOiBgJHt0aGlzLl9lbnZpcm9ubWVudC5udXhlb30ke3RoaXMuX2Vudmlyb25tZW50LmN1c3RvbUF1dG9tYXRpb259YFxyXG5cdFx0XHRcdH0pXHJcblx0XHRcdFx0LnBhcmFtcyhwYXJhbXMpXHJcblx0XHRcdFx0LmlucHV0KGlkKVxyXG5cdFx0XHRcdC5leGVjdXRlKClcclxuXHRcdCkgYXMgT2JzZXJ2YWJsZTxBdXRvbWF0aW9uUmVzcG9uc2VNb2RlbDxUUmVzcG9uc2U+PjtcclxuXHR9XHJcblxyXG5cdHByaXZhdGUgX2dsb2JhbE9wZXJhdGlvbihcclxuXHRcdG9wdGlvbjoga2V5b2YgdHlwZW9mIE5vdGlmaWNhdGlvbnNTZXJ2aWNlLm9wZXJhdGlvbnMsXHJcblx0XHRwYXJhbXM6IFJlY29yZDxzdHJpbmcsIGFueT4gPSB7fSxcclxuXHRcdGhlYWRlcnM6IFJlY29yZDxzdHJpbmcsIGFueT4gPSB7fVxyXG5cdCkge1xyXG5cdFx0cmV0dXJuIGZyb20oXHJcblx0XHRcdHRoaXMuX251eGVvU2VydmljZS5udXhlb0NsaWVudFxyXG5cdFx0XHRcdC5vcGVyYXRpb24oTm90aWZpY2F0aW9uc1NlcnZpY2Uub3BlcmF0aW9uc1tvcHRpb25dLCB7XHJcblx0XHRcdFx0XHR1cmw6IGAke3RoaXMuX2Vudmlyb25tZW50Lm51eGVvfSR7dGhpcy5fZW52aXJvbm1lbnQuY3VzdG9tQXV0b21hdGlvbn1gXHJcblx0XHRcdFx0fSlcclxuXHRcdFx0XHQucGFyYW1zKHtcclxuXHRcdFx0XHRcdGNvbXBhbnlOYW1lOiBgJHt0aGlzLl90ZW5hbnRJZH1gLFxyXG5cdFx0XHRcdFx0YXBwbGljYXRpb25LZXk6IHRoaXMuX2FwcEtleSxcclxuXHRcdFx0XHRcdC4uLnBhcmFtc1xyXG5cdFx0XHRcdH0pXHJcblx0XHRcdFx0LmV4ZWN1dGUoe30pXHJcblx0XHQpIGFzIE9ic2VydmFibGU8QXV0b21hdGlvblJlc3BvbnNlTW9kZWw8UmVjb3JkPFByb3BlcnR5S2V5LCBhbnk+Pj47XHJcblx0fVxyXG59XHJcbiJdfQ==
|
|
@@ -87,7 +87,13 @@ export class NuxeoService {
|
|
|
87
87
|
}, this.keycloak);
|
|
88
88
|
}
|
|
89
89
|
getToken() {
|
|
90
|
-
return this
|
|
90
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
91
|
+
return this.keycloak.getToken();
|
|
92
|
+
});
|
|
93
|
+
}
|
|
94
|
+
decriptFormating(formate) {
|
|
95
|
+
let newFormate = formate.substring(3, (formate.length - 5));
|
|
96
|
+
return JSON.parse(atob(newFormate));
|
|
91
97
|
}
|
|
92
98
|
doLogout() {
|
|
93
99
|
this.keycloak.logout(window.location.origin + this.baseHref);
|
|
@@ -152,4 +158,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
152
158
|
type: Inject,
|
|
153
159
|
args: ['environment']
|
|
154
160
|
}] }, { type: i3.CookieService }, { type: i4.RolesService }]; } });
|
|
155
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnV4ZW8uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL251eGVvLWRldmVsb3BtZW50LWZyYW1ld29yay9zcmMvbGliL2NvcmUvc2VydmljZXMvbnV4ZW8vbnV4ZW8uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRWhELE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBR25ELE9BQU8sRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3hDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUU1QyxPQUFPLEVBQUUsZ0JBQWdCLElBQUksT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGFBQWEsSUFBSSxLQUFLLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7Ozs7O0FBSzFELE1BQU0sT0FBTyxZQUFZO0lBT3ZCLFlBQW9CLElBQWdCLEVBQVUsUUFBeUIsRUFDdEMsUUFBZ0IsRUFDaEIsV0FBVyxFQUNsQyxjQUE4QixFQUM5QixZQUEyQjtRQUpqQixTQUFJLEdBQUosSUFBSSxDQUFZO1FBQVUsYUFBUSxHQUFSLFFBQVEsQ0FBaUI7UUFDdEMsYUFBUSxHQUFSLFFBQVEsQ0FBUTtRQUNoQixnQkFBVyxHQUFYLFdBQVcsQ0FBQTtRQUNsQyxtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFDOUIsaUJBQVksR0FBWixZQUFZLENBQWU7UUFUckMsaUJBQVksR0FBRyxFQUFFLENBQUM7UUFDbEIsNEJBQXVCLEdBQUcsSUFBSSxDQUFDO1FBQy9CLGtCQUFhLEdBQUcsS0FBSyxDQUFDO1FBaUl0QixZQUFPLEdBQUcsS0FBSyxDQUFDO1FBTWhCLGNBQVMsR0FBRSxLQUFLLENBQUM7SUE5SGpCLENBQUM7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SSxDQUNKLFVBQVUsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO1lBQ2pCLE9BQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDakIsTUFBTSxHQUFHLENBQUM7UUFDWixDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQztJQUVELGFBQWE7UUFDWCxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDakIsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3JCLENBQUM7SUFHRCxTQUFTO1FBQ1AsSUFBSSxDQUFDLFlBQVksQ0FBQyxjQUFjLEVBQUUsRUFBRSxDQUFDLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ3JELElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO1FBQ3RCLENBQUMsQ0FBQyxDQUFBO0lBQ0osQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsWUFBWSxDQUFDLFdBQVcsRUFBRSxFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDbEQsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7UUFDeEIsQ0FBQyxDQUFDLENBQUE7SUFDSixDQUFDOzswR0FoSlUsWUFBWSwyRUFRYixhQUFhLGFBQ2IsYUFBYTs4R0FUWixZQUFZLGNBRlgsTUFBTTs0RkFFUCxZQUFZO2tCQUh4QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7MEJBU0ksTUFBTTsyQkFBQyxhQUFhOzswQkFDcEIsTUFBTTsyQkFBQyxhQUFhIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVBQX0JBU0VfSFJFRiB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcbmltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBLZXljbG9ha1NlcnZpY2UgfSBmcm9tICdrZXljbG9hay1hbmd1bGFyJztcclxuaW1wb3J0IHsgQ29va2llU2VydmljZSB9IGZyb20gJ25neC1jb29raWUtc2VydmljZSc7XHJcbmltcG9ydCB7IGZyb20sIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgY2F0Y2hFcnJvciB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgUm9sZXNTZXJ2aWNlIH0gZnJvbSAnLi4vcm9sZXMvcm9sZXMuc2VydmljZSc7XHJcbmltcG9ydCB7IE5ld051eGVvT3ZlcnJpZGUgYXMgbXlOdXhlbyB9IGZyb20gJy4vbmV3LW51eGVvLW92ZXJpZGUnO1xyXG5pbXBvcnQgeyBOdXhlb092ZXJyaWRlIGFzIE51eGVvIH0gZnJvbSAnLi9udXhlby1vdmVycmlkZSc7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBOdXhlb1NlcnZpY2Uge1xyXG4gIG51eGVvQ2xpZW50O1xyXG4gIGV4Y2x1ZGVkVXJscyA9IFtdO1xyXG4gIGVuYWJsZUJlYXJlckludGVyY2VwdG9yID0gdHJ1ZTtcclxuICBhdXRoZW50aWNhdGVkID0gZmFsc2U7XHJcbiAgdG9rZW47XHJcbiAgdG9rZW5PYnNlcnZhYmxlO1xyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgaHR0cDogSHR0cENsaWVudCwgcHJpdmF0ZSBrZXljbG9hazogS2V5Y2xvYWtTZXJ2aWNlLFxyXG4gICAgQEluamVjdChBUFBfQkFTRV9IUkVGKSBwcml2YXRlIGJhc2VIcmVmOiBzdHJpbmcsXHJcbiAgICBASW5qZWN0KCdlbnZpcm9ubWVudCcpIHByaXZhdGUgZW52aXJvbm1lbnQsXHJcbiAgICBwcml2YXRlIGNvb2tpZXNTZXJ2aWNlIDogQ29va2llU2VydmljZSxcclxuICAgIHByaXZhdGUgcm9sZXNTZXJ2aWNlIDogUm9sZXNTZXJ2aWNlKSB7XHJcblxyXG4gIH1cclxuICBpbml0KCk6IFByb21pc2U8YW55PiB7XHJcbiAgICByZXR1cm4gbmV3IFByb21pc2UoYXN5bmMgKHJlc29sdmUsIHJlamVjdCkgPT4ge1xyXG4gICAgICB0cnkge1xyXG4gICAgICAgIHRoaXMua2V5Y2xvYWsuZ2V0VG9rZW4oKS50aGVuKHRva2VuID0+IHtcclxuXHJcbiAgICAgICAgICB0aGlzLmNyZWF0ZVRva2VuQ2xpZW50KHRva2VuKTtcclxuICAgICAgICAgIHRoaXMubnV4ZW9DbGllbnQuY29ubmVjdCgpXHJcbiAgICAgICAgICAgIC50aGVuKChjbGllbnQpID0+IHtcclxuICAgICAgICAgICAgICB0aGlzLmF1dGhlbnRpY2F0ZWQgPSB0cnVlO1xyXG4gICAgICAgICAgICAgIHJlc29sdmUoY2xpZW50KTtcclxuICAgICAgICAgICAgICB0aGlzLmNoZWNrRm9yUm9sZXMoKTtcclxuICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgLmNhdGNoKChlcnJvcikgPT4ge1xyXG4gICAgICAgICAgICAgIHJlamVjdChlcnJvcik7XHJcbiAgICAgICAgICAgIH0pO1xyXG5cclxuICAgICAgICB9KVxyXG4gICAgICB9IGNhdGNoIChlcnJvcikge1xyXG4gICAgICAgIHJlamVjdChlcnJvcik7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG5cclxuICB9XHJcblxyXG4gIGluaXRXaXRoTnV4ZW9Ub2tlbih0b2tlbil7XHJcbiAgICByZXR1cm4gbmV3IFByb21pc2UoYXN5bmMgKHJlc29sdmUsIHJlamVjdCkgPT4ge1xyXG4gICAgICB0cnkge1xyXG4gICAgICAgICAgdGhpcy5jcmVhdGVDbGllbnRXaXRoTnV4ZW9Ub2tlbih0b2tlbik7XHJcbiAgICAgICAgICB0aGlzLm51eGVvQ2xpZW50LmNvbm5lY3QoKVxyXG4gICAgICAgICAgICAudGhlbigoY2xpZW50KSA9PiB7XHJcbiAgICAgICAgICAgICAgdGhpcy5hdXRoZW50aWNhdGVkID0gdHJ1ZTtcclxuICAgICAgICAgICAgICByZXNvbHZlKGNsaWVudCk7XHJcbiAgICAgICAgICAgICAgdGhpcy5jaGVja0ZvclJvbGVzKCk7XHJcbiAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgIC5jYXRjaCgoZXJyb3IpID0+IHtcclxuICAgICAgICAgICAgICByZWplY3QoZXJyb3IpO1xyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcclxuICAgICAgICByZWplY3QoZXJyb3IpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIC8vIGNyZWF0ZSBudXhlbyBjbGllbnQgdXNpbmcgbnV4ZW8gdG9rZW5cclxuICBjcmVhdGVDbGllbnRXaXRoTnV4ZW9Ub2tlbih0b2tlbil7XHJcbiAgICB0aGlzLm51eGVvQ2xpZW50ID0gbmV3IG15TnV4ZW8oe1xyXG4gICAgICBiYXNlVVJMOiB0aGlzLmVudmlyb25tZW50Lm51eGVvT3B0aW9ucy5iYXNlVVJMLFxyXG4gICAgICBhdXRoOiB7XHJcbiAgICAgICAgbWV0aG9kOiAnYmVhcmVyVG9rZW4nLFxyXG4gICAgICAgIHRva2VuOiB0b2tlbixcclxuICAgICAgICBjbGllbnRJZDogdGhpcy5lbnZpcm9ubWVudC5udXhlb09wdGlvbnMuY2xpZW50X2lkLCAvLyBvcHRpb25hbCBPQXV0aDIgY2xpZW50IElEIHRvIHJlZnJlc2ggdGhlIGFjY2VzcyB0b2tlblxyXG4gICAgICAgIGNsaWVudFNlY3JldDogdGhpcy5lbnZpcm9ubWVudC5udXhlb09wdGlvbnMuY2xpZW50X3NlY3JldFxyXG4gICAgICB9XHJcbiAgICB9ICwgdGhpcy5lbnZpcm9ubWVudCAsIHRoaXMuY29va2llc1NlcnZpY2UpO1xyXG4gIH1cclxuXHJcbiAgLy8gY3JlYXRlIG51eGVvIGNsaWVudCB1c2luZyBrZXljb2NrIHRva2VuXHJcbiAgY3JlYXRlVG9rZW5DbGllbnQodG9rZW4pIHtcclxuICAgIHRoaXMubnV4ZW9DbGllbnQgPSBuZXcgTnV4ZW8oe1xyXG4gICAgICBiYXNlVVJMOiB0aGlzLmVudmlyb25tZW50Lm51eGVvLFxyXG4gICAgICBhdXRoOiB7XHJcbiAgICAgICAgbWV0aG9kOiAnYmVhcmVyVG9rZW4nLFxyXG4gICAgICAgIHRva2VuXHJcbiAgICAgIH1cclxuICAgIH0sIHRoaXMua2V5Y2xvYWspO1xyXG4gIH1cclxuXHJcbiAgZ2V0VG9rZW4oKSB7XHJcbiAgICByZXR1cm4gdGhpcy5rZXljbG9hay5nZXRUb2tlbigpO1xyXG4gIH1cclxuXHJcbiAgZG9Mb2dvdXQoKSB7XHJcbiAgICB0aGlzLmtleWNsb2FrLmxvZ291dCh3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgdGhpcy5iYXNlSHJlZik7XHJcbiAgfVxyXG5cclxuXHJcbiAgaXNVc2VySW5Sb2xlKHJvbGU6IGFueSwgY29tbWl0dGVlQ29kZSA9IG51bGwpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgY29uc3Qgc2ltcGxlT2JzZXJ2YWJsZSA9IG5ldyBPYnNlcnZhYmxlKG9ic2VydmVyID0+IHtcclxuICAgICAgdGhpcy5rZXljbG9hay5pc0xvZ2dlZEluKCkudGhlbihsb2dnZWQgPT4ge1xyXG4gICAgICAgIGlmICghbG9nZ2VkKSB7XHJcbiAgICAgICAgICBvYnNlcnZlci5uZXh0KGZhbHNlKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgY29uc3QgaGFzUm9sZSA9IHRoaXMucm9sZXNTZXJ2aWNlLmlzVXNlckluUm9sZSh0aGlzLm51eGVvQ2xpZW50LnVzZXIsIHJvbGUsIGNvbW1pdHRlZUNvZGUpO1xyXG4gICAgICAgICAgb2JzZXJ2ZXIubmV4dChoYXNSb2xlKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICB9KTtcclxuICAgIH0pO1xyXG5cclxuICAgIHJldHVybiBzaW1wbGVPYnNlcnZhYmxlO1xyXG4gIH1cclxuICBjcmVhdGVCbG9iKGZpbGUpOiBhbnkge1xyXG4gICAgcmV0dXJuIG5ldyBOdXhlby5CbG9iKHtcclxuICAgICAgY29udGVudDogZmlsZVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBnZXREdXBsaWNhdGVzKHBhcmFtcyA9IHt9LCBib2R5ID0ge30pOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgcmV0dXJuIGZyb20oXHJcbiAgICAgIHRoaXMubnV4ZW9DbGllbnRcclxuICAgICAgICAub3BlcmF0aW9uKCdBQ19HZXRfRHVwbGljYXRlcycsIHtcclxuICAgICAgICAgIHVybDogYCR7dGhpcy5lbnZpcm9ubWVudC5udXhlb30ke3RoaXMuZW52aXJvbm1lbnQuY3VzdG9tQXV0b21hdGlvbn1gLFxyXG4gICAgICAgIH0pXHJcbiAgICAgICAgLnBhcmFtcyhwYXJhbXMpXHJcbiAgICAgICAgLmNvbnRleHQoYm9keSlcclxuICAgICAgICAuZXhlY3V0ZSgpXHJcbiAgICApLnBpcGUoXHJcbiAgICAgIGNhdGNoRXJyb3IoKGVycikgPT4ge1xyXG4gICAgICAgIGNvbnNvbGUubG9nKGVycik7XHJcbiAgICAgICAgdGhyb3cgZXJyO1xyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIGNoZWNrRm9yUm9sZXMoKXtcclxuICAgIHRoaXMuaXNDdHNVc2VyKCk7XHJcbiAgICB0aGlzLmlzQ3RzTWFuZ2VyKCk7XHJcbiAgfVxyXG5cclxuICBjdHNVc2VyID0gZmFsc2U7XHJcbiAgaXNDdHNVc2VyKCl7XHJcbiAgICB0aGlzLmlzVXNlckluUm9sZSgnY3RzU2VjcmV0YXJ5JywgJycpLnN1YnNjcmliZShkYXRhID0+IHtcclxuICAgICAgdGhpcy5jdHNVc2VyID0gZGF0YTtcclxuICAgIH0pXHJcbiAgfVxyXG4gIGN0c01hbmdlcj0gZmFsc2U7XHJcbiAgaXNDdHNNYW5nZXIoKXtcclxuICAgIHRoaXMuaXNVc2VySW5Sb2xlKCdjdHNNYW5nZXInLCAnJykuc3Vic2NyaWJlKGRhdGEgPT4ge1xyXG4gICAgICB0aGlzLmN0c01hbmdlciA9IGRhdGE7XHJcbiAgICB9KVxyXG4gIH1cclxufVxyXG4iXX0=
|
|
161
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnV4ZW8uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL251eGVvLWRldmVsb3BtZW50LWZyYW1ld29yay9zcmMvbGliL2NvcmUvc2VydmljZXMvbnV4ZW8vbnV4ZW8uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRWhELE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBR25ELE9BQU8sRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3hDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUU1QyxPQUFPLEVBQUUsZ0JBQWdCLElBQUksT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGFBQWEsSUFBSSxLQUFLLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7Ozs7O0FBSzFELE1BQU0sT0FBTyxZQUFZO0lBT3ZCLFlBQW9CLElBQWdCLEVBQVUsUUFBeUIsRUFDdEMsUUFBZ0IsRUFDaEIsV0FBVyxFQUNsQyxjQUE4QixFQUM5QixZQUEyQjtRQUpqQixTQUFJLEdBQUosSUFBSSxDQUFZO1FBQVUsYUFBUSxHQUFSLFFBQVEsQ0FBaUI7UUFDdEMsYUFBUSxHQUFSLFFBQVEsQ0FBUTtRQUNoQixnQkFBVyxHQUFYLFdBQVcsQ0FBQTtRQUNsQyxtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFDOUIsaUJBQVksR0FBWixZQUFZLENBQWU7UUFUckMsaUJBQVksR0FBRyxFQUFFLENBQUM7UUFDbEIsNEJBQXVCLEdBQUcsSUFBSSxDQUFDO1FBQy9CLGtCQUFhLEdBQUcsS0FBSyxDQUFDO1FBc0l0QixZQUFPLEdBQUcsS0FBSyxDQUFDO1FBTWhCLGNBQVMsR0FBRSxLQUFLLENBQUM7SUFuSWpCLENBQUM7SUFDRCxJQUFJO1FBQ0YsT0FBTyxJQUFJLE9BQU8sQ0FBQyxDQUFPLE9BQU8sRUFBRSxNQUFNLEVBQUUsRUFBRTtZQUMzQyxJQUFJO2dCQUNGLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFO29CQUVwQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsS0FBSyxDQUFDLENBQUM7b0JBQzlCLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxFQUFFO3lCQUN2QixJQUFJLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRTt3QkFDZixJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQzt3QkFDMUIsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDO3dCQUNoQixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7b0JBQ3ZCLENBQUMsQ0FBQzt5QkFDRCxLQUFLLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTt3QkFDZixNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7b0JBQ2hCLENBQUMsQ0FBQyxDQUFDO2dCQUVQLENBQUMsQ0FBQyxDQUFBO2FBQ0g7WUFBQyxPQUFPLEtBQUssRUFBRTtnQkFDZCxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7YUFDZjtRQUNILENBQUMsQ0FBQSxDQUFDLENBQUM7SUFFTCxDQUFDO0lBRUQsa0JBQWtCLENBQUMsS0FBSztRQUN0QixPQUFPLElBQUksT0FBTyxDQUFDLENBQU8sT0FBTyxFQUFFLE1BQU0sRUFBRSxFQUFFO1lBQzNDLElBQUk7Z0JBQ0EsSUFBSSxDQUFDLDBCQUEwQixDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUN2QyxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sRUFBRTtxQkFDdkIsSUFBSSxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUU7b0JBQ2YsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUM7b0JBQzFCLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQztvQkFDaEIsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO2dCQUN2QixDQUFDLENBQUM7cUJBQ0QsS0FBSyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7b0JBQ2YsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUNoQixDQUFDLENBQUMsQ0FBQzthQUNSO1lBQUMsT0FBTyxLQUFLLEVBQUU7Z0JBQ2QsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO2FBQ2Y7UUFDSCxDQUFDLENBQUEsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELHdDQUF3QztJQUN4QywwQkFBMEIsQ0FBQyxLQUFLO1FBQzlCLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxPQUFPLENBQUM7WUFDN0IsT0FBTyxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsWUFBWSxDQUFDLE9BQU87WUFDOUMsSUFBSSxFQUFFO2dCQUNKLE1BQU0sRUFBRSxhQUFhO2dCQUNyQixLQUFLLEVBQUUsS0FBSztnQkFDWixRQUFRLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxZQUFZLENBQUMsU0FBUztnQkFDakQsWUFBWSxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsWUFBWSxDQUFDLGFBQWE7YUFDMUQ7U0FDRixFQUFHLElBQUksQ0FBQyxXQUFXLEVBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQzlDLENBQUM7SUFFRCwwQ0FBMEM7SUFDMUMsaUJBQWlCLENBQUMsS0FBSztRQUNyQixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksS0FBSyxDQUFDO1lBQzNCLE9BQU8sRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUs7WUFDL0IsSUFBSSxFQUFFO2dCQUNKLE1BQU0sRUFBRSxhQUFhO2dCQUNyQixLQUFLO2FBQ047U0FDRixFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNwQixDQUFDO0lBRU0sUUFBUTs7WUFDYixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDbEMsQ0FBQztLQUFBO0lBRUQsZ0JBQWdCLENBQUMsT0FBZ0I7UUFDaEMsSUFBSSxVQUFVLEdBQUcsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUMsQ0FBQyxPQUFPLENBQUMsTUFBTSxHQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDekQsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFBO0lBQ3BDLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQy9ELENBQUM7SUFHRCxZQUFZLENBQUMsSUFBUyxFQUFFLGFBQWEsR0FBRyxJQUFJO1FBQzFDLE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxVQUFVLENBQUMsUUFBUSxDQUFDLEVBQUU7WUFDakQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUU7Z0JBQ3ZDLElBQUksQ0FBQyxNQUFNLEVBQUU7b0JBQ1gsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztpQkFDdEI7cUJBQU07b0JBQ0wsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLEVBQUUsSUFBSSxFQUFFLGFBQWEsQ0FBQyxDQUFDO29CQUMzRixRQUFRLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO2lCQUN4QjtZQUVILENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7UUFFSCxPQUFPLGdCQUFnQixDQUFDO0lBQzFCLENBQUM7SUFDRCxVQUFVLENBQUMsSUFBSTtRQUNiLE9BQU8sSUFBSSxLQUFLLENBQUMsSUFBSSxDQUFDO1lBQ3BCLE9BQU8sRUFBRSxJQUFJO1NBQ2QsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELGFBQWEsQ0FBQyxNQUFNLEdBQUcsRUFBRSxFQUFFLElBQUksR0FBRyxFQUFFO1FBQ2xDLE9BQU8sSUFBSSxDQUNULElBQUksQ0FBQyxXQUFXO2FBQ2IsU0FBUyxDQUFDLG1CQUFtQixFQUFFO1lBQzlCLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsZ0JBQWdCLEVBQUU7U0FDckUsQ0FBQzthQUNELE1BQU0sQ0FBQyxNQUFNLENBQUM7YUFDZCxPQUFPLENBQUMsSUFBSSxDQUFDO2FBQ2IsT0FBTyxFQUFFLENBQ2IsQ0FBQyxJQUFJLENBQ0osVUFBVSxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUU7WUFDakIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUNqQixNQUFNLEdBQUcsQ0FBQztRQUNaLENBQUMsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDO0lBRUQsYUFBYTtRQUNYLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUNqQixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUdELFNBQVM7UUFDUCxJQUFJLENBQUMsWUFBWSxDQUFDLGNBQWMsRUFBRSxFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDckQsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7UUFDdEIsQ0FBQyxDQUFDLENBQUE7SUFDSixDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxFQUFFLEVBQUUsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUNsRCxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQztRQUN4QixDQUFDLENBQUMsQ0FBQTtJQUNKLENBQUM7OzBHQXJKVSxZQUFZLDJFQVFiLGFBQWEsYUFDYixhQUFhOzhHQVRaLFlBQVksY0FGWCxNQUFNOzRGQUVQLFlBQVk7a0JBSHhCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzswQkFTSSxNQUFNOzJCQUFDLGFBQWE7OzBCQUNwQixNQUFNOzJCQUFDLGFBQWEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBUFBfQkFTRV9IUkVGIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEtleWNsb2FrU2VydmljZSB9IGZyb20gJ2tleWNsb2FrLWFuZ3VsYXInO1xyXG5pbXBvcnQgeyBDb29raWVTZXJ2aWNlIH0gZnJvbSAnbmd4LWNvb2tpZS1zZXJ2aWNlJztcclxuaW1wb3J0IHsgZnJvbSwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBjYXRjaEVycm9yIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBSb2xlc1NlcnZpY2UgfSBmcm9tICcuLi9yb2xlcy9yb2xlcy5zZXJ2aWNlJztcclxuaW1wb3J0IHsgTmV3TnV4ZW9PdmVycmlkZSBhcyBteU51eGVvIH0gZnJvbSAnLi9uZXctbnV4ZW8tb3ZlcmlkZSc7XHJcbmltcG9ydCB7IE51eGVvT3ZlcnJpZGUgYXMgTnV4ZW8gfSBmcm9tICcuL251eGVvLW92ZXJyaWRlJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIE51eGVvU2VydmljZSB7XHJcbiAgbnV4ZW9DbGllbnQ7XHJcbiAgZXhjbHVkZWRVcmxzID0gW107XHJcbiAgZW5hYmxlQmVhcmVySW50ZXJjZXB0b3IgPSB0cnVlO1xyXG4gIGF1dGhlbnRpY2F0ZWQgPSBmYWxzZTtcclxuICB0b2tlbjtcclxuICB0b2tlbk9ic2VydmFibGU7XHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50LCBwcml2YXRlIGtleWNsb2FrOiBLZXljbG9ha1NlcnZpY2UsXHJcbiAgICBASW5qZWN0KEFQUF9CQVNFX0hSRUYpIHByaXZhdGUgYmFzZUhyZWY6IHN0cmluZyxcclxuICAgIEBJbmplY3QoJ2Vudmlyb25tZW50JykgcHJpdmF0ZSBlbnZpcm9ubWVudCxcclxuICAgIHByaXZhdGUgY29va2llc1NlcnZpY2UgOiBDb29raWVTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSByb2xlc1NlcnZpY2UgOiBSb2xlc1NlcnZpY2UpIHtcclxuXHJcbiAgfVxyXG4gIGluaXQoKTogUHJvbWlzZTxhbnk+IHtcclxuICAgIHJldHVybiBuZXcgUHJvbWlzZShhc3luYyAocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XHJcbiAgICAgIHRyeSB7XHJcbiAgICAgICAgdGhpcy5rZXljbG9hay5nZXRUb2tlbigpLnRoZW4odG9rZW4gPT4ge1xyXG5cclxuICAgICAgICAgIHRoaXMuY3JlYXRlVG9rZW5DbGllbnQodG9rZW4pO1xyXG4gICAgICAgICAgdGhpcy5udXhlb0NsaWVudC5jb25uZWN0KClcclxuICAgICAgICAgICAgLnRoZW4oKGNsaWVudCkgPT4ge1xyXG4gICAgICAgICAgICAgIHRoaXMuYXV0aGVudGljYXRlZCA9IHRydWU7XHJcbiAgICAgICAgICAgICAgcmVzb2x2ZShjbGllbnQpO1xyXG4gICAgICAgICAgICAgIHRoaXMuY2hlY2tGb3JSb2xlcygpO1xyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAuY2F0Y2goKGVycm9yKSA9PiB7XHJcbiAgICAgICAgICAgICAgcmVqZWN0KGVycm9yKTtcclxuICAgICAgICAgICAgfSk7XHJcblxyXG4gICAgICAgIH0pXHJcbiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XHJcbiAgICAgICAgcmVqZWN0KGVycm9yKTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcblxyXG4gIH1cclxuXHJcbiAgaW5pdFdpdGhOdXhlb1Rva2VuKHRva2VuKXtcclxuICAgIHJldHVybiBuZXcgUHJvbWlzZShhc3luYyAocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XHJcbiAgICAgIHRyeSB7XHJcbiAgICAgICAgICB0aGlzLmNyZWF0ZUNsaWVudFdpdGhOdXhlb1Rva2VuKHRva2VuKTtcclxuICAgICAgICAgIHRoaXMubnV4ZW9DbGllbnQuY29ubmVjdCgpXHJcbiAgICAgICAgICAgIC50aGVuKChjbGllbnQpID0+IHtcclxuICAgICAgICAgICAgICB0aGlzLmF1dGhlbnRpY2F0ZWQgPSB0cnVlO1xyXG4gICAgICAgICAgICAgIHJlc29sdmUoY2xpZW50KTtcclxuICAgICAgICAgICAgICB0aGlzLmNoZWNrRm9yUm9sZXMoKTtcclxuICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgLmNhdGNoKChlcnJvcikgPT4ge1xyXG4gICAgICAgICAgICAgIHJlamVjdChlcnJvcik7XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICB9IGNhdGNoIChlcnJvcikge1xyXG4gICAgICAgIHJlamVjdChlcnJvcik7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgLy8gY3JlYXRlIG51eGVvIGNsaWVudCB1c2luZyBudXhlbyB0b2tlblxyXG4gIGNyZWF0ZUNsaWVudFdpdGhOdXhlb1Rva2VuKHRva2VuKXtcclxuICAgIHRoaXMubnV4ZW9DbGllbnQgPSBuZXcgbXlOdXhlbyh7XHJcbiAgICAgIGJhc2VVUkw6IHRoaXMuZW52aXJvbm1lbnQubnV4ZW9PcHRpb25zLmJhc2VVUkwsXHJcbiAgICAgIGF1dGg6IHtcclxuICAgICAgICBtZXRob2Q6ICdiZWFyZXJUb2tlbicsXHJcbiAgICAgICAgdG9rZW46IHRva2VuLFxyXG4gICAgICAgIGNsaWVudElkOiB0aGlzLmVudmlyb25tZW50Lm51eGVvT3B0aW9ucy5jbGllbnRfaWQsIC8vIG9wdGlvbmFsIE9BdXRoMiBjbGllbnQgSUQgdG8gcmVmcmVzaCB0aGUgYWNjZXNzIHRva2VuXHJcbiAgICAgICAgY2xpZW50U2VjcmV0OiB0aGlzLmVudmlyb25tZW50Lm51eGVvT3B0aW9ucy5jbGllbnRfc2VjcmV0XHJcbiAgICAgIH1cclxuICAgIH0gLCB0aGlzLmVudmlyb25tZW50ICwgdGhpcy5jb29raWVzU2VydmljZSk7XHJcbiAgfVxyXG5cclxuICAvLyBjcmVhdGUgbnV4ZW8gY2xpZW50IHVzaW5nIGtleWNvY2sgdG9rZW5cclxuICBjcmVhdGVUb2tlbkNsaWVudCh0b2tlbikge1xyXG4gICAgdGhpcy5udXhlb0NsaWVudCA9IG5ldyBOdXhlbyh7XHJcbiAgICAgIGJhc2VVUkw6IHRoaXMuZW52aXJvbm1lbnQubnV4ZW8sXHJcbiAgICAgIGF1dGg6IHtcclxuICAgICAgICBtZXRob2Q6ICdiZWFyZXJUb2tlbicsXHJcbiAgICAgICAgdG9rZW5cclxuICAgICAgfVxyXG4gICAgfSwgdGhpcy5rZXljbG9hayk7XHJcbiAgfVxyXG5cclxuICBhc3luYyAgZ2V0VG9rZW4oKSB7XHJcbiAgICByZXR1cm4gdGhpcy5rZXljbG9hay5nZXRUb2tlbigpO1xyXG4gIH1cclxuXHJcbiAgZGVjcmlwdEZvcm1hdGluZyhmb3JtYXRlIDogc3RyaW5nKXtcclxuICAgbGV0IG5ld0Zvcm1hdGUgPSBmb3JtYXRlLnN1YnN0cmluZygzLChmb3JtYXRlLmxlbmd0aC01KSk7XHJcbiAgIHJldHVybiBKU09OLnBhcnNlKGF0b2IobmV3Rm9ybWF0ZSkpXHJcbiAgfVxyXG5cclxuICBkb0xvZ291dCgpIHtcclxuICAgIHRoaXMua2V5Y2xvYWsubG9nb3V0KHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyB0aGlzLmJhc2VIcmVmKTtcclxuICB9XHJcblxyXG5cclxuICBpc1VzZXJJblJvbGUocm9sZTogYW55LCBjb21taXR0ZWVDb2RlID0gbnVsbCk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBjb25zdCBzaW1wbGVPYnNlcnZhYmxlID0gbmV3IE9ic2VydmFibGUob2JzZXJ2ZXIgPT4ge1xyXG4gICAgICB0aGlzLmtleWNsb2FrLmlzTG9nZ2VkSW4oKS50aGVuKGxvZ2dlZCA9PiB7XHJcbiAgICAgICAgaWYgKCFsb2dnZWQpIHtcclxuICAgICAgICAgIG9ic2VydmVyLm5leHQoZmFsc2UpO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICBjb25zdCBoYXNSb2xlID0gdGhpcy5yb2xlc1NlcnZpY2UuaXNVc2VySW5Sb2xlKHRoaXMubnV4ZW9DbGllbnQudXNlciwgcm9sZSwgY29tbWl0dGVlQ29kZSk7XHJcbiAgICAgICAgICBvYnNlcnZlci5uZXh0KGhhc1JvbGUpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgIH0pO1xyXG4gICAgfSk7XHJcblxyXG4gICAgcmV0dXJuIHNpbXBsZU9ic2VydmFibGU7XHJcbiAgfVxyXG4gIGNyZWF0ZUJsb2IoZmlsZSk6IGFueSB7XHJcbiAgICByZXR1cm4gbmV3IE51eGVvLkJsb2Ioe1xyXG4gICAgICBjb250ZW50OiBmaWxlXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIGdldER1cGxpY2F0ZXMocGFyYW1zID0ge30sIGJvZHkgPSB7fSk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICByZXR1cm4gZnJvbShcclxuICAgICAgdGhpcy5udXhlb0NsaWVudFxyXG4gICAgICAgIC5vcGVyYXRpb24oJ0FDX0dldF9EdXBsaWNhdGVzJywge1xyXG4gICAgICAgICAgdXJsOiBgJHt0aGlzLmVudmlyb25tZW50Lm51eGVvfSR7dGhpcy5lbnZpcm9ubWVudC5jdXN0b21BdXRvbWF0aW9ufWAsXHJcbiAgICAgICAgfSlcclxuICAgICAgICAucGFyYW1zKHBhcmFtcylcclxuICAgICAgICAuY29udGV4dChib2R5KVxyXG4gICAgICAgIC5leGVjdXRlKClcclxuICAgICkucGlwZShcclxuICAgICAgY2F0Y2hFcnJvcigoZXJyKSA9PiB7XHJcbiAgICAgICAgY29uc29sZS5sb2coZXJyKTtcclxuICAgICAgICB0aHJvdyBlcnI7XHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgY2hlY2tGb3JSb2xlcygpe1xyXG4gICAgdGhpcy5pc0N0c1VzZXIoKTtcclxuICAgIHRoaXMuaXNDdHNNYW5nZXIoKTtcclxuICB9XHJcblxyXG4gIGN0c1VzZXIgPSBmYWxzZTtcclxuICBpc0N0c1VzZXIoKXtcclxuICAgIHRoaXMuaXNVc2VySW5Sb2xlKCdjdHNTZWNyZXRhcnknLCAnJykuc3Vic2NyaWJlKGRhdGEgPT4ge1xyXG4gICAgICB0aGlzLmN0c1VzZXIgPSBkYXRhO1xyXG4gICAgfSlcclxuICB9XHJcbiAgY3RzTWFuZ2VyPSBmYWxzZTtcclxuICBpc0N0c01hbmdlcigpe1xyXG4gICAgdGhpcy5pc1VzZXJJblJvbGUoJ2N0c01hbmdlcicsICcnKS5zdWJzY3JpYmUoZGF0YSA9PiB7XHJcbiAgICAgIHRoaXMuY3RzTWFuZ2VyID0gZGF0YTtcclxuICAgIH0pXHJcbiAgfVxyXG59XHJcbiJdfQ==
|