@dsivd/prestations-ng 17.8.0-beta.1 → 17.8.0-beta.2
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/UPGRADING_V17.md +7 -0
- package/dsivd-prestations-ng-17.8.0-beta.2.tgz +0 -0
- package/esm2022/gesdem/gesdem-error-handler.service.mjs +12 -9
- package/esm2022/gesdem/gesdem-handler.service.mjs +14 -12
- package/esm2022/gesdem/gesdem-loader.guard.mjs +2 -2
- package/esm2022/gesdem-action-recovery/gesdem-action-recovery-login/gesdem-action-recovery-login.component.mjs +8 -6
- package/esm2022/gesdem-action-recovery/gesdem-action-recovery-registration/gesdem-action-recovery-registration.component.mjs +2 -2
- package/fesm2022/dsivd-prestations-ng.mjs +33 -26
- package/fesm2022/dsivd-prestations-ng.mjs.map +1 -1
- package/gesdem/gesdem-error-handler.service.d.ts +1 -1
- package/gesdem/gesdem-handler.service.d.ts +3 -2
- package/gesdem-action-recovery/gesdem-action-recovery-login/gesdem-action-recovery-login.component.d.ts +3 -2
- package/package.json +1 -1
- package/dsivd-prestations-ng-17.8.0-beta.1.tgz +0 -0
package/UPGRADING_V17.md
CHANGED
|
@@ -627,3 +627,10 @@ You should set the parameter "Effacer les draft data" to `Oui` in catprest (chec
|
|
|
627
627
|
### Use @StringLength (since 17.6.1)
|
|
628
628
|
|
|
629
629
|
- to validate a String you should now use `ch.vd.cyber.prestationsbe.validation.StringLength`
|
|
630
|
+
|
|
631
|
+
### Use catprest-configurable email-sender (since 17.7.0)
|
|
632
|
+
|
|
633
|
+
- Instead of making your application send emails from `mail.from` property, get the sender from gesdem :
|
|
634
|
+
gesDemService.getEmailSender(applicationKey)
|
|
635
|
+
- Even better (since 17.8.0), if you send a standard confirmation email, just use emailSdkService.
|
|
636
|
+
sendCyberConfirmationEmail() or sendConfirmationEmail() instead of a local EmailNotificationService
|
|
Binary file
|
|
@@ -15,12 +15,15 @@ export class GesdemErrorHandlerService {
|
|
|
15
15
|
this.router = router;
|
|
16
16
|
this.iamExpiredInterceptorService = iamExpiredInterceptorService;
|
|
17
17
|
}
|
|
18
|
-
handleGesdemError(prefix, reference,
|
|
18
|
+
handleGesdemError(prefix, reference, reCaptchaByPassUUID,
|
|
19
19
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
20
20
|
response) {
|
|
21
21
|
const isPdfGenerationError = response.status === 500 &&
|
|
22
22
|
response.error &&
|
|
23
23
|
response.error.code === 'PDF_GENERATION_ERROR';
|
|
24
|
+
if (isPdfGenerationError) {
|
|
25
|
+
return this.onPdfGenerationError(response.error.message);
|
|
26
|
+
}
|
|
24
27
|
const isSessionExpired = response.status === 401 &&
|
|
25
28
|
response.error &&
|
|
26
29
|
response.error.code === 'Unauthorized';
|
|
@@ -29,9 +32,6 @@ export class GesdemErrorHandlerService {
|
|
|
29
32
|
: response.error
|
|
30
33
|
? response.error.code
|
|
31
34
|
: null;
|
|
32
|
-
if (isPdfGenerationError) {
|
|
33
|
-
return this.onPdfGenerationError(response.error.message);
|
|
34
|
-
}
|
|
35
35
|
return this.iamExpiredInterceptorService.isIamSessionExpired.pipe(switchMap(isIamSessionExpired => {
|
|
36
36
|
if (isIamSessionExpired) {
|
|
37
37
|
// iamExpiredInterceptorService will display the modal (RedirectComponent)
|
|
@@ -39,7 +39,7 @@ export class GesdemErrorHandlerService {
|
|
|
39
39
|
return throwError(() => true);
|
|
40
40
|
}
|
|
41
41
|
else {
|
|
42
|
-
return this.onOtherError(prefix, reference, errorCode);
|
|
42
|
+
return this.onOtherError(prefix, reference, errorCode, reCaptchaByPassUUID);
|
|
43
43
|
}
|
|
44
44
|
}));
|
|
45
45
|
}
|
|
@@ -50,7 +50,7 @@ export class GesdemErrorHandlerService {
|
|
|
50
50
|
this.growlService.addWithType(GrowlType.DANGER, message);
|
|
51
51
|
return throwError(() => true);
|
|
52
52
|
}
|
|
53
|
-
onOtherError(prefix, reference, errorCode) {
|
|
53
|
+
onOtherError(prefix, reference, errorCode, reCaptchaByPassUUID) {
|
|
54
54
|
// redirect to error page while preserving reference in URL
|
|
55
55
|
const commands = [];
|
|
56
56
|
if (prefix) {
|
|
@@ -60,9 +60,12 @@ export class GesdemErrorHandlerService {
|
|
|
60
60
|
commands.push(reference);
|
|
61
61
|
}
|
|
62
62
|
commands.push('erreur');
|
|
63
|
-
|
|
63
|
+
const params = {};
|
|
64
64
|
if (errorCode) {
|
|
65
|
-
params =
|
|
65
|
+
params.errorCode = errorCode;
|
|
66
|
+
}
|
|
67
|
+
if (!!reCaptchaByPassUUID) {
|
|
68
|
+
params.reCaptchaByPassUUID = reCaptchaByPassUUID;
|
|
66
69
|
}
|
|
67
70
|
this.router.navigate(commands, {
|
|
68
71
|
replaceUrl: true,
|
|
@@ -79,4 +82,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
79
82
|
providedIn: 'root'
|
|
80
83
|
}]
|
|
81
84
|
}], ctorParameters: () => [{ type: i1.GrowlBrokerService }, { type: i2.Router }, { type: i3.IamExpiredInterceptorService }] });
|
|
82
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
85
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VzZGVtLWVycm9yLWhhbmRsZXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3ByZXN0YXRpb25zLW5nL3NyYy9nZXNkZW0vZ2VzZGVtLWVycm9yLWhhbmRsZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sRUFBYyxTQUFTLEVBQUUsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBR3pELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7Ozs7QUFHdkQsTUFBTSxDQUFDLE1BQU0sZUFBZSxHQUFHLGlCQUFpQixDQUFDO0FBQ2pELE1BQU0sQ0FBQyxNQUFNLG9CQUFvQixHQUFHLHNCQUFzQixDQUFDO0FBQzNELE1BQU0sQ0FBQyxNQUFNLHFCQUFxQixHQUFHLHVCQUF1QixDQUFDO0FBQzdELE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLG1CQUFtQixDQUFDO0FBS3JELE1BQU0sT0FBTyx5QkFBeUI7SUFDbEMsWUFDWSxZQUFnQyxFQUNoQyxNQUFjLEVBQ2QsNEJBQTBEO1FBRjFELGlCQUFZLEdBQVosWUFBWSxDQUFvQjtRQUNoQyxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2QsaUNBQTRCLEdBQTVCLDRCQUE0QixDQUE4QjtJQUNuRSxDQUFDO0lBRUosaUJBQWlCLENBQ2IsTUFBYyxFQUNkLFNBQWlCLEVBQ2pCLG1CQUEyQjtJQUMzQiw4REFBOEQ7SUFDOUQsUUFBaUM7UUFFakMsTUFBTSxvQkFBb0IsR0FDdEIsUUFBUSxDQUFDLE1BQU0sS0FBSyxHQUFHO1lBQ3ZCLFFBQVEsQ0FBQyxLQUFLO1lBQ2QsUUFBUSxDQUFDLEtBQUssQ0FBQyxJQUFJLEtBQUssc0JBQXNCLENBQUM7UUFFbkQsSUFBSSxvQkFBb0IsRUFBRSxDQUFDO1lBQ3ZCLE9BQU8sSUFBSSxDQUFDLG9CQUFvQixDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDN0QsQ0FBQztRQUVELE1BQU0sZ0JBQWdCLEdBQ2xCLFFBQVEsQ0FBQyxNQUFNLEtBQUssR0FBRztZQUN2QixRQUFRLENBQUMsS0FBSztZQUNkLFFBQVEsQ0FBQyxLQUFLLENBQUMsSUFBSSxLQUFLLGNBQWMsQ0FBQztRQUUzQyxNQUFNLFNBQVMsR0FBRyxnQkFBZ0I7WUFDOUIsQ0FBQyxDQUFDLGVBQWU7WUFDakIsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxLQUFLO2dCQUNkLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLElBQUk7Z0JBQ3JCLENBQUMsQ0FBQyxJQUFJLENBQUM7UUFFYixPQUFPLElBQUksQ0FBQyw0QkFBNEIsQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQzdELFNBQVMsQ0FBQyxtQkFBbUIsQ0FBQyxFQUFFO1lBQzVCLElBQUksbUJBQW1CLEVBQUUsQ0FBQztnQkFDdEIsMEVBQTBFO2dCQUMxRSx3REFBd0Q7Z0JBQ3hELE9BQU8sVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ2xDLENBQUM7aUJBQU0sQ0FBQztnQkFDSixPQUFPLElBQUksQ0FBQyxZQUFZLENBQ3BCLE1BQU0sRUFDTixTQUFTLEVBQ1QsU0FBUyxFQUNULG1CQUFtQixDQUN0QixDQUFDO1lBQ04sQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUNMLENBQUM7SUFDTixDQUFDO0lBRUQsVUFBVSxDQUFDLEdBQVc7UUFDbEIsTUFBTSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQUVPLG9CQUFvQixDQUFDLE9BQWU7UUFDeEMsSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLE1BQU0sRUFBRSxPQUFPLENBQUMsQ0FBQztRQUN6RCxPQUFPLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBRU8sWUFBWSxDQUNoQixNQUFjLEVBQ2QsU0FBaUIsRUFDakIsU0FBaUIsRUFDakIsbUJBQTJCO1FBRTNCLDJEQUEyRDtRQUMzRCxNQUFNLFFBQVEsR0FBYSxFQUFFLENBQUM7UUFDOUIsSUFBSSxNQUFNLEVBQUUsQ0FBQztZQUNULFFBQVEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDMUIsQ0FBQztRQUNELElBQUksU0FBUyxFQUFFLENBQUM7WUFDWixRQUFRLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzdCLENBQUM7UUFDRCxRQUFRLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRXhCLE1BQU0sTUFBTSxHQUFXLEVBQUUsQ0FBQztRQUMxQixJQUFJLFNBQVMsRUFBRSxDQUFDO1lBQ1osTUFBTSxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUM7UUFDakMsQ0FBQztRQUNELElBQUksQ0FBQyxDQUFDLG1CQUFtQixFQUFFLENBQUM7WUFDeEIsTUFBTSxDQUFDLG1CQUFtQixHQUFHLG1CQUFtQixDQUFDO1FBQ3JELENBQUM7UUFFRCxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUU7WUFDM0IsVUFBVSxFQUFFLElBQUk7WUFDaEIsV0FBVyxFQUFFLE1BQU07U0FDdEIsQ0FBQyxDQUFDO1FBRUgsT0FBTyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDbEMsQ0FBQzsrR0EzRlEseUJBQXlCO21IQUF6Qix5QkFBeUIsY0FGdEIsTUFBTTs7NEZBRVQseUJBQXlCO2tCQUhyQyxVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBFcnJvclJlc3BvbnNlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUGFyYW1zLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgc3dpdGNoTWFwLCB0aHJvd0Vycm9yIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IEdyb3dsQnJva2VyU2VydmljZSB9IGZyb20gJy4uL2ZvZWhuLWdyb3dsL2dyb3dsLWJyb2tlci5zZXJ2aWNlJztcbmltcG9ydCB7IEdyb3dsVHlwZSB9IGZyb20gJy4uL2ZvZWhuLWdyb3dsL2dyb3dsLXR5cGVzJztcbmltcG9ydCB7IElhbUV4cGlyZWRJbnRlcmNlcHRvclNlcnZpY2UgfSBmcm9tICcuLi9zZGstcmVkaXJlY3QvaWFtLWV4cGlyZWQtaW50ZXJjZXB0b3Iuc2VydmljZSc7XG5cbmV4cG9ydCBjb25zdCBTRVNTSU9OX0VYUElSRUQgPSAnU0VTU0lPTl9FWFBJUkVEJztcbmV4cG9ydCBjb25zdCBERU1BTkRFX1NIT1VMRF9FWElTVCA9ICdERU1BTkRFX1NIT1VMRF9FWElTVCc7XG5leHBvcnQgY29uc3QgV1JPTkdfRVRBUEVfUkVRVUVTVEVEID0gJ1dST05HX0VUQVBFX1JFUVVFU1RFRCc7XG5leHBvcnQgY29uc3QgREVNQU5ERV9OT1RfRk9VTkQgPSAnREVNQU5ERV9OT1RfRk9VTkQnO1xuXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIEdlc2RlbUVycm9ySGFuZGxlclNlcnZpY2Uge1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIGdyb3dsU2VydmljZTogR3Jvd2xCcm9rZXJTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyLFxuICAgICAgICBwcml2YXRlIGlhbUV4cGlyZWRJbnRlcmNlcHRvclNlcnZpY2U6IElhbUV4cGlyZWRJbnRlcmNlcHRvclNlcnZpY2VcbiAgICApIHt9XG5cbiAgICBoYW5kbGVHZXNkZW1FcnJvcihcbiAgICAgICAgcHJlZml4OiBzdHJpbmcsXG4gICAgICAgIHJlZmVyZW5jZTogc3RyaW5nLFxuICAgICAgICByZUNhcHRjaGFCeVBhc3NVVUlEOiBzdHJpbmcsXG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgICAgIHJlc3BvbnNlOiBIdHRwRXJyb3JSZXNwb25zZSB8IGFueVxuICAgICk6IE9ic2VydmFibGU8bmV2ZXI+IHtcbiAgICAgICAgY29uc3QgaXNQZGZHZW5lcmF0aW9uRXJyb3IgPVxuICAgICAgICAgICAgcmVzcG9uc2Uuc3RhdHVzID09PSA1MDAgJiZcbiAgICAgICAgICAgIHJlc3BvbnNlLmVycm9yICYmXG4gICAgICAgICAgICByZXNwb25zZS5lcnJvci5jb2RlID09PSAnUERGX0dFTkVSQVRJT05fRVJST1InO1xuXG4gICAgICAgIGlmIChpc1BkZkdlbmVyYXRpb25FcnJvcikge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMub25QZGZHZW5lcmF0aW9uRXJyb3IocmVzcG9uc2UuZXJyb3IubWVzc2FnZSk7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBpc1Nlc3Npb25FeHBpcmVkID1cbiAgICAgICAgICAgIHJlc3BvbnNlLnN0YXR1cyA9PT0gNDAxICYmXG4gICAgICAgICAgICByZXNwb25zZS5lcnJvciAmJlxuICAgICAgICAgICAgcmVzcG9uc2UuZXJyb3IuY29kZSA9PT0gJ1VuYXV0aG9yaXplZCc7XG5cbiAgICAgICAgY29uc3QgZXJyb3JDb2RlID0gaXNTZXNzaW9uRXhwaXJlZFxuICAgICAgICAgICAgPyBTRVNTSU9OX0VYUElSRURcbiAgICAgICAgICAgIDogcmVzcG9uc2UuZXJyb3JcbiAgICAgICAgICAgICAgPyByZXNwb25zZS5lcnJvci5jb2RlXG4gICAgICAgICAgICAgIDogbnVsbDtcblxuICAgICAgICByZXR1cm4gdGhpcy5pYW1FeHBpcmVkSW50ZXJjZXB0b3JTZXJ2aWNlLmlzSWFtU2Vzc2lvbkV4cGlyZWQucGlwZShcbiAgICAgICAgICAgIHN3aXRjaE1hcChpc0lhbVNlc3Npb25FeHBpcmVkID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoaXNJYW1TZXNzaW9uRXhwaXJlZCkge1xuICAgICAgICAgICAgICAgICAgICAvLyBpYW1FeHBpcmVkSW50ZXJjZXB0b3JTZXJ2aWNlIHdpbGwgZGlzcGxheSB0aGUgbW9kYWwgKFJlZGlyZWN0Q29tcG9uZW50KVxuICAgICAgICAgICAgICAgICAgICAvLyBoZXJlIHdlIGp1c3QgYXZvaWQgYmVpbmcgcmVkaXJlY3RlZCB0byB0aGUgZXJyb3IgcGFnZVxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhyb3dFcnJvcigoKSA9PiB0cnVlKTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5vbk90aGVyRXJyb3IoXG4gICAgICAgICAgICAgICAgICAgICAgICBwcmVmaXgsXG4gICAgICAgICAgICAgICAgICAgICAgICByZWZlcmVuY2UsXG4gICAgICAgICAgICAgICAgICAgICAgICBlcnJvckNvZGUsXG4gICAgICAgICAgICAgICAgICAgICAgICByZUNhcHRjaGFCeVBhc3NVVUlEXG4gICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSlcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBuYXZpZ2F0ZVRvKHVybDogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIHdpbmRvdy5sb2NhdGlvbi5hc3NpZ24odXJsKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIG9uUGRmR2VuZXJhdGlvbkVycm9yKG1lc3NhZ2U6IHN0cmluZyk6IE9ic2VydmFibGU8bmV2ZXI+IHtcbiAgICAgICAgdGhpcy5ncm93bFNlcnZpY2UuYWRkV2l0aFR5cGUoR3Jvd2xUeXBlLkRBTkdFUiwgbWVzc2FnZSk7XG4gICAgICAgIHJldHVybiB0aHJvd0Vycm9yKCgpID0+IHRydWUpO1xuICAgIH1cblxuICAgIHByaXZhdGUgb25PdGhlckVycm9yKFxuICAgICAgICBwcmVmaXg6IHN0cmluZyxcbiAgICAgICAgcmVmZXJlbmNlOiBzdHJpbmcsXG4gICAgICAgIGVycm9yQ29kZTogc3RyaW5nLFxuICAgICAgICByZUNhcHRjaGFCeVBhc3NVVUlEOiBzdHJpbmdcbiAgICApOiBPYnNlcnZhYmxlPG5ldmVyPiB7XG4gICAgICAgIC8vIHJlZGlyZWN0IHRvIGVycm9yIHBhZ2Ugd2hpbGUgcHJlc2VydmluZyByZWZlcmVuY2UgaW4gVVJMXG4gICAgICAgIGNvbnN0IGNvbW1hbmRzOiBzdHJpbmdbXSA9IFtdO1xuICAgICAgICBpZiAocHJlZml4KSB7XG4gICAgICAgICAgICBjb21tYW5kcy5wdXNoKHByZWZpeCk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHJlZmVyZW5jZSkge1xuICAgICAgICAgICAgY29tbWFuZHMucHVzaChyZWZlcmVuY2UpO1xuICAgICAgICB9XG4gICAgICAgIGNvbW1hbmRzLnB1c2goJ2VycmV1cicpO1xuXG4gICAgICAgIGNvbnN0IHBhcmFtczogUGFyYW1zID0ge307XG4gICAgICAgIGlmIChlcnJvckNvZGUpIHtcbiAgICAgICAgICAgIHBhcmFtcy5lcnJvckNvZGUgPSBlcnJvckNvZGU7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKCEhcmVDYXB0Y2hhQnlQYXNzVVVJRCkge1xuICAgICAgICAgICAgcGFyYW1zLnJlQ2FwdGNoYUJ5UGFzc1VVSUQgPSByZUNhcHRjaGFCeVBhc3NVVUlEO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoY29tbWFuZHMsIHtcbiAgICAgICAgICAgIHJlcGxhY2VVcmw6IHRydWUsXG4gICAgICAgICAgICBxdWVyeVBhcmFtczogcGFyYW1zXG4gICAgICAgIH0pO1xuXG4gICAgICAgIHJldHVybiB0aHJvd0Vycm9yKCgpID0+IHRydWUpO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -73,11 +73,12 @@ export class GesdemHandlerService {
|
|
|
73
73
|
/**
|
|
74
74
|
*
|
|
75
75
|
* @param reference de la demande
|
|
76
|
+
* @param reCaptchaByPassUUID
|
|
76
77
|
* @param forceRefreshIfNew allows to force the cleaning if reference is null
|
|
77
78
|
* @param byPassEmitResponse boolean used to emit or not gesdem last response (default is false)
|
|
78
79
|
* @returns Observable
|
|
79
80
|
*/
|
|
80
|
-
require(reference, forceRefreshIfNew, byPassEmitResponse
|
|
81
|
+
require(reference, reCaptchaByPassUUID, forceRefreshIfNew, byPassEmitResponse
|
|
81
82
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
82
83
|
) {
|
|
83
84
|
const isNewReference = !!reference &&
|
|
@@ -89,7 +90,7 @@ export class GesdemHandlerService {
|
|
|
89
90
|
this._lastResponse = null;
|
|
90
91
|
}
|
|
91
92
|
if (reference && !this._lastResponse) {
|
|
92
|
-
return this.retrieve(reference);
|
|
93
|
+
return this.retrieve(reference, reCaptchaByPassUUID);
|
|
93
94
|
}
|
|
94
95
|
if (this._lastResponse && !byPassEmitResponse) {
|
|
95
96
|
this.emitResponse(this._lastResponse);
|
|
@@ -105,11 +106,11 @@ export class GesdemHandlerService {
|
|
|
105
106
|
if (this._lastResponse) {
|
|
106
107
|
url += `?reference=${this._lastResponse.meta.reference}`;
|
|
107
108
|
}
|
|
108
|
-
return this.http.post(url, null).pipe(tap(this.emitResponse.bind(this)), map(() => true), catchError((response) => this.handleGesdemError(null, response)));
|
|
109
|
+
return this.http.post(url, null).pipe(tap(this.emitResponse.bind(this)), map(() => true), catchError((response) => this.handleGesdemError(null, null, response)));
|
|
109
110
|
}
|
|
110
111
|
retrieve(
|
|
111
112
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
112
|
-
reference, shouldDispatchErrors = true
|
|
113
|
+
reference, reCaptchaByPassUUID, shouldDispatchErrors = true
|
|
113
114
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
114
115
|
) {
|
|
115
116
|
let url = 'api';
|
|
@@ -119,7 +120,7 @@ export class GesdemHandlerService {
|
|
|
119
120
|
url = `${url}/validated/${reference}`;
|
|
120
121
|
return this.http.get(url).pipe(
|
|
121
122
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
122
|
-
tap((resp) => this.emitResponse(resp, shouldDispatchErrors)), map(() => true), catchError((response) => this.handleGesdemError(reference, response)));
|
|
123
|
+
tap((resp) => this.emitResponse(resp, shouldDispatchErrors)), map(() => true), catchError((response) => this.handleGesdemError(reference, reCaptchaByPassUUID, response)));
|
|
123
124
|
}
|
|
124
125
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
125
126
|
retrieveActionStatut(reference) {
|
|
@@ -128,7 +129,7 @@ export class GesdemHandlerService {
|
|
|
128
129
|
url = `api/${this.prefix}`;
|
|
129
130
|
}
|
|
130
131
|
url = `${url}/${reference}/action-statut`;
|
|
131
|
-
return this.http.get(url).pipe(map(status => status), catchError((response) => this.handleGesdemError(reference, response)));
|
|
132
|
+
return this.http.get(url).pipe(map(status => status), catchError((response) => this.handleGesdemError(reference, null, response)));
|
|
132
133
|
}
|
|
133
134
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
134
135
|
validate(form) {
|
|
@@ -143,9 +144,10 @@ export class GesdemHandlerService {
|
|
|
143
144
|
form, url, displaySuccessMessage
|
|
144
145
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
145
146
|
) {
|
|
147
|
+
const reCaptchaByPassUUID = this.route.snapshot.queryParams.reCaptchaByPassUUID;
|
|
146
148
|
let params = new HttpParams();
|
|
147
|
-
if (!!
|
|
148
|
-
params = params.set('reCaptchaByPassUUID',
|
|
149
|
+
if (!!reCaptchaByPassUUID) {
|
|
150
|
+
params = params.set('reCaptchaByPassUUID', reCaptchaByPassUUID);
|
|
149
151
|
}
|
|
150
152
|
if (!!this._lastResponse?.meta?.reference) {
|
|
151
153
|
params = params.set('reference', this._lastResponse.meta.reference);
|
|
@@ -153,7 +155,7 @@ export class GesdemHandlerService {
|
|
|
153
155
|
if (this._captchaToken) {
|
|
154
156
|
params = params.set('reCaptchaToken', this._captchaToken);
|
|
155
157
|
}
|
|
156
|
-
return this.http.post(url, form, { params }).pipe(tap(this.emitResponse.bind(this)), catchError((response) => this.handleGesdemError(null, response)), switchMap((resp) => forkJoin([
|
|
158
|
+
return this.http.post(url, form, { params }).pipe(tap(this.emitResponse.bind(this)), catchError((response) => this.handleGesdemError(null, reCaptchaByPassUUID, response)), switchMap((resp) => forkJoin([
|
|
157
159
|
this.sessionInfo.data.pipe(first(), map(data => !!data)),
|
|
158
160
|
of(resp)
|
|
159
161
|
])), tap(([isConnected, resp]) => {
|
|
@@ -179,13 +181,13 @@ export class GesdemHandlerService {
|
|
|
179
181
|
}
|
|
180
182
|
this.validationHandlerService.updateErrors(shouldDispatchErrors ? response.errors : []);
|
|
181
183
|
}
|
|
182
|
-
handleGesdemError(requestedReference,
|
|
184
|
+
handleGesdemError(requestedReference, reCaptchaByPassUUID,
|
|
183
185
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
184
186
|
response) {
|
|
185
187
|
const reference = this._lastResponse
|
|
186
188
|
? this._lastResponse.meta.reference
|
|
187
189
|
: requestedReference;
|
|
188
|
-
return this.errorHandlerService.handleGesdemError(this.prefix, reference, response);
|
|
190
|
+
return this.errorHandlerService.handleGesdemError(this.prefix, reference, reCaptchaByPassUUID, response);
|
|
189
191
|
}
|
|
190
192
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: GesdemHandlerService, deps: [{ token: i1.HttpClient }, { token: i2.GrowlBrokerService }, { token: i3.ValidationHandlerService }, { token: i4.ActivatedRoute }, { token: i5.GesdemErrorHandlerService }, { token: i6.SessionInfo }, { token: i7.SdkDictionaryService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
191
193
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: GesdemHandlerService, providedIn: 'root' }); }
|
|
@@ -196,4 +198,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
196
198
|
providedIn: 'root'
|
|
197
199
|
}]
|
|
198
200
|
}], ctorParameters: () => [{ type: i1.HttpClient }, { type: i2.GrowlBrokerService }, { type: i3.ValidationHandlerService }, { type: i4.ActivatedRoute }, { type: i5.GesdemErrorHandlerService }, { type: i6.SessionInfo }, { type: i7.SdkDictionaryService }] });
|
|
199
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VzZGVtLWhhbmRsZXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3ByZXN0YXRpb25zLW5nL3NyYy9nZXNkZW0vZ2VzZGVtLWhhbmRsZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBR0gsVUFBVSxFQUNiLE1BQU0sc0JBQXNCLENBQUM7QUFDOUIsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUsUUFBUSxFQUFjLEVBQUUsRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDekQsT0FBTyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUd4RSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDekQsT0FBTyxFQUFFLFlBQVksRUFBRSxpQkFBaUIsRUFBRSxNQUFNLCtCQUErQixDQUFDOzs7Ozs7Ozs7QUFVaEYsTUFBTSxPQUFPLG9CQUFvQjtJQVM3QixZQUNZLElBQWdCLEVBQ2hCLFlBQWdDLEVBQ2hDLHdCQUFrRCxFQUNsRCxLQUFxQixFQUNyQixtQkFBOEMsRUFDOUMsV0FBd0IsRUFDeEIsaUJBQXVDO1FBTnZDLFNBQUksR0FBSixJQUFJLENBQVk7UUFDaEIsaUJBQVksR0FBWixZQUFZLENBQW9CO1FBQ2hDLDZCQUF3QixHQUF4Qix3QkFBd0IsQ0FBMEI7UUFDbEQsVUFBSyxHQUFMLEtBQUssQ0FBZ0I7UUFDckIsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUEyQjtRQUM5QyxnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUN4QixzQkFBaUIsR0FBakIsaUJBQWlCLENBQXNCO1FBYm5ELDhEQUE4RDtRQUN0RCwyQkFBc0IsR0FB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Q0FBQztJQUNOLENBQUM7SUFFTyxpQkFBaUIsQ0FDckIsa0JBQTBCO0lBQzFCLDhEQUE4RDtJQUM5RCxRQUFpQztRQUVqQyxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsYUFBYTtZQUNoQyxDQUFDLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsU0FBUztZQUNuQyxDQUFDLENBQUMsa0JBQWtCLENBQUM7UUFFekIsT0FBTyxJQUFJLENBQUMsbUJBQW1CLENBQUMsaUJBQWlCLENBQzdDLElBQUksQ0FBQyxNQUFNLEVBQ1gsU0FBUyxFQUNULFFBQVEsQ0FDWCxDQUFDO0lBQ04sQ0FBQzsrR0F6UVEsb0JBQW9CO21IQUFwQixvQkFBb0IsY0FGakIsTUFBTTs7NEZBRVQsb0JBQW9CO2tCQUhoQyxVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgSHR0cENsaWVudCxcbiAgICBIdHRwRXJyb3JSZXNwb25zZSxcbiAgICBIdHRwUGFyYW1zXG59IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IGZvcmtKb2luLCBPYnNlcnZhYmxlLCBvZiwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgY2F0Y2hFcnJvciwgZmlyc3QsIG1hcCwgc3dpdGNoTWFwLCB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IEdyb3dsQnJva2VyU2VydmljZSB9IGZyb20gJy4uL2ZvZWhuLWdyb3dsL2dyb3dsLWJyb2tlci5zZXJ2aWNlJztcbmltcG9ydCB7IEdyb3dsVHlwZSB9IGZyb20gJy4uL2ZvZWhuLWdyb3dsL2dyb3dsLXR5cGVzJztcbmltcG9ydCB7IEZvcm1Qb3N0UmVzcG9uc2UgfSBmcm9tICcuLi9mb3JtLXBvc3QtcmVzcG9uc2UnO1xuaW1wb3J0IHsgQWN0aW9uU3RhdHV0LCBHZXNkZW1TdGF0dXRVdGlscyB9IGZyb20gJy4uL2dlc2RlbS9nZXNkZW0tc3RhdHV0LXV0aWxzJztcbmltcG9ydCB7IEkxOG5Gb3JtIH0gZnJvbSAnLi4vaTE4bi1mb3JtJztcbmltcG9ydCB7IFNka0RpY3Rpb25hcnlTZXJ2aWNlIH0gZnJvbSAnLi4vc2RrLWRpY3Rpb25hcnkvc2RrLWRpY3Rpb25hcnkuc2VydmljZSc7XG5pbXBvcnQgeyBTZXNzaW9uSW5mbyB9IGZyb20gJy4uL3Nkay1zZXNzaW9uLWluZm8vc2Vzc2lvbi1pbmZvLnNlcnZpY2UnO1xuaW1wb3J0IHsgVmFsaWRhdGlvbkhhbmRsZXJTZXJ2aWNlIH0gZnJvbSAnLi4vdmFsaWRhdGlvbi92YWxpZGF0aW9uLWhhbmRsZXIuc2VydmljZSc7XG5pbXBvcnQgeyBHZXNkZW1FcnJvckhhbmRsZXJTZXJ2aWNlIH0gZnJvbSAnLi9nZXNkZW0tZXJyb3ItaGFuZGxlci5zZXJ2aWNlJztcblxuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBHZXNkZW1IYW5kbGVyU2VydmljZSB7XG4gICAgX3ByZWZpeDogc3RyaW5nO1xuXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICBwcml2YXRlIF91cGRhdGVGb3JtRGF0YVN1YmplY3Q6IFN1YmplY3Q8YW55PiA9IG5ldyBTdWJqZWN0PGFueT4oKTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgIHByaXZhdGUgX2xhc3RSZXNwb25zZTogRm9ybVBvc3RSZXNwb25zZTxhbnk+O1xuICAgIHByaXZhdGUgX2NhcHRjaGFUb2tlbjogc3RyaW5nO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgaHR0cDogSHR0cENsaWVudCxcbiAgICAgICAgcHJpdmF0ZSBncm93bFNlcnZpY2U6IEdyb3dsQnJva2VyU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSB2YWxpZGF0aW9uSGFuZGxlclNlcnZpY2U6IFZhbGlkYXRpb25IYW5kbGVyU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSByb3V0ZTogQWN0aXZhdGVkUm91dGUsXG4gICAgICAgIHByaXZhdGUgZXJyb3JIYW5kbGVyU2VydmljZTogR2VzZGVtRXJyb3JIYW5kbGVyU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBzZXNzaW9uSW5mbzogU2Vzc2lvbkluZm8sXG4gICAgICAgIHByaXZhdGUgZGljdGlvbmFyeVNlcnZpY2U6IFNka0RpY3Rpb25hcnlTZXJ2aWNlXG4gICAgKSB7fVxuXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICBnZXQgbGFzdFJlc3BvbnNlKCk6IEZvcm1Qb3N0UmVzcG9uc2U8YW55PiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9sYXN0UmVzcG9uc2U7XG4gICAgfVxuXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICBnZXQgdXBkYXRlRm9ybURhdGFTdWJqZWN0KCk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgICAgIHJldHVybiB0aGlzLl91cGRhdGVGb3JtRGF0YVN1YmplY3QuYXNPYnNlcnZhYmxlKCk7XG4gICAgfVxuXG4gICAgZ2V0IHByZWZpeCgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5fcHJlZml4O1xuICAgIH1cblxuICAgIHNldCBwcmVmaXgocHJlZml4OiBzdHJpbmcpIHtcbiAgICAgICAgdGhpcy5fcHJlZml4ID0gcHJlZml4O1xuICAgIH1cblxuICAgIGlzUGVuZGluZ1BheW1lbnQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiBHZXNkZW1TdGF0dXRVdGlscy5pc1BlbmRpbmdQYXltZW50KFxuICAgICAgICAgICAgQWN0aW9uU3RhdHV0W3RoaXMuX2xhc3RSZXNwb25zZT8ubWV0YT8uc3RhdHV0IGFzIEFjdGlvblN0YXR1dF1cbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBzYXZlKFxuICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgICAgICBmb3JtOiBhbnksXG4gICAgICAgIGNhbkNyZWF0ZURlbWFuZGU6IGJvb2xlYW4gPSBmYWxzZSxcbiAgICAgICAgZGlzcGxheVN1Y2Nlc3NNZXNzYWdlOiBib29sZWFuID0gdHJ1ZVxuICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgICk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgICAgIGxldCB1cmwgPSAnYXBpL3ZhbGlkYXRlZCc7XG4gICAgICAgIGlmICh0aGlzLnByZWZpeCkge1xuICAgICAgICAgICAgdXJsID0gYGFwaS8ke3RoaXMucHJlZml4fS92YWxpZGF0ZWRgO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGNhbkNyZWF0ZURlbWFuZGUpIHtcbiAgICAgICAgICAgIHVybCA9IGAke3VybH0/dXBkYXRlT25seT1mYWxzZWA7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdGhpcy5wb3N0VG9VcmwoZm9ybSwgdXJsLCBkaXNwbGF5U3VjY2Vzc01lc3NhZ2UpO1xuICAgIH1cblxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgcGRmKGZvcm06IGFueSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgICAgIGxldCB1cmwgPSAnYXBpL3BkZic7XG4gICAgICAgIGlmICh0aGlzLnByZWZpeCkge1xuICAgICAgICAgICAgdXJsID0gYGFwaS8ke3RoaXMucHJlZml4fS9wZGZgO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRoaXMucG9zdFRvVXJsKGZvcm0sIHVybCwgZmFsc2UpO1xuICAgIH1cblxuICAgIHNldENhcHRjaGFUb2tlbih0b2tlbjogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2NhcHRjaGFUb2tlbiA9IHRva2VuO1xuICAgIH1cblxuICAgIGdldENhcHRjaGFUb2tlbigpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5fY2FwdGNoYVRva2VuO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqXG4gICAgICogQHBhcmFtIHJlZmVyZW5jZSBkZSBsYSBkZW1hbmRlXG4gICAgICogQHBhcmFtIGZvcmNlUmVmcmVzaElmTmV3IGFsbG93cyB0byBmb3JjZSB0aGUgY2xlYW5pbmcgaWYgcmVmZXJlbmNlIGlzIG51bGxcbiAgICAgKiBAcGFyYW0gYnlQYXNzRW1pdFJlc3BvbnNlIGJvb2xlYW4gdXNlZCB0byBlbWl0IG9yIG5vdCBnZXNkZW0gbGFzdCByZXNwb25zZSAoZGVmYXVsdCBpcyBmYWxzZSlcbiAgICAgKiBAcmV0dXJucyBPYnNlcnZhYmxlXG4gICAgICovXG4gICAgcmVxdWlyZShcbiAgICAgICAgcmVmZXJlbmNlPzogc3RyaW5nLFxuICAgICAgICBmb3JjZVJlZnJlc2hJZk5ldz86IGJvb2xlYW4sXG4gICAgICAgIGJ5UGFzc0VtaXRSZXNwb25zZT86IGJvb2xlYW5cbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICApOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgICAgICBjb25zdCBpc05ld1JlZmVyZW5jZSA9XG4gICAgICAgICAgICAhIXJlZmVyZW5jZSAmJlxuICAgICAgICAgICAgISF0aGlzLl9sYXN0UmVzcG9uc2UgJiZcbiAgICAgICAgICAgICEhdGhpcy5fbGFzdFJlc3BvbnNlLm1ldGEgJiZcbiAgICAgICAgICAgIHRoaXMuX2xhc3RSZXNwb25zZS5tZXRhLnJlZmVyZW5jZSAhPT0gcmVmZXJlbmNlO1xuXG4gICAgICAgIGNvbnN0IHJlZnJlc2hPbk5vUmVmZXJlbmNlID0gISFmb3JjZVJlZnJlc2hJZk5ldyAmJiAhcmVmZXJlbmNlO1xuICAgICAgICBpZiAoaXNOZXdSZWZlcmVuY2UgfHwgcmVmcmVzaE9uTm9SZWZlcmVuY2UpIHtcbiAgICAgICAgICAgIHRoaXMuX2xhc3RSZXNwb25zZSA9IG51bGw7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHJlZmVyZW5jZSAmJiAhdGhpcy5fbGFzdFJlc3BvbnNlKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5yZXRyaWV2ZShyZWZlcmVuY2UpO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLl9sYXN0UmVzcG9uc2UgJiYgIWJ5UGFzc0VtaXRSZXNwb25zZSkge1xuICAgICAgICAgICAgdGhpcy5lbWl0UmVzcG9uc2UodGhpcy5fbGFzdFJlc3BvbnNlKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gb2YodHJ1ZSk7XG4gICAgfVxuXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICB0cmFuc21pdCgpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgICAgICBsZXQgdXJsID0gJ2FwaS90cmFuc21pc3Npb24nO1xuICAgICAgICBpZiAodGhpcy5wcmVmaXgpIHtcbiAgICAgICAgICAgIHVybCA9IGBhcGkvJHt0aGlzLnByZWZpeH0vdHJhbnNtaXNzaW9uYDtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5fbGFzdFJlc3BvbnNlKSB7XG4gICAgICAgICAgICB1cmwgKz0gYD9yZWZlcmVuY2U9JHt0aGlzLl9sYXN0UmVzcG9uc2UubWV0YS5yZWZlcmVuY2V9YDtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3QodXJsLCBudWxsKS5waXBlKFxuICAgICAgICAgICAgdGFwKHRoaXMuZW1pdFJlc3BvbnNlLmJpbmQodGhpcykpLFxuICAgICAgICAgICAgbWFwKCgpID0+IHRydWUpLFxuICAgICAgICAgICAgY2F0Y2hFcnJvcigocmVzcG9uc2U6IHVua25vd24pID0+XG4gICAgICAgICAgICAgICAgdGhpcy5oYW5kbGVHZXNkZW1FcnJvcihudWxsLCByZXNwb25zZSlcbiAgICAgICAgICAgIClcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICByZXRyaWV2ZShcbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICAgICAgcmVmZXJlbmNlOiBhbnksXG4gICAgICAgIHNob3VsZERpc3BhdGNoRXJyb3JzOiBib29sZWFuID0gdHJ1ZVxuICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgICk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgICAgIGxldCB1cmwgPSAnYXBpJztcbiAgICAgICAgaWYgKHRoaXMucHJlZml4KSB7XG4gICAgICAgICAgICB1cmwgPSBgYXBpLyR7dGhpcy5wcmVmaXh9YDtcbiAgICAgICAgfVxuICAgICAgICB1cmwgPSBgJHt1cmx9L3ZhbGlkYXRlZC8ke3JlZmVyZW5jZX1gO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLmdldCh1cmwpLnBpcGUoXG4gICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgICAgICAgICAgdGFwKChyZXNwOiBGb3JtUG9zdFJlc3BvbnNlPGFueT4pID0+XG4gICAgICAgICAgICAgICAgdGhpcy5lbWl0UmVzcG9uc2UocmVzcCwgc2hvdWxkRGlzcGF0Y2hFcnJvcnMpXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgbWFwKCgpID0+IHRydWUpLFxuICAgICAgICAgICAgY2F0Y2hFcnJvcigocmVzcG9uc2U6IHVua25vd24pID0+XG4gICAgICAgICAgICAgICAgdGhpcy5oYW5kbGVHZXNkZW1FcnJvcihyZWZlcmVuY2UsIHJlc3BvbnNlKVxuICAgICAgICAgICAgKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgcmV0cmlldmVBY3Rpb25TdGF0dXQocmVmZXJlbmNlOiBhbnkpOiBPYnNlcnZhYmxlPEFjdGlvblN0YXR1dD4ge1xuICAgICAgICBsZXQgdXJsID0gJ2FwaSc7XG4gICAgICAgIGlmICh0aGlzLnByZWZpeCkge1xuICAgICAgICAgICAgdXJsID0gYGFwaS8ke3RoaXMucHJlZml4fWA7XG4gICAgICAgIH1cbiAgICAgICAgdXJsID0gYCR7dXJsfS8ke3JlZmVyZW5jZX0vYWN0aW9uLXN0YXR1dGA7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHVybCkucGlwZShcbiAgICAgICAgICAgIG1hcChzdGF0dXMgPT4gc3RhdHVzIGFzIEFjdGlvblN0YXR1dCksXG4gICAgICAgICAgICBjYXRjaEVycm9yKChyZXNwb25zZTogdW5rbm93bikgPT5cbiAgICAgICAgICAgICAgICB0aGlzLmhhbmRsZUdlc2RlbUVycm9yKHJlZmVyZW5jZSwgcmVzcG9uc2UpXG4gICAgICAgICAgICApXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICB2YWxpZGF0ZShmb3JtOiBhbnkpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgICAgICBsZXQgdXJsID0gJ2FwaS92YWxpZGF0ZWQtb25seSc7XG4gICAgICAgIGlmICh0aGlzLnByZWZpeCkge1xuICAgICAgICAgICAgdXJsID0gYGFwaS8ke3RoaXMucHJlZml4fS92YWxpZGF0ZWQtb25seWA7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdGhpcy5wb3N0VG9VcmwoZm9ybSwgdXJsLCBmYWxzZSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBwb3N0VG9VcmwoXG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgICAgIGZvcm06IGFueSxcbiAgICAgICAgdXJsOiBzdHJpbmcsXG4gICAgICAgIGRpc3BsYXlTdWNjZXNzTWVzc2FnZTogYm9vbGVhblxuICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgICk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgICAgIGxldCBwYXJhbXMgPSBuZXcgSHR0cFBhcmFtcygpO1xuICAgICAgICBpZiAoISF0aGlzLnJvdXRlLnNuYXBzaG90LnF1ZXJ5UGFyYW1zLnJlQ2FwdGNoYUJ5UGFzc1VVSUQpIHtcbiAgICAgICAgICAgIHBhcmFtcyA9IHBhcmFtcy5zZXQoXG4gICAgICAgICAgICAgICAgJ3JlQ2FwdGNoYUJ5UGFzc1VVSUQnLFxuICAgICAgICAgICAgICAgIHRoaXMucm91dGUuc25hcHNob3QucXVlcnlQYXJhbXMucmVDYXB0Y2hhQnlQYXNzVVVJRFxuICAgICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoISF0aGlzLl9sYXN0UmVzcG9uc2U/Lm1ldGE/LnJlZmVyZW5jZSkge1xuICAgICAgICAgICAgcGFyYW1zID0gcGFyYW1zLnNldCgncmVmZXJlbmNlJywgdGhpcy5fbGFzdFJlc3BvbnNlLm1ldGEucmVmZXJlbmNlKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5fY2FwdGNoYVRva2VuKSB7XG4gICAgICAgICAgICBwYXJhbXMgPSBwYXJhbXMuc2V0KCdyZUNhcHRjaGFUb2tlbicsIHRoaXMuX2NhcHRjaGFUb2tlbik7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3QodXJsLCBmb3JtLCB7IHBhcmFtcyB9KS5waXBlKFxuICAgICAgICAgICAgdGFwKHRoaXMuZW1pdFJlc3BvbnNlLmJpbmQodGhpcykpLFxuICAgICAgICAgICAgY2F0Y2hFcnJvcigocmVzcG9uc2U6IHVua25vd24pID0+XG4gICAgICAgICAgICAgICAgdGhpcy5oYW5kbGVHZXNkZW1FcnJvcihudWxsLCByZXNwb25zZSlcbiAgICAgICAgICAgICksXG4gICAgICAgICAgICBzd2l0Y2hNYXAoKHJlc3A6IEZvcm1Qb3N0UmVzcG9uc2U8STE4bkZvcm0+KSA9PlxuICAgICAgICAgICAgICAgIGZvcmtKb2luKFtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zZXNzaW9uSW5mby5kYXRhLnBpcGUoXG4gICAgICAgICAgICAgICAgICAgICAgICBmaXJzdCgpLFxuICAgICAgICAgICAgICAgICAgICAgICAgbWFwKGRhdGEgPT4gISFkYXRhKVxuICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICBvZihyZXNwKVxuICAgICAgICAgICAgICAgIF0pXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgdGFwKChbaXNDb25uZWN0ZWQsIHJlc3BdKSA9PiB7XG4gICAgICAgICAgICAgICAgLy8gSWYgdGhlIHVzZXIgaXMgY29ubmVjdGVkLCBkaXNwbGF5IGEgbWVzc2FnZSB0byBtYWtlIGNsZWFyIHRoYXRcbiAgICAgICAgICAgICAgICAvLyBub3RoaW5nIGlzIGxvc3QhXG4gICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgICBpc0Nvbm5lY3RlZCAmJlxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5U3VjY2Vzc01lc3NhZ2UgJiZcbiAgICAgICAgICAgICAgICAgICAgISFyZXNwPy5tZXRhPy5yZWZlcmVuY2U/Lmxlbmd0aFxuICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmdyb3dsU2VydmljZS5hZGRXaXRoVHlwZShcbiAgICAgICAgICAgICAgICAgICAgICAgIEdyb3dsVHlwZS5TVUNDRVNTLFxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5kaWN0aW9uYXJ5U2VydmljZS5nZXRLZXlTeW5jKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICdnZXNkZW0taGFuZGxlci5zYXZlLWNvbmZpcm1hdGlvbi5sYWJlbCdcbiAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIG1hcCgoKSA9PiB0cnVlKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIHByaXZhdGUgZW1pdFJlc3BvbnNlKFxuICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgICAgICByZXNwb25zZTogRm9ybVBvc3RSZXNwb25zZTxhbnk+LFxuICAgICAgICBzaG91bGREaXNwYXRjaEVycm9yczogYm9vbGVhbiA9IHRydWVcbiAgICApOiB2b2lkIHtcbiAgICAgICAgaWYgKCFyZXNwb25zZS5tZXRhLmNyaXRpY2FsKSB7XG4gICAgICAgICAgICB0aGlzLl9sYXN0UmVzcG9uc2UgPSByZXNwb25zZTtcbiAgICAgICAgICAgIHRoaXMuX3VwZGF0ZUZvcm1EYXRhU3ViamVjdC5uZXh0KHJlc3BvbnNlLmZvcm0pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5fbGFzdFJlc3BvbnNlID0gbmV3IEZvcm1Qb3N0UmVzcG9uc2UoKTtcbiAgICAgICAgICAgIHRoaXMuX2xhc3RSZXNwb25zZS5tZXRhLmNyaXRpY2FsID0gdHJ1ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMudmFsaWRhdGlvbkhhbmRsZXJTZXJ2aWNlLnVwZGF0ZUVycm9ycyhcbiAgICAgICAgICAgIHNob3VsZERpc3BhdGNoRXJyb3JzID8gcmVzcG9uc2UuZXJyb3JzIDogW11cbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGhhbmRsZUdlc2RlbUVycm9yKFxuICAgICAgICByZXF1ZXN0ZWRSZWZlcmVuY2U6IHN0cmluZyxcbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICAgICAgcmVzcG9uc2U6IEh0dHBFcnJvclJlc3BvbnNlIHwgYW55XG4gICAgKTogT2JzZXJ2YWJsZTxuZXZlcj4ge1xuICAgICAgICBjb25zdCByZWZlcmVuY2UgPSB0aGlzLl9sYXN0UmVzcG9uc2VcbiAgICAgICAgICAgID8gdGhpcy5fbGFzdFJlc3BvbnNlLm1ldGEucmVmZXJlbmNlXG4gICAgICAgICAgICA6IHJlcXVlc3RlZFJlZmVyZW5jZTtcblxuICAgICAgICByZXR1cm4gdGhpcy5lcnJvckhhbmRsZXJTZXJ2aWNlLmhhbmRsZUdlc2RlbUVycm9yKFxuICAgICAgICAgICAgdGhpcy5wcmVmaXgsXG4gICAgICAgICAgICByZWZlcmVuY2UsXG4gICAgICAgICAgICByZXNwb25zZVxuICAgICAgICApO1xuICAgIH1cbn1cbiJdfQ==
|
|
201
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VzZGVtLWhhbmRsZXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3ByZXN0YXRpb25zLW5nL3NyYy9nZXNkZW0vZ2VzZGVtLWhhbmRsZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBR0gsVUFBVSxFQUNiLE1BQU0sc0JBQXNCLENBQUM7QUFDOUIsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUsUUFBUSxFQUFjLEVBQUUsRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDekQsT0FBTyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUd4RSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDekQsT0FBTyxFQUFFLFlBQVksRUFBRSxpQkFBaUIsRUFBRSxNQUFNLCtCQUErQixDQUFDOzs7Ozs7Ozs7QUFVaEYsTUFBTSxPQUFPLG9CQUFvQjtJQVM3QixZQUNZLElBQWdCLEVBQ2hCLFlBQWdDLEVBQ2hDLHdCQUFrRCxFQUNsRCxLQUFxQixFQUNyQixtQkFBOEMsRUFDOUMsV0FBd0IsRUFDeEIsaUJBQXVDO1FBTnZDLFNBQUksR0FBSixJQUFJLENBQVk7UUFDaEIsaUJBQVksR0FBWixZQUFZLENBQW9CO1FBQ2hDLDZCQUF3QixHQUF4Qix3QkFBd0IsQ0FBMEI7UUFDbEQsVUFBSyxHQUFMLEtBQUssQ0FBZ0I7UUFDckIsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUEyQjtRQUM5QyxnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUN4QixzQkFBaUIsR0FBakIsaUJBQWlCLENBQXNCO1FBYm5ELDhEQUE4RDtRQUN0RCwyQkFBc0IsR0FBaUIsSUFBSSxPQUFPLEVBQU8sQ0FBQztJQWEvRCxDQUFDO0lBRUosOERBQThEO0lBQzlELElBQUksWUFBWTtRQUNaLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQztJQUM5QixDQUFDO0lBRUQsOERBQThEO0lBQzlELElBQUkscUJBQXFCO1FBQ3JCLE9BQU8sSUFBSSxDQUFDLHNCQUFzQixDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3RELENBQUM7SUFFRCxJQUFJLE1BQU07UUFDTixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDeEIsQ0FBQztJQUVELElBQUksTUFBTSxDQUFDLE1BQWM7UUFDckIsSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUM7SUFDMUIsQ0FBQztJQUVELGdCQUFnQjtRQUNaLE9BQU8saUJBQWlCLENBQUMsZ0JBQWdCLENBQ3JDLFlBQVksQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLElBQUksRUFBRSxNQUFzQixDQUFDLENBQ2pFLENBQUM7SUFDTixDQUFDO0lBRUQsSUFBSTtJQUNBLDhEQUE4RDtJQUM5RCxJQUFTLEVBQ1QsbUJBQTRCLEtBQUssRUFDakMsd0JBQWlDLElBQUk7SUFDckMsOERBQThEOztRQUU5RCxJQUFJLEdBQUcsR0FBRyxlQUFlLENBQUM7UUFDMUIsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDZCxHQUFHLEdBQUcsT0FBTyxJQUFJLENBQUMsTUFBTSxZQUFZLENBQUM7UUFDekMsQ0FBQztRQUVELElBQUksZ0JBQWdCLEVBQUUsQ0FBQztZQUNuQixHQUFHLEdBQUcsR0FBRyxHQUFHLG1CQUFtQixDQUFDO1FBQ3BDLENBQUM7UUFFRCxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLEdBQUcsRUFBRSxxQkFBcUIsQ0FBQyxDQUFDO0lBQzVELENBQUM7SUFFRCw4REFBOEQ7SUFDOUQsR0FBRyxDQUFDLElBQVM7UUFDVCxJQUFJLEdBQUcsR0FBRyxTQUFTLENBQUM7UUFDcEIsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDZCxHQUFHLEdBQUcsT0FBTyxJQUFJLENBQUMsTUFBTSxNQUFNLENBQUM7UUFDbkMsQ0FBQztRQUVELE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsR0FBRyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQzVDLENBQUM7SUFFRCxlQUFlLENBQUMsS0FBYTtRQUN6QixJQUFJLENBQUMsYUFBYSxHQUFHLEtBQUssQ0FBQztJQUMvQixDQUFDO0lBRUQsZUFBZTtRQUNYLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQztJQUM5QixDQUFDO0lBRUQ7Ozs7Ozs7T0FPRztJQUNILE9BQU8sQ0FDSCxTQUFrQixFQUNsQixtQkFBNEIsRUFDNUIsaUJBQTJCLEVBQzNCLGtCQUE0QjtJQUM1Qiw4REFBOEQ7O1FBRTlELE1BQU0sY0FBYyxHQUNoQixDQUFDLENBQUMsU0FBUztZQUNYLENBQUMsQ0FBQyxJQUFJLENBQUMsYUFBYTtZQUNwQixDQUFDLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJO1lBQ3pCLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLFNBQVMsS0FBSyxTQUFTLENBQUM7UUFFcEQsTUFBTSxvQkFBb0IsR0FBRyxDQUFDLENBQUMsaUJBQWlCLElBQUksQ0FBQyxTQUFTLENBQUM7UUFDL0QsSUFBSSxjQUFjLElBQUksb0JBQW9CLEVBQUUsQ0FBQztZQUN6QyxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQztRQUM5QixDQUFDO1FBQ0QsSUFBSSxTQUFTLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDbkMsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsRUFBRSxtQkFBbUIsQ0FBQyxDQUFDO1FBQ3pELENBQUM7UUFDRCxJQUFJLElBQUksQ0FBQyxhQUFhLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1lBQzVDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQzFDLENBQUM7UUFDRCxPQUFPLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNwQixDQUFDO0lBRUQsOERBQThEO0lBQzlELFFBQVE7UUFDSixJQUFJLEdBQUcsR0FBRyxrQkFBa0IsQ0FBQztRQUM3QixJQUFJLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNkLEdBQUcsR0FBRyxPQUFPLElBQUksQ0FBQyxNQUFNLGVBQWUsQ0FBQztRQUM1QyxDQUFDO1FBQ0QsSUFBSSxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDckIsR0FBRyxJQUFJLGNBQWMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDN0QsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxDQUFDLElBQUksQ0FDakMsR0FBRyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQ2pDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsRUFDZixVQUFVLENBQUMsQ0FBQyxRQUFpQixFQUFFLEVBQUUsQ0FDN0IsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsUUFBUSxDQUFDLENBQy9DLENBQ0osQ0FBQztJQUNOLENBQUM7SUFFRCxRQUFRO0lBQ0osOERBQThEO0lBQzlELFNBQWMsRUFDZCxtQkFBMkIsRUFDM0IsdUJBQWdDLElBQUk7SUFDcEMsOERBQThEOztRQUU5RCxJQUFJLEdBQUcsR0FBRyxLQUFLLENBQUM7UUFDaEIsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDZCxHQUFHLEdBQUcsT0FBTyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDL0IsQ0FBQztRQUNELEdBQUcsR0FBRyxHQUFHLEdBQUcsY0FBYyxTQUFTLEVBQUUsQ0FBQztRQUN0QyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUk7UUFDMUIsOERBQThEO1FBQzlELEdBQUcsQ0FBQyxDQUFDLElBQTJCLEVBQUUsRUFBRSxDQUNoQyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksRUFBRSxvQkFBb0IsQ0FBQyxDQUNoRCxFQUNELEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsRUFDZixVQUFVLENBQUMsQ0FBQyxRQUFpQixFQUFFLEVBQUUsQ0FDN0IsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFNBQVMsRUFBRSxtQkFBbUIsRUFBRSxRQUFRLENBQUMsQ0FDbkUsQ0FDSixDQUFDO0lBQ04sQ0FBQztJQUVELDhEQUE4RDtJQUM5RCxvQkFBb0IsQ0FBQyxTQUFjO1FBQy9CLElBQUksR0FBRyxHQUFHLEtBQUssQ0FBQztRQUNoQixJQUFJLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNkLEdBQUcsR0FBRyxPQUFPLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUMvQixDQUFDO1FBQ0QsR0FBRyxHQUFHLEdBQUcsR0FBRyxJQUFJLFNBQVMsZ0JBQWdCLENBQUM7UUFDMUMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQzFCLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLE1BQXNCLENBQUMsRUFDckMsVUFBVSxDQUFDLENBQUMsUUFBaUIsRUFBRSxFQUFFLENBQzdCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxTQUFTLEVBQUUsSUFBSSxFQUFFLFFBQVEsQ0FBQyxDQUNwRCxDQUNKLENBQUM7SUFDTixDQUFDO0lBRUQsOERBQThEO0lBQzlELFFBQVEsQ0FBQyxJQUFTO1FBQ2QsSUFBSSxHQUFHLEdBQUcsb0JBQW9CLENBQUM7UUFDL0IsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDZCxHQUFHLEdBQUcsT0FBTyxJQUFJLENBQUMsTUFBTSxpQkFBaUIsQ0FBQztRQUM5QyxDQUFDO1FBRUQsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxHQUFHLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDNUMsQ0FBQztJQUVPLFNBQVM7SUFDYiw4REFBOEQ7SUFDOUQsSUFBUyxFQUNULEdBQVcsRUFDWCxxQkFBOEI7SUFDOUIsOERBQThEOztRQUU5RCxNQUFNLG1CQUFtQixHQUNyQixJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsbUJBQW1CLENBQUM7UUFFeEQsSUFBSSxNQUFNLEdBQUcsSUFBSSxVQUFVLEVBQUUsQ0FBQztRQUM5QixJQUFJLENBQUMsQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO1lBQ3hCLE1BQU0sR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLHFCQUFxQixFQUFFLG1CQUFtQixDQUFDLENBQUM7UUFDcEUsQ0FBQztRQUNELElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxDQUFDO1lBQ3hDLE1BQU0sR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUN4RSxDQUFDO1FBQ0QsSUFBSSxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDckIsTUFBTSxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLEVBQUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQzlELENBQUM7UUFFRCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxJQUFJLEVBQUUsRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FDN0MsR0FBRyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQ2pDLFVBQVUsQ0FBQyxDQUFDLFFBQWlCLEVBQUUsRUFBRSxDQUM3QixJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxFQUFFLG1CQUFtQixFQUFFLFFBQVEsQ0FBQyxDQUM5RCxFQUNELFNBQVMsQ0FBQyxDQUFDLElBQWdDLEVBQUUsRUFBRSxDQUMzQyxRQUFRLENBQUM7WUFDTCxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQ3RCLEtBQUssRUFBRSxFQUNQLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FDdEI7WUFDRCxFQUFFLENBQUMsSUFBSSxDQUFDO1NBQ1gsQ0FBQyxDQUNMLEVBQ0QsR0FBRyxDQUFDLENBQUMsQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLEVBQUUsRUFBRTtZQUN4QixpRUFBaUU7WUFDakUsbUJBQW1CO1lBQ25CLElBQ0ksV0FBVztnQkFDWCxxQkFBcUI7Z0JBQ3JCLENBQUMsQ0FBQyxJQUFJLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQ2pDLENBQUM7Z0JBQ0MsSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXLENBQ3pCLFNBQVMsQ0FBQyxPQUFPLEVBQ2pCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxVQUFVLENBQzdCLHdDQUF3QyxDQUMzQyxDQUNKLENBQUM7WUFDTixDQUFDO1FBQ0wsQ0FBQyxDQUFDLEVBQ0YsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUNsQixDQUFDO0lBQ04sQ0FBQztJQUVPLFlBQVk7SUFDaEIsOERBQThEO0lBQzlELFFBQStCLEVBQy9CLHVCQUFnQyxJQUFJO1FBRXBDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQzFCLElBQUksQ0FBQyxhQUFhLEdBQUcsUUFBUSxDQUFDO1lBQzlCLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3BELENBQUM7YUFBTSxDQUFDO1lBQ0osSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLGdCQUFnQixFQUFFLENBQUM7WUFDNUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQztRQUM1QyxDQUFDO1FBRUQsSUFBSSxDQUFDLHdCQUF3QixDQUFDLFlBQVksQ0FDdEMsb0JBQW9CLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FDOUMsQ0FBQztJQUNOLENBQUM7SUFFTyxpQkFBaUIsQ0FDckIsa0JBQTBCLEVBQzFCLG1CQUEyQjtJQUMzQiw4REFBOEQ7SUFDOUQsUUFBaUM7UUFFakMsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLGFBQWE7WUFDaEMsQ0FBQyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLFNBQVM7WUFDbkMsQ0FBQyxDQUFDLGtCQUFrQixDQUFDO1FBRXpCLE9BQU8sSUFBSSxDQUFDLG1CQUFtQixDQUFDLGlCQUFpQixDQUM3QyxJQUFJLENBQUMsTUFBTSxFQUNYLFNBQVMsRUFDVCxtQkFBbUIsRUFDbkIsUUFBUSxDQUNYLENBQUM7SUFDTixDQUFDOytHQTlRUSxvQkFBb0I7bUhBQXBCLG9CQUFvQixjQUZqQixNQUFNOzs0RkFFVCxvQkFBb0I7a0JBSGhDLFVBQVU7bUJBQUM7b0JBQ1IsVUFBVSxFQUFFLE1BQU07aUJBQ3JCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBIdHRwQ2xpZW50LFxuICAgIEh0dHBFcnJvclJlc3BvbnNlLFxuICAgIEh0dHBQYXJhbXNcbn0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgZm9ya0pvaW4sIE9ic2VydmFibGUsIG9mLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBjYXRjaEVycm9yLCBmaXJzdCwgbWFwLCBzd2l0Y2hNYXAsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgR3Jvd2xCcm9rZXJTZXJ2aWNlIH0gZnJvbSAnLi4vZm9laG4tZ3Jvd2wvZ3Jvd2wtYnJva2VyLnNlcnZpY2UnO1xuaW1wb3J0IHsgR3Jvd2xUeXBlIH0gZnJvbSAnLi4vZm9laG4tZ3Jvd2wvZ3Jvd2wtdHlwZXMnO1xuaW1wb3J0IHsgRm9ybVBvc3RSZXNwb25zZSB9IGZyb20gJy4uL2Zvcm0tcG9zdC1yZXNwb25zZSc7XG5pbXBvcnQgeyBBY3Rpb25TdGF0dXQsIEdlc2RlbVN0YXR1dFV0aWxzIH0gZnJvbSAnLi4vZ2VzZGVtL2dlc2RlbS1zdGF0dXQtdXRpbHMnO1xuaW1wb3J0IHsgSTE4bkZvcm0gfSBmcm9tICcuLi9pMThuLWZvcm0nO1xuaW1wb3J0IHsgU2RrRGljdGlvbmFyeVNlcnZpY2UgfSBmcm9tICcuLi9zZGstZGljdGlvbmFyeS9zZGstZGljdGlvbmFyeS5zZXJ2aWNlJztcbmltcG9ydCB7IFNlc3Npb25JbmZvIH0gZnJvbSAnLi4vc2RrLXNlc3Npb24taW5mby9zZXNzaW9uLWluZm8uc2VydmljZSc7XG5pbXBvcnQgeyBWYWxpZGF0aW9uSGFuZGxlclNlcnZpY2UgfSBmcm9tICcuLi92YWxpZGF0aW9uL3ZhbGlkYXRpb24taGFuZGxlci5zZXJ2aWNlJztcbmltcG9ydCB7IEdlc2RlbUVycm9ySGFuZGxlclNlcnZpY2UgfSBmcm9tICcuL2dlc2RlbS1lcnJvci1oYW5kbGVyLnNlcnZpY2UnO1xuXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIEdlc2RlbUhhbmRsZXJTZXJ2aWNlIHtcbiAgICBfcHJlZml4OiBzdHJpbmc7XG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgIHByaXZhdGUgX3VwZGF0ZUZvcm1EYXRhU3ViamVjdDogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3Q8YW55PigpO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgcHJpdmF0ZSBfbGFzdFJlc3BvbnNlOiBGb3JtUG9zdFJlc3BvbnNlPGFueT47XG4gICAgcHJpdmF0ZSBfY2FwdGNoYVRva2VuOiBzdHJpbmc7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50LFxuICAgICAgICBwcml2YXRlIGdyb3dsU2VydmljZTogR3Jvd2xCcm9rZXJTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIHZhbGlkYXRpb25IYW5kbGVyU2VydmljZTogVmFsaWRhdGlvbkhhbmRsZXJTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcbiAgICAgICAgcHJpdmF0ZSBlcnJvckhhbmRsZXJTZXJ2aWNlOiBHZXNkZW1FcnJvckhhbmRsZXJTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIHNlc3Npb25JbmZvOiBTZXNzaW9uSW5mbyxcbiAgICAgICAgcHJpdmF0ZSBkaWN0aW9uYXJ5U2VydmljZTogU2RrRGljdGlvbmFyeVNlcnZpY2VcbiAgICApIHt9XG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgIGdldCBsYXN0UmVzcG9uc2UoKTogRm9ybVBvc3RSZXNwb25zZTxhbnk+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2xhc3RSZXNwb25zZTtcbiAgICB9XG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgIGdldCB1cGRhdGVGb3JtRGF0YVN1YmplY3QoKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3VwZGF0ZUZvcm1EYXRhU3ViamVjdC5hc09ic2VydmFibGUoKTtcbiAgICB9XG5cbiAgICBnZXQgcHJlZml4KCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLl9wcmVmaXg7XG4gICAgfVxuXG4gICAgc2V0IHByZWZpeChwcmVmaXg6IHN0cmluZykge1xuICAgICAgICB0aGlzLl9wcmVmaXggPSBwcmVmaXg7XG4gICAgfVxuXG4gICAgaXNQZW5kaW5nUGF5bWVudCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIEdlc2RlbVN0YXR1dFV0aWxzLmlzUGVuZGluZ1BheW1lbnQoXG4gICAgICAgICAgICBBY3Rpb25TdGF0dXRbdGhpcy5fbGFzdFJlc3BvbnNlPy5tZXRhPy5zdGF0dXQgYXMgQWN0aW9uU3RhdHV0XVxuICAgICAgICApO1xuICAgIH1cblxuICAgIHNhdmUoXG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgICAgIGZvcm06IGFueSxcbiAgICAgICAgY2FuQ3JlYXRlRGVtYW5kZTogYm9vbGVhbiA9IGZhbHNlLFxuICAgICAgICBkaXNwbGF5U3VjY2Vzc01lc3NhZ2U6IGJvb2xlYW4gPSB0cnVlXG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICAgICAgbGV0IHVybCA9ICdhcGkvdmFsaWRhdGVkJztcbiAgICAgICAgaWYgKHRoaXMucHJlZml4KSB7XG4gICAgICAgICAgICB1cmwgPSBgYXBpLyR7dGhpcy5wcmVmaXh9L3ZhbGlkYXRlZGA7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoY2FuQ3JlYXRlRGVtYW5kZSkge1xuICAgICAgICAgICAgdXJsID0gYCR7dXJsfT91cGRhdGVPbmx5PWZhbHNlYDtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0aGlzLnBvc3RUb1VybChmb3JtLCB1cmwsIGRpc3BsYXlTdWNjZXNzTWVzc2FnZSk7XG4gICAgfVxuXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICBwZGYoZm9ybTogYW55KTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICAgICAgbGV0IHVybCA9ICdhcGkvcGRmJztcbiAgICAgICAgaWYgKHRoaXMucHJlZml4KSB7XG4gICAgICAgICAgICB1cmwgPSBgYXBpLyR7dGhpcy5wcmVmaXh9L3BkZmA7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdGhpcy5wb3N0VG9VcmwoZm9ybSwgdXJsLCBmYWxzZSk7XG4gICAgfVxuXG4gICAgc2V0Q2FwdGNoYVRva2VuKHRva2VuOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fY2FwdGNoYVRva2VuID0gdG9rZW47XG4gICAgfVxuXG4gICAgZ2V0Q2FwdGNoYVRva2VuKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLl9jYXB0Y2hhVG9rZW47XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICpcbiAgICAgKiBAcGFyYW0gcmVmZXJlbmNlIGRlIGxhIGRlbWFuZGVcbiAgICAgKiBAcGFyYW0gcmVDYXB0Y2hhQnlQYXNzVVVJRFxuICAgICAqIEBwYXJhbSBmb3JjZVJlZnJlc2hJZk5ldyBhbGxvd3MgdG8gZm9yY2UgdGhlIGNsZWFuaW5nIGlmIHJlZmVyZW5jZSBpcyBudWxsXG4gICAgICogQHBhcmFtIGJ5UGFzc0VtaXRSZXNwb25zZSBib29sZWFuIHVzZWQgdG8gZW1pdCBvciBub3QgZ2VzZGVtIGxhc3QgcmVzcG9uc2UgKGRlZmF1bHQgaXMgZmFsc2UpXG4gICAgICogQHJldHVybnMgT2JzZXJ2YWJsZVxuICAgICAqL1xuICAgIHJlcXVpcmUoXG4gICAgICAgIHJlZmVyZW5jZT86IHN0cmluZyxcbiAgICAgICAgcmVDYXB0Y2hhQnlQYXNzVVVJRD86IHN0cmluZyxcbiAgICAgICAgZm9yY2VSZWZyZXNoSWZOZXc/OiBib29sZWFuLFxuICAgICAgICBieVBhc3NFbWl0UmVzcG9uc2U/OiBib29sZWFuXG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICAgICAgY29uc3QgaXNOZXdSZWZlcmVuY2UgPVxuICAgICAgICAgICAgISFyZWZlcmVuY2UgJiZcbiAgICAgICAgICAgICEhdGhpcy5fbGFzdFJlc3BvbnNlICYmXG4gICAgICAgICAgICAhIXRoaXMuX2xhc3RSZXNwb25zZS5tZXRhICYmXG4gICAgICAgICAgICB0aGlzLl9sYXN0UmVzcG9uc2UubWV0YS5yZWZlcmVuY2UgIT09IHJlZmVyZW5jZTtcblxuICAgICAgICBjb25zdCByZWZyZXNoT25Ob1JlZmVyZW5jZSA9ICEhZm9yY2VSZWZyZXNoSWZOZXcgJiYgIXJlZmVyZW5jZTtcbiAgICAgICAgaWYgKGlzTmV3UmVmZXJlbmNlIHx8IHJlZnJlc2hPbk5vUmVmZXJlbmNlKSB7XG4gICAgICAgICAgICB0aGlzLl9sYXN0UmVzcG9uc2UgPSBudWxsO1xuICAgICAgICB9XG4gICAgICAgIGlmIChyZWZlcmVuY2UgJiYgIXRoaXMuX2xhc3RSZXNwb25zZSkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMucmV0cmlldmUocmVmZXJlbmNlLCByZUNhcHRjaGFCeVBhc3NVVUlEKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5fbGFzdFJlc3BvbnNlICYmICFieVBhc3NFbWl0UmVzcG9uc2UpIHtcbiAgICAgICAgICAgIHRoaXMuZW1pdFJlc3BvbnNlKHRoaXMuX2xhc3RSZXNwb25zZSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIG9mKHRydWUpO1xuICAgIH1cblxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgdHJhbnNtaXQoKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICAgICAgbGV0IHVybCA9ICdhcGkvdHJhbnNtaXNzaW9uJztcbiAgICAgICAgaWYgKHRoaXMucHJlZml4KSB7XG4gICAgICAgICAgICB1cmwgPSBgYXBpLyR7dGhpcy5wcmVmaXh9L3RyYW5zbWlzc2lvbmA7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMuX2xhc3RSZXNwb25zZSkge1xuICAgICAgICAgICAgdXJsICs9IGA/cmVmZXJlbmNlPSR7dGhpcy5fbGFzdFJlc3BvbnNlLm1ldGEucmVmZXJlbmNlfWA7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHVybCwgbnVsbCkucGlwZShcbiAgICAgICAgICAgIHRhcCh0aGlzLmVtaXRSZXNwb25zZS5iaW5kKHRoaXMpKSxcbiAgICAgICAgICAgIG1hcCgoKSA9PiB0cnVlKSxcbiAgICAgICAgICAgIGNhdGNoRXJyb3IoKHJlc3BvbnNlOiB1bmtub3duKSA9PlxuICAgICAgICAgICAgICAgIHRoaXMuaGFuZGxlR2VzZGVtRXJyb3IobnVsbCwgbnVsbCwgcmVzcG9uc2UpXG4gICAgICAgICAgICApXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcmV0cmlldmUoXG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgICAgIHJlZmVyZW5jZTogYW55LFxuICAgICAgICByZUNhcHRjaGFCeVBhc3NVVUlEOiBzdHJpbmcsXG4gICAgICAgIHNob3VsZERpc3BhdGNoRXJyb3JzOiBib29sZWFuID0gdHJ1ZVxuICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgICk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgICAgIGxldCB1cmwgPSAnYXBpJztcbiAgICAgICAgaWYgKHRoaXMucHJlZml4KSB7XG4gICAgICAgICAgICB1cmwgPSBgYXBpLyR7dGhpcy5wcmVmaXh9YDtcbiAgICAgICAgfVxuICAgICAgICB1cmwgPSBgJHt1cmx9L3ZhbGlkYXRlZC8ke3JlZmVyZW5jZX1gO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLmdldCh1cmwpLnBpcGUoXG4gICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgICAgICAgICAgdGFwKChyZXNwOiBGb3JtUG9zdFJlc3BvbnNlPGFueT4pID0+XG4gICAgICAgICAgICAgICAgdGhpcy5lbWl0UmVzcG9uc2UocmVzcCwgc2hvdWxkRGlzcGF0Y2hFcnJvcnMpXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgbWFwKCgpID0+IHRydWUpLFxuICAgICAgICAgICAgY2F0Y2hFcnJvcigocmVzcG9uc2U6IHVua25vd24pID0+XG4gICAgICAgICAgICAgICAgdGhpcy5oYW5kbGVHZXNkZW1FcnJvcihyZWZlcmVuY2UsIHJlQ2FwdGNoYUJ5UGFzc1VVSUQsIHJlc3BvbnNlKVxuICAgICAgICAgICAgKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgcmV0cmlldmVBY3Rpb25TdGF0dXQocmVmZXJlbmNlOiBhbnkpOiBPYnNlcnZhYmxlPEFjdGlvblN0YXR1dD4ge1xuICAgICAgICBsZXQgdXJsID0gJ2FwaSc7XG4gICAgICAgIGlmICh0aGlzLnByZWZpeCkge1xuICAgICAgICAgICAgdXJsID0gYGFwaS8ke3RoaXMucHJlZml4fWA7XG4gICAgICAgIH1cbiAgICAgICAgdXJsID0gYCR7dXJsfS8ke3JlZmVyZW5jZX0vYWN0aW9uLXN0YXR1dGA7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHVybCkucGlwZShcbiAgICAgICAgICAgIG1hcChzdGF0dXMgPT4gc3RhdHVzIGFzIEFjdGlvblN0YXR1dCksXG4gICAgICAgICAgICBjYXRjaEVycm9yKChyZXNwb25zZTogdW5rbm93bikgPT5cbiAgICAgICAgICAgICAgICB0aGlzLmhhbmRsZUdlc2RlbUVycm9yKHJlZmVyZW5jZSwgbnVsbCwgcmVzcG9uc2UpXG4gICAgICAgICAgICApXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICB2YWxpZGF0ZShmb3JtOiBhbnkpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgICAgICBsZXQgdXJsID0gJ2FwaS92YWxpZGF0ZWQtb25seSc7XG4gICAgICAgIGlmICh0aGlzLnByZWZpeCkge1xuICAgICAgICAgICAgdXJsID0gYGFwaS8ke3RoaXMucHJlZml4fS92YWxpZGF0ZWQtb25seWA7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdGhpcy5wb3N0VG9VcmwoZm9ybSwgdXJsLCBmYWxzZSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBwb3N0VG9VcmwoXG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgICAgIGZvcm06IGFueSxcbiAgICAgICAgdXJsOiBzdHJpbmcsXG4gICAgICAgIGRpc3BsYXlTdWNjZXNzTWVzc2FnZTogYm9vbGVhblxuICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgICk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgICAgIGNvbnN0IHJlQ2FwdGNoYUJ5UGFzc1VVSUQgPVxuICAgICAgICAgICAgdGhpcy5yb3V0ZS5zbmFwc2hvdC5xdWVyeVBhcmFtcy5yZUNhcHRjaGFCeVBhc3NVVUlEO1xuXG4gICAgICAgIGxldCBwYXJhbXMgPSBuZXcgSHR0cFBhcmFtcygpO1xuICAgICAgICBpZiAoISFyZUNhcHRjaGFCeVBhc3NVVUlEKSB7XG4gICAgICAgICAgICBwYXJhbXMgPSBwYXJhbXMuc2V0KCdyZUNhcHRjaGFCeVBhc3NVVUlEJywgcmVDYXB0Y2hhQnlQYXNzVVVJRCk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKCEhdGhpcy5fbGFzdFJlc3BvbnNlPy5tZXRhPy5yZWZlcmVuY2UpIHtcbiAgICAgICAgICAgIHBhcmFtcyA9IHBhcmFtcy5zZXQoJ3JlZmVyZW5jZScsIHRoaXMuX2xhc3RSZXNwb25zZS5tZXRhLnJlZmVyZW5jZSk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMuX2NhcHRjaGFUb2tlbikge1xuICAgICAgICAgICAgcGFyYW1zID0gcGFyYW1zLnNldCgncmVDYXB0Y2hhVG9rZW4nLCB0aGlzLl9jYXB0Y2hhVG9rZW4pO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHVybCwgZm9ybSwgeyBwYXJhbXMgfSkucGlwZShcbiAgICAgICAgICAgIHRhcCh0aGlzLmVtaXRSZXNwb25zZS5iaW5kKHRoaXMpKSxcbiAgICAgICAgICAgIGNhdGNoRXJyb3IoKHJlc3BvbnNlOiB1bmtub3duKSA9PlxuICAgICAgICAgICAgICAgIHRoaXMuaGFuZGxlR2VzZGVtRXJyb3IobnVsbCwgcmVDYXB0Y2hhQnlQYXNzVVVJRCwgcmVzcG9uc2UpXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgc3dpdGNoTWFwKChyZXNwOiBGb3JtUG9zdFJlc3BvbnNlPEkxOG5Gb3JtPikgPT5cbiAgICAgICAgICAgICAgICBmb3JrSm9pbihbXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2Vzc2lvbkluZm8uZGF0YS5waXBlKFxuICAgICAgICAgICAgICAgICAgICAgICAgZmlyc3QoKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcChkYXRhID0+ICEhZGF0YSlcbiAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgb2YocmVzcClcbiAgICAgICAgICAgICAgICBdKVxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIHRhcCgoW2lzQ29ubmVjdGVkLCByZXNwXSkgPT4ge1xuICAgICAgICAgICAgICAgIC8vIElmIHRoZSB1c2VyIGlzIGNvbm5lY3RlZCwgZGlzcGxheSBhIG1lc3NhZ2UgdG8gbWFrZSBjbGVhciB0aGF0XG4gICAgICAgICAgICAgICAgLy8gbm90aGluZyBpcyBsb3N0IVxuICAgICAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICAgICAgaXNDb25uZWN0ZWQgJiZcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheVN1Y2Nlc3NNZXNzYWdlICYmXG4gICAgICAgICAgICAgICAgICAgICEhcmVzcD8ubWV0YT8ucmVmZXJlbmNlPy5sZW5ndGhcbiAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5ncm93bFNlcnZpY2UuYWRkV2l0aFR5cGUoXG4gICAgICAgICAgICAgICAgICAgICAgICBHcm93bFR5cGUuU1VDQ0VTUyxcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZGljdGlvbmFyeVNlcnZpY2UuZ2V0S2V5U3luYyhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnZ2VzZGVtLWhhbmRsZXIuc2F2ZS1jb25maXJtYXRpb24ubGFiZWwnXG4gICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBtYXAoKCkgPT4gdHJ1ZSlcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGVtaXRSZXNwb25zZShcbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICAgICAgcmVzcG9uc2U6IEZvcm1Qb3N0UmVzcG9uc2U8YW55PixcbiAgICAgICAgc2hvdWxkRGlzcGF0Y2hFcnJvcnM6IGJvb2xlYW4gPSB0cnVlXG4gICAgKTogdm9pZCB7XG4gICAgICAgIGlmICghcmVzcG9uc2UubWV0YS5jcml0aWNhbCkge1xuICAgICAgICAgICAgdGhpcy5fbGFzdFJlc3BvbnNlID0gcmVzcG9uc2U7XG4gICAgICAgICAgICB0aGlzLl91cGRhdGVGb3JtRGF0YVN1YmplY3QubmV4dChyZXNwb25zZS5mb3JtKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuX2xhc3RSZXNwb25zZSA9IG5ldyBGb3JtUG9zdFJlc3BvbnNlKCk7XG4gICAgICAgICAgICB0aGlzLl9sYXN0UmVzcG9uc2UubWV0YS5jcml0aWNhbCA9IHRydWU7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnZhbGlkYXRpb25IYW5kbGVyU2VydmljZS51cGRhdGVFcnJvcnMoXG4gICAgICAgICAgICBzaG91bGREaXNwYXRjaEVycm9ycyA/IHJlc3BvbnNlLmVycm9ycyA6IFtdXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBoYW5kbGVHZXNkZW1FcnJvcihcbiAgICAgICAgcmVxdWVzdGVkUmVmZXJlbmNlOiBzdHJpbmcsXG4gICAgICAgIHJlQ2FwdGNoYUJ5UGFzc1VVSUQ6IHN0cmluZyxcbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICAgICAgcmVzcG9uc2U6IEh0dHBFcnJvclJlc3BvbnNlIHwgYW55XG4gICAgKTogT2JzZXJ2YWJsZTxuZXZlcj4ge1xuICAgICAgICBjb25zdCByZWZlcmVuY2UgPSB0aGlzLl9sYXN0UmVzcG9uc2VcbiAgICAgICAgICAgID8gdGhpcy5fbGFzdFJlc3BvbnNlLm1ldGEucmVmZXJlbmNlXG4gICAgICAgICAgICA6IHJlcXVlc3RlZFJlZmVyZW5jZTtcblxuICAgICAgICByZXR1cm4gdGhpcy5lcnJvckhhbmRsZXJTZXJ2aWNlLmhhbmRsZUdlc2RlbUVycm9yKFxuICAgICAgICAgICAgdGhpcy5wcmVmaXgsXG4gICAgICAgICAgICByZWZlcmVuY2UsXG4gICAgICAgICAgICByZUNhcHRjaGFCeVBhc3NVVUlELFxuICAgICAgICAgICAgcmVzcG9uc2VcbiAgICAgICAgKTtcbiAgICB9XG59XG4iXX0=
|
|
@@ -19,7 +19,7 @@ export const gesdemLoaderGuard = (next) => {
|
|
|
19
19
|
return of(true);
|
|
20
20
|
}
|
|
21
21
|
return gesdemService
|
|
22
|
-
.require(next.params.reference, true, true)
|
|
22
|
+
.require(next.params.reference, next.queryParams?.reCaptchaByPassUUID, true, true)
|
|
23
23
|
.pipe(catchError(() => of(true)));
|
|
24
24
|
};
|
|
25
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VzZGVtLWxvYWRlci5ndWFyZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3ByZXN0YXRpb25zLW5nL3NyYy9nZXNkZW0vZ2VzZGVtLWxvYWRlci5ndWFyZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQWMsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3RDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUU1QyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUN0RixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDcEQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFaEUsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQWtCLENBQzVDLElBQTRCLEVBQ1QsRUFBRTtJQUNyQixNQUFNLGFBQWEsR0FBRyxjQUFjLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO0lBQ3hFLE1BQU0sR0FBRyxHQUFHLGNBQWMsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLHNCQUFzQixDQUFDLENBQUM7SUFFaEUsTUFBTSxLQUFLLEdBQUcsc0JBQXNCLENBQUMscUJBQXFCLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDakUsR0FBRyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUVyQjs7O09BR0c7SUFDSCxJQUNJLElBQUksQ0FBQyxVQUFVO1FBQ2YsSUFBSSxDQUFDLFVBQVUsQ0FBQyxXQUFXO1FBQzNCLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxXQUFXLENBQUMsSUFBSSxLQUFLLFFBQVE7WUFDMUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxXQUFXLENBQUMsSUFBSSxLQUFLLEtBQUssQ0FBQyxFQUNqRCxDQUFDO1FBQ0MsT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDcEIsQ0FBQztJQUVELE9BQU8sYUFBYTtTQUNmLE9BQU8sQ0FDSixJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsRUFDckIsSUFBSSxDQUFDLFdBQVcsRUFBRSxtQkFBbUIsRUFDckMsSUFBSSxFQUNKLElBQUksQ0FDUDtTQUNBLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUMxQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90LCBDYW5BY3RpdmF0ZUZuIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBjYXRjaEVycm9yIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBGb2Vobk5hdmlnYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vZm9laG4tbmF2aWdhdGlvbi9mb2Vobi1uYXZpZ2F0aW9uLnNlcnZpY2UnO1xuaW1wb3J0IHsgU2VydmljZUxvY2F0b3IgfSBmcm9tICcuLi9zZXJ2aWNlLWxvY2F0b3InO1xuaW1wb3J0IHsgR2VzZGVtSGFuZGxlclNlcnZpY2UgfSBmcm9tICcuL2dlc2RlbS1oYW5kbGVyLnNlcnZpY2UnO1xuXG5leHBvcnQgY29uc3QgZ2VzZGVtTG9hZGVyR3VhcmQ6IENhbkFjdGl2YXRlRm4gPSAoXG4gICAgbmV4dDogQWN0aXZhdGVkUm91dGVTbmFwc2hvdFxuKTogT2JzZXJ2YWJsZTxib29sZWFuPiA9PiB7XG4gICAgY29uc3QgZ2VzZGVtU2VydmljZSA9IFNlcnZpY2VMb2NhdG9yLmluamVjdG9yLmdldChHZXNkZW1IYW5kbGVyU2VydmljZSk7XG4gICAgY29uc3QgbmF2ID0gU2VydmljZUxvY2F0b3IuaW5qZWN0b3IuZ2V0KEZvZWhuTmF2aWdhdGlvblNlcnZpY2UpO1xuXG4gICAgY29uc3Qgcm91dGUgPSBGb2Vobk5hdmlnYXRpb25TZXJ2aWNlLmdldFJvb3RSb3V0ZVJlY3Vyc2l2ZShuZXh0KTtcbiAgICBuYXYuaW5pdFJvdXRlKHJvdXRlKTtcblxuICAgIC8qXG4gICAgICogRG8gbm90IGNhbGwgcmVxdWlyZSBvbiBnZXNkZW1TZXJ2aWNlIHNpbmNlIGl0IGNvdWxkIGJlIHRoYXQgY2FsbFxuICAgICAqIHRoYXQgdHJpZ2dlcnMgYSByZWRpcmVjdGlvbiB0byBHZXNkZW1FcnJvckNvbXBvbmVudCBvbiBwYXRoIC9lcnJldXJcbiAgICAgKi9cbiAgICBpZiAoXG4gICAgICAgIG5leHQuZmlyc3RDaGlsZCAmJlxuICAgICAgICBuZXh0LmZpcnN0Q2hpbGQucm91dGVDb25maWcgJiZcbiAgICAgICAgKG5leHQuZmlyc3RDaGlsZC5yb3V0ZUNvbmZpZy5wYXRoID09PSAnZXJyZXVyJyB8fFxuICAgICAgICAgICAgbmV4dC5maXJzdENoaWxkLnJvdXRlQ29uZmlnLnBhdGggPT09ICc0MDQnKVxuICAgICkge1xuICAgICAgICByZXR1cm4gb2YodHJ1ZSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGdlc2RlbVNlcnZpY2VcbiAgICAgICAgLnJlcXVpcmUoXG4gICAgICAgICAgICBuZXh0LnBhcmFtcy5yZWZlcmVuY2UsXG4gICAgICAgICAgICBuZXh0LnF1ZXJ5UGFyYW1zPy5yZUNhcHRjaGFCeVBhc3NVVUlELFxuICAgICAgICAgICAgdHJ1ZSxcbiAgICAgICAgICAgIHRydWVcbiAgICAgICAgKVxuICAgICAgICAucGlwZShjYXRjaEVycm9yKCgpID0+IG9mKHRydWUpKSk7XG59O1xuIl19
|
|
@@ -20,7 +20,7 @@ import * as i11 from "../../foehn-input/foehn-input-text.component";
|
|
|
20
20
|
import * as i12 from "../../foehn-form/foehn-form.component";
|
|
21
21
|
import * as i13 from "../../sdk-recaptcha/sdk-recaptcha.component";
|
|
22
22
|
export class GesdemActionRecoveryLoginComponent {
|
|
23
|
-
constructor(recoveryService, growlService, confirmModalService, validationHandler, applicationInfoService, gesDemHandlerService, dictionaryService, router, eventsLoggerService) {
|
|
23
|
+
constructor(recoveryService, growlService, confirmModalService, validationHandler, applicationInfoService, gesDemHandlerService, dictionaryService, router, route, eventsLoggerService) {
|
|
24
24
|
this.recoveryService = recoveryService;
|
|
25
25
|
this.growlService = growlService;
|
|
26
26
|
this.confirmModalService = confirmModalService;
|
|
@@ -29,6 +29,7 @@ export class GesdemActionRecoveryLoginComponent {
|
|
|
29
29
|
this.gesDemHandlerService = gesDemHandlerService;
|
|
30
30
|
this.dictionaryService = dictionaryService;
|
|
31
31
|
this.router = router;
|
|
32
|
+
this.route = route;
|
|
32
33
|
this.eventsLoggerService = eventsLoggerService;
|
|
33
34
|
this.missingRecoveryInfos = false;
|
|
34
35
|
this.alreadyTransferred = false;
|
|
@@ -63,7 +64,8 @@ export class GesdemActionRecoveryLoginComponent {
|
|
|
63
64
|
}
|
|
64
65
|
validateOtp() {
|
|
65
66
|
this.eventsLoggerService.addEvent(SdkEventType.RECOVERY_LOGIN_STARTED);
|
|
66
|
-
if (!this.
|
|
67
|
+
if (!this.route.snapshot.queryParams.reCaptchaByPassUUID &&
|
|
68
|
+
!this.recoveryService.hasCaptchaToken()) {
|
|
67
69
|
this.loginForm.reset();
|
|
68
70
|
this.validationHandler.shouldDisplayErrors(true);
|
|
69
71
|
this.validationHandler.updateErrors([
|
|
@@ -85,7 +87,7 @@ export class GesdemActionRecoveryLoginComponent {
|
|
|
85
87
|
if (isPasswordValid) {
|
|
86
88
|
this.eventsLoggerService.addEvent(SdkEventType.RECOVERY_LOGIN_SUCCESS);
|
|
87
89
|
this.gesDemHandlerService
|
|
88
|
-
.retrieve(this.reference)
|
|
90
|
+
.retrieve(this.reference, null)
|
|
89
91
|
// eslint-disable-next-line rxjs/no-nested-subscribe,rxjs-angular/prefer-async-pipe
|
|
90
92
|
.subscribe((response) => {
|
|
91
93
|
if (response) {
|
|
@@ -148,13 +150,13 @@ export class GesdemActionRecoveryLoginComponent {
|
|
|
148
150
|
// eslint-disable-next-line rxjs-angular/prefer-async-pipe
|
|
149
151
|
.subscribe(otpRecipient => (this.otpRecipient = otpRecipient));
|
|
150
152
|
}
|
|
151
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: GesdemActionRecoveryLoginComponent, deps: [{ token: i1.GesdemActionRecoveryService }, { token: i2.GrowlBrokerService }, { token: i3.FoehnConfirmModalService }, { token: i4.ValidationHandlerService }, { token: i5.ApplicationInfoService }, { token: i6.GesdemHandlerService }, { token: i7.SdkDictionaryService }, { token: i8.Router }, { token: i9.SdkEventsLoggerService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
153
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: GesdemActionRecoveryLoginComponent, deps: [{ token: i1.GesdemActionRecoveryService }, { token: i2.GrowlBrokerService }, { token: i3.FoehnConfirmModalService }, { token: i4.ValidationHandlerService }, { token: i5.ApplicationInfoService }, { token: i6.GesdemHandlerService }, { token: i7.SdkDictionaryService }, { token: i8.Router }, { token: i8.ActivatedRoute }, { token: i9.SdkEventsLoggerService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
152
154
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: GesdemActionRecoveryLoginComponent, selector: "gesdem-action-recovery-login", inputs: { reference: "reference", redirectTarget: "redirectTarget" }, viewQueries: [{ propertyName: "loginForm", first: true, predicate: FoehnFormComponent, descendants: true }, { propertyName: "recaptchaComponent", first: true, predicate: SdkRecaptchaComponent, descendants: true }], ngImport: i0, template: "<div class=\"container mt-5\">\n <div class=\"alert alert-danger\" *ngIf=\"missingRecoveryInfos\">\n Vous n'avez pas indiqu\u00E9 d'informations de contact pour la reprise de\n cette demande, merci de contacter le support.\n </div>\n <div class=\"alert alert-danger\" *ngIf=\"alreadyTransferred\">\n La demande que vous essayez de reprendre a d\u00E9j\u00E0 \u00E9t\u00E9 transmise, elle\n n'est plus modifiable.\n </div>\n\n <foehn-form [shouldDisplayAlertSummary]=\"false\" *ngIf=\"otpRecipient\">\n <div class=\"row\">\n <div class=\"col-md-8\">\n <foehn-input-text\n [label]=\"\n 'Veuillez saisir le code envoy\u00E9 par SMS au num\u00E9ro ' +\n otpRecipient\n \"\n [(model)]=\"otp\"\n name=\"otp\"\n [required]=\"true\"\n ></foehn-input-text>\n </div>\n </div>\n\n <div class=\"row\">\n <div class=\"col-md-8\">\n Pour obtenir un nouveau code, vous devez recliquer sur le\n <a [href]=\"redirectTarget\">lien</a>\n de reprise de la demande\n </div>\n </div>\n\n <br />\n\n <div class=\"row\">\n <div class=\"col-md-8\">\n <captcha></captcha>\n\n <button\n id=\"nextButton\"\n type=\"submit\"\n class=\"btn btn-dark float-end\"\n (click)=\"validateOtp()\"\n >\n Suivant\n </button>\n </div>\n </div>\n </foehn-form>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i10.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i11.FoehnInputTextComponent, selector: "foehn-input-text", inputs: ["numberOnly"] }, { kind: "component", type: i12.FoehnFormComponent, selector: "foehn-form", inputs: ["shouldDisplayAlertSummary"] }, { kind: "component", type: i13.SdkRecaptchaComponent, selector: "captcha" }] }); }
|
|
153
155
|
}
|
|
154
156
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: GesdemActionRecoveryLoginComponent, decorators: [{
|
|
155
157
|
type: Component,
|
|
156
158
|
args: [{ selector: 'gesdem-action-recovery-login', template: "<div class=\"container mt-5\">\n <div class=\"alert alert-danger\" *ngIf=\"missingRecoveryInfos\">\n Vous n'avez pas indiqu\u00E9 d'informations de contact pour la reprise de\n cette demande, merci de contacter le support.\n </div>\n <div class=\"alert alert-danger\" *ngIf=\"alreadyTransferred\">\n La demande que vous essayez de reprendre a d\u00E9j\u00E0 \u00E9t\u00E9 transmise, elle\n n'est plus modifiable.\n </div>\n\n <foehn-form [shouldDisplayAlertSummary]=\"false\" *ngIf=\"otpRecipient\">\n <div class=\"row\">\n <div class=\"col-md-8\">\n <foehn-input-text\n [label]=\"\n 'Veuillez saisir le code envoy\u00E9 par SMS au num\u00E9ro ' +\n otpRecipient\n \"\n [(model)]=\"otp\"\n name=\"otp\"\n [required]=\"true\"\n ></foehn-input-text>\n </div>\n </div>\n\n <div class=\"row\">\n <div class=\"col-md-8\">\n Pour obtenir un nouveau code, vous devez recliquer sur le\n <a [href]=\"redirectTarget\">lien</a>\n de reprise de la demande\n </div>\n </div>\n\n <br />\n\n <div class=\"row\">\n <div class=\"col-md-8\">\n <captcha></captcha>\n\n <button\n id=\"nextButton\"\n type=\"submit\"\n class=\"btn btn-dark float-end\"\n (click)=\"validateOtp()\"\n >\n Suivant\n </button>\n </div>\n </div>\n </foehn-form>\n</div>\n" }]
|
|
157
|
-
}], ctorParameters: () => [{ type: i1.GesdemActionRecoveryService }, { type: i2.GrowlBrokerService }, { type: i3.FoehnConfirmModalService }, { type: i4.ValidationHandlerService }, { type: i5.ApplicationInfoService }, { type: i6.GesdemHandlerService }, { type: i7.SdkDictionaryService }, { type: i8.Router }, { type: i9.SdkEventsLoggerService }], propDecorators: { reference: [{
|
|
159
|
+
}], ctorParameters: () => [{ type: i1.GesdemActionRecoveryService }, { type: i2.GrowlBrokerService }, { type: i3.FoehnConfirmModalService }, { type: i4.ValidationHandlerService }, { type: i5.ApplicationInfoService }, { type: i6.GesdemHandlerService }, { type: i7.SdkDictionaryService }, { type: i8.Router }, { type: i8.ActivatedRoute }, { type: i9.SdkEventsLoggerService }], propDecorators: { reference: [{
|
|
158
160
|
type: Input
|
|
159
161
|
}], redirectTarget: [{
|
|
160
162
|
type: Input
|
|
@@ -165,4 +167,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
165
167
|
type: ViewChild,
|
|
166
168
|
args: [SdkRecaptchaComponent]
|
|
167
169
|
}] } });
|
|
168
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VzZGVtLWFjdGlvbi1yZWNvdmVyeS1sb2dpbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcmVzdGF0aW9ucy1uZy9zcmMvZ2VzZGVtLWFjdGlvbi1yZWNvdmVyeS9nZXNkZW0tYWN0aW9uLXJlY292ZXJ5LWxvZ2luL2dlc2RlbS1hY3Rpb24tcmVjb3ZlcnktbG9naW4uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJlc3RhdGlvbnMtbmcvc3JjL2dlc2RlbS1hY3Rpb24tcmVjb3ZlcnkvZ2VzZGVtLWFjdGlvbi1yZWNvdmVyeS1sb2dpbi9nZXNkZW0tYWN0aW9uLXJlY292ZXJ5LWxvZ2luLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVwRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2xDLE9BQU8sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRzNELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBRTNFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUkxRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFFdEUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sNkNBQTZDLENBQUM7Ozs7Ozs7Ozs7Ozs7OztBQVVwRixNQUFNLE9BQU8sa0NBQWtDO0lBa0IzQyxZQUNZLGVBQTRDLEVBQzVDLFlBQWdDLEVBQ2hDLG1CQUE2QyxFQUM3QyxpQkFBMkMsRUFDM0Msc0JBQThDLEVBQzlDLG9CQUEwQyxFQUMxQyxpQkFBdUMsRUFDdkMsTUFBYyxFQUNkLG1CQUEyQztRQVIzQyxvQkFBZSxHQUFmLGVBQWUsQ0FBNkI7UUFDNUMsaUJBQVksR0FBWixZQUFZLENBQW9CO1FBQ2hDLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBMEI7UUFDN0Msc0JBQWlCLEdBQWpCLGlCQUFpQixDQUEwQjtRQUMzQywyQkFBc0IsR0FBdEIsc0JBQXNCLENBQXdCO1FBQzlDLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBc0I7UUFDMUMsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFzQjtRQUN2QyxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2Qsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUF3QjtRQWR2RCx5QkFBb0IsR0FBRyxLQUFLLENBQUM7UUFDN0IsdUJBQWtCLEdBQUcsS0FBSyxDQUFDO0lBY3hCLENBQUM7SUFFSixRQUFRO1FBQ0osSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUM7UUFDekIsSUFBSSxDQUFDLG9CQUFvQixHQUFHLEtBQUssQ0FBQztRQUNsQyxJQUFJLENBQUMsc0JBQXNCLENBQUMsZ0JBQWdCO2FBQ3ZDLElBQUksQ0FDRCxHQUFHLENBQUMsWUFBWSxDQUFDLEVBQUU7WUFDZixJQUFJLFlBQVksQ0FBQyxlQUFlLEVBQUUsQ0FBQztnQkFDL0IsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1lBQ3pCLENBQUM7aUJBQU0sQ0FBQztnQkFDSixJQUFJLENBQUMsbUJBQW1CO3FCQUNuQixnQkFBZ0IsQ0FBQztvQkFDZCxLQUFLLEVBQUUsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFVBQVUsQ0FDcEMsb0RBQW9ELENBQ3ZEO29CQUNELFdBQVcsRUFBRSxJQUFJLENBQUMsaUJBQWlCLENBQUMsVUFBVSxDQUMxQyxvREFBb0QsQ0FDdkQ7b0JBQ0QsYUFBYSxFQUNULElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxVQUFVLENBQzdCLHdEQUF3RCxDQUMzRDtvQkFDTCxnQkFBZ0IsRUFBRSxLQUFLO29CQUN2QixTQUFTLEVBQUUsS0FBSztpQkFDbkIsQ0FBQztxQkFDRCxJQUFJLENBQ0QsR0FBRyxFQUFFO29CQUNELHdFQUF3RTtvQkFDeEUsTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEdBQUcsRUFBRSxDQUFDO2dCQUM5QixDQUFDO2dCQUNELGdFQUFnRTtnQkFDaEUsR0FBRyxFQUFFLEdBQUUsQ0FBQyxDQUNYLENBQUM7WUFDVixDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQ0w7WUFDRCwwREFBMEQ7YUFDekQsU0FBUyxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUVELFdBQVc7UUFDUCxJQUFJLENBQUMsbUJBQW1CLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO1FBRXZFLElBQUksQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLGVBQWUsRUFBRSxFQUFFLENBQUM7WUFDMUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUN2QixJQUFJLENBQUMsaUJBQWlCLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDakQsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFlBQVksQ0FBQztnQkFDaEM7b0JBQ0ksSUFBSSxFQUFFLFdBQVc7b0JBQ2pCLElBQUksRUFBRSxXQUFXO29CQUNqQixPQUFPLEVBQUUsa0JBQWtCO2lCQUM5QjthQUNKLENBQUMsQ0FBQztZQUVILElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxRQUFRLENBQzdCLFlBQVksQ0FBQyxxQkFBcUIsQ0FDckMsQ0FBQztZQUVGLE9BQU87UUFDWCxDQUFDO1FBRUQsSUFBSSxDQUFDLGVBQWU7YUFDZixxQkFBcUIsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUM7YUFDL0MsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQztZQUN4QywwREFBMEQ7YUFDekQsU0FBUyxDQUFDLGVBQWUsQ0FBQyxFQUFFO1lBQ3pCLE1BQU0sTUFBTSxHQUFHLEVBQUUsQ0FBQztZQUNsQixJQUFJLGVBQWUsRUFBRSxDQUFDO2dCQUNsQixJQUFJLENBQUMsbUJBQW1CLENBQUMsUUFBUSxDQUM3QixZQUFZLENBQUMsc0JBQXNCLENBQ3RDLENBQUM7Z0JBQ0YsSUFBSSxDQUFDLG9CQUFvQjtxQkFDcEIsUUFBUSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUM7b0JBQ3pCLG1GQUFtRjtxQkFDbEYsU0FBUyxDQUFDLENBQUMsUUFBaUIsRUFBRSxFQUFFO29CQUM3QixJQUFJLFFBQVEsRUFBRSxDQUFDO3dCQUNYLElBQUksQ0FBQyxZQUFZLENBQUMsb0NBQW9DLENBQ2xELFNBQVMsQ0FBQyxPQUFPLEVBQ2pCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxVQUFVLENBQzdCLHlDQUF5QyxFQUN6Qzs0QkFDSSxJQUFJLEVBQUUsSUFBSSxDQUFDLG9CQUFvQjtpQ0FDMUIsWUFBWSxDQUFDLElBQUk7aUNBQ2pCLHNCQUFzQjt5QkFDOUIsQ0FDSixFQUNELEVBQUUsQ0FDTCxDQUFDO29CQUNOLENBQUM7b0JBQ0QsTUFBTSxNQUFNLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxNQUFNO3dCQUM3QyxFQUFFLE1BQU07d0JBQ1IsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDLG9CQUFvQixDQUFDLE1BQU0sRUFBRTt3QkFDeEMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztvQkFDVCxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FDckIsR0FBRyxNQUFNLElBQUksSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUNoQyxDQUFDO2dCQUNOLENBQUMsQ0FBQyxDQUFDO1lBQ1gsQ0FBQztpQkFBTSxDQUFDO2dCQUNKLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxRQUFRLENBQzdCLFlBQVksQ0FBQyxxQkFBcUIsQ0FDckMsQ0FBQztnQkFDRixJQUFJLGVBQWUsS0FBSyxLQUFLLEVBQUUsQ0FBQztvQkFDNUIsTUFBTSxDQUFDLElBQUksQ0FBQzt3QkFDUixJQUFJLEVBQUUsS0FBSzt3QkFDWCxJQUFJLEVBQUUsWUFBWTt3QkFDbEIsT0FBTyxFQUFFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxVQUFVLENBQ3RDLGdEQUFnRCxDQUNuRDtxQkFDSixDQUFDLENBQUM7Z0JBQ1AsQ0FBQztxQkFBTSxDQUFDO29CQUNKLE1BQU0sQ0FBQyxJQUFJLENBQUM7d0JBQ1IsSUFBSSxFQUFFLFdBQVc7d0JBQ2pCLElBQUksRUFBRSxXQUFXO3dCQUNqQixPQUFPLEVBQUUsa0JBQWtCO3FCQUM5QixDQUFDLENBQUM7Z0JBQ1AsQ0FBQztnQkFFRCxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxDQUFDO2dCQUN2QixJQUFJLENBQUMsaUJBQWlCLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQ2pELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLENBQUM7Z0JBQzVDLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLENBQUM7WUFDakQsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ1gsQ0FBQztJQUVPLGFBQWE7UUFDakIsSUFBSSxDQUFDLGVBQWU7YUFDZixhQUFhLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQzthQUM3QixJQUFJLENBQ0QsVUFBVSxDQUFDLENBQUMsUUFBaUIsRUFBRSxFQUFFO1lBQzdCLDhEQUE4RDtZQUM5RCxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxHQUFRLFFBQVEsQ0FBQztZQUN4QyxJQUFJLENBQUMsb0JBQW9CO2dCQUNyQixNQUFNLEtBQUssR0FBRztvQkFDZCxLQUFLO29CQUNMLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsSUFBSSxLQUFLLDJCQUEyQixDQUFDO1lBRTNELElBQUksQ0FBQyxrQkFBa0I7Z0JBQ25CLE1BQU0sS0FBSyxHQUFHO29CQUNkLEtBQUs7b0JBQ0wsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxJQUFJLEtBQUssNEJBQTRCLENBQUM7WUFFNUQsSUFDSSxDQUFDLElBQUksQ0FBQyxvQkFBb0I7Z0JBQzFCLENBQUMsSUFBSSxDQUFDLGtCQUFrQixFQUMxQixDQUFDO2dCQUNDLElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxDQUN6QixTQUFTLENBQUMsTUFBTSxFQUNoQixJQUFJLENBQUMsaUJBQWlCLENBQUMsVUFBVSxDQUM3QiwrREFBK0QsQ0FDbEUsQ0FDSixDQUFDO1lBQ04sQ0FBQztZQUVELE9BQU8sVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2xDLENBQUMsQ0FBQyxDQUNMO1lBQ0QsMERBQTBEO2FBQ3pELFNBQVMsQ0FBQyxZQUFZLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLFlBQVksR0FBRyxZQUFZLENBQUMsQ0FBQyxDQUFDO0lBQ3ZFLENBQUM7K0dBNUxRLGtDQUFrQzttR0FBbEMsa0NBQWtDLHFMQU9oQyxrQkFBa0IscUZBR2xCLHFCQUFxQixnRENsQ3BDLGt1REFtREE7OzRGRDNCYSxrQ0FBa0M7a0JBTjlDLFNBQVM7K0JBRUksOEJBQThCO29YQU14QyxTQUFTO3NCQURSLEtBQUs7Z0JBSU4sY0FBYztzQkFEYixLQUFLO2dCQUlOLFNBQVM7c0JBRFIsU0FBUzt1QkFBQyxrQkFBa0I7Z0JBSTdCLGtCQUFrQjtzQkFEakIsU0FBUzt1QkFBQyxxQkFBcUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IHRocm93RXJyb3IgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGNhdGNoRXJyb3IsIGZpbmFsaXplLCB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IEZvZWhuQ29uZmlybU1vZGFsU2VydmljZSB9IGZyb20gJy4uLy4uL2ZvZWhuLWNvbmZpcm0tbW9kYWwvZm9laG4tY29uZmlybS1tb2RhbC5zZXJ2aWNlJztcbmltcG9ydCB7IEZvZWhuRm9ybUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2ZvZWhuLWZvcm0vZm9laG4tZm9ybS5jb21wb25lbnQnO1xuaW1wb3J0IHsgR3Jvd2xCcm9rZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vZm9laG4tZ3Jvd2wvZ3Jvd2wtYnJva2VyLnNlcnZpY2UnO1xuaW1wb3J0IHsgR3Jvd2xUeXBlIH0gZnJvbSAnLi4vLi4vZm9laG4tZ3Jvd2wvZ3Jvd2wtdHlwZXMnO1xuaW1wb3J0IHsgR2VzZGVtSGFuZGxlclNlcnZpY2UgfSBmcm9tICcuLi8uLi9nZXNkZW0vZ2VzZGVtLWhhbmRsZXIuc2VydmljZSc7XG5pbXBvcnQgeyBBcHBsaWNhdGlvbkluZm9TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2RrLWFwcGluZm8vYXBwbGljYXRpb24taW5mby5zZXJ2aWNlJztcbmltcG9ydCB7IFNka0RpY3Rpb25hcnlTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2RrLWRpY3Rpb25hcnkvc2RrLWRpY3Rpb25hcnkuc2VydmljZSc7XG5pbXBvcnQgeyBTZGtFdmVudFR5cGUgfSBmcm9tICcuLi8uLi9zZGstZXZlbnRzLWxvZ2dlci9zZGstZXZlbnQtdHlwZSc7XG5pbXBvcnQgeyBTZGtFdmVudHNMb2dnZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2RrLWV2ZW50cy1sb2dnZXIvc2RrLWV2ZW50cy1sb2dnZXIuc2VydmljZSc7XG5pbXBvcnQgeyBTZGtSZWNhcHRjaGFDb21wb25lbnQgfSBmcm9tICcuLi8uLi9zZGstcmVjYXB0Y2hhL3Nkay1yZWNhcHRjaGEuY29tcG9uZW50JztcbmltcG9ydCB7IFZhbGlkYXRpb25IYW5kbGVyU2VydmljZSB9IGZyb20gJy4uLy4uL3ZhbGlkYXRpb24vdmFsaWRhdGlvbi1oYW5kbGVyLnNlcnZpY2UnO1xuaW1wb3J0IHsgR2VzZGVtQWN0aW9uUmVjb3ZlcnlTZXJ2aWNlIH0gZnJvbSAnLi4vZ2VzZGVtLWFjdGlvbi1yZWNvdmVyeS5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9jb21wb25lbnQtc2VsZWN0b3JcbiAgICBzZWxlY3RvcjogJ2dlc2RlbS1hY3Rpb24tcmVjb3ZlcnktbG9naW4nLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9nZXNkZW0tYWN0aW9uLXJlY292ZXJ5LWxvZ2luLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9nZXNkZW0tYWN0aW9uLXJlY292ZXJ5LWxvZ2luLmNvbXBvbmVudC5jc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBHZXNkZW1BY3Rpb25SZWNvdmVyeUxvZ2luQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgICBASW5wdXQoKVxuICAgIHJlZmVyZW5jZTogc3RyaW5nO1xuXG4gICAgQElucHV0KClcbiAgICByZWRpcmVjdFRhcmdldDogc3RyaW5nO1xuXG4gICAgQFZpZXdDaGlsZChGb2VobkZvcm1Db21wb25lbnQpXG4gICAgbG9naW5Gb3JtOiBGb2VobkZvcm1Db21wb25lbnQ7XG5cbiAgICBAVmlld0NoaWxkKFNka1JlY2FwdGNoYUNvbXBvbmVudClcbiAgICByZWNhcHRjaGFDb21wb25lbnQ6IFNka1JlY2FwdGNoYUNvbXBvbmVudDtcblxuICAgIG1pc3NpbmdSZWNvdmVyeUluZm9zID0gZmFsc2U7XG4gICAgYWxyZWFkeVRyYW5zZmVycmVkID0gZmFsc2U7XG4gICAgb3RwUmVjaXBpZW50OiBzdHJpbmc7XG4gICAgb3RwOiBzdHJpbmc7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSByZWNvdmVyeVNlcnZpY2U6IEdlc2RlbUFjdGlvblJlY292ZXJ5U2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBncm93bFNlcnZpY2U6IEdyb3dsQnJva2VyU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBjb25maXJtTW9kYWxTZXJ2aWNlOiBGb2VobkNvbmZpcm1Nb2RhbFNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgdmFsaWRhdGlvbkhhbmRsZXI6IFZhbGlkYXRpb25IYW5kbGVyU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBhcHBsaWNhdGlvbkluZm9TZXJ2aWNlOiBBcHBsaWNhdGlvbkluZm9TZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIGdlc0RlbUhhbmRsZXJTZXJ2aWNlOiBHZXNkZW1IYW5kbGVyU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBkaWN0aW9uYXJ5U2VydmljZTogU2RrRGljdGlvbmFyeVNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsXG4gICAgICAgIHByaXZhdGUgZXZlbnRzTG9nZ2VyU2VydmljZTogU2RrRXZlbnRzTG9nZ2VyU2VydmljZVxuICAgICkge31cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLm90cFJlY2lwaWVudCA9IG51bGw7XG4gICAgICAgIHRoaXMubWlzc2luZ1JlY292ZXJ5SW5mb3MgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5hcHBsaWNhdGlvbkluZm9TZXJ2aWNlLmN1cnJlbnRFdGFwZUluZm9cbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIHRhcChjdXJyZW50RXRhcGUgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAoY3VycmVudEV0YXBlLnJlcHJpc2VQb3NzaWJsZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zdGFydFJlY292ZXJ5KCk7XG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmNvbmZpcm1Nb2RhbFNlcnZpY2VcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAub3BlbkNvbmZpcm1Nb2RhbCh7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlOiB0aGlzLmRpY3Rpb25hcnlTZXJ2aWNlLmdldEtleVN5bmMoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnZ2VzZGVtLWFjdGlvbi1yZWNvdmVyeS1sb2dpbi5leHBpcmVkLXNlc3Npb24udGl0bGUnXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGh0bWxDb250ZW50OiB0aGlzLmRpY3Rpb25hcnlTZXJ2aWNlLmdldEtleVN5bmMoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnZ2VzZGVtLWFjdGlvbi1yZWNvdmVyeS1sb2dpbi5leHBpcmVkLXNlc3Npb24ubGFiZWwnXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9rQnV0dG9uTGFiZWw6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmRpY3Rpb25hcnlTZXJ2aWNlLmdldEtleVN5bmMoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2dlc2RlbS1hY3Rpb24tcmVjb3ZlcnktbG9naW4uZXhwaXJlZC1zZXNzaW9uLm9rLWJ1dHRvbidcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNob3dDYW5jZWxCdXR0b246IGZhbHNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbG9zZWFibGU6IGZhbHNlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAudGhlbihcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gcmVkaXJlY3QgdG8gcHJlc3RhdGlvbidzIGhvbWUgKHdpdGggd2luZG93LmxvY2F0aW9uIHRvIHJlc2V0IHRoZSBhcHApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9ICcnO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWVtcHR5LWZ1bmN0aW9uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgpID0+IHt9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcnhqcy1hbmd1bGFyL3ByZWZlci1hc3luYy1waXBlXG4gICAgICAgICAgICAuc3Vic2NyaWJlKCk7XG4gICAgfVxuXG4gICAgdmFsaWRhdGVPdHAoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZXZlbnRzTG9nZ2VyU2VydmljZS5hZGRFdmVudChTZGtFdmVudFR5cGUuUkVDT1ZFUllfTE9HSU5fU1RBUlRFRCk7XG5cbiAgICAgICAgaWYgKCF0aGlzLnJlY292ZXJ5U2VydmljZS5oYXNDYXB0Y2hhVG9rZW4oKSkge1xuICAgICAgICAgICAgdGhpcy5sb2dpbkZvcm0ucmVzZXQoKTtcbiAgICAgICAgICAgIHRoaXMudmFsaWRhdGlvbkhhbmRsZXIuc2hvdWxkRGlzcGxheUVycm9ycyh0cnVlKTtcbiAgICAgICAgICAgIHRoaXMudmFsaWRhdGlvbkhhbmRsZXIudXBkYXRlRXJyb3JzKFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIG5hbWU6ICdyZWNhcHRjaGEnLFxuICAgICAgICAgICAgICAgICAgICBjb2RlOiAncmVjYXB0Y2hhJyxcbiAgICAgICAgICAgICAgICAgICAgbWVzc2FnZTogJ0NhcHRjaGEgaW52YWxpZGUnXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXSk7XG5cbiAgICAgICAgICAgIHRoaXMuZXZlbnRzTG9nZ2VyU2VydmljZS5hZGRFdmVudChcbiAgICAgICAgICAgICAgICBTZGtFdmVudFR5cGUuUkVDT1ZFUllfTE9HSU5fRkFJTEVEXG4gICAgICAgICAgICApO1xuXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnJlY292ZXJ5U2VydmljZVxuICAgICAgICAgICAgLmNoZWNrUmVjb3ZlcnlQYXNzd29yZCh0aGlzLnJlZmVyZW5jZSwgdGhpcy5vdHApXG4gICAgICAgICAgICAucGlwZShmaW5hbGl6ZSgoKSA9PiAodGhpcy5vdHAgPSBudWxsKSkpXG4gICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcnhqcy1hbmd1bGFyL3ByZWZlci1hc3luYy1waXBlXG4gICAgICAgICAgICAuc3Vic2NyaWJlKGlzUGFzc3dvcmRWYWxpZCA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgZXJyb3JzID0gW107XG4gICAgICAgICAgICAgICAgaWYgKGlzUGFzc3dvcmRWYWxpZCkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmV2ZW50c0xvZ2dlclNlcnZpY2UuYWRkRXZlbnQoXG4gICAgICAgICAgICAgICAgICAgICAgICBTZGtFdmVudFR5cGUuUkVDT1ZFUllfTE9HSU5fU1VDQ0VTU1xuICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmdlc0RlbUhhbmRsZXJTZXJ2aWNlXG4gICAgICAgICAgICAgICAgICAgICAgICAucmV0cmlldmUodGhpcy5yZWZlcmVuY2UpXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcnhqcy9uby1uZXN0ZWQtc3Vic2NyaWJlLHJ4anMtYW5ndWxhci9wcmVmZXItYXN5bmMtcGlwZVxuICAgICAgICAgICAgICAgICAgICAgICAgLnN1YnNjcmliZSgocmVzcG9uc2U6IGJvb2xlYW4pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAocmVzcG9uc2UpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5ncm93bFNlcnZpY2UuYWRkV2l0aFR5cGVBbmRUaW1lVG9EaXNwbGF5SW5TZWNvbmRzKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR3Jvd2xUeXBlLlNVQ0NFU1MsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmRpY3Rpb25hcnlTZXJ2aWNlLmdldEtleVN5bmMoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2dlc2RlbS1hY3Rpb24tcmVjb3ZlcnktbG9naW4uc2F2ZS5sYWJlbCcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRlOiB0aGlzLmdlc0RlbUhhbmRsZXJTZXJ2aWNlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAubGFzdFJlc3BvbnNlLm1ldGFcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5pbml0aWFsaXNhdGlvbkRhdGVUaW1lXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEwXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHByZWZpeCA9ICEhdGhpcy5nZXNEZW1IYW5kbGVyU2VydmljZS5wcmVmaXhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPy5sZW5ndGhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPyBgLyR7dGhpcy5nZXNEZW1IYW5kbGVyU2VydmljZS5wcmVmaXh9YFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6ICcnO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlQnlVcmwoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGAke3ByZWZpeH0vJHt0aGlzLnJlZmVyZW5jZX1gXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZXZlbnRzTG9nZ2VyU2VydmljZS5hZGRFdmVudChcbiAgICAgICAgICAgICAgICAgICAgICAgIFNka0V2ZW50VHlwZS5SRUNPVkVSWV9MT0dJTl9GQUlMRURcbiAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGlzUGFzc3dvcmRWYWxpZCA9PT0gZmFsc2UpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGVycm9ycy5wdXNoKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiAnb3RwJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2RlOiAnSU5WQUxJRE9UUCcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWVzc2FnZTogdGhpcy5kaWN0aW9uYXJ5U2VydmljZS5nZXRLZXlTeW5jKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnZ2VzZGVtLWFjdGlvbi1yZWNvdmVyeS1sb2dpbi5pbnZhbGlkLW90cC5sYWJlbCdcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGVycm9ycy5wdXNoKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiAncmVjYXB0Y2hhJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2RlOiAncmVjYXB0Y2hhJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtZXNzYWdlOiAnQ2FwdGNoYSBpbnZhbGlkZSdcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgdGhpcy5sb2dpbkZvcm0ucmVzZXQoKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy52YWxpZGF0aW9uSGFuZGxlci5zaG91bGREaXNwbGF5RXJyb3JzKHRydWUpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnZhbGlkYXRpb25IYW5kbGVyLnVwZGF0ZUVycm9ycyhlcnJvcnMpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnJlY2FwdGNoYUNvbXBvbmVudD8uZ3JlY2FwdGNoYT8ucmVzZXQoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHN0YXJ0UmVjb3ZlcnkoKTogdm9pZCB7XG4gICAgICAgIHRoaXMucmVjb3ZlcnlTZXJ2aWNlXG4gICAgICAgICAgICAuc3RhcnRSZWNvdmVyeSh0aGlzLnJlZmVyZW5jZSlcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIGNhdGNoRXJyb3IoKHJlc3BvbnNlOiB1bmtub3duKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHsgZXJyb3IsIHN0YXR1cyB9OiBhbnkgPSByZXNwb25zZTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5taXNzaW5nUmVjb3ZlcnlJbmZvcyA9XG4gICAgICAgICAgICAgICAgICAgICAgICBzdGF0dXMgPT09IDQwNCAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3IgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgIEpTT04ucGFyc2UoZXJyb3IpLmNvZGUgPT09ICdBQ1RJT05fUkVDT1ZFUllfTk9UX0ZPVU5EJztcblxuICAgICAgICAgICAgICAgICAgICB0aGlzLmFscmVhZHlUcmFuc2ZlcnJlZCA9XG4gICAgICAgICAgICAgICAgICAgICAgICBzdGF0dXMgPT09IDQwOSAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3IgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgIEpTT04ucGFyc2UoZXJyb3IpLmNvZGUgPT09ICdBQ1RJT05fQUxSRUFEWV9UUkFOU0ZFUlJFRCc7XG5cbiAgICAgICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgIXRoaXMubWlzc2luZ1JlY292ZXJ5SW5mb3MgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgICF0aGlzLmFscmVhZHlUcmFuc2ZlcnJlZFxuICAgICAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZ3Jvd2xTZXJ2aWNlLmFkZFdpdGhUeXBlKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdyb3dsVHlwZS5EQU5HRVIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5kaWN0aW9uYXJ5U2VydmljZS5nZXRLZXlTeW5jKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnZ2VzZGVtLWFjdGlvbi1yZWNvdmVyeS1sb2dpbi5wYXNzd29yZC1nZW5lcmF0aW9uLWZhaWxlZC5sYWJlbCdcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRocm93RXJyb3IoKCkgPT4gdHJ1ZSk7XG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSByeGpzLWFuZ3VsYXIvcHJlZmVyLWFzeW5jLXBpcGVcbiAgICAgICAgICAgIC5zdWJzY3JpYmUob3RwUmVjaXBpZW50ID0+ICh0aGlzLm90cFJlY2lwaWVudCA9IG90cFJlY2lwaWVudCkpO1xuICAgIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJjb250YWluZXIgbXQtNVwiPlxuICAgIDxkaXYgY2xhc3M9XCJhbGVydCBhbGVydC1kYW5nZXJcIiAqbmdJZj1cIm1pc3NpbmdSZWNvdmVyeUluZm9zXCI+XG4gICAgICAgIFZvdXMgbidhdmV6IHBhcyBpbmRpcXXDqSBkJ2luZm9ybWF0aW9ucyBkZSBjb250YWN0IHBvdXIgbGEgcmVwcmlzZSBkZVxuICAgICAgICBjZXR0ZSBkZW1hbmRlLCBtZXJjaSBkZSBjb250YWN0ZXIgbGUgc3VwcG9ydC5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiYWxlcnQgYWxlcnQtZGFuZ2VyXCIgKm5nSWY9XCJhbHJlYWR5VHJhbnNmZXJyZWRcIj5cbiAgICAgICAgTGEgZGVtYW5kZSBxdWUgdm91cyBlc3NheWV6IGRlIHJlcHJlbmRyZSBhIGTDqWrDoCDDqXTDqSB0cmFuc21pc2UsIGVsbGVcbiAgICAgICAgbidlc3QgcGx1cyBtb2RpZmlhYmxlLlxuICAgIDwvZGl2PlxuXG4gICAgPGZvZWhuLWZvcm0gW3Nob3VsZERpc3BsYXlBbGVydFN1bW1hcnldPVwiZmFsc2VcIiAqbmdJZj1cIm90cFJlY2lwaWVudFwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLThcIj5cbiAgICAgICAgICAgICAgICA8Zm9laG4taW5wdXQtdGV4dFxuICAgICAgICAgICAgICAgICAgICBbbGFiZWxdPVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAnVmV1aWxsZXogc2Fpc2lyIGxlIGNvZGUgZW52b3nDqSBwYXIgU01TIGF1IG51bcOpcm8gJyArXG4gICAgICAgICAgICAgICAgICAgICAgICBvdHBSZWNpcGllbnRcbiAgICAgICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICAgICAgWyhtb2RlbCldPVwib3RwXCJcbiAgICAgICAgICAgICAgICAgICAgbmFtZT1cIm90cFwiXG4gICAgICAgICAgICAgICAgICAgIFtyZXF1aXJlZF09XCJ0cnVlXCJcbiAgICAgICAgICAgICAgICA+PC9mb2Vobi1pbnB1dC10ZXh0PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtOFwiPlxuICAgICAgICAgICAgICAgIFBvdXIgb2J0ZW5pciB1biBub3V2ZWF1IGNvZGUsIHZvdXMgZGV2ZXogcmVjbGlxdWVyIHN1ciBsZVxuICAgICAgICAgICAgICAgIDxhIFtocmVmXT1cInJlZGlyZWN0VGFyZ2V0XCI+bGllbjwvYT5cbiAgICAgICAgICAgICAgICBkZSByZXByaXNlIGRlIGxhIGRlbWFuZGVcbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8YnIgLz5cblxuICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLThcIj5cbiAgICAgICAgICAgICAgICA8Y2FwdGNoYT48L2NhcHRjaGE+XG5cbiAgICAgICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgICAgIGlkPVwibmV4dEJ1dHRvblwiXG4gICAgICAgICAgICAgICAgICAgIHR5cGU9XCJzdWJtaXRcIlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJ0biBidG4tZGFyayBmbG9hdC1lbmRcIlxuICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwidmFsaWRhdGVPdHAoKVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICBTdWl2YW50XG4gICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9mb2Vobi1mb3JtPlxuPC9kaXY+XG4iXX0=
|
|
170
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VzZGVtLWFjdGlvbi1yZWNvdmVyeS1sb2dpbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcmVzdGF0aW9ucy1uZy9zcmMvZ2VzZGVtLWFjdGlvbi1yZWNvdmVyeS9nZXNkZW0tYWN0aW9uLXJlY292ZXJ5LWxvZ2luL2dlc2RlbS1hY3Rpb24tcmVjb3ZlcnktbG9naW4uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJlc3RhdGlvbnMtbmcvc3JjL2dlc2RlbS1hY3Rpb24tcmVjb3ZlcnkvZ2VzZGVtLWFjdGlvbi1yZWNvdmVyeS1sb2dpbi9nZXNkZW0tYWN0aW9uLXJlY292ZXJ5LWxvZ2luLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVwRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2xDLE9BQU8sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRzNELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBRTNFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUkxRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFFdEUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sNkNBQTZDLENBQUM7Ozs7Ozs7Ozs7Ozs7OztBQVVwRixNQUFNLE9BQU8sa0NBQWtDO0lBa0IzQyxZQUNZLGVBQTRDLEVBQzVDLFlBQWdDLEVBQ2hDLG1CQUE2QyxFQUM3QyxpQkFBMkMsRUFDM0Msc0JBQThDLEVBQzlDLG9CQUEwQyxFQUMxQyxpQkFBdUMsRUFDdkMsTUFBYyxFQUNkLEtBQXFCLEVBQ3JCLG1CQUEy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QkFDTCxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLElBQUksS0FBSyw0QkFBNEIsQ0FBQztZQUU1RCxJQUNJLENBQUMsSUFBSSxDQUFDLG9CQUFvQjtnQkFDMUIsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLEVBQzFCLENBQUM7Z0JBQ0MsSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXLENBQ3pCLFNBQVMsQ0FBQyxNQUFNLEVBQ2hCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxVQUFVLENBQzdCLCtEQUErRCxDQUNsRSxDQUNKLENBQUM7WUFDTixDQUFDO1lBRUQsT0FBTyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDbEMsQ0FBQyxDQUFDLENBQ0w7WUFDRCwwREFBMEQ7YUFDekQsU0FBUyxDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsWUFBWSxHQUFHLFlBQVksQ0FBQyxDQUFDLENBQUM7SUFDdkUsQ0FBQzsrR0FoTVEsa0NBQWtDO21HQUFsQyxrQ0FBa0MscUxBT2hDLGtCQUFrQixxRkFHbEIscUJBQXFCLGdEQ2xDcEMsa3VEQW1EQTs7NEZEM0JhLGtDQUFrQztrQkFOOUMsU0FBUzsrQkFFSSw4QkFBOEI7aVpBTXhDLFNBQVM7c0JBRFIsS0FBSztnQkFJTixjQUFjO3NCQURiLEtBQUs7Z0JBSU4sU0FBUztzQkFEUixTQUFTO3VCQUFDLGtCQUFrQjtnQkFJN0Isa0JBQWtCO3NCQURqQixTQUFTO3VCQUFDLHFCQUFxQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IHRocm93RXJyb3IgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGNhdGNoRXJyb3IsIGZpbmFsaXplLCB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IEZvZWhuQ29uZmlybU1vZGFsU2VydmljZSB9IGZyb20gJy4uLy4uL2ZvZWhuLWNvbmZpcm0tbW9kYWwvZm9laG4tY29uZmlybS1tb2RhbC5zZXJ2aWNlJztcbmltcG9ydCB7IEZvZWhuRm9ybUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2ZvZWhuLWZvcm0vZm9laG4tZm9ybS5jb21wb25lbnQnO1xuaW1wb3J0IHsgR3Jvd2xCcm9rZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vZm9laG4tZ3Jvd2wvZ3Jvd2wtYnJva2VyLnNlcnZpY2UnO1xuaW1wb3J0IHsgR3Jvd2xUeXBlIH0gZnJvbSAnLi4vLi4vZm9laG4tZ3Jvd2wvZ3Jvd2wtdHlwZXMnO1xuaW1wb3J0IHsgR2VzZGVtSGFuZGxlclNlcnZpY2UgfSBmcm9tICcuLi8uLi9nZXNkZW0vZ2VzZGVtLWhhbmRsZXIuc2VydmljZSc7XG5pbXBvcnQgeyBBcHBsaWNhdGlvbkluZm9TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2RrLWFwcGluZm8vYXBwbGljYXRpb24taW5mby5zZXJ2aWNlJztcbmltcG9ydCB7IFNka0RpY3Rpb25hcnlTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2RrLWRpY3Rpb25hcnkvc2RrLWRpY3Rpb25hcnkuc2VydmljZSc7XG5pbXBvcnQgeyBTZGtFdmVudFR5cGUgfSBmcm9tICcuLi8uLi9zZGstZXZlbnRzLWxvZ2dlci9zZGstZXZlbnQtdHlwZSc7XG5pbXBvcnQgeyBTZGtFdmVudHNMb2dnZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2RrLWV2ZW50cy1sb2dnZXIvc2RrLWV2ZW50cy1sb2dnZXIuc2VydmljZSc7XG5pbXBvcnQgeyBTZGtSZWNhcHRjaGFDb21wb25lbnQgfSBmcm9tICcuLi8uLi9zZGstcmVjYXB0Y2hhL3Nkay1yZWNhcHRjaGEuY29tcG9uZW50JztcbmltcG9ydCB7IFZhbGlkYXRpb25IYW5kbGVyU2VydmljZSB9IGZyb20gJy4uLy4uL3ZhbGlkYXRpb24vdmFsaWRhdGlvbi1oYW5kbGVyLnNlcnZpY2UnO1xuaW1wb3J0IHsgR2VzZGVtQWN0aW9uUmVjb3ZlcnlTZXJ2aWNlIH0gZnJvbSAnLi4vZ2VzZGVtLWFjdGlvbi1yZWNvdmVyeS5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9jb21wb25lbnQtc2VsZWN0b3JcbiAgICBzZWxlY3RvcjogJ2dlc2RlbS1hY3Rpb24tcmVjb3ZlcnktbG9naW4nLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9nZXNkZW0tYWN0aW9uLXJlY292ZXJ5LWxvZ2luLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9nZXNkZW0tYWN0aW9uLXJlY292ZXJ5LWxvZ2luLmNvbXBvbmVudC5jc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBHZXNkZW1BY3Rpb25SZWNvdmVyeUxvZ2luQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgICBASW5wdXQoKVxuICAgIHJlZmVyZW5jZTogc3RyaW5nO1xuXG4gICAgQElucHV0KClcbiAgICByZWRpcmVjdFRhcmdldDogc3RyaW5nO1xuXG4gICAgQFZpZXdDaGlsZChGb2VobkZvcm1Db21wb25lbnQpXG4gICAgbG9naW5Gb3JtOiBGb2VobkZvcm1Db21wb25lbnQ7XG5cbiAgICBAVmlld0NoaWxkKFNka1JlY2FwdGNoYUNvbXBvbmVudClcbiAgICByZWNhcHRjaGFDb21wb25lbnQ6IFNka1JlY2FwdGNoYUNvbXBvbmVudDtcblxuICAgIG1pc3NpbmdSZWNvdmVyeUluZm9zID0gZmFsc2U7XG4gICAgYWxyZWFkeVRyYW5zZmVycmVkID0gZmFsc2U7XG4gICAgb3RwUmVjaXBpZW50OiBzdHJpbmc7XG4gICAgb3RwOiBzdHJpbmc7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSByZWNvdmVyeVNlcnZpY2U6IEdlc2RlbUFjdGlvblJlY292ZXJ5U2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBncm93bFNlcnZpY2U6IEdyb3dsQnJva2VyU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBjb25maXJtTW9kYWxTZXJ2aWNlOiBGb2VobkNvbmZpcm1Nb2RhbFNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgdmFsaWRhdGlvbkhhbmRsZXI6IFZhbGlkYXRpb25IYW5kbGVyU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBhcHBsaWNhdGlvbkluZm9TZXJ2aWNlOiBBcHBsaWNhdGlvbkluZm9TZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIGdlc0RlbUhhbmRsZXJTZXJ2aWNlOiBHZXNkZW1IYW5kbGVyU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBkaWN0aW9uYXJ5U2VydmljZTogU2RrRGljdGlvbmFyeVNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsXG4gICAgICAgIHByaXZhdGUgcm91dGU6IEFjdGl2YXRlZFJvdXRlLFxuICAgICAgICBwcml2YXRlIGV2ZW50c0xvZ2dlclNlcnZpY2U6IFNka0V2ZW50c0xvZ2dlclNlcnZpY2VcbiAgICApIHt9XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5vdHBSZWNpcGllbnQgPSBudWxsO1xuICAgICAgICB0aGlzLm1pc3NpbmdSZWNvdmVyeUluZm9zID0gZmFsc2U7XG4gICAgICAgIHRoaXMuYXBwbGljYXRpb25JbmZvU2VydmljZS5jdXJyZW50RXRhcGVJbmZvXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICB0YXAoY3VycmVudEV0YXBlID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGN1cnJlbnRFdGFwZS5yZXByaXNlUG9zc2libGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuc3RhcnRSZWNvdmVyeSgpO1xuICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jb25maXJtTW9kYWxTZXJ2aWNlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLm9wZW5Db25maXJtTW9kYWwoe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogdGhpcy5kaWN0aW9uYXJ5U2VydmljZS5nZXRLZXlTeW5jKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2dlc2RlbS1hY3Rpb24tcmVjb3ZlcnktbG9naW4uZXhwaXJlZC1zZXNzaW9uLnRpdGxlJ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBodG1sQ29udGVudDogdGhpcy5kaWN0aW9uYXJ5U2VydmljZS5nZXRLZXlTeW5jKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2dlc2RlbS1hY3Rpb24tcmVjb3ZlcnktbG9naW4uZXhwaXJlZC1zZXNzaW9uLmxhYmVsJ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBva0J1dHRvbkxhYmVsOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5kaWN0aW9uYXJ5U2VydmljZS5nZXRLZXlTeW5jKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdnZXNkZW0tYWN0aW9uLXJlY292ZXJ5LWxvZ2luLmV4cGlyZWQtc2Vzc2lvbi5vay1idXR0b24nXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaG93Q2FuY2VsQnV0dG9uOiBmYWxzZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xvc2VhYmxlOiBmYWxzZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLnRoZW4oXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHJlZGlyZWN0IHRvIHByZXN0YXRpb24ncyBob21lICh3aXRoIHdpbmRvdy5sb2NhdGlvbiB0byByZXNldCB0aGUgYXBwKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2luZG93LmxvY2F0aW9uLmhyZWYgPSAnJztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1lbXB0eS1mdW5jdGlvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKSA9PiB7fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHJ4anMtYW5ndWxhci9wcmVmZXItYXN5bmMtcGlwZVxuICAgICAgICAgICAgLnN1YnNjcmliZSgpO1xuICAgIH1cblxuICAgIHZhbGlkYXRlT3RwKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmV2ZW50c0xvZ2dlclNlcnZpY2UuYWRkRXZlbnQoU2RrRXZlbnRUeXBlLlJFQ09WRVJZX0xPR0lOX1NUQVJURUQpO1xuXG4gICAgICAgIGlmIChcbiAgICAgICAgICAgICF0aGlzLnJvdXRlLnNuYXBzaG90LnF1ZXJ5UGFyYW1zLnJlQ2FwdGNoYUJ5UGFzc1VVSUQgJiZcbiAgICAgICAgICAgICF0aGlzLnJlY292ZXJ5U2VydmljZS5oYXNDYXB0Y2hhVG9rZW4oKVxuICAgICAgICApIHtcbiAgICAgICAgICAgIHRoaXMubG9naW5Gb3JtLnJlc2V0KCk7XG4gICAgICAgICAgICB0aGlzLnZhbGlkYXRpb25IYW5kbGVyLnNob3VsZERpc3BsYXlFcnJvcnModHJ1ZSk7XG4gICAgICAgICAgICB0aGlzLnZhbGlkYXRpb25IYW5kbGVyLnVwZGF0ZUVycm9ycyhbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBuYW1lOiAncmVjYXB0Y2hhJyxcbiAgICAgICAgICAgICAgICAgICAgY29kZTogJ3JlY2FwdGNoYScsXG4gICAgICAgICAgICAgICAgICAgIG1lc3NhZ2U6ICdDYXB0Y2hhIGludmFsaWRlJ1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIF0pO1xuXG4gICAgICAgICAgICB0aGlzLmV2ZW50c0xvZ2dlclNlcnZpY2UuYWRkRXZlbnQoXG4gICAgICAgICAgICAgICAgU2RrRXZlbnRUeXBlLlJFQ09WRVJZX0xPR0lOX0ZBSUxFRFxuICAgICAgICAgICAgKTtcblxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5yZWNvdmVyeVNlcnZpY2VcbiAgICAgICAgICAgIC5jaGVja1JlY292ZXJ5UGFzc3dvcmQodGhpcy5yZWZlcmVuY2UsIHRoaXMub3RwKVxuICAgICAgICAgICAgLnBpcGUoZmluYWxpemUoKCkgPT4gKHRoaXMub3RwID0gbnVsbCkpKVxuICAgICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHJ4anMtYW5ndWxhci9wcmVmZXItYXN5bmMtcGlwZVxuICAgICAgICAgICAgLnN1YnNjcmliZShpc1Bhc3N3b3JkVmFsaWQgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IGVycm9ycyA9IFtdO1xuICAgICAgICAgICAgICAgIGlmIChpc1Bhc3N3b3JkVmFsaWQpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5ldmVudHNMb2dnZXJTZXJ2aWNlLmFkZEV2ZW50KFxuICAgICAgICAgICAgICAgICAgICAgICAgU2RrRXZlbnRUeXBlLlJFQ09WRVJZX0xPR0lOX1NVQ0NFU1NcbiAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5nZXNEZW1IYW5kbGVyU2VydmljZVxuICAgICAgICAgICAgICAgICAgICAgICAgLnJldHJpZXZlKHRoaXMucmVmZXJlbmNlLCBudWxsKVxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHJ4anMvbm8tbmVzdGVkLXN1YnNjcmliZSxyeGpzLWFuZ3VsYXIvcHJlZmVyLWFzeW5jLXBpcGVcbiAgICAgICAgICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUoKHJlc3BvbnNlOiBib29sZWFuKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHJlc3BvbnNlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZ3Jvd2xTZXJ2aWNlLmFkZFdpdGhUeXBlQW5kVGltZVRvRGlzcGxheUluU2Vjb25kcyhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdyb3dsVHlwZS5TVUNDRVNTLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5kaWN0aW9uYXJ5U2VydmljZS5nZXRLZXlTeW5jKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdnZXNkZW0tYWN0aW9uLXJlY292ZXJ5LWxvZ2luLnNhdmUubGFiZWwnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0ZTogdGhpcy5nZXNEZW1IYW5kbGVyU2VydmljZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmxhc3RSZXNwb25zZS5tZXRhXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuaW5pdGlhbGlzYXRpb25EYXRlVGltZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxMFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBwcmVmaXggPSAhIXRoaXMuZ2VzRGVtSGFuZGxlclNlcnZpY2UucHJlZml4XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8ubGVuZ3RoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gYC8ke3RoaXMuZ2VzRGVtSGFuZGxlclNlcnZpY2UucHJlZml4fWBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiAnJztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZUJ5VXJsKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBgJHtwcmVmaXh9LyR7dGhpcy5yZWZlcmVuY2V9YFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmV2ZW50c0xvZ2dlclNlcnZpY2UuYWRkRXZlbnQoXG4gICAgICAgICAgICAgICAgICAgICAgICBTZGtFdmVudFR5cGUuUkVDT1ZFUllfTE9HSU5fRkFJTEVEXG4gICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgICAgIGlmIChpc1Bhc3N3b3JkVmFsaWQgPT09IGZhbHNlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBlcnJvcnMucHVzaCh7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ290cCcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29kZTogJ0lOVkFMSURPVFAnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1lc3NhZ2U6IHRoaXMuZGljdGlvbmFyeVNlcnZpY2UuZ2V0S2V5U3luYyhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2dlc2RlbS1hY3Rpb24tcmVjb3ZlcnktbG9naW4uaW52YWxpZC1vdHAubGFiZWwnXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBlcnJvcnMucHVzaCh7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ3JlY2FwdGNoYScsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29kZTogJ3JlY2FwdGNoYScsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWVzc2FnZTogJ0NhcHRjaGEgaW52YWxpZGUnXG4gICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIHRoaXMubG9naW5Gb3JtLnJlc2V0KCk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMudmFsaWRhdGlvbkhhbmRsZXIuc2hvdWxkRGlzcGxheUVycm9ycyh0cnVlKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy52YWxpZGF0aW9uSGFuZGxlci51cGRhdGVFcnJvcnMoZXJyb3JzKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5yZWNhcHRjaGFDb21wb25lbnQ/LmdyZWNhcHRjaGE/LnJlc2V0KCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzdGFydFJlY292ZXJ5KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnJlY292ZXJ5U2VydmljZVxuICAgICAgICAgICAgLnN0YXJ0UmVjb3ZlcnkodGhpcy5yZWZlcmVuY2UpXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBjYXRjaEVycm9yKChyZXNwb25zZTogdW5rbm93bikgPT4ge1xuICAgICAgICAgICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgICAgICAgICAgICAgICAgICBjb25zdCB7IGVycm9yLCBzdGF0dXMgfTogYW55ID0gcmVzcG9uc2U7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMubWlzc2luZ1JlY292ZXJ5SW5mb3MgPVxuICAgICAgICAgICAgICAgICAgICAgICAgc3RhdHVzID09PSA0MDQgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgIGVycm9yICYmXG4gICAgICAgICAgICAgICAgICAgICAgICBKU09OLnBhcnNlKGVycm9yKS5jb2RlID09PSAnQUNUSU9OX1JFQ09WRVJZX05PVF9GT1VORCc7XG5cbiAgICAgICAgICAgICAgICAgICAgdGhpcy5hbHJlYWR5VHJhbnNmZXJyZWQgPVxuICAgICAgICAgICAgICAgICAgICAgICAgc3RhdHVzID09PSA0MDkgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgIGVycm9yICYmXG4gICAgICAgICAgICAgICAgICAgICAgICBKU09OLnBhcnNlKGVycm9yKS5jb2RlID09PSAnQUNUSU9OX0FMUkVBRFlfVFJBTlNGRVJSRUQnO1xuXG4gICAgICAgICAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICF0aGlzLm1pc3NpbmdSZWNvdmVyeUluZm9zICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAhdGhpcy5hbHJlYWR5VHJhbnNmZXJyZWRcbiAgICAgICAgICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmdyb3dsU2VydmljZS5hZGRXaXRoVHlwZShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBHcm93bFR5cGUuREFOR0VSLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZGljdGlvbmFyeVNlcnZpY2UuZ2V0S2V5U3luYyhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2dlc2RlbS1hY3Rpb24tcmVjb3ZlcnktbG9naW4ucGFzc3dvcmQtZ2VuZXJhdGlvbi1mYWlsZWQubGFiZWwnXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB0aHJvd0Vycm9yKCgpID0+IHRydWUpO1xuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcnhqcy1hbmd1bGFyL3ByZWZlci1hc3luYy1waXBlXG4gICAgICAgICAgICAuc3Vic2NyaWJlKG90cFJlY2lwaWVudCA9PiAodGhpcy5vdHBSZWNpcGllbnQgPSBvdHBSZWNpcGllbnQpKTtcbiAgICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiY29udGFpbmVyIG10LTVcIj5cbiAgICA8ZGl2IGNsYXNzPVwiYWxlcnQgYWxlcnQtZGFuZ2VyXCIgKm5nSWY9XCJtaXNzaW5nUmVjb3ZlcnlJbmZvc1wiPlxuICAgICAgICBWb3VzIG4nYXZleiBwYXMgaW5kaXF1w6kgZCdpbmZvcm1hdGlvbnMgZGUgY29udGFjdCBwb3VyIGxhIHJlcHJpc2UgZGVcbiAgICAgICAgY2V0dGUgZGVtYW5kZSwgbWVyY2kgZGUgY29udGFjdGVyIGxlIHN1cHBvcnQuXG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImFsZXJ0IGFsZXJ0LWRhbmdlclwiICpuZ0lmPVwiYWxyZWFkeVRyYW5zZmVycmVkXCI+XG4gICAgICAgIExhIGRlbWFuZGUgcXVlIHZvdXMgZXNzYXlleiBkZSByZXByZW5kcmUgYSBkw6lqw6Agw6l0w6kgdHJhbnNtaXNlLCBlbGxlXG4gICAgICAgIG4nZXN0IHBsdXMgbW9kaWZpYWJsZS5cbiAgICA8L2Rpdj5cblxuICAgIDxmb2Vobi1mb3JtIFtzaG91bGREaXNwbGF5QWxlcnRTdW1tYXJ5XT1cImZhbHNlXCIgKm5nSWY9XCJvdHBSZWNpcGllbnRcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC04XCI+XG4gICAgICAgICAgICAgICAgPGZvZWhuLWlucHV0LXRleHRcbiAgICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgJ1ZldWlsbGV6IHNhaXNpciBsZSBjb2RlIGVudm95w6kgcGFyIFNNUyBhdSBudW3DqXJvICcgK1xuICAgICAgICAgICAgICAgICAgICAgICAgb3RwUmVjaXBpZW50XG4gICAgICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgICAgICAgIFsobW9kZWwpXT1cIm90cFwiXG4gICAgICAgICAgICAgICAgICAgIG5hbWU9XCJvdHBcIlxuICAgICAgICAgICAgICAgICAgICBbcmVxdWlyZWRdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgPjwvZm9laG4taW5wdXQtdGV4dD5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLThcIj5cbiAgICAgICAgICAgICAgICBQb3VyIG9idGVuaXIgdW4gbm91dmVhdSBjb2RlLCB2b3VzIGRldmV6IHJlY2xpcXVlciBzdXIgbGVcbiAgICAgICAgICAgICAgICA8YSBbaHJlZl09XCJyZWRpcmVjdFRhcmdldFwiPmxpZW48L2E+XG4gICAgICAgICAgICAgICAgZGUgcmVwcmlzZSBkZSBsYSBkZW1hbmRlXG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPGJyIC8+XG5cbiAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC04XCI+XG4gICAgICAgICAgICAgICAgPGNhcHRjaGE+PC9jYXB0Y2hhPlxuXG4gICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgICBpZD1cIm5leHRCdXR0b25cIlxuICAgICAgICAgICAgICAgICAgICB0eXBlPVwic3VibWl0XCJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJidG4gYnRuLWRhcmsgZmxvYXQtZW5kXCJcbiAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInZhbGlkYXRlT3RwKClcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgU3VpdmFudFxuICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZm9laG4tZm9ybT5cbjwvZGl2PlxuIl19
|