@dsivd/prestations-ng 17.6.3 → 17.6.4
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/CHANGELOG.md +8 -0
- package/abstract-page-component.d.ts +4 -4
- package/dsivd-prestations-ng-17.6.4.tgz +0 -0
- package/esm2022/abstract-page-component.mjs +18 -14
- package/esm2022/foehn-page/foehn-page.service.mjs +3 -3
- package/fesm2022/dsivd-prestations-ng.mjs +19 -15
- package/fesm2022/dsivd-prestations-ng.mjs.map +1 -1
- package/foehn-page/foehn-page.service.d.ts +2 -2
- package/package.json +1 -1
- package/dsivd-prestations-ng-17.6.3.tgz +0 -0
package/CHANGELOG.md
CHANGED
|
@@ -6,6 +6,14 @@
|
|
|
6
6
|
|
|
7
7
|
---
|
|
8
8
|
|
|
9
|
+
## [17.6.4]
|
|
10
|
+
|
|
11
|
+
### Updated
|
|
12
|
+
|
|
13
|
+
- [abstract-page-component.ts](projects/prestations-ng/src/abstract-page-component.ts)
|
|
14
|
+
- update signature of send method (`send(goToNextPage: boolean = true)` => `send(goToNextPage: boolean = true, displaySuccessMessage: boolean = true)`)
|
|
15
|
+
- You can now save without displaying the success message to connected users
|
|
16
|
+
|
|
9
17
|
## [17.6.3]
|
|
10
18
|
|
|
11
19
|
### Fixed
|
|
@@ -36,15 +36,15 @@ export declare abstract class AbstractPageComponent<T extends I18nForm> implemen
|
|
|
36
36
|
private _pendingUploadService;
|
|
37
37
|
private _formInitSubscription;
|
|
38
38
|
private _currentLangSubscription;
|
|
39
|
-
private
|
|
40
|
-
private
|
|
39
|
+
private _transmitConcurrentSafe;
|
|
40
|
+
private _gesdemSaveSubscription;
|
|
41
41
|
constructor(activatedRoute: ActivatedRoute);
|
|
42
42
|
ngOnInit(): void;
|
|
43
43
|
ngAfterViewInit(): void;
|
|
44
44
|
ngOnDestroy(): void;
|
|
45
|
-
send(goToNextPage?: boolean): void;
|
|
45
|
+
send(goToNextPage?: boolean, displaySuccessMessage?: boolean): void;
|
|
46
46
|
transmit(): void;
|
|
47
|
-
sendAndTransmit(): void;
|
|
47
|
+
sendAndTransmit(displaySuccessMessage?: boolean): void;
|
|
48
48
|
previous(): void;
|
|
49
49
|
protected setPageTitle(pageTitle: string): void;
|
|
50
50
|
protected setPageTitleAsync(pageTitle: Observable<string>): void;
|
|
Binary file
|
|
@@ -77,14 +77,8 @@ export class AbstractPageComponent {
|
|
|
77
77
|
this._navigation.recap();
|
|
78
78
|
}
|
|
79
79
|
});
|
|
80
|
-
// Protects the save method on the GesdemService from concurrent access.
|
|
81
|
-
this.sendForFormConcurrentSafe = getConcurrentSafeCall(() => {
|
|
82
|
-
const canCreateDemande = this._navigation.isFirstFormPage() &&
|
|
83
|
-
!this._gesdemService.lastResponse?.meta?.reference?.length;
|
|
84
|
-
return this._gesdemService.save(this.form, canCreateDemande);
|
|
85
|
-
});
|
|
86
80
|
// Protects the transmit method on the GesdemService from concurrent access.
|
|
87
|
-
this.
|
|
81
|
+
this._transmitConcurrentSafe = getConcurrentSafeCall(() => this._gesdemService.transmit());
|
|
88
82
|
}
|
|
89
83
|
ngOnInit() {
|
|
90
84
|
this.gotToTop();
|
|
@@ -109,7 +103,7 @@ export class AbstractPageComponent {
|
|
|
109
103
|
});
|
|
110
104
|
this.saveFormRequestSubscription = this._foehnPageService
|
|
111
105
|
.saveFormRequest()
|
|
112
|
-
.subscribe(
|
|
106
|
+
.subscribe(displaySuccessMessage => this.send(false, displaySuccessMessage));
|
|
113
107
|
}
|
|
114
108
|
ngAfterViewInit() {
|
|
115
109
|
// @see https://github.com/angular/angular/issues/17572#issuecomment-323465737
|
|
@@ -126,7 +120,7 @@ export class AbstractPageComponent {
|
|
|
126
120
|
this._formInitSubscription?.unsubscribe();
|
|
127
121
|
this.saveFormRequestSubscription?.unsubscribe();
|
|
128
122
|
}
|
|
129
|
-
send(goToNextPage = true) {
|
|
123
|
+
send(goToNextPage = true, displaySuccessMessage = true) {
|
|
130
124
|
if (this._pendingUploadService.hasPendingFiles()) {
|
|
131
125
|
goToNextPage = false;
|
|
132
126
|
// PRESTAKIT-309: shouldDisplayErrors will be set back to true in 'attachmentsUploaded' subscription
|
|
@@ -134,11 +128,21 @@ export class AbstractPageComponent {
|
|
|
134
128
|
else {
|
|
135
129
|
this._validationHandlerService.shouldDisplayErrors(true);
|
|
136
130
|
}
|
|
137
|
-
this.
|
|
131
|
+
if (!this._gesdemSaveSubscription) {
|
|
132
|
+
// Protects the save method on the GesdemService from concurrent access.
|
|
133
|
+
const canCreateDemande = this._navigation.isFirstFormPage() &&
|
|
134
|
+
!this._gesdemService.lastResponse?.meta?.reference?.length;
|
|
135
|
+
this._gesdemSaveSubscription = this._gesdemService
|
|
136
|
+
.save(this.form, canCreateDemande, displaySuccessMessage)
|
|
137
|
+
.subscribe(() => {
|
|
138
|
+
this._gesdemSaveSubscription = null;
|
|
139
|
+
this.onFormSent(goToNextPage);
|
|
140
|
+
});
|
|
141
|
+
}
|
|
138
142
|
}
|
|
139
143
|
transmit() {
|
|
140
144
|
this._validationHandlerService.shouldDisplayErrors(true);
|
|
141
|
-
this.
|
|
145
|
+
this._transmitConcurrentSafe
|
|
142
146
|
.pipe(tap(() => this._eventsLoggerService.addEvent(SdkEventType.TRANSMIT)), catchError((error) => {
|
|
143
147
|
console.error(error);
|
|
144
148
|
return EMPTY;
|
|
@@ -150,7 +154,7 @@ export class AbstractPageComponent {
|
|
|
150
154
|
}
|
|
151
155
|
});
|
|
152
156
|
}
|
|
153
|
-
sendAndTransmit() {
|
|
157
|
+
sendAndTransmit(displaySuccessMessage = true) {
|
|
154
158
|
this._gesdemEventService
|
|
155
159
|
.formSentObservable()
|
|
156
160
|
.pipe(first())
|
|
@@ -161,7 +165,7 @@ export class AbstractPageComponent {
|
|
|
161
165
|
}
|
|
162
166
|
}
|
|
163
167
|
});
|
|
164
|
-
this.send(false);
|
|
168
|
+
this.send(false, displaySuccessMessage);
|
|
165
169
|
}
|
|
166
170
|
previous() {
|
|
167
171
|
this._navigation.previous();
|
|
@@ -225,4 +229,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
225
229
|
type: ViewChild,
|
|
226
230
|
args: [FoehnFormComponent, { static: true }]
|
|
227
231
|
}] } });
|
|
228
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3QtcGFnZS1jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9wcm9qZWN0cy9wcmVzdGF0aW9ucy1uZy9zcmMvYWJzdHJhY3QtcGFnZS1jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVILFNBQVMsRUFHVCxTQUFTLEVBQ1osTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxLQUFLLEVBQWMsRUFBRSxFQUFnQixNQUFNLE1BQU0sQ0FBQztBQUMzRCxPQUFPLEVBQ0gsVUFBVSxFQUNWLEtBQUssRUFDTCxRQUFRLEVBQ1IsS0FBSyxFQUNMLEdBQUcsRUFDSCxZQUFZLEVBQ2YsTUFBTSxnQkFBZ0IsQ0FBQztBQUV4QixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQztBQUNyRixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUN2RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUN4RSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQztBQUNyRixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNuRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwREFBMEQsQ0FBQztBQUNoRyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNuRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUN2RSxPQUFPLEVBQUUsWUFBWSxFQUFFLGlCQUFpQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFFL0UsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDL0UsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLG9DQUFv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ZSxDQUFDLElBQUksQ0FDekMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxZQUFZLENBQ25DLENBQUM7WUFFRixJQUFJLE9BQU8sSUFBSSxZQUFZLEVBQUUsQ0FBQztnQkFDMUIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUM1QixDQUFDO2lCQUFNLElBQUksQ0FBQyxPQUFPLElBQUksSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7Z0JBQzdDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1lBQ2hELENBQUM7UUFDTCxDQUFDLEVBQUUsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3RCLENBQUM7SUFFTyxtQ0FBbUM7UUFDdkMsSUFBSSxJQUFJLENBQUMscUJBQXFCLENBQUMsZUFBZSxFQUFFLEVBQUUsQ0FBQztZQUMvQyxNQUFNLGlDQUFpQyxHQUNuQyxJQUFJLENBQUMscUJBQXFCLENBQUMsbUJBQW1CLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtnQkFDMUQsaUNBQWlDLENBQUMsV0FBVyxFQUFFLENBQUM7Z0JBQ2hELElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNwQixDQUFDLENBQUMsQ0FBQztZQUNQLE9BQU8sSUFBSSxDQUFDO1FBQ2hCLENBQUM7UUFDRCxPQUFPLEtBQUssQ0FBQztJQUNqQixDQUFDO0lBRU8sUUFBUTtRQUNaLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQzFCLENBQUM7K0dBalJpQixxQkFBcUI7bUdBQXJCLHFCQUFxQiw4RUFHNUIsa0JBQWtCOzs0RkFIWCxxQkFBcUI7a0JBRDFDLFNBQVM7bUZBS04sa0JBQWtCO3NCQURqQixTQUFTO3VCQUFDLGtCQUFrQixFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQWZ0ZXJWaWV3SW5pdCxcbiAgICBEaXJlY3RpdmUsXG4gICAgT25EZXN0cm95LFxuICAgIE9uSW5pdCxcbiAgICBWaWV3Q2hpbGRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBFTVBUWSwgT2JzZXJ2YWJsZSwgb2YsIFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtcbiAgICBjYXRjaEVycm9yLFxuICAgIGZpcnN0LFxuICAgIG1lcmdlTWFwLFxuICAgIHNoYXJlLFxuICAgIHRhcCxcbiAgICB0aHJvdHRsZVRpbWVcbn0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBCcmVhZGNydW1iRXZlbnRTZXJ2aWNlIH0gZnJvbSAnLi9mb2Vobi1icmVhZGNydW1iL2JyZWFkY3J1bWItZXZlbnQuc2VydmljZSc7XG5pbXBvcnQgeyBGb2VobkZvcm1Db21wb25lbnQgfSBmcm9tICcuL2ZvZWhuLWZvcm0vZm9laG4tZm9ybS5jb21wb25lbnQnO1xuaW1wb3J0IHsgR3Jvd2xCcm9rZXJTZXJ2aWNlIH0gZnJvbSAnLi9mb2Vobi1ncm93bC9ncm93bC1icm9rZXIuc2VydmljZSc7XG5pbXBvcnQgeyBGb2Vobk5hdmlnYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi9mb2Vobi1uYXZpZ2F0aW9uL2ZvZWhuLW5hdmlnYXRpb24uc2VydmljZSc7XG5pbXBvcnQgeyBGb2VoblBhZ2VTZXJ2aWNlIH0gZnJvbSAnLi9mb2Vobi1wYWdlL2ZvZWhuLXBhZ2Uuc2VydmljZSc7XG5pbXBvcnQgeyBQZW5kaW5nVXBsb2FkU2VydmljZSB9IGZyb20gJy4vZm9laG4tdXBsb2FkL2ZvZWhuLW11bHRpLXVwbG9hZC9wZW5kaW5nLXVwbG9hZC5zZXJ2aWNlJztcbmltcG9ydCB7IEdlc2RlbUV2ZW50U2VydmljZSB9IGZyb20gJy4vZ2VzZGVtL2dlc2RlbS1ldmVudC5zZXJ2aWNlJztcbmltcG9ydCB7IEdlc2RlbUhhbmRsZXJTZXJ2aWNlIH0gZnJvbSAnLi9nZXNkZW0vZ2VzZGVtLWhhbmRsZXIuc2VydmljZSc7XG5pbXBvcnQgeyBBY3Rpb25TdGF0dXQsIEdlc2RlbVN0YXR1dFV0aWxzIH0gZnJvbSAnLi9nZXNkZW0vZ2VzZGVtLXN0YXR1dC11dGlscyc7XG5pbXBvcnQgeyBJMThuRm9ybSB9IGZyb20gJy4vaTE4bi1mb3JtJztcbmltcG9ydCB7IFNka0RpY3Rpb25hcnlTZXJ2aWNlIH0gZnJvbSAnLi9zZGstZGljdGlvbmFyeS9zZGstZGljdGlvbmFyeS5zZXJ2aWNlJztcbmltcG9ydCB7IFNka0V2ZW50VHlwZSB9IGZyb20gJy4vc2RrLWV2ZW50cy1sb2dnZXIvc2RrLWV2ZW50LXR5cGUnO1xuaW1wb3J0IHsgU2RrRXZlbnRzTG9nZ2VyU2VydmljZSB9IGZyb20gJy4vc2RrLWV2ZW50cy1sb2dnZXIvc2RrLWV2ZW50cy1sb2dnZXIuc2VydmljZSc7XG5pbXBvcnQgeyBTZXJ2aWNlTG9jYXRvciB9IGZyb20gJy4vc2VydmljZS1sb2NhdG9yJztcbmltcG9ydCB7IFZhbGlkYXRpb25IYW5kbGVyU2VydmljZSB9IGZyb20gJy4vdmFsaWRhdGlvbi92YWxpZGF0aW9uLWhhbmRsZXIuc2VydmljZSc7XG5cbi8qKlxuICogRW5zdXJlcyB0aGF0IGEgY2FsbCBpcyBvbmx5IHN1YnNjcmliZWQgYW5kIHNlbmQgb25lIGF0IHRoZSB0aW1lLlxuICogQHBhcmFtIGZuIGZ1bmN0aW9uIHRvIGJlIGNhbGxlZCBhcyBjb25jdXJyZW50IHNhZmVcbiAqIEByZXR1cm5zIE9ic2VydmFibGVcbiAqL1xuZnVuY3Rpb24gZ2V0Q29uY3VycmVudFNhZmVDYWxsPFQ+KGZuOiAoKSA9PiBPYnNlcnZhYmxlPFQ+KTogT2JzZXJ2YWJsZTxUPiB7XG4gICAgcmV0dXJuIG9mKHRydWUpLnBpcGUoXG4gICAgICAgIC8vIFRvIGd1YXJkIGFnYWluc3QgZG91YmxlLWNsaWNrXG4gICAgICAgIHRocm90dGxlVGltZSgyMDApLFxuICAgICAgICAvLyBmbGF0bWFwKGZuLCAxKSBlbnN1cmVzIHRoYXQgb25seSBvbmUgcXVlcnkgaXMgcmFuIGF0IHRoZSBzYW1lIHRpbWVcbiAgICAgICAgbWVyZ2VNYXAoZm4sIDEpLFxuICAgICAgICAvLyBBcyB0aGlzIG9ic2VydmFibGUgaXMgdXNlZCBhcyBhIFByb21pc2UgKHdpdGggc3Vic2NyaWJlKSwgdGhpcyBlbnN1cmVzIHRoYXRcbiAgICAgICAgLy8gdGhlIG9wZXJhdG9ycyBhYm92ZSBjYW4gYmUgc2hhcmVkIGJldHdlZW4gZWFjaCBzdWJzY3JpYmUuXG4gICAgICAgIHNoYXJlKClcbiAgICApO1xufVxuXG5ARGlyZWN0aXZlKClcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBYnN0cmFjdFBhZ2VDb21wb25lbnQ8VCBleHRlbmRzIEkxOG5Gb3JtPlxuICAgIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3ksIEFmdGVyVmlld0luaXRcbntcbiAgICBAVmlld0NoaWxkKEZvZWhuRm9ybUNvbXBvbmVudCwgeyBzdGF0aWM6IHRydWUgfSlcbiAgICBmb2VobkZvcm1Db21wb25lbnQ6IEZvZWhuRm9ybUNvbXBvbmVudDtcblxuICAgIGZvcm06IFQ7XG4gICAgcmVmZXJlbmNlOiBzdHJpbmc7XG5cbiAgICBwcm90ZWN0ZWQgcGFnZVRpdGxlU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XG4gICAgcHJvdGVjdGVkIHVwZGF0ZUZvcm1EYXRhU3ViamVjdFN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuICAgIHByb3RlY3RlZCBhdHRhY2htZW50c1NpbmdsZVVwbG9hZGVkU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XG4gICAgcHJvdGVjdGVkIGF0dGFjaG1lbnRzTXVsdGlVcGxvYWRlZFN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuICAgIHByb3RlY3RlZCBzYXZlRm9ybVJlcXVlc3RTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcbiAgICBwcm90ZWN0ZWQgX2dlc2RlbVNlcnZpY2U6IEdlc2RlbUhhbmRsZXJTZXJ2aWNlO1xuICAgIHByb3RlY3RlZCBfZ2VzZGVtRXZlbnRTZXJ2aWNlOiBHZXNkZW1FdmVudFNlcnZpY2U7XG4gICAgcHJvdGVjdGVkIF9uYXZpZ2F0aW9uOiBGb2Vobk5hdmlnYXRpb25TZXJ2aWNlO1xuICAgIHByb3RlY3RlZCBfYWN0aXZhdGVkUm91dGU6IEFjdGl2YXRlZFJvdXRlO1xuICAgIHByb3RlY3RlZCBfZ3Jvd2xTZXJ2aWNlOiBHcm93bEJyb2tlclNlcnZpY2U7XG4gICAgcHJvdGVjdGVkIF92YWxpZGF0aW9uSGFuZGxlclNlcnZpY2U6IFZhbGlkYXRpb25IYW5kbGVyU2VydmljZTtcbiAgICBwcm90ZWN0ZWQgX2JyZWFkY3J1bWJFdmVudFNlcnZpY2U6IEJyZWFkY3J1bWJFdmVudFNlcnZpY2U7XG4gICAgcHJvdGVjdGVkIF9mb2VoblBhZ2VTZXJ2aWNlOiBGb2VoblBhZ2VTZXJ2aWNlO1xuICAgIHByb3RlY3RlZCBfZGljdGlvbmFyeVNlcnZpY2U6IFNka0RpY3Rpb25hcnlTZXJ2aWNlO1xuICAgIHByb3RlY3RlZCBfZXZlbnRzTG9nZ2VyU2VydmljZTogU2RrRXZlbnRzTG9nZ2VyU2VydmljZTtcblxuICAgIHByaXZhdGUgX3BlbmRpbmdVcGxvYWRTZXJ2aWNlOiBQZW5kaW5nVXBsb2FkU2VydmljZTtcbiAgICBwcml2YXRlIF9mb3JtSW5pdFN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuICAgIHByaXZhdGUgX2N1cnJlbnRMYW5nU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICBwcml2YXRlIHNlbmRGb3JGb3JtQ29uY3VycmVudFNhZmU6IE9ic2VydmFibGU8YW55PjtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgIHByaXZhdGUgdHJhbnNtaXRDb25jdXJyZW50U2FmZTogT2JzZXJ2YWJsZTxhbnk+O1xuXG4gICAgY29uc3RydWN0b3IocHJvdGVjdGVkIGFjdGl2YXRlZFJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSkge1xuICAgICAgICB0aGlzLl9nZXNkZW1TZXJ2aWNlID0gU2VydmljZUxvY2F0b3IuaW5qZWN0b3IuZ2V0KEdlc2RlbUhhbmRsZXJTZXJ2aWNlKTtcbiAgICAgICAgdGhpcy5fZ2VzZGVtRXZlbnRTZXJ2aWNlID1cbiAgICAgICAgICAgIFNlcnZpY2VMb2NhdG9yLmluamVjdG9yLmdldChHZXNkZW1FdmVudFNlcnZpY2UpO1xuICAgICAgICB0aGlzLl9uYXZpZ2F0aW9uID0gU2VydmljZUxvY2F0b3IuaW5qZWN0b3IuZ2V0KEZvZWhuTmF2aWdhdGlvblNlcnZpY2UpO1xuICAgICAgICB0aGlzLl9hY3RpdmF0ZWRSb3V0ZSA9IFNlcnZpY2VMb2NhdG9yLmluamVjdG9yLmdldChBY3RpdmF0ZWRSb3V0ZSk7XG4gICAgICAgIHRoaXMuX2dyb3dsU2VydmljZSA9IFNlcnZpY2VMb2NhdG9yLmluamVjdG9yLmdldChHcm93bEJyb2tlclNlcnZpY2UpO1xuICAgICAgICB0aGlzLl92YWxpZGF0aW9uSGFuZGxlclNlcnZpY2UgPSBTZXJ2aWNlTG9jYXRvci5pbmplY3Rvci5nZXQoXG4gICAgICAgICAgICBWYWxpZGF0aW9uSGFuZGxlclNlcnZpY2VcbiAgICAgICAgKTtcbiAgICAgICAgdGhpcy5fcGVuZGluZ1VwbG9hZFNlcnZpY2UgPVxuICAgICAgICAgICAgU2VydmljZUxvY2F0b3IuaW5qZWN0b3IuZ2V0KFBlbmRpbmdVcGxvYWRTZXJ2aWNlKTtcbiAgICAgICAgdGhpcy5fYnJlYWRjcnVtYkV2ZW50U2VydmljZSA9IFNlcnZpY2VMb2NhdG9yLmluamVjdG9yLmdldChcbiAgICAgICAgICAgIEJyZWFkY3J1bWJFdmVudFNlcnZpY2VcbiAgICAgICAgKTtcbiAgICAgICAgdGhpcy5fZm9laG5QYWdlU2VydmljZSA9IFNlcnZpY2VMb2NhdG9yLmluamVjdG9yLmdldChGb2VoblBhZ2VTZXJ2aWNlKTtcblxuICAgICAgICB0aGlzLl9kaWN0aW9uYXJ5U2VydmljZSA9XG4gICAgICAgICAgICBTZXJ2aWNlTG9jYXRvci5pbmplY3Rvci5nZXQoU2RrRGljdGlvbmFyeVNlcnZpY2UpO1xuICAgICAgICB0aGlzLl9ldmVudHNMb2dnZXJTZXJ2aWNlID0gU2VydmljZUxvY2F0b3IuaW5qZWN0b3IuZ2V0KFxuICAgICAgICAgICAgU2RrRXZlbnRzTG9nZ2VyU2VydmljZVxuICAgICAgICApO1xuXG4gICAgICAgIGNvbnN0IHJvdXRlID0gRm9laG5OYXZpZ2F0aW9uU2VydmljZS5nZXRSb290Um91dGVSZWN1cnNpdmUoXG4gICAgICAgICAgICBhY3RpdmF0ZWRSb3V0ZS5zbmFwc2hvdFxuICAgICAgICApO1xuICAgICAgICB0aGlzLl9uYXZpZ2F0aW9uLmluaXRSb3V0ZShyb3V0ZSk7XG4gICAgICAgIHRoaXMuX2Zvcm1Jbml0U3Vic2NyaXB0aW9uID0gdGhpcy5fZ2VzZGVtRXZlbnRTZXJ2aWNlXG4gICAgICAgICAgICAuZm9ybUluaXRpYWxpemF0aW9uT2JzZXJ2YWJsZSgpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnJlZmVyZW5jZSA9XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX2dlc2RlbVNlcnZpY2UubGFzdFJlc3BvbnNlICYmXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX2dlc2RlbVNlcnZpY2UubGFzdFJlc3BvbnNlLm1ldGEucmVmZXJlbmNlO1xuICAgICAgICAgICAgICAgIGNvbnN0IHN0YXR1dCA9XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX2dlc2RlbVNlcnZpY2UubGFzdFJlc3BvbnNlICYmXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX2dlc2RlbVNlcnZpY2UubGFzdFJlc3BvbnNlLm1ldGEuc3RhdHV0O1xuICAgICAgICAgICAgICAgIGNvbnN0IHNob3VsZFByZXZlbnROYXZpZ2F0aW9uVG9MYXN0ID1cbiAgICAgICAgICAgICAgICAgICAgYWN0aXZhdGVkUm91dGUuc25hcHNob3QuZGF0YVxuICAgICAgICAgICAgICAgICAgICAgICAgLnByZXZlbnROYXZpZ2F0aW9uVG9MYXN0T25UcmFuc2ZlcnJlZCA9PT0gdHJ1ZTtcblxuICAgICAgICAgICAgICAgIGNvbnN0IGxhbmd1YWdlQ29kZSA9XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX2dlc2RlbVNlcnZpY2UubGFzdFJlc3BvbnNlICYmXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX2dlc2RlbVNlcnZpY2UubGFzdFJlc3BvbnNlLmZvcm0gJiZcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fZ2VzZGVtU2VydmljZS5sYXN0UmVzcG9uc2UuZm9ybS5sYW5ndWFnZTtcblxuICAgICAgICAgICAgICAgIHRoaXMuX2RpY3Rpb25hcnlTZXJ2aWNlLmNoYW5nZUxhbmd1YWdlKGxhbmd1YWdlQ29kZSk7XG5cbiAgICAgICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgICAgICFzaG91bGRQcmV2ZW50TmF2aWdhdGlvblRvTGFzdCAmJlxuICAgICAgICAgICAgICAgICAgICB0aGlzLnJlZmVyZW5jZSAmJlxuICAgICAgICAgICAgICAgICAgICBHZXNkZW1TdGF0dXRVdGlscy5pc0ZpbmFsKFxuICAgICAgICAgICAgICAgICAgICAgICAgQWN0aW9uU3RhdHV0W3N0YXR1dCBhcyBBY3Rpb25TdGF0dXRdXG4gICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fbmF2aWdhdGlvbi5sYXN0KCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5yZWZlcmVuY2UgJiZcbiAgICAgICAgICAgICAgICAgICAgQWN0aW9uU3RhdHV0W3N0YXR1dCBhcyBBY3Rpb25TdGF0dXRdID09PVxuICAgICAgICAgICAgICAgICAgICAgICAgQWN0aW9uU3RhdHV0LlBFTkRJTkdfUEFZTUVOVFxuICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLl9uYXZpZ2F0aW9uLnJlY2FwKCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgLy8gUHJvdGVjdHMgdGhlIHNhdmUgbWV0aG9kIG9uIHRoZSBHZXNkZW1TZXJ2aWNlIGZyb20gY29uY3VycmVudCBhY2Nlc3MuXG4gICAgICAgIHRoaXMuc2VuZEZvckZvcm1Db25jdXJyZW50U2FmZSA9IGdldENvbmN1cnJlbnRTYWZlQ2FsbCgoKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBjYW5DcmVhdGVEZW1hbmRlID1cbiAgICAgICAgICAgICAgICB0aGlzLl9uYXZpZ2F0aW9uLmlzRmlyc3RGb3JtUGFnZSgpICYmXG4gICAgICAgICAgICAgICAgIXRoaXMuX2dlc2RlbVNlcnZpY2UubGFzdFJlc3BvbnNlPy5tZXRhPy5yZWZlcmVuY2U/Lmxlbmd0aDtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLl9nZXNkZW1TZXJ2aWNlLnNhdmUodGhpcy5mb3JtLCBjYW5DcmVhdGVEZW1hbmRlKTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgLy8gUHJvdGVjdHMgdGhlIHRyYW5zbWl0IG1ldGhvZCBvbiB0aGUgR2VzZGVtU2VydmljZSBmcm9tIGNvbmN1cnJlbnQgYWNjZXNzLlxuICAgICAgICB0aGlzLnRyYW5zbWl0Q29uY3VycmVudFNhZmUgPSBnZXRDb25jdXJyZW50U2FmZUNhbGwoKCkgPT5cbiAgICAgICAgICAgIHRoaXMuX2dlc2RlbVNlcnZpY2UudHJhbnNtaXQoKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmdvdFRvVG9wKCk7XG4gICAgICAgIHRoaXMuZm9ybSA9IHRoaXMubmV3Rm9ybSgpO1xuICAgICAgICB0aGlzLl9jdXJyZW50TGFuZ1N1YnNjcmlwdGlvbiA9IHRoaXMuX2RpY3Rpb25hcnlTZXJ2aWNlXG4gICAgICAgICAgICAuZ2V0Q3VycmVudExhbmd1YWdlQ29kZSgpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKGxhbmd1YWdlQ29kZSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5mb3JtLmxhbmd1YWdlID0gbGFuZ3VhZ2VDb2RlO1xuICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgdGhpcy5fdmFsaWRhdGlvbkhhbmRsZXJTZXJ2aWNlLnNob3VsZERpc3BsYXlFcnJvcnMoZmFsc2UpO1xuXG4gICAgICAgIHRoaXMudXBkYXRlRm9ybURhdGFTdWJqZWN0U3Vic2NyaXB0aW9uID1cbiAgICAgICAgICAgIHRoaXMuX2dlc2RlbVNlcnZpY2UudXBkYXRlRm9ybURhdGFTdWJqZWN0LnN1YnNjcmliZShmb3JtID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmZvcm0gPSBmb3JtO1xuICAgICAgICAgICAgICAgIHRoaXMuX2dlc2RlbUV2ZW50U2VydmljZS5mb3JtSW5pdGlhbGl6YXRpb25TdWJqZWN0Lm5leHQoZm9ybSk7XG4gICAgICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLmF0dGFjaG1lbnRzTXVsdGlVcGxvYWRlZFN1YnNjcmlwdGlvbiA9XG4gICAgICAgICAgICB0aGlzLl9wZW5kaW5nVXBsb2FkU2VydmljZS5hdHRhY2htZW50c1VwbG9hZGVkLnN1YnNjcmliZShmb3JtID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmZvcm0gPSBmb3JtO1xuICAgICAgICAgICAgICAgIC8vIFBSRVNUQUtJVC0zMDk6IHNldCBiYWNrIHNob3VsZERpc3BsYXlFcnJvcnMgdG8gdHJ1ZSBvbmNlIGZpbGVzIGhhdmUgYmVlbiB1cGxvYWRlZFxuICAgICAgICAgICAgICAgIHRoaXMuX3ZhbGlkYXRpb25IYW5kbGVyU2VydmljZS5zaG91bGREaXNwbGF5RXJyb3JzKHRydWUpO1xuICAgICAgICAgICAgICAgIHRoaXMub25Gb3JtU2VudCh0cnVlKTtcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMuc2F2ZUZvcm1SZXF1ZXN0U3Vic2NyaXB0aW9uID0gdGhpcy5fZm9laG5QYWdlU2VydmljZVxuICAgICAgICAgICAgLnNhdmVGb3JtUmVxdWVzdCgpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHRoaXMuc2VuZChmYWxzZSkpO1xuICAgIH1cblxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgLy8gQHNlZSBodHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci9hbmd1bGFyL2lzc3Vlcy8xNzU3MiNpc3N1ZWNvbW1lbnQtMzIzNDY1NzM3XG4gICAgICAgIFByb21pc2UucmVzb2x2ZShudWxsKS50aGVuKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuX2dlc2RlbVNlcnZpY2UucmVxdWlyZSgpLnN1YnNjcmliZSgpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fY3VycmVudExhbmdTdWJzY3JpcHRpb24/LnVuc3Vic2NyaWJlKCk7XG4gICAgICAgIHRoaXMucGFnZVRpdGxlU3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpO1xuICAgICAgICB0aGlzLnVwZGF0ZUZvcm1EYXRhU3ViamVjdFN1YnNjcmlwdGlvbj8udW5zdWJzY3JpYmUoKTtcbiAgICAgICAgdGhpcy5hdHRhY2htZW50c1NpbmdsZVVwbG9hZGVkU3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpO1xuICAgICAgICB0aGlzLmF0dGFjaG1lbnRzTXVsdGlVcGxvYWRlZFN1YnNjcmlwdGlvbj8udW5zdWJzY3JpYmUoKTtcbiAgICAgICAgdGhpcy5fZm9ybUluaXRTdWJzY3JpcHRpb24/LnVuc3Vic2NyaWJlKCk7XG4gICAgICAgIHRoaXMuc2F2ZUZvcm1SZXF1ZXN0U3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpO1xuICAgIH1cblxuICAgIHNlbmQoZ29Ub05leHRQYWdlOiBib29sZWFuID0gdHJ1ZSk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5fcGVuZGluZ1VwbG9hZFNlcnZpY2UuaGFzUGVuZGluZ0ZpbGVzKCkpIHtcbiAgICAgICAgICAgIGdvVG9OZXh0UGFnZSA9IGZhbHNlO1xuICAgICAgICAgICAgLy8gUFJFU1RBS0lULTMwOTogc2hvdWxkRGlzcGxheUVycm9ycyB3aWxsIGJlIHNldCBiYWNrIHRvIHRydWUgaW4gJ2F0dGFjaG1lbnRzVXBsb2FkZWQnIHN1YnNjcmlwdGlvblxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5fdmFsaWRhdGlvbkhhbmRsZXJTZXJ2aWNlLnNob3VsZERpc3BsYXlFcnJvcnModHJ1ZSk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5zZW5kRm9yRm9ybUNvbmN1cnJlbnRTYWZlLnN1YnNjcmliZSgoKSA9PlxuICAgICAgICAgICAgdGhpcy5vbkZvcm1TZW50KGdvVG9OZXh0UGFnZSlcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICB0cmFuc21pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fdmFsaWRhdGlvbkhhbmRsZXJTZXJ2aWNlLnNob3VsZERpc3BsYXlFcnJvcnModHJ1ZSk7XG4gICAgICAgIHRoaXMudHJhbnNtaXRDb25jdXJyZW50U2FmZVxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgdGFwKCgpID0+XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX2V2ZW50c0xvZ2dlclNlcnZpY2UuYWRkRXZlbnQoU2RrRXZlbnRUeXBlLlRSQU5TTUlUKVxuICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgY2F0Y2hFcnJvcigoZXJyb3I6IHVua25vd24pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgY29uc29sZS5lcnJvcihlcnJvcik7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBFTVBUWTtcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKCF0aGlzLl9nZXNkZW1TZXJ2aWNlLmxhc3RSZXNwb25zZS5lcnJvcnMubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX2dlc2RlbUV2ZW50U2VydmljZS5mb3JtVHJhbnNtaXR0ZWRTdWJqZWN0Lm5leHQoXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLl9nZXNkZW1TZXJ2aWNlLmxhc3RSZXNwb25zZVxuICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLl9uYXZpZ2F0aW9uLm5leHQoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBzZW5kQW5kVHJhbnNtaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2dlc2RlbUV2ZW50U2VydmljZVxuICAgICAgICAgICAgLmZvcm1TZW50T2JzZXJ2YWJsZSgpXG4gICAgICAgICAgICAucGlwZShmaXJzdCgpKVxuICAgICAgICAgICAgLnN1YnNjcmliZShyZXNwb25zZSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKCFyZXNwb25zZS5lcnJvcnMubGVuZ3RoICYmICFyZXNwb25zZS5tZXRhLmNyaXRpY2FsKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmICghdGhpcy5jaGVja0hhc1BlbmRpbmdzRmlsZXNCZWZvcmVUcmFuc21pdCgpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnRyYW5zbWl0KCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLnNlbmQoZmFsc2UpO1xuICAgIH1cblxuICAgIHByZXZpb3VzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9uYXZpZ2F0aW9uLnByZXZpb3VzKCk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIHNldFBhZ2VUaXRsZShwYWdlVGl0bGU6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICB0aGlzLl9mb2VoblBhZ2VTZXJ2aWNlLnNldFBhZ2VUaXRsZShwYWdlVGl0bGUpO1xuICAgICAgICB0aGlzLl9icmVhZGNydW1iRXZlbnRTZXJ2aWNlLnNldEN1cnJlbnRCcmVhZGNydW1iKHtcbiAgICAgICAgICAgIHVybDogbnVsbCxcbiAgICAgICAgICAgIHJvdXRlckxpbms6IG51bGwsXG4gICAgICAgICAgICBsYWJlbDogcGFnZVRpdGxlXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBzZXRQYWdlVGl0bGVBc3luYyhwYWdlVGl0bGU6IE9ic2VydmFibGU8c3RyaW5nPik6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5wYWdlVGl0bGVTdWJzY3JpcHRpb24pIHtcbiAgICAgICAgICAgIHRoaXMucGFnZVRpdGxlU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5wYWdlVGl0bGVTdWJzY3JpcHRpb24gPSBwYWdlVGl0bGUuc3Vic2NyaWJlKHRpdGxlID0+XG4gICAgICAgICAgICB0aGlzLnNldFBhZ2VUaXRsZSh0aXRsZSlcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgb25Gb3JtU2VudChnb1RvTmV4dFBhZ2U6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuZm9laG5Gb3JtQ29tcG9uZW50KSB7XG4gICAgICAgICAgICAvLyBTb21lIHBhZ2VzIGRvbid0IGhhdmUgYSBmb3JtLlxuICAgICAgICAgICAgdGhpcy5mb2VobkZvcm1Db21wb25lbnQucmVzZXQoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuX25hdmlnYXRpb24uY3VycmVudCgpLnRoZW4oKCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgaXNWYWxpZCA9XG4gICAgICAgICAgICAgICAgLy8gU29tZSBwYWdlcyBkb24ndCBoYXZlIGEgZm9ybS5cbiAgICAgICAgICAgICAgICB0aGlzLmZvZWhuRm9ybUNvbXBvbmVudCAmJlxuICAgICAgICAgICAgICAgIHRoaXMuZm9laG5Gb3JtQ29tcG9uZW50LmlzVmFsaWQoKSAmJlxuICAgICAgICAgICAgICAgICF0aGlzLl9nZXNkZW1TZXJ2aWNlLmxhc3RSZXNwb25zZS5tZXRhLmNyaXRpY2FsO1xuXG4gICAgICAgICAgICBpZiAoaXNWYWxpZCkge1xuICAgICAgICAgICAgICAgIHRoaXMuX3ZhbGlkYXRpb25IYW5kbGVyU2VydmljZS5zaG91bGREaXNwbGF5RXJyb3JzKGZhbHNlKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGhpcy5fZ2VzZGVtRXZlbnRTZXJ2aWNlLmZvcm1TZW50U3ViamVjdC5uZXh0KFxuICAgICAgICAgICAgICAgIHRoaXMuX2dlc2RlbVNlcnZpY2UubGFzdFJlc3BvbnNlXG4gICAgICAgICAgICApO1xuXG4gICAgICAgICAgICBpZiAoaXNWYWxpZCAmJiBnb1RvTmV4dFBhZ2UpIHtcbiAgICAgICAgICAgICAgICB0aGlzLl9uYXZpZ2F0aW9uLm5leHQoKTtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoIWlzVmFsaWQgJiYgdGhpcy5mb2VobkZvcm1Db21wb25lbnQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmZvZWhuRm9ybUNvbXBvbmVudC5mb2N1c0Vycm9yU3VtbWFyeSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9LCBjb25zb2xlLmVycm9yKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGNoZWNrSGFzUGVuZGluZ3NGaWxlc0JlZm9yZVRyYW5zbWl0KCk6IGJvb2xlYW4ge1xuICAgICAgICBpZiAodGhpcy5fcGVuZGluZ1VwbG9hZFNlcnZpY2UuaGFzUGVuZGluZ0ZpbGVzKCkpIHtcbiAgICAgICAgICAgIGNvbnN0IG11bHRpVXBsb2FkQXR0YWNobWVudFN1YnNjcmlwdGlvbiA9XG4gICAgICAgICAgICAgICAgdGhpcy5fcGVuZGluZ1VwbG9hZFNlcnZpY2UuYXR0YWNobWVudHNVcGxvYWRlZC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBtdWx0aVVwbG9hZEF0dGFjaG1lbnRTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy50cmFuc21pdCgpO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ290VG9Ub3AoKTogdm9pZCB7XG4gICAgICAgIHdpbmRvdy5zY3JvbGxUbygwLCAwKTtcbiAgICB9XG5cbiAgICBhYnN0cmFjdCBuZXdGb3JtKCk6IFQ7XG59XG4iXX0=
|
|
232
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3QtcGFnZS1jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9wcm9qZWN0cy9wcmVzdGF0aW9ucy1uZy9zcmMvYWJzdHJhY3QtcGFnZS1jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVILFNBQVMsRUFHVCxTQUFTLEVBQ1osTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxLQUFLLEVBQWMsRUFBRSxFQUFnQixNQUFNLE1BQU0sQ0FBQztBQUMzRCxPQUFPLEVBQ0gsVUFBVSxFQUNWLEtBQUssRUFDTCxRQUFRLEVBQ1IsS0FBSyxFQUNMLEdBQUcsRUFDSCxZQUFZLEVBQ2YsTUFBTSxnQkFBZ0IsQ0FBQztBQUV4QixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQztBQUNyRixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUN2RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUN4RSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQztBQUNyRixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNuRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwREFBMEQsQ0FBQztBQUNoRyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNuRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUN2RSxPQUFPLEVBQUUsWUFBWSxFQUFFLGlCQUFpQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFFL0UsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDL0UsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLG9DQUFv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QUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBBZnRlclZpZXdJbml0LFxuICAgIERpcmVjdGl2ZSxcbiAgICBPbkRlc3Ryb3ksXG4gICAgT25Jbml0LFxuICAgIFZpZXdDaGlsZFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IEVNUFRZLCBPYnNlcnZhYmxlLCBvZiwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge1xuICAgIGNhdGNoRXJyb3IsXG4gICAgZmlyc3QsXG4gICAgbWVyZ2VNYXAsXG4gICAgc2hhcmUsXG4gICAgdGFwLFxuICAgIHRocm90dGxlVGltZVxufSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IEJyZWFkY3J1bWJFdmVudFNlcnZpY2UgfSBmcm9tICcuL2ZvZWhuLWJyZWFkY3J1bWIvYnJlYWRjcnVtYi1ldmVudC5zZXJ2aWNlJztcbmltcG9ydCB7IEZvZWhuRm9ybUNvbXBvbmVudCB9IGZyb20gJy4vZm9laG4tZm9ybS9mb2Vobi1mb3JtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBHcm93bEJyb2tlclNlcnZpY2UgfSBmcm9tICcuL2ZvZWhuLWdyb3dsL2dyb3dsLWJyb2tlci5zZXJ2aWNlJztcbmltcG9ydCB7IEZvZWhuTmF2aWdhdGlvblNlcnZpY2UgfSBmcm9tICcuL2ZvZWhuLW5hdmlnYXRpb24vZm9laG4tbmF2aWdhdGlvbi5zZXJ2aWNlJztcbmltcG9ydCB7IEZvZWhuUGFnZVNlcnZpY2UgfSBmcm9tICcuL2ZvZWhuLXBhZ2UvZm9laG4tcGFnZS5zZXJ2aWNlJztcbmltcG9ydCB7IFBlbmRpbmdVcGxvYWRTZXJ2aWNlIH0gZnJvbSAnLi9mb2Vobi11cGxvYWQvZm9laG4tbXVsdGktdXBsb2FkL3BlbmRpbmctdXBsb2FkLnNlcnZpY2UnO1xuaW1wb3J0IHsgR2VzZGVtRXZlbnRTZXJ2aWNlIH0gZnJvbSAnLi9nZXNkZW0vZ2VzZGVtLWV2ZW50LnNlcnZpY2UnO1xuaW1wb3J0IHsgR2VzZGVtSGFuZGxlclNlcnZpY2UgfSBmcm9tICcuL2dlc2RlbS9nZXNkZW0taGFuZGxlci5zZXJ2aWNlJztcbmltcG9ydCB7IEFjdGlvblN0YXR1dCwgR2VzZGVtU3RhdHV0VXRpbHMgfSBmcm9tICcuL2dlc2RlbS9nZXNkZW0tc3RhdHV0LXV0aWxzJztcbmltcG9ydCB7IEkxOG5Gb3JtIH0gZnJvbSAnLi9pMThuLWZvcm0nO1xuaW1wb3J0IHsgU2RrRGljdGlvbmFyeVNlcnZpY2UgfSBmcm9tICcuL3Nkay1kaWN0aW9uYXJ5L3Nkay1kaWN0aW9uYXJ5LnNlcnZpY2UnO1xuaW1wb3J0IHsgU2RrRXZlbnRUeXBlIH0gZnJvbSAnLi9zZGstZXZlbnRzLWxvZ2dlci9zZGstZXZlbnQtdHlwZSc7XG5pbXBvcnQgeyBTZGtFdmVudHNMb2dnZXJTZXJ2aWNlIH0gZnJvbSAnLi9zZGstZXZlbnRzLWxvZ2dlci9zZGstZXZlbnRzLWxvZ2dlci5zZXJ2aWNlJztcbmltcG9ydCB7IFNlcnZpY2VMb2NhdG9yIH0gZnJvbSAnLi9zZXJ2aWNlLWxvY2F0b3InO1xuaW1wb3J0IHsgVmFsaWRhdGlvbkhhbmRsZXJTZXJ2aWNlIH0gZnJvbSAnLi92YWxpZGF0aW9uL3ZhbGlkYXRpb24taGFuZGxlci5zZXJ2aWNlJztcblxuLyoqXG4gKiBFbnN1cmVzIHRoYXQgYSBjYWxsIGlzIG9ubHkgc3Vic2NyaWJlZCBhbmQgc2VuZCBvbmUgYXQgdGhlIHRpbWUuXG4gKiBAcGFyYW0gZm4gZnVuY3Rpb24gdG8gYmUgY2FsbGVkIGFzIGNvbmN1cnJlbnQgc2FmZVxuICogQHJldHVybnMgT2JzZXJ2YWJsZVxuICovXG5mdW5jdGlvbiBnZXRDb25jdXJyZW50U2FmZUNhbGw8VD4oZm46ICgpID0+IE9ic2VydmFibGU8VD4pOiBPYnNlcnZhYmxlPFQ+IHtcbiAgICByZXR1cm4gb2YodHJ1ZSkucGlwZShcbiAgICAgICAgLy8gVG8gZ3VhcmQgYWdhaW5zdCBkb3VibGUtY2xpY2tcbiAgICAgICAgdGhyb3R0bGVUaW1lKDIwMCksXG4gICAgICAgIC8vIGZsYXRtYXAoZm4sIDEpIGVuc3VyZXMgdGhhdCBvbmx5IG9uZSBxdWVyeSBpcyByYW4gYXQgdGhlIHNhbWUgdGltZVxuICAgICAgICBtZXJnZU1hcChmbiwgMSksXG4gICAgICAgIC8vIEFzIHRoaXMgb2JzZXJ2YWJsZSBpcyB1c2VkIGFzIGEgUHJvbWlzZSAod2l0aCBzdWJzY3JpYmUpLCB0aGlzIGVuc3VyZXMgdGhhdFxuICAgICAgICAvLyB0aGUgb3BlcmF0b3JzIGFib3ZlIGNhbiBiZSBzaGFyZWQgYmV0d2VlbiBlYWNoIHN1YnNjcmliZS5cbiAgICAgICAgc2hhcmUoKVxuICAgICk7XG59XG5cbkBEaXJlY3RpdmUoKVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEFic3RyYWN0UGFnZUNvbXBvbmVudDxUIGV4dGVuZHMgSTE4bkZvcm0+XG4gICAgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSwgQWZ0ZXJWaWV3SW5pdFxue1xuICAgIEBWaWV3Q2hpbGQoRm9laG5Gb3JtQ29tcG9uZW50LCB7IHN0YXRpYzogdHJ1ZSB9KVxuICAgIGZvZWhuRm9ybUNvbXBvbmVudDogRm9laG5Gb3JtQ29tcG9uZW50O1xuXG4gICAgZm9ybTogVDtcbiAgICByZWZlcmVuY2U6IHN0cmluZztcblxuICAgIHByb3RlY3RlZCBwYWdlVGl0bGVTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcbiAgICBwcm90ZWN0ZWQgdXBkYXRlRm9ybURhdGFTdWJqZWN0U3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XG4gICAgcHJvdGVjdGVkIGF0dGFjaG1lbnRzU2luZ2xlVXBsb2FkZWRTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcbiAgICBwcm90ZWN0ZWQgYXR0YWNobWVudHNNdWx0aVVwbG9hZGVkU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XG4gICAgcHJvdGVjdGVkIHNhdmVGb3JtUmVxdWVzdFN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuICAgIHByb3RlY3RlZCBfZ2VzZGVtU2VydmljZTogR2VzZGVtSGFuZGxlclNlcnZpY2U7XG4gICAgcHJvdGVjdGVkIF9nZXNkZW1FdmVudFNlcnZpY2U6IEdlc2RlbUV2ZW50U2VydmljZTtcbiAgICBwcm90ZWN0ZWQgX25hdmlnYXRpb246IEZvZWhuTmF2aWdhdGlvblNlcnZpY2U7XG4gICAgcHJvdGVjdGVkIF9hY3RpdmF0ZWRSb3V0ZTogQWN0aXZhdGVkUm91dGU7XG4gICAgcHJvdGVjdGVkIF9ncm93bFNlcnZpY2U6IEdyb3dsQnJva2VyU2VydmljZTtcbiAgICBwcm90ZWN0ZWQgX3ZhbGlkYXRpb25IYW5kbGVyU2VydmljZTogVmFsaWRhdGlvbkhhbmRsZXJTZXJ2aWNlO1xuICAgIHByb3RlY3RlZCBfYnJlYWRjcnVtYkV2ZW50U2VydmljZTogQnJlYWRjcnVtYkV2ZW50U2VydmljZTtcbiAgICBwcm90ZWN0ZWQgX2ZvZWhuUGFnZVNlcnZpY2U6IEZvZWhuUGFnZVNlcnZpY2U7XG4gICAgcHJvdGVjdGVkIF9kaWN0aW9uYXJ5U2VydmljZTogU2RrRGljdGlvbmFyeVNlcnZpY2U7XG4gICAgcHJvdGVjdGVkIF9ldmVudHNMb2dnZXJTZXJ2aWNlOiBTZGtFdmVudHNMb2dnZXJTZXJ2aWNlO1xuXG4gICAgcHJpdmF0ZSBfcGVuZGluZ1VwbG9hZFNlcnZpY2U6IFBlbmRpbmdVcGxvYWRTZXJ2aWNlO1xuICAgIHByaXZhdGUgX2Zvcm1Jbml0U3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XG4gICAgcHJpdmF0ZSBfY3VycmVudExhbmdTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgIHByaXZhdGUgX3RyYW5zbWl0Q29uY3VycmVudFNhZmU6IE9ic2VydmFibGU8YW55PjtcbiAgICBwcml2YXRlIF9nZXNkZW1TYXZlU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XG5cbiAgICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgYWN0aXZhdGVkUm91dGU6IEFjdGl2YXRlZFJvdXRlKSB7XG4gICAgICAgIHRoaXMuX2dlc2RlbVNlcnZpY2UgPSBTZXJ2aWNlTG9jYXRvci5pbmplY3Rvci5nZXQoR2VzZGVtSGFuZGxlclNlcnZpY2UpO1xuICAgICAgICB0aGlzLl9nZXNkZW1FdmVudFNlcnZpY2UgPVxuICAgICAgICAgICAgU2VydmljZUxvY2F0b3IuaW5qZWN0b3IuZ2V0KEdlc2RlbUV2ZW50U2VydmljZSk7XG4gICAgICAgIHRoaXMuX25hdmlnYXRpb24gPSBTZXJ2aWNlTG9jYXRvci5pbmplY3Rvci5nZXQoRm9laG5OYXZpZ2F0aW9uU2VydmljZSk7XG4gICAgICAgIHRoaXMuX2FjdGl2YXRlZFJvdXRlID0gU2VydmljZUxvY2F0b3IuaW5qZWN0b3IuZ2V0KEFjdGl2YXRlZFJvdXRlKTtcbiAgICAgICAgdGhpcy5fZ3Jvd2xTZXJ2aWNlID0gU2VydmljZUxvY2F0b3IuaW5qZWN0b3IuZ2V0KEdyb3dsQnJva2VyU2VydmljZSk7XG4gICAgICAgIHRoaXMuX3ZhbGlkYXRpb25IYW5kbGVyU2VydmljZSA9IFNlcnZpY2VMb2NhdG9yLmluamVjdG9yLmdldChcbiAgICAgICAgICAgIFZhbGlkYXRpb25IYW5kbGVyU2VydmljZVxuICAgICAgICApO1xuICAgICAgICB0aGlzLl9wZW5kaW5nVXBsb2FkU2VydmljZSA9XG4gICAgICAgICAgICBTZXJ2aWNlTG9jYXRvci5pbmplY3Rvci5nZXQoUGVuZGluZ1VwbG9hZFNlcnZpY2UpO1xuICAgICAgICB0aGlzLl9icmVhZGNydW1iRXZlbnRTZXJ2aWNlID0gU2VydmljZUxvY2F0b3IuaW5qZWN0b3IuZ2V0KFxuICAgICAgICAgICAgQnJlYWRjcnVtYkV2ZW50U2VydmljZVxuICAgICAgICApO1xuICAgICAgICB0aGlzLl9mb2VoblBhZ2VTZXJ2aWNlID0gU2VydmljZUxvY2F0b3IuaW5qZWN0b3IuZ2V0KEZvZWhuUGFnZVNlcnZpY2UpO1xuXG4gICAgICAgIHRoaXMuX2RpY3Rpb25hcnlTZXJ2aWNlID1cbiAgICAgICAgICAgIFNlcnZpY2VMb2NhdG9yLmluamVjdG9yLmdldChTZGtEaWN0aW9uYXJ5U2VydmljZSk7XG4gICAgICAgIHRoaXMuX2V2ZW50c0xvZ2dlclNlcnZpY2UgPSBTZXJ2aWNlTG9jYXRvci5pbmplY3Rvci5nZXQoXG4gICAgICAgICAgICBTZGtFdmVudHNMb2dnZXJTZXJ2aWNlXG4gICAgICAgICk7XG5cbiAgICAgICAgY29uc3Qgcm91dGUgPSBGb2Vobk5hdmlnYXRpb25TZXJ2aWNlLmdldFJvb3RSb3V0ZVJlY3Vyc2l2ZShcbiAgICAgICAgICAgIGFjdGl2YXRlZFJvdXRlLnNuYXBzaG90XG4gICAgICAgICk7XG4gICAgICAgIHRoaXMuX25hdmlnYXRpb24uaW5pdFJvdXRlKHJvdXRlKTtcbiAgICAgICAgdGhpcy5fZm9ybUluaXRTdWJzY3JpcHRpb24gPSB0aGlzLl9nZXNkZW1FdmVudFNlcnZpY2VcbiAgICAgICAgICAgIC5mb3JtSW5pdGlhbGl6YXRpb25PYnNlcnZhYmxlKClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMucmVmZXJlbmNlID1cbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fZ2VzZGVtU2VydmljZS5sYXN0UmVzcG9uc2UgJiZcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fZ2VzZGVtU2VydmljZS5sYXN0UmVzcG9uc2UubWV0YS5yZWZlcmVuY2U7XG4gICAgICAgICAgICAgICAgY29uc3Qgc3RhdHV0ID1cbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fZ2VzZGVtU2VydmljZS5sYXN0UmVzcG9uc2UgJiZcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fZ2VzZGVtU2VydmljZS5sYXN0UmVzcG9uc2UubWV0YS5zdGF0dXQ7XG4gICAgICAgICAgICAgICAgY29uc3Qgc2hvdWxkUHJldmVudE5hdmlnYXRpb25Ub0xhc3QgPVxuICAgICAgICAgICAgICAgICAgICBhY3RpdmF0ZWRSb3V0ZS5zbmFwc2hvdC5kYXRhXG4gICAgICAgICAgICAgICAgICAgICAgICAucHJldmVudE5hdmlnYXRpb25Ub0xhc3RPblRyYW5zZmVycmVkID09PSB0cnVlO1xuXG4gICAgICAgICAgICAgICAgY29uc3QgbGFuZ3VhZ2VDb2RlID1cbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fZ2VzZGVtU2VydmljZS5sYXN0UmVzcG9uc2UgJiZcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fZ2VzZGVtU2VydmljZS5sYXN0UmVzcG9uc2UuZm9ybSAmJlxuICAgICAgICAgICAgICAgICAgICB0aGlzLl9nZXNkZW1TZXJ2aWNlLmxhc3RSZXNwb25zZS5mb3JtLmxhbmd1YWdlO1xuXG4gICAgICAgICAgICAgICAgdGhpcy5fZGljdGlvbmFyeVNlcnZpY2UuY2hhbmdlTGFuZ3VhZ2UobGFuZ3VhZ2VDb2RlKTtcblxuICAgICAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICAgICAgIXNob3VsZFByZXZlbnROYXZpZ2F0aW9uVG9MYXN0ICYmXG4gICAgICAgICAgICAgICAgICAgIHRoaXMucmVmZXJlbmNlICYmXG4gICAgICAgICAgICAgICAgICAgIEdlc2RlbVN0YXR1dFV0aWxzLmlzRmluYWwoXG4gICAgICAgICAgICAgICAgICAgICAgICBBY3Rpb25TdGF0dXRbc3RhdHV0IGFzIEFjdGlvblN0YXR1dF1cbiAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLl9uYXZpZ2F0aW9uLmxhc3QoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgICB0aGlzLnJlZmVyZW5jZSAmJlxuICAgICAgICAgICAgICAgICAgICBBY3Rpb25TdGF0dXRbc3RhdHV0IGFzIEFjdGlvblN0YXR1dF0gPT09XG4gICAgICAgICAgICAgICAgICAgICAgICBBY3Rpb25TdGF0dXQuUEVORElOR19QQVlNRU5UXG4gICAgICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX25hdmlnYXRpb24ucmVjYXAoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcblxuICAgICAgICAvLyBQcm90ZWN0cyB0aGUgdHJhbnNtaXQgbWV0aG9kIG9uIHRoZSBHZXNkZW1TZXJ2aWNlIGZyb20gY29uY3VycmVudCBhY2Nlc3MuXG4gICAgICAgIHRoaXMuX3RyYW5zbWl0Q29uY3VycmVudFNhZmUgPSBnZXRDb25jdXJyZW50U2FmZUNhbGwoKCkgPT5cbiAgICAgICAgICAgIHRoaXMuX2dlc2RlbVNlcnZpY2UudHJhbnNtaXQoKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmdvdFRvVG9wKCk7XG4gICAgICAgIHRoaXMuZm9ybSA9IHRoaXMubmV3Rm9ybSgpO1xuICAgICAgICB0aGlzLl9jdXJyZW50TGFuZ1N1YnNjcmlwdGlvbiA9IHRoaXMuX2RpY3Rpb25hcnlTZXJ2aWNlXG4gICAgICAgICAgICAuZ2V0Q3VycmVudExhbmd1YWdlQ29kZSgpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKGxhbmd1YWdlQ29kZSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5mb3JtLmxhbmd1YWdlID0gbGFuZ3VhZ2VDb2RlO1xuICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgdGhpcy5fdmFsaWRhdGlvbkhhbmRsZXJTZXJ2aWNlLnNob3VsZERpc3BsYXlFcnJvcnMoZmFsc2UpO1xuXG4gICAgICAgIHRoaXMudXBkYXRlRm9ybURhdGFTdWJqZWN0U3Vic2NyaXB0aW9uID1cbiAgICAgICAgICAgIHRoaXMuX2dlc2RlbVNlcnZpY2UudXBkYXRlRm9ybURhdGFTdWJqZWN0LnN1YnNjcmliZShmb3JtID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmZvcm0gPSBmb3JtO1xuICAgICAgICAgICAgICAgIHRoaXMuX2dlc2RlbUV2ZW50U2VydmljZS5mb3JtSW5pdGlhbGl6YXRpb25TdWJqZWN0Lm5leHQoZm9ybSk7XG4gICAgICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLmF0dGFjaG1lbnRzTXVsdGlVcGxvYWRlZFN1YnNjcmlwdGlvbiA9XG4gICAgICAgICAgICB0aGlzLl9wZW5kaW5nVXBsb2FkU2VydmljZS5hdHRhY2htZW50c1VwbG9hZGVkLnN1YnNjcmliZShmb3JtID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmZvcm0gPSBmb3JtO1xuICAgICAgICAgICAgICAgIC8vIFBSRVNUQUtJVC0zMDk6IHNldCBiYWNrIHNob3VsZERpc3BsYXlFcnJvcnMgdG8gdHJ1ZSBvbmNlIGZpbGVzIGhhdmUgYmVlbiB1cGxvYWRlZFxuICAgICAgICAgICAgICAgIHRoaXMuX3ZhbGlkYXRpb25IYW5kbGVyU2VydmljZS5zaG91bGREaXNwbGF5RXJyb3JzKHRydWUpO1xuICAgICAgICAgICAgICAgIHRoaXMub25Gb3JtU2VudCh0cnVlKTtcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMuc2F2ZUZvcm1SZXF1ZXN0U3Vic2NyaXB0aW9uID0gdGhpcy5fZm9laG5QYWdlU2VydmljZVxuICAgICAgICAgICAgLnNhdmVGb3JtUmVxdWVzdCgpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKGRpc3BsYXlTdWNjZXNzTWVzc2FnZSA9PlxuICAgICAgICAgICAgICAgIHRoaXMuc2VuZChmYWxzZSwgZGlzcGxheVN1Y2Nlc3NNZXNzYWdlKVxuICAgICAgICAgICAgKTtcbiAgICB9XG5cbiAgICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgICAgIC8vIEBzZWUgaHR0cHM6Ly9naXRodWIuY29tL2FuZ3VsYXIvYW5ndWxhci9pc3N1ZXMvMTc1NzIjaXNzdWVjb21tZW50LTMyMzQ2NTczN1xuICAgICAgICBQcm9taXNlLnJlc29sdmUobnVsbCkudGhlbigoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLl9nZXNkZW1TZXJ2aWNlLnJlcXVpcmUoKS5zdWJzY3JpYmUoKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2N1cnJlbnRMYW5nU3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpO1xuICAgICAgICB0aGlzLnBhZ2VUaXRsZVN1YnNjcmlwdGlvbj8udW5zdWJzY3JpYmUoKTtcbiAgICAgICAgdGhpcy51cGRhdGVGb3JtRGF0YVN1YmplY3RTdWJzY3JpcHRpb24/LnVuc3Vic2NyaWJlKCk7XG4gICAgICAgIHRoaXMuYXR0YWNobWVudHNTaW5nbGVVcGxvYWRlZFN1YnNjcmlwdGlvbj8udW5zdWJzY3JpYmUoKTtcbiAgICAgICAgdGhpcy5hdHRhY2htZW50c011bHRpVXBsb2FkZWRTdWJzY3JpcHRpb24/LnVuc3Vic2NyaWJlKCk7XG4gICAgICAgIHRoaXMuX2Zvcm1Jbml0U3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpO1xuICAgICAgICB0aGlzLnNhdmVGb3JtUmVxdWVzdFN1YnNjcmlwdGlvbj8udW5zdWJzY3JpYmUoKTtcbiAgICB9XG5cbiAgICBzZW5kKFxuICAgICAgICBnb1RvTmV4dFBhZ2U6IGJvb2xlYW4gPSB0cnVlLFxuICAgICAgICBkaXNwbGF5U3VjY2Vzc01lc3NhZ2U6IGJvb2xlYW4gPSB0cnVlXG4gICAgKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLl9wZW5kaW5nVXBsb2FkU2VydmljZS5oYXNQZW5kaW5nRmlsZXMoKSkge1xuICAgICAgICAgICAgZ29Ub05leHRQYWdlID0gZmFsc2U7XG4gICAgICAgICAgICAvLyBQUkVTVEFLSVQtMzA5OiBzaG91bGREaXNwbGF5RXJyb3JzIHdpbGwgYmUgc2V0IGJhY2sgdG8gdHJ1ZSBpbiAnYXR0YWNobWVudHNVcGxvYWRlZCcgc3Vic2NyaXB0aW9uXG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLl92YWxpZGF0aW9uSGFuZGxlclNlcnZpY2Uuc2hvdWxkRGlzcGxheUVycm9ycyh0cnVlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICghdGhpcy5fZ2VzZGVtU2F2ZVN1YnNjcmlwdGlvbikge1xuICAgICAgICAgICAgLy8gUHJvdGVjdHMgdGhlIHNhdmUgbWV0aG9kIG9uIHRoZSBHZXNkZW1TZXJ2aWNlIGZyb20gY29uY3VycmVudCBhY2Nlc3MuXG5cbiAgICAgICAgICAgIGNvbnN0IGNhbkNyZWF0ZURlbWFuZGUgPVxuICAgICAgICAgICAgICAgIHRoaXMuX25hdmlnYXRpb24uaXNGaXJzdEZvcm1QYWdlKCkgJiZcbiAgICAgICAgICAgICAgICAhdGhpcy5fZ2VzZGVtU2VydmljZS5sYXN0UmVzcG9uc2U/Lm1ldGE/LnJlZmVyZW5jZT8ubGVuZ3RoO1xuXG4gICAgICAgICAgICB0aGlzLl9nZXNkZW1TYXZlU3Vic2NyaXB0aW9uID0gdGhpcy5fZ2VzZGVtU2VydmljZVxuICAgICAgICAgICAgICAgIC5zYXZlKHRoaXMuZm9ybSwgY2FuQ3JlYXRlRGVtYW5kZSwgZGlzcGxheVN1Y2Nlc3NNZXNzYWdlKVxuICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLl9nZXNkZW1TYXZlU3Vic2NyaXB0aW9uID0gbnVsbDtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5vbkZvcm1TZW50KGdvVG9OZXh0UGFnZSk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICB0cmFuc21pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fdmFsaWRhdGlvbkhhbmRsZXJTZXJ2aWNlLnNob3VsZERpc3BsYXlFcnJvcnModHJ1ZSk7XG4gICAgICAgIHRoaXMuX3RyYW5zbWl0Q29uY3VycmVudFNhZmVcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIHRhcCgoKSA9PlxuICAgICAgICAgICAgICAgICAgICB0aGlzLl9ldmVudHNMb2dnZXJTZXJ2aWNlLmFkZEV2ZW50KFNka0V2ZW50VHlwZS5UUkFOU01JVClcbiAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgIGNhdGNoRXJyb3IoKGVycm9yOiB1bmtub3duKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoZXJyb3IpO1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gRU1QVFk7XG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgICAgIGlmICghdGhpcy5fZ2VzZGVtU2VydmljZS5sYXN0UmVzcG9uc2UuZXJyb3JzLmxlbmd0aCkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLl9nZXNkZW1FdmVudFNlcnZpY2UuZm9ybVRyYW5zbWl0dGVkU3ViamVjdC5uZXh0KFxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5fZ2VzZGVtU2VydmljZS5sYXN0UmVzcG9uc2VcbiAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fbmF2aWdhdGlvbi5uZXh0KCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgc2VuZEFuZFRyYW5zbWl0KGRpc3BsYXlTdWNjZXNzTWVzc2FnZTogYm9vbGVhbiA9IHRydWUpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fZ2VzZGVtRXZlbnRTZXJ2aWNlXG4gICAgICAgICAgICAuZm9ybVNlbnRPYnNlcnZhYmxlKClcbiAgICAgICAgICAgIC5waXBlKGZpcnN0KCkpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKHJlc3BvbnNlID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoIXJlc3BvbnNlLmVycm9ycy5sZW5ndGggJiYgIXJlc3BvbnNlLm1ldGEuY3JpdGljYWwpIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKCF0aGlzLmNoZWNrSGFzUGVuZGluZ3NGaWxlc0JlZm9yZVRyYW5zbWl0KCkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMudHJhbnNtaXQoKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMuc2VuZChmYWxzZSwgZGlzcGxheVN1Y2Nlc3NNZXNzYWdlKTtcbiAgICB9XG5cbiAgICBwcmV2aW91cygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fbmF2aWdhdGlvbi5wcmV2aW91cygpO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBzZXRQYWdlVGl0bGUocGFnZVRpdGxlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fZm9laG5QYWdlU2VydmljZS5zZXRQYWdlVGl0bGUocGFnZVRpdGxlKTtcbiAgICAgICAgdGhpcy5fYnJlYWRjcnVtYkV2ZW50U2VydmljZS5zZXRDdXJyZW50QnJlYWRjcnVtYih7XG4gICAgICAgICAgICB1cmw6IG51bGwsXG4gICAgICAgICAgICByb3V0ZXJMaW5rOiBudWxsLFxuICAgICAgICAgICAgbGFiZWw6IHBhZ2VUaXRsZVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgc2V0UGFnZVRpdGxlQXN5bmMocGFnZVRpdGxlOiBPYnNlcnZhYmxlPHN0cmluZz4pOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMucGFnZVRpdGxlU3Vic2NyaXB0aW9uKSB7XG4gICAgICAgICAgICB0aGlzLnBhZ2VUaXRsZVN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMucGFnZVRpdGxlU3Vic2NyaXB0aW9uID0gcGFnZVRpdGxlLnN1YnNjcmliZSh0aXRsZSA9PlxuICAgICAgICAgICAgdGhpcy5zZXRQYWdlVGl0bGUodGl0bGUpXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIG9uRm9ybVNlbnQoZ29Ub05leHRQYWdlOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmZvZWhuRm9ybUNvbXBvbmVudCkge1xuICAgICAgICAgICAgLy8gU29tZSBwYWdlcyBkb24ndCBoYXZlIGEgZm9ybS5cbiAgICAgICAgICAgIHRoaXMuZm9laG5Gb3JtQ29tcG9uZW50LnJlc2V0KCk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLl9uYXZpZ2F0aW9uLmN1cnJlbnQoKS50aGVuKCgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGlzVmFsaWQgPVxuICAgICAgICAgICAgICAgIC8vIFNvbWUgcGFnZXMgZG9uJ3QgaGF2ZSBhIGZvcm0uXG4gICAgICAgICAgICAgICAgdGhpcy5mb2VobkZvcm1Db21wb25lbnQgJiZcbiAgICAgICAgICAgICAgICB0aGlzLmZvZWhuRm9ybUNvbXBvbmVudC5pc1ZhbGlkKCkgJiZcbiAgICAgICAgICAgICAgICAhdGhpcy5fZ2VzZGVtU2VydmljZS5sYXN0UmVzcG9uc2UubWV0YS5jcml0aWNhbDtcblxuICAgICAgICAgICAgaWYgKGlzVmFsaWQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLl92YWxpZGF0aW9uSGFuZGxlclNlcnZpY2Uuc2hvdWxkRGlzcGxheUVycm9ycyhmYWxzZSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRoaXMuX2dlc2RlbUV2ZW50U2VydmljZS5mb3JtU2VudFN1YmplY3QubmV4dChcbiAgICAgICAgICAgICAgICB0aGlzLl9nZXNkZW1TZXJ2aWNlLmxhc3RSZXNwb25zZVxuICAgICAgICAgICAgKTtcblxuICAgICAgICAgICAgaWYgKGlzVmFsaWQgJiYgZ29Ub05leHRQYWdlKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5fbmF2aWdhdGlvbi5uZXh0KCk7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKCFpc1ZhbGlkICYmIHRoaXMuZm9laG5Gb3JtQ29tcG9uZW50KSB7XG4gICAgICAgICAgICAgICAgdGhpcy5mb2VobkZvcm1Db21wb25lbnQuZm9jdXNFcnJvclN1bW1hcnkoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSwgY29uc29sZS5lcnJvcik7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjaGVja0hhc1BlbmRpbmdzRmlsZXNCZWZvcmVUcmFuc21pdCgpOiBib29sZWFuIHtcbiAgICAgICAgaWYgKHRoaXMuX3BlbmRpbmdVcGxvYWRTZXJ2aWNlLmhhc1BlbmRpbmdGaWxlcygpKSB7XG4gICAgICAgICAgICBjb25zdCBtdWx0aVVwbG9hZEF0dGFjaG1lbnRTdWJzY3JpcHRpb24gPVxuICAgICAgICAgICAgICAgIHRoaXMuX3BlbmRpbmdVcGxvYWRTZXJ2aWNlLmF0dGFjaG1lbnRzVXBsb2FkZWQuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgbXVsdGlVcGxvYWRBdHRhY2htZW50U3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMudHJhbnNtaXQoKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdvdFRvVG9wKCk6IHZvaWQge1xuICAgICAgICB3aW5kb3cuc2Nyb2xsVG8oMCwgMCk7XG4gICAgfVxuXG4gICAgYWJzdHJhY3QgbmV3Rm9ybSgpOiBUO1xufVxuIl19
|
|
@@ -16,8 +16,8 @@ export class FoehnPageService {
|
|
|
16
16
|
setPageTitle(title) {
|
|
17
17
|
this._foehnPageSubject.next(title);
|
|
18
18
|
}
|
|
19
|
-
requestFormSave() {
|
|
20
|
-
this._saveFormRequestSubject.next();
|
|
19
|
+
requestFormSave(displaySuccessMessage = true) {
|
|
20
|
+
this._saveFormRequestSubject.next(displaySuccessMessage);
|
|
21
21
|
}
|
|
22
22
|
saveFormRequest() {
|
|
23
23
|
return this._saveFormRequestSubject.asObservable();
|
|
@@ -51,4 +51,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
51
51
|
providedIn: 'root'
|
|
52
52
|
}]
|
|
53
53
|
}], ctorParameters: () => [] });
|
|
54
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
54
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9laG4tcGFnZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJlc3RhdGlvbnMtbmcvc3JjL2ZvZWhuLXBhZ2UvZm9laG4tcGFnZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLGVBQWUsRUFBYyxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDNUQsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBR3hDLE9BQU8sRUFBRSxZQUFZLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQzs7QUFLaEYsTUFBTSxPQUFPLGdCQUFnQjtJQVd6QjtRQVZRLHNCQUFpQixHQUFvQixJQUFJLE9BQU8sRUFBVSxDQUFDO1FBRTNELDRCQUF1QixHQUFxQixJQUFJLE9BQU8sRUFBVyxDQUFDO1FBRW5FLG9CQUFlLEdBQW9CLElBQUksZUFBZSxDQUMxRCxJQUFJLENBQ1AsQ0FBQztRQUtFLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ2pFLENBQUM7SUFFRCxtQkFBbUI7UUFDZixPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUNqRCxDQUFDO0lBRUQsWUFBWSxDQUFDLEtBQWE7UUFDdEIsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBRUQsZUFBZSxDQUFDLHdCQUFpQyxJQUFJO1FBQ2pELElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxJQUFJLENBQUMscUJBQXFCLENBQUMsQ0FBQztJQUM3RCxDQUFDO0lBRUQsZUFBZTtRQUNYLE9BQU8sSUFBSSxDQUFDLHVCQUF1QixDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3ZELENBQUM7SUFFRCxpQkFBaUIsQ0FBQyxPQUFlO1FBQzdCLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFFRCxlQUFlO1FBQ1gsT0FBTyxJQUFJLENBQUMsZUFBZTthQUN0QixZQUFZLEVBQUU7YUFDZCxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUM7SUFDaEQsQ0FBQztJQUVELHFCQUFxQixDQUNqQixXQUFvQixFQUNwQixVQUFtQixFQUNuQixxQkFBOEIsRUFDOUIsYUFBc0IsRUFDdEIsb0JBQTZCO0lBQzdCLDhEQUE4RDtJQUM5RCxlQUFzQyxFQUN0QyxxQkFBOEI7UUFFOUIsTUFBTSxhQUFhLEdBQ2YsZUFBZTtZQUNmLGlCQUFpQixDQUFDLE9BQU8sQ0FDckIsWUFBWSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsTUFBc0IsQ0FBQyxDQUM1RCxDQUFDO1FBQ04sT0FBTyxDQUNILHFCQUFxQjtZQUNyQixDQUFDLGFBQWE7WUFDZCxDQUFDLG9CQUFvQjtZQUNyQixxQkFBcUI7WUFDckIsYUFBYTtZQUNiLENBQUMsV0FBVyxJQUFJLFVBQVUsQ0FBQyxDQUM5QixDQUFDO0lBQ04sQ0FBQzsrR0FoRVEsZ0JBQWdCO21IQUFoQixnQkFBZ0IsY0FGYixNQUFNOzs0RkFFVCxnQkFBZ0I7a0JBSDVCLFVBQVU7bUJBQUM7b0JBQ1IsVUFBVSxFQUFFLE1BQU07aUJBQ3JCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBmaWx0ZXIgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IEZvcm1Qb3N0UmVzcG9uc2UgfSBmcm9tICcuLi9mb3JtLXBvc3QtcmVzcG9uc2UnO1xuaW1wb3J0IHsgQWN0aW9uU3RhdHV0LCBHZXNkZW1TdGF0dXRVdGlscyB9IGZyb20gJy4uL2dlc2RlbS9nZXNkZW0tc3RhdHV0LXV0aWxzJztcblxuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBGb2VoblBhZ2VTZXJ2aWNlIHtcbiAgICBwcml2YXRlIF9mb2VoblBhZ2VTdWJqZWN0OiBTdWJqZWN0PHN0cmluZz4gPSBuZXcgU3ViamVjdDxzdHJpbmc+KCk7XG5cbiAgICBwcml2YXRlIF9zYXZlRm9ybVJlcXVlc3RTdWJqZWN0OiBTdWJqZWN0PGJvb2xlYW4+ID0gbmV3IFN1YmplY3Q8Ym9vbGVhbj4oKTtcblxuICAgIHByaXZhdGUgX2N1cnJlbnRFdGFwZUlkOiBTdWJqZWN0PHN0cmluZz4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHN0cmluZz4oXG4gICAgICAgIG51bGxcbiAgICApO1xuXG4gICAgcHJpdmF0ZSBjdXJyZW50RXRhcGVJZE9iczogT2JzZXJ2YWJsZTxzdHJpbmc+O1xuXG4gICAgY29uc3RydWN0b3IoKSB7XG4gICAgICAgIHRoaXMuY3VycmVudEV0YXBlSWRPYnMgPSB0aGlzLl9jdXJyZW50RXRhcGVJZC5hc09ic2VydmFibGUoKTtcbiAgICB9XG5cbiAgICBmb2VoblBhZ2VPYnNlcnZhYmxlKCk6IE9ic2VydmFibGU8c3RyaW5nPiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9mb2VoblBhZ2VTdWJqZWN0LmFzT2JzZXJ2YWJsZSgpO1xuICAgIH1cblxuICAgIHNldFBhZ2VUaXRsZSh0aXRsZTogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2ZvZWhuUGFnZVN1YmplY3QubmV4dCh0aXRsZSk7XG4gICAgfVxuXG4gICAgcmVxdWVzdEZvcm1TYXZlKGRpc3BsYXlTdWNjZXNzTWVzc2FnZTogYm9vbGVhbiA9IHRydWUpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fc2F2ZUZvcm1SZXF1ZXN0U3ViamVjdC5uZXh0KGRpc3BsYXlTdWNjZXNzTWVzc2FnZSk7XG4gICAgfVxuXG4gICAgc2F2ZUZvcm1SZXF1ZXN0KCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fc2F2ZUZvcm1SZXF1ZXN0U3ViamVjdC5hc09ic2VydmFibGUoKTtcbiAgICB9XG5cbiAgICBzZXRDdXJyZW50RXRhcGVJZChldGFwZUlkOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fY3VycmVudEV0YXBlSWQubmV4dChldGFwZUlkKTtcbiAgICB9XG5cbiAgICBvbkV0YXBlSWRDaGFuZ2UoKTogT2JzZXJ2YWJsZTxzdHJpbmc+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2N1cnJlbnRFdGFwZUlkXG4gICAgICAgICAgICAuYXNPYnNlcnZhYmxlKClcbiAgICAgICAgICAgIC5waXBlKGZpbHRlcihldGFwZUluZm8gPT4gISFldGFwZUluZm8pKTtcbiAgICB9XG5cbiAgICBpc1VzZXJDYXRlZ29yeVZpc2libGUoXG4gICAgICAgIGlzRmlyc3RQYWdlOiBib29sZWFuLFxuICAgICAgICBpc0xhc3RQYWdlOiBib29sZWFuLFxuICAgICAgICBpc1VzZXJDYXRlZ29yeUVuYWJsZWQ6IGJvb2xlYW4sXG4gICAgICAgIGlzSW5pdGlhbFN0ZXA6IGJvb2xlYW4sXG4gICAgICAgIGlzVXNlck5ldmVyQ29ubmVjdGVkOiBib29sZWFuLFxuICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgICAgICBiYWNrZW5kUmVzcG9uc2U6IEZvcm1Qb3N0UmVzcG9uc2U8YW55PixcbiAgICAgICAgaXNDdXJyZW50Um91dGVEZWZpbmVkOiBib29sZWFuXG4gICAgKTogYm9vbGVhbiB7XG4gICAgICAgIGNvbnN0IGlzU3RhdHVzRmluYWwgPVxuICAgICAgICAgICAgYmFja2VuZFJlc3BvbnNlICYmXG4gICAgICAgICAgICBHZXNkZW1TdGF0dXRVdGlscy5pc0ZpbmFsKFxuICAgICAgICAgICAgICAgIEFjdGlvblN0YXR1dFtiYWNrZW5kUmVzcG9uc2UubWV0YS5zdGF0dXQgYXMgQWN0aW9uU3RhdHV0XVxuICAgICAgICAgICAgKTtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgIGlzQ3VycmVudFJvdXRlRGVmaW5lZCAmJlxuICAgICAgICAgICAgIWlzU3RhdHVzRmluYWwgJiZcbiAgICAgICAgICAgICFpc1VzZXJOZXZlckNvbm5lY3RlZCAmJlxuICAgICAgICAgICAgaXNVc2VyQ2F0ZWdvcnlFbmFibGVkICYmXG4gICAgICAgICAgICBpc0luaXRpYWxTdGVwICYmXG4gICAgICAgICAgICAoaXNGaXJzdFBhZ2UgfHwgaXNMYXN0UGFnZSlcbiAgICAgICAgKTtcbiAgICB9XG59XG4iXX0=
|
|
@@ -139,8 +139,8 @@ class FoehnPageService {
|
|
|
139
139
|
setPageTitle(title) {
|
|
140
140
|
this._foehnPageSubject.next(title);
|
|
141
141
|
}
|
|
142
|
-
requestFormSave() {
|
|
143
|
-
this._saveFormRequestSubject.next();
|
|
142
|
+
requestFormSave(displaySuccessMessage = true) {
|
|
143
|
+
this._saveFormRequestSubject.next(displaySuccessMessage);
|
|
144
144
|
}
|
|
145
145
|
saveFormRequest() {
|
|
146
146
|
return this._saveFormRequestSubject.asObservable();
|
|
@@ -3332,14 +3332,8 @@ class AbstractPageComponent {
|
|
|
3332
3332
|
this._navigation.recap();
|
|
3333
3333
|
}
|
|
3334
3334
|
});
|
|
3335
|
-
// Protects the save method on the GesdemService from concurrent access.
|
|
3336
|
-
this.sendForFormConcurrentSafe = getConcurrentSafeCall(() => {
|
|
3337
|
-
const canCreateDemande = this._navigation.isFirstFormPage() &&
|
|
3338
|
-
!this._gesdemService.lastResponse?.meta?.reference?.length;
|
|
3339
|
-
return this._gesdemService.save(this.form, canCreateDemande);
|
|
3340
|
-
});
|
|
3341
3335
|
// Protects the transmit method on the GesdemService from concurrent access.
|
|
3342
|
-
this.
|
|
3336
|
+
this._transmitConcurrentSafe = getConcurrentSafeCall(() => this._gesdemService.transmit());
|
|
3343
3337
|
}
|
|
3344
3338
|
ngOnInit() {
|
|
3345
3339
|
this.gotToTop();
|
|
@@ -3364,7 +3358,7 @@ class AbstractPageComponent {
|
|
|
3364
3358
|
});
|
|
3365
3359
|
this.saveFormRequestSubscription = this._foehnPageService
|
|
3366
3360
|
.saveFormRequest()
|
|
3367
|
-
.subscribe(
|
|
3361
|
+
.subscribe(displaySuccessMessage => this.send(false, displaySuccessMessage));
|
|
3368
3362
|
}
|
|
3369
3363
|
ngAfterViewInit() {
|
|
3370
3364
|
// @see https://github.com/angular/angular/issues/17572#issuecomment-323465737
|
|
@@ -3381,7 +3375,7 @@ class AbstractPageComponent {
|
|
|
3381
3375
|
this._formInitSubscription?.unsubscribe();
|
|
3382
3376
|
this.saveFormRequestSubscription?.unsubscribe();
|
|
3383
3377
|
}
|
|
3384
|
-
send(goToNextPage = true) {
|
|
3378
|
+
send(goToNextPage = true, displaySuccessMessage = true) {
|
|
3385
3379
|
if (this._pendingUploadService.hasPendingFiles()) {
|
|
3386
3380
|
goToNextPage = false;
|
|
3387
3381
|
// PRESTAKIT-309: shouldDisplayErrors will be set back to true in 'attachmentsUploaded' subscription
|
|
@@ -3389,11 +3383,21 @@ class AbstractPageComponent {
|
|
|
3389
3383
|
else {
|
|
3390
3384
|
this._validationHandlerService.shouldDisplayErrors(true);
|
|
3391
3385
|
}
|
|
3392
|
-
this.
|
|
3386
|
+
if (!this._gesdemSaveSubscription) {
|
|
3387
|
+
// Protects the save method on the GesdemService from concurrent access.
|
|
3388
|
+
const canCreateDemande = this._navigation.isFirstFormPage() &&
|
|
3389
|
+
!this._gesdemService.lastResponse?.meta?.reference?.length;
|
|
3390
|
+
this._gesdemSaveSubscription = this._gesdemService
|
|
3391
|
+
.save(this.form, canCreateDemande, displaySuccessMessage)
|
|
3392
|
+
.subscribe(() => {
|
|
3393
|
+
this._gesdemSaveSubscription = null;
|
|
3394
|
+
this.onFormSent(goToNextPage);
|
|
3395
|
+
});
|
|
3396
|
+
}
|
|
3393
3397
|
}
|
|
3394
3398
|
transmit() {
|
|
3395
3399
|
this._validationHandlerService.shouldDisplayErrors(true);
|
|
3396
|
-
this.
|
|
3400
|
+
this._transmitConcurrentSafe
|
|
3397
3401
|
.pipe(tap(() => this._eventsLoggerService.addEvent(SdkEventType.TRANSMIT)), catchError((error) => {
|
|
3398
3402
|
console.error(error);
|
|
3399
3403
|
return EMPTY;
|
|
@@ -3405,7 +3409,7 @@ class AbstractPageComponent {
|
|
|
3405
3409
|
}
|
|
3406
3410
|
});
|
|
3407
3411
|
}
|
|
3408
|
-
sendAndTransmit() {
|
|
3412
|
+
sendAndTransmit(displaySuccessMessage = true) {
|
|
3409
3413
|
this._gesdemEventService
|
|
3410
3414
|
.formSentObservable()
|
|
3411
3415
|
.pipe(first())
|
|
@@ -3416,7 +3420,7 @@ class AbstractPageComponent {
|
|
|
3416
3420
|
}
|
|
3417
3421
|
}
|
|
3418
3422
|
});
|
|
3419
|
-
this.send(false);
|
|
3423
|
+
this.send(false, displaySuccessMessage);
|
|
3420
3424
|
}
|
|
3421
3425
|
previous() {
|
|
3422
3426
|
this._navigation.previous();
|