@arsedizioni/ars-utils 18.1.74 → 18.1.76
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/clipper.common/common/common.module.d.ts +1 -2
- package/clipper.common/common/definitions.d.ts +317 -0
- package/clipper.common/common/interceptors/auth.interceptor.d.ts +2 -5
- package/clipper.common/common/messages.d.ts +4 -0
- package/clipper.common/common/services/clipper.service.d.ts +12 -36
- package/clipper.ui/{ui/document/documents.d.ts → documents.d.ts} +2 -6
- package/clipper.ui/public_api.d.ts +6 -5
- package/clipper.ui/ui/browser-dialog/browser-dialog.component.d.ts +30 -143
- package/clipper.ui/ui/clipper.scss +270 -106
- package/clipper.ui/ui/document/document.component.d.ts +64 -118
- package/clipper.ui/ui/document-index/document-index.component.d.ts +34 -0
- package/clipper.ui/ui/document-manager/document-manager.d.ts +126 -0
- package/clipper.ui/ui/document-menu/document-menu.component.d.ts +28 -0
- package/clipper.ui/ui/references/references.component.d.ts +39 -73
- package/clipper.ui/ui/search-calendar/search-calendar.component.d.ts +40 -0
- package/clipper.ui/ui/search-dialog/search-dialog.component.d.ts +37 -40
- package/clipper.ui/ui/search-facets/search-facets.component.d.ts +22 -70
- package/clipper.ui/ui/search-free-text-help/search-free-text-help.component.d.ts +0 -1
- package/clipper.ui/ui/search-free-text-query-builder/search-free-text-query-builder.component.d.ts +8 -12
- package/clipper.ui/ui/search-result-item/search-result-item.component.d.ts +6 -4
- package/clipper.ui/ui/search-result-manager/search-result-manager.d.ts +147 -0
- package/esm2022/clipper.common/common/common.module.mjs +2 -3
- package/esm2022/clipper.common/common/definitions.mjs +1536 -0
- package/esm2022/clipper.common/common/interceptors/auth.interceptor.mjs +15 -15
- package/esm2022/clipper.common/common/messages.mjs +6 -1
- package/esm2022/clipper.common/common/services/clipper.service.mjs +65 -65
- package/esm2022/clipper.ui/documents.mjs +51 -0
- package/esm2022/clipper.ui/public_api.mjs +7 -6
- package/esm2022/clipper.ui/ui/browser-dialog/browser-dialog.component.mjs +320 -785
- package/esm2022/clipper.ui/ui/document/document.component.mjs +213 -320
- package/esm2022/clipper.ui/ui/document-index/document-index.component.mjs +121 -0
- package/esm2022/clipper.ui/ui/document-manager/document-manager.mjs +431 -0
- package/esm2022/clipper.ui/ui/document-menu/document-menu.component.mjs +56 -0
- package/esm2022/clipper.ui/ui/references/references.component.mjs +244 -438
- package/esm2022/clipper.ui/ui/search-calendar/search-calendar.component.mjs +116 -0
- package/esm2022/clipper.ui/ui/search-dialog/search-dialog.component.mjs +216 -205
- package/esm2022/clipper.ui/ui/search-facets/search-facets.component.mjs +157 -209
- package/esm2022/clipper.ui/ui/search-free-text-help/search-free-text-help.component.mjs +7 -8
- package/esm2022/clipper.ui/ui/search-free-text-query-builder/search-free-text-query-builder.component.mjs +22 -23
- package/esm2022/clipper.ui/ui/search-result-item/search-result-item.component.mjs +12 -10
- package/esm2022/clipper.ui/ui/search-result-manager/search-result-manager.mjs +462 -0
- package/esm2022/help/components/help-viewer/help-viewer.component.mjs +25 -28
- package/esm2022/support.common/common/definitions.mjs +21 -0
- package/esm2022/support.common/common/services/support.service.mjs +9 -7
- package/esm2022/support.common/public_api.mjs +2 -2
- package/esm2022/support.ui/ui/notifications-browser/notification/notification.component.mjs +3 -3
- package/esm2022/support.ui/ui/notifications-browser/notifications-browser.component.mjs +4 -5
- package/esm2022/ui/ui/dialogs/busy/busy-dialog.component.mjs +3 -3
- package/esm2022/ui/ui/dialogs/confirm/confirm-dialog.component.mjs +3 -3
- package/esm2022/ui/ui/dialogs/credentials/credentials-dialog.component.mjs +3 -3
- package/esm2022/ui/ui/dialogs/info/info-dialog.component.mjs +3 -3
- package/esm2022/ui/ui/dialogs/recover-password/recover-password-dialog.component.mjs +3 -3
- package/esm2022/ui/ui/dialogs/reset-password/reset-password-dialog.component.mjs +3 -3
- package/esm2022/ui.application/public_api.mjs +4 -1
- package/esm2022/ui.application/ui/components/button-selector/button-selector.component.mjs +163 -0
- package/esm2022/ui.application/ui/components/button-toggle/button-toggle.component.mjs +47 -0
- package/esm2022/ui.application/ui/components/chips-selector/chips-selector.component.mjs +239 -0
- package/esm2022/ui.application/ui/components/file-preview/file-preview.component.mjs +23 -24
- package/esm2022/ui.application/ui/components/filter-bar/filter-bar.component.mjs +3 -3
- package/esm2022/ui.application/ui/dialogs/prompt/prompt-dialog.component.mjs +3 -3
- package/esm2022/ui.application/ui/dialogs/prompt-date/prompt-date-dialog.component.mjs +3 -3
- package/esm2022/ui.application/ui/dialogs/prompt-time/prompt-time-dialog.component.mjs +3 -3
- package/esm2022/ui.application/ui/dialogs/select/select-dialog.component.mjs +3 -3
- package/esm2022/ui.application/ui/dialogs/select-file/select-file-dialog.component.mjs +3 -3
- package/esm2022/ui.application/ui/dialogs/select-picture/select-picture-dialog.component.mjs +3 -3
- package/esm2022/ui.application/ui/dialogs/select-tree/select-tree-dialog.component.mjs +3 -3
- package/esm2022/ui.application/ui/dialogs/send-to/send-to-dialog.component.mjs +3 -3
- package/esm2022/ui.application/ui/messages.mjs +3 -3
- package/fesm2022/arsedizioni-ars-utils-clipper.common.mjs +1608 -1507
- package/fesm2022/arsedizioni-ars-utils-clipper.common.mjs.map +1 -1
- package/fesm2022/arsedizioni-ars-utils-clipper.ui.mjs +2283 -2407
- package/fesm2022/arsedizioni-ars-utils-clipper.ui.mjs.map +1 -1
- package/fesm2022/arsedizioni-ars-utils-help.mjs +25 -28
- package/fesm2022/arsedizioni-ars-utils-help.mjs.map +1 -1
- package/fesm2022/arsedizioni-ars-utils-support.common.mjs +8 -6
- package/fesm2022/arsedizioni-ars-utils-support.common.mjs.map +1 -1
- package/fesm2022/arsedizioni-ars-utils-support.ui.mjs +5 -6
- package/fesm2022/arsedizioni-ars-utils-support.ui.mjs.map +1 -1
- package/fesm2022/arsedizioni-ars-utils-ui.application.mjs +450 -47
- package/fesm2022/arsedizioni-ars-utils-ui.application.mjs.map +1 -1
- package/fesm2022/arsedizioni-ars-utils-ui.mjs +12 -12
- package/fesm2022/arsedizioni-ars-utils-ui.mjs.map +1 -1
- package/help/components/help-viewer/help-viewer.component.d.ts +6 -10
- package/package.json +13 -13
- package/styles/ui.scss +140 -0
- package/support.common/common/services/support.service.d.ts +2 -2
- package/support.common/public_api.d.ts +1 -1
- package/ui.application/public_api.d.ts +3 -0
- package/ui.application/ui/components/button-selector/button-selector.component.d.ts +49 -0
- package/ui.application/ui/components/button-toggle/button-toggle.component.d.ts +26 -0
- package/ui.application/ui/components/chips-selector/chips-selector.component.d.ts +70 -0
- package/ui.application/ui/components/file-preview/file-preview.component.d.ts +4 -8
- package/ui.application/ui/messages.d.ts +2 -2
- package/clipper.common/common/clipper.d.ts +0 -119
- package/clipper.common/common/search.d.ts +0 -49
- package/clipper.ui/ui/document/base/document-base.component.d.ts +0 -38
- package/clipper.ui/ui/document/document-index/document-index.component.d.ts +0 -38
- package/clipper.ui/ui/document/document-menu/document-menu.component.d.ts +0 -30
- package/clipper.ui/ui/last-15-days/last-15-days.component.d.ts +0 -41
- package/esm2022/clipper.common/common/clipper.mjs +0 -1371
- package/esm2022/clipper.common/common/search.mjs +0 -69
- package/esm2022/clipper.ui/ui/document/base/document-base.component.mjs +0 -194
- package/esm2022/clipper.ui/ui/document/document-index/document-index.component.mjs +0 -121
- package/esm2022/clipper.ui/ui/document/document-menu/document-menu.component.mjs +0 -88
- package/esm2022/clipper.ui/ui/document/documents.mjs +0 -49
- package/esm2022/clipper.ui/ui/last-15-days/last-15-days.component.mjs +0 -107
- package/esm2022/help/components/help-search-query-builder/help-search-query-builder.component.mjs +0 -114
- package/esm2022/support.common/common/support.mjs +0 -21
- package/esm2022/ui.oauth/ui/components/login/loginOAuth.component.mjs +0 -198
- package/help/components/help-search-query-builder/help-search-query-builder.component.d.ts +0 -29
- package/help/help.scss +0 -72
- package/ui.oauth/ui/components/login/loginOAuth.component.d.ts +0 -38
- /package/support.common/common/{support.d.ts → definitions.d.ts} +0 -0
|
@@ -13,7 +13,7 @@ export class SupportService {
|
|
|
13
13
|
this.refreshing = false;
|
|
14
14
|
this.tokenRefreshTimer = null;
|
|
15
15
|
this.tokenRefreshTimerSubscription = null;
|
|
16
|
-
this.
|
|
16
|
+
this.broadcastServiceSubscription = null;
|
|
17
17
|
this._loginInfo = null;
|
|
18
18
|
this._loggedIn = false;
|
|
19
19
|
this._loggingIn = false;
|
|
@@ -67,10 +67,12 @@ export class SupportService {
|
|
|
67
67
|
}
|
|
68
68
|
ngOnDestroy() {
|
|
69
69
|
// Clean-up
|
|
70
|
-
if (this.tokenRefreshTimerSubscription)
|
|
70
|
+
if (this.tokenRefreshTimerSubscription) {
|
|
71
71
|
this.tokenRefreshTimerSubscription.unsubscribe();
|
|
72
|
-
|
|
73
|
-
|
|
72
|
+
}
|
|
73
|
+
if (this.broadcastServiceSubscription) {
|
|
74
|
+
this.broadcastServiceSubscription.unsubscribe();
|
|
75
|
+
}
|
|
74
76
|
}
|
|
75
77
|
/**
|
|
76
78
|
* Initialize service
|
|
@@ -89,8 +91,8 @@ export class SupportService {
|
|
|
89
91
|
if (products)
|
|
90
92
|
this._products = products;
|
|
91
93
|
// React to message broadcasting
|
|
92
|
-
if (!this.
|
|
93
|
-
this.
|
|
94
|
+
if (!this.broadcastServiceSubscription) {
|
|
95
|
+
this.broadcastServiceSubscription = this.broadcastService.getMessage().subscribe((message) => {
|
|
94
96
|
if (message.id === SupportMessages.LOGIN_CHANGED) {
|
|
95
97
|
setTimeout(() => {
|
|
96
98
|
this.login(message.data.email, message.data.oauth, message.data.oauthAccessToken).subscribe((r) => {
|
|
@@ -323,4 +325,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.3", ngImpor
|
|
|
323
325
|
providedIn: 'root',
|
|
324
326
|
}]
|
|
325
327
|
}] });
|
|
326
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VwcG9ydC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXJzLXV0aWxzL3N1cHBvcnQuY29tbW9uL2NvbW1vbi9zZXJ2aWNlcy9zdXBwb3J0LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUMvRCxPQUFPLEVBQUUsVUFBVSxFQUFhLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5RCxPQUFPLEVBQWEsZ0JBQWdCLEVBQTBCLFdBQVcsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQy9HLE9BQU8sRUFBRSxLQUFLLEVBQWMsRUFBRSxFQUFnQixVQUFVLEVBQUUsS0FBSyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzlFLE9BQU8sRUFBRSxVQUFVLEVBQUUsR0FBRyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sYUFBYSxDQUFDOztBQU85QyxNQUFNLE9BQU8sY0FBYztJQUgzQjtRQUttQixxQkFBZ0IsR0FBRyxLQUFLLEdBQUcsRUFBRSxDQUFDLENBQUMsUUFBUTtRQUVoRCxlQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ2hDLHFCQUFnQixHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBRTVDLGVBQVUsR0FBWSxLQUFLLENBQUM7UUFDNUIsc0JBQWlCLEdBQXNDLElBQUksQ0FBQztRQUM1RCxrQ0FBNkIsR0FBeUIsSUFBSSxDQUFDO1FBQzNELG1CQUFjLEdBQXlCLElBQUksQ0FBQztRQUk1QyxlQUFVLEdBQWMsSUFBSSxDQUFDO1FBTTdCLGNBQVMsR0FBWSxLQUFLLENBQUM7UUFRM0IsZUFBVSxHQUFZLEtBQUssQ0FBQztRQVE1QixnQkFBVyxHQUFXLGdDQUFn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OztPQUdHO0lBQ0gsaUJBQWlCLENBQUMsTUFBVztRQUMzQixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUN6QixJQUFJLENBQUMsV0FBVyxHQUFHLHFCQUFxQixFQUN4QyxNQUFNLENBQ1AsQ0FBQztJQUNKLENBQUM7SUFFRDs7O0tBR0M7SUFDRCwyQkFBMkIsQ0FBQyxVQUFrQjtRQUM1QyxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUN4QixJQUFJLENBQUMsV0FBVyxHQUFHLHNCQUFzQixHQUFHLFVBQVUsRUFDdEQsRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLENBQ3pCLENBQUM7SUFDSixDQUFDOzhHQXpYVSxjQUFjO2tIQUFkLGNBQWMsY0FGYixNQUFNOzsyRkFFUCxjQUFjO2tCQUgxQixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBDbGllbnQsIEh0dHBIZWFkZXJzIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgeyBJbmplY3RhYmxlLCBPbkRlc3Ryb3ksIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBBcGlSZXN1bHQsIEJyb2FkY2FzdFNlcnZpY2UsIExvZ2luSW5mbywgTG9naW5SZXN1bHQsIFN5c3RlbVV0aWxzIH0gZnJvbSAnQGFyc2VkaXppb25pL2Fycy11dGlscy9jb3JlJztcclxuaW1wb3J0IHsgRU1QVFksIE9ic2VydmFibGUsIG9mLCBTdWJzY3JpcHRpb24sIHRocm93RXJyb3IsIHRpbWVyIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IGNhdGNoRXJyb3IsIG1hcCwgc2hhcmVSZXBsYXksIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgU3VwcG9ydE1lc3NhZ2VzIH0gZnJvbSAnLi4vbWVzc2FnZXMnO1xyXG5pbXBvcnQgeyBTdXBwb3J0Tm90aWZpY2F0aW9uc1NlYXJjaFBhcmFtcywgU3VwcG9ydFByb2R1Y3QsIFN1cHBvcnRQcm9kdWN0TW9kdWxlIH0gZnJvbSAnLi4vc3VwcG9ydCc7XHJcblxyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290JyxcclxufSlcclxuZXhwb3J0IGNsYXNzIFN1cHBvcnRTZXJ2aWNlIGltcGxlbWVudHMgT25EZXN0cm95IHtcclxuXHJcbiAgcHJpdmF0ZSByZWFkb25seSBSRUZSRVNIX0lOVEVSVkFMID0gNjAwMDAgKiA1MDsgLy81MCBtaW5cclxuXHJcbiAgcHJpdmF0ZSBodHRwQ2xpZW50ID0gaW5qZWN0KEh0dHBDbGllbnQpO1xyXG4gIHByaXZhdGUgYnJvYWRjYXN0U2VydmljZSA9IGluamVjdChCcm9hZGNhc3RTZXJ2aWNlKTtcclxuXHJcbiAgcHJpdmF0ZSByZWZyZXNoaW5nOiBib29sZWFuID0gZmFsc2U7XHJcbiAgcHJpdmF0ZSB0b2tlblJlZnJlc2hUaW1lcj86IE9ic2VydmFibGU8bnVtYmVyIHwgdm9pZD4gfCBudWxsID0gbnVsbDtcclxuICBwcml2YXRlIHRva2VuUmVmcmVzaFRpbWVyU3Vic2NyaXB0aW9uPzogU3Vic2NyaXB0aW9uIHwgbnVsbCA9IG51bGw7XHJcbiAgcHJpdmF0ZSBtZXNzYWdlV2F0Y2hlcj86IFN1YnNjcmlwdGlvbiB8IG51bGwgPSBudWxsO1xyXG5cclxuXHJcblxyXG4gIHByaXZhdGUgX2xvZ2luSW5mbzogTG9naW5JbmZvID0gbnVsbDtcclxuICBnZXQgbG9naW5JbmZvKCk6IExvZ2luSW5mbyB7IHJldHVybiB0aGlzLl9sb2dpbkluZm8gfTtcclxuICBzZXQgbG9naW5JbmZvKHZhbHVlOiBMb2dpbkluZm8pIHtcclxuICAgIHRoaXMuX2xvZ2luSW5mbyA9IHZhbHVlO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfbG9nZ2VkSW46IGJvb2xlYW4gPSBmYWxzZTtcclxuICBnZXQgbG9nZ2VkSW4oKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5fbG9nZ2VkSW47XHJcbiAgfVxyXG4gIHNldCBsb2dnZWRJbih2YWx1ZTogYm9vbGVhbikge1xyXG4gICAgdGhpcy5fbG9nZ2VkSW4gPSB2YWx1ZTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX2xvZ2dpbmdJbjogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIGdldCBsb2dnaW5nSW4oKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5fbG9nZ2luZ0luO1xyXG4gIH1cclxuICBzZXQgbG9nZ2luZ0luKHZhbHVlOiBib29sZWFuKSB7XHJcbiAgICB0aGlzLl9sb2dnaW5nSW4gPSB2YWx1ZTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX3NlcnZpY2VVcmk6IHN0cmluZyA9IFwiaHR0cHM6Ly9zdXBwb3J0LmFyc2VkaXppb25pLml0XCJcclxuICBnZXQgc2VydmljZVVyaSgpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMuX3NlcnZpY2VVcmk7XHJcbiAgfVxyXG4gIHNldCBzZXJ2aWNlVXJpKHZhbHVlOiBzdHJpbmcpIHtcclxuICAgIHRoaXMuX3NlcnZpY2VVcmkgPSB2YWx1ZTtcclxuICB9XHJcbiAgcHJpdmF0ZSBfc2VydmljZVByZWZpeDogc3RyaW5nID0gXCJcIlxyXG4gIGdldCBzZXJ2aWNlUHJlZml4KCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5fc2VydmljZVByZWZpeDtcclxuICB9XHJcbiAgc2V0IHNlcnZpY2VQcmVmaXgodmFsdWU6IHN0cmluZykge1xyXG4gICAgdGhpcy5fc2VydmljZVByZWZpeCA9IHZhbHVlO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfcHJvZHVjdHM6IFN1cHBvcnRQcm9kdWN0O1xyXG4gIGdldCBwcm9kdWN0cygpOiBTdXBwb3J0UHJvZHVjdCB7XHJcbiAgICByZXR1cm4gdGhpcy5fcHJvZHVjdHM7XHJcbiAgfVxyXG4gIHNldCBwcm9kdWN0cyh2YWx1ZTogU3VwcG9ydFByb2R1Y3QpIHtcclxuICAgIHRoaXMuX3Byb2R1Y3RzID0gdmFsdWU7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9wcm9kdWN0TW9kdWxlczogU3VwcG9ydFByb2R1Y3RNb2R1bGU7XHJcbiAgZ2V0IHByb2R1Y3RNb2R1bGVzKCk6IFN1cHBvcnRQcm9kdWN0TW9kdWxlIHtcclxuICAgIHJldHVybiB0aGlzLl9wcm9kdWN0TW9kdWxlcztcclxuICB9XHJcbiAgc2V0IHByb2R1Y3RNb2R1bGVzKHZhbHVlOiBTdXBwb3J0UHJvZHVjdE1vZHVsZSkge1xyXG4gICAgdGhpcy5fcHJvZHVjdE1vZHVsZXMgPSB2YWx1ZTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX3VucmVhZE5vdGlmaWNhdGlvbnM6IG51bWJlciA9IG51bGw7XHJcbiAgZ2V0IHVucmVhZE5vdGlmaWNhdGlvbnMoKTogbnVtYmVyIHtcclxuICAgIHJldHVybiB0aGlzLl91bnJlYWROb3RpZmljYXRpb25zO1xyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICAvLyBDbGVhbi11cFxyXG4gICAgaWYgKHRoaXMudG9rZW5SZWZyZXNoVGltZXJTdWJzY3JpcHRpb24pXHJcbiAgICAgIHRoaXMudG9rZW5SZWZyZXNoVGltZXJTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcclxuICAgIGlmICh0aGlzLm1lc3NhZ2VXYXRjaGVyKSB0aGlzLm1lc3NhZ2VXYXRjaGVyLnVuc3Vic2NyaWJlKCk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBJbml0aWFsaXplIHNlcnZpY2VcclxuICAgKiBAcGFyYW0gc2VydmljZVVyaSA6IHRoZSBzZXJ2aWNlIHVyaVxyXG4gICAqIEBwYXJhbSBzZXJ2aWNlUHJlZml4IDogdGhlIHNlcnZpY2UgcHJlZml4IHVzZWQgdG8gbWFuYWdlIGxvY2FsIHN0b3JhZ2UgXHJcbiAgICogQHBhcmFtIHByb2R1Y3RzOiB0aGUgc3VwcG9ydGVkIHByb2R1Y3RzXHJcbiAgICovXHJcbiAgaW5pdGlhbGl6ZShcclxuICAgIHNlcnZpY2VVcmk6IHN0cmluZyA9IG51bGwsXHJcbiAgICBzZXJ2aWNlUHJlZml4OiBzdHJpbmcgPSBudWxsLFxyXG4gICAgcHJvZHVjdHM6IG51bWJlciA9IDApIHtcclxuXHJcbiAgICAvLyBDcmVhdGUgdW5pcXVlIGNsaWVudCBpZFxyXG4gICAgaWYgKCFsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgnc3VwcG9ydF9jbGllbnRfaWQnKSlcclxuICAgICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oJ3N1cHBvcnRfY2xpZW50X2lkJywgU3lzdGVtVXRpbHMuZ2VuZXJhdGVVVUlEKCkpO1xyXG5cclxuICAgIC8vIEluaXRpYWxpemUgdXJpc1xyXG4gICAgaWYgKHNlcnZpY2VVcmkpXHJcbiAgICAgIHRoaXMuX3NlcnZpY2VVcmkgPSBzZXJ2aWNlVXJpO1xyXG4gICAgdGhpcy5fc2VydmljZVByZWZpeCA9IHNlcnZpY2VQcmVmaXg7XHJcbiAgICBpZiAocHJvZHVjdHMpXHJcbiAgICAgIHRoaXMuX3Byb2R1Y3RzID0gcHJvZHVjdHM7XHJcblxyXG4gICAgLy8gUmVhY3QgdG8gbWVzc2FnZSBicm9hZGNhc3RpbmdcclxuICAgIGlmICghdGhpcy5tZXNzYWdlV2F0Y2hlcikge1xyXG4gICAgICB0aGlzLm1lc3NhZ2VXYXRjaGVyID0gdGhpcy5icm9hZGNhc3RTZXJ2aWNlLmdldE1lc3NhZ2UoKS5zdWJzY3JpYmUoKG1lc3NhZ2U6IGFueSkgPT4ge1xyXG4gICAgICAgIGlmIChtZXNzYWdlLmlkID09PSBTdXBwb3J0TWVzc2FnZXMuTE9HSU5fQ0hBTkdFRCkge1xyXG4gICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMubG9naW4obWVzc2FnZS5kYXRhLmVtYWlsLCBtZXNzYWdlLmRhdGEub2F1dGgsIG1lc3NhZ2UuZGF0YS5vYXV0aEFjY2Vzc1Rva2VuKS5zdWJzY3JpYmUoKHI6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICAgIGlmIChyLnN1Y2Nlc3MpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuY291bnRVbnJlYWROb3RpZmljYXRpb25zKCk7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICAgIH0sIDUwMCk7XHJcbiAgICAgICAgfSBlbHNlIGlmIChtZXNzYWdlLmlkID09PSBTdXBwb3J0TWVzc2FnZXMuTE9HT1VUX0NPTVBMRVRFRCB8fFxyXG4gICAgICAgICAgbWVzc2FnZS5pZCA9PT0gU3VwcG9ydE1lc3NhZ2VzLkxPR0lOX0RJU0NPTk5FQ1RFRCkge1xyXG4gICAgICAgICAgaWYgKCF0aGlzLmxvZ2dlZEluKSB7XHJcbiAgICAgICAgICAgIHRoaXMuY2xlYXIoKTtcclxuICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHRoaXMubG9nb3V0KCkuc3Vic2NyaWJlKHtcclxuICAgICAgICAgICAgICBjb21wbGV0ZTogKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5jbGVhcigpO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSBlbHNlIGlmIChtZXNzYWdlLmlkID09PSBTdXBwb3J0TWVzc2FnZXMuTk9USUZJQ0FUSU9OX1JFQUQpIHtcclxuICAgICAgICAgIHRoaXMuY291bnRVbnJlYWROb3RpZmljYXRpb25zKCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICAvLyBFdmVsdWF0ZSBjdXJyZW50IHNlc3Npb24gc3RvcmFnZSBpbiBjYXNlIG9mIHBhZ2UgcmVmcmVzaCAoRjUpXHJcbiAgICBpZiAoIXRoaXMubG9nZ2VkSW4gJiYgdGhpcy5nZXRUb2tlbigpKSB7XHJcbiAgICAgIC8vIEF1dG8gbG9naW5cclxuICAgICAgdGhpcy5sb2dnZWRJbiA9IHRydWU7XHJcblxyXG4gICAgICAvLyBTdGFydCByZWZyZXNoIHRpbWVyXHJcbiAgICAgIHRoaXMuZW5hYmxlVG9rZW5SZWZyZXNoKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICogU2V0IEpXVCB0b2tlblxyXG4gKiBAcGFyYW0gdG9rZW4gOiBUaGUgdG9rZW4gIHRvIHN0b3JlXHJcbiAqL1xyXG4gIHByaXZhdGUgc2V0VG9rZW4odG9rZW46IHN0cmluZykge1xyXG4gICAgc2Vzc2lvblN0b3JhZ2Uuc2V0SXRlbSgnc3VwcG9ydF9qd3QnLCB0b2tlbik7XHJcbiAgICBpZiAodG9rZW4pIHtcclxuICAgICAgdGhpcy5lbmFibGVUb2tlblJlZnJlc2goKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEVuYWJsZSBKV1QgdG9rZW4gYXV0byByZWZyZXNoXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBlbmFibGVUb2tlblJlZnJlc2goKSB7XHJcbiAgICBpZiAoIXRoaXMudG9rZW5SZWZyZXNoVGltZXJTdWJzY3JpcHRpb24pIHtcclxuICAgICAgdGhpcy50b2tlblJlZnJlc2hUaW1lciA9XHJcbiAgICAgICAgdGltZXIodGhpcy5SRUZSRVNIX0lOVEVSVkFMLCB0aGlzLlJFRlJFU0hfSU5URVJWQUwpXHJcbiAgICAgICAgICAucGlwZShcclxuICAgICAgICAgICAgc3dpdGNoTWFwKCgpID0+IHtcclxuICAgICAgICAgICAgICBpZiAodGhpcy5yZWZyZXNoaW5nIHx8ICF0aGlzLmxvZ2dlZEluKSByZXR1cm4gRU1QVFk7XHJcbiAgICAgICAgICAgICAgdGhpcy5yZWZyZXNoaW5nID0gdHJ1ZTtcclxuICAgICAgICAgICAgICB0aGlzLnJlZnJlc2goKS5zdWJzY3JpYmUoXHJcbiAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgIGVycm9yOiAoKSA9PiB7IHRoaXMucmVmcmVzaGluZyA9IGZhbHNlOyB9LFxyXG4gICAgICAgICAgICAgICAgICBjb21wbGV0ZTogKCkgPT4geyB0aGlzLnJlZnJlc2hpbmcgPSBmYWxzZTsgfVxyXG4gICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgcmV0dXJuIEVNUFRZO1xyXG4gICAgICAgICAgICB9KSxcclxuICAgICAgICAgICAgc2hhcmVSZXBsYXkoMSkpO1xyXG4gICAgICB0aGlzLnRva2VuUmVmcmVzaFRpbWVyU3Vic2NyaXB0aW9uID0gdGhpcy50b2tlblJlZnJlc2hUaW1lci5zdWJzY3JpYmUoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFJldHVybiBjdXJyZW50IEpXVCB0b2tlblxyXG4gICAqIEByZXR1cm5zOiB0aGUgc3RyaW5nIEpXVCB0b2tlbiBvciBzdHJpbmcgZW1wdHkgaWYgbm9uZVxyXG4gICAqL1xyXG4gIGdldFRva2VuKCk6IHN0cmluZyB7XHJcbiAgICBsZXQgdG9rZW4gPSBzZXNzaW9uU3RvcmFnZS5nZXRJdGVtKCdzdXBwb3J0X2p3dCcpO1xyXG4gICAgaWYgKHRva2VuKSB7XHJcbiAgICAgIGlmICh0b2tlblswXSA9PT0gJ1wiJykgdG9rZW4gPSB0b2tlbi5zdWJzdHJpbmcoMSwgdG9rZW4ubGVuZ3RoIC0gMSk7XHJcbiAgICAgIHJldHVybiB0b2tlbjtcclxuICAgIH1cclxuICAgIHJldHVybiAnJztcclxuICB9XHJcblxyXG5cclxuICAvKipcclxuKiBQZXJmb3JtIGxvZ2luICAgXHJcbiogQHBhcmFtIGVtYWlsOiB0aGUgZ3Vlc3QgZW1haWxcclxuKiBAcGFyYW0gb2F1dGg6IHRoZSBvcHRpb25hbCBvcGVuIGF1dGhlbnRpY2F0aW9uIHN1cHBvcnRlZFxyXG4qIEBwYXJhbSBvYXV0aEFjY2Vzc1Rva2VuOiB0aGUgb3B0aW9uYWwgb2F1dGgyIGFjY2VzcyB0b2tlblxyXG4qIEByZXR1cm5zOiB0aGUgbG9naW4gcmVzdWx0XHJcbiovXHJcbiAgbG9naW4oZW1haWw6IHN0cmluZyB8IG51bGwgfCB1bmRlZmluZWQgPSBudWxsLFxyXG4gICAgb2F1dGg6IG51bWJlciB8IG51bGwgfCB1bmRlZmluZWQgPSBudWxsLFxyXG4gICAgb2F1dGhBY2Nlc3NUb2tlbjogc3RyaW5nIHwgbnVsbCB8IHVuZGVmaW5lZCA9IG51bGwpIHtcclxuICAgIHRoaXMuY2xlYXIoKTtcclxuICAgIHRoaXMubG9nZ2luZ0luID0gdHJ1ZTtcclxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRcclxuICAgICAgLnBvc3Q8QXBpUmVzdWx0PExvZ2luUmVzdWx0Pj4oXHJcbiAgICAgICAgdGhpcy5fc2VydmljZVVyaSArICcvbG9naW4nLFxyXG4gICAgICAgIHtcclxuICAgICAgICAgIHVzZXI6IG9hdXRoID4gMCA/IG51bGwgOiBlbWFpbCxcclxuICAgICAgICAgIGNsaWVudElkOiBsb2NhbFN0b3JhZ2UuZ2V0SXRlbShcInN1cHBvcnRfY2xpZW50X2lkXCIpLFxyXG4gICAgICAgICAgT0FVVEg6IG9hdXRoXHJcbiAgICAgICAgfSxcclxuICAgICAgICB7XHJcbiAgICAgICAgICBoZWFkZXJzOlxyXG4gICAgICAgICAgICAhb2F1dGhcclxuICAgICAgICAgICAgICA/IG5ldyBIdHRwSGVhZGVycygpXHJcbiAgICAgICAgICAgICAgOiBuZXcgSHR0cEhlYWRlcnMoKVxyXG4gICAgICAgICAgICAgICAgLnNldChcIkF1dGhvcml6YXRpb25cIiwgb2F1dGhBY2Nlc3NUb2tlbilcclxuICAgICAgICB9KVxyXG4gICAgICAucGlwZShcclxuICAgICAgICBjYXRjaEVycm9yKChlcnIpID0+IHtcclxuICAgICAgICAgIHRoaXMubG9nZ2luZ0luID0gZmFsc2U7XHJcbiAgICAgICAgICByZXR1cm4gdGhyb3dFcnJvcigoKSA9PiBlcnIpO1xyXG4gICAgICAgIH0pLFxyXG4gICAgICAgIG1hcCgocjogQXBpUmVzdWx0PExvZ2luUmVzdWx0PikgPT4ge1xyXG4gICAgICAgICAgdGhpcy5sb2dnaW5nSW4gPSBmYWxzZTtcclxuICAgICAgICAgIGlmIChyLnN1Y2Nlc3MpIHtcclxuICAgICAgICAgICAgdGhpcy5wcm9kdWN0cyA9IHRoaXMucHJvZHVjdHM7XHJcbiAgICAgICAgICAgIHRoaXMucHJvZHVjdE1vZHVsZXMgPSB0aGlzLnByb2R1Y3RNb2R1bGVzO1xyXG4gICAgICAgICAgICByZXR1cm4gdGhpcy5oYW5kbGVMb2dpblJlc3VsdChyKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIHJldHVybiByO1xyXG4gICAgICAgIH0pXHJcbiAgICAgICk7XHJcblxyXG4gICAgcmV0dXJuIG51bGw7XHJcbiAgfVxyXG5cclxuXHJcbiAgLyoqXHJcbiAgICogSGFuZGxlIGxvZ2luIHJlc3VsdFxyXG4gICAqIEBwYXJhbSBsb2dpblJlc3VsdCA6IHRoZSBjdXJyZW50IGxvZ2luIHJlc3VsdFxyXG4gICAqIEByZXR1cm5zOiB0aGUgZmluYWwgbG9naW4gcmVzdWx0XHJcbiAgICovXHJcbiAgcHJpdmF0ZSBoYW5kbGVMb2dpblJlc3VsdChcclxuICAgIGxvZ2luUmVzdWx0OiBBcGlSZXN1bHQ8TG9naW5SZXN1bHQ+XHJcbiAgKTogQXBpUmVzdWx0PExvZ2luUmVzdWx0PiB7XHJcbiAgICBpZiAobG9naW5SZXN1bHQuc3VjY2Vzcykge1xyXG4gICAgICAvLyBTdG9yZSBhY2Nlc3MgdG9rZW5cclxuICAgICAgdGhpcy5zZXRUb2tlbihsb2dpblJlc3VsdC52YWx1ZS50b2tlbik7XHJcblxyXG4gICAgICB0aGlzLl9sb2dpbkluZm8gPSBsb2dpblJlc3VsdC52YWx1ZS5jb250ZXh0O1xyXG4gICAgICB0aGlzLl9sb2dnZWRJbiA9IHRydWU7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gbG9naW5SZXN1bHQ7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBQZXJmb3JtIGxvZ291dFxyXG4gICAqL1xyXG4gIGxvZ291dCgpIHtcclxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRcclxuICAgICAgLnBvc3Q8YW55Pih0aGlzLl9zZXJ2aWNlVXJpICsgJy9sb2dvdXQnLCB7fSkucGlwZShcclxuICAgICAgICBtYXAoKHI6IGFueSkgPT4geyByZXR1cm4gcjsgfSksXHJcbiAgICAgICAgY2F0Y2hFcnJvcigoX2UpID0+IHtcclxuICAgICAgICAgIHRoaXMuY2xlYXIoKTtcclxuICAgICAgICAgIHJldHVybiBvZihbXSk7XHJcbiAgICAgICAgfSkpO1xyXG5cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFJlc2V0IGxvZ2luIHJlZnJlc2ggdGltZXIgYW5kIGxvZ2lucyBzdGF0ZVxyXG4gICAqL1xyXG4gIHJlc2V0KCkge1xyXG4gICAgLy8gQ2xlYXIgc3Vic2NyaXB0aW9uc1xyXG4gICAgaWYgKHRoaXMudG9rZW5SZWZyZXNoVGltZXJTdWJzY3JpcHRpb24pIHtcclxuICAgICAgdGhpcy50b2tlblJlZnJlc2hUaW1lclN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xyXG4gICAgICB0aGlzLnRva2VuUmVmcmVzaFRpbWVyU3Vic2NyaXB0aW9uID0gbnVsbDtcclxuICAgIH1cclxuICAgIHRoaXMudG9rZW5SZWZyZXNoVGltZXIgPSBudWxsO1xyXG5cclxuICAgIC8vIENsZWFyIGxvZ2luIGluZm9cclxuICAgIHRoaXMuX2xvZ2luSW5mbyA9IG51bGw7XHJcbiAgICB0aGlzLl9sb2dnZWRJbiA9IGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQ2xlYXIgbG9naW4gZGF0YVxyXG4gICAqL1xyXG4gIGNsZWFyKCkge1xyXG4gICAgLy8gUmVzZXQgbG9naW5cclxuICAgIHRoaXMucmVzZXQoKTtcclxuXHJcbiAgICAvLyBDbGVhciBsb2NhbCBzdG9yYWdlXHJcbiAgICBzZXNzaW9uU3RvcmFnZS5yZW1vdmVJdGVtKCdzdXBwb3J0X2p3dCcpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogUGVyZm9ybSB0b2tlbiByZWZyZXNoXHJcbiAgICovXHJcbiAgcHJpdmF0ZSByZWZyZXNoKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0PEFwaVJlc3VsdDxMb2dpblJlc3VsdD4+KFxyXG4gICAgICB0aGlzLl9zZXJ2aWNlVXJpICsgJy9yZWZyZXNoJywge31cclxuICAgICkucGlwZShtYXAoKHI6IEFwaVJlc3VsdDxMb2dpblJlc3VsdD4pID0+IHtcclxuICAgICAgLy8gVXBkYXRlIHRva2VuXHJcbiAgICAgIHRoaXMuc2V0VG9rZW4oci52YWx1ZS50b2tlbik7XHJcbiAgICB9KSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBOYXZpZ2F0ZSB0byBzdXBwb3J0IHNlcnZpY2VcclxuICAgKi9cclxuICBvcGVuKCkge1xyXG4gICAgbGV0IHVyaSA9IHRoaXMuc2VydmljZVVyaSA/PyAnJztcclxuICAgIGlmICh1cmkuZW5kc1dpdGgoJy9hcGknKSlcclxuICAgICAgdXJpID0gdXJpLnN1YnN0cmluZygwLCB1cmkubGVuZ3RoIC0gNClcclxuICAgIHdpbmRvdy5vcGVuKHVyaSk7XHJcbiAgfVxyXG5cclxuICAvLy8vXHJcbiAgLy8gTk9USUZJQ0FUSU9OU1xyXG4gIC8vLy9cclxuXHJcbiAgLyoqXHJcbiAgICogQ291bnQgdW5yZWFkIG5vdGlmaWNhdGlvbnNcclxuICAgKi9cclxuICBjb3VudFVucmVhZE5vdGlmaWNhdGlvbnMoKSB7XHJcbiAgICB0aGlzLmh0dHBDbGllbnQuZ2V0PEFwaVJlc3VsdDxhbnk+PihcclxuICAgICAgdGhpcy5fc2VydmljZVVyaSArICcvbm90aWZpY2F0aW9ucy9jb3VudC11bnJlYWQvP3Byb2R1Y3RzPScgKyAodGhpcy5wcm9kdWN0cyA/PyAwKSArIFwiJm1vZHVsZXM9XCIgKyAodGhpcy5wcm9kdWN0TW9kdWxlcyA/PyAwKVxyXG4gICAgKS5zdWJzY3JpYmUoKHI6IGFueSkgPT4ge1xyXG4gICAgICBpZiAoci5zdWNjZXNzKSB7XHJcbiAgICAgICAgdGhpcy5fdW5yZWFkTm90aWZpY2F0aW9ucyA9IHIudmFsdWUgPiAwID8gci52YWx1ZSA6IG51bGxcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBRdWVyeSBub3RpZmljYXRpb25zXHJcbiAgICogQHBhcmFtIHBhcmFtczogcXVlcnkgcGFyYW1ldGVyc1xyXG4gICAqL1xyXG4gIHF1ZXJ5Tm90aWZpY2F0aW9ucyhwYXJhbXM6IFN1cHBvcnROb3RpZmljYXRpb25zU2VhcmNoUGFyYW1zKSB7XHJcbiAgICBwYXJhbXMucHJvZHVjdHMgPSB0aGlzLnByb2R1Y3RzID8/IDA7XHJcbiAgICBwYXJhbXMucHJvZHVjdE1vZHVsZXMgPSB0aGlzLnByb2R1Y3RNb2R1bGVzID8/IDA7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBvc3Q8QXBpUmVzdWx0PGFueT4+KFxyXG4gICAgICB0aGlzLl9zZXJ2aWNlVXJpICsgJy9ub3RpZmljYXRpb25zJyxcclxuICAgICAgcGFyYW1zXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogUmV0cmlldmUgYSBub3RpZmljYXRpb25cclxuICAgKiBAcGFyYW0gaWQ6IHRoZSBub3RpZmljYXRpb24gaWRcclxuICAgKi9cclxuICBnZXROb3RpZmljYXRpb24oaWQ6IG51bWJlcikge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudC5nZXQ8QXBpUmVzdWx0PGFueT4+KFxyXG4gICAgICB0aGlzLl9zZXJ2aWNlVXJpICtcclxuICAgICAgJy9ub3RpZmljYXRpb25zLycgK1xyXG4gICAgICBpZFxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIE1hcmsgYSBncm91cCBvZiBub3RpZmljYXRpb25zIGFzIHJlYWRcclxuICAgKiBAcGFyYW0gaWRzOiB0aGUgYXJyYXkgb2Ygbm90aWZpY2F0aW9uJ3MgaWRzIHRvIHNldCBhcyByZWFkXHJcbiAgICovXHJcbiAgbWFya05vdGlmaWNhdGlvbnMocGFyYW1zOiBhbnkpIHtcclxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnQucG9zdDxBcGlSZXN1bHQ8YW55Pj4oXHJcbiAgICAgIHRoaXMuX3NlcnZpY2VVcmkgKyAnL25vdGlmaWNhdGlvbnMvbWFyaycsXHJcbiAgICAgIHBhcmFtc1xyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gKiBEb3dubG9hZCBhIG5vdGlmaWNhdGlvbiBkb2N1bWVudFxyXG4gKiBAcGFyYW0gZG9jdW1lbnRJZCA6IHRoZSBub3RpZmljYXRpb24gZG9jdW1lbnQgaWRcclxuICovXHJcbiAgZG93bG9hZE5vdGlmaWNhdGlvbkRvY3VtZW50KGRvY3VtZW50SWQ6IG51bWJlcikge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudC5nZXQoXHJcbiAgICAgIHRoaXMuX3NlcnZpY2VVcmkgKyAnL2RvY3VtZW50cy9kb3dubG9hZC8nICsgZG9jdW1lbnRJZCxcclxuICAgICAgeyByZXNwb25zZVR5cGU6ICdibG9iJyB9XHJcbiAgICApO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
328
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VwcG9ydC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXJzLXV0aWxzL3N1cHBvcnQuY29tbW9uL2NvbW1vbi9zZXJ2aWNlcy9zdXBwb3J0LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUMvRCxPQUFPLEVBQUUsVUFBVSxFQUFhLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5RCxPQUFPLEVBQWEsZ0JBQWdCLEVBQTBCLFdBQVcsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQy9HLE9BQU8sRUFBRSxLQUFLLEVBQWMsRUFBRSxFQUFnQixVQUFVLEVBQUUsS0FBSyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzlFLE9BQU8sRUFBRSxVQUFVLEVBQUUsR0FBRyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sYUFBYSxDQUFDOztBQU85QyxNQUFNLE9BQU8sY0FBYztJQUgzQjtRQUttQixxQkFBZ0IsR0FBRyxLQUFLLEdBQUcsRUFBRSxDQUFDLENBQUMsUUFBUTtRQUVoRCxlQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ2hDLHFCQUFnQixHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBRTVDLGVBQVUsR0FBWSxLQUFLLENBQUM7UUFDNUIsc0JBQWlCLEdBQXNDLElBQUksQ0FBQztRQUM1RCxrQ0FBNkIsR0FBeUIsSUFBSSxDQUFDO1FBQzNELGlDQUE0QixHQUF5QixJQUFJLENBQUM7UUFHMUQsZUFBVSxHQUFjLElBQUksQ0FBQztRQU03QixjQUFTLEdBQVksS0FBSyxDQUFDO1FBUTNCLGVBQVUsR0FBWSxLQUFLLENBQUM7UUFRNUIsZ0JBQVcsR0FBVyxnQ0FB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O1lBQ2hCLGlCQUFpQjtZQUNqQixFQUFFLENBQ0gsQ0FBQztJQUNKLENBQUM7SUFFRDs7O09BR0c7SUFDSCxpQkFBaUIsQ0FBQyxNQUFXO1FBQzNCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQ3pCLElBQUksQ0FBQyxXQUFXLEdBQUcscUJBQXFCLEVBQ3hDLE1BQU0sQ0FDUCxDQUFDO0lBQ0osQ0FBQztJQUVEOzs7S0FHQztJQUNELDJCQUEyQixDQUFDLFVBQWtCO1FBQzVDLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQ3hCLElBQUksQ0FBQyxXQUFXLEdBQUcsc0JBQXNCLEdBQUcsVUFBVSxFQUN0RCxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsQ0FDekIsQ0FBQztJQUNKLENBQUM7OEdBM1hVLGNBQWM7a0hBQWQsY0FBYyxjQUZiLE1BQU07OzJGQUVQLGNBQWM7a0JBSDFCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENsaWVudCwgSHR0cEhlYWRlcnMgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcbmltcG9ydCB7IEluamVjdGFibGUsIE9uRGVzdHJveSwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEFwaVJlc3VsdCwgQnJvYWRjYXN0U2VydmljZSwgTG9naW5JbmZvLCBMb2dpblJlc3VsdCwgU3lzdGVtVXRpbHMgfSBmcm9tICdAYXJzZWRpemlvbmkvYXJzLXV0aWxzL2NvcmUnO1xyXG5pbXBvcnQgeyBFTVBUWSwgT2JzZXJ2YWJsZSwgb2YsIFN1YnNjcmlwdGlvbiwgdGhyb3dFcnJvciwgdGltZXIgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgY2F0Y2hFcnJvciwgbWFwLCBzaGFyZVJlcGxheSwgc3dpdGNoTWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBTdXBwb3J0TWVzc2FnZXMgfSBmcm9tICcuLi9tZXNzYWdlcyc7XHJcbmltcG9ydCB7IFN1cHBvcnROb3RpZmljYXRpb25zU2VhcmNoUGFyYW1zLCBTdXBwb3J0UHJvZHVjdCwgU3VwcG9ydFByb2R1Y3RNb2R1bGUgfSBmcm9tICcuLi9kZWZpbml0aW9ucyc7XHJcblxyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290JyxcclxufSlcclxuZXhwb3J0IGNsYXNzIFN1cHBvcnRTZXJ2aWNlIGltcGxlbWVudHMgT25EZXN0cm95IHtcclxuXHJcbiAgcHJpdmF0ZSByZWFkb25seSBSRUZSRVNIX0lOVEVSVkFMID0gNjAwMDAgKiA1MDsgLy81MCBtaW5cclxuXHJcbiAgcHJpdmF0ZSBodHRwQ2xpZW50ID0gaW5qZWN0KEh0dHBDbGllbnQpO1xyXG4gIHByaXZhdGUgYnJvYWRjYXN0U2VydmljZSA9IGluamVjdChCcm9hZGNhc3RTZXJ2aWNlKTtcclxuXHJcbiAgcHJpdmF0ZSByZWZyZXNoaW5nOiBib29sZWFuID0gZmFsc2U7XHJcbiAgcHJpdmF0ZSB0b2tlblJlZnJlc2hUaW1lcj86IE9ic2VydmFibGU8bnVtYmVyIHwgdm9pZD4gfCBudWxsID0gbnVsbDtcclxuICBwcml2YXRlIHRva2VuUmVmcmVzaFRpbWVyU3Vic2NyaXB0aW9uPzogU3Vic2NyaXB0aW9uIHwgbnVsbCA9IG51bGw7XHJcbiAgcHJpdmF0ZSBicm9hZGNhc3RTZXJ2aWNlU3Vic2NyaXB0aW9uPzogU3Vic2NyaXB0aW9uIHwgbnVsbCA9IG51bGw7XHJcblxyXG5cclxuICBwcml2YXRlIF9sb2dpbkluZm86IExvZ2luSW5mbyA9IG51bGw7XHJcbiAgZ2V0IGxvZ2luSW5mbygpOiBMb2dpbkluZm8geyByZXR1cm4gdGhpcy5fbG9naW5JbmZvIH07XHJcbiAgc2V0IGxvZ2luSW5mbyh2YWx1ZTogTG9naW5JbmZvKSB7XHJcbiAgICB0aGlzLl9sb2dpbkluZm8gPSB2YWx1ZTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX2xvZ2dlZEluOiBib29sZWFuID0gZmFsc2U7XHJcbiAgZ2V0IGxvZ2dlZEluKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX2xvZ2dlZEluO1xyXG4gIH1cclxuICBzZXQgbG9nZ2VkSW4odmFsdWU6IGJvb2xlYW4pIHtcclxuICAgIHRoaXMuX2xvZ2dlZEluID0gdmFsdWU7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9sb2dnaW5nSW46IGJvb2xlYW4gPSBmYWxzZTtcclxuICBnZXQgbG9nZ2luZ0luKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX2xvZ2dpbmdJbjtcclxuICB9XHJcbiAgc2V0IGxvZ2dpbmdJbih2YWx1ZTogYm9vbGVhbikge1xyXG4gICAgdGhpcy5fbG9nZ2luZ0luID0gdmFsdWU7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9zZXJ2aWNlVXJpOiBzdHJpbmcgPSBcImh0dHBzOi8vc3VwcG9ydC5hcnNlZGl6aW9uaS5pdFwiXHJcbiAgZ2V0IHNlcnZpY2VVcmkoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLl9zZXJ2aWNlVXJpO1xyXG4gIH1cclxuICBzZXQgc2VydmljZVVyaSh2YWx1ZTogc3RyaW5nKSB7XHJcbiAgICB0aGlzLl9zZXJ2aWNlVXJpID0gdmFsdWU7XHJcbiAgfVxyXG4gIHByaXZhdGUgX3NlcnZpY2VQcmVmaXg6IHN0cmluZyA9IFwiXCJcclxuICBnZXQgc2VydmljZVByZWZpeCgpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMuX3NlcnZpY2VQcmVmaXg7XHJcbiAgfVxyXG4gIHNldCBzZXJ2aWNlUHJlZml4KHZhbHVlOiBzdHJpbmcpIHtcclxuICAgIHRoaXMuX3NlcnZpY2VQcmVmaXggPSB2YWx1ZTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX3Byb2R1Y3RzOiBTdXBwb3J0UHJvZHVjdDtcclxuICBnZXQgcHJvZHVjdHMoKTogU3VwcG9ydFByb2R1Y3Qge1xyXG4gICAgcmV0dXJuIHRoaXMuX3Byb2R1Y3RzO1xyXG4gIH1cclxuICBzZXQgcHJvZHVjdHModmFsdWU6IFN1cHBvcnRQcm9kdWN0KSB7XHJcbiAgICB0aGlzLl9wcm9kdWN0cyA9IHZhbHVlO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfcHJvZHVjdE1vZHVsZXM6IFN1cHBvcnRQcm9kdWN0TW9kdWxlO1xyXG4gIGdldCBwcm9kdWN0TW9kdWxlcygpOiBTdXBwb3J0UHJvZHVjdE1vZHVsZSB7XHJcbiAgICByZXR1cm4gdGhpcy5fcHJvZHVjdE1vZHVsZXM7XHJcbiAgfVxyXG4gIHNldCBwcm9kdWN0TW9kdWxlcyh2YWx1ZTogU3VwcG9ydFByb2R1Y3RNb2R1bGUpIHtcclxuICAgIHRoaXMuX3Byb2R1Y3RNb2R1bGVzID0gdmFsdWU7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF91bnJlYWROb3RpZmljYXRpb25zOiBudW1iZXIgPSBudWxsO1xyXG4gIGdldCB1bnJlYWROb3RpZmljYXRpb25zKCk6IG51bWJlciB7XHJcbiAgICByZXR1cm4gdGhpcy5fdW5yZWFkTm90aWZpY2F0aW9ucztcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCkge1xyXG4gICAgLy8gQ2xlYW4tdXBcclxuICAgIGlmICh0aGlzLnRva2VuUmVmcmVzaFRpbWVyU3Vic2NyaXB0aW9uKXtcclxuICAgICAgdGhpcy50b2tlblJlZnJlc2hUaW1lclN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xyXG4gICAgfVxyXG4gICAgaWYgKHRoaXMuYnJvYWRjYXN0U2VydmljZVN1YnNjcmlwdGlvbil7IFxyXG4gICAgICB0aGlzLmJyb2FkY2FzdFNlcnZpY2VTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEluaXRpYWxpemUgc2VydmljZVxyXG4gICAqIEBwYXJhbSBzZXJ2aWNlVXJpIDogdGhlIHNlcnZpY2UgdXJpXHJcbiAgICogQHBhcmFtIHNlcnZpY2VQcmVmaXggOiB0aGUgc2VydmljZSBwcmVmaXggdXNlZCB0byBtYW5hZ2UgbG9jYWwgc3RvcmFnZSBcclxuICAgKiBAcGFyYW0gcHJvZHVjdHM6IHRoZSBzdXBwb3J0ZWQgcHJvZHVjdHNcclxuICAgKi9cclxuICBpbml0aWFsaXplKFxyXG4gICAgc2VydmljZVVyaTogc3RyaW5nID0gbnVsbCxcclxuICAgIHNlcnZpY2VQcmVmaXg6IHN0cmluZyA9IG51bGwsXHJcbiAgICBwcm9kdWN0czogbnVtYmVyID0gMCkge1xyXG5cclxuICAgIC8vIENyZWF0ZSB1bmlxdWUgY2xpZW50IGlkXHJcbiAgICBpZiAoIWxvY2FsU3RvcmFnZS5nZXRJdGVtKCdzdXBwb3J0X2NsaWVudF9pZCcpKVxyXG4gICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgnc3VwcG9ydF9jbGllbnRfaWQnLCBTeXN0ZW1VdGlscy5nZW5lcmF0ZVVVSUQoKSk7XHJcblxyXG4gICAgLy8gSW5pdGlhbGl6ZSB1cmlzXHJcbiAgICBpZiAoc2VydmljZVVyaSlcclxuICAgICAgdGhpcy5fc2VydmljZVVyaSA9IHNlcnZpY2VVcmk7XHJcbiAgICB0aGlzLl9zZXJ2aWNlUHJlZml4ID0gc2VydmljZVByZWZpeDtcclxuICAgIGlmIChwcm9kdWN0cylcclxuICAgICAgdGhpcy5fcHJvZHVjdHMgPSBwcm9kdWN0cztcclxuXHJcbiAgICAvLyBSZWFjdCB0byBtZXNzYWdlIGJyb2FkY2FzdGluZ1xyXG4gICAgaWYgKCF0aGlzLmJyb2FkY2FzdFNlcnZpY2VTdWJzY3JpcHRpb24pIHtcclxuICAgICAgdGhpcy5icm9hZGNhc3RTZXJ2aWNlU3Vic2NyaXB0aW9uID0gdGhpcy5icm9hZGNhc3RTZXJ2aWNlLmdldE1lc3NhZ2UoKS5zdWJzY3JpYmUoKG1lc3NhZ2U6IGFueSkgPT4ge1xyXG4gICAgICAgIGlmIChtZXNzYWdlLmlkID09PSBTdXBwb3J0TWVzc2FnZXMuTE9HSU5fQ0hBTkdFRCkge1xyXG4gICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMubG9naW4obWVzc2FnZS5kYXRhLmVtYWlsLCBtZXNzYWdlLmRhdGEub2F1dGgsIG1lc3NhZ2UuZGF0YS5vYXV0aEFjY2Vzc1Rva2VuKS5zdWJzY3JpYmUoKHI6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICAgIGlmIChyLnN1Y2Nlc3MpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuY291bnRVbnJlYWROb3RpZmljYXRpb25zKCk7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICAgIH0sIDUwMCk7XHJcbiAgICAgICAgfSBlbHNlIGlmIChtZXNzYWdlLmlkID09PSBTdXBwb3J0TWVzc2FnZXMuTE9HT1VUX0NPTVBMRVRFRCB8fFxyXG4gICAgICAgICAgbWVzc2FnZS5pZCA9PT0gU3VwcG9ydE1lc3NhZ2VzLkxPR0lOX0RJU0NPTk5FQ1RFRCkge1xyXG4gICAgICAgICAgaWYgKCF0aGlzLmxvZ2dlZEluKSB7XHJcbiAgICAgICAgICAgIHRoaXMuY2xlYXIoKTtcclxuICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHRoaXMubG9nb3V0KCkuc3Vic2NyaWJlKHtcclxuICAgICAgICAgICAgICBjb21wbGV0ZTogKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5jbGVhcigpO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSBlbHNlIGlmIChtZXNzYWdlLmlkID09PSBTdXBwb3J0TWVzc2FnZXMuTk9USUZJQ0FUSU9OX1JFQUQpIHtcclxuICAgICAgICAgIHRoaXMuY291bnRVbnJlYWROb3RpZmljYXRpb25zKCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICAvLyBFdmVsdWF0ZSBjdXJyZW50IHNlc3Npb24gc3RvcmFnZSBpbiBjYXNlIG9mIHBhZ2UgcmVmcmVzaCAoRjUpXHJcbiAgICBpZiAoIXRoaXMubG9nZ2VkSW4gJiYgdGhpcy5nZXRUb2tlbigpKSB7XHJcbiAgICAgIC8vIEF1dG8gbG9naW5cclxuICAgICAgdGhpcy5sb2dnZWRJbiA9IHRydWU7XHJcblxyXG4gICAgICAvLyBTdGFydCByZWZyZXNoIHRpbWVyXHJcbiAgICAgIHRoaXMuZW5hYmxlVG9rZW5SZWZyZXNoKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICogU2V0IEpXVCB0b2tlblxyXG4gKiBAcGFyYW0gdG9rZW4gOiBUaGUgdG9rZW4gIHRvIHN0b3JlXHJcbiAqL1xyXG4gIHByaXZhdGUgc2V0VG9rZW4odG9rZW46IHN0cmluZykge1xyXG4gICAgc2Vzc2lvblN0b3JhZ2Uuc2V0SXRlbSgnc3VwcG9ydF9qd3QnLCB0b2tlbik7XHJcbiAgICBpZiAodG9rZW4pIHtcclxuICAgICAgdGhpcy5lbmFibGVUb2tlblJlZnJlc2goKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEVuYWJsZSBKV1QgdG9rZW4gYXV0byByZWZyZXNoXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBlbmFibGVUb2tlblJlZnJlc2goKSB7XHJcbiAgICBpZiAoIXRoaXMudG9rZW5SZWZyZXNoVGltZXJTdWJzY3JpcHRpb24pIHtcclxuICAgICAgdGhpcy50b2tlblJlZnJlc2hUaW1lciA9XHJcbiAgICAgICAgdGltZXIodGhpcy5SRUZSRVNIX0lOVEVSVkFMLCB0aGlzLlJFRlJFU0hfSU5URVJWQUwpXHJcbiAgICAgICAgICAucGlwZShcclxuICAgICAgICAgICAgc3dpdGNoTWFwKCgpID0+IHtcclxuICAgICAgICAgICAgICBpZiAodGhpcy5yZWZyZXNoaW5nIHx8ICF0aGlzLmxvZ2dlZEluKSByZXR1cm4gRU1QVFk7XHJcbiAgICAgICAgICAgICAgdGhpcy5yZWZyZXNoaW5nID0gdHJ1ZTtcclxuICAgICAgICAgICAgICB0aGlzLnJlZnJlc2goKS5zdWJzY3JpYmUoXHJcbiAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgIGVycm9yOiAoKSA9PiB7IHRoaXMucmVmcmVzaGluZyA9IGZhbHNlOyB9LFxyXG4gICAgICAgICAgICAgICAgICBjb21wbGV0ZTogKCkgPT4geyB0aGlzLnJlZnJlc2hpbmcgPSBmYWxzZTsgfVxyXG4gICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgcmV0dXJuIEVNUFRZO1xyXG4gICAgICAgICAgICB9KSxcclxuICAgICAgICAgICAgc2hhcmVSZXBsYXkoMSkpO1xyXG4gICAgICB0aGlzLnRva2VuUmVmcmVzaFRpbWVyU3Vic2NyaXB0aW9uID0gdGhpcy50b2tlblJlZnJlc2hUaW1lci5zdWJzY3JpYmUoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFJldHVybiBjdXJyZW50IEpXVCB0b2tlblxyXG4gICAqIEByZXR1cm5zOiB0aGUgc3RyaW5nIEpXVCB0b2tlbiBvciBzdHJpbmcgZW1wdHkgaWYgbm9uZVxyXG4gICAqL1xyXG4gIGdldFRva2VuKCk6IHN0cmluZyB7XHJcbiAgICBsZXQgdG9rZW4gPSBzZXNzaW9uU3RvcmFnZS5nZXRJdGVtKCdzdXBwb3J0X2p3dCcpO1xyXG4gICAgaWYgKHRva2VuKSB7XHJcbiAgICAgIGlmICh0b2tlblswXSA9PT0gJ1wiJykgdG9rZW4gPSB0b2tlbi5zdWJzdHJpbmcoMSwgdG9rZW4ubGVuZ3RoIC0gMSk7XHJcbiAgICAgIHJldHVybiB0b2tlbjtcclxuICAgIH1cclxuICAgIHJldHVybiAnJztcclxuICB9XHJcblxyXG5cclxuICAvKipcclxuKiBQZXJmb3JtIGxvZ2luICAgXHJcbiogQHBhcmFtIGVtYWlsOiB0aGUgZ3Vlc3QgZW1haWxcclxuKiBAcGFyYW0gb2F1dGg6IHRoZSBvcHRpb25hbCBvcGVuIGF1dGhlbnRpY2F0aW9uIHN1cHBvcnRlZFxyXG4qIEBwYXJhbSBvYXV0aEFjY2Vzc1Rva2VuOiB0aGUgb3B0aW9uYWwgb2F1dGgyIGFjY2VzcyB0b2tlblxyXG4qIEByZXR1cm5zOiB0aGUgbG9naW4gcmVzdWx0XHJcbiovXHJcbiAgbG9naW4oZW1haWw6IHN0cmluZyB8IG51bGwgfCB1bmRlZmluZWQgPSBudWxsLFxyXG4gICAgb2F1dGg6IG51bWJlciB8IG51bGwgfCB1bmRlZmluZWQgPSBudWxsLFxyXG4gICAgb2F1dGhBY2Nlc3NUb2tlbjogc3RyaW5nIHwgbnVsbCB8IHVuZGVmaW5lZCA9IG51bGwpIHtcclxuICAgIHRoaXMuY2xlYXIoKTtcclxuICAgIHRoaXMubG9nZ2luZ0luID0gdHJ1ZTtcclxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRcclxuICAgICAgLnBvc3Q8QXBpUmVzdWx0PExvZ2luUmVzdWx0Pj4oXHJcbiAgICAgICAgdGhpcy5fc2VydmljZVVyaSArICcvbG9naW4nLFxyXG4gICAgICAgIHtcclxuICAgICAgICAgIHVzZXI6IG9hdXRoID4gMCA/IG51bGwgOiBlbWFpbCxcclxuICAgICAgICAgIGNsaWVudElkOiBsb2NhbFN0b3JhZ2UuZ2V0SXRlbShcInN1cHBvcnRfY2xpZW50X2lkXCIpLFxyXG4gICAgICAgICAgT0FVVEg6IG9hdXRoXHJcbiAgICAgICAgfSxcclxuICAgICAgICB7XHJcbiAgICAgICAgICBoZWFkZXJzOlxyXG4gICAgICAgICAgICAhb2F1dGhcclxuICAgICAgICAgICAgICA/IG5ldyBIdHRwSGVhZGVycygpXHJcbiAgICAgICAgICAgICAgOiBuZXcgSHR0cEhlYWRlcnMoKVxyXG4gICAgICAgICAgICAgICAgLnNldChcIkF1dGhvcml6YXRpb25cIiwgb2F1dGhBY2Nlc3NUb2tlbilcclxuICAgICAgICB9KVxyXG4gICAgICAucGlwZShcclxuICAgICAgICBjYXRjaEVycm9yKChlcnIpID0+IHtcclxuICAgICAgICAgIHRoaXMubG9nZ2luZ0luID0gZmFsc2U7XHJcbiAgICAgICAgICByZXR1cm4gdGhyb3dFcnJvcigoKSA9PiBlcnIpO1xyXG4gICAgICAgIH0pLFxyXG4gICAgICAgIG1hcCgocjogQXBpUmVzdWx0PExvZ2luUmVzdWx0PikgPT4ge1xyXG4gICAgICAgICAgdGhpcy5sb2dnaW5nSW4gPSBmYWxzZTtcclxuICAgICAgICAgIGlmIChyLnN1Y2Nlc3MpIHtcclxuICAgICAgICAgICAgdGhpcy5wcm9kdWN0cyA9IHRoaXMucHJvZHVjdHM7XHJcbiAgICAgICAgICAgIHRoaXMucHJvZHVjdE1vZHVsZXMgPSB0aGlzLnByb2R1Y3RNb2R1bGVzO1xyXG4gICAgICAgICAgICByZXR1cm4gdGhpcy5oYW5kbGVMb2dpblJlc3VsdChyKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIHJldHVybiByO1xyXG4gICAgICAgIH0pXHJcbiAgICAgICk7XHJcblxyXG4gICAgcmV0dXJuIG51bGw7XHJcbiAgfVxyXG5cclxuXHJcbiAgLyoqXHJcbiAgICogSGFuZGxlIGxvZ2luIHJlc3VsdFxyXG4gICAqIEBwYXJhbSBsb2dpblJlc3VsdCA6IHRoZSBjdXJyZW50IGxvZ2luIHJlc3VsdFxyXG4gICAqIEByZXR1cm5zOiB0aGUgZmluYWwgbG9naW4gcmVzdWx0XHJcbiAgICovXHJcbiAgcHJpdmF0ZSBoYW5kbGVMb2dpblJlc3VsdChcclxuICAgIGxvZ2luUmVzdWx0OiBBcGlSZXN1bHQ8TG9naW5SZXN1bHQ+XHJcbiAgKTogQXBpUmVzdWx0PExvZ2luUmVzdWx0PiB7XHJcbiAgICBpZiAobG9naW5SZXN1bHQuc3VjY2Vzcykge1xyXG4gICAgICAvLyBTdG9yZSBhY2Nlc3MgdG9rZW5cclxuICAgICAgdGhpcy5zZXRUb2tlbihsb2dpblJlc3VsdC52YWx1ZS50b2tlbik7XHJcblxyXG4gICAgICB0aGlzLl9sb2dpbkluZm8gPSBsb2dpblJlc3VsdC52YWx1ZS5jb250ZXh0O1xyXG4gICAgICB0aGlzLl9sb2dnZWRJbiA9IHRydWU7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gbG9naW5SZXN1bHQ7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBQZXJmb3JtIGxvZ291dFxyXG4gICAqL1xyXG4gIGxvZ291dCgpIHtcclxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRcclxuICAgICAgLnBvc3Q8YW55Pih0aGlzLl9zZXJ2aWNlVXJpICsgJy9sb2dvdXQnLCB7fSkucGlwZShcclxuICAgICAgICBtYXAoKHI6IGFueSkgPT4geyByZXR1cm4gcjsgfSksXHJcbiAgICAgICAgY2F0Y2hFcnJvcigoX2UpID0+IHtcclxuICAgICAgICAgIHRoaXMuY2xlYXIoKTtcclxuICAgICAgICAgIHJldHVybiBvZihbXSk7XHJcbiAgICAgICAgfSkpO1xyXG5cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFJlc2V0IGxvZ2luIHJlZnJlc2ggdGltZXIgYW5kIGxvZ2lucyBzdGF0ZVxyXG4gICAqL1xyXG4gIHJlc2V0KCkge1xyXG4gICAgLy8gQ2xlYXIgc3Vic2NyaXB0aW9uc1xyXG4gICAgaWYgKHRoaXMudG9rZW5SZWZyZXNoVGltZXJTdWJzY3JpcHRpb24pIHtcclxuICAgICAgdGhpcy50b2tlblJlZnJlc2hUaW1lclN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xyXG4gICAgICB0aGlzLnRva2VuUmVmcmVzaFRpbWVyU3Vic2NyaXB0aW9uID0gbnVsbDtcclxuICAgIH1cclxuICAgIHRoaXMudG9rZW5SZWZyZXNoVGltZXIgPSBudWxsO1xyXG5cclxuICAgIC8vIENsZWFyIGxvZ2luIGluZm9cclxuICAgIHRoaXMuX2xvZ2luSW5mbyA9IG51bGw7XHJcbiAgICB0aGlzLl9sb2dnZWRJbiA9IGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQ2xlYXIgbG9naW4gZGF0YVxyXG4gICAqL1xyXG4gIGNsZWFyKCkge1xyXG4gICAgLy8gUmVzZXQgbG9naW5cclxuICAgIHRoaXMucmVzZXQoKTtcclxuXHJcbiAgICAvLyBDbGVhciBsb2NhbCBzdG9yYWdlXHJcbiAgICBzZXNzaW9uU3RvcmFnZS5yZW1vdmVJdGVtKCdzdXBwb3J0X2p3dCcpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogUGVyZm9ybSB0b2tlbiByZWZyZXNoXHJcbiAgICovXHJcbiAgcHJpdmF0ZSByZWZyZXNoKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0PEFwaVJlc3VsdDxMb2dpblJlc3VsdD4+KFxyXG4gICAgICB0aGlzLl9zZXJ2aWNlVXJpICsgJy9yZWZyZXNoJywge31cclxuICAgICkucGlwZShtYXAoKHI6IEFwaVJlc3VsdDxMb2dpblJlc3VsdD4pID0+IHtcclxuICAgICAgLy8gVXBkYXRlIHRva2VuXHJcbiAgICAgIHRoaXMuc2V0VG9rZW4oci52YWx1ZS50b2tlbik7XHJcbiAgICB9KSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBOYXZpZ2F0ZSB0byBzdXBwb3J0IHNlcnZpY2VcclxuICAgKi9cclxuICBvcGVuKCkge1xyXG4gICAgbGV0IHVyaSA9IHRoaXMuc2VydmljZVVyaSA/PyAnJztcclxuICAgIGlmICh1cmkuZW5kc1dpdGgoJy9hcGknKSlcclxuICAgICAgdXJpID0gdXJpLnN1YnN0cmluZygwLCB1cmkubGVuZ3RoIC0gNClcclxuICAgIHdpbmRvdy5vcGVuKHVyaSk7XHJcbiAgfVxyXG5cclxuICAvLy8vXHJcbiAgLy8gTk9USUZJQ0FUSU9OU1xyXG4gIC8vLy9cclxuXHJcbiAgLyoqXHJcbiAgICogQ291bnQgdW5yZWFkIG5vdGlmaWNhdGlvbnNcclxuICAgKi9cclxuICBjb3VudFVucmVhZE5vdGlmaWNhdGlvbnMoKSB7XHJcbiAgICB0aGlzLmh0dHBDbGllbnQuZ2V0PEFwaVJlc3VsdDxhbnk+PihcclxuICAgICAgdGhpcy5fc2VydmljZVVyaSArICcvbm90aWZpY2F0aW9ucy9jb3VudC11bnJlYWQvP3Byb2R1Y3RzPScgKyAodGhpcy5wcm9kdWN0cyA/PyAwKSArIFwiJm1vZHVsZXM9XCIgKyAodGhpcy5wcm9kdWN0TW9kdWxlcyA/PyAwKVxyXG4gICAgKS5zdWJzY3JpYmUoKHI6IGFueSkgPT4ge1xyXG4gICAgICBpZiAoci5zdWNjZXNzKSB7XHJcbiAgICAgICAgdGhpcy5fdW5yZWFkTm90aWZpY2F0aW9ucyA9IHIudmFsdWUgPiAwID8gci52YWx1ZSA6IG51bGxcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBRdWVyeSBub3RpZmljYXRpb25zXHJcbiAgICogQHBhcmFtIHBhcmFtczogcXVlcnkgcGFyYW1ldGVyc1xyXG4gICAqL1xyXG4gIHF1ZXJ5Tm90aWZpY2F0aW9ucyhwYXJhbXM6IFN1cHBvcnROb3RpZmljYXRpb25zU2VhcmNoUGFyYW1zKSB7XHJcbiAgICBwYXJhbXMucHJvZHVjdHMgPSB0aGlzLnByb2R1Y3RzID8/IDA7XHJcbiAgICBwYXJhbXMucHJvZHVjdE1vZHVsZXMgPSB0aGlzLnByb2R1Y3RNb2R1bGVzID8/IDA7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBvc3Q8QXBpUmVzdWx0PGFueT4+KFxyXG4gICAgICB0aGlzLl9zZXJ2aWNlVXJpICsgJy9ub3RpZmljYXRpb25zJyxcclxuICAgICAgcGFyYW1zXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogUmV0cmlldmUgYSBub3RpZmljYXRpb25cclxuICAgKiBAcGFyYW0gaWQ6IHRoZSBub3RpZmljYXRpb24gaWRcclxuICAgKi9cclxuICBnZXROb3RpZmljYXRpb24oaWQ6IG51bWJlcikge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudC5nZXQ8QXBpUmVzdWx0PGFueT4+KFxyXG4gICAgICB0aGlzLl9zZXJ2aWNlVXJpICtcclxuICAgICAgJy9ub3RpZmljYXRpb25zLycgK1xyXG4gICAgICBpZFxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIE1hcmsgYSBncm91cCBvZiBub3RpZmljYXRpb25zIGFzIHJlYWRcclxuICAgKiBAcGFyYW0gaWRzOiB0aGUgYXJyYXkgb2Ygbm90aWZpY2F0aW9uJ3MgaWRzIHRvIHNldCBhcyByZWFkXHJcbiAgICovXHJcbiAgbWFya05vdGlmaWNhdGlvbnMocGFyYW1zOiBhbnkpIHtcclxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnQucG9zdDxBcGlSZXN1bHQ8YW55Pj4oXHJcbiAgICAgIHRoaXMuX3NlcnZpY2VVcmkgKyAnL25vdGlmaWNhdGlvbnMvbWFyaycsXHJcbiAgICAgIHBhcmFtc1xyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gKiBEb3dubG9hZCBhIG5vdGlmaWNhdGlvbiBkb2N1bWVudFxyXG4gKiBAcGFyYW0gZG9jdW1lbnRJZCA6IHRoZSBub3RpZmljYXRpb24gZG9jdW1lbnQgaWRcclxuICovXHJcbiAgZG93bG9hZE5vdGlmaWNhdGlvbkRvY3VtZW50KGRvY3VtZW50SWQ6IG51bWJlcikge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudC5nZXQoXHJcbiAgICAgIHRoaXMuX3NlcnZpY2VVcmkgKyAnL2RvY3VtZW50cy9kb3dubG9hZC8nICsgZG9jdW1lbnRJZCxcclxuICAgICAgeyByZXNwb25zZVR5cGU6ICdibG9iJyB9XHJcbiAgICApO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -3,6 +3,6 @@
|
|
|
3
3
|
*/
|
|
4
4
|
export * from './common/common.module';
|
|
5
5
|
export * from './common/messages';
|
|
6
|
-
export * from './common/
|
|
6
|
+
export * from './common/definitions';
|
|
7
7
|
export * from './common/services/support.service';
|
|
8
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
8
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2Fycy11dGlscy9zdXBwb3J0LmNvbW1vbi9wdWJsaWNfYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBQ0gsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLG1CQUFtQixDQUFDO0FBQ2xDLGNBQWMsc0JBQXNCLENBQUM7QUFDckMsY0FBYyxtQ0FBbUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBhcnMtdXRpbHNcclxuICovXHJcbmV4cG9ydCAqIGZyb20gJy4vY29tbW9uL2NvbW1vbi5tb2R1bGUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2NvbW1vbi9tZXNzYWdlcyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vY29tbW9uL2RlZmluaXRpb25zJztcclxuZXhwb3J0ICogZnJvbSAnLi9jb21tb24vc2VydmljZXMvc3VwcG9ydC5zZXJ2aWNlJztcclxuXHJcblxyXG4iXX0=
|
|
@@ -98,11 +98,11 @@ export class SupportNotificationComponent {
|
|
|
98
98
|
window.open(item.url, '_blank');
|
|
99
99
|
}
|
|
100
100
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.3", ngImport: i0, type: SupportNotificationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
101
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.0.3", type: SupportNotificationComponent, isStandalone: true, selector: "ng-component", host: { attributes: { "Bind": SystemUtils.generateUUID() } }, ngImport: i0, template: "<div class=\"support-notification-fixed\">\r\n <div class=\"support-notification-header\">\r\n <div fxLayout=\"row\" fxLayoutAlign=\"start center\" fxLayoutGap=\"10px\" fxFill >\r\n <div fxFlex=\"*\">\r\n <h2 mat-dialog-title>{{item?.title}}</h2>\r\n </div>\r\n <div fxLayoutAlign=\"end\">\r\n <button fxFlexAlign=\"start\" type=\"button\" mat-icon-button matTooltip=\"Chiudi\"\r\n aria-label=\"Chiudi\" [mat-dialog-close]=\"true\" class=\"dialog-close\">\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n<div mat-dialog-content id=\"notification-scrollable\">\r\n <div id=\"notification-scroller\">\r\n <div [innerHtml]=\"(item?.text ?? 'Caricamento in corso...') | safeHtml\"></div>\r\n </div>\r\n</div>\r\n<div mat-dialog-actions class=\"notification-fixed\">\r\n <div style=\"padding: 10px 0\">\r\n @if (item?.documents && item?.documents.length > 0) {\r\n <button type=\"button\" mat-button [attr.aria-label]=\"'Documenti scaricabili'\" [matMenuTriggerFor]=\"documentsMenu\"\r\n color=\"primary\">\r\n {{item?.documents.length}} @if (item?.documents.length === 1) {\r\n <span>Documento scaricabile</span>\r\n }\r\n @if (item?.documents.length !== 1) {\r\n <span>Documenti scaricabili</span>\r\n }\r\n <mat-icon class=\"icon-menu-drop-down\">arrow_drop_down</mat-icon>\r\n </button>\r\n }\r\n <mat-menu #documentsMenu=\"matMenu\">\r\n <ng-template matMenuContent>\r\n @for (doc of item?.documents; track doc) {\r\n <button mat-menu-item (click)=\"downloadDocument(doc)\">\r\n @if (doc.isBinary) {\r\n <mat-icon>attach_file</mat-icon>\r\n }\r\n @if (!doc.isBinary) {\r\n <mat-icon>link</mat-icon>\r\n }\r\n {{doc.name}}\r\n </button>\r\n }\r\n </ng-template>\r\n </mat-menu>\r\n </div>\r\n</div>", styles: [":root{--ars-color-link: #03A9F4;--ars-color-link-low: #0288D1;--ars-color-accent: #7894ae;--ars-color-accent-low: #456179;--ars-color-primary: #00a293;--ars-color-primary-low: #006a60;--ars-color-primary-hi: #12c0ae;--ars-color-secondary: #4a635f;--ars-color-secondary-low: #27403c;--ars-color-error: #ff5449;--ars-color-error-low: #a80710;--ars-color-ok: #388E3C;--ars-color-ok-low: #29692c;--ars-color-warning: #FFC107;--ars-color-warning-low: #FFA000;--ars-item-hover-background-color: #eaecef;--ars-item-selected-background-color: #ced1d2;--ars-item-opaque-background-color: rgba(255, 255, 255, .75);--ars-filterbox-filtered-background-color: #f9fbe7}.dialog-info{font-size:x-small;font-weight:700;text-align:right;padding:10px}.dialog-info-green,.dialog-info-ok{color:var(--ars-color-ok, #388E3C)}.dialog-info-red,.dialog-info-error{color:var(--mat-form-field-error-text-color, #a80710)}.dialog-close{margin-right:10px;margin-top:10px}.dialog-menu{margin-left:10px;margin-top:10px}.dialog-title{padding:0 24px}.section-title{font-size:large;font-weight:600;padding-top:10px;padding-bottom:8px}.scroll-auto{overflow:auto}.scroll-hidden{overflow:hidden}b{font-weight:700}.large{font-size:large!important}.small{font-size:small!important}.small-icon-button{width:1.5rem!important;height:1.5rem!important;padding:0!important;display:inline-flex!important;align-items:center;justify-content:center}.small-icon-button .mat-mdc-button-touch-target{width:1.5rem!important;height:1.5rem!important}.x-small{font-size:x-small!important}.uppercase{text-transform:uppercase!important}.lowercase{text-transform:lowercase!important}.truncated{min-width:0}.truncated span,.truncated div{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media (prefers-color-scheme: dark){:root{--ars-color-link: #03A9F4;--ars-color-link-low: #0288D1;--ars-color-accent: #adcae6;--ars-color-accent-low: #5e7a93;--ars-color-primary: #53dbc9;--ars-color-primary-low: #008679;--ars-color-primary-hi: #74f8e5;--ars-color-secondary: #b1ccc6;--ars-color-secondary-low: #627c77;--ars-color-error: #ff5449;--ars-color-error-low: #a80710;--ars-color-ok: #4CAF50;--ars-color-ok-low: #3f8f41;--ars-color-warning: #FFC107;--ars-color-warning-low: #FFA000;--ars-item-hover-background-color: #262a29;--ars-item-selected-background-color: #3f4342;--ars-item-opaque-background-color: rgba(0, 0, 0, .65);--ars-filterbox-filtered-background-color: #c6c7b8}.dialog-info-green,.dialog-info-ok{color:var(--ars-color-ok, #4CAF50)}.dialog-info-red,.dialog-info-error{color:var(--mat-form-field-error-text-color, #ff5449)}b{font-weight:600}}\n"], dependencies: [{ kind: "ngmodule", type: FlexModule }, { kind: "directive", type: i1.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i1.DefaultLayoutGapDirective, selector: " [fxLayoutGap], [fxLayoutGap.xs], [fxLayoutGap.sm], [fxLayoutGap.md], [fxLayoutGap.lg], [fxLayoutGap.xl], [fxLayoutGap.lt-sm], [fxLayoutGap.lt-md], [fxLayoutGap.lt-lg], [fxLayoutGap.lt-xl], [fxLayoutGap.gt-xs], [fxLayoutGap.gt-sm], [fxLayoutGap.gt-md], [fxLayoutGap.gt-lg]", inputs: ["fxLayoutGap", "fxLayoutGap.xs", "fxLayoutGap.sm", "fxLayoutGap.md", "fxLayoutGap.lg", "fxLayoutGap.xl", "fxLayoutGap.lt-sm", "fxLayoutGap.lt-md", "fxLayoutGap.lt-lg", "fxLayoutGap.lt-xl", "fxLayoutGap.gt-xs", "fxLayoutGap.gt-sm", "fxLayoutGap.gt-md", "fxLayoutGap.gt-lg"] }, { kind: "directive", type: i1.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { kind: "directive", type: i1.FlexFillDirective, selector: "[fxFill], [fxFlexFill]" }, { kind: "directive", type: i1.DefaultFlexAlignDirective, selector: " [fxFlexAlign], [fxFlexAlign.xs], [fxFlexAlign.sm], [fxFlexAlign.md], [fxFlexAlign.lg], [fxFlexAlign.xl], [fxFlexAlign.lt-sm], [fxFlexAlign.lt-md], [fxFlexAlign.lt-lg], [fxFlexAlign.lt-xl], [fxFlexAlign.gt-xs], [fxFlexAlign.gt-sm], [fxFlexAlign.gt-md], [fxFlexAlign.gt-lg]", inputs: ["fxFlexAlign", "fxFlexAlign.xs", "fxFlexAlign.sm", "fxFlexAlign.md", "fxFlexAlign.lg", "fxFlexAlign.xl", "fxFlexAlign.lt-sm", "fxFlexAlign.lt-md", "fxFlexAlign.lt-lg", "fxFlexAlign.lt-xl", "fxFlexAlign.gt-xs", "fxFlexAlign.gt-sm", "fxFlexAlign.gt-md", "fxFlexAlign.gt-lg"] }, { kind: "directive", type: i1.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { kind: "directive", type: MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i2.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i2.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i3.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "directive", type: MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "directive", type: MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "ngmodule", type: MatMenuModule }, { kind: "component", type: i5.MatMenu, selector: "mat-menu", inputs: ["backdropClass", "aria-label", "aria-labelledby", "aria-describedby", "xPosition", "yPosition", "overlapTrigger", "hasBackdrop", "class", "classList"], outputs: ["closed", "close"], exportAs: ["matMenu"] }, { kind: "component", type: i5.MatMenuItem, selector: "[mat-menu-item]", inputs: ["role", "disabled", "disableRipple"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i5.MatMenuContent, selector: "ng-template[matMenuContent]" }, { kind: "directive", type: i5.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", inputs: ["mat-menu-trigger-for", "matMenuTriggerFor", "matMenuTriggerData", "matMenuTriggerRestoreFocus"], outputs: ["menuOpened", "onMenuOpen", "menuClosed", "onMenuClose"], exportAs: ["matMenuTrigger"] }, { kind: "pipe", type: SafeHtmlPipe, name: "safeHtml" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
101
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.0.3", type: SupportNotificationComponent, isStandalone: true, selector: "ng-component", host: { attributes: { "Bind": SystemUtils.generateUUID() } }, ngImport: i0, template: "<div class=\"support-notification-fixed\">\r\n <div class=\"support-notification-header\">\r\n <div fxLayout=\"row\" fxLayoutAlign=\"start center\" fxLayoutGap=\"10px\" fxFill >\r\n <div fxFlex=\"*\">\r\n <h2 mat-dialog-title>{{item?.title}}</h2>\r\n </div>\r\n <div fxLayoutAlign=\"end\">\r\n <button fxFlexAlign=\"start\" type=\"button\" mat-icon-button matTooltip=\"Chiudi\"\r\n aria-label=\"Chiudi\" [mat-dialog-close]=\"true\" class=\"dialog-close\">\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n<div mat-dialog-content id=\"notification-scrollable\">\r\n <div id=\"notification-scroller\">\r\n <div [innerHtml]=\"(item?.text ?? 'Caricamento in corso...') | safeHtml\"></div>\r\n </div>\r\n</div>\r\n<div mat-dialog-actions class=\"notification-fixed\">\r\n <div style=\"padding: 10px 0\">\r\n @if (item?.documents && item?.documents.length > 0) {\r\n <button type=\"button\" mat-button [attr.aria-label]=\"'Documenti scaricabili'\" [matMenuTriggerFor]=\"documentsMenu\"\r\n color=\"primary\">\r\n {{item?.documents.length}} @if (item?.documents.length === 1) {\r\n <span>Documento scaricabile</span>\r\n }\r\n @if (item?.documents.length !== 1) {\r\n <span>Documenti scaricabili</span>\r\n }\r\n <mat-icon class=\"icon-menu-drop-down\">arrow_drop_down</mat-icon>\r\n </button>\r\n }\r\n <mat-menu #documentsMenu=\"matMenu\">\r\n <ng-template matMenuContent>\r\n @for (doc of item?.documents; track doc) {\r\n <button mat-menu-item (click)=\"downloadDocument(doc)\">\r\n @if (doc.isBinary) {\r\n <mat-icon>attach_file</mat-icon>\r\n }\r\n @if (!doc.isBinary) {\r\n <mat-icon>link</mat-icon>\r\n }\r\n {{doc.name}}\r\n </button>\r\n }\r\n </ng-template>\r\n </mat-menu>\r\n </div>\r\n</div>", styles: [":root{--ars-color-link: #03A9F4;--ars-color-link-low: #0288D1;--ars-color-accent: #7894ae;--ars-color-accent-low: #456179;--ars-color-primary: #00a293;--ars-color-primary-low: #006a60;--ars-color-primary-hi: #12c0ae;--ars-color-secondary: #4a635f;--ars-color-secondary-low: #27403c;--ars-color-error: #ff5449;--ars-color-error-low: #a80710;--ars-color-ok: #388E3C;--ars-color-ok-low: #29692c;--ars-color-warning: #FFC107;--ars-color-warning-low: #FFA000;--ars-color-text: #191c1b;--ars-color-text-low: #e0e2e5;--ars-color-divider: #757d87;--ars-drawer-background-color: #eff1ef;--ars-drawer-background-color-low: #e0e3e1;--ars-item-hover-background-color: #eaecef;--ars-item-selected-background-color: #ced1d2;--ars-item-opaque-background-color: rgba(255, 255, 255, .75);--ars-filterbox-filtered-background-color: #f9fbe7}.dialog-info{font-size:x-small;font-weight:700;text-align:right;padding:10px}.dialog-info-green,.dialog-info-ok{color:var(--ars-color-ok, #388E3C)}.dialog-info-red,.dialog-info-error{color:var(--mat-form-field-error-text-color, #a80710)}.dialog-close{margin-right:10px;margin-top:10px}.dialog-menu{margin-left:10px;margin-top:10px}.dialog-title{padding:0 24px}.section-title{font-size:large;font-weight:600;padding-top:10px;padding-bottom:8px}.center{text-align:center}.wide{min-width:100%!important;max-width:100%;width:100%}.fill{min-width:100%!important;max-width:100%;width:100%;min-height:100%!important;max-height:100%;height:100%}.scroll-auto{overflow:auto}.scroll-hidden{overflow:hidden}b{font-weight:700}.large{font-size:large!important}.smaller{font-size:smaller}.small{font-size:small!important}.small-icon-button{width:1.5rem!important;height:1.5rem!important;padding:0!important;display:inline-flex!important;align-items:center;justify-content:center}.small-icon-button .mat-mdc-button-touch-target{width:1.5rem!important;height:1.5rem!important}.x-small{font-size:x-small!important}.uppercase{text-transform:uppercase!important}.lowercase{text-transform:lowercase!important}.truncated{min-width:0}.truncated span,.truncated div{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.accent{color:var(--ars-accent)!important}.primary{color:var(--ars-primary)!important}.secondary{color:var(--ars-secondary)!important}.error{color:var(--ars-error)!important}.warning{color:var(--ars-warning)!important}.drawer-content{padding-top:10px}.drawer,.drawer-small{min-width:420px!important;max-width:420px!important;padding:20px 5px 5px;background-color:var(--ars-drawer-background-color)!important}.drawer .title,.drawer-small .title{font-size:1.2em;font-weight:600;padding-left:10px;min-width:200px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.drawer .fade-in,.drawer-small .fade-in{animation:fadein .5s linear}@keyframes fadein{0%{opacity:0}to{opacity:1}}.drawer .content,.drawer-small .content{padding:10px 0}.drawer .fixed,.drawer-small .fixed{padding:0 4px}.drawer .accordion-panel,.drawer-small .accordion-panel{background-color:transparent}.drawer .accordion-header,.drawer-small .accordion-header{padding-left:15px;padding-right:20px;border-radius:var(--mat-expansion-container-shape)}.drawer .mat-expansion-panel-body,.drawer-small .mat-expansion-panel-body{padding-bottom:20px!important}.drawer-small{min-width:360px!important;max-width:360px!important}.drawer-small .title{min-width:150px}.drawer-small .content{padding:20px 0 10px}@media screen and (min-width: 0px) and (max-width: 359px){.drawer{min-width:360px!important;max-width:360px!important}.drawer .title{min-width:150px}}@media (prefers-color-scheme: dark){:root{--ars-color-link: #03A9F4;--ars-color-link-low: #0288D1;--ars-color-accent: #adcae6;--ars-color-accent-low: #5e7a93;--ars-color-primary: #53dbc9;--ars-color-primary-low: #008679;--ars-color-primary-hi: #74f8e5;--ars-color-secondary: #b1ccc6;--ars-color-secondary-low: #627c77;--ars-color-error: #ff5449;--ars-color-error-low: #a80710;--ars-color-ok: #4CAF50;--ars-color-ok-low: #3f8f41;--ars-color-warning: #FFC107;--ars-color-warning-low: #FFA000;--ars-color-text: #e0e2e5;--ars-color-text-low: #191c1b;--ars-color-divider: #757d87;--ars-drawer-background-color: #323534;--ars-drawer-background-color-low: #424444;--ars-item-hover-background-color: #262a29;--ars-item-selected-background-color: #3f4342;--ars-item-opaque-background-color: rgba(0, 0, 0, .65);--ars-filterbox-filtered-background-color: #c6c7b8}.dialog-info-green,.dialog-info-ok{color:var(--ars-color-ok, #4CAF50)}.dialog-info-red,.dialog-info-error{color:var(--mat-form-field-error-text-color, #ff5449)}b{font-weight:600}}\n"], dependencies: [{ kind: "ngmodule", type: FlexModule }, { kind: "directive", type: i1.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i1.DefaultLayoutGapDirective, selector: " [fxLayoutGap], [fxLayoutGap.xs], [fxLayoutGap.sm], [fxLayoutGap.md], [fxLayoutGap.lg], [fxLayoutGap.xl], [fxLayoutGap.lt-sm], [fxLayoutGap.lt-md], [fxLayoutGap.lt-lg], [fxLayoutGap.lt-xl], [fxLayoutGap.gt-xs], [fxLayoutGap.gt-sm], [fxLayoutGap.gt-md], [fxLayoutGap.gt-lg]", inputs: ["fxLayoutGap", "fxLayoutGap.xs", "fxLayoutGap.sm", "fxLayoutGap.md", "fxLayoutGap.lg", "fxLayoutGap.xl", "fxLayoutGap.lt-sm", "fxLayoutGap.lt-md", "fxLayoutGap.lt-lg", "fxLayoutGap.lt-xl", "fxLayoutGap.gt-xs", "fxLayoutGap.gt-sm", "fxLayoutGap.gt-md", "fxLayoutGap.gt-lg"] }, { kind: "directive", type: i1.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { kind: "directive", type: i1.FlexFillDirective, selector: "[fxFill], [fxFlexFill]" }, { kind: "directive", type: i1.DefaultFlexAlignDirective, selector: " [fxFlexAlign], [fxFlexAlign.xs], [fxFlexAlign.sm], [fxFlexAlign.md], [fxFlexAlign.lg], [fxFlexAlign.xl], [fxFlexAlign.lt-sm], [fxFlexAlign.lt-md], [fxFlexAlign.lt-lg], [fxFlexAlign.lt-xl], [fxFlexAlign.gt-xs], [fxFlexAlign.gt-sm], [fxFlexAlign.gt-md], [fxFlexAlign.gt-lg]", inputs: ["fxFlexAlign", "fxFlexAlign.xs", "fxFlexAlign.sm", "fxFlexAlign.md", "fxFlexAlign.lg", "fxFlexAlign.xl", "fxFlexAlign.lt-sm", "fxFlexAlign.lt-md", "fxFlexAlign.lt-lg", "fxFlexAlign.lt-xl", "fxFlexAlign.gt-xs", "fxFlexAlign.gt-sm", "fxFlexAlign.gt-md", "fxFlexAlign.gt-lg"] }, { kind: "directive", type: i1.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { kind: "directive", type: MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i2.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i2.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i3.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "directive", type: MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "directive", type: MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "ngmodule", type: MatMenuModule }, { kind: "component", type: i5.MatMenu, selector: "mat-menu", inputs: ["backdropClass", "aria-label", "aria-labelledby", "aria-describedby", "xPosition", "yPosition", "overlapTrigger", "hasBackdrop", "class", "classList"], outputs: ["closed", "close"], exportAs: ["matMenu"] }, { kind: "component", type: i5.MatMenuItem, selector: "[mat-menu-item]", inputs: ["role", "disabled", "disableRipple"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i5.MatMenuContent, selector: "ng-template[matMenuContent]" }, { kind: "directive", type: i5.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", inputs: ["mat-menu-trigger-for", "matMenuTriggerFor", "matMenuTriggerData", "matMenuTriggerRestoreFocus"], outputs: ["menuOpened", "onMenuOpen", "menuClosed", "onMenuClose"], exportAs: ["matMenuTrigger"] }, { kind: "pipe", type: SafeHtmlPipe, name: "safeHtml" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
102
102
|
}
|
|
103
103
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.3", ngImport: i0, type: SupportNotificationComponent, decorators: [{
|
|
104
104
|
type: Component,
|
|
105
105
|
args: [{ host: { 'Bind': SystemUtils.generateUUID() }, standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [FlexModule, MatDialogTitle, MatButtonModule, MatTooltipModule, MatDialogClose, MatIconModule, MatDialogContent,
|
|
106
|
-
MatDialogActions, MatMenuModule, SafeHtmlPipe], template: "<div class=\"support-notification-fixed\">\r\n <div class=\"support-notification-header\">\r\n <div fxLayout=\"row\" fxLayoutAlign=\"start center\" fxLayoutGap=\"10px\" fxFill >\r\n <div fxFlex=\"*\">\r\n <h2 mat-dialog-title>{{item?.title}}</h2>\r\n </div>\r\n <div fxLayoutAlign=\"end\">\r\n <button fxFlexAlign=\"start\" type=\"button\" mat-icon-button matTooltip=\"Chiudi\"\r\n aria-label=\"Chiudi\" [mat-dialog-close]=\"true\" class=\"dialog-close\">\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n<div mat-dialog-content id=\"notification-scrollable\">\r\n <div id=\"notification-scroller\">\r\n <div [innerHtml]=\"(item?.text ?? 'Caricamento in corso...') | safeHtml\"></div>\r\n </div>\r\n</div>\r\n<div mat-dialog-actions class=\"notification-fixed\">\r\n <div style=\"padding: 10px 0\">\r\n @if (item?.documents && item?.documents.length > 0) {\r\n <button type=\"button\" mat-button [attr.aria-label]=\"'Documenti scaricabili'\" [matMenuTriggerFor]=\"documentsMenu\"\r\n color=\"primary\">\r\n {{item?.documents.length}} @if (item?.documents.length === 1) {\r\n <span>Documento scaricabile</span>\r\n }\r\n @if (item?.documents.length !== 1) {\r\n <span>Documenti scaricabili</span>\r\n }\r\n <mat-icon class=\"icon-menu-drop-down\">arrow_drop_down</mat-icon>\r\n </button>\r\n }\r\n <mat-menu #documentsMenu=\"matMenu\">\r\n <ng-template matMenuContent>\r\n @for (doc of item?.documents; track doc) {\r\n <button mat-menu-item (click)=\"downloadDocument(doc)\">\r\n @if (doc.isBinary) {\r\n <mat-icon>attach_file</mat-icon>\r\n }\r\n @if (!doc.isBinary) {\r\n <mat-icon>link</mat-icon>\r\n }\r\n {{doc.name}}\r\n </button>\r\n }\r\n </ng-template>\r\n </mat-menu>\r\n </div>\r\n</div>", styles: [":root{--ars-color-link: #03A9F4;--ars-color-link-low: #0288D1;--ars-color-accent: #7894ae;--ars-color-accent-low: #456179;--ars-color-primary: #00a293;--ars-color-primary-low: #006a60;--ars-color-primary-hi: #12c0ae;--ars-color-secondary: #4a635f;--ars-color-secondary-low: #27403c;--ars-color-error: #ff5449;--ars-color-error-low: #a80710;--ars-color-ok: #388E3C;--ars-color-ok-low: #29692c;--ars-color-warning: #FFC107;--ars-color-warning-low: #FFA000;--ars-item-hover-background-color: #eaecef;--ars-item-selected-background-color: #ced1d2;--ars-item-opaque-background-color: rgba(255, 255, 255, .75);--ars-filterbox-filtered-background-color: #f9fbe7}.dialog-info{font-size:x-small;font-weight:700;text-align:right;padding:10px}.dialog-info-green,.dialog-info-ok{color:var(--ars-color-ok, #388E3C)}.dialog-info-red,.dialog-info-error{color:var(--mat-form-field-error-text-color, #a80710)}.dialog-close{margin-right:10px;margin-top:10px}.dialog-menu{margin-left:10px;margin-top:10px}.dialog-title{padding:0 24px}.section-title{font-size:large;font-weight:600;padding-top:10px;padding-bottom:8px}.scroll-auto{overflow:auto}.scroll-hidden{overflow:hidden}b{font-weight:700}.large{font-size:large!important}.small{font-size:small!important}.small-icon-button{width:1.5rem!important;height:1.5rem!important;padding:0!important;display:inline-flex!important;align-items:center;justify-content:center}.small-icon-button .mat-mdc-button-touch-target{width:1.5rem!important;height:1.5rem!important}.x-small{font-size:x-small!important}.uppercase{text-transform:uppercase!important}.lowercase{text-transform:lowercase!important}.truncated{min-width:0}.truncated span,.truncated div{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media (prefers-color-scheme: dark){:root{--ars-color-link: #03A9F4;--ars-color-link-low: #0288D1;--ars-color-accent: #adcae6;--ars-color-accent-low: #5e7a93;--ars-color-primary: #53dbc9;--ars-color-primary-low: #008679;--ars-color-primary-hi: #74f8e5;--ars-color-secondary: #b1ccc6;--ars-color-secondary-low: #627c77;--ars-color-error: #ff5449;--ars-color-error-low: #a80710;--ars-color-ok: #4CAF50;--ars-color-ok-low: #3f8f41;--ars-color-warning: #FFC107;--ars-color-warning-low: #FFA000;--ars-item-hover-background-color: #262a29;--ars-item-selected-background-color: #3f4342;--ars-item-opaque-background-color: rgba(0, 0, 0, .65);--ars-filterbox-filtered-background-color: #c6c7b8}.dialog-info-green,.dialog-info-ok{color:var(--ars-color-ok, #4CAF50)}.dialog-info-red,.dialog-info-error{color:var(--mat-form-field-error-text-color, #ff5449)}b{font-weight:600}}\n"] }]
|
|
106
|
+
MatDialogActions, MatMenuModule, SafeHtmlPipe], template: "<div class=\"support-notification-fixed\">\r\n <div class=\"support-notification-header\">\r\n <div fxLayout=\"row\" fxLayoutAlign=\"start center\" fxLayoutGap=\"10px\" fxFill >\r\n <div fxFlex=\"*\">\r\n <h2 mat-dialog-title>{{item?.title}}</h2>\r\n </div>\r\n <div fxLayoutAlign=\"end\">\r\n <button fxFlexAlign=\"start\" type=\"button\" mat-icon-button matTooltip=\"Chiudi\"\r\n aria-label=\"Chiudi\" [mat-dialog-close]=\"true\" class=\"dialog-close\">\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n<div mat-dialog-content id=\"notification-scrollable\">\r\n <div id=\"notification-scroller\">\r\n <div [innerHtml]=\"(item?.text ?? 'Caricamento in corso...') | safeHtml\"></div>\r\n </div>\r\n</div>\r\n<div mat-dialog-actions class=\"notification-fixed\">\r\n <div style=\"padding: 10px 0\">\r\n @if (item?.documents && item?.documents.length > 0) {\r\n <button type=\"button\" mat-button [attr.aria-label]=\"'Documenti scaricabili'\" [matMenuTriggerFor]=\"documentsMenu\"\r\n color=\"primary\">\r\n {{item?.documents.length}} @if (item?.documents.length === 1) {\r\n <span>Documento scaricabile</span>\r\n }\r\n @if (item?.documents.length !== 1) {\r\n <span>Documenti scaricabili</span>\r\n }\r\n <mat-icon class=\"icon-menu-drop-down\">arrow_drop_down</mat-icon>\r\n </button>\r\n }\r\n <mat-menu #documentsMenu=\"matMenu\">\r\n <ng-template matMenuContent>\r\n @for (doc of item?.documents; track doc) {\r\n <button mat-menu-item (click)=\"downloadDocument(doc)\">\r\n @if (doc.isBinary) {\r\n <mat-icon>attach_file</mat-icon>\r\n }\r\n @if (!doc.isBinary) {\r\n <mat-icon>link</mat-icon>\r\n }\r\n {{doc.name}}\r\n </button>\r\n }\r\n </ng-template>\r\n </mat-menu>\r\n </div>\r\n</div>", styles: [":root{--ars-color-link: #03A9F4;--ars-color-link-low: #0288D1;--ars-color-accent: #7894ae;--ars-color-accent-low: #456179;--ars-color-primary: #00a293;--ars-color-primary-low: #006a60;--ars-color-primary-hi: #12c0ae;--ars-color-secondary: #4a635f;--ars-color-secondary-low: #27403c;--ars-color-error: #ff5449;--ars-color-error-low: #a80710;--ars-color-ok: #388E3C;--ars-color-ok-low: #29692c;--ars-color-warning: #FFC107;--ars-color-warning-low: #FFA000;--ars-color-text: #191c1b;--ars-color-text-low: #e0e2e5;--ars-color-divider: #757d87;--ars-drawer-background-color: #eff1ef;--ars-drawer-background-color-low: #e0e3e1;--ars-item-hover-background-color: #eaecef;--ars-item-selected-background-color: #ced1d2;--ars-item-opaque-background-color: rgba(255, 255, 255, .75);--ars-filterbox-filtered-background-color: #f9fbe7}.dialog-info{font-size:x-small;font-weight:700;text-align:right;padding:10px}.dialog-info-green,.dialog-info-ok{color:var(--ars-color-ok, #388E3C)}.dialog-info-red,.dialog-info-error{color:var(--mat-form-field-error-text-color, #a80710)}.dialog-close{margin-right:10px;margin-top:10px}.dialog-menu{margin-left:10px;margin-top:10px}.dialog-title{padding:0 24px}.section-title{font-size:large;font-weight:600;padding-top:10px;padding-bottom:8px}.center{text-align:center}.wide{min-width:100%!important;max-width:100%;width:100%}.fill{min-width:100%!important;max-width:100%;width:100%;min-height:100%!important;max-height:100%;height:100%}.scroll-auto{overflow:auto}.scroll-hidden{overflow:hidden}b{font-weight:700}.large{font-size:large!important}.smaller{font-size:smaller}.small{font-size:small!important}.small-icon-button{width:1.5rem!important;height:1.5rem!important;padding:0!important;display:inline-flex!important;align-items:center;justify-content:center}.small-icon-button .mat-mdc-button-touch-target{width:1.5rem!important;height:1.5rem!important}.x-small{font-size:x-small!important}.uppercase{text-transform:uppercase!important}.lowercase{text-transform:lowercase!important}.truncated{min-width:0}.truncated span,.truncated div{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.accent{color:var(--ars-accent)!important}.primary{color:var(--ars-primary)!important}.secondary{color:var(--ars-secondary)!important}.error{color:var(--ars-error)!important}.warning{color:var(--ars-warning)!important}.drawer-content{padding-top:10px}.drawer,.drawer-small{min-width:420px!important;max-width:420px!important;padding:20px 5px 5px;background-color:var(--ars-drawer-background-color)!important}.drawer .title,.drawer-small .title{font-size:1.2em;font-weight:600;padding-left:10px;min-width:200px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.drawer .fade-in,.drawer-small .fade-in{animation:fadein .5s linear}@keyframes fadein{0%{opacity:0}to{opacity:1}}.drawer .content,.drawer-small .content{padding:10px 0}.drawer .fixed,.drawer-small .fixed{padding:0 4px}.drawer .accordion-panel,.drawer-small .accordion-panel{background-color:transparent}.drawer .accordion-header,.drawer-small .accordion-header{padding-left:15px;padding-right:20px;border-radius:var(--mat-expansion-container-shape)}.drawer .mat-expansion-panel-body,.drawer-small .mat-expansion-panel-body{padding-bottom:20px!important}.drawer-small{min-width:360px!important;max-width:360px!important}.drawer-small .title{min-width:150px}.drawer-small .content{padding:20px 0 10px}@media screen and (min-width: 0px) and (max-width: 359px){.drawer{min-width:360px!important;max-width:360px!important}.drawer .title{min-width:150px}}@media (prefers-color-scheme: dark){:root{--ars-color-link: #03A9F4;--ars-color-link-low: #0288D1;--ars-color-accent: #adcae6;--ars-color-accent-low: #5e7a93;--ars-color-primary: #53dbc9;--ars-color-primary-low: #008679;--ars-color-primary-hi: #74f8e5;--ars-color-secondary: #b1ccc6;--ars-color-secondary-low: #627c77;--ars-color-error: #ff5449;--ars-color-error-low: #a80710;--ars-color-ok: #4CAF50;--ars-color-ok-low: #3f8f41;--ars-color-warning: #FFC107;--ars-color-warning-low: #FFA000;--ars-color-text: #e0e2e5;--ars-color-text-low: #191c1b;--ars-color-divider: #757d87;--ars-drawer-background-color: #323534;--ars-drawer-background-color-low: #424444;--ars-item-hover-background-color: #262a29;--ars-item-selected-background-color: #3f4342;--ars-item-opaque-background-color: rgba(0, 0, 0, .65);--ars-filterbox-filtered-background-color: #c6c7b8}.dialog-info-green,.dialog-info-ok{color:var(--ars-color-ok, #4CAF50)}.dialog-info-red,.dialog-info-error{color:var(--mat-form-field-error-text-color, #ff5449)}b{font-weight:600}}\n"] }]
|
|
107
107
|
}] });
|
|
108
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Fycy11dGlscy9zdXBwb3J0LnVpL3VpL25vdGlmaWNhdGlvbnMtYnJvd3Nlci9ub3RpZmljYXRpb24vbm90aWZpY2F0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Fycy11dGlscy9zdXBwb3J0LnVpL3VpL25vdGlmaWNhdGlvbnMtYnJvd3Nlci9ub3RpZmljYXRpb24vbm90aWZpY2F0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxNQUFNLEVBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGVBQWUsRUFBRSxjQUFjLEVBQUUsY0FBYyxFQUFFLGdCQUFnQixFQUFFLGdCQUFnQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDL0gsT0FBTyxFQUFFLGdCQUFnQixFQUFFLGFBQWEsRUFBRSxXQUFXLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUMzRixPQUFPLEVBQUUsZUFBZSxFQUFFLGNBQWMsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQ3hGLE9BQU8sRUFDTCxhQUFhLEVBQ2QsTUFBTSwyQkFBMkIsQ0FBQztBQUNuQyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzdELE9BQU8sRUFBRSxlQUFlLEVBQUUs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ZXdJbml0LFxyXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxyXG4gIENoYW5nZURldGVjdG9yUmVmLFxyXG4gIENvbXBvbmVudCwgT25Jbml0LFxyXG4gIGluamVjdFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBNQVRfRElBTE9HX0RBVEEsIE1hdERpYWxvZ1RpdGxlLCBNYXREaWFsb2dDbG9zZSwgTWF0RGlhbG9nQ29udGVudCwgTWF0RGlhbG9nQWN0aW9ucyB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XHJcbmltcG9ydCB7IEJyb2FkY2FzdFNlcnZpY2UsIFNjcmVlblNlcnZpY2UsIFN5c3RlbVV0aWxzIH0gZnJvbSAnQGFyc2VkaXppb25pL2Fycy11dGlscy9jb3JlJztcclxuaW1wb3J0IHsgU3VwcG9ydE1lc3NhZ2VzLCBTdXBwb3J0U2VydmljZSB9IGZyb20gJ0BhcnNlZGl6aW9uaS9hcnMtdXRpbHMvc3VwcG9ydC5jb21tb24nO1xyXG5pbXBvcnQge1xyXG4gIERpYWxvZ1NlcnZpY2VcclxufSBmcm9tICdAYXJzZWRpemlvbmkvYXJzLXV0aWxzL3VpJztcclxuaW1wb3J0IHsgc2F2ZUFzIH0gZnJvbSAnZmlsZS1zYXZlcic7XHJcbmltcG9ydCB7IFNhZmVIdG1sUGlwZSB9IGZyb20gJ0BhcnNlZGl6aW9uaS9hcnMtdXRpbHMvY29yZSc7XHJcbmltcG9ydCB7IE1hdE1lbnVNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9tZW51JztcclxuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xyXG5pbXBvcnQgeyBNYXRUb29sdGlwTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdG9vbHRpcCc7XHJcbmltcG9ydCB7IE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XHJcbmltcG9ydCB7IEZsZXhNb2R1bGUgfSBmcm9tICdAbmdicmFja2V0L25neC1sYXlvdXQvZmxleCc7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFN1cHBvcnROb3RpZmljYXRpb25EYXRhIHtcclxuICBpZD86IG51bWJlciB8IG51bGw7XHJcbn1cclxuXHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBob3N0OiB7ICdCaW5kJzogU3lzdGVtVXRpbHMuZ2VuZXJhdGVVVUlEKCkgfSxcclxuICB0ZW1wbGF0ZVVybDogJy4vbm90aWZpY2F0aW9uLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9ub3RpZmljYXRpb24uY29tcG9uZW50LnNjc3MnXSxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gIGltcG9ydHM6IFtGbGV4TW9kdWxlLCBNYXREaWFsb2dUaXRsZSwgTWF0QnV0dG9uTW9kdWxlLCBNYXRUb29sdGlwTW9kdWxlLCBNYXREaWFsb2dDbG9zZSwgTWF0SWNvbk1vZHVsZSwgTWF0RGlhbG9nQ29udGVudCxcclxuICAgIE1hdERpYWxvZ0FjdGlvbnMsIE1hdE1lbnVNb2R1bGUsIFNhZmVIdG1sUGlwZV1cclxufSlcclxuZXhwb3J0IGNsYXNzIFN1cHBvcnROb3RpZmljYXRpb25Db21wb25lbnRcclxuICBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCB7XHJcblxyXG4gIHByb3RlY3RlZCBzY3JlZW5TZXJ2aWNlID0gaW5qZWN0KFNjcmVlblNlcnZpY2UpO1xyXG4gIHByaXZhdGUgc3VwcG9ydFNlcnZpY2UgPSBpbmplY3QoU3VwcG9ydFNlcnZpY2UpO1xyXG4gIHByaXZhdGUgY2hhbmdlRGV0ZWN0b3IgPSBpbmplY3QoQ2hhbmdlRGV0ZWN0b3JSZWYpO1xyXG4gIHByaXZhdGUgYnJvYWRjYXN0U2VydmljZSA9IGluamVjdChCcm9hZGNhc3RTZXJ2aWNlKTtcclxuICBwcml2YXRlIGRpYWxvZ1NlcnZpY2UgPSBpbmplY3QoRGlhbG9nU2VydmljZSk7XHJcbiAgcHJpdmF0ZSBkaWFsb2dEYXRhOiBTdXBwb3J0Tm90aWZpY2F0aW9uRGF0YSA9IGluamVjdChNQVRfRElBTE9HX0RBVEEpO1xyXG4gIHByaXZhdGUgaGVpZ2h0OiBudW1iZXIgPSAtMTtcclxuXHJcbiAgcHJvdGVjdGVkIGlkOiBudW1iZXIgPSAtMTtcclxuICBwcm90ZWN0ZWQgaXRlbTogYW55IHwgbnVsbCA9IG51bGw7XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuZGlhbG9nRGF0YSkge1xyXG4gICAgICB0aGlzLmlkID0gdGhpcy5kaWFsb2dEYXRhLmlkO1xyXG4gICAgfVxyXG4gICAgdGhpcy5mZXRjaCgpO1xyXG4gIH1cclxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLnJlc2l6ZSgpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogUmVzaXplIGRpYWxvZ1xyXG4gICAqL1xyXG4gIHByaXZhdGUgcmVzaXplKCkge1xyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIGxldCBlbGVtID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ25vdGlmaWNhdGlvbi1zY3JvbGxhYmxlJyk7XHJcbiAgICAgIGlmIChlbGVtKSB7XHJcbiAgICAgICAgY29uc3QgaCA9IHRoaXMuZGlhbG9nU2VydmljZS5nZXRDdXJyZW50RGlhbG9nU2Nyb2xsYWJsZUhlaWdodChcclxuICAgICAgICAgIFsnc3VwcG9ydC1ub3RpZmljYXRpb24tZml4ZWQnXSxcclxuICAgICAgICAgIHdpbmRvdy5pbm5lckhlaWdodFxyXG4gICAgICAgICk7XHJcbiAgICAgICAgaWYgKGggIT0gdGhpcy5oZWlnaHQpIHtcclxuICAgICAgICAgIGVsZW0uc2V0QXR0cmlidXRlKCdzdHlsZScsICdoZWlnaHQ6JyArIGggKyAncHggIWltcG9ydGFudDttYXgtaGVpZ2h0OicgKyBoICsgJ3B4ICFpbXBvcnRhbnQnKTtcclxuICAgICAgICAgIHRoaXMuaGVpZ2h0ID0gaDtcclxuICAgICAgICAgIHRoaXMucmVzaXplKCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMucmVzaXplKCk7XHJcbiAgICAgIH1cclxuICAgIH0sIDEwMCk7XHJcbiAgfVxyXG5cclxuXHJcbiAgLyoqXHJcbiAgICogUmV0cmlldmUgZGF0YVxyXG4gICAqL1xyXG4gIHByaXZhdGUgZmV0Y2goKSB7XHJcbiAgICBpZiAoIXRoaXMuc3VwcG9ydFNlcnZpY2UubG9nZ2VkSW4pIHJldHVybjtcclxuICAgIHRoaXMuZGlhbG9nU2VydmljZS5idXN5KCdDYXJpY2FtZW50byBpbiBjb3Jzby4uLicpO1xyXG4gICAgdGhpcy5zdXBwb3J0U2VydmljZS5nZXROb3RpZmljYXRpb24odGhpcy5pZClcclxuICAgICAgLnN1YnNjcmliZSh7XHJcbiAgICAgICAgbmV4dDogKHIpID0+IHtcclxuICAgICAgICAgIGlmICghci5zdWNjZXNzKSB7XHJcbiAgICAgICAgICAgIHRoaXMuZGlhbG9nU2VydmljZS5lcnJvcihyLm1lc3NhZ2UpO1xyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgdGhpcy5pdGVtID0gci52YWx1ZTtcclxuICAgICAgICAgICAgdGhpcy5icm9hZGNhc3RTZXJ2aWNlLnNlbmRNZXNzYWdlKFN1cHBvcnRNZXNzYWdlcy5OT1RJRklDQVRJT05fUkVBRCwgdGhpcy5pdGVtLmlkKTtcclxuICAgICAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5tYXJrRm9yQ2hlY2soKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9LFxyXG4gICAgICAgIGNvbXBsZXRlOiAoKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLmRpYWxvZ1NlcnZpY2UuY2xlYXJCdXN5KCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIERvd25sb2FkIGEgbm90aWZpY2F0aW9uIGRvY3VtZW50IG9yIG5hdmlnYXRlIHRvIHRoZSB1cmxcclxuICAgKiBAcGFyYW0gaXRlbSA6IHRoZSBkb2N1bWVudCBpdGVtXHJcbiAgICovXHJcbiAgcHJvdGVjdGVkIGRvd25sb2FkRG9jdW1lbnQoaXRlbTogYW55KSB7XHJcbiAgICBpZiAoIXRoaXMuc3VwcG9ydFNlcnZpY2UubG9nZ2VkSW4pIHJldHVybjtcclxuICAgIGlmIChpdGVtLmlzQmluYXJ5KSB7XHJcbiAgICAgIHRoaXMuc3VwcG9ydFNlcnZpY2UuZG93bG9hZE5vdGlmaWNhdGlvbkRvY3VtZW50KGl0ZW0uaWQpLnN1YnNjcmliZSh7XHJcbiAgICAgICAgbmV4dDogKHI6IGFueSkgPT4ge1xyXG4gICAgICAgICAgc2F2ZUFzKHIpO1xyXG4gICAgICAgIH0sXHJcbiAgICAgIH0pO1xyXG4gICAgfSBlbHNlXHJcbiAgICAgIHdpbmRvdy5vcGVuKGl0ZW0udXJsLCAnX2JsYW5rJyk7XHJcbiAgfVxyXG5cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwic3VwcG9ydC1ub3RpZmljYXRpb24tZml4ZWRcIj5cclxuICA8ZGl2IGNsYXNzPVwic3VwcG9ydC1ub3RpZmljYXRpb24taGVhZGVyXCI+XHJcbiAgICA8ZGl2IGZ4TGF5b3V0PVwicm93XCIgZnhMYXlvdXRBbGlnbj1cInN0YXJ0IGNlbnRlclwiIGZ4TGF5b3V0R2FwPVwiMTBweFwiIGZ4RmlsbCA+XHJcbiAgICAgIDxkaXYgZnhGbGV4PVwiKlwiPlxyXG4gICAgICAgIDxoMiBtYXQtZGlhbG9nLXRpdGxlPnt7aXRlbT8udGl0bGV9fTwvaDI+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2IGZ4TGF5b3V0QWxpZ249XCJlbmRcIj5cclxuICAgICAgICA8YnV0dG9uIGZ4RmxleEFsaWduPVwic3RhcnRcIiB0eXBlPVwiYnV0dG9uXCIgbWF0LWljb24tYnV0dG9uICBtYXRUb29sdGlwPVwiQ2hpdWRpXCJcclxuICAgICAgICAgIGFyaWEtbGFiZWw9XCJDaGl1ZGlcIiBbbWF0LWRpYWxvZy1jbG9zZV09XCJ0cnVlXCIgY2xhc3M9XCJkaWFsb2ctY2xvc2VcIj5cclxuICAgICAgICAgIDxtYXQtaWNvbj5jbG9zZTwvbWF0LWljb24+XHJcbiAgICAgICAgPC9idXR0b24+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG48ZGl2IG1hdC1kaWFsb2ctY29udGVudCBpZD1cIm5vdGlmaWNhdGlvbi1zY3JvbGxhYmxlXCI+XHJcbiAgPGRpdiBpZD1cIm5vdGlmaWNhdGlvbi1zY3JvbGxlclwiPlxyXG4gICAgPGRpdiBbaW5uZXJIdG1sXT1cIihpdGVtPy50ZXh0ID8/ICdDYXJpY2FtZW50byBpbiBjb3Jzby4uLicpIHwgc2FmZUh0bWxcIj48L2Rpdj5cclxuICA8L2Rpdj5cclxuPC9kaXY+XHJcbjxkaXYgbWF0LWRpYWxvZy1hY3Rpb25zIGNsYXNzPVwibm90aWZpY2F0aW9uLWZpeGVkXCI+XHJcbiAgPGRpdiBzdHlsZT1cInBhZGRpbmc6IDEwcHggMFwiPlxyXG4gICAgQGlmIChpdGVtPy5kb2N1bWVudHMgJiYgaXRlbT8uZG9jdW1lbnRzLmxlbmd0aCA+IDApIHtcclxuICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIG1hdC1idXR0b24gW2F0dHIuYXJpYS1sYWJlbF09XCInRG9jdW1lbnRpIHNjYXJpY2FiaWxpJ1wiIFttYXRNZW51VHJpZ2dlckZvcl09XCJkb2N1bWVudHNNZW51XCJcclxuICAgICAgY29sb3I9XCJwcmltYXJ5XCI+XHJcbiAgICAgIHt7aXRlbT8uZG9jdW1lbnRzLmxlbmd0aH19IEBpZiAoaXRlbT8uZG9jdW1lbnRzLmxlbmd0aCA9PT0gMSkge1xyXG4gICAgICA8c3Bhbj5Eb2N1bWVudG8gc2NhcmljYWJpbGU8L3NwYW4+XHJcbiAgICAgIH1cclxuICAgICAgQGlmIChpdGVtPy5kb2N1bWVudHMubGVuZ3RoICE9PSAxKSB7XHJcbiAgICAgIDxzcGFuPkRvY3VtZW50aSBzY2FyaWNhYmlsaTwvc3Bhbj5cclxuICAgICAgfVxyXG4gICAgICA8bWF0LWljb24gY2xhc3M9XCJpY29uLW1lbnUtZHJvcC1kb3duXCI+YXJyb3dfZHJvcF9kb3duPC9tYXQtaWNvbj5cclxuICAgIDwvYnV0dG9uPlxyXG4gICAgfVxyXG4gICAgPG1hdC1tZW51ICNkb2N1bWVudHNNZW51PVwibWF0TWVudVwiPlxyXG4gICAgICA8bmctdGVtcGxhdGUgbWF0TWVudUNvbnRlbnQ+XHJcbiAgICAgICAgQGZvciAoZG9jIG9mIGl0ZW0/LmRvY3VtZW50czsgdHJhY2sgZG9jKSB7XHJcbiAgICAgICAgPGJ1dHRvbiBtYXQtbWVudS1pdGVtIChjbGljayk9XCJkb3dubG9hZERvY3VtZW50KGRvYylcIj5cclxuICAgICAgICAgIEBpZiAoZG9jLmlzQmluYXJ5KSB7XHJcbiAgICAgICAgICA8bWF0LWljb24+YXR0YWNoX2ZpbGU8L21hdC1pY29uPlxyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgQGlmICghZG9jLmlzQmluYXJ5KSB7XHJcbiAgICAgICAgICA8bWF0LWljb24+bGluazwvbWF0LWljb24+XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICB7e2RvYy5uYW1lfX1cclxuICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICB9XHJcbiAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICA8L21hdC1tZW51PlxyXG4gIDwvZGl2PlxyXG48L2Rpdj4iXX0=
|
|
108
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Fycy11dGlscy9zdXBwb3J0LnVpL3VpL25vdGlmaWNhdGlvbnMtYnJvd3Nlci9ub3RpZmljYXRpb24vbm90aWZpY2F0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Fycy11dGlscy9zdXBwb3J0LnVpL3VpL25vdGlmaWNhdGlvbnMtYnJvd3Nlci9ub3RpZmljYXRpb24vbm90aWZpY2F0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxNQUFNLEVBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGVBQWUsRUFBRSxjQUFjLEVBQUUsY0FBYyxFQUFFLGdCQUFnQixFQUFFLGdCQUFnQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDL0gsT0FBTyxFQUFFLGdCQUFnQixFQUFFLGFBQWEsRUFBRSxXQUFXLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUMzRixPQUFPLEVBQUUsZUFBZSxFQUFFLGNBQWMsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQ3hGLE9BQU8sRUFDTCxhQUFhLEVBQ2QsTUFBTSwyQkFBMkIsQ0FBQztBQUNuQyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzdELE9BQU8sRUFBRSxlQUFlLEVBQUUs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ZXdJbml0LFxyXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxyXG4gIENoYW5nZURldGVjdG9yUmVmLFxyXG4gIENvbXBvbmVudCwgT25Jbml0LFxyXG4gIGluamVjdFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBNQVRfRElBTE9HX0RBVEEsIE1hdERpYWxvZ1RpdGxlLCBNYXREaWFsb2dDbG9zZSwgTWF0RGlhbG9nQ29udGVudCwgTWF0RGlhbG9nQWN0aW9ucyB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XHJcbmltcG9ydCB7IEJyb2FkY2FzdFNlcnZpY2UsIFNjcmVlblNlcnZpY2UsIFN5c3RlbVV0aWxzIH0gZnJvbSAnQGFyc2VkaXppb25pL2Fycy11dGlscy9jb3JlJztcclxuaW1wb3J0IHsgU3VwcG9ydE1lc3NhZ2VzLCBTdXBwb3J0U2VydmljZSB9IGZyb20gJ0BhcnNlZGl6aW9uaS9hcnMtdXRpbHMvc3VwcG9ydC5jb21tb24nO1xyXG5pbXBvcnQge1xyXG4gIERpYWxvZ1NlcnZpY2VcclxufSBmcm9tICdAYXJzZWRpemlvbmkvYXJzLXV0aWxzL3VpJztcclxuaW1wb3J0IHsgc2F2ZUFzIH0gZnJvbSAnZmlsZS1zYXZlcic7XHJcbmltcG9ydCB7IFNhZmVIdG1sUGlwZSB9IGZyb20gJ0BhcnNlZGl6aW9uaS9hcnMtdXRpbHMvY29yZSc7XHJcbmltcG9ydCB7IE1hdE1lbnVNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9tZW51JztcclxuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xyXG5pbXBvcnQgeyBNYXRUb29sdGlwTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdG9vbHRpcCc7XHJcbmltcG9ydCB7IE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XHJcbmltcG9ydCB7IEZsZXhNb2R1bGUgfSBmcm9tICdAbmdicmFja2V0L25neC1sYXlvdXQvZmxleCc7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFN1cHBvcnROb3RpZmljYXRpb25EYXRhIHtcclxuICBpZD86IG51bWJlciB8IG51bGw7XHJcbn1cclxuXHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBob3N0OiB7ICdCaW5kJzogU3lzdGVtVXRpbHMuZ2VuZXJhdGVVVUlEKCkgfSxcclxuICB0ZW1wbGF0ZVVybDogJy4vbm90aWZpY2F0aW9uLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9ub3RpZmljYXRpb24uY29tcG9uZW50LnNjc3MnXSxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gIGltcG9ydHM6IFtGbGV4TW9kdWxlLCBNYXREaWFsb2dUaXRsZSwgTWF0QnV0dG9uTW9kdWxlLCBNYXRUb29sdGlwTW9kdWxlLCBNYXREaWFsb2dDbG9zZSwgTWF0SWNvbk1vZHVsZSwgTWF0RGlhbG9nQ29udGVudCxcclxuICAgIE1hdERpYWxvZ0FjdGlvbnMsIE1hdE1lbnVNb2R1bGUsIFNhZmVIdG1sUGlwZV1cclxufSlcclxuZXhwb3J0IGNsYXNzIFN1cHBvcnROb3RpZmljYXRpb25Db21wb25lbnRcclxuICBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCB7XHJcblxyXG4gIHByb3RlY3RlZCBzY3JlZW5TZXJ2aWNlID0gaW5qZWN0KFNjcmVlblNlcnZpY2UpO1xyXG4gIHByaXZhdGUgc3VwcG9ydFNlcnZpY2UgPSBpbmplY3QoU3VwcG9ydFNlcnZpY2UpO1xyXG4gIHByaXZhdGUgY2hhbmdlRGV0ZWN0b3IgPSBpbmplY3QoQ2hhbmdlRGV0ZWN0b3JSZWYpO1xyXG4gIHByaXZhdGUgYnJvYWRjYXN0U2VydmljZSA9IGluamVjdChCcm9hZGNhc3RTZXJ2aWNlKTtcclxuICBwcml2YXRlIGRpYWxvZ1NlcnZpY2UgPSBpbmplY3QoRGlhbG9nU2VydmljZSk7XHJcbiAgcHJpdmF0ZSBkaWFsb2dEYXRhOiBTdXBwb3J0Tm90aWZpY2F0aW9uRGF0YSA9IGluamVjdChNQVRfRElBTE9HX0RBVEEpO1xyXG4gIHByaXZhdGUgaGVpZ2h0OiBudW1iZXIgPSAtMTtcclxuXHJcbiAgcHJvdGVjdGVkIGlkOiBudW1iZXIgPSAtMTtcclxuICBwcm90ZWN0ZWQgaXRlbTogYW55IHwgbnVsbCA9IG51bGw7XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuZGlhbG9nRGF0YSkge1xyXG4gICAgICB0aGlzLmlkID0gdGhpcy5kaWFsb2dEYXRhLmlkO1xyXG4gICAgfVxyXG4gICAgdGhpcy5mZXRjaCgpO1xyXG4gIH1cclxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLnJlc2l6ZSgpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogUmVzaXplIGRpYWxvZ1xyXG4gICAqL1xyXG4gIHByaXZhdGUgcmVzaXplKCkge1xyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIGxldCBlbGVtID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ25vdGlmaWNhdGlvbi1zY3JvbGxhYmxlJyk7XHJcbiAgICAgIGlmIChlbGVtKSB7XHJcbiAgICAgICAgY29uc3QgaCA9IHRoaXMuZGlhbG9nU2VydmljZS5nZXRDdXJyZW50RGlhbG9nU2Nyb2xsYWJsZUhlaWdodChcclxuICAgICAgICAgIFsnc3VwcG9ydC1ub3RpZmljYXRpb24tZml4ZWQnXSxcclxuICAgICAgICAgIHdpbmRvdy5pbm5lckhlaWdodFxyXG4gICAgICAgICk7XHJcbiAgICAgICAgaWYgKGggIT0gdGhpcy5oZWlnaHQpIHtcclxuICAgICAgICAgIGVsZW0uc2V0QXR0cmlidXRlKCdzdHlsZScsICdoZWlnaHQ6JyArIGggKyAncHggIWltcG9ydGFudDttYXgtaGVpZ2h0OicgKyBoICsgJ3B4ICFpbXBvcnRhbnQnKTtcclxuICAgICAgICAgIHRoaXMuaGVpZ2h0ID0gaDtcclxuICAgICAgICAgIHRoaXMucmVzaXplKCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMucmVzaXplKCk7XHJcbiAgICAgIH1cclxuICAgIH0sIDEwMCk7XHJcbiAgfVxyXG5cclxuXHJcbiAgLyoqXHJcbiAgICogUmV0cmlldmUgZGF0YVxyXG4gICAqL1xyXG4gIHByaXZhdGUgZmV0Y2goKSB7XHJcbiAgICBpZiAoIXRoaXMuc3VwcG9ydFNlcnZpY2UubG9nZ2VkSW4pIHJldHVybjtcclxuICAgIHRoaXMuZGlhbG9nU2VydmljZS5idXN5KCdDYXJpY2FtZW50byBpbiBjb3Jzby4uLicpO1xyXG4gICAgdGhpcy5zdXBwb3J0U2VydmljZS5nZXROb3RpZmljYXRpb24odGhpcy5pZClcclxuICAgICAgLnN1YnNjcmliZSh7XHJcbiAgICAgICAgbmV4dDogKHIpID0+IHtcclxuICAgICAgICAgIGlmICghci5zdWNjZXNzKSB7XHJcbiAgICAgICAgICAgIHRoaXMuZGlhbG9nU2VydmljZS5lcnJvcihyLm1lc3NhZ2UpO1xyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgdGhpcy5pdGVtID0gci52YWx1ZTtcclxuICAgICAgICAgICAgdGhpcy5icm9hZGNhc3RTZXJ2aWNlLnNlbmRNZXNzYWdlKFN1cHBvcnRNZXNzYWdlcy5OT1RJRklDQVRJT05fUkVBRCwgdGhpcy5pdGVtLmlkKTtcclxuICAgICAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5tYXJrRm9yQ2hlY2soKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9LFxyXG4gICAgICAgIGNvbXBsZXRlOiAoKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLmRpYWxvZ1NlcnZpY2UuY2xlYXJCdXN5KCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIERvd25sb2FkIGEgbm90aWZpY2F0aW9uIGRvY3VtZW50IG9yIG5hdmlnYXRlIHRvIHRoZSB1cmxcclxuICAgKiBAcGFyYW0gaXRlbSA6IHRoZSBkb2N1bWVudCBpdGVtXHJcbiAgICovXHJcbiAgcHJvdGVjdGVkIGRvd25sb2FkRG9jdW1lbnQoaXRlbTogYW55KSB7XHJcbiAgICBpZiAoIXRoaXMuc3VwcG9ydFNlcnZpY2UubG9nZ2VkSW4pIHJldHVybjtcclxuICAgIGlmIChpdGVtLmlzQmluYXJ5KSB7XHJcbiAgICAgIHRoaXMuc3VwcG9ydFNlcnZpY2UuZG93bG9hZE5vdGlmaWNhdGlvbkRvY3VtZW50KGl0ZW0uaWQpLnN1YnNjcmliZSh7XHJcbiAgICAgICAgbmV4dDogKHI6IGFueSkgPT4ge1xyXG4gICAgICAgICAgc2F2ZUFzKHIpO1xyXG4gICAgICAgIH0sXHJcbiAgICAgIH0pO1xyXG4gICAgfSBlbHNlXHJcbiAgICAgIHdpbmRvdy5vcGVuKGl0ZW0udXJsLCAnX2JsYW5rJyk7XHJcbiAgfVxyXG5cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwic3VwcG9ydC1ub3RpZmljYXRpb24tZml4ZWRcIj5cclxuICA8ZGl2IGNsYXNzPVwic3VwcG9ydC1ub3RpZmljYXRpb24taGVhZGVyXCI+XHJcbiAgICA8ZGl2IGZ4TGF5b3V0PVwicm93XCIgZnhMYXlvdXRBbGlnbj1cInN0YXJ0IGNlbnRlclwiIGZ4TGF5b3V0R2FwPVwiMTBweFwiIGZ4RmlsbCA+XHJcbiAgICAgIDxkaXYgZnhGbGV4PVwiKlwiPlxyXG4gICAgICAgIDxoMiBtYXQtZGlhbG9nLXRpdGxlPnt7aXRlbT8udGl0bGV9fTwvaDI+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2IGZ4TGF5b3V0QWxpZ249XCJlbmRcIj5cclxuICAgICAgICA8YnV0dG9uIGZ4RmxleEFsaWduPVwic3RhcnRcIiB0eXBlPVwiYnV0dG9uXCIgbWF0LWljb24tYnV0dG9uICBtYXRUb29sdGlwPVwiQ2hpdWRpXCJcclxuICAgICAgICAgIGFyaWEtbGFiZWw9XCJDaGl1ZGlcIiBbbWF0LWRpYWxvZy1jbG9zZV09XCJ0cnVlXCIgY2xhc3M9XCJkaWFsb2ctY2xvc2VcIj5cclxuICAgICAgICAgIDxtYXQtaWNvbj5jbG9zZTwvbWF0LWljb24+XHJcbiAgICAgICAgPC9idXR0b24+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG48ZGl2IG1hdC1kaWFsb2ctY29udGVudCBpZD1cIm5vdGlmaWNhdGlvbi1zY3JvbGxhYmxlXCI+XHJcbiAgPGRpdiBpZD1cIm5vdGlmaWNhdGlvbi1zY3JvbGxlclwiPlxyXG4gICAgPGRpdiBbaW5uZXJIdG1sXT1cIihpdGVtPy50ZXh0ID8/ICdDYXJpY2FtZW50byBpbiBjb3Jzby4uLicpIHwgc2FmZUh0bWxcIj48L2Rpdj5cclxuICA8L2Rpdj5cclxuPC9kaXY+XHJcbjxkaXYgbWF0LWRpYWxvZy1hY3Rpb25zIGNsYXNzPVwibm90aWZpY2F0aW9uLWZpeGVkXCI+XHJcbiAgPGRpdiBzdHlsZT1cInBhZGRpbmc6IDEwcHggMFwiPlxyXG4gICAgQGlmIChpdGVtPy5kb2N1bWVudHMgJiYgaXRlbT8uZG9jdW1lbnRzLmxlbmd0aCA+IDApIHtcclxuICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIG1hdC1idXR0b24gW2F0dHIuYXJpYS1sYWJlbF09XCInRG9jdW1lbnRpIHNjYXJpY2FiaWxpJ1wiIFttYXRNZW51VHJpZ2dlckZvcl09XCJkb2N1bWVudHNNZW51XCJcclxuICAgICAgY29sb3I9XCJwcmltYXJ5XCI+XHJcbiAgICAgIHt7aXRlbT8uZG9jdW1lbnRzLmxlbmd0aH19IEBpZiAoaXRlbT8uZG9jdW1lbnRzLmxlbmd0aCA9PT0gMSkge1xyXG4gICAgICA8c3Bhbj5Eb2N1bWVudG8gc2NhcmljYWJpbGU8L3NwYW4+XHJcbiAgICAgIH1cclxuICAgICAgQGlmIChpdGVtPy5kb2N1bWVudHMubGVuZ3RoICE9PSAxKSB7XHJcbiAgICAgIDxzcGFuPkRvY3VtZW50aSBzY2FyaWNhYmlsaTwvc3Bhbj5cclxuICAgICAgfVxyXG4gICAgICA8bWF0LWljb24gY2xhc3M9XCJpY29uLW1lbnUtZHJvcC1kb3duXCI+YXJyb3dfZHJvcF9kb3duPC9tYXQtaWNvbj5cclxuICAgIDwvYnV0dG9uPlxyXG4gICAgfVxyXG4gICAgPG1hdC1tZW51ICNkb2N1bWVudHNNZW51PVwibWF0TWVudVwiPlxyXG4gICAgICA8bmctdGVtcGxhdGUgbWF0TWVudUNvbnRlbnQ+XHJcbiAgICAgICAgQGZvciAoZG9jIG9mIGl0ZW0/LmRvY3VtZW50czsgdHJhY2sgZG9jKSB7XHJcbiAgICAgICAgPGJ1dHRvbiBtYXQtbWVudS1pdGVtIChjbGljayk9XCJkb3dubG9hZERvY3VtZW50KGRvYylcIj5cclxuICAgICAgICAgIEBpZiAoZG9jLmlzQmluYXJ5KSB7XHJcbiAgICAgICAgICA8bWF0LWljb24+YXR0YWNoX2ZpbGU8L21hdC1pY29uPlxyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgQGlmICghZG9jLmlzQmluYXJ5KSB7XHJcbiAgICAgICAgICA8bWF0LWljb24+bGluazwvbWF0LWljb24+XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICB7e2RvYy5uYW1lfX1cclxuICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICB9XHJcbiAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICA8L21hdC1tZW51PlxyXG4gIDwvZGl2PlxyXG48L2Rpdj4iXX0=
|