ngx-histaff-alpha 2.8.2 → 2.8.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/app/libraries/core-form/core-form/core-form.component.mjs +28 -26
- package/esm2022/lib/app/libraries/navigator/navigator/item.component.mjs +5 -3
- package/esm2022/lib/app/libraries/navigator/navigator/navigator.component.mjs +15 -6
- package/esm2022/lib/app/services/navigator.service.mjs +3 -1
- package/esm2022/lib/app/services/random-avatar.service.mjs +4 -1
- package/fesm2022/ngx-histaff-alpha.mjs +50 -32
- package/fesm2022/ngx-histaff-alpha.mjs.map +1 -1
- package/lib/app/libraries/navigator/navigator/navigator.component.d.ts +3 -2
- package/lib/app/services/navigator.service.d.ts +2 -0
- package/lib/app/services/random-avatar.service.d.ts +1 -0
- package/package.json +1 -1
|
@@ -81,34 +81,36 @@ export class CoreFormComponent {
|
|
|
81
81
|
}
|
|
82
82
|
}
|
|
83
83
|
ngOnInit() {
|
|
84
|
+
/*
|
|
84
85
|
if (this.appConfigService.APP_TYPE === "WEBAPP") {
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
else {
|
|
92
|
-
this.buttonItems = [
|
|
93
|
-
EnumCoreButtonVNSCode.NONE_HEADER_CANCEL,
|
|
94
|
-
];
|
|
95
|
-
}
|
|
86
|
+
*/
|
|
87
|
+
if (!this.disableSaveButton) {
|
|
88
|
+
this.buttonItems = [
|
|
89
|
+
EnumCoreButtonVNSCode.NONE_HEADER_SAVE,
|
|
90
|
+
EnumCoreButtonVNSCode.NONE_HEADER_CANCEL,
|
|
91
|
+
];
|
|
96
92
|
}
|
|
97
|
-
else
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
93
|
+
else {
|
|
94
|
+
this.buttonItems = [
|
|
95
|
+
EnumCoreButtonVNSCode.NONE_HEADER_CANCEL,
|
|
96
|
+
];
|
|
97
|
+
}
|
|
98
|
+
/*
|
|
99
|
+
} else if (this.appConfigService.APP_TYPE === "PORTAL") {
|
|
100
|
+
if (!this.disableSaveButton) {
|
|
101
|
+
this.buttonItems = [
|
|
102
|
+
EnumCoreButtonVNSCode.SEND,
|
|
103
|
+
EnumCoreButtonVNSCode.CANCEL,
|
|
104
|
+
EnumCoreButtonVNSCode.SAVE,
|
|
105
|
+
]
|
|
106
|
+
} else {
|
|
107
|
+
this.buttonItems = [
|
|
108
|
+
EnumCoreButtonVNSCode.SEND,
|
|
109
|
+
EnumCoreButtonVNSCode.CANCEL,
|
|
110
|
+
]
|
|
111
|
+
}
|
|
111
112
|
}
|
|
113
|
+
*/
|
|
112
114
|
if (!!this.customFormButtonItems) {
|
|
113
115
|
this.buttonItems = this.customFormButtonItems;
|
|
114
116
|
}
|
|
@@ -256,4 +258,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImpor
|
|
|
256
258
|
type: ViewChild,
|
|
257
259
|
args: ['formRef']
|
|
258
260
|
}] } });
|
|
259
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS1mb3JtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1oaXN0YWZmLWFscGhhL3NyYy9saWIvYXBwL2xpYnJhcmllcy9jb3JlLWZvcm0vY29yZS1mb3JtL2NvcmUtZm9ybS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtaGlzdGFmZi1hbHBoYS9zcmMvbGliL2FwcC9saWJyYXJpZXMvY29yZS1mb3JtL2NvcmUtZm9ybS9jb3JlLWZvcm0uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFpQixTQUFTLEVBQWMsWUFBWSxFQUFFLEtBQUssRUFBZ0MsTUFBTSxFQUE4QixTQUFTLEVBQUUsU0FBUyxHQUFHLE1BQU0sZUFBZSxDQUFDO0FBQ25MLE9BQU8sRUFBbUIsU0FBUyxFQUFFLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRzlGLE9BQU8sRUFBRSxlQUFlLEVBQWdCLE1BQU0sTUFBTSxDQUFDO0FBRXJELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBR2pGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHlFQUF5RSxDQUFDO0FBR2hILE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQzdFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx3REFBd0QsQ0FBQztBQUM5RixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDbEUsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sbUZBQW1GLENBQUM7Ozs7Ozs7OztBQXNCaEksTUFBTSxPQUFPLGlCQUFpQjtJQW9DNUIsWUFDVSxrQkFBc0MsRUFD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LEtBQUs7Z0JBQ0csaUJBQWlCO3NCQUF6QixLQUFLO2dCQUNHLHFCQUFxQjtzQkFBN0IsS0FBSztnQkFDRyxpQkFBaUI7c0JBQXpCLEtBQUs7Z0JBQ0csaUJBQWlCO3NCQUF6QixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBRUksYUFBYTtzQkFBdEIsTUFBTTtnQkFDRyxnQkFBZ0I7c0JBQXpCLE1BQU07Z0JBQ0csUUFBUTtzQkFBakIsTUFBTTtnQkFDRyxNQUFNO3NCQUFmLE1BQU07Z0JBQ0csUUFBUTtzQkFBakIsTUFBTTtnQkFDRyxXQUFXO3NCQUFwQixNQUFNO2dCQUdlLE9BQU87c0JBQTVCLFNBQVM7dUJBQUMsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIENvbXBvbmVudCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3V0cHV0LCBTaW1wbGVDaGFuZ2VzLCBUZW1wbGF0ZVJlZiwgVmlld0NoaWxkLCBpc0Rldk1vZGUsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgRm9ybUdyb3VwLCBGb3Jtc01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgSUNvcmVGb3JtU2VjdGlvbiB9IGZyb20gJy4vZW51bS1pbnRlcmZhY2VzJztcclxuaW1wb3J0IHsgQ29yZUNvbnRyb2xTZXJ2aWNlIH0gZnJvbSAnLi4vY29yZS1jb250cm9sLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBBbGVydFNlcnZpY2UgfSBmcm9tICcuLi8uLi9hbGVydC9hbGVydC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgRW51bUNvcmVQYWdlRWRpdE1vZGUgfSBmcm9tICcuLi8uLi9jb3JlLXBhZ2UtZWRpdC9FbnVtQ29yZVBhZ2VFZGl0TW9kZSc7XHJcbmltcG9ydCB7IENvcmVGb3JtU2VydmljZSB9IGZyb20gJy4uL2NvcmUtZm9ybS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgSUNvcmVCdXR0b25WTlMgfSBmcm9tICcuLi8uLi9jb3JlLWJ1dHRvbi1ncm91cC12bnMvY29yZS1idXR0b24tZ3JvdXAtdm5zL0lDb3JlQnV0dG9uVk5TJztcclxuaW1wb3J0IHsgRW51bUNvcmVCdXR0b25WTlNDb2RlIH0gZnJvbSAnLi4vLi4vY29yZS1idXR0b24tZ3JvdXAtdm5zL2NvcmUtYnV0dG9uLWdyb3VwLXZucy9FbnVtQ29yZUJ1dHRvblZOU0NvZGUnO1xyXG5pbXBvcnQgeyBFbnVtVHJhbnNsYXRlS2V5IH0gZnJvbSBcImFscGhhLWdsb2JhbC1jb25zdGFudHNcIjtcclxuaW1wb3J0IHsgTXVsdGlMYW5ndWFnZVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9tdWx0aS1sYW5ndWFnZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgbm9uZUF1dG9DbG9zZWRBbGVydE9wdGlvbnMgfSBmcm9tICcuLi8uLi8uLi9jb25zdGFudHMvYWxlcnRPcHRpb25zJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgQ29yZUNvbnRyb2xDb21wb25lbnQgfSBmcm9tICcuLi8uLi9jb3JlLWNvbnRyb2wvY29yZS1jb250cm9sL2NvcmUtY29udHJvbC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBUcmFuc2xhdGVQaXBlIH0gZnJvbSAnLi4vLi4vLi4vYXBwLXBpcGVzL3RyYW5zbGF0ZS5waXBlJztcclxuaW1wb3J0IHsgQ29yZUJ1dHRvbkdyb3VwVm5zQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vY29yZS1idXR0b24tZ3JvdXAtdm5zL2NvcmUtYnV0dG9uLWdyb3VwLXZucy9jb3JlLWJ1dHRvbi1ncm91cC12bnMuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQXBwQ29uZmlnU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2FwcC1jb25maWcuc2VydmljZSc7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIElEeW5hbWljRm9ybUVtaXRPbkZvcm1DcmVhdGVkIHtcclxuICBmb3JtTmFtZTogc3RyaW5nO1xyXG4gIGZvcm1Hcm91cDogRm9ybUdyb3VwO1xyXG59XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2NvcmUtZm9ybScsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBDb21tb25Nb2R1bGUsXHJcbiAgICBGb3Jtc01vZHVsZSxcclxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXHJcbiAgICBDb3JlQ29udHJvbENvbXBvbmVudCxcclxuICAgIFRyYW5zbGF0ZVBpcGUsXHJcbiAgICBDb3JlQnV0dG9uR3JvdXBWbnNDb21wb25lbnRcclxuICBdLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9jb3JlLWZvcm0uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2NvcmUtZm9ybS5jb21wb25lbnQuc2NzcyddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQ29yZUZvcm1Db21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMsIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcclxuXHJcbiAgQElucHV0KCkgZm9ybU5hbWUhOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgc3VibWl0VGV4dCE6IEVudW1UcmFuc2xhdGVLZXk7XHJcbiAgQElucHV0KCkgbGVmdElucHV0U2VjdGlvbnMhOiBJQ29yZUZvcm1TZWN0aW9uW107XHJcbiAgQElucHV0KCkgbGVmdElucHV0U2VjdGlvbnNGbGV4U2l6ZSE6IG51bWJlcjtcclxuICBASW5wdXQoKSBpbnB1dFNlY3Rpb25zITogSUNvcmVGb3JtU2VjdGlvbltdO1xyXG4gIEBJbnB1dCgpIG1vZGUkITogQmVoYXZpb3JTdWJqZWN0PEVudW1Db3JlUGFnZUVkaXRNb2RlPjtcclxuICBASW5wdXQoKSBib3R0b21UZW1wbGF0ZVJlZiE6IFRlbXBsYXRlUmVmPGFueT47XHJcbiAgQElucHV0KCkgY3VzdG9tRm9ybUJ1dHRvbkl0ZW1zITogRW51bUNvcmVCdXR0b25WTlNDb2RlW107IC8vIE9wdGlvbmFsXHJcbiAgQElucHV0KCkgc2hvd0NhcHRpb25CdXR0b24hOiBib29sZWFuO1xyXG4gIEBJbnB1dCgpIGRpc2FibGVTYXZlQnV0dG9uITogYm9vbGVhbjtcclxuICBASW5wdXQoKSBjaGVja0Vycm9yJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xyXG5cclxuICBAT3V0cHV0KCkgb25Gb3JtQ3JlYXRlZCA9IG5ldyBFdmVudEVtaXR0ZXI8SUR5bmFtaWNGb3JtRW1pdE9uRm9ybUNyZWF0ZWQ+KCk7XHJcbiAgQE91dHB1dCgpIG9uRm9ybVJlZkNyZWF0ZWQgPSBuZXcgRXZlbnRFbWl0dGVyPEVsZW1lbnRSZWY8YW55Pj4oKTtcclxuICBAT3V0cHV0KCkgb25TdWJtaXQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgQE91dHB1dCgpIG9uU2F2ZSA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICBAT3V0cHV0KCkgb25DYW5jYWwgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgQE91dHB1dCgpIGJ1dHRvbkNsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjxJQ29yZUJ1dHRvblZOUz4oKTtcclxuXHJcblxyXG4gIEBWaWV3Q2hpbGQoJ2Zvcm1SZWYnKSBmb3JtUmVmITogRWxlbWVudFJlZjtcclxuXHJcbiAgYnV0dG9uSXRlbXMhOiBFbnVtQ29yZUJ1dHRvblZOU0NvZGVbXTtcclxuXHJcbiAgZm9ybSE6IEZvcm1Hcm91cDtcclxuICBzZWN0aW9ucyE6IElDb3JlRm9ybVNlY3Rpb25bXTtcclxuICBsYW5nITogc3RyaW5nO1xyXG4gIHN1YnNjcmlwdGlvbnM6IFN1YnNjcmlwdGlvbltdID0gW107XHJcblxyXG4gIHBheUxvYWQgPSAnJztcclxuICB2YWxpZGF0b3JPdmVydmlldzogYW55O1xyXG4gIGlzRGV2TW9kZSE6IGJvb2xlYW47XHJcbiAgaXNVcGRhdGVNb2RlITogYm9vbGVhbjtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGNvcmVDb250cm9sU2VydmljZTogQ29yZUNvbnRyb2xTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBtdWx0aUxhbmd1YWdlU2VydmljZTogTXVsdGlMYW5ndWFnZVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIGFsZXJ0U2VydmljZTogQWxlcnRTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBjb3JlRm9ybVNlcnZpY2U6IENvcmVGb3JtU2VydmljZSxcclxuICAgIHByaXZhdGUgYXBwQ29uZmlnU2VydmljZTogQXBwQ29uZmlnU2VydmljZVxyXG4gICkge1xyXG4gICAgdGhpcy5pc0Rldk1vZGUgPSBpc0Rldk1vZGUoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgdXBkYXRlU2VjdGlvbnMobmV3U2VjdGlvbnM6IElDb3JlRm9ybVNlY3Rpb25bXSk6IHZvaWQge1xyXG5cclxuICAgIHRoaXMuc2VjdGlvbnMubWFwKChzZWN0aW9uLCBzZWN0aW9uSW5kZXgpID0+IHtcclxuICAgICAgY29uc3QgbmV3U2VjdGlvbiA9IG5ld1NlY3Rpb25zW3NlY3Rpb25JbmRleF07XHJcbiAgICAgIHNlY3Rpb24ucm93cy5tYXAoKHJvdywgcm93SW5kZXgpID0+IHtcclxuICAgICAgICBjb25zdCBuZXdSb3cgPSBuZXdTZWN0aW9uLnJvd3Nbcm93SW5kZXhdO1xyXG4gICAgICAgIHJvdy5tYXAoKGNvbnRyb2wsIGNvbnRyb2xJbmRleCkgPT4ge1xyXG4gICAgICAgICAgY29uc3QgbmV3Q29udHJvbCA9IG5ld1Jvd1tjb250cm9sSW5kZXhdO1xyXG5cclxuICAgICAgICAgIC8qIFRIRSBPTkxZIFBST1AgVE8gQkUgVURBVEVEIElTICdoaWRkZW4nLCBUSEUgT1RIRVJTIFNIT1VMRCBCRSBNQU5JUFVMQVRFRCBUSFJPVUdIIHRoaXMuZm9ybS5nZXQoWU9VUl9DT05UUk9MX05BTUUpLi4uICovXHJcbiAgICAgICAgICBjb250cm9sLmhpZGRlbiA9IG5ld0NvbnRyb2w/LmhpZGRlbjtcclxuICAgICAgICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH0pO1xyXG5cclxuICAgICAgLyogI3JlZ2lvbiBPY3QgdGhlIDExdGggMjAyMyAqL1xyXG4gICAgICAvKiBTb21lIHNlY3Rpb25zIHdhcyBwb3NpYmx5IGhhdmUgcmVuZGVyT2ZmPXRydWUgZnJvbSBwcmV2aW91cyBzdGF0ZSBhbmQgdGhlaXIgY29udHJvbHMgbXVzdCBiZSBjcmVhdGVkL3JlbW92ZSAqL1xyXG4gICAgICAvKlxyXG4gICAgICBCVVQgVEhJUyBUQVNLIElTIEhBUkQgU08gRkFSXHJcbiAgICAgICovXHJcbiAgICAgIC8qICNlbmRyZWdpb24gT2N0IHRoZSAxMXRoIDIwMjMgKi9cclxuXHJcbiAgICB9KTtcclxuXHJcbiAgfVxyXG5cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XHJcbiAgICBpZiAoY2hhbmdlc1snaW5wdXRTZWN0aW9ucyddKSB7XHJcbiAgICAgIGxldCBuZXdTZWN0aW9uczogSUNvcmVGb3JtU2VjdGlvbltdID1cclxuICAgICAgICBjaGFuZ2VzWydpbnB1dFNlY3Rpb25zJ10uY3VycmVudFZhbHVlO1xyXG5cclxuICAgICAgaWYgKCEhIXRoaXMuZm9ybSkge1xyXG4gICAgICAgIHRoaXMuc2VjdGlvbnMgPSBuZXdTZWN0aW9ucztcclxuXHJcbiAgICAgICAgbGV0IGxlZnRHcm91cDtcclxuICAgICAgICBsZXQgZm9ybTogRm9ybUdyb3VwPGFueT47XHJcblxyXG4gICAgICAgIGNvbnN0IG1haW5Hcm91cCA9IHRoaXMuY29yZUNvbnRyb2xTZXJ2aWNlLnRvR3JvdXAodGhpcy5zZWN0aW9ucyk7XHJcblxyXG4gICAgICAgIGlmICghIXRoaXMubGVmdElucHV0U2VjdGlvbnMpIHtcclxuICAgICAgICAgIGxlZnRHcm91cCA9IHRoaXMuY29yZUNvbnRyb2xTZXJ2aWNlLnRvR3JvdXAodGhpcy5sZWZ0SW5wdXRTZWN0aW9ucyk7XHJcbiAgICAgICAgICBmb3JtID0gbmV3IEZvcm1Hcm91cCh7IC4uLmxlZnRHcm91cCwgLi4ubWFpbkdyb3VwIH0pO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICBmb3JtID0gbmV3IEZvcm1Hcm91cChtYWluR3JvdXApO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGhpcy5mb3JtID0gZm9ybTtcclxuXHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy51cGRhdGVTZWN0aW9ucyhuZXdTZWN0aW9ucyk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRoaXMub25Gb3JtQ3JlYXRlZC5lbWl0KHtcclxuICAgICAgICBmb3JtTmFtZTogdGhpcy5mb3JtTmFtZSxcclxuICAgICAgICBmb3JtR3JvdXA6IHRoaXMuZm9ybSxcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuXHJcbiAgICBpZiAodGhpcy5hcHBDb25maWdTZXJ2aWNlLkFQUF9UWVBFID09PSBcIldFQkFQUFwiKSB7XHJcbiAgICAgIGlmICghdGhpcy5kaXNhYmxlU2F2ZUJ1dHRvbikge1xyXG4gICAgICAgIHRoaXMuYnV0dG9uSXRlbXMgPSBbXHJcbiAgICAgICAgICBFbnVtQ29yZUJ1dHRvblZOU0NvZGUuTk9ORV9IRUFERVJfU0FWRSxcclxuICAgICAgICAgIEVudW1Db3JlQnV0dG9uVk5TQ29kZS5OT05FX0hFQURFUl9DQU5DRUwsXHJcbiAgICAgICAgXVxyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMuYnV0dG9uSXRlbXMgPSBbXHJcbiAgICAgICAgICBFbnVtQ29yZUJ1dHRvblZOU0NvZGUuTk9ORV9IRUFERVJfQ0FOQ0VMLFxyXG4gICAgICAgIF1cclxuICAgICAgfVxyXG4gICAgfSBlbHNlIGlmICh0aGlzLmFwcENvbmZpZ1NlcnZpY2UuQVBQX1RZUEUgPT09IFwiUE9SVEFMXCIpIHtcclxuICAgICAgaWYgKCF0aGlzLmRpc2FibGVTYXZlQnV0dG9uKSB7XHJcbiAgICAgICAgdGhpcy5idXR0b25JdGVtcyA9IFtcclxuICAgICAgICAgIEVudW1Db3JlQnV0dG9uVk5TQ29kZS5TRU5ELFxyXG4gICAgICAgICAgRW51bUNvcmVCdXR0b25WTlNDb2RlLkNBTkNFTCxcclxuICAgICAgICAgIEVudW1Db3JlQnV0dG9uVk5TQ29kZS5TQVZFLFxyXG4gICAgICAgIF1cclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLmJ1dHRvbkl0ZW1zID0gW1xyXG4gICAgICAgICAgRW51bUNvcmVCdXR0b25WTlNDb2RlLlNFTkQsXHJcbiAgICAgICAgICBFbnVtQ29yZUJ1dHRvblZOU0NvZGUuQ0FOQ0VMLFxyXG4gICAgICAgIF1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGlmICghIXRoaXMuY3VzdG9tRm9ybUJ1dHRvbkl0ZW1zKSB7XHJcbiAgICAgIHRoaXMuYnV0dG9uSXRlbXMgPSB0aGlzLmN1c3RvbUZvcm1CdXR0b25JdGVtcztcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMucHVzaChcclxuICAgICAgdGhpcy5tb2RlJC5zdWJzY3JpYmUoXHJcbiAgICAgICAgKHgpID0+ICh0aGlzLmlzVXBkYXRlTW9kZSA9IHggPT09IEVudW1Db3JlUGFnZUVkaXRNb2RlLlVQREFURSlcclxuICAgICAgKVxyXG4gICAgKTtcclxuXHJcbiAgICBjb25zb2xlLmxvZyh0aGlzLm1vZGUkKTtcclxuXHJcbiAgICAvKiBTVEFSVDogQ2hlY2sgaWYgaWQgZmllbGQgaXMgYXZhaWxhYmxlICovXHJcbiAgICBpZiAoISEhdGhpcy5mb3JtLmdldCgnaWQnKSAmJiBpc0Rldk1vZGUoKSkge1xyXG4gICAgICB0aGlzLmFsZXJ0U2VydmljZS5lcnJvcihcclxuICAgICAgICBgXHJcbiAgICAgICAgICAgIENvbnRyb2wgXCJpZFwiIGlzIG1hbmRhdG9yeS4gUGxlYXNlIGRlZmluZSBvbmUgaW4geW91ciBidXNzaW5lc3MgY29tcG9uZW50LiBZb3UgY2FuIGFzc2lnbiBpdHMgXCJoaWRkZW5cIiBwcm9wZXJ0eSB0byB0cnVlIGlmIG5lZWRlZC5cclxuICAgICAgICAgIGAsXHJcbiAgICAgICAgbm9uZUF1dG9DbG9zZWRBbGVydE9wdGlvbnNcclxuICAgICAgKTtcclxuICAgIH1cclxuICAgIC8qIEVORDogQ2hlY2sgaWYgaWQgZmllbGQgaXMgYXZhaWxhYmxlICovXHJcblxyXG4gICAgaWYgKGlzRGV2TW9kZSgpKSB7XHJcbiAgICAgIC8qIFNUQVJUOiBDaGVjayBpZiBlYWNoIGZpZWxkIGlzIHVuaXF1ZSAqL1xyXG5cclxuICAgICAgY29uc3QgZmllbGRzID0gdGhpcy5jb3JlRm9ybVNlcnZpY2UuZ2V0QWxsRm9ybUJhc2VDb250cm9sTmFtZXMoXHJcbiAgICAgICAgdGhpcy5zZWN0aW9uc1xyXG4gICAgICApO1xyXG5cclxuICAgICAgZmllbGRzLnJlZHVjZSgocCwgYykgPT4ge1xyXG4gICAgICAgIGlmIChjID09PSAnJykge1xyXG4gICAgICAgICAgdGhpcy5hbGVydFNlcnZpY2UuZXJyb3IoXHJcbiAgICAgICAgICAgIGBGb3JtIGNvbnRyb2wgbmFtZSBtdXN0IGJlIGRlZmluZGVkLCAnJHtjfScgaXMgaW52YWxpZCBmb3JtIGNvbnRyb2wgbmFtZSEhIWAsXHJcbiAgICAgICAgICAgIG5vbmVBdXRvQ2xvc2VkQWxlcnRPcHRpb25zXHJcbiAgICAgICAgICApO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICBpZiAocCA9PT0gYykge1xyXG4gICAgICAgICAgICB0aGlzLmFsZXJ0U2VydmljZS5lcnJvcihcclxuICAgICAgICAgICAgICBgRHVwbGljYXRlIGZvcm0gY29udHJvbCBuYW1lOiAnJHtjfScuIENvbnNpZGVyIHRvIHByZWRlZmluZSBvbmUgT05MWSEhIS5gLFxyXG4gICAgICAgICAgICAgIG5vbmVBdXRvQ2xvc2VkQWxlcnRPcHRpb25zXHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBjO1xyXG4gICAgICB9KTtcclxuICAgICAgLyogRU5EOiBDaGVjayBpZiBlYWNoIGZpZWxkIGlzIHVuaXF1ZSAqL1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5wdXNoKFxyXG4gICAgICB0aGlzLm11bHRpTGFuZ3VhZ2VTZXJ2aWNlLmxhbmckLnN1YnNjcmliZSgoeCkgPT4gKHRoaXMubGFuZyA9IHgpKVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMub25Gb3JtUmVmQ3JlYXRlZC5lbWl0KHRoaXMuZm9ybVJlZik7XHJcbiAgfVxyXG5cclxuICBvbkZvcm1TdWJtaXQoKSB7XHJcbiAgICB0aGlzLmNoZWNrRXJyb3IkLm5leHQodHJ1ZSk7XHJcbiAgICBpZiAoISF0aGlzLmZvcm0udmFsaWQpIHtcclxuICAgICAgdGhpcy5wYXlMb2FkID0gSlNPTi5zdHJpbmdpZnkodGhpcy5mb3JtPy5nZXRSYXdWYWx1ZSgpLCBudWxsLCAyKTtcclxuICAgICAgdGhpcy5vblN1Ym1pdC5lbWl0KHRoaXMuZm9ybT8uZ2V0UmF3VmFsdWUoKSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvbkZvcm1TYXZlKCkge1xyXG4gICAgdGhpcy5jaGVja0Vycm9yJC5uZXh0KHRydWUpO1xyXG4gICAgaWYgKCEhdGhpcy5mb3JtLnZhbGlkKSB7XHJcbiAgICAgIHRoaXMucGF5TG9hZCA9IEpTT04uc3RyaW5naWZ5KHRoaXMuZm9ybT8uZ2V0UmF3VmFsdWUoKSwgbnVsbCwgMik7XHJcbiAgICAgIHRoaXMub25TYXZlLmVtaXQodGhpcy5mb3JtPy5nZXRSYXdWYWx1ZSgpKTtcclxuICAgIH1cclxuICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy5jaGVja0Vycm9yJC5uZXh0KGZhbHNlKSwgMzAwMCk7XHJcbiAgfVxyXG5cclxuICBvbkNhbmNlbExvY2FsKCkge1xyXG4gICAgdGhpcy5vbkNhbmNhbC5lbWl0KG51bGwpO1xyXG4gIH1cclxuXHJcbiAgdXBkYXRlUGF5bG9hZCgpOiB2b2lkIHtcclxuICAgIHRoaXMucGF5TG9hZCA9IEpTT04uc3RyaW5naWZ5KHRoaXMuZm9ybT8uZ2V0UmF3VmFsdWUoKSwgbnVsbCwgMik7XHJcbiAgfVxyXG5cclxuICB1cGRhdGVWYWxpZG9yT3ZlcnZpZXcoKTogdm9pZCB7XHJcbiAgICBjb25zdCByZXN1bHQ6IHsga2V5OiBzdHJpbmc7IGVycm9yczogYW55W10gfVtdID0gW107XHJcbiAgICBPYmplY3Qua2V5cyh0aGlzLmZvcm0uY29udHJvbHMpLmZvckVhY2goKGtleSkgPT4ge1xyXG4gICAgICBjb25zdCBjb250cm9sOiBBYnN0cmFjdENvbnRyb2wgPSB0aGlzLmZvcm0uZ2V0KGtleSkhO1xyXG4gICAgICBjb25zdCBlcnJvcnM6IGFueVtdID0gW107XHJcbiAgICAgIGlmICghIWNvbnRyb2wuaW52YWxpZCkge1xyXG4gICAgICAgIE9iamVjdC5rZXlzKGNvbnRyb2wuZXJyb3JzISkuZm9yRWFjaCgoa2V5KSA9PiB7XHJcbiAgICAgICAgICBlcnJvcnMucHVzaChrZXkpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICAgIHJlc3VsdC5wdXNoKHtcclxuICAgICAgICBrZXksXHJcbiAgICAgICAgZXJyb3JzLFxyXG4gICAgICB9KTtcclxuICAgIH0pO1xyXG4gICAgdGhpcy52YWxpZGF0b3JPdmVydmlldyA9IEpTT04uc3RyaW5naWZ5KHJlc3VsdCwgbnVsbCwgMik7XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5tYXAoKHgpID0+IHg/LnVuc3Vic2NyaWJlKCkpO1xyXG4gIH1cclxuXHJcbiAgb25CdXR0b25DbGljayhlOiBJQ29yZUJ1dHRvblZOUyk6IHZvaWQge1xyXG5cclxuICAgIHN3aXRjaCAoZS5jb2RlKSB7XHJcbiAgICAgIGNhc2UgRW51bUNvcmVCdXR0b25WTlNDb2RlLk5PTkVfSEVBREVSX0NBTkNFTDpcclxuICAgICAgY2FzZSBFbnVtQ29yZUJ1dHRvblZOU0NvZGUuQ0FOQ0VMOlxyXG4gICAgICAgIHRoaXMub25DYW5jZWxMb2NhbCgpO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlIEVudW1Db3JlQnV0dG9uVk5TQ29kZS5OT05FX0hFQURFUl9TQVZFOlxyXG4gICAgICBjYXNlIEVudW1Db3JlQnV0dG9uVk5TQ29kZS5TRU5EOlxyXG4gICAgICBjYXNlIEVudW1Db3JlQnV0dG9uVk5TQ29kZS5OT05FX0hFQURFUl9ERUxFVEU6XHJcbiAgICAgIGNhc2UgRW51bUNvcmVCdXR0b25WTlNDb2RlLk5PTkVfSEVBREVSX0xJUVVJREFURV9DT05UUkFDVDpcclxuICAgICAgY2FzZSBFbnVtQ29yZUJ1dHRvblZOU0NvZGUuT05GT1JNREVMRVRFOlxyXG4gICAgICBjYXNlIEVudW1Db3JlQnV0dG9uVk5TQ29kZS5TQVZFX1BBU1NXT1JEOlxyXG4gICAgICAgIHRoaXMub25Gb3JtU3VibWl0KCk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgRW51bUNvcmVCdXR0b25WTlNDb2RlLlNBVkU6XHJcbiAgICAgICAgdGhpcy5vbkZvcm1TYXZlKCk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICB9XHJcbiAgICB0aGlzLmJ1dHRvbkNsaWNrLmVtaXQoZSk7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJjb3JlLWZvcm0tY29udGFpbmVyXCIgKm5nSWY9XCIhIWZvcm1cIj5cclxuXHJcbiAgICA8Zm9ybSAjZm9ybVJlZiAobmdTdWJtaXQpPVwib25Gb3JtU3VibWl0KClcIiBbZm9ybUdyb3VwXT1cImZvcm1cIiBhdXRvY29tcGxldGU9XCJvZmZcIj5cclxuXHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG5cclxuICAgICAgICAgICAgPGRpdiBbY2xhc3NdPVwiJ2NvbC1tZC0nICsgKGxlZnRJbnB1dFNlY3Rpb25zRmxleFNpemUgfHwgMClcIiAqbmdJZj1cIiEhbGVmdElucHV0U2VjdGlvbnNcIj5cclxuXHJcbiAgICAgICAgICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCBzZWN0aW9uIG9mIGxlZnRJbnB1dFNlY3Rpb25zXCIgY2xhc3M9XCJzZWN0aW9uXCJcclxuICAgICAgICAgICAgICAgICAgICBbY2xhc3MuZC1ub25lXT1cIighIWlzVXBkYXRlTW9kZSAmJiBzZWN0aW9uLmFkZE1vZGVPbmx5KSB8fCAoISEhaXNVcGRhdGVNb2RlICYmIHNlY3Rpb24udXBkYXRlTW9kZU9ubHkpIHx8ICEhc2VjdGlvbi5oaWRkZW5cIj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNlY3Rpb24taGVhZGVyLWxhYmVsXCIgKm5nSWY9XCJzZWN0aW9uLmNhcHRpb25cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNlY3Rpb24taW1nLXdyYXBwZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzZWN0aW9uLWltZ1wiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNlY3Rpb24tY2FwdGlvblwiPnt7IHNlY3Rpb24uY2FwdGlvbiB8IHRyYW5zbGF0ZTogbGFuZyB9fTwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCByb3cgb2Ygc2VjdGlvbi5yb3dzXCIgY2xhc3M9XCJyb3cgbWIxNVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCBjb2wgb2Ygcm93XCIgW2NsYXNzXT1cIidjb2wtbWQtJyArIGNvbC5mbGV4U2l6ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3MuZ3JpZC1idWZmZXJdPVwiY29sLmNvbnRyb2xUeXBlPT09J0dSSURCVUZGRVInXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjbGFzcy5idXR0b24tY29udHJvbF09XCJjb2wuY29udHJvbFR5cGU9PT0nQlVUVE9OJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNvcmUtY29udHJvbCBbY29udHJvbF09XCJjb2xcIiBbZm9ybV09XCJmb3JtXCIgW2NoZWNrRXJyb3IkXT1cImNoZWNrRXJyb3IkXCI+PC9jb3JlLWNvbnRyb2w+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICA8ZGl2IFtjbGFzc109XCInY29sLW1kLScgKyAoMTIgLSAobGVmdElucHV0U2VjdGlvbnNGbGV4U2l6ZSB8fCAwKSlcIj5cclxuXHJcbiAgICAgICAgICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCBzZWN0aW9uIG9mIHNlY3Rpb25zXCIgY2xhc3M9XCJzZWN0aW9uXCJcclxuICAgICAgICAgICAgICAgICAgICBbY2xhc3MuZC1ub25lXT1cIighIWlzVXBkYXRlTW9kZSAmJiBzZWN0aW9uLmFkZE1vZGVPbmx5KSB8fCAoISEhaXNVcGRhdGVNb2RlICYmIHNlY3Rpb24udXBkYXRlTW9kZU9ubHkpIHx8ICEhc2VjdGlvbi5oaWRkZW5cIj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNlY3Rpb24taGVhZGVyLWxhYmVsXCIgKm5nSWY9XCJzZWN0aW9uLmNhcHRpb25cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNlY3Rpb24taW1nLXdyYXBwZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzZWN0aW9uLWltZ1wiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNlY3Rpb24tY2FwdGlvblwiPnt7IHNlY3Rpb24uY2FwdGlvbiB8IHRyYW5zbGF0ZTogbGFuZyB9fTwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCByb3cgb2Ygc2VjdGlvbi5yb3dzXCIgY2xhc3M9XCJyb3cgbWIxNVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCBjb2wgb2Ygcm93XCIgW2NsYXNzXT1cIidjb2wtbWQtJyArIGNvbC5mbGV4U2l6ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3MuZ3JpZC1idWZmZXJdPVwiY29sLmNvbnRyb2xUeXBlPT09J0dSSURCVUZGRVInXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjbGFzcy5idXR0b24tY29udHJvbF09XCJjb2wuY29udHJvbFR5cGU9PT0nQlVUVE9OJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNvcmUtY29udHJvbCBbY29udHJvbF09XCJjb2xcIiBbZm9ybV09XCJmb3JtXCIgW2NoZWNrRXJyb3IkXT1cImNoZWNrRXJyb3IkXCI+PC9jb3JlLWNvbnRyb2w+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuXHJcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiEhYm90dG9tVGVtcGxhdGVSZWZcIj5cclxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImJvdHRvbVRlbXBsYXRlUmVmXCI+PC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgPC9uZy1jb250YWluZXI+XHJcblxyXG5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiaDEwXCI+PC9kaXY+XHJcblxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLXJvd1wiPlxyXG5cclxuICAgICAgICAgICAgPGNvcmUtYnV0dG9uLWdyb3VwLXZucyBbc2hvd0NhcHRpb25dPVwic2hvd0NhcHRpb25CdXR0b25cIiBbZm9ySGVhZGVyXT1cImZhbHNlXCIgKGJ1dHRvbkNsaWNrKT1cIm9uQnV0dG9uQ2xpY2soJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICBbc2hvd25JdGVtc109XCJidXR0b25JdGVtc1wiIGNsYXNzPVwiYnV0dG9uR3JvdXBDdXN0b21cIj48L2NvcmUtYnV0dG9uLWdyb3VwLXZucz5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1yb3dcIiAqbmdJZj1cImlzRGV2TW9kZVwiPlxyXG4gICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cImJ0biBidG4tc2Vjb25kYXJ5IHRleHRcIiAoY2xpY2spPVwidXBkYXRlUGF5bG9hZCgpXCI+U2hvd1xyXG4gICAgICAgICAgICAgICAgdmFsdWVzPC9idXR0b24+XHJcbiAgICAgICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiYnRuIGJ0bi1zZWNvbmRhcnkgdGV4dFwiIChjbGljayk9XCJ1cGRhdGVWYWxpZG9yT3ZlcnZpZXcoKVwiPlNob3dcclxuICAgICAgICAgICAgICAgIHZhbGlkYXRvcnM8L2J1dHRvbj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvZm9ybT5cclxuXHJcbiAgICA8ZGl2ICpuZ0lmPVwiISFwYXlMb2FkICYmIGlzRGV2TW9kZVwiIGNsYXNzPVwiZm9ybS1yb3cgcGF5bG9hZC1wcmV2aWV3XCI+XHJcbiAgICAgICAgPHN0cm9uZz5DdXJyZW50IHZhbHVlczwvc3Ryb25nPjxicj57e3BheUxvYWR9fVxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2ICpuZ0lmPVwiISF2YWxpZGF0b3JPdmVydmlldyAmJiBpc0Rldk1vZGVcIiBjbGFzcz1cImZvcm0tcm93IHBheWxvYWQtcHJldmlld1wiPlxyXG4gICAgICAgIDxzdHJvbmc+Q3VycmVudCBlcnJvcnM8L3N0cm9uZz48YnI+e3t2YWxpZGF0b3JPdmVydmlld319XHJcbiAgICA8L2Rpdj5cclxuXHJcbjwvZGl2PiJdfQ==
|
|
261
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS1mb3JtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1oaXN0YWZmLWFscGhhL3NyYy9saWIvYXBwL2xpYnJhcmllcy9jb3JlLWZvcm0vY29yZS1mb3JtL2NvcmUtZm9ybS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtaGlzdGFmZi1hbHBoYS9zcmMvbGliL2FwcC9saWJyYXJpZXMvY29yZS1mb3JtL2NvcmUtZm9ybS9jb3JlLWZvcm0uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFpQixTQUFTLEVBQWMsWUFBWSxFQUFFLEtBQUssRUFBZ0MsTUFBTSxFQUE4QixTQUFTLEVBQUUsU0FBUyxHQUFHLE1BQU0sZUFBZSxDQUFDO0FBQ25MLE9BQU8sRUFBbUIsU0FBUyxFQUFFLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRzlGLE9BQU8sRUFBRSxlQUFlLEVBQWdCLE1BQU0sTUFBTSxDQUFDO0FBRXJELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBR2pGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHlFQUF5RSxDQUFDO0FBR2hILE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQzdFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx3REFBd0QsQ0FBQztBQUM5RixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDbEUsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sbUZBQW1GLENBQUM7Ozs7Ozs7OztBQXNCaEksTUFBTSxPQUFPLGlCQUFpQjtJQW9DNUIsWUFDVSxrQkFBc0MsRUFD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Vmlld0luaXQsIENvbXBvbmVudCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3V0cHV0LCBTaW1wbGVDaGFuZ2VzLCBUZW1wbGF0ZVJlZiwgVmlld0NoaWxkLCBpc0Rldk1vZGUsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgRm9ybUdyb3VwLCBGb3Jtc01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgSUNvcmVGb3JtU2VjdGlvbiB9IGZyb20gJy4vZW51bS1pbnRlcmZhY2VzJztcclxuaW1wb3J0IHsgQ29yZUNvbnRyb2xTZXJ2aWNlIH0gZnJvbSAnLi4vY29yZS1jb250cm9sLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBBbGVydFNlcnZpY2UgfSBmcm9tICcuLi8uLi9hbGVydC9hbGVydC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgRW51bUNvcmVQYWdlRWRpdE1vZGUgfSBmcm9tICcuLi8uLi9jb3JlLXBhZ2UtZWRpdC9FbnVtQ29yZVBhZ2VFZGl0TW9kZSc7XHJcbmltcG9ydCB7IENvcmVGb3JtU2VydmljZSB9IGZyb20gJy4uL2NvcmUtZm9ybS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgSUNvcmVCdXR0b25WTlMgfSBmcm9tICcuLi8uLi9jb3JlLWJ1dHRvbi1ncm91cC12bnMvY29yZS1idXR0b24tZ3JvdXAtdm5zL0lDb3JlQnV0dG9uVk5TJztcclxuaW1wb3J0IHsgRW51bUNvcmVCdXR0b25WTlNDb2RlIH0gZnJvbSAnLi4vLi4vY29yZS1idXR0b24tZ3JvdXAtdm5zL2NvcmUtYnV0dG9uLWdyb3VwLXZucy9FbnVtQ29yZUJ1dHRvblZOU0NvZGUnO1xyXG5pbXBvcnQgeyBFbnVtVHJhbnNsYXRlS2V5IH0gZnJvbSBcImFscGhhLWdsb2JhbC1jb25zdGFudHNcIjtcclxuaW1wb3J0IHsgTXVsdGlMYW5ndWFnZVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9tdWx0aS1sYW5ndWFnZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgbm9uZUF1dG9DbG9zZWRBbGVydE9wdGlvbnMgfSBmcm9tICcuLi8uLi8uLi9jb25zdGFudHMvYWxlcnRPcHRpb25zJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgQ29yZUNvbnRyb2xDb21wb25lbnQgfSBmcm9tICcuLi8uLi9jb3JlLWNvbnRyb2wvY29yZS1jb250cm9sL2NvcmUtY29udHJvbC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBUcmFuc2xhdGVQaXBlIH0gZnJvbSAnLi4vLi4vLi4vYXBwLXBpcGVzL3RyYW5zbGF0ZS5waXBlJztcclxuaW1wb3J0IHsgQ29yZUJ1dHRvbkdyb3VwVm5zQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vY29yZS1idXR0b24tZ3JvdXAtdm5zL2NvcmUtYnV0dG9uLWdyb3VwLXZucy9jb3JlLWJ1dHRvbi1ncm91cC12bnMuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQXBwQ29uZmlnU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2FwcC1jb25maWcuc2VydmljZSc7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIElEeW5hbWljRm9ybUVtaXRPbkZvcm1DcmVhdGVkIHtcclxuICBmb3JtTmFtZTogc3RyaW5nO1xyXG4gIGZvcm1Hcm91cDogRm9ybUdyb3VwO1xyXG59XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2NvcmUtZm9ybScsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBDb21tb25Nb2R1bGUsXHJcbiAgICBGb3Jtc01vZHVsZSxcclxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXHJcbiAgICBDb3JlQ29udHJvbENvbXBvbmVudCxcclxuICAgIFRyYW5zbGF0ZVBpcGUsXHJcbiAgICBDb3JlQnV0dG9uR3JvdXBWbnNDb21wb25lbnRcclxuICBdLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9jb3JlLWZvcm0uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2NvcmUtZm9ybS5jb21wb25lbnQuc2NzcyddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQ29yZUZvcm1Db21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMsIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcclxuXHJcbiAgQElucHV0KCkgZm9ybU5hbWUhOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgc3VibWl0VGV4dCE6IEVudW1UcmFuc2xhdGVLZXk7XHJcbiAgQElucHV0KCkgbGVmdElucHV0U2VjdGlvbnMhOiBJQ29yZUZvcm1TZWN0aW9uW107XHJcbiAgQElucHV0KCkgbGVmdElucHV0U2VjdGlvbnNGbGV4U2l6ZSE6IG51bWJlcjtcclxuICBASW5wdXQoKSBpbnB1dFNlY3Rpb25zITogSUNvcmVGb3JtU2VjdGlvbltdO1xyXG4gIEBJbnB1dCgpIG1vZGUkITogQmVoYXZpb3JTdWJqZWN0PEVudW1Db3JlUGFnZUVkaXRNb2RlPjtcclxuICBASW5wdXQoKSBib3R0b21UZW1wbGF0ZVJlZiE6IFRlbXBsYXRlUmVmPGFueT47XHJcbiAgQElucHV0KCkgY3VzdG9tRm9ybUJ1dHRvbkl0ZW1zITogRW51bUNvcmVCdXR0b25WTlNDb2RlW107IC8vIE9wdGlvbmFsXHJcbiAgQElucHV0KCkgc2hvd0NhcHRpb25CdXR0b24hOiBib29sZWFuO1xyXG4gIEBJbnB1dCgpIGRpc2FibGVTYXZlQnV0dG9uITogYm9vbGVhbjtcclxuICBASW5wdXQoKSBjaGVja0Vycm9yJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xyXG5cclxuICBAT3V0cHV0KCkgb25Gb3JtQ3JlYXRlZCA9IG5ldyBFdmVudEVtaXR0ZXI8SUR5bmFtaWNGb3JtRW1pdE9uRm9ybUNyZWF0ZWQ+KCk7XHJcbiAgQE91dHB1dCgpIG9uRm9ybVJlZkNyZWF0ZWQgPSBuZXcgRXZlbnRFbWl0dGVyPEVsZW1lbnRSZWY8YW55Pj4oKTtcclxuICBAT3V0cHV0KCkgb25TdWJtaXQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgQE91dHB1dCgpIG9uU2F2ZSA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICBAT3V0cHV0KCkgb25DYW5jYWwgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgQE91dHB1dCgpIGJ1dHRvbkNsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjxJQ29yZUJ1dHRvblZOUz4oKTtcclxuXHJcblxyXG4gIEBWaWV3Q2hpbGQoJ2Zvcm1SZWYnKSBmb3JtUmVmITogRWxlbWVudFJlZjtcclxuXHJcbiAgYnV0dG9uSXRlbXMhOiBFbnVtQ29yZUJ1dHRvblZOU0NvZGVbXTtcclxuXHJcbiAgZm9ybSE6IEZvcm1Hcm91cDtcclxuICBzZWN0aW9ucyE6IElDb3JlRm9ybVNlY3Rpb25bXTtcclxuICBsYW5nITogc3RyaW5nO1xyXG4gIHN1YnNjcmlwdGlvbnM6IFN1YnNjcmlwdGlvbltdID0gW107XHJcblxyXG4gIHBheUxvYWQgPSAnJztcclxuICB2YWxpZGF0b3JPdmVydmlldzogYW55O1xyXG4gIGlzRGV2TW9kZSE6IGJvb2xlYW47XHJcbiAgaXNVcGRhdGVNb2RlITogYm9vbGVhbjtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGNvcmVDb250cm9sU2VydmljZTogQ29yZUNvbnRyb2xTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBtdWx0aUxhbmd1YWdlU2VydmljZTogTXVsdGlMYW5ndWFnZVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIGFsZXJ0U2VydmljZTogQWxlcnRTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBjb3JlRm9ybVNlcnZpY2U6IENvcmVGb3JtU2VydmljZSxcclxuICAgIHByaXZhdGUgYXBwQ29uZmlnU2VydmljZTogQXBwQ29uZmlnU2VydmljZVxyXG4gICkge1xyXG4gICAgdGhpcy5pc0Rldk1vZGUgPSBpc0Rldk1vZGUoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgdXBkYXRlU2VjdGlvbnMobmV3U2VjdGlvbnM6IElDb3JlRm9ybVNlY3Rpb25bXSk6IHZvaWQge1xyXG5cclxuICAgIHRoaXMuc2VjdGlvbnMubWFwKChzZWN0aW9uLCBzZWN0aW9uSW5kZXgpID0+IHtcclxuICAgICAgY29uc3QgbmV3U2VjdGlvbiA9IG5ld1NlY3Rpb25zW3NlY3Rpb25JbmRleF07XHJcbiAgICAgIHNlY3Rpb24ucm93cy5tYXAoKHJvdywgcm93SW5kZXgpID0+IHtcclxuICAgICAgICBjb25zdCBuZXdSb3cgPSBuZXdTZWN0aW9uLnJvd3Nbcm93SW5kZXhdO1xyXG4gICAgICAgIHJvdy5tYXAoKGNvbnRyb2wsIGNvbnRyb2xJbmRleCkgPT4ge1xyXG4gICAgICAgICAgY29uc3QgbmV3Q29udHJvbCA9IG5ld1Jvd1tjb250cm9sSW5kZXhdO1xyXG5cclxuICAgICAgICAgIC8qIFRIRSBPTkxZIFBST1AgVE8gQkUgVURBVEVEIElTICdoaWRkZW4nLCBUSEUgT1RIRVJTIFNIT1VMRCBCRSBNQU5JUFVMQVRFRCBUSFJPVUdIIHRoaXMuZm9ybS5nZXQoWU9VUl9DT05UUk9MX05BTUUpLi4uICovXHJcbiAgICAgICAgICBjb250cm9sLmhpZGRlbiA9IG5ld0NvbnRyb2w/LmhpZGRlbjtcclxuICAgICAgICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH0pO1xyXG5cclxuICAgICAgLyogI3JlZ2lvbiBPY3QgdGhlIDExdGggMjAyMyAqL1xyXG4gICAgICAvKiBTb21lIHNlY3Rpb25zIHdhcyBwb3NpYmx5IGhhdmUgcmVuZGVyT2ZmPXRydWUgZnJvbSBwcmV2aW91cyBzdGF0ZSBhbmQgdGhlaXIgY29udHJvbHMgbXVzdCBiZSBjcmVhdGVkL3JlbW92ZSAqL1xyXG4gICAgICAvKlxyXG4gICAgICBCVVQgVEhJUyBUQVNLIElTIEhBUkQgU08gRkFSXHJcbiAgICAgICovXHJcbiAgICAgIC8qICNlbmRyZWdpb24gT2N0IHRoZSAxMXRoIDIwMjMgKi9cclxuXHJcbiAgICB9KTtcclxuXHJcbiAgfVxyXG5cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XHJcbiAgICBpZiAoY2hhbmdlc1snaW5wdXRTZWN0aW9ucyddKSB7XHJcbiAgICAgIGxldCBuZXdTZWN0aW9uczogSUNvcmVGb3JtU2VjdGlvbltdID1cclxuICAgICAgICBjaGFuZ2VzWydpbnB1dFNlY3Rpb25zJ10uY3VycmVudFZhbHVlO1xyXG5cclxuICAgICAgaWYgKCEhIXRoaXMuZm9ybSkge1xyXG4gICAgICAgIHRoaXMuc2VjdGlvbnMgPSBuZXdTZWN0aW9ucztcclxuXHJcbiAgICAgICAgbGV0IGxlZnRHcm91cDtcclxuICAgICAgICBsZXQgZm9ybTogRm9ybUdyb3VwPGFueT47XHJcblxyXG4gICAgICAgIGNvbnN0IG1haW5Hcm91cCA9IHRoaXMuY29yZUNvbnRyb2xTZXJ2aWNlLnRvR3JvdXAodGhpcy5zZWN0aW9ucyk7XHJcblxyXG4gICAgICAgIGlmICghIXRoaXMubGVmdElucHV0U2VjdGlvbnMpIHtcclxuICAgICAgICAgIGxlZnRHcm91cCA9IHRoaXMuY29yZUNvbnRyb2xTZXJ2aWNlLnRvR3JvdXAodGhpcy5sZWZ0SW5wdXRTZWN0aW9ucyk7XHJcbiAgICAgICAgICBmb3JtID0gbmV3IEZvcm1Hcm91cCh7IC4uLmxlZnRHcm91cCwgLi4ubWFpbkdyb3VwIH0pO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICBmb3JtID0gbmV3IEZvcm1Hcm91cChtYWluR3JvdXApO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGhpcy5mb3JtID0gZm9ybTtcclxuXHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy51cGRhdGVTZWN0aW9ucyhuZXdTZWN0aW9ucyk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRoaXMub25Gb3JtQ3JlYXRlZC5lbWl0KHtcclxuICAgICAgICBmb3JtTmFtZTogdGhpcy5mb3JtTmFtZSxcclxuICAgICAgICBmb3JtR3JvdXA6IHRoaXMuZm9ybSxcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuXHJcbiAgICAvKlxyXG4gICAgaWYgKHRoaXMuYXBwQ29uZmlnU2VydmljZS5BUFBfVFlQRSA9PT0gXCJXRUJBUFBcIikge1xyXG4gICAgKi9cclxuXHJcbiAgICAgIGlmICghdGhpcy5kaXNhYmxlU2F2ZUJ1dHRvbikge1xyXG4gICAgICAgIHRoaXMuYnV0dG9uSXRlbXMgPSBbXHJcbiAgICAgICAgICBFbnVtQ29yZUJ1dHRvblZOU0NvZGUuTk9ORV9IRUFERVJfU0FWRSxcclxuICAgICAgICAgIEVudW1Db3JlQnV0dG9uVk5TQ29kZS5OT05FX0hFQURFUl9DQU5DRUwsXHJcbiAgICAgICAgXVxyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMuYnV0dG9uSXRlbXMgPSBbXHJcbiAgICAgICAgICBFbnVtQ29yZUJ1dHRvblZOU0NvZGUuTk9ORV9IRUFERVJfQ0FOQ0VMLFxyXG4gICAgICAgIF1cclxuICAgICAgfVxyXG5cclxuICAgIC8qXHJcbiAgICB9IGVsc2UgaWYgKHRoaXMuYXBwQ29uZmlnU2VydmljZS5BUFBfVFlQRSA9PT0gXCJQT1JUQUxcIikge1xyXG4gICAgICBpZiAoIXRoaXMuZGlzYWJsZVNhdmVCdXR0b24pIHtcclxuICAgICAgICB0aGlzLmJ1dHRvbkl0ZW1zID0gW1xyXG4gICAgICAgICAgRW51bUNvcmVCdXR0b25WTlNDb2RlLlNFTkQsXHJcbiAgICAgICAgICBFbnVtQ29yZUJ1dHRvblZOU0NvZGUuQ0FOQ0VMLFxyXG4gICAgICAgICAgRW51bUNvcmVCdXR0b25WTlNDb2RlLlNBVkUsXHJcbiAgICAgICAgXVxyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMuYnV0dG9uSXRlbXMgPSBbXHJcbiAgICAgICAgICBFbnVtQ29yZUJ1dHRvblZOU0NvZGUuU0VORCxcclxuICAgICAgICAgIEVudW1Db3JlQnV0dG9uVk5TQ29kZS5DQU5DRUwsXHJcbiAgICAgICAgXVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAqL1xyXG5cclxuICAgIGlmICghIXRoaXMuY3VzdG9tRm9ybUJ1dHRvbkl0ZW1zKSB7XHJcbiAgICAgIHRoaXMuYnV0dG9uSXRlbXMgPSB0aGlzLmN1c3RvbUZvcm1CdXR0b25JdGVtcztcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMucHVzaChcclxuICAgICAgdGhpcy5tb2RlJC5zdWJzY3JpYmUoXHJcbiAgICAgICAgKHgpID0+ICh0aGlzLmlzVXBkYXRlTW9kZSA9IHggPT09IEVudW1Db3JlUGFnZUVkaXRNb2RlLlVQREFURSlcclxuICAgICAgKVxyXG4gICAgKTtcclxuXHJcbiAgICBjb25zb2xlLmxvZyh0aGlzLm1vZGUkKTtcclxuXHJcbiAgICAvKiBTVEFSVDogQ2hlY2sgaWYgaWQgZmllbGQgaXMgYXZhaWxhYmxlICovXHJcbiAgICBpZiAoISEhdGhpcy5mb3JtLmdldCgnaWQnKSAmJiBpc0Rldk1vZGUoKSkge1xyXG4gICAgICB0aGlzLmFsZXJ0U2VydmljZS5lcnJvcihcclxuICAgICAgICBgXHJcbiAgICAgICAgICAgIENvbnRyb2wgXCJpZFwiIGlzIG1hbmRhdG9yeS4gUGxlYXNlIGRlZmluZSBvbmUgaW4geW91ciBidXNzaW5lc3MgY29tcG9uZW50LiBZb3UgY2FuIGFzc2lnbiBpdHMgXCJoaWRkZW5cIiBwcm9wZXJ0eSB0byB0cnVlIGlmIG5lZWRlZC5cclxuICAgICAgICAgIGAsXHJcbiAgICAgICAgbm9uZUF1dG9DbG9zZWRBbGVydE9wdGlvbnNcclxuICAgICAgKTtcclxuICAgIH1cclxuICAgIC8qIEVORDogQ2hlY2sgaWYgaWQgZmllbGQgaXMgYXZhaWxhYmxlICovXHJcblxyXG4gICAgaWYgKGlzRGV2TW9kZSgpKSB7XHJcbiAgICAgIC8qIFNUQVJUOiBDaGVjayBpZiBlYWNoIGZpZWxkIGlzIHVuaXF1ZSAqL1xyXG5cclxuICAgICAgY29uc3QgZmllbGRzID0gdGhpcy5jb3JlRm9ybVNlcnZpY2UuZ2V0QWxsRm9ybUJhc2VDb250cm9sTmFtZXMoXHJcbiAgICAgICAgdGhpcy5zZWN0aW9uc1xyXG4gICAgICApO1xyXG5cclxuICAgICAgZmllbGRzLnJlZHVjZSgocCwgYykgPT4ge1xyXG4gICAgICAgIGlmIChjID09PSAnJykge1xyXG4gICAgICAgICAgdGhpcy5hbGVydFNlcnZpY2UuZXJyb3IoXHJcbiAgICAgICAgICAgIGBGb3JtIGNvbnRyb2wgbmFtZSBtdXN0IGJlIGRlZmluZGVkLCAnJHtjfScgaXMgaW52YWxpZCBmb3JtIGNvbnRyb2wgbmFtZSEhIWAsXHJcbiAgICAgICAgICAgIG5vbmVBdXRvQ2xvc2VkQWxlcnRPcHRpb25zXHJcbiAgICAgICAgICApO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICBpZiAocCA9PT0gYykge1xyXG4gICAgICAgICAgICB0aGlzLmFsZXJ0U2VydmljZS5lcnJvcihcclxuICAgICAgICAgICAgICBgRHVwbGljYXRlIGZvcm0gY29udHJvbCBuYW1lOiAnJHtjfScuIENvbnNpZGVyIHRvIHByZWRlZmluZSBvbmUgT05MWSEhIS5gLFxyXG4gICAgICAgICAgICAgIG5vbmVBdXRvQ2xvc2VkQWxlcnRPcHRpb25zXHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBjO1xyXG4gICAgICB9KTtcclxuICAgICAgLyogRU5EOiBDaGVjayBpZiBlYWNoIGZpZWxkIGlzIHVuaXF1ZSAqL1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5wdXNoKFxyXG4gICAgICB0aGlzLm11bHRpTGFuZ3VhZ2VTZXJ2aWNlLmxhbmckLnN1YnNjcmliZSgoeCkgPT4gKHRoaXMubGFuZyA9IHgpKVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMub25Gb3JtUmVmQ3JlYXRlZC5lbWl0KHRoaXMuZm9ybVJlZik7XHJcbiAgfVxyXG5cclxuICBvbkZvcm1TdWJtaXQoKSB7XHJcbiAgICB0aGlzLmNoZWNrRXJyb3IkLm5leHQodHJ1ZSk7XHJcbiAgICBpZiAoISF0aGlzLmZvcm0udmFsaWQpIHtcclxuICAgICAgdGhpcy5wYXlMb2FkID0gSlNPTi5zdHJpbmdpZnkodGhpcy5mb3JtPy5nZXRSYXdWYWx1ZSgpLCBudWxsLCAyKTtcclxuICAgICAgdGhpcy5vblN1Ym1pdC5lbWl0KHRoaXMuZm9ybT8uZ2V0UmF3VmFsdWUoKSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvbkZvcm1TYXZlKCkge1xyXG4gICAgdGhpcy5jaGVja0Vycm9yJC5uZXh0KHRydWUpO1xyXG4gICAgaWYgKCEhdGhpcy5mb3JtLnZhbGlkKSB7XHJcbiAgICAgIHRoaXMucGF5TG9hZCA9IEpTT04uc3RyaW5naWZ5KHRoaXMuZm9ybT8uZ2V0UmF3VmFsdWUoKSwgbnVsbCwgMik7XHJcbiAgICAgIHRoaXMub25TYXZlLmVtaXQodGhpcy5mb3JtPy5nZXRSYXdWYWx1ZSgpKTtcclxuICAgIH1cclxuICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy5jaGVja0Vycm9yJC5uZXh0KGZhbHNlKSwgMzAwMCk7XHJcbiAgfVxyXG5cclxuICBvbkNhbmNlbExvY2FsKCkge1xyXG4gICAgdGhpcy5vbkNhbmNhbC5lbWl0KG51bGwpO1xyXG4gIH1cclxuXHJcbiAgdXBkYXRlUGF5bG9hZCgpOiB2b2lkIHtcclxuICAgIHRoaXMucGF5TG9hZCA9IEpTT04uc3RyaW5naWZ5KHRoaXMuZm9ybT8uZ2V0UmF3VmFsdWUoKSwgbnVsbCwgMik7XHJcbiAgfVxyXG5cclxuICB1cGRhdGVWYWxpZG9yT3ZlcnZpZXcoKTogdm9pZCB7XHJcbiAgICBjb25zdCByZXN1bHQ6IHsga2V5OiBzdHJpbmc7IGVycm9yczogYW55W10gfVtdID0gW107XHJcbiAgICBPYmplY3Qua2V5cyh0aGlzLmZvcm0uY29udHJvbHMpLmZvckVhY2goKGtleSkgPT4ge1xyXG4gICAgICBjb25zdCBjb250cm9sOiBBYnN0cmFjdENvbnRyb2wgPSB0aGlzLmZvcm0uZ2V0KGtleSkhO1xyXG4gICAgICBjb25zdCBlcnJvcnM6IGFueVtdID0gW107XHJcbiAgICAgIGlmICghIWNvbnRyb2wuaW52YWxpZCkge1xyXG4gICAgICAgIE9iamVjdC5rZXlzKGNvbnRyb2wuZXJyb3JzISkuZm9yRWFjaCgoa2V5KSA9PiB7XHJcbiAgICAgICAgICBlcnJvcnMucHVzaChrZXkpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICAgIHJlc3VsdC5wdXNoKHtcclxuICAgICAgICBrZXksXHJcbiAgICAgICAgZXJyb3JzLFxyXG4gICAgICB9KTtcclxuICAgIH0pO1xyXG4gICAgdGhpcy52YWxpZGF0b3JPdmVydmlldyA9IEpTT04uc3RyaW5naWZ5KHJlc3VsdCwgbnVsbCwgMik7XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5tYXAoKHgpID0+IHg/LnVuc3Vic2NyaWJlKCkpO1xyXG4gIH1cclxuXHJcbiAgb25CdXR0b25DbGljayhlOiBJQ29yZUJ1dHRvblZOUyk6IHZvaWQge1xyXG5cclxuICAgIHN3aXRjaCAoZS5jb2RlKSB7XHJcbiAgICAgIGNhc2UgRW51bUNvcmVCdXR0b25WTlNDb2RlLk5PTkVfSEVBREVSX0NBTkNFTDpcclxuICAgICAgY2FzZSBFbnVtQ29yZUJ1dHRvblZOU0NvZGUuQ0FOQ0VMOlxyXG4gICAgICAgIHRoaXMub25DYW5jZWxMb2NhbCgpO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlIEVudW1Db3JlQnV0dG9uVk5TQ29kZS5OT05FX0hFQURFUl9TQVZFOlxyXG4gICAgICBjYXNlIEVudW1Db3JlQnV0dG9uVk5TQ29kZS5TRU5EOlxyXG4gICAgICBjYXNlIEVudW1Db3JlQnV0dG9uVk5TQ29kZS5OT05FX0hFQURFUl9ERUxFVEU6XHJcbiAgICAgIGNhc2UgRW51bUNvcmVCdXR0b25WTlNDb2RlLk5PTkVfSEVBREVSX0xJUVVJREFURV9DT05UUkFDVDpcclxuICAgICAgY2FzZSBFbnVtQ29yZUJ1dHRvblZOU0NvZGUuT05GT1JNREVMRVRFOlxyXG4gICAgICBjYXNlIEVudW1Db3JlQnV0dG9uVk5TQ29kZS5TQVZFX1BBU1NXT1JEOlxyXG4gICAgICAgIHRoaXMub25Gb3JtU3VibWl0KCk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgRW51bUNvcmVCdXR0b25WTlNDb2RlLlNBVkU6XHJcbiAgICAgICAgdGhpcy5vbkZvcm1TYXZlKCk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICB9XHJcbiAgICB0aGlzLmJ1dHRvbkNsaWNrLmVtaXQoZSk7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJjb3JlLWZvcm0tY29udGFpbmVyXCIgKm5nSWY9XCIhIWZvcm1cIj5cclxuXHJcbiAgICA8Zm9ybSAjZm9ybVJlZiAobmdTdWJtaXQpPVwib25Gb3JtU3VibWl0KClcIiBbZm9ybUdyb3VwXT1cImZvcm1cIiBhdXRvY29tcGxldGU9XCJvZmZcIj5cclxuXHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG5cclxuICAgICAgICAgICAgPGRpdiBbY2xhc3NdPVwiJ2NvbC1tZC0nICsgKGxlZnRJbnB1dFNlY3Rpb25zRmxleFNpemUgfHwgMClcIiAqbmdJZj1cIiEhbGVmdElucHV0U2VjdGlvbnNcIj5cclxuXHJcbiAgICAgICAgICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCBzZWN0aW9uIG9mIGxlZnRJbnB1dFNlY3Rpb25zXCIgY2xhc3M9XCJzZWN0aW9uXCJcclxuICAgICAgICAgICAgICAgICAgICBbY2xhc3MuZC1ub25lXT1cIighIWlzVXBkYXRlTW9kZSAmJiBzZWN0aW9uLmFkZE1vZGVPbmx5KSB8fCAoISEhaXNVcGRhdGVNb2RlICYmIHNlY3Rpb24udXBkYXRlTW9kZU9ubHkpIHx8ICEhc2VjdGlvbi5oaWRkZW5cIj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNlY3Rpb24taGVhZGVyLWxhYmVsXCIgKm5nSWY9XCJzZWN0aW9uLmNhcHRpb25cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNlY3Rpb24taW1nLXdyYXBwZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzZWN0aW9uLWltZ1wiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNlY3Rpb24tY2FwdGlvblwiPnt7IHNlY3Rpb24uY2FwdGlvbiB8IHRyYW5zbGF0ZTogbGFuZyB9fTwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCByb3cgb2Ygc2VjdGlvbi5yb3dzXCIgY2xhc3M9XCJyb3cgbWIxNVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCBjb2wgb2Ygcm93XCIgW2NsYXNzXT1cIidjb2wtbWQtJyArIGNvbC5mbGV4U2l6ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3MuZ3JpZC1idWZmZXJdPVwiY29sLmNvbnRyb2xUeXBlPT09J0dSSURCVUZGRVInXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjbGFzcy5idXR0b24tY29udHJvbF09XCJjb2wuY29udHJvbFR5cGU9PT0nQlVUVE9OJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNvcmUtY29udHJvbCBbY29udHJvbF09XCJjb2xcIiBbZm9ybV09XCJmb3JtXCIgW2NoZWNrRXJyb3IkXT1cImNoZWNrRXJyb3IkXCI+PC9jb3JlLWNvbnRyb2w+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICA8ZGl2IFtjbGFzc109XCInY29sLW1kLScgKyAoMTIgLSAobGVmdElucHV0U2VjdGlvbnNGbGV4U2l6ZSB8fCAwKSlcIj5cclxuXHJcbiAgICAgICAgICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCBzZWN0aW9uIG9mIHNlY3Rpb25zXCIgY2xhc3M9XCJzZWN0aW9uXCJcclxuICAgICAgICAgICAgICAgICAgICBbY2xhc3MuZC1ub25lXT1cIighIWlzVXBkYXRlTW9kZSAmJiBzZWN0aW9uLmFkZE1vZGVPbmx5KSB8fCAoISEhaXNVcGRhdGVNb2RlICYmIHNlY3Rpb24udXBkYXRlTW9kZU9ubHkpIHx8ICEhc2VjdGlvbi5oaWRkZW5cIj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNlY3Rpb24taGVhZGVyLWxhYmVsXCIgKm5nSWY9XCJzZWN0aW9uLmNhcHRpb25cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNlY3Rpb24taW1nLXdyYXBwZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzZWN0aW9uLWltZ1wiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNlY3Rpb24tY2FwdGlvblwiPnt7IHNlY3Rpb24uY2FwdGlvbiB8IHRyYW5zbGF0ZTogbGFuZyB9fTwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCByb3cgb2Ygc2VjdGlvbi5yb3dzXCIgY2xhc3M9XCJyb3cgbWIxNVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCBjb2wgb2Ygcm93XCIgW2NsYXNzXT1cIidjb2wtbWQtJyArIGNvbC5mbGV4U2l6ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3MuZ3JpZC1idWZmZXJdPVwiY29sLmNvbnRyb2xUeXBlPT09J0dSSURCVUZGRVInXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjbGFzcy5idXR0b24tY29udHJvbF09XCJjb2wuY29udHJvbFR5cGU9PT0nQlVUVE9OJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNvcmUtY29udHJvbCBbY29udHJvbF09XCJjb2xcIiBbZm9ybV09XCJmb3JtXCIgW2NoZWNrRXJyb3IkXT1cImNoZWNrRXJyb3IkXCI+PC9jb3JlLWNvbnRyb2w+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuXHJcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiEhYm90dG9tVGVtcGxhdGVSZWZcIj5cclxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImJvdHRvbVRlbXBsYXRlUmVmXCI+PC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgPC9uZy1jb250YWluZXI+XHJcblxyXG5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiaDEwXCI+PC9kaXY+XHJcblxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLXJvd1wiPlxyXG5cclxuICAgICAgICAgICAgPGNvcmUtYnV0dG9uLWdyb3VwLXZucyBbc2hvd0NhcHRpb25dPVwic2hvd0NhcHRpb25CdXR0b25cIiBbZm9ySGVhZGVyXT1cImZhbHNlXCIgKGJ1dHRvbkNsaWNrKT1cIm9uQnV0dG9uQ2xpY2soJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICBbc2hvd25JdGVtc109XCJidXR0b25JdGVtc1wiIGNsYXNzPVwiYnV0dG9uR3JvdXBDdXN0b21cIj48L2NvcmUtYnV0dG9uLWdyb3VwLXZucz5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1yb3dcIiAqbmdJZj1cImlzRGV2TW9kZVwiPlxyXG4gICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cImJ0biBidG4tc2Vjb25kYXJ5IHRleHRcIiAoY2xpY2spPVwidXBkYXRlUGF5bG9hZCgpXCI+U2hvd1xyXG4gICAgICAgICAgICAgICAgdmFsdWVzPC9idXR0b24+XHJcbiAgICAgICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiYnRuIGJ0bi1zZWNvbmRhcnkgdGV4dFwiIChjbGljayk9XCJ1cGRhdGVWYWxpZG9yT3ZlcnZpZXcoKVwiPlNob3dcclxuICAgICAgICAgICAgICAgIHZhbGlkYXRvcnM8L2J1dHRvbj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvZm9ybT5cclxuXHJcbiAgICA8ZGl2ICpuZ0lmPVwiISFwYXlMb2FkICYmIGlzRGV2TW9kZVwiIGNsYXNzPVwiZm9ybS1yb3cgcGF5bG9hZC1wcmV2aWV3XCI+XHJcbiAgICAgICAgPHN0cm9uZz5DdXJyZW50IHZhbHVlczwvc3Ryb25nPjxicj57e3BheUxvYWR9fVxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2ICpuZ0lmPVwiISF2YWxpZGF0b3JPdmVydmlldyAmJiBpc0Rldk1vZGVcIiBjbGFzcz1cImZvcm0tcm93IHBheWxvYWQtcHJldmlld1wiPlxyXG4gICAgICAgIDxzdHJvbmc+Q3VycmVudCBlcnJvcnM8L3N0cm9uZz48YnI+e3t2YWxpZGF0b3JPdmVydmlld319XHJcbiAgICA8L2Rpdj5cclxuXHJcbjwvZGl2PiJdfQ==
|
|
@@ -161,13 +161,15 @@ export class ItemComponent {
|
|
|
161
161
|
this.me.nativeElement.style.setProperty('--color', this.navigatorService.color);
|
|
162
162
|
this.me.nativeElement.style.setProperty('--hover-bg-color', this.navigatorService.hoverBackgroundColor);
|
|
163
163
|
this.me.nativeElement.style.setProperty('--hover-color', this.navigatorService.hoverColor);
|
|
164
|
+
this.me.nativeElement.style.setProperty('--icon-border-radius', this.navigatorService.iconBorderRadius + 'px');
|
|
165
|
+
this.me.nativeElement.style.setProperty('--icon-gutter-y', this.navigatorService.iconGutterY + 'px');
|
|
164
166
|
});
|
|
165
167
|
}
|
|
166
168
|
ngOnDestroy() {
|
|
167
169
|
this.subscriptions.map(x => x.unsubscribe());
|
|
168
170
|
}
|
|
169
171
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: ItemComponent, deps: [{ token: i1.Router }, { token: i2.NavigatorService }, { token: i3.MultiLanguageService }, { token: i4.LayoutService }, { token: i5.MenuService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
170
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.2.3", type: ItemComponent, isStandalone: true, selector: "app-item", inputs: { item: "item", level: "level" }, viewQueries: [{ propertyName: "me", first: true, predicate: ["me"], descendants: true }, { propertyName: "children", first: true, predicate: ["children"], descendants: true }, { propertyName: "link", first: true, predicate: ["link"], descendants: true }, { propertyName: "subArrow", first: true, predicate: ["subArrow"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<li #me [id]=\"'main-menu-' + item.id\" class=\"parent\" [attr.data-level]=\"level\" [class.reduced]=\"leftbarReduced\"\r\n [class.active]=\"!wideMode && active\" [class.expanded]=\"item.tree$Expanded\"\r\n [class.highlighted]=\"item.tree$Highlighted\" [class.li-thin-mode]=\"!wideMode\" [class.menu-item]=\"!wideMode\"\r\n [appTooltip]=\"level===1 && !active ? caption : undefined\" [position]=\"'right'\">\r\n <div class=\"menu-item-wrapper\" [attr.data-level]=\"level\" (click)=\"onClick($event, item)\"\r\n [class.module-thin-mode]=\"!wideMode && level===1\" [class.thin-branch]=\"!wideMode && level > 1\">\r\n\r\n @if (wideMode) {\r\n @if (!!!leftbarReduced) {\r\n @if (!!hasChildren) {\r\n @if (!item.tree$Selected) {\r\n <i [attr.data-level]=\"level\" class=\"custom-icon-parent-right\"></i>\r\n } @else {\r\n <i [attr.data-level]=\"level\" class=\"custom-icon-parent-down\"></i>\r\n }\r\n } @else {\r\n @if (item.tree$Selected && item.code !== 'MENU.DASHBOARD' && item.code !== 'MENU.HOME') {\r\n <i [attr.data-level]=\"level\" class=\"custom-icon-child-right\"></i>\r\n }\r\n }\r\n }\r\n }\r\n\r\n @if (!!item.iconSvg) {\r\n <i [attr.data-level]=\"level\" class=\"'module-icon'\"\r\n [appTooltip]=\"wideMode ? caption : undefined\" (click)=\"onModuleIconClick($event, item);false\" [ngStyle]=\"{\r\n position: 'absolute',\r\n left: wideMode ? '20px' : 'unset'\r\n }\"><span [innerHtml]=\"item.iconSvg | stringHtml\"></span></i>\r\n\r\n <!-- <span [innerHtml]=\"item.iconSvg | stringHtml\"></span> -->\r\n } @else if (!!item.iconClass) {\r\n <i [attr.data-level]=\"level\" [class]=\"item.iconClass + ' module-icon'\"\r\n [appTooltip]=\"wideMode ? caption : undefined\" (click)=\"onModuleIconClick($event, item);false\" [ngStyle]=\"{\r\n left: wideMode ? '20px' : 'unset'\r\n }\"></i>\r\n }\r\n\r\n @if (!wideMode || (!leftbarReduced && hasChildren)) {\r\n <a #link [attr.data-level]=\"level\" class=\"has-submenu\" [appTooltip]=\"level > 1 ? caption : undefined\"\r\n [class.thin-mode]=\"!wideMode\">\r\n <ng-container (click)=\"subArrowClicked($event, item);false\"> <!--false is important here-->\r\n <span #subArrow *ngIf=\"(!!item.pictureBase64 || !!item.pictureUri)\"\r\n [class]=\"'img-span plus level' + level\">\r\n <img [src]=\"item.pictureBase64 || item.pictureUri\" *ngIf=\"!!item.pictureBase64\">\r\n </span>\r\n <span #subArrow *ngIf=\"!!!item.pictureBase64 && !!!item.pictureUri\"\r\n [class]=\"'plus level' + level\"></span>\r\n </ng-container>\r\n\r\n <img *ngIf=\"(!!item.pictureBase64 || !!item.pictureUri)\" [src]=\"item.pictureBase64 || item.pictureUri\">\r\n\r\n {{ caption }}\r\n\r\n </a>\r\n } @else {\r\n <a [attr.data-level]=\"level\" [routerLink]=\"item.url\" (click)=\"onClick($event, item)\"\r\n [class.thin-mode]=\"!wideMode\" [appTooltip]=\"wideMode && caption\">\r\n {{ caption }}\r\n </a>\r\n }\r\n\r\n </div>\r\n\r\n @if (!!wideMode && !!hasChildren && !!item.tree$Children!.length && !!!leftbarReduced) {\r\n <ul #children [class.expanded]=\"!wideMode || item.tree$Expanded\" [class.ul-thin-mode]=\"!wideMode\" [ngStyle]=\"{\r\n padding: 0,\r\n width: !!wideMode ? (layoutService.leftBarCurrentWidth$.value - layoutService.basicSpacing - layoutService.scrollBarWidth + 5 + 'px') : ( layoutService.leftBarWideWidth$.value + 'px' ),\r\n }\" [class.submenu]=\"!wideMode\">\r\n <div>\r\n @for (child of item.tree$Children; track $index) {\r\n <app-item [item]=\"child\" [level]=\"level+1\" (clicked)=\"onClick($event, child)\"></app-item>\r\n }\r\n </div>\r\n </ul>\r\n }\r\n\r\n</li>", styles: [".navigator-container{--active-item-border-color: white;--line-height: 16px;--level-gap: 10px;--thin-mode-padding: 8px;--thin-mode-width: 66px;--wide-mode-width: 280px;--left-bar-current-width: 280px;--bg-color: #F1F1F1;--color: black;--hover-bg-color: #E1E3E5;--hover-color: black}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.navigator-container .d-none{display:none}.navigator-container svg{width:24px;height:24px}.navigator-container .module-thin-mode{display:flex!important;align-items:center!important;justify-content:center!important;padding:0!important;margin-bottom:5px!important;height:50px!important}.navigator-container .module-thin-mode svg{color:var(--color)}.navigator-container .module-thin-mode i{color:var(--color)!important}.navigator-container .li-thin-mode[data-level=\"1\"]{height:50px!important;margin:0!important}.navigator-container .li-thin-mode .thin-branch a{padding-left:15px;padding-right:15px;overflow:hidden;max-width:100%;text-overflow:ellipsis}.navigator-container .li-thin-mode .thin-branch:hover{background:#e1e3e5!important;border-radius:5px!important}.navigator-container .li-thin-mode:hover[data-level=\"1\"]>ul.ul-thin-mode{transform:translate(calc(var(--thin-mode-width)))}.navigator-container .li-thin-mode:hover:not([data-level=\"1\"])>ul.ul-thin-mode{transform:translate(calc(var(--wide-mode-width) - var(--size-layout-block-cell-spacing)))}.navigator-container .li-thin-mode.active .module-thin-mode{background:var(--hover-bg-color)!important;border-radius:5px!important;width:50px!important;transform:translate(var(--thin-mode-padding))}.navigator-container .li-thin-mode.active .module-thin-mode i{color:var(--hover-color)!important}.navigator-container .li-thin-mode.active .module-thin-mode svg{color:var(--hover-color)!important}.navigator-container .li-thin-mode.active>ul.ul-thin-mode{background-color:#fff;opacity:1;height:unset;overflow-y:auto;box-shadow:.4rem 0 2rem #0000002e}.navigator-container .li-thin-mode.active>ul.ul-thin-mode>div>app-item>li>div>a{display:block!important}.navigator-container .li-thin-mode.active[data-level=\"1\"]>ul.ul-thin-mode{display:block;transform:translate(calc(var(--thin-mode-width)))}.navigator-container .li-thin-mode.active:not([data-level=\"1\"])>ul.ul-thin-mode{display:block;transform:translate(calc(var(--wide-mode-width) - var(--size-layout-block-cell-spacing)))}.navigator-container ul.ul-thin-mode{display:none}.navigator-container .parent{--children-height: 0px;box-sizing:border-box;width:100%;transition:width 1s ease-out}.navigator-container .parent ul{animation:fadeIn .25s linear}.navigator-container .parent i[class^=custom-icon-parent-],.navigator-container .parent i[class^=custom-icon-child-]{position:absolute}.navigator-container .parent i[class^=custom-icon-parent-][data-level=\"1\"],.navigator-container .parent i[class^=custom-icon-child-][data-level=\"1\"]{left:var(--size-left-bar-the-first-icon-left)!important}.navigator-container .parent i[class^=custom-icon-parent-][data-level=\"2\"],.navigator-container .parent i[class^=custom-icon-child-][data-level=\"2\"]{left:46px!important}.navigator-container .parent i[class^=custom-icon-child-][data-level=\"3\"]{left:calc(var(--size-header-logo-left) - 2 * var(--level-gap))!important}.navigator-container .parent i.module-icon{position:absolute;display:inline-block;font-size:var(--size-left-bar-icon-font-size)!important;width:var(--size-left-bar-icon-font-size)!important;height:var(--size-left-bar-icon-font-size)!important}.navigator-container .parent .menu-item-wrapper{position:relative!important;margin-left:0!important;padding-left:0;border:none!important;cursor:pointer}.navigator-container .parent .menu-item-wrapper[data-level=\"1\"].module-thin-mode:hover{background-color:#e1e3e5;width:50px;border-radius:5px;transform:translate(8px);color:#000}.navigator-container .parent .menu-item-wrapper:not([data-level=\"1\"]).module-thin-mode:hover{background-color:#e1e3e5;color:#000;padding:var(--size-layout-block-cell-spacing)}.navigator-container .parent a.thin-mode{left:0!important;display:none;padding-left:15px;padding-right:15px;overflow:hidden;text-overflow:ellipsis}.navigator-container .parent a{position:absolute!important;margin-left:0!important;padding-left:0;border:none!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;user-select:none;-webkit-user-select:none}.navigator-container .parent a[data-level=\"1\"]:not(.thin-mode){left:var(--size-header-logo-left);max-width:calc(var(--left-bar-current-width) - var(--size-header-logo-left) - var(--size-scrollbar-width) - var(--size-layout-block-cell-spacing) * 2)}.navigator-container .parent a[data-level=\"2\"]:not(.thin-mode){left:calc(var(--size-header-logo-left) + var(--level-gap));max-width:calc(var(--left-bar-current-width) - var(--size-header-logo-left) - var(--size-scrollbar-width) - var(--size-layout-block-cell-spacing) * 2 - var(--level-gap))}.navigator-container .parent a[data-level=\"3\"]:not(.thin-mode){left:calc(var(--size-header-logo-left) - var(--level-gap) + 3px);max-width:calc(var(--left-bar-current-width) - var(--size-header-logo-left) - var(--size-scrollbar-width) - var(--size-layout-block-cell-spacing) * 2 - var(--level-gap) * 2)}.navigator-container .parent[data-level=\"1\"]{margin:10px 0}.navigator-container .parent[data-level=\"1\"] a{margin-left:0;font-size:13px}.navigator-container .parent[data-level=\"2\"]:not(.ul-thin-mode) a{margin-left:10px;font-size:13px}.navigator-container .parent[data-level=\"3\"]:not(.ul-thin-mode) a{margin-left:20px;font-size:13px}.navigator-container .parent[data-level=\"2\"]>.menu-item-wrapper{margin-left:20px}.navigator-container .parent .menu-item-wrapper{height:35px;padding-left:0!important;display:flex;align-items:center;margin:0}.navigator-container .parent .menu-item-wrapper>i{display:inline-block;font-size:13px;color:#a9a9a9;cursor:pointer}.navigator-container .parent .menu-item-wrapper>i{color:#000}.navigator-container .parent li:not(.li-thin-mode):hover>.menu-item-wrapper:before{content:\"\";display:inline-block;position:absolute;left:0;height:33px;width:calc(var(--size-left-bar-full-width) - 20px);background-color:#eaf1fb;border-top-right-radius:50px;border-bottom-right-radius:50px}.navigator-container .parent>ul:not(.ul-thin-mode){position:relative;overflow:hidden;display:none;opacity:0;transition:opacity .5s ease-out}.navigator-container .parent>ul.ul-thin-mode{overflow-x:hidden;display:none;margin-left:0!important;opacity:1;transition:opacity .5s ease-out}.navigator-container .parent>ul.ul-thin-mode{overflow-y:auto}.navigator-container .parent.active[data-level=\"2\"]>.menu-item-wrapper>a{transition:.5s ease-out}.navigator-container .parent.highlighted>.menu-item-wrapper>a{color:var(--color-core-org-tree-highlighted)!important;font-weight:700!important}.navigator-container .parent.expanded>ul:not(.submenu){display:block;opacity:1;transition:opacity .5s ease-out}.navigator-container .parent.expanded[data-level=\"2\"]>ul{margin-left:25px}.navigator-container .parent:not(.li-thin-mode) a{margin-left:0}.navigator-container .parent.reduced .menu-item-wrapper{padding:0}.navigator-container .expanded[data-level=\"1\"]:not(.li-thin-mode)>.menu-item-wrapper{background-color:#fff;border-top-right-radius:50px;border-bottom-right-radius:50px;margin-right:2px;display:flex;justify-content:flex-start}.navigator-container .expanded[data-level=\"1\"]:not(.li-thin-mode)>.menu-item-wrapper:hover{background-color:#fff}.navigator-container .expanded>ul:not(.submenu){overflow:visible!important}.navigator-container .expanded.reduced>.menu-item-wrapper{justify-content:flex-start!important;border-top-left-radius:50px;border-bottom-left-radius:50px;width:37px}.navigator-container .parent.reduced>.menu-item-wrapper{justify-content:flex-start!important;border-radius:20px;width:37px}.navigator-container .custom-icon-parent-down{background-image:url('data:image/svg+xml,<svg width=\"8\" height=\"4\" viewBox=\"0 0 8 4\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M4 3.88867L0.535899 0.555338L7.4641 0.555339L4 3.88867Z\" fill=\"%23000000\"/></svg>');display:flex;align-items:center;justify-content:center;width:8px;height:5px;background-size:contain;background-repeat:no-repeat}.navigator-container .custom-icon-parent-right{background-image:url('data:image/svg+xml,<svg width=\"5\" height=\"5\" viewBox=\"0 0 4 8\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M4 4L0.666667 7.4641L0.666667 0.535898L4 4Z\" fill=\"%23000000\"/></svg>');display:block;position:absolute;width:8px;height:8px;align-items:center;justify-content:center;background-size:contain;background-repeat:no-repeat;float:left}.navigator-container .custom-icon-child-right{position:absolute;background-image:url('data:image/svg+xml,<svg width=\"9\" height=\"12\" viewBox=\"0 0 9 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M8.08811 5.23421C8.56399 5.63384 8.56399 6.36616 8.08811 6.76579L2.3931 11.5484C1.74247 12.0947 0.75 11.6322 0.75 10.7826L0.750001 1.21742C0.750001 0.367809 1.74247 -0.0947444 2.39309 0.451638L8.08811 5.23421Z\" fill=\"%23F37540\"/></svg>');display:flex;width:8px;height:8px;align-items:center;justify-content:center;background-size:contain;background-repeat:no-repeat}.navigator-container .custom-organization-icon{background-image:url('data:image/svg+xml,<svg width=\"20\" height=\"19\" viewBox=\"0 0 20 19\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M4.98901 9.6555H15.0112V11.5377H15.989V8.67772H10.489V6.72217H9.51123V8.67772H4.01123V11.5377H4.98901V9.6555Z\" fill=\"%23000000\"/><path d=\"M7.5555 12.2222H1.44439C1.12024 12.2222 0.80936 12.3509 0.580149 12.5801C0.350937 12.8094 0.222168 13.1202 0.222168 13.4444V17.1111C0.222168 17.4352 0.350937 17.7461 0.580149 17.9753C0.80936 18.2045 1.12024 18.3333 1.44439 18.3333H7.5555C7.87966 18.3333 8.19053 18.2045 8.41974 17.9753C8.64895 17.7461 8.77772 17.4352 8.77772 17.1111V13.4444C8.77772 13.1202 8.64895 12.8094 8.41974 12.5801C8.19053 12.3509 7.87966 12.2222 7.5555 12.2222ZM1.44439 17.1111V13.4444H7.5555V17.1111H1.44439Z\" fill=\"%23000000\"/><path d=\"M18.5555 12.2222H12.4444C12.1202 12.2222 11.8094 12.3509 11.5801 12.5801C11.3509 12.8094 11.2222 13.1202 11.2222 13.4444V17.1111C11.2222 17.4352 11.3509 17.7461 11.5801 17.9753C11.8094 18.2045 12.1202 18.3333 12.4444 18.3333H18.5555C18.8797 18.3333 19.1905 18.2045 19.4197 17.9753C19.649 17.7461 19.7777 17.4352 19.7777 17.1111V13.4444C19.7777 13.1202 19.649 12.8094 19.4197 12.5801C19.1905 12.3509 18.8797 12.2222 18.5555 12.2222ZM12.4444 17.1111V13.4444H18.5555V17.1111H12.4444Z\" fill=\"%23000000\"/><path d=\"M6.94439 6.11111H13.0555C13.3797 6.11111 13.6905 5.98234 13.9197 5.75313C14.149 5.52392 14.2777 5.21304 14.2777 4.88889V1.22222C14.2777 0.898069 14.149 0.587192 13.9197 0.35798C13.6905 0.128769 13.3797 0 13.0555 0H6.94439C6.62024 0 6.30936 0.128769 6.08015 0.35798C5.85094 0.587192 5.72217 0.898069 5.72217 1.22222V4.88889C5.72217 5.21304 5.85094 5.52392 6.08015 5.75313C6.30936 5.98234 6.62024 6.11111 6.94439 6.11111ZM6.94439 1.22222H13.0555V4.88889H6.94439V1.22222Z\" fill=\"%23000000\"/></svg>');display:flex;align-items:center;justify-content:center;width:15px;height:15px;background-size:contain;background-repeat:no-repeat}.navigator-container .custom-profile-icon{background-image:url('data:image/svg+xml,<svg width=\"18\" height=\"18\" viewBox=\"0 0 18 18\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><rect x=\"0.75\" y=\"0.75\" width=\"16.5\" height=\"16.5\" rx=\"4.25\" stroke=\"%23000000\" stroke-width=\"1.5\"/><path d=\"M14.5164 16.5755V15.2137C14.5164 14.4914 14.2258 13.7987 13.7086 13.2879C13.1913 12.7772 12.4898 12.4902 11.7583 12.4902H6.2422C5.51071 12.4902 4.80919 12.7772 4.29195 13.2879C3.77471 13.7987 3.48413 14.4914 3.48413 15.2137V16.5755\" stroke=\"%23000000\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/><path d=\"M9.00011 9.57227C10.4432 9.57227 11.613 8.39647 11.613 6.94605C11.613 5.49562 10.4432 4.31982 9.00011 4.31982C7.55704 4.31982 6.38721 5.49562 6.38721 6.94605C6.38721 8.39647 7.55704 9.57227 9.00011 9.57227Z\" stroke=\"%23000000\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/></svg>');display:flex;align-items:center;justify-content:center;width:15px;height:15px;background-size:contain;background-repeat:no-repeat}.navigator-container .custom-insurence-icon{background-image:url('data:image/svg+xml,<svg width=\"20\" height=\"18\" viewBox=\"0 0 20 18\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M2.8 1H17.2C17.6774 1 18.1352 1.1873 18.4728 1.5207C18.8104 1.8541 19 2.30628 19 2.77778V8.11111C19 10.4686 18.0518 12.7295 16.364 14.3965C14.6761 16.0635 12.3869 17 10 17C8.8181 17 7.64778 16.7701 6.55585 16.3234C5.46392 15.8767 4.47177 15.2219 3.63604 14.3965C1.94821 12.7295 1 10.4686 1 8.11111V2.77778C1 2.30628 1.18964 1.8541 1.52721 1.5207C1.86477 1.1873 2.32261 1 2.8 1V1Z\" stroke=\"%23000000\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/><path d=\"M7 8.5L9.5 11.5L15 6\" stroke=\"%23000000\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/></svg>');display:flex;align-items:center;justify-content:center;width:15px;height:15px;background-size:contain;background-repeat:no-repeat}.navigator-container .custom-education-icon{background-image:url('data:image/svg+xml,<svg width=\"21\" height=\"19\" viewBox=\"0 0 21 19\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M1 1H6.66667C7.6686 1 8.62949 1.39801 9.33796 2.10649C10.0464 2.81496 10.4444 3.77585 10.4444 4.77778V18C10.4444 17.2486 10.1459 16.5279 9.61458 15.9965C9.08323 15.4652 8.36256 15.1667 7.61111 15.1667H1V1Z\" stroke=\"%23000000\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/><path d=\"M19.8889 1H14.2222C13.2203 1 12.2594 1.39801 11.5509 2.10649C10.8425 2.81496 10.4445 3.77585 10.4445 4.77778V18C10.4445 17.2486 10.743 16.5279 11.2743 15.9965C11.8057 15.4652 12.5263 15.1667 13.2778 15.1667H19.8889V1Z\" stroke=\"%23000000\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/></svg>');display:flex;align-items:center;justify-content:center;width:15px;height:15px;background-size:contain;background-repeat:no-repeat}.navigator-container .parent.expanded.reduced>.menu-item-wrapper{background-color:#fff;left:10px!important}.navigator-container .parent.expanded.reduced>.menu-item-wrapper>i{left:9px!important;top:8px!important}.navigator-container .parent.reduced>.menu-item-wrapper{left:10px!important}.navigator-container .parent.reduced>.menu-item-wrapper>i{left:9px!important}\n"], dependencies: [{ kind: "component", type: ItemComponent, selector: "app-item", inputs: ["item", "level"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i6.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: RouterModule }, { kind: "directive", type: i1.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: TooltipDirective, selector: "[appTooltip]", inputs: ["appTooltip", "showAnyway", "position"] }, { kind: "pipe", type: StringHtmlPipe, name: "stringHtml" }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
172
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.2.3", type: ItemComponent, isStandalone: true, selector: "app-item", inputs: { item: "item", level: "level" }, viewQueries: [{ propertyName: "me", first: true, predicate: ["me"], descendants: true }, { propertyName: "children", first: true, predicate: ["children"], descendants: true }, { propertyName: "link", first: true, predicate: ["link"], descendants: true }, { propertyName: "subArrow", first: true, predicate: ["subArrow"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<li #me [id]=\"'main-menu-' + item.id\" class=\"parent\" [attr.data-level]=\"level\" [class.reduced]=\"leftbarReduced\"\r\n [class.active]=\"!wideMode && active\" [class.expanded]=\"item.tree$Expanded\"\r\n [class.highlighted]=\"item.tree$Highlighted\" [class.li-thin-mode]=\"!wideMode\" [class.menu-item]=\"!wideMode\"\r\n [appTooltip]=\"level===1 && !active ? caption : undefined\" [position]=\"'right'\" [ngStyle]=\"{\r\n marginTop: (level===1 && !wideMode) ? navigatorService.iconGutterY + 'px' : '',\r\n marginBottom: (level===1 && !wideMode) ? navigatorService.iconGutterY + 'px' : ''\r\n }\">\r\n <div class=\"menu-item-wrapper\" [attr.data-level]=\"level\" (click)=\"onClick($event, item)\"\r\n [class.module-thin-mode]=\"!wideMode && level===1\" [class.thin-branch]=\"!wideMode && level > 1\" [ngStyle]=\"{\r\n borderRadius: (level===1 && !wideMode) ? navigatorService.iconBorderRadius + 'px' : ''\r\n }\">\r\n\r\n @if (wideMode) {\r\n @if (!!!leftbarReduced) {\r\n @if (!!hasChildren) {\r\n @if (!item.tree$Selected) {\r\n <i [attr.data-level]=\"level\" class=\"custom-icon-parent-right\"></i>\r\n } @else {\r\n <i [attr.data-level]=\"level\" class=\"custom-icon-parent-down\"></i>\r\n }\r\n } @else {\r\n @if (item.tree$Selected && item.code !== 'MENU.DASHBOARD' && item.code !== 'MENU.HOME') {\r\n <i [attr.data-level]=\"level\" class=\"custom-icon-child-right\"></i>\r\n }\r\n }\r\n }\r\n }\r\n\r\n @if (!!item.iconSvg) {\r\n <i [attr.data-level]=\"level\" class=\"'module-icon'\"\r\n [appTooltip]=\"wideMode ? caption : undefined\" (click)=\"onModuleIconClick($event, item);false\" [ngStyle]=\"{\r\n position: 'absolute',\r\n left: wideMode ? '20px' : 'unset'\r\n }\"><span [innerHtml]=\"item.iconSvg | stringHtml\"></span></i>\r\n\r\n <!-- <span [innerHtml]=\"item.iconSvg | stringHtml\"></span> -->\r\n } @else if (!!item.iconClass) {\r\n <i [attr.data-level]=\"level\" [class]=\"item.iconClass + ' module-icon'\"\r\n [appTooltip]=\"wideMode ? caption : undefined\" (click)=\"onModuleIconClick($event, item);false\" [ngStyle]=\"{\r\n left: wideMode ? '20px' : 'unset'\r\n }\"></i>\r\n }\r\n\r\n @if (!wideMode || (!leftbarReduced && hasChildren)) {\r\n <a #link [attr.data-level]=\"level\" class=\"has-submenu\" [appTooltip]=\"level > 1 ? caption : undefined\"\r\n [class.thin-mode]=\"!wideMode\">\r\n <ng-container (click)=\"subArrowClicked($event, item);false\"> <!--false is important here-->\r\n <span #subArrow *ngIf=\"(!!item.pictureBase64 || !!item.pictureUri)\"\r\n [class]=\"'img-span plus level' + level\">\r\n <img [src]=\"item.pictureBase64 || item.pictureUri\" *ngIf=\"!!item.pictureBase64\">\r\n </span>\r\n <span #subArrow *ngIf=\"!!!item.pictureBase64 && !!!item.pictureUri\"\r\n [class]=\"'plus level' + level\"></span>\r\n </ng-container>\r\n\r\n <img *ngIf=\"(!!item.pictureBase64 || !!item.pictureUri)\" [src]=\"item.pictureBase64 || item.pictureUri\">\r\n\r\n {{ caption }}\r\n\r\n </a>\r\n } @else {\r\n <a [attr.data-level]=\"level\" [routerLink]=\"item.url\" (click)=\"onClick($event, item)\"\r\n [class.thin-mode]=\"!wideMode\" [appTooltip]=\"wideMode && caption\">\r\n {{ caption }}\r\n </a>\r\n }\r\n\r\n </div>\r\n\r\n @if (!!wideMode && !!hasChildren && !!item.tree$Children!.length && !!!leftbarReduced) {\r\n <ul #children [class.expanded]=\"!wideMode || item.tree$Expanded\" [class.ul-thin-mode]=\"!wideMode\" [ngStyle]=\"{\r\n padding: 0,\r\n width: !!wideMode ? (layoutService.leftBarCurrentWidth$.value - layoutService.basicSpacing - layoutService.scrollBarWidth + 5 + 'px') : ( layoutService.leftBarWideWidth$.value + 'px' ),\r\n }\" [class.submenu]=\"!wideMode\">\r\n <div>\r\n @for (child of item.tree$Children; track $index) {\r\n <app-item [item]=\"child\" [level]=\"level+1\" (clicked)=\"onClick($event, child)\"></app-item>\r\n }\r\n </div>\r\n </ul>\r\n }\r\n\r\n</li>", styles: [".navigator-container{--active-item-border-color: white;--line-height: 16px;--level-gap: 10px;--thin-mode-padding: 8px;--thin-mode-width: 66px;--wide-mode-width: 280px;--left-bar-current-width: 280px;--bg-color: #F1F1F1;--color: black;--hover-bg-color: #E1E3E5;--hover-color: black;--icon-border-radius: 8px;--icon-gutter-y: 8px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.navigator-container .d-none{display:none}.navigator-container svg{width:24px;height:24px}.navigator-container .module-thin-mode{display:flex!important;align-items:center!important;justify-content:center!important;padding:0!important;margin-bottom:5px!important;height:50px!important}.navigator-container .module-thin-mode svg{color:var(--color)}.navigator-container .module-thin-mode i{color:var(--color)!important}.navigator-container .li-thin-mode[data-level=\"1\"]{height:50px!important;margin-left:0!important;margin-right:0!important}.navigator-container .li-thin-mode .thin-branch a{padding-left:15px;padding-right:15px;overflow:hidden;max-width:100%;text-overflow:ellipsis}.navigator-container .li-thin-mode .thin-branch:hover{background:#e1e3e5!important;border-radius:5px!important}.navigator-container .li-thin-mode:hover[data-level=\"1\"]>ul.ul-thin-mode{transform:translate(calc(var(--thin-mode-width)))}.navigator-container .li-thin-mode:hover:not([data-level=\"1\"])>ul.ul-thin-mode{transform:translate(calc(var(--wide-mode-width) - var(--size-layout-block-cell-spacing)))}.navigator-container .li-thin-mode.active .module-thin-mode{background:var(--hover-bg-color)!important;border-radius:var(--icon-border-radius)!important;width:50px!important;transform:translate(var(--thin-mode-padding))}.navigator-container .li-thin-mode.active .module-thin-mode i{color:var(--hover-color)!important}.navigator-container .li-thin-mode.active .module-thin-mode svg{color:var(--hover-color)!important}.navigator-container .li-thin-mode.active>ul.ul-thin-mode{background-color:#fff;opacity:1;height:unset;overflow-y:auto;box-shadow:.4rem 0 2rem #0000002e}.navigator-container .li-thin-mode.active>ul.ul-thin-mode>div>app-item>li>div>a{display:block!important}.navigator-container .li-thin-mode.active[data-level=\"1\"]>ul.ul-thin-mode{display:block;transform:translate(calc(var(--thin-mode-width)))}.navigator-container .li-thin-mode.active:not([data-level=\"1\"])>ul.ul-thin-mode{display:block;transform:translate(calc(var(--wide-mode-width) - var(--size-layout-block-cell-spacing)))}.navigator-container ul.ul-thin-mode{display:none}.navigator-container .parent{--children-height: 0px;box-sizing:border-box;width:100%;transition:width 1s ease-out}.navigator-container .parent ul{animation:fadeIn .25s linear}.navigator-container .parent i[class^=custom-icon-parent-],.navigator-container .parent i[class^=custom-icon-child-]{position:absolute}.navigator-container .parent i[class^=custom-icon-parent-][data-level=\"1\"],.navigator-container .parent i[class^=custom-icon-child-][data-level=\"1\"]{left:var(--size-left-bar-the-first-icon-left)!important}.navigator-container .parent i[class^=custom-icon-parent-][data-level=\"2\"],.navigator-container .parent i[class^=custom-icon-child-][data-level=\"2\"]{left:46px!important}.navigator-container .parent i[class^=custom-icon-child-][data-level=\"3\"]{left:calc(var(--size-header-logo-left) - 2 * var(--level-gap))!important}.navigator-container .parent i.module-icon{position:absolute;display:inline-block;font-size:var(--size-left-bar-icon-font-size)!important;width:var(--size-left-bar-icon-font-size)!important;height:var(--size-left-bar-icon-font-size)!important}.navigator-container .parent .menu-item-wrapper{position:relative!important;margin-left:0!important;padding-left:0;border:none!important;cursor:pointer}.navigator-container .parent .menu-item-wrapper[data-level=\"1\"].module-thin-mode:hover{background-color:var(--hover-bg-color);width:50px;border-radius:5px;transform:translate(8px);color:var(--hover-color)!important}.navigator-container .parent .menu-item-wrapper:not([data-level=\"1\"]).module-thin-mode:hover{background-color:#e1e3e5;color:#000;padding:var(--size-layout-block-cell-spacing)}.navigator-container .parent a.thin-mode{left:0!important;display:none;padding-left:15px;padding-right:15px;overflow:hidden;text-overflow:ellipsis}.navigator-container .parent a{position:absolute!important;margin-left:0!important;padding-left:0;border:none!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;user-select:none;-webkit-user-select:none}.navigator-container .parent a[data-level=\"1\"]:not(.thin-mode){left:var(--size-header-logo-left);max-width:calc(var(--left-bar-current-width) - var(--size-header-logo-left) - var(--size-scrollbar-width) - var(--size-layout-block-cell-spacing) * 2)}.navigator-container .parent a[data-level=\"2\"]:not(.thin-mode){left:calc(var(--size-header-logo-left) + var(--level-gap));max-width:calc(var(--left-bar-current-width) - var(--size-header-logo-left) - var(--size-scrollbar-width) - var(--size-layout-block-cell-spacing) * 2 - var(--level-gap))}.navigator-container .parent a[data-level=\"3\"]:not(.thin-mode){left:calc(var(--size-header-logo-left) - var(--level-gap) + 3px);max-width:calc(var(--left-bar-current-width) - var(--size-header-logo-left) - var(--size-scrollbar-width) - var(--size-layout-block-cell-spacing) * 2 - var(--level-gap) * 2)}.navigator-container .parent[data-level=\"1\"]{margin:10px 0}.navigator-container .parent[data-level=\"1\"] a{margin-left:0;font-size:13px}.navigator-container .parent[data-level=\"2\"]:not(.ul-thin-mode) a{margin-left:10px;font-size:13px}.navigator-container .parent[data-level=\"3\"]:not(.ul-thin-mode) a{margin-left:20px;font-size:13px}.navigator-container .parent[data-level=\"2\"]>.menu-item-wrapper{margin-left:20px}.navigator-container .parent .menu-item-wrapper{height:35px;padding-left:0!important;display:flex;align-items:center;margin:0}.navigator-container .parent .menu-item-wrapper>i{display:inline-block;font-size:13px;color:#a9a9a9;cursor:pointer}.navigator-container .parent .menu-item-wrapper>i{color:#000}.navigator-container .parent li:not(.li-thin-mode):hover>.menu-item-wrapper:before{content:\"\";display:inline-block;position:absolute;left:0;height:33px;width:calc(var(--size-left-bar-full-width) - 20px);background-color:#eaf1fb;border-top-right-radius:50px;border-bottom-right-radius:50px}.navigator-container .parent>ul:not(.ul-thin-mode){position:relative;overflow:hidden;display:none;opacity:0;transition:opacity .5s ease-out}.navigator-container .parent>ul.ul-thin-mode{overflow-x:hidden;display:none;margin-left:0!important;opacity:1;transition:opacity .5s ease-out}.navigator-container .parent>ul.ul-thin-mode{overflow-y:auto}.navigator-container .parent.active[data-level=\"2\"]>.menu-item-wrapper>a{transition:.5s ease-out}.navigator-container .parent.highlighted>.menu-item-wrapper>a{color:var(--color-core-org-tree-highlighted)!important;font-weight:700!important}.navigator-container .parent.expanded>ul:not(.submenu){display:block;opacity:1;transition:opacity .5s ease-out}.navigator-container .parent.expanded[data-level=\"2\"]>ul{margin-left:25px}.navigator-container .parent:not(.li-thin-mode) a{margin-left:0}.navigator-container .parent.reduced .menu-item-wrapper{padding:0}.navigator-container .expanded[data-level=\"1\"]:not(.li-thin-mode)>.menu-item-wrapper{background-color:#fff;border-top-right-radius:50px;border-bottom-right-radius:50px;margin-right:2px;display:flex;justify-content:flex-start}.navigator-container .expanded[data-level=\"1\"]:not(.li-thin-mode)>.menu-item-wrapper:hover{background-color:#fff}.navigator-container .expanded>ul:not(.submenu){overflow:visible!important}.navigator-container .expanded.reduced>.menu-item-wrapper{justify-content:flex-start!important;border-top-left-radius:50px;border-bottom-left-radius:50px;width:37px}.navigator-container .parent.reduced>.menu-item-wrapper{justify-content:flex-start!important;border-radius:20px;width:37px}.navigator-container .custom-icon-parent-down{background-image:url('data:image/svg+xml,<svg width=\"8\" height=\"4\" viewBox=\"0 0 8 4\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M4 3.88867L0.535899 0.555338L7.4641 0.555339L4 3.88867Z\" fill=\"%23000000\"/></svg>');display:flex;align-items:center;justify-content:center;width:8px;height:5px;background-size:contain;background-repeat:no-repeat}.navigator-container .custom-icon-parent-right{background-image:url('data:image/svg+xml,<svg width=\"5\" height=\"5\" viewBox=\"0 0 4 8\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M4 4L0.666667 7.4641L0.666667 0.535898L4 4Z\" fill=\"%23000000\"/></svg>');display:block;position:absolute;width:8px;height:8px;align-items:center;justify-content:center;background-size:contain;background-repeat:no-repeat;float:left}.navigator-container .custom-icon-child-right{position:absolute;background-image:url('data:image/svg+xml,<svg width=\"9\" height=\"12\" viewBox=\"0 0 9 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M8.08811 5.23421C8.56399 5.63384 8.56399 6.36616 8.08811 6.76579L2.3931 11.5484C1.74247 12.0947 0.75 11.6322 0.75 10.7826L0.750001 1.21742C0.750001 0.367809 1.74247 -0.0947444 2.39309 0.451638L8.08811 5.23421Z\" fill=\"%23F37540\"/></svg>');display:flex;width:8px;height:8px;align-items:center;justify-content:center;background-size:contain;background-repeat:no-repeat}.navigator-container .custom-organization-icon{background-image:url('data:image/svg+xml,<svg width=\"20\" height=\"19\" viewBox=\"0 0 20 19\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M4.98901 9.6555H15.0112V11.5377H15.989V8.67772H10.489V6.72217H9.51123V8.67772H4.01123V11.5377H4.98901V9.6555Z\" fill=\"%23000000\"/><path d=\"M7.5555 12.2222H1.44439C1.12024 12.2222 0.80936 12.3509 0.580149 12.5801C0.350937 12.8094 0.222168 13.1202 0.222168 13.4444V17.1111C0.222168 17.4352 0.350937 17.7461 0.580149 17.9753C0.80936 18.2045 1.12024 18.3333 1.44439 18.3333H7.5555C7.87966 18.3333 8.19053 18.2045 8.41974 17.9753C8.64895 17.7461 8.77772 17.4352 8.77772 17.1111V13.4444C8.77772 13.1202 8.64895 12.8094 8.41974 12.5801C8.19053 12.3509 7.87966 12.2222 7.5555 12.2222ZM1.44439 17.1111V13.4444H7.5555V17.1111H1.44439Z\" fill=\"%23000000\"/><path d=\"M18.5555 12.2222H12.4444C12.1202 12.2222 11.8094 12.3509 11.5801 12.5801C11.3509 12.8094 11.2222 13.1202 11.2222 13.4444V17.1111C11.2222 17.4352 11.3509 17.7461 11.5801 17.9753C11.8094 18.2045 12.1202 18.3333 12.4444 18.3333H18.5555C18.8797 18.3333 19.1905 18.2045 19.4197 17.9753C19.649 17.7461 19.7777 17.4352 19.7777 17.1111V13.4444C19.7777 13.1202 19.649 12.8094 19.4197 12.5801C19.1905 12.3509 18.8797 12.2222 18.5555 12.2222ZM12.4444 17.1111V13.4444H18.5555V17.1111H12.4444Z\" fill=\"%23000000\"/><path d=\"M6.94439 6.11111H13.0555C13.3797 6.11111 13.6905 5.98234 13.9197 5.75313C14.149 5.52392 14.2777 5.21304 14.2777 4.88889V1.22222C14.2777 0.898069 14.149 0.587192 13.9197 0.35798C13.6905 0.128769 13.3797 0 13.0555 0H6.94439C6.62024 0 6.30936 0.128769 6.08015 0.35798C5.85094 0.587192 5.72217 0.898069 5.72217 1.22222V4.88889C5.72217 5.21304 5.85094 5.52392 6.08015 5.75313C6.30936 5.98234 6.62024 6.11111 6.94439 6.11111ZM6.94439 1.22222H13.0555V4.88889H6.94439V1.22222Z\" fill=\"%23000000\"/></svg>');display:flex;align-items:center;justify-content:center;width:15px;height:15px;background-size:contain;background-repeat:no-repeat}.navigator-container .custom-profile-icon{background-image:url('data:image/svg+xml,<svg width=\"18\" height=\"18\" viewBox=\"0 0 18 18\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><rect x=\"0.75\" y=\"0.75\" width=\"16.5\" height=\"16.5\" rx=\"4.25\" stroke=\"%23000000\" stroke-width=\"1.5\"/><path d=\"M14.5164 16.5755V15.2137C14.5164 14.4914 14.2258 13.7987 13.7086 13.2879C13.1913 12.7772 12.4898 12.4902 11.7583 12.4902H6.2422C5.51071 12.4902 4.80919 12.7772 4.29195 13.2879C3.77471 13.7987 3.48413 14.4914 3.48413 15.2137V16.5755\" stroke=\"%23000000\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/><path d=\"M9.00011 9.57227C10.4432 9.57227 11.613 8.39647 11.613 6.94605C11.613 5.49562 10.4432 4.31982 9.00011 4.31982C7.55704 4.31982 6.38721 5.49562 6.38721 6.94605C6.38721 8.39647 7.55704 9.57227 9.00011 9.57227Z\" stroke=\"%23000000\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/></svg>');display:flex;align-items:center;justify-content:center;width:15px;height:15px;background-size:contain;background-repeat:no-repeat}.navigator-container .custom-insurence-icon{background-image:url('data:image/svg+xml,<svg width=\"20\" height=\"18\" viewBox=\"0 0 20 18\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M2.8 1H17.2C17.6774 1 18.1352 1.1873 18.4728 1.5207C18.8104 1.8541 19 2.30628 19 2.77778V8.11111C19 10.4686 18.0518 12.7295 16.364 14.3965C14.6761 16.0635 12.3869 17 10 17C8.8181 17 7.64778 16.7701 6.55585 16.3234C5.46392 15.8767 4.47177 15.2219 3.63604 14.3965C1.94821 12.7295 1 10.4686 1 8.11111V2.77778C1 2.30628 1.18964 1.8541 1.52721 1.5207C1.86477 1.1873 2.32261 1 2.8 1V1Z\" stroke=\"%23000000\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/><path d=\"M7 8.5L9.5 11.5L15 6\" stroke=\"%23000000\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/></svg>');display:flex;align-items:center;justify-content:center;width:15px;height:15px;background-size:contain;background-repeat:no-repeat}.navigator-container .custom-education-icon{background-image:url('data:image/svg+xml,<svg width=\"21\" height=\"19\" viewBox=\"0 0 21 19\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M1 1H6.66667C7.6686 1 8.62949 1.39801 9.33796 2.10649C10.0464 2.81496 10.4444 3.77585 10.4444 4.77778V18C10.4444 17.2486 10.1459 16.5279 9.61458 15.9965C9.08323 15.4652 8.36256 15.1667 7.61111 15.1667H1V1Z\" stroke=\"%23000000\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/><path d=\"M19.8889 1H14.2222C13.2203 1 12.2594 1.39801 11.5509 2.10649C10.8425 2.81496 10.4445 3.77585 10.4445 4.77778V18C10.4445 17.2486 10.743 16.5279 11.2743 15.9965C11.8057 15.4652 12.5263 15.1667 13.2778 15.1667H19.8889V1Z\" stroke=\"%23000000\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/></svg>');display:flex;align-items:center;justify-content:center;width:15px;height:15px;background-size:contain;background-repeat:no-repeat}.navigator-container .parent.expanded.reduced>.menu-item-wrapper{background-color:#fff;left:10px!important}.navigator-container .parent.expanded.reduced>.menu-item-wrapper>i{left:9px!important;top:8px!important}.navigator-container .parent.reduced>.menu-item-wrapper{left:10px!important}.navigator-container .parent.reduced>.menu-item-wrapper>i{left:9px!important}\n"], dependencies: [{ kind: "component", type: ItemComponent, selector: "app-item", inputs: ["item", "level"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i6.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: RouterModule }, { kind: "directive", type: i1.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: TooltipDirective, selector: "[appTooltip]", inputs: ["appTooltip", "showAnyway", "position"] }, { kind: "pipe", type: StringHtmlPipe, name: "stringHtml" }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
171
173
|
}
|
|
172
174
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: ItemComponent, decorators: [{
|
|
173
175
|
type: Component,
|
|
@@ -176,7 +178,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImpor
|
|
|
176
178
|
RouterModule,
|
|
177
179
|
TooltipDirective,
|
|
178
180
|
StringHtmlPipe,
|
|
179
|
-
], encapsulation: ViewEncapsulation.None, template: "<li #me [id]=\"'main-menu-' + item.id\" class=\"parent\" [attr.data-level]=\"level\" [class.reduced]=\"leftbarReduced\"\r\n [class.active]=\"!wideMode && active\" [class.expanded]=\"item.tree$Expanded\"\r\n [class.highlighted]=\"item.tree$Highlighted\" [class.li-thin-mode]=\"!wideMode\" [class.menu-item]=\"!wideMode\"\r\n [appTooltip]=\"level===1 && !active ? caption : undefined\" [position]=\"'right'\">\r\n <div class=\"menu-item-wrapper\" [attr.data-level]=\"level\" (click)=\"onClick($event, item)\"\r\n [class.module-thin-mode]=\"!wideMode && level===1\" [class.thin-branch]=\"!wideMode && level > 1\">\r\n\r\n @if (wideMode) {\r\n @if (!!!leftbarReduced) {\r\n @if (!!hasChildren) {\r\n @if (!item.tree$Selected) {\r\n <i [attr.data-level]=\"level\" class=\"custom-icon-parent-right\"></i>\r\n } @else {\r\n <i [attr.data-level]=\"level\" class=\"custom-icon-parent-down\"></i>\r\n }\r\n } @else {\r\n @if (item.tree$Selected && item.code !== 'MENU.DASHBOARD' && item.code !== 'MENU.HOME') {\r\n <i [attr.data-level]=\"level\" class=\"custom-icon-child-right\"></i>\r\n }\r\n }\r\n }\r\n }\r\n\r\n @if (!!item.iconSvg) {\r\n <i [attr.data-level]=\"level\" class=\"'module-icon'\"\r\n [appTooltip]=\"wideMode ? caption : undefined\" (click)=\"onModuleIconClick($event, item);false\" [ngStyle]=\"{\r\n position: 'absolute',\r\n left: wideMode ? '20px' : 'unset'\r\n }\"><span [innerHtml]=\"item.iconSvg | stringHtml\"></span></i>\r\n\r\n <!-- <span [innerHtml]=\"item.iconSvg | stringHtml\"></span> -->\r\n } @else if (!!item.iconClass) {\r\n <i [attr.data-level]=\"level\" [class]=\"item.iconClass + ' module-icon'\"\r\n [appTooltip]=\"wideMode ? caption : undefined\" (click)=\"onModuleIconClick($event, item);false\" [ngStyle]=\"{\r\n left: wideMode ? '20px' : 'unset'\r\n }\"></i>\r\n }\r\n\r\n @if (!wideMode || (!leftbarReduced && hasChildren)) {\r\n <a #link [attr.data-level]=\"level\" class=\"has-submenu\" [appTooltip]=\"level > 1 ? caption : undefined\"\r\n [class.thin-mode]=\"!wideMode\">\r\n <ng-container (click)=\"subArrowClicked($event, item);false\"> <!--false is important here-->\r\n <span #subArrow *ngIf=\"(!!item.pictureBase64 || !!item.pictureUri)\"\r\n [class]=\"'img-span plus level' + level\">\r\n <img [src]=\"item.pictureBase64 || item.pictureUri\" *ngIf=\"!!item.pictureBase64\">\r\n </span>\r\n <span #subArrow *ngIf=\"!!!item.pictureBase64 && !!!item.pictureUri\"\r\n [class]=\"'plus level' + level\"></span>\r\n </ng-container>\r\n\r\n <img *ngIf=\"(!!item.pictureBase64 || !!item.pictureUri)\" [src]=\"item.pictureBase64 || item.pictureUri\">\r\n\r\n {{ caption }}\r\n\r\n </a>\r\n } @else {\r\n <a [attr.data-level]=\"level\" [routerLink]=\"item.url\" (click)=\"onClick($event, item)\"\r\n [class.thin-mode]=\"!wideMode\" [appTooltip]=\"wideMode && caption\">\r\n {{ caption }}\r\n </a>\r\n }\r\n\r\n </div>\r\n\r\n @if (!!wideMode && !!hasChildren && !!item.tree$Children!.length && !!!leftbarReduced) {\r\n <ul #children [class.expanded]=\"!wideMode || item.tree$Expanded\" [class.ul-thin-mode]=\"!wideMode\" [ngStyle]=\"{\r\n padding: 0,\r\n width: !!wideMode ? (layoutService.leftBarCurrentWidth$.value - layoutService.basicSpacing - layoutService.scrollBarWidth + 5 + 'px') : ( layoutService.leftBarWideWidth$.value + 'px' ),\r\n }\" [class.submenu]=\"!wideMode\">\r\n <div>\r\n @for (child of item.tree$Children; track $index) {\r\n <app-item [item]=\"child\" [level]=\"level+1\" (clicked)=\"onClick($event, child)\"></app-item>\r\n }\r\n </div>\r\n </ul>\r\n }\r\n\r\n</li>", styles: [".navigator-container{--active-item-border-color: white;--line-height: 16px;--level-gap: 10px;--thin-mode-padding: 8px;--thin-mode-width: 66px;--wide-mode-width: 280px;--left-bar-current-width: 280px;--bg-color: #F1F1F1;--color: black;--hover-bg-color: #E1E3E5;--hover-color: black}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.navigator-container .d-none{display:none}.navigator-container svg{width:24px;height:24px}.navigator-container .module-thin-mode{display:flex!important;align-items:center!important;justify-content:center!important;padding:0!important;margin-bottom:5px!important;height:50px!important}.navigator-container .module-thin-mode svg{color:var(--color)}.navigator-container .module-thin-mode i{color:var(--color)!important}.navigator-container .li-thin-mode[data-level=\"1\"]{height:50px!important;margin:0!important}.navigator-container .li-thin-mode .thin-branch a{padding-left:15px;padding-right:15px;overflow:hidden;max-width:100%;text-overflow:ellipsis}.navigator-container .li-thin-mode .thin-branch:hover{background:#e1e3e5!important;border-radius:5px!important}.navigator-container .li-thin-mode:hover[data-level=\"1\"]>ul.ul-thin-mode{transform:translate(calc(var(--thin-mode-width)))}.navigator-container .li-thin-mode:hover:not([data-level=\"1\"])>ul.ul-thin-mode{transform:translate(calc(var(--wide-mode-width) - var(--size-layout-block-cell-spacing)))}.navigator-container .li-thin-mode.active .module-thin-mode{background:var(--hover-bg-color)!important;border-radius:5px!important;width:50px!important;transform:translate(var(--thin-mode-padding))}.navigator-container .li-thin-mode.active .module-thin-mode i{color:var(--hover-color)!important}.navigator-container .li-thin-mode.active .module-thin-mode svg{color:var(--hover-color)!important}.navigator-container .li-thin-mode.active>ul.ul-thin-mode{background-color:#fff;opacity:1;height:unset;overflow-y:auto;box-shadow:.4rem 0 2rem #0000002e}.navigator-container .li-thin-mode.active>ul.ul-thin-mode>div>app-item>li>div>a{display:block!important}.navigator-container .li-thin-mode.active[data-level=\"1\"]>ul.ul-thin-mode{display:block;transform:translate(calc(var(--thin-mode-width)))}.navigator-container .li-thin-mode.active:not([data-level=\"1\"])>ul.ul-thin-mode{display:block;transform:translate(calc(var(--wide-mode-width) - var(--size-layout-block-cell-spacing)))}.navigator-container ul.ul-thin-mode{display:none}.navigator-container .parent{--children-height: 0px;box-sizing:border-box;width:100%;transition:width 1s ease-out}.navigator-container .parent ul{animation:fadeIn .25s linear}.navigator-container .parent i[class^=custom-icon-parent-],.navigator-container .parent i[class^=custom-icon-child-]{position:absolute}.navigator-container .parent i[class^=custom-icon-parent-][data-level=\"1\"],.navigator-container .parent i[class^=custom-icon-child-][data-level=\"1\"]{left:var(--size-left-bar-the-first-icon-left)!important}.navigator-container .parent i[class^=custom-icon-parent-][data-level=\"2\"],.navigator-container .parent i[class^=custom-icon-child-][data-level=\"2\"]{left:46px!important}.navigator-container .parent i[class^=custom-icon-child-][data-level=\"3\"]{left:calc(var(--size-header-logo-left) - 2 * var(--level-gap))!important}.navigator-container .parent i.module-icon{position:absolute;display:inline-block;font-size:var(--size-left-bar-icon-font-size)!important;width:var(--size-left-bar-icon-font-size)!important;height:var(--size-left-bar-icon-font-size)!important}.navigator-container .parent .menu-item-wrapper{position:relative!important;margin-left:0!important;padding-left:0;border:none!important;cursor:pointer}.navigator-container .parent .menu-item-wrapper[data-level=\"1\"].module-thin-mode:hover{background-color:#e1e3e5;width:50px;border-radius:5px;transform:translate(8px);color:#000}.navigator-container .parent .menu-item-wrapper:not([data-level=\"1\"]).module-thin-mode:hover{background-color:#e1e3e5;color:#000;padding:var(--size-layout-block-cell-spacing)}.navigator-container .parent a.thin-mode{left:0!important;display:none;padding-left:15px;padding-right:15px;overflow:hidden;text-overflow:ellipsis}.navigator-container .parent a{position:absolute!important;margin-left:0!important;padding-left:0;border:none!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;user-select:none;-webkit-user-select:none}.navigator-container .parent a[data-level=\"1\"]:not(.thin-mode){left:var(--size-header-logo-left);max-width:calc(var(--left-bar-current-width) - var(--size-header-logo-left) - var(--size-scrollbar-width) - var(--size-layout-block-cell-spacing) * 2)}.navigator-container .parent a[data-level=\"2\"]:not(.thin-mode){left:calc(var(--size-header-logo-left) + var(--level-gap));max-width:calc(var(--left-bar-current-width) - var(--size-header-logo-left) - var(--size-scrollbar-width) - var(--size-layout-block-cell-spacing) * 2 - var(--level-gap))}.navigator-container .parent a[data-level=\"3\"]:not(.thin-mode){left:calc(var(--size-header-logo-left) - var(--level-gap) + 3px);max-width:calc(var(--left-bar-current-width) - var(--size-header-logo-left) - var(--size-scrollbar-width) - var(--size-layout-block-cell-spacing) * 2 - var(--level-gap) * 2)}.navigator-container .parent[data-level=\"1\"]{margin:10px 0}.navigator-container .parent[data-level=\"1\"] a{margin-left:0;font-size:13px}.navigator-container .parent[data-level=\"2\"]:not(.ul-thin-mode) a{margin-left:10px;font-size:13px}.navigator-container .parent[data-level=\"3\"]:not(.ul-thin-mode) a{margin-left:20px;font-size:13px}.navigator-container .parent[data-level=\"2\"]>.menu-item-wrapper{margin-left:20px}.navigator-container .parent .menu-item-wrapper{height:35px;padding-left:0!important;display:flex;align-items:center;margin:0}.navigator-container .parent .menu-item-wrapper>i{display:inline-block;font-size:13px;color:#a9a9a9;cursor:pointer}.navigator-container .parent .menu-item-wrapper>i{color:#000}.navigator-container .parent li:not(.li-thin-mode):hover>.menu-item-wrapper:before{content:\"\";display:inline-block;position:absolute;left:0;height:33px;width:calc(var(--size-left-bar-full-width) - 20px);background-color:#eaf1fb;border-top-right-radius:50px;border-bottom-right-radius:50px}.navigator-container .parent>ul:not(.ul-thin-mode){position:relative;overflow:hidden;display:none;opacity:0;transition:opacity .5s ease-out}.navigator-container .parent>ul.ul-thin-mode{overflow-x:hidden;display:none;margin-left:0!important;opacity:1;transition:opacity .5s ease-out}.navigator-container .parent>ul.ul-thin-mode{overflow-y:auto}.navigator-container .parent.active[data-level=\"2\"]>.menu-item-wrapper>a{transition:.5s ease-out}.navigator-container .parent.highlighted>.menu-item-wrapper>a{color:var(--color-core-org-tree-highlighted)!important;font-weight:700!important}.navigator-container .parent.expanded>ul:not(.submenu){display:block;opacity:1;transition:opacity .5s ease-out}.navigator-container .parent.expanded[data-level=\"2\"]>ul{margin-left:25px}.navigator-container .parent:not(.li-thin-mode) a{margin-left:0}.navigator-container .parent.reduced .menu-item-wrapper{padding:0}.navigator-container .expanded[data-level=\"1\"]:not(.li-thin-mode)>.menu-item-wrapper{background-color:#fff;border-top-right-radius:50px;border-bottom-right-radius:50px;margin-right:2px;display:flex;justify-content:flex-start}.navigator-container .expanded[data-level=\"1\"]:not(.li-thin-mode)>.menu-item-wrapper:hover{background-color:#fff}.navigator-container .expanded>ul:not(.submenu){overflow:visible!important}.navigator-container .expanded.reduced>.menu-item-wrapper{justify-content:flex-start!important;border-top-left-radius:50px;border-bottom-left-radius:50px;width:37px}.navigator-container .parent.reduced>.menu-item-wrapper{justify-content:flex-start!important;border-radius:20px;width:37px}.navigator-container .custom-icon-parent-down{background-image:url('data:image/svg+xml,<svg width=\"8\" height=\"4\" viewBox=\"0 0 8 4\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M4 3.88867L0.535899 0.555338L7.4641 0.555339L4 3.88867Z\" fill=\"%23000000\"/></svg>');display:flex;align-items:center;justify-content:center;width:8px;height:5px;background-size:contain;background-repeat:no-repeat}.navigator-container .custom-icon-parent-right{background-image:url('data:image/svg+xml,<svg width=\"5\" height=\"5\" viewBox=\"0 0 4 8\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M4 4L0.666667 7.4641L0.666667 0.535898L4 4Z\" fill=\"%23000000\"/></svg>');display:block;position:absolute;width:8px;height:8px;align-items:center;justify-content:center;background-size:contain;background-repeat:no-repeat;float:left}.navigator-container .custom-icon-child-right{position:absolute;background-image:url('data:image/svg+xml,<svg width=\"9\" height=\"12\" viewBox=\"0 0 9 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M8.08811 5.23421C8.56399 5.63384 8.56399 6.36616 8.08811 6.76579L2.3931 11.5484C1.74247 12.0947 0.75 11.6322 0.75 10.7826L0.750001 1.21742C0.750001 0.367809 1.74247 -0.0947444 2.39309 0.451638L8.08811 5.23421Z\" fill=\"%23F37540\"/></svg>');display:flex;width:8px;height:8px;align-items:center;justify-content:center;background-size:contain;background-repeat:no-repeat}.navigator-container .custom-organization-icon{background-image:url('data:image/svg+xml,<svg width=\"20\" height=\"19\" viewBox=\"0 0 20 19\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M4.98901 9.6555H15.0112V11.5377H15.989V8.67772H10.489V6.72217H9.51123V8.67772H4.01123V11.5377H4.98901V9.6555Z\" fill=\"%23000000\"/><path d=\"M7.5555 12.2222H1.44439C1.12024 12.2222 0.80936 12.3509 0.580149 12.5801C0.350937 12.8094 0.222168 13.1202 0.222168 13.4444V17.1111C0.222168 17.4352 0.350937 17.7461 0.580149 17.9753C0.80936 18.2045 1.12024 18.3333 1.44439 18.3333H7.5555C7.87966 18.3333 8.19053 18.2045 8.41974 17.9753C8.64895 17.7461 8.77772 17.4352 8.77772 17.1111V13.4444C8.77772 13.1202 8.64895 12.8094 8.41974 12.5801C8.19053 12.3509 7.87966 12.2222 7.5555 12.2222ZM1.44439 17.1111V13.4444H7.5555V17.1111H1.44439Z\" fill=\"%23000000\"/><path d=\"M18.5555 12.2222H12.4444C12.1202 12.2222 11.8094 12.3509 11.5801 12.5801C11.3509 12.8094 11.2222 13.1202 11.2222 13.4444V17.1111C11.2222 17.4352 11.3509 17.7461 11.5801 17.9753C11.8094 18.2045 12.1202 18.3333 12.4444 18.3333H18.5555C18.8797 18.3333 19.1905 18.2045 19.4197 17.9753C19.649 17.7461 19.7777 17.4352 19.7777 17.1111V13.4444C19.7777 13.1202 19.649 12.8094 19.4197 12.5801C19.1905 12.3509 18.8797 12.2222 18.5555 12.2222ZM12.4444 17.1111V13.4444H18.5555V17.1111H12.4444Z\" fill=\"%23000000\"/><path d=\"M6.94439 6.11111H13.0555C13.3797 6.11111 13.6905 5.98234 13.9197 5.75313C14.149 5.52392 14.2777 5.21304 14.2777 4.88889V1.22222C14.2777 0.898069 14.149 0.587192 13.9197 0.35798C13.6905 0.128769 13.3797 0 13.0555 0H6.94439C6.62024 0 6.30936 0.128769 6.08015 0.35798C5.85094 0.587192 5.72217 0.898069 5.72217 1.22222V4.88889C5.72217 5.21304 5.85094 5.52392 6.08015 5.75313C6.30936 5.98234 6.62024 6.11111 6.94439 6.11111ZM6.94439 1.22222H13.0555V4.88889H6.94439V1.22222Z\" fill=\"%23000000\"/></svg>');display:flex;align-items:center;justify-content:center;width:15px;height:15px;background-size:contain;background-repeat:no-repeat}.navigator-container .custom-profile-icon{background-image:url('data:image/svg+xml,<svg width=\"18\" height=\"18\" viewBox=\"0 0 18 18\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><rect x=\"0.75\" y=\"0.75\" width=\"16.5\" height=\"16.5\" rx=\"4.25\" stroke=\"%23000000\" stroke-width=\"1.5\"/><path d=\"M14.5164 16.5755V15.2137C14.5164 14.4914 14.2258 13.7987 13.7086 13.2879C13.1913 12.7772 12.4898 12.4902 11.7583 12.4902H6.2422C5.51071 12.4902 4.80919 12.7772 4.29195 13.2879C3.77471 13.7987 3.48413 14.4914 3.48413 15.2137V16.5755\" stroke=\"%23000000\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/><path d=\"M9.00011 9.57227C10.4432 9.57227 11.613 8.39647 11.613 6.94605C11.613 5.49562 10.4432 4.31982 9.00011 4.31982C7.55704 4.31982 6.38721 5.49562 6.38721 6.94605C6.38721 8.39647 7.55704 9.57227 9.00011 9.57227Z\" stroke=\"%23000000\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/></svg>');display:flex;align-items:center;justify-content:center;width:15px;height:15px;background-size:contain;background-repeat:no-repeat}.navigator-container .custom-insurence-icon{background-image:url('data:image/svg+xml,<svg width=\"20\" height=\"18\" viewBox=\"0 0 20 18\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M2.8 1H17.2C17.6774 1 18.1352 1.1873 18.4728 1.5207C18.8104 1.8541 19 2.30628 19 2.77778V8.11111C19 10.4686 18.0518 12.7295 16.364 14.3965C14.6761 16.0635 12.3869 17 10 17C8.8181 17 7.64778 16.7701 6.55585 16.3234C5.46392 15.8767 4.47177 15.2219 3.63604 14.3965C1.94821 12.7295 1 10.4686 1 8.11111V2.77778C1 2.30628 1.18964 1.8541 1.52721 1.5207C1.86477 1.1873 2.32261 1 2.8 1V1Z\" stroke=\"%23000000\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/><path d=\"M7 8.5L9.5 11.5L15 6\" stroke=\"%23000000\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/></svg>');display:flex;align-items:center;justify-content:center;width:15px;height:15px;background-size:contain;background-repeat:no-repeat}.navigator-container .custom-education-icon{background-image:url('data:image/svg+xml,<svg width=\"21\" height=\"19\" viewBox=\"0 0 21 19\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M1 1H6.66667C7.6686 1 8.62949 1.39801 9.33796 2.10649C10.0464 2.81496 10.4444 3.77585 10.4444 4.77778V18C10.4444 17.2486 10.1459 16.5279 9.61458 15.9965C9.08323 15.4652 8.36256 15.1667 7.61111 15.1667H1V1Z\" stroke=\"%23000000\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/><path d=\"M19.8889 1H14.2222C13.2203 1 12.2594 1.39801 11.5509 2.10649C10.8425 2.81496 10.4445 3.77585 10.4445 4.77778V18C10.4445 17.2486 10.743 16.5279 11.2743 15.9965C11.8057 15.4652 12.5263 15.1667 13.2778 15.1667H19.8889V1Z\" stroke=\"%23000000\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/></svg>');display:flex;align-items:center;justify-content:center;width:15px;height:15px;background-size:contain;background-repeat:no-repeat}.navigator-container .parent.expanded.reduced>.menu-item-wrapper{background-color:#fff;left:10px!important}.navigator-container .parent.expanded.reduced>.menu-item-wrapper>i{left:9px!important;top:8px!important}.navigator-container .parent.reduced>.menu-item-wrapper{left:10px!important}.navigator-container .parent.reduced>.menu-item-wrapper>i{left:9px!important}\n"] }]
|
|
181
|
+
], encapsulation: ViewEncapsulation.None, template: "<li #me [id]=\"'main-menu-' + item.id\" class=\"parent\" [attr.data-level]=\"level\" [class.reduced]=\"leftbarReduced\"\r\n [class.active]=\"!wideMode && active\" [class.expanded]=\"item.tree$Expanded\"\r\n [class.highlighted]=\"item.tree$Highlighted\" [class.li-thin-mode]=\"!wideMode\" [class.menu-item]=\"!wideMode\"\r\n [appTooltip]=\"level===1 && !active ? caption : undefined\" [position]=\"'right'\" [ngStyle]=\"{\r\n marginTop: (level===1 && !wideMode) ? navigatorService.iconGutterY + 'px' : '',\r\n marginBottom: (level===1 && !wideMode) ? navigatorService.iconGutterY + 'px' : ''\r\n }\">\r\n <div class=\"menu-item-wrapper\" [attr.data-level]=\"level\" (click)=\"onClick($event, item)\"\r\n [class.module-thin-mode]=\"!wideMode && level===1\" [class.thin-branch]=\"!wideMode && level > 1\" [ngStyle]=\"{\r\n borderRadius: (level===1 && !wideMode) ? navigatorService.iconBorderRadius + 'px' : ''\r\n }\">\r\n\r\n @if (wideMode) {\r\n @if (!!!leftbarReduced) {\r\n @if (!!hasChildren) {\r\n @if (!item.tree$Selected) {\r\n <i [attr.data-level]=\"level\" class=\"custom-icon-parent-right\"></i>\r\n } @else {\r\n <i [attr.data-level]=\"level\" class=\"custom-icon-parent-down\"></i>\r\n }\r\n } @else {\r\n @if (item.tree$Selected && item.code !== 'MENU.DASHBOARD' && item.code !== 'MENU.HOME') {\r\n <i [attr.data-level]=\"level\" class=\"custom-icon-child-right\"></i>\r\n }\r\n }\r\n }\r\n }\r\n\r\n @if (!!item.iconSvg) {\r\n <i [attr.data-level]=\"level\" class=\"'module-icon'\"\r\n [appTooltip]=\"wideMode ? caption : undefined\" (click)=\"onModuleIconClick($event, item);false\" [ngStyle]=\"{\r\n position: 'absolute',\r\n left: wideMode ? '20px' : 'unset'\r\n }\"><span [innerHtml]=\"item.iconSvg | stringHtml\"></span></i>\r\n\r\n <!-- <span [innerHtml]=\"item.iconSvg | stringHtml\"></span> -->\r\n } @else if (!!item.iconClass) {\r\n <i [attr.data-level]=\"level\" [class]=\"item.iconClass + ' module-icon'\"\r\n [appTooltip]=\"wideMode ? caption : undefined\" (click)=\"onModuleIconClick($event, item);false\" [ngStyle]=\"{\r\n left: wideMode ? '20px' : 'unset'\r\n }\"></i>\r\n }\r\n\r\n @if (!wideMode || (!leftbarReduced && hasChildren)) {\r\n <a #link [attr.data-level]=\"level\" class=\"has-submenu\" [appTooltip]=\"level > 1 ? caption : undefined\"\r\n [class.thin-mode]=\"!wideMode\">\r\n <ng-container (click)=\"subArrowClicked($event, item);false\"> <!--false is important here-->\r\n <span #subArrow *ngIf=\"(!!item.pictureBase64 || !!item.pictureUri)\"\r\n [class]=\"'img-span plus level' + level\">\r\n <img [src]=\"item.pictureBase64 || item.pictureUri\" *ngIf=\"!!item.pictureBase64\">\r\n </span>\r\n <span #subArrow *ngIf=\"!!!item.pictureBase64 && !!!item.pictureUri\"\r\n [class]=\"'plus level' + level\"></span>\r\n </ng-container>\r\n\r\n <img *ngIf=\"(!!item.pictureBase64 || !!item.pictureUri)\" [src]=\"item.pictureBase64 || item.pictureUri\">\r\n\r\n {{ caption }}\r\n\r\n </a>\r\n } @else {\r\n <a [attr.data-level]=\"level\" [routerLink]=\"item.url\" (click)=\"onClick($event, item)\"\r\n [class.thin-mode]=\"!wideMode\" [appTooltip]=\"wideMode && caption\">\r\n {{ caption }}\r\n </a>\r\n }\r\n\r\n </div>\r\n\r\n @if (!!wideMode && !!hasChildren && !!item.tree$Children!.length && !!!leftbarReduced) {\r\n <ul #children [class.expanded]=\"!wideMode || item.tree$Expanded\" [class.ul-thin-mode]=\"!wideMode\" [ngStyle]=\"{\r\n padding: 0,\r\n width: !!wideMode ? (layoutService.leftBarCurrentWidth$.value - layoutService.basicSpacing - layoutService.scrollBarWidth + 5 + 'px') : ( layoutService.leftBarWideWidth$.value + 'px' ),\r\n }\" [class.submenu]=\"!wideMode\">\r\n <div>\r\n @for (child of item.tree$Children; track $index) {\r\n <app-item [item]=\"child\" [level]=\"level+1\" (clicked)=\"onClick($event, child)\"></app-item>\r\n }\r\n </div>\r\n </ul>\r\n }\r\n\r\n</li>", styles: [".navigator-container{--active-item-border-color: white;--line-height: 16px;--level-gap: 10px;--thin-mode-padding: 8px;--thin-mode-width: 66px;--wide-mode-width: 280px;--left-bar-current-width: 280px;--bg-color: #F1F1F1;--color: black;--hover-bg-color: #E1E3E5;--hover-color: black;--icon-border-radius: 8px;--icon-gutter-y: 8px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.navigator-container .d-none{display:none}.navigator-container svg{width:24px;height:24px}.navigator-container .module-thin-mode{display:flex!important;align-items:center!important;justify-content:center!important;padding:0!important;margin-bottom:5px!important;height:50px!important}.navigator-container .module-thin-mode svg{color:var(--color)}.navigator-container .module-thin-mode i{color:var(--color)!important}.navigator-container .li-thin-mode[data-level=\"1\"]{height:50px!important;margin-left:0!important;margin-right:0!important}.navigator-container .li-thin-mode .thin-branch a{padding-left:15px;padding-right:15px;overflow:hidden;max-width:100%;text-overflow:ellipsis}.navigator-container .li-thin-mode .thin-branch:hover{background:#e1e3e5!important;border-radius:5px!important}.navigator-container .li-thin-mode:hover[data-level=\"1\"]>ul.ul-thin-mode{transform:translate(calc(var(--thin-mode-width)))}.navigator-container .li-thin-mode:hover:not([data-level=\"1\"])>ul.ul-thin-mode{transform:translate(calc(var(--wide-mode-width) - var(--size-layout-block-cell-spacing)))}.navigator-container .li-thin-mode.active .module-thin-mode{background:var(--hover-bg-color)!important;border-radius:var(--icon-border-radius)!important;width:50px!important;transform:translate(var(--thin-mode-padding))}.navigator-container .li-thin-mode.active .module-thin-mode i{color:var(--hover-color)!important}.navigator-container .li-thin-mode.active .module-thin-mode svg{color:var(--hover-color)!important}.navigator-container .li-thin-mode.active>ul.ul-thin-mode{background-color:#fff;opacity:1;height:unset;overflow-y:auto;box-shadow:.4rem 0 2rem #0000002e}.navigator-container .li-thin-mode.active>ul.ul-thin-mode>div>app-item>li>div>a{display:block!important}.navigator-container .li-thin-mode.active[data-level=\"1\"]>ul.ul-thin-mode{display:block;transform:translate(calc(var(--thin-mode-width)))}.navigator-container .li-thin-mode.active:not([data-level=\"1\"])>ul.ul-thin-mode{display:block;transform:translate(calc(var(--wide-mode-width) - var(--size-layout-block-cell-spacing)))}.navigator-container ul.ul-thin-mode{display:none}.navigator-container .parent{--children-height: 0px;box-sizing:border-box;width:100%;transition:width 1s ease-out}.navigator-container .parent ul{animation:fadeIn .25s linear}.navigator-container .parent i[class^=custom-icon-parent-],.navigator-container .parent i[class^=custom-icon-child-]{position:absolute}.navigator-container .parent i[class^=custom-icon-parent-][data-level=\"1\"],.navigator-container .parent i[class^=custom-icon-child-][data-level=\"1\"]{left:var(--size-left-bar-the-first-icon-left)!important}.navigator-container .parent i[class^=custom-icon-parent-][data-level=\"2\"],.navigator-container .parent i[class^=custom-icon-child-][data-level=\"2\"]{left:46px!important}.navigator-container .parent i[class^=custom-icon-child-][data-level=\"3\"]{left:calc(var(--size-header-logo-left) - 2 * var(--level-gap))!important}.navigator-container .parent i.module-icon{position:absolute;display:inline-block;font-size:var(--size-left-bar-icon-font-size)!important;width:var(--size-left-bar-icon-font-size)!important;height:var(--size-left-bar-icon-font-size)!important}.navigator-container .parent .menu-item-wrapper{position:relative!important;margin-left:0!important;padding-left:0;border:none!important;cursor:pointer}.navigator-container .parent .menu-item-wrapper[data-level=\"1\"].module-thin-mode:hover{background-color:var(--hover-bg-color);width:50px;border-radius:5px;transform:translate(8px);color:var(--hover-color)!important}.navigator-container .parent .menu-item-wrapper:not([data-level=\"1\"]).module-thin-mode:hover{background-color:#e1e3e5;color:#000;padding:var(--size-layout-block-cell-spacing)}.navigator-container .parent a.thin-mode{left:0!important;display:none;padding-left:15px;padding-right:15px;overflow:hidden;text-overflow:ellipsis}.navigator-container .parent a{position:absolute!important;margin-left:0!important;padding-left:0;border:none!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;user-select:none;-webkit-user-select:none}.navigator-container .parent a[data-level=\"1\"]:not(.thin-mode){left:var(--size-header-logo-left);max-width:calc(var(--left-bar-current-width) - var(--size-header-logo-left) - var(--size-scrollbar-width) - var(--size-layout-block-cell-spacing) * 2)}.navigator-container .parent a[data-level=\"2\"]:not(.thin-mode){left:calc(var(--size-header-logo-left) + var(--level-gap));max-width:calc(var(--left-bar-current-width) - var(--size-header-logo-left) - var(--size-scrollbar-width) - var(--size-layout-block-cell-spacing) * 2 - var(--level-gap))}.navigator-container .parent a[data-level=\"3\"]:not(.thin-mode){left:calc(var(--size-header-logo-left) - var(--level-gap) + 3px);max-width:calc(var(--left-bar-current-width) - var(--size-header-logo-left) - var(--size-scrollbar-width) - var(--size-layout-block-cell-spacing) * 2 - var(--level-gap) * 2)}.navigator-container .parent[data-level=\"1\"]{margin:10px 0}.navigator-container .parent[data-level=\"1\"] a{margin-left:0;font-size:13px}.navigator-container .parent[data-level=\"2\"]:not(.ul-thin-mode) a{margin-left:10px;font-size:13px}.navigator-container .parent[data-level=\"3\"]:not(.ul-thin-mode) a{margin-left:20px;font-size:13px}.navigator-container .parent[data-level=\"2\"]>.menu-item-wrapper{margin-left:20px}.navigator-container .parent .menu-item-wrapper{height:35px;padding-left:0!important;display:flex;align-items:center;margin:0}.navigator-container .parent .menu-item-wrapper>i{display:inline-block;font-size:13px;color:#a9a9a9;cursor:pointer}.navigator-container .parent .menu-item-wrapper>i{color:#000}.navigator-container .parent li:not(.li-thin-mode):hover>.menu-item-wrapper:before{content:\"\";display:inline-block;position:absolute;left:0;height:33px;width:calc(var(--size-left-bar-full-width) - 20px);background-color:#eaf1fb;border-top-right-radius:50px;border-bottom-right-radius:50px}.navigator-container .parent>ul:not(.ul-thin-mode){position:relative;overflow:hidden;display:none;opacity:0;transition:opacity .5s ease-out}.navigator-container .parent>ul.ul-thin-mode{overflow-x:hidden;display:none;margin-left:0!important;opacity:1;transition:opacity .5s ease-out}.navigator-container .parent>ul.ul-thin-mode{overflow-y:auto}.navigator-container .parent.active[data-level=\"2\"]>.menu-item-wrapper>a{transition:.5s ease-out}.navigator-container .parent.highlighted>.menu-item-wrapper>a{color:var(--color-core-org-tree-highlighted)!important;font-weight:700!important}.navigator-container .parent.expanded>ul:not(.submenu){display:block;opacity:1;transition:opacity .5s ease-out}.navigator-container .parent.expanded[data-level=\"2\"]>ul{margin-left:25px}.navigator-container .parent:not(.li-thin-mode) a{margin-left:0}.navigator-container .parent.reduced .menu-item-wrapper{padding:0}.navigator-container .expanded[data-level=\"1\"]:not(.li-thin-mode)>.menu-item-wrapper{background-color:#fff;border-top-right-radius:50px;border-bottom-right-radius:50px;margin-right:2px;display:flex;justify-content:flex-start}.navigator-container .expanded[data-level=\"1\"]:not(.li-thin-mode)>.menu-item-wrapper:hover{background-color:#fff}.navigator-container .expanded>ul:not(.submenu){overflow:visible!important}.navigator-container .expanded.reduced>.menu-item-wrapper{justify-content:flex-start!important;border-top-left-radius:50px;border-bottom-left-radius:50px;width:37px}.navigator-container .parent.reduced>.menu-item-wrapper{justify-content:flex-start!important;border-radius:20px;width:37px}.navigator-container .custom-icon-parent-down{background-image:url('data:image/svg+xml,<svg width=\"8\" height=\"4\" viewBox=\"0 0 8 4\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M4 3.88867L0.535899 0.555338L7.4641 0.555339L4 3.88867Z\" fill=\"%23000000\"/></svg>');display:flex;align-items:center;justify-content:center;width:8px;height:5px;background-size:contain;background-repeat:no-repeat}.navigator-container .custom-icon-parent-right{background-image:url('data:image/svg+xml,<svg width=\"5\" height=\"5\" viewBox=\"0 0 4 8\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M4 4L0.666667 7.4641L0.666667 0.535898L4 4Z\" fill=\"%23000000\"/></svg>');display:block;position:absolute;width:8px;height:8px;align-items:center;justify-content:center;background-size:contain;background-repeat:no-repeat;float:left}.navigator-container .custom-icon-child-right{position:absolute;background-image:url('data:image/svg+xml,<svg width=\"9\" height=\"12\" viewBox=\"0 0 9 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M8.08811 5.23421C8.56399 5.63384 8.56399 6.36616 8.08811 6.76579L2.3931 11.5484C1.74247 12.0947 0.75 11.6322 0.75 10.7826L0.750001 1.21742C0.750001 0.367809 1.74247 -0.0947444 2.39309 0.451638L8.08811 5.23421Z\" fill=\"%23F37540\"/></svg>');display:flex;width:8px;height:8px;align-items:center;justify-content:center;background-size:contain;background-repeat:no-repeat}.navigator-container .custom-organization-icon{background-image:url('data:image/svg+xml,<svg width=\"20\" height=\"19\" viewBox=\"0 0 20 19\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M4.98901 9.6555H15.0112V11.5377H15.989V8.67772H10.489V6.72217H9.51123V8.67772H4.01123V11.5377H4.98901V9.6555Z\" fill=\"%23000000\"/><path d=\"M7.5555 12.2222H1.44439C1.12024 12.2222 0.80936 12.3509 0.580149 12.5801C0.350937 12.8094 0.222168 13.1202 0.222168 13.4444V17.1111C0.222168 17.4352 0.350937 17.7461 0.580149 17.9753C0.80936 18.2045 1.12024 18.3333 1.44439 18.3333H7.5555C7.87966 18.3333 8.19053 18.2045 8.41974 17.9753C8.64895 17.7461 8.77772 17.4352 8.77772 17.1111V13.4444C8.77772 13.1202 8.64895 12.8094 8.41974 12.5801C8.19053 12.3509 7.87966 12.2222 7.5555 12.2222ZM1.44439 17.1111V13.4444H7.5555V17.1111H1.44439Z\" fill=\"%23000000\"/><path d=\"M18.5555 12.2222H12.4444C12.1202 12.2222 11.8094 12.3509 11.5801 12.5801C11.3509 12.8094 11.2222 13.1202 11.2222 13.4444V17.1111C11.2222 17.4352 11.3509 17.7461 11.5801 17.9753C11.8094 18.2045 12.1202 18.3333 12.4444 18.3333H18.5555C18.8797 18.3333 19.1905 18.2045 19.4197 17.9753C19.649 17.7461 19.7777 17.4352 19.7777 17.1111V13.4444C19.7777 13.1202 19.649 12.8094 19.4197 12.5801C19.1905 12.3509 18.8797 12.2222 18.5555 12.2222ZM12.4444 17.1111V13.4444H18.5555V17.1111H12.4444Z\" fill=\"%23000000\"/><path d=\"M6.94439 6.11111H13.0555C13.3797 6.11111 13.6905 5.98234 13.9197 5.75313C14.149 5.52392 14.2777 5.21304 14.2777 4.88889V1.22222C14.2777 0.898069 14.149 0.587192 13.9197 0.35798C13.6905 0.128769 13.3797 0 13.0555 0H6.94439C6.62024 0 6.30936 0.128769 6.08015 0.35798C5.85094 0.587192 5.72217 0.898069 5.72217 1.22222V4.88889C5.72217 5.21304 5.85094 5.52392 6.08015 5.75313C6.30936 5.98234 6.62024 6.11111 6.94439 6.11111ZM6.94439 1.22222H13.0555V4.88889H6.94439V1.22222Z\" fill=\"%23000000\"/></svg>');display:flex;align-items:center;justify-content:center;width:15px;height:15px;background-size:contain;background-repeat:no-repeat}.navigator-container .custom-profile-icon{background-image:url('data:image/svg+xml,<svg width=\"18\" height=\"18\" viewBox=\"0 0 18 18\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><rect x=\"0.75\" y=\"0.75\" width=\"16.5\" height=\"16.5\" rx=\"4.25\" stroke=\"%23000000\" stroke-width=\"1.5\"/><path d=\"M14.5164 16.5755V15.2137C14.5164 14.4914 14.2258 13.7987 13.7086 13.2879C13.1913 12.7772 12.4898 12.4902 11.7583 12.4902H6.2422C5.51071 12.4902 4.80919 12.7772 4.29195 13.2879C3.77471 13.7987 3.48413 14.4914 3.48413 15.2137V16.5755\" stroke=\"%23000000\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/><path d=\"M9.00011 9.57227C10.4432 9.57227 11.613 8.39647 11.613 6.94605C11.613 5.49562 10.4432 4.31982 9.00011 4.31982C7.55704 4.31982 6.38721 5.49562 6.38721 6.94605C6.38721 8.39647 7.55704 9.57227 9.00011 9.57227Z\" stroke=\"%23000000\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/></svg>');display:flex;align-items:center;justify-content:center;width:15px;height:15px;background-size:contain;background-repeat:no-repeat}.navigator-container .custom-insurence-icon{background-image:url('data:image/svg+xml,<svg width=\"20\" height=\"18\" viewBox=\"0 0 20 18\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M2.8 1H17.2C17.6774 1 18.1352 1.1873 18.4728 1.5207C18.8104 1.8541 19 2.30628 19 2.77778V8.11111C19 10.4686 18.0518 12.7295 16.364 14.3965C14.6761 16.0635 12.3869 17 10 17C8.8181 17 7.64778 16.7701 6.55585 16.3234C5.46392 15.8767 4.47177 15.2219 3.63604 14.3965C1.94821 12.7295 1 10.4686 1 8.11111V2.77778C1 2.30628 1.18964 1.8541 1.52721 1.5207C1.86477 1.1873 2.32261 1 2.8 1V1Z\" stroke=\"%23000000\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/><path d=\"M7 8.5L9.5 11.5L15 6\" stroke=\"%23000000\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/></svg>');display:flex;align-items:center;justify-content:center;width:15px;height:15px;background-size:contain;background-repeat:no-repeat}.navigator-container .custom-education-icon{background-image:url('data:image/svg+xml,<svg width=\"21\" height=\"19\" viewBox=\"0 0 21 19\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M1 1H6.66667C7.6686 1 8.62949 1.39801 9.33796 2.10649C10.0464 2.81496 10.4444 3.77585 10.4444 4.77778V18C10.4444 17.2486 10.1459 16.5279 9.61458 15.9965C9.08323 15.4652 8.36256 15.1667 7.61111 15.1667H1V1Z\" stroke=\"%23000000\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/><path d=\"M19.8889 1H14.2222C13.2203 1 12.2594 1.39801 11.5509 2.10649C10.8425 2.81496 10.4445 3.77585 10.4445 4.77778V18C10.4445 17.2486 10.743 16.5279 11.2743 15.9965C11.8057 15.4652 12.5263 15.1667 13.2778 15.1667H19.8889V1Z\" stroke=\"%23000000\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/></svg>');display:flex;align-items:center;justify-content:center;width:15px;height:15px;background-size:contain;background-repeat:no-repeat}.navigator-container .parent.expanded.reduced>.menu-item-wrapper{background-color:#fff;left:10px!important}.navigator-container .parent.expanded.reduced>.menu-item-wrapper>i{left:9px!important;top:8px!important}.navigator-container .parent.reduced>.menu-item-wrapper{left:10px!important}.navigator-container .parent.reduced>.menu-item-wrapper>i{left:9px!important}\n"] }]
|
|
180
182
|
}], ctorParameters: () => [{ type: i1.Router }, { type: i2.NavigatorService }, { type: i3.MultiLanguageService }, { type: i4.LayoutService }, { type: i5.MenuService }], propDecorators: { item: [{
|
|
181
183
|
type: Input
|
|
182
184
|
}], level: [{
|
|
@@ -194,4 +196,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImpor
|
|
|
194
196
|
type: ViewChild,
|
|
195
197
|
args: ['subArrow']
|
|
196
198
|
}] } });
|
|
197
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXRlbS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtaGlzdGFmZi1hbHBoYS9zcmMvbGliL2FwcC9saWJyYXJpZXMvbmF2aWdhdG9yL25hdmlnYXRvci9pdGVtLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1oaXN0YWZmLWFscGhhL3NyYy9saWIvYXBwL2xpYnJhcmllcy9uYXZpZ2F0b3IvbmF2aWdhdG9yL2l0ZW0uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYyxLQUFLLEVBQXFCLFNBQVMsRUFBRSxpQkFBaUIsRUFBdUYsTUFBTSxlQUFlLENBQUM7QUFFbk0sT0FBTyxFQUFVLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBTXZELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNuRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0scUNBQXFDLENBQUM7Ozs7Ozs7O0FBZ0JyRSxNQUFNLE9BQU8sYUFBYTtJQXFCeEIsWUFDVSxNQUFjLEVBQ2YsZ0JBQWtDLEVBQ2pDLEdBQXlCLEVBQzFCLGFBQTRCLEVBQzNCLFdBQXdCO1FBSnhCLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDZixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQ2pDLFFBQUcsR0FBSCxHQUFHLENBQXNCO1FBQzFCLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBQzNCLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBZmxDLGdCQUFXLEdBQVksS0FBSyxDQUFDO1FBRTdCLGFBQVEsR0FBWSxLQUFLLENBQUM7UUFFMUIsa0JBQWEsR0FBbUIsRUFBRSxDQUFDO1FBR25DLGlCQUFZLEdBQVcsRUFB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LCBJbnB1dCwgT25Jbml0LCBPbkRlc3Ryb3ksIFZpZXdDaGlsZCwgVmlld0VuY2Fwc3VsYXRpb24sIENoYW5nZURldGVjdG9yUmVmLCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgT25DaGFuZ2VzLCBTaW1wbGVDaGFuZ2VzLCBBZnRlclZpZXdJbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBSb3V0ZXIsIFJvdXRlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IE5hdmlnYXRvclNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9uYXZpZ2F0b3Iuc2VydmljZSc7XHJcbmltcG9ydCB7IE11bHRpTGFuZ3VhZ2VTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvbXVsdGktbGFuZ3VhZ2Uuc2VydmljZSc7XHJcbmltcG9ydCB7IExheW91dFNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9sYXlvdXQuc2VydmljZSc7XHJcbmltcG9ydCB7IElOYXZpZ2F0b3JJdGVtIH0gZnJvbSAnLi4vLi4vLi4vaW50ZXJmYWNlcy9JTmF2aWdhdG9ySXRlbSc7XHJcbmltcG9ydCB7IE1lbnVTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvbWVudS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgVG9vbHRpcERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL3Rvb2x0aXAvdG9vbHRpcC5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBTdHJpbmdIdG1sUGlwZSB9IGZyb20gJy4uLy4uLy4uL2FwcC1waXBlcy9zdHJpbmctaHRtbC5waXBlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYXBwLWl0ZW0nLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW1xyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgUm91dGVyTW9kdWxlLFxyXG4gICAgVG9vbHRpcERpcmVjdGl2ZSxcclxuICAgIFN0cmluZ0h0bWxQaXBlLFxyXG4gICAgXHJcbiAgXSxcclxuICB0ZW1wbGF0ZVVybDogJy4vaXRlbS5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vaXRlbS5jb21wb25lbnQuc2NzcyddLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcclxufSlcclxuZXhwb3J0IGNsYXNzIEl0ZW1Db21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMsIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcclxuXHJcbiAgQElucHV0KCkgaXRlbSE6IElOYXZpZ2F0b3JJdGVtO1xyXG4gIEBJbnB1dCgpIGxldmVsITogbnVtYmVyO1xyXG4gIEBWaWV3Q2hpbGQoJ21lJykgbWUhOiBFbGVtZW50UmVmO1xyXG4gIEBWaWV3Q2hpbGQoJ2NoaWxkcmVuJykgY2hpbGRyZW4hOiBFbGVtZW50UmVmO1xyXG4gIEBWaWV3Q2hpbGQoJ2xpbmsnKSBsaW5rITogRWxlbWVudFJlZjtcclxuICBAVmlld0NoaWxkKCdzdWJBcnJvdycpIHN1YkFycm93ITogRWxlbWVudFJlZjtcclxuXHJcbiAgY2FwdGlvbiE6IHN0cmluZztcclxuXHJcbiAgaGFzQ2hpbGRyZW46IGJvb2xlYW4gPSBmYWxzZTtcclxuICBtYWluV2luZG93U3RhdGUhOiBzdHJpbmc7XHJcbiAgZXhwYW5kZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBsZWZ0YmFyUmVkdWNlZCE6IGJvb2xlYW47XHJcbiAgc3Vic2NyaXB0aW9uczogU3Vic2NyaXB0aW9uW10gPSBbXTtcclxuXHJcbiAgd2lkZU1vZGUhOiBib29sZWFuO1xyXG4gIGN1cnJlbnRXaWR0aDogbnVtYmVyID0gNjY7XHJcbiAgYWN0aXZlITogYm9vbGVhbjtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyLFxyXG4gICAgcHVibGljIG5hdmlnYXRvclNlcnZpY2U6IE5hdmlnYXRvclNlcnZpY2UsXHJcbiAgICBwcml2YXRlIG1sczogTXVsdGlMYW5ndWFnZVNlcnZpY2UsXHJcbiAgICBwdWJsaWMgbGF5b3V0U2VydmljZTogTGF5b3V0U2VydmljZSxcclxuICAgIHByaXZhdGUgbWVudVNlcnZpY2U6IE1lbnVTZXJ2aWNlLFxyXG4gICkge1xyXG4gICAgdGhpcy5uYXZpZ2F0b3JTZXJ2aWNlLndpZGVNb2RlJC5zdWJzY3JpYmUoeCA9PiB0aGlzLndpZGVNb2RlID0geCk7XHJcbiAgICB0aGlzLmxheW91dFNlcnZpY2UubGVmdEJhckN1cnJlbnRXaWR0aCQuc3Vic2NyaWJlKHggPT4ge1xyXG4gICAgICB0aGlzLmN1cnJlbnRXaWR0aCA9IHg7XHJcbiAgICAgIHRoaXMubWU/Lm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJy0tbGVmdC1iYXItY3VycmVudC13aWR0aCcsIHggKyAncHgnKVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XHJcbiAgICBpZiAoY2hhbmdlc1snaXRlbSddKSB7XHJcbiAgICAgIGNvbnN0IGl0ID0gY2hhbmdlc1snaXRlbSddO1xyXG4gICAgICBpZiAoaXQuY3VycmVudFZhbHVlLmlkID09PSAzODIpIHtcclxuICAgICAgICBjb25zb2xlLmxvZyhcIml0ZW0gMzgyIGNoYW5nZWQsIGFjdGl2ZSA9IFwiLCB0aGlzLmFjdGl2ZSlcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICBpZiAodGhpcy5pdGVtKSB7XHJcbiAgICAgIGlmICh0aGlzLml0ZW0udHJlZSRDaGlsZHJlbi5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgdGhpcy5oYXNDaGlsZHJlbiA9IHRydWU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICB0aGlzLm5hdmlnYXRvclNlcnZpY2UuYWN0aXZlSXRlbXMkLnN1YnNjcmliZShjID0+IHtcclxuICAgICAgaWYgKCFjKSByZXR1cm47XHJcbiAgICAgIHRoaXMuYWN0aXZlID0gISFjLmZpbHRlcih4ID0+IHguaWQgPT09IHRoaXMuaXRlbT8uaWQpLmxlbmd0aFxyXG4gICAgICBpZiAoISF0aGlzLmFjdGl2ZSkge1xyXG4gICAgICAgIHRoaXMubWU/Lm5hdGl2ZUVsZW1lbnQuY2xhc3NMaXN0LmFkZChcImFjdGl2ZVwiKVxyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMubWU/Lm5hdGl2ZUVsZW1lbnQuY2xhc3NMaXN0LnJlbW92ZShcImFjdGl2ZVwiKVxyXG4gICAgICB9XHJcbiAgICB9KVxyXG5cclxuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5wdXNoKFxyXG4gICAgICB0aGlzLm1scy5sYW5nJC5zdWJzY3JpYmUoXyA9PiB7XHJcbiAgICAgICAgdGhpcy5jYXB0aW9uID0gdGhpcy5tbHMudHJhbnModGhpcy5pdGVtIS5jb2RlKVxyXG4gICAgICB9KVxyXG4gICAgKVxyXG5cclxuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5wdXNoKFxyXG4gICAgICB0aGlzLmxheW91dFNlcnZpY2UubGVmdGJhclJlZHVjZWQkLnN1YnNjcmliZSh4ID0+IHRoaXMubGVmdGJhclJlZHVjZWQgPSB4KVxyXG4gICAgKVxyXG4gIH1cclxuXHJcbiAgc3ViQXJyb3dDbGlja2VkKGV2ZW50OiBFdmVudCwgaXRlbTogSU5hdmlnYXRvckl0ZW0pIHtcclxuXHJcbiAgICBjb25zb2xlLmxvZyhcInN1YkFycm93Q2xpY2tlZCB0cmlnZ2VyZWRcIilcclxuXHJcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcclxuXHJcbiAgICBpZiAoIXRoaXMud2lkZU1vZGUpIHtcclxuICAgICAgbGV0IG5ld0FjdGl2ZUl0ZW1zID0gdGhpcy5uYXZpZ2F0b3JTZXJ2aWNlLmFjdGl2ZUl0ZW1zJC52YWx1ZTtcclxuICAgICAgY29uc29sZS5sb2coXCJzdWJBcnJvd0NsaWNrZWQgbmV3QWN0aXZlSXRlbXMgYmU0IGZpbHRlcmluZ1wiLCBuZXdBY3RpdmVJdGVtcylcclxuICAgICAgbmV3QWN0aXZlSXRlbXMgPSBuZXdBY3RpdmVJdGVtcy5maWx0ZXIoeCA9PiB4LnRyZWUkVGllciEgPCBpdGVtLnRyZWUkVGllciEpO1xyXG4gICAgICBuZXdBY3RpdmVJdGVtcy5wdXNoKGl0ZW0pO1xyXG4gICAgICBjb25zb2xlLmxvZyhcInN1YkFycm93Q2xpY2tlZCBuZXdBY3RpdmVJdGVtc1wiLCBuZXdBY3RpdmVJdGVtcylcclxuICAgICAgdGhpcy5uYXZpZ2F0b3JTZXJ2aWNlLmFjdGl2ZUl0ZW1zJC5uZXh0KG5ld0FjdGl2ZUl0ZW1zKTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgaWYgKHRoaXMuY2hpbGRyZW4ubmF0aXZlRWxlbWVudC5jbGFzc05hbWUgPT09ICdjaGlsZCBzdWItbWVudScpIHtcclxuICAgICAgdGhpcy5jaGlsZHJlbi5uYXRpdmVFbGVtZW50LmNsYXNzTmFtZSA9ICdjaGlsZCBzdWItbWVudSBleHBhbmRlZCc7XHJcbiAgICAgIHRoaXMuc3ViQXJyb3cubmF0aXZlRWxlbWVudC5jbGFzc05hbWUgPSB0aGlzLnN1YkFycm93Lm5hdGl2ZUVsZW1lbnQuY2xhc3NOYW1lLnJlcGxhY2UoJyBwbHVzJywgJycpICsgJyBtaW51cyc7XHJcbiAgICB9IGVsc2UgaWYgKHRoaXMuY2hpbGRyZW4ubmF0aXZlRWxlbWVudC5jbGFzc05hbWUgPT09ICdjaGlsZCBzdWItbWVudSBleHBhbmRlZCcpIHtcclxuICAgICAgdGhpcy5jaGlsZHJlbi5uYXRpdmVFbGVtZW50LmNsYXNzTmFtZSA9ICdjaGlsZCBzdWItbWVudSc7XHJcbiAgICAgIHRoaXMuc3ViQXJyb3cubmF0aXZlRWxlbWVudC5jbGFzc05hbWUgPSB0aGlzLnN1YkFycm93Lm5hdGl2ZUVsZW1lbnQuY2xhc3NOYW1lLnJlcGxhY2UoJyBtaW51cycsICcnKSArICcgcGx1cyc7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvbkNsaWNrKGV2ZW50OiBhbnksIGl0ZW06IElOYXZpZ2F0b3JJdGVtKSB7XHJcblxyXG4gICAgY29uc29sZS5sb2coXCJvbkNsaWNrIHRyaWdnZXJlZFwiKVxyXG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuICAgIGV2ZW50LnN0b3BJbW1lZGlhdGVQcm9wYWdhdGlvbigpO1xyXG5cclxuICAgIGlmICghdGhpcy53aWRlTW9kZSkge1xyXG5cclxuICAgICAgdGhpcy5vbk1vZHVsZUljb25DbGljayhldmVudCwgaXRlbSk7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoISF0aGlzLndpZGVNb2RlICYmIHRoaXMuaXRlbSEudHJlZSRTZWxlY3RlZCA9PSB0cnVlICYmICEhdGhpcy5pdGVtIS50cmVlJFBhcmVudCAmJiAodGhpcy5pdGVtIS50cmVlJFRpZXIgIT0gMiB8fCB0aGlzLml0ZW0hLnRyZWUkVGllciA9PSAyICYmIHRoaXMuaXRlbSEudHJlZSRDaGlsZHJlbi5sZW5ndGggPT0gMCkpIHtcclxuICAgICAgcmV0dXJuXHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHRoaXMud2lkZU1vZGUpIHtcclxuICAgICAgaWYgKHRoaXMuY2hpbGRyZW4pIHtcclxuICAgICAgICBjb25zdCBlbCA9IHRoaXMuY2hpbGRyZW4ubmF0aXZlRWxlbWVudDtcclxuICAgICAgICBjb25zdCByZWN0ID0gZWwuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XHJcbiAgICAgICAgY29uc3QgaGVpZ2h0ID0gcmVjdC5oZWlnaHQ7XHJcbiAgICAgICAgaWYgKGhlaWdodCA9PT0gMCkge1xyXG4gICAgICAgICAgaXRlbS50cmVlJFNlbGVjdGVkID0gdHJ1ZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICBpZiAoaXRlbS50cmVlJFRpZXIgPT0gMSB8fCBpdGVtLnRyZWUkVGllciA9PSAyKSB7XHJcbiAgICAgICAgICAgIGl0ZW0udHJlZSRTZWxlY3RlZCA9IGZhbHNlO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLm1lLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJy0tY2hpbGRyZW4taGVpZ2h0JywgaGVpZ2h0ICsgJ3B4JylcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBpdGVtLnRyZWUkU2VsZWN0ZWQgPSB0cnVlO1xyXG4gICAgICAgIHRoaXMubWVudVNlcnZpY2UubmF2aWdhdGlvbiQudmFsdWUubWFwKHggPT4ge1xyXG4gICAgICAgICAgaWYgKHgudHJlZSRDaGlsZHJlbikge1xyXG4gICAgICAgICAgICB4LnRyZWUkQ2hpbGRyZW4ubWFwKCh5OiBhbnkpID0+IHtcclxuICAgICAgICAgICAgICBpZiAoeS50cmVlJENoaWxkcmVuKSB7XHJcbiAgICAgICAgICAgICAgICB5LnRyZWUkQ2hpbGRyZW4ubWFwKCh6OiBhbnkpID0+IHtcclxuICAgICAgICAgICAgICAgICAgaWYgKHogIT0gaXRlbSkge1xyXG4gICAgICAgICAgICAgICAgICAgIHoudHJlZSRTZWxlY3RlZCA9IGZhbHNlXHJcbiAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICAgfSBlbHNlIGlmICh5ICE9IGl0ZW0pIHtcclxuICAgICAgICAgICAgICAgIHkudHJlZSRTZWxlY3RlZCA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSlcclxuICAgICAgICAgIH1cclxuICAgICAgICB9KVxyXG4gICAgICB9XHJcblxyXG4gICAgfVxyXG5cclxuICAgIHRoaXMubmF2aWdhdG9yU2VydmljZS5jbGlja2VkSXRlbSQubmV4dChpdGVtKVxyXG5cclxuICAgIGlmICghIWl0ZW0udHJlZSRQYXJlbnQpIHtcclxuICAgICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oJ21lbnVDdXJyZW50Q2xpY2tlZCcsIEpTT04uc3RyaW5naWZ5KGl0ZW0pKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG9uTW9kdWxlSWNvbkNsaWNrKGV2ZW50OiBhbnksIGl0ZW06IElOYXZpZ2F0b3JJdGVtKSB7XHJcbiAgICBjb25zb2xlLmxvZyhcIm9uTW9kdWxlSWNvbkNsaWNrIHRyaWdnZXJlZFwiKVxyXG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcblxyXG4gICAgaWYgKCF0aGlzLm5hdmlnYXRvclNlcnZpY2UuY2xpY2tlZEl0ZW0kLnZhbHVlKSB7XHJcbiAgICAgIHRoaXMubmF2aWdhdG9yU2VydmljZS5jbGlja2VkSXRlbSQubmV4dChpdGVtKTtcclxuICAgICAgdGhpcy5uYXZpZ2F0b3JTZXJ2aWNlLmFjdGl2ZUl0ZW1zJC5uZXh0KFtpdGVtXSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBpZiAodGhpcy53aWRlTW9kZSkge1xyXG4gICAgICAgIHRoaXMubmF2aWdhdG9yU2VydmljZS5jbGlja2VkSXRlbSQubmV4dChpdGVtKTtcclxuICAgICAgICB0aGlzLm5hdmlnYXRvclNlcnZpY2UuYWN0aXZlSXRlbXMkLm5leHQoW2l0ZW1dKTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBpZiAodGhpcy5uYXZpZ2F0b3JTZXJ2aWNlLmNsaWNrZWRJdGVtJC52YWx1ZS5pZCAhPT0gaXRlbS5pZCkge1xyXG4gICAgICAgICAgdGhpcy5uYXZpZ2F0b3JTZXJ2aWNlLmNsaWNrZWRJdGVtJC5uZXh0KGl0ZW0pO1xyXG4gICAgICAgICAgdGhpcy5uYXZpZ2F0b3JTZXJ2aWNlLmFjdGl2ZUl0ZW1zJC5uZXh0KFtpdGVtXSk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRoaXMubmF2aWdhdG9yU2VydmljZS5jbGlja2VkSXRlbSQubmV4dChudWxsKTtcclxuICAgICAgICAgIHRoaXMubmF2aWdhdG9yU2VydmljZS5hY3RpdmVJdGVtcyQubmV4dChbXSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gIH1cclxuXHJcbiAgY2hlY2tBY3RpdmUoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5hY3RpdmU7XHJcbiAgfVxyXG5cclxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgdGhpcy5tZS5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCctLWJnLWNvbG9yJywgdGhpcy5uYXZpZ2F0b3JTZXJ2aWNlLmJhY2tncm91bmRDb2xvcik7XHJcbiAgICAgIHRoaXMubWUubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnLS1jb2xvcicsIHRoaXMubmF2aWdhdG9yU2VydmljZS5jb2xvcik7XHJcbiAgICAgIHRoaXMubWUubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnLS1ob3Zlci1iZy1jb2xvcicsIHRoaXMubmF2aWdhdG9yU2VydmljZS5ob3ZlckJhY2tncm91bmRDb2xvcik7XHJcbiAgICAgIHRoaXMubWUubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnLS1ob3Zlci1jb2xvcicsIHRoaXMubmF2aWdhdG9yU2VydmljZS5ob3ZlckNvbG9yKTtcclxuICAgIH0pXHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5tYXAoeCA9PiB4LnVuc3Vic2NyaWJlKCkpXHJcbiAgfVxyXG5cclxufVxyXG4iLCI8bGkgI21lIFtpZF09XCInbWFpbi1tZW51LScgKyBpdGVtLmlkXCIgY2xhc3M9XCJwYXJlbnRcIiBbYXR0ci5kYXRhLWxldmVsXT1cImxldmVsXCIgW2NsYXNzLnJlZHVjZWRdPVwibGVmdGJhclJlZHVjZWRcIlxyXG4gICAgW2NsYXNzLmFjdGl2ZV09XCIhd2lkZU1vZGUgJiYgYWN0aXZlXCIgW2NsYXNzLmV4cGFuZGVkXT1cIml0ZW0udHJlZSRFeHBhbmRlZFwiXHJcbiAgICBbY2xhc3MuaGlnaGxpZ2h0ZWRdPVwiaXRlbS50cmVlJEhpZ2hsaWdodGVkXCIgW2NsYXNzLmxpLXRoaW4tbW9kZV09XCIhd2lkZU1vZGVcIiBbY2xhc3MubWVudS1pdGVtXT1cIiF3aWRlTW9kZVwiXHJcbiAgICBbYXBwVG9vbHRpcF09XCJsZXZlbD09PTEgJiYgIWFjdGl2ZSA/IGNhcHRpb24gOiB1bmRlZmluZWRcIiBbcG9zaXRpb25dPVwiJ3JpZ2h0J1wiPlxyXG4gICAgPGRpdiBjbGFzcz1cIm1lbnUtaXRlbS13cmFwcGVyXCIgW2F0dHIuZGF0YS1sZXZlbF09XCJsZXZlbFwiIChjbGljayk9XCJvbkNsaWNrKCRldmVudCwgaXRlbSlcIlxyXG4gICAgICAgIFtjbGFzcy5tb2R1bGUtdGhpbi1tb2RlXT1cIiF3aWRlTW9kZSAmJiBsZXZlbD09PTFcIiBbY2xhc3MudGhpbi1icmFuY2hdPVwiIXdpZGVNb2RlICYmIGxldmVsID4gMVwiPlxyXG5cclxuICAgICAgICBAaWYgKHdpZGVNb2RlKSB7XHJcbiAgICAgICAgQGlmICghISFsZWZ0YmFyUmVkdWNlZCkge1xyXG4gICAgICAgIEBpZiAoISFoYXNDaGlsZHJlbikge1xyXG4gICAgICAgIEBpZiAoIWl0ZW0udHJlZSRTZWxlY3RlZCkge1xyXG4gICAgICAgIDxpIFthdHRyLmRhdGEtbGV2ZWxdPVwibGV2ZWxcIiBjbGFzcz1cImN1c3RvbS1pY29uLXBhcmVudC1yaWdodFwiPjwvaT5cclxuICAgICAgICB9IEBlbHNlIHtcclxuICAgICAgICA8aSBbYXR0ci5kYXRhLWxldmVsXT1cImxldmVsXCIgY2xhc3M9XCJjdXN0b20taWNvbi1wYXJlbnQtZG93blwiPjwvaT5cclxuICAgICAgICB9XHJcbiAgICAgICAgfSBAZWxzZSB7XHJcbiAgICAgICAgQGlmIChpdGVtLnRyZWUkU2VsZWN0ZWQgJiYgaXRlbS5jb2RlICE9PSAnTUVOVS5EQVNIQk9BUkQnICYmIGl0ZW0uY29kZSAhPT0gJ01FTlUuSE9NRScpIHtcclxuICAgICAgICA8aSBbYXR0ci5kYXRhLWxldmVsXT1cImxldmVsXCIgY2xhc3M9XCJjdXN0b20taWNvbi1jaGlsZC1yaWdodFwiPjwvaT5cclxuICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpZiAoISFpdGVtLmljb25TdmcpIHtcclxuICAgICAgICA8aSBbYXR0ci5kYXRhLWxldmVsXT1cImxldmVsXCIgY2xhc3M9XCInbW9kdWxlLWljb24nXCJcclxuICAgICAgICAgICAgW2FwcFRvb2x0aXBdPVwid2lkZU1vZGUgPyBjYXB0aW9uIDogdW5kZWZpbmVkXCIgKGNsaWNrKT1cIm9uTW9kdWxlSWNvbkNsaWNrKCRldmVudCwgaXRlbSk7ZmFsc2VcIiBbbmdTdHlsZV09XCJ7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogJ2Fic29sdXRlJyxcclxuICAgICAgICAgICAgICAgIGxlZnQ6IHdpZGVNb2RlID8gJzIwcHgnIDogJ3Vuc2V0J1xyXG4gICAgICAgICAgICB9XCI+PHNwYW4gW2lubmVySHRtbF09XCJpdGVtLmljb25TdmcgfCBzdHJpbmdIdG1sXCI+PC9zcGFuPjwvaT5cclxuXHJcbiAgICAgICAgPCEtLSA8c3BhbiBbaW5uZXJIdG1sXT1cIml0ZW0uaWNvblN2ZyB8IHN0cmluZ0h0bWxcIj48L3NwYW4+IC0tPlxyXG4gICAgICAgIH0gQGVsc2UgaWYgKCEhaXRlbS5pY29uQ2xhc3MpIHtcclxuICAgICAgICA8aSBbYXR0ci5kYXRhLWxldmVsXT1cImxldmVsXCIgW2NsYXNzXT1cIml0ZW0uaWNvbkNsYXNzICsgJyBtb2R1bGUtaWNvbidcIlxyXG4gICAgICAgICAgICBbYXBwVG9vbHRpcF09XCJ3aWRlTW9kZSA/IGNhcHRpb24gOiB1bmRlZmluZWRcIiAoY2xpY2spPVwib25Nb2R1bGVJY29uQ2xpY2soJGV2ZW50LCBpdGVtKTtmYWxzZVwiIFtuZ1N0eWxlXT1cIntcclxuICAgICAgICAgICAgICAgIGxlZnQ6IHdpZGVNb2RlID8gJzIwcHgnIDogJ3Vuc2V0J1xyXG4gICAgICAgICAgICB9XCI+PC9pPlxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGlmICghd2lkZU1vZGUgfHwgKCFsZWZ0YmFyUmVkdWNlZCAmJiBoYXNDaGlsZHJlbikpIHtcclxuICAgICAgICA8YSAjbGluayBbYXR0ci5kYXRhLWxldmVsXT1cImxldmVsXCIgY2xhc3M9XCJoYXMtc3VibWVudVwiIFthcHBUb29sdGlwXT1cImxldmVsID4gMSA/IGNhcHRpb24gOiB1bmRlZmluZWRcIlxyXG4gICAgICAgICAgICBbY2xhc3MudGhpbi1tb2RlXT1cIiF3aWRlTW9kZVwiPlxyXG4gICAgICAgICAgICA8bmctY29udGFpbmVyIChjbGljayk9XCJzdWJBcnJvd0NsaWNrZWQoJGV2ZW50LCBpdGVtKTtmYWxzZVwiPiA8IS0tZmFsc2UgaXMgaW1wb3J0YW50IGhlcmUtLT5cclxuICAgICAgICAgICAgICAgIDxzcGFuICNzdWJBcnJvdyAqbmdJZj1cIighIWl0ZW0ucGljdHVyZUJhc2U2NCB8fCAhIWl0ZW0ucGljdHVyZVVyaSlcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtjbGFzc109XCInaW1nLXNwYW4gcGx1cyBsZXZlbCcgKyBsZXZlbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpbWcgW3NyY109XCJpdGVtLnBpY3R1cmVCYXNlNjQgfHwgaXRlbS5waWN0dXJlVXJpXCIgKm5nSWY9XCIhIWl0ZW0ucGljdHVyZUJhc2U2NFwiPlxyXG4gICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgPHNwYW4gI3N1YkFycm93ICpuZ0lmPVwiISEhaXRlbS5waWN0dXJlQmFzZTY0ICYmICEhIWl0ZW0ucGljdHVyZVVyaVwiXHJcbiAgICAgICAgICAgICAgICAgICAgW2NsYXNzXT1cIidwbHVzIGxldmVsJyArIGxldmVsXCI+PC9zcGFuPlxyXG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICAgICAgICAgIDxpbWcgKm5nSWY9XCIoISFpdGVtLnBpY3R1cmVCYXNlNjQgfHwgISFpdGVtLnBpY3R1cmVVcmkpXCIgW3NyY109XCJpdGVtLnBpY3R1cmVCYXNlNjQgfHwgaXRlbS5waWN0dXJlVXJpXCI+XHJcblxyXG4gICAgICAgICAgICB7eyBjYXB0aW9uIH19XHJcblxyXG4gICAgICAgIDwvYT5cclxuICAgICAgICB9IEBlbHNlIHtcclxuICAgICAgICA8YSBbYXR0ci5kYXRhLWxldmVsXT1cImxldmVsXCIgW3JvdXRlckxpbmtdPVwiaXRlbS51cmxcIiAoY2xpY2spPVwib25DbGljaygkZXZlbnQsIGl0ZW0pXCJcclxuICAgICAgICAgICAgW2NsYXNzLnRoaW4tbW9kZV09XCIhd2lkZU1vZGVcIiBbYXBwVG9vbHRpcF09XCJ3aWRlTW9kZSAmJiBjYXB0aW9uXCI+XHJcbiAgICAgICAgICAgIHt7IGNhcHRpb24gfX1cclxuICAgICAgICA8L2E+XHJcbiAgICAgICAgfVxyXG5cclxuICAgIDwvZGl2PlxyXG5cclxuICAgIEBpZiAoISF3aWRlTW9kZSAmJiAhIWhhc0NoaWxkcmVuICYmICEhaXRlbS50cmVlJENoaWxkcmVuIS5sZW5ndGggJiYgISEhbGVmdGJhclJlZHVjZWQpIHtcclxuICAgIDx1bCAjY2hpbGRyZW4gW2NsYXNzLmV4cGFuZGVkXT1cIiF3aWRlTW9kZSB8fCBpdGVtLnRyZWUkRXhwYW5kZWRcIiBbY2xhc3MudWwtdGhpbi1tb2RlXT1cIiF3aWRlTW9kZVwiIFtuZ1N0eWxlXT1cIntcclxuICAgICAgICAgICAgcGFkZGluZzogMCxcclxuICAgICAgICAgICAgd2lkdGg6ICEhd2lkZU1vZGUgPyAobGF5b3V0U2VydmljZS5sZWZ0QmFyQ3VycmVudFdpZHRoJC52YWx1ZSAtIGxheW91dFNlcnZpY2UuYmFzaWNTcGFjaW5nIC0gbGF5b3V0U2VydmljZS5zY3JvbGxCYXJXaWR0aCArIDUgKyAncHgnKSA6ICggbGF5b3V0U2VydmljZS5sZWZ0QmFyV2lkZVdpZHRoJC52YWx1ZSArICdweCcgKSxcclxuICAgICAgICB9XCIgW2NsYXNzLnN1Ym1lbnVdPVwiIXdpZGVNb2RlXCI+XHJcbiAgICAgICAgPGRpdj5cclxuICAgICAgICAgICAgQGZvciAoY2hpbGQgb2YgaXRlbS50cmVlJENoaWxkcmVuOyB0cmFjayAkaW5kZXgpIHtcclxuICAgICAgICAgICAgPGFwcC1pdGVtIFtpdGVtXT1cImNoaWxkXCIgW2xldmVsXT1cImxldmVsKzFcIiAoY2xpY2tlZCk9XCJvbkNsaWNrKCRldmVudCwgY2hpbGQpXCI+PC9hcHAtaXRlbT5cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC91bD5cclxuICAgIH1cclxuXHJcbjwvbGk+Il19
|
|
199
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXRlbS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtaGlzdGFmZi1hbHBoYS9zcmMvbGliL2FwcC9saWJyYXJpZXMvbmF2aWdhdG9yL25hdmlnYXRvci9pdGVtLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1oaXN0YWZmLWFscGhhL3NyYy9saWIvYXBwL2xpYnJhcmllcy9uYXZpZ2F0b3IvbmF2aWdhdG9yL2l0ZW0uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYyxLQUFLLEVBQXFCLFNBQVMsRUFBRSxpQkFBaUIsRUFBdUYsTUFBTSxlQUFlLENBQUM7QUFFbk0sT0FBTyxFQUFVLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBTXZELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNuRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0scUNBQXFDLENBQUM7Ozs7Ozs7O0FBZ0JyRSxNQUFNLE9BQU8sYUFBYTtJQXFCeEIsWUFDVSxNQUFjLEVBQ2YsZ0JBQWtDLEVBQ2pDLEdBQXlCLEVBQzFCLGFBQTRCLEVBQzNCLFdBQXdCO1FBSnhCLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDZixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQ2pDLFFBQUcsR0FBSCxHQUFHLENBQXNCO1FBQzFCLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBQzNCLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBZmxDLGdCQUFXLEdBQVksS0FBSyxDQUFDO1FBRTdCLGFBQVEsR0FBWSxLQUFLLENBQUM7UUFFMUIsa0JBQWEsR0FBbUIsRUFBRSxDQUFDO1FBR25DLGlCQUFZLEdBQVcsRUFB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O21NQUk1QixJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNXLEVBQUU7c0JBQWxCLFNBQVM7dUJBQUMsSUFBSTtnQkFDUSxRQUFRO3NCQUE5QixTQUFTO3VCQUFDLFVBQVU7Z0JBQ0YsSUFBSTtzQkFBdEIsU0FBUzt1QkFBQyxNQUFNO2dCQUNNLFFBQVE7c0JBQTlCLFNBQVM7dUJBQUMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRWxlbWVudFJlZiwgSW5wdXQsIE9uSW5pdCwgT25EZXN0cm95LCBWaWV3Q2hpbGQsIFZpZXdFbmNhcHN1bGF0aW9uLCBDaGFuZ2VEZXRlY3RvclJlZiwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIE9uQ2hhbmdlcywgU2ltcGxlQ2hhbmdlcywgQWZ0ZXJWaWV3SW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgUm91dGVyLCBSb3V0ZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQgeyBOYXZpZ2F0b3JTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvbmF2aWdhdG9yLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBNdWx0aUxhbmd1YWdlU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL211bHRpLWxhbmd1YWdlLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBMYXlvdXRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvbGF5b3V0LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBJTmF2aWdhdG9ySXRlbSB9IGZyb20gJy4uLy4uLy4uL2ludGVyZmFjZXMvSU5hdmlnYXRvckl0ZW0nO1xyXG5pbXBvcnQgeyBNZW51U2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL21lbnUuc2VydmljZSc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IFRvb2x0aXBEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi90b29sdGlwL3Rvb2x0aXAuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgU3RyaW5nSHRtbFBpcGUgfSBmcm9tICcuLi8uLi8uLi9hcHAtcGlwZXMvc3RyaW5nLWh0bWwucGlwZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FwcC1pdGVtJyxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIENvbW1vbk1vZHVsZSxcclxuICAgIFJvdXRlck1vZHVsZSxcclxuICAgIFRvb2x0aXBEaXJlY3RpdmUsXHJcbiAgICBTdHJpbmdIdG1sUGlwZSxcclxuICAgIFxyXG4gIF0sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2l0ZW0uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2l0ZW0uY29tcG9uZW50LnNjc3MnXSxcclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBJdGVtQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzLCBPbkluaXQsIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSB7XHJcblxyXG4gIEBJbnB1dCgpIGl0ZW0hOiBJTmF2aWdhdG9ySXRlbTtcclxuICBASW5wdXQoKSBsZXZlbCE6IG51bWJlcjtcclxuICBAVmlld0NoaWxkKCdtZScpIG1lITogRWxlbWVudFJlZjtcclxuICBAVmlld0NoaWxkKCdjaGlsZHJlbicpIGNoaWxkcmVuITogRWxlbWVudFJlZjtcclxuICBAVmlld0NoaWxkKCdsaW5rJykgbGluayE6IEVsZW1lbnRSZWY7XHJcbiAgQFZpZXdDaGlsZCgnc3ViQXJyb3cnKSBzdWJBcnJvdyE6IEVsZW1lbnRSZWY7XHJcblxyXG4gIGNhcHRpb24hOiBzdHJpbmc7XHJcblxyXG4gIGhhc0NoaWxkcmVuOiBib29sZWFuID0gZmFsc2U7XHJcbiAgbWFpbldpbmRvd1N0YXRlITogc3RyaW5nO1xyXG4gIGV4cGFuZGVkOiBib29sZWFuID0gZmFsc2U7XHJcbiAgbGVmdGJhclJlZHVjZWQhOiBib29sZWFuO1xyXG4gIHN1YnNjcmlwdGlvbnM6IFN1YnNjcmlwdGlvbltdID0gW107XHJcblxyXG4gIHdpZGVNb2RlITogYm9vbGVhbjtcclxuICBjdXJyZW50V2lkdGg6IG51bWJlciA9IDY2O1xyXG4gIGFjdGl2ZSE6IGJvb2xlYW47XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcixcclxuICAgIHB1YmxpYyBuYXZpZ2F0b3JTZXJ2aWNlOiBOYXZpZ2F0b3JTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBtbHM6IE11bHRpTGFuZ3VhZ2VTZXJ2aWNlLFxyXG4gICAgcHVibGljIGxheW91dFNlcnZpY2U6IExheW91dFNlcnZpY2UsXHJcbiAgICBwcml2YXRlIG1lbnVTZXJ2aWNlOiBNZW51U2VydmljZSxcclxuICApIHtcclxuICAgIHRoaXMubmF2aWdhdG9yU2VydmljZS53aWRlTW9kZSQuc3Vic2NyaWJlKHggPT4gdGhpcy53aWRlTW9kZSA9IHgpO1xyXG4gICAgdGhpcy5sYXlvdXRTZXJ2aWNlLmxlZnRCYXJDdXJyZW50V2lkdGgkLnN1YnNjcmliZSh4ID0+IHtcclxuICAgICAgdGhpcy5jdXJyZW50V2lkdGggPSB4O1xyXG4gICAgICB0aGlzLm1lPy5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCctLWxlZnQtYmFyLWN1cnJlbnQtd2lkdGgnLCB4ICsgJ3B4JylcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xyXG4gICAgaWYgKGNoYW5nZXNbJ2l0ZW0nXSkge1xyXG4gICAgICBjb25zdCBpdCA9IGNoYW5nZXNbJ2l0ZW0nXTtcclxuICAgICAgaWYgKGl0LmN1cnJlbnRWYWx1ZS5pZCA9PT0gMzgyKSB7XHJcbiAgICAgICAgY29uc29sZS5sb2coXCJpdGVtIDM4MiBjaGFuZ2VkLCBhY3RpdmUgPSBcIiwgdGhpcy5hY3RpdmUpXHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgaWYgKHRoaXMuaXRlbSkge1xyXG4gICAgICBpZiAodGhpcy5pdGVtLnRyZWUkQ2hpbGRyZW4ubGVuZ3RoID4gMCkge1xyXG4gICAgICAgIHRoaXMuaGFzQ2hpbGRyZW4gPSB0cnVlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5uYXZpZ2F0b3JTZXJ2aWNlLmFjdGl2ZUl0ZW1zJC5zdWJzY3JpYmUoYyA9PiB7XHJcbiAgICAgIGlmICghYykgcmV0dXJuO1xyXG4gICAgICB0aGlzLmFjdGl2ZSA9ICEhYy5maWx0ZXIoeCA9PiB4LmlkID09PSB0aGlzLml0ZW0/LmlkKS5sZW5ndGhcclxuICAgICAgaWYgKCEhdGhpcy5hY3RpdmUpIHtcclxuICAgICAgICB0aGlzLm1lPy5uYXRpdmVFbGVtZW50LmNsYXNzTGlzdC5hZGQoXCJhY3RpdmVcIilcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLm1lPy5uYXRpdmVFbGVtZW50LmNsYXNzTGlzdC5yZW1vdmUoXCJhY3RpdmVcIilcclxuICAgICAgfVxyXG4gICAgfSlcclxuXHJcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMucHVzaChcclxuICAgICAgdGhpcy5tbHMubGFuZyQuc3Vic2NyaWJlKF8gPT4ge1xyXG4gICAgICAgIHRoaXMuY2FwdGlvbiA9IHRoaXMubWxzLnRyYW5zKHRoaXMuaXRlbSEuY29kZSlcclxuICAgICAgfSlcclxuICAgIClcclxuXHJcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMucHVzaChcclxuICAgICAgdGhpcy5sYXlvdXRTZXJ2aWNlLmxlZnRiYXJSZWR1Y2VkJC5zdWJzY3JpYmUoeCA9PiB0aGlzLmxlZnRiYXJSZWR1Y2VkID0geClcclxuICAgIClcclxuICB9XHJcblxyXG4gIHN1YkFycm93Q2xpY2tlZChldmVudDogRXZlbnQsIGl0ZW06IElOYXZpZ2F0b3JJdGVtKSB7XHJcblxyXG4gICAgY29uc29sZS5sb2coXCJzdWJBcnJvd0NsaWNrZWQgdHJpZ2dlcmVkXCIpXHJcblxyXG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcblxyXG4gICAgaWYgKCF0aGlzLndpZGVNb2RlKSB7XHJcbiAgICAgIGxldCBuZXdBY3RpdmVJdGVtcyA9IHRoaXMubmF2aWdhdG9yU2VydmljZS5hY3RpdmVJdGVtcyQudmFsdWU7XHJcbiAgICAgIGNvbnNvbGUubG9nKFwic3ViQXJyb3dDbGlja2VkIG5ld0FjdGl2ZUl0ZW1zIGJlNCBmaWx0ZXJpbmdcIiwgbmV3QWN0aXZlSXRlbXMpXHJcbiAgICAgIG5ld0FjdGl2ZUl0ZW1zID0gbmV3QWN0aXZlSXRlbXMuZmlsdGVyKHggPT4geC50cmVlJFRpZXIhIDwgaXRlbS50cmVlJFRpZXIhKTtcclxuICAgICAgbmV3QWN0aXZlSXRlbXMucHVzaChpdGVtKTtcclxuICAgICAgY29uc29sZS5sb2coXCJzdWJBcnJvd0NsaWNrZWQgbmV3QWN0aXZlSXRlbXNcIiwgbmV3QWN0aXZlSXRlbXMpXHJcbiAgICAgIHRoaXMubmF2aWdhdG9yU2VydmljZS5hY3RpdmVJdGVtcyQubmV4dChuZXdBY3RpdmVJdGVtcyk7XHJcbiAgICB9XHJcblxyXG5cclxuICAgIGlmICh0aGlzLmNoaWxkcmVuLm5hdGl2ZUVsZW1lbnQuY2xhc3NOYW1lID09PSAnY2hpbGQgc3ViLW1lbnUnKSB7XHJcbiAgICAgIHRoaXMuY2hpbGRyZW4ubmF0aXZlRWxlbWVudC5jbGFzc05hbWUgPSAnY2hpbGQgc3ViLW1lbnUgZXhwYW5kZWQnO1xyXG4gICAgICB0aGlzLnN1YkFycm93Lm5hdGl2ZUVsZW1lbnQuY2xhc3NOYW1lID0gdGhpcy5zdWJBcnJvdy5uYXRpdmVFbGVtZW50LmNsYXNzTmFtZS5yZXBsYWNlKCcgcGx1cycsICcnKSArICcgbWludXMnO1xyXG4gICAgfSBlbHNlIGlmICh0aGlzLmNoaWxkcmVuLm5hdGl2ZUVsZW1lbnQuY2xhc3NOYW1lID09PSAnY2hpbGQgc3ViLW1lbnUgZXhwYW5kZWQnKSB7XHJcbiAgICAgIHRoaXMuY2hpbGRyZW4ubmF0aXZlRWxlbWVudC5jbGFzc05hbWUgPSAnY2hpbGQgc3ViLW1lbnUnO1xyXG4gICAgICB0aGlzLnN1YkFycm93Lm5hdGl2ZUVsZW1lbnQuY2xhc3NOYW1lID0gdGhpcy5zdWJBcnJvdy5uYXRpdmVFbGVtZW50LmNsYXNzTmFtZS5yZXBsYWNlKCcgbWludXMnLCAnJykgKyAnIHBsdXMnO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgb25DbGljayhldmVudDogYW55LCBpdGVtOiBJTmF2aWdhdG9ySXRlbSkge1xyXG5cclxuICAgIGNvbnNvbGUubG9nKFwib25DbGljayB0cmlnZ2VyZWRcIilcclxuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICBldmVudC5zdG9wSW1tZWRpYXRlUHJvcGFnYXRpb24oKTtcclxuXHJcbiAgICBpZiAoIXRoaXMud2lkZU1vZGUpIHtcclxuXHJcbiAgICAgIHRoaXMub25Nb2R1bGVJY29uQ2xpY2soZXZlbnQsIGl0ZW0pO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKCEhdGhpcy53aWRlTW9kZSAmJiB0aGlzLml0ZW0hLnRyZWUkU2VsZWN0ZWQgPT0gdHJ1ZSAmJiAhIXRoaXMuaXRlbSEudHJlZSRQYXJlbnQgJiYgKHRoaXMuaXRlbSEudHJlZSRUaWVyICE9IDIgfHwgdGhpcy5pdGVtIS50cmVlJFRpZXIgPT0gMiAmJiB0aGlzLml0ZW0hLnRyZWUkQ2hpbGRyZW4ubGVuZ3RoID09IDApKSB7XHJcbiAgICAgIHJldHVyblxyXG4gICAgfVxyXG5cclxuICAgIGlmICh0aGlzLndpZGVNb2RlKSB7XHJcbiAgICAgIGlmICh0aGlzLmNoaWxkcmVuKSB7XHJcbiAgICAgICAgY29uc3QgZWwgPSB0aGlzLmNoaWxkcmVuLm5hdGl2ZUVsZW1lbnQ7XHJcbiAgICAgICAgY29uc3QgcmVjdCA9IGVsLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xyXG4gICAgICAgIGNvbnN0IGhlaWdodCA9IHJlY3QuaGVpZ2h0O1xyXG4gICAgICAgIGlmIChoZWlnaHQgPT09IDApIHtcclxuICAgICAgICAgIGl0ZW0udHJlZSRTZWxlY3RlZCA9IHRydWU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgaWYgKGl0ZW0udHJlZSRUaWVyID09IDEgfHwgaXRlbS50cmVlJFRpZXIgPT0gMikge1xyXG4gICAgICAgICAgICBpdGVtLnRyZWUkU2VsZWN0ZWQgPSBmYWxzZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5tZS5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCctLWNoaWxkcmVuLWhlaWdodCcsIGhlaWdodCArICdweCcpXHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgaXRlbS50cmVlJFNlbGVjdGVkID0gdHJ1ZTtcclxuICAgICAgICB0aGlzLm1lbnVTZXJ2aWNlLm5hdmlnYXRpb24kLnZhbHVlLm1hcCh4ID0+IHtcclxuICAgICAgICAgIGlmICh4LnRyZWUkQ2hpbGRyZW4pIHtcclxuICAgICAgICAgICAgeC50cmVlJENoaWxkcmVuLm1hcCgoeTogYW55KSA9PiB7XHJcbiAgICAgICAgICAgICAgaWYgKHkudHJlZSRDaGlsZHJlbikge1xyXG4gICAgICAgICAgICAgICAgeS50cmVlJENoaWxkcmVuLm1hcCgoejogYW55KSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgIGlmICh6ICE9IGl0ZW0pIHtcclxuICAgICAgICAgICAgICAgICAgICB6LnRyZWUkU2VsZWN0ZWQgPSBmYWxzZVxyXG4gICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAgIH0gZWxzZSBpZiAoeSAhPSBpdGVtKSB7XHJcbiAgICAgICAgICAgICAgICB5LnRyZWUkU2VsZWN0ZWQgPSBmYWxzZTtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSlcclxuICAgICAgfVxyXG5cclxuICAgIH1cclxuXHJcbiAgICB0aGlzLm5hdmlnYXRvclNlcnZpY2UuY2xpY2tlZEl0ZW0kLm5leHQoaXRlbSlcclxuXHJcbiAgICBpZiAoISFpdGVtLnRyZWUkUGFyZW50KSB7XHJcbiAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKCdtZW51Q3VycmVudENsaWNrZWQnLCBKU09OLnN0cmluZ2lmeShpdGVtKSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvbk1vZHVsZUljb25DbGljayhldmVudDogYW55LCBpdGVtOiBJTmF2aWdhdG9ySXRlbSkge1xyXG4gICAgY29uc29sZS5sb2coXCJvbk1vZHVsZUljb25DbGljayB0cmlnZ2VyZWRcIilcclxuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xyXG5cclxuICAgIGlmICghdGhpcy5uYXZpZ2F0b3JTZXJ2aWNlLmNsaWNrZWRJdGVtJC52YWx1ZSkge1xyXG4gICAgICB0aGlzLm5hdmlnYXRvclNlcnZpY2UuY2xpY2tlZEl0ZW0kLm5leHQoaXRlbSk7XHJcbiAgICAgIHRoaXMubmF2aWdhdG9yU2VydmljZS5hY3RpdmVJdGVtcyQubmV4dChbaXRlbV0pO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgaWYgKHRoaXMud2lkZU1vZGUpIHtcclxuICAgICAgICB0aGlzLm5hdmlnYXRvclNlcnZpY2UuY2xpY2tlZEl0ZW0kLm5leHQoaXRlbSk7XHJcbiAgICAgICAgdGhpcy5uYXZpZ2F0b3JTZXJ2aWNlLmFjdGl2ZUl0ZW1zJC5uZXh0KFtpdGVtXSk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgaWYgKHRoaXMubmF2aWdhdG9yU2VydmljZS5jbGlja2VkSXRlbSQudmFsdWUuaWQgIT09IGl0ZW0uaWQpIHtcclxuICAgICAgICAgIHRoaXMubmF2aWdhdG9yU2VydmljZS5jbGlja2VkSXRlbSQubmV4dChpdGVtKTtcclxuICAgICAgICAgIHRoaXMubmF2aWdhdG9yU2VydmljZS5hY3RpdmVJdGVtcyQubmV4dChbaXRlbV0pO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICB0aGlzLm5hdmlnYXRvclNlcnZpY2UuY2xpY2tlZEl0ZW0kLm5leHQobnVsbCk7XHJcbiAgICAgICAgICB0aGlzLm5hdmlnYXRvclNlcnZpY2UuYWN0aXZlSXRlbXMkLm5leHQoW10pO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICB9XHJcblxyXG4gIGNoZWNrQWN0aXZlKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuYWN0aXZlO1xyXG4gIH1cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIHRoaXMubWUubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnLS1iZy1jb2xvcicsIHRoaXMubmF2aWdhdG9yU2VydmljZS5iYWNrZ3JvdW5kQ29sb3IpO1xyXG4gICAgICB0aGlzLm1lLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJy0tY29sb3InLCB0aGlzLm5hdmlnYXRvclNlcnZpY2UuY29sb3IpO1xyXG4gICAgICB0aGlzLm1lLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJy0taG92ZXItYmctY29sb3InLCB0aGlzLm5hdmlnYXRvclNlcnZpY2UuaG92ZXJCYWNrZ3JvdW5kQ29sb3IpO1xyXG4gICAgICB0aGlzLm1lLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJy0taG92ZXItY29sb3InLCB0aGlzLm5hdmlnYXRvclNlcnZpY2UuaG92ZXJDb2xvcik7XHJcbiAgICAgIHRoaXMubWUubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnLS1pY29uLWJvcmRlci1yYWRpdXMnLCB0aGlzLm5hdmlnYXRvclNlcnZpY2UuaWNvbkJvcmRlclJhZGl1cyArICdweCcpO1xyXG4gICAgICB0aGlzLm1lLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJy0taWNvbi1ndXR0ZXIteScsIHRoaXMubmF2aWdhdG9yU2VydmljZS5pY29uR3V0dGVyWSArICdweCcpO1xyXG4gICAgfSlcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5zdWJzY3JpcHRpb25zLm1hcCh4ID0+IHgudW5zdWJzY3JpYmUoKSlcclxuICB9XHJcblxyXG59XHJcbiIsIjxsaSAjbWUgW2lkXT1cIidtYWluLW1lbnUtJyArIGl0ZW0uaWRcIiBjbGFzcz1cInBhcmVudFwiIFthdHRyLmRhdGEtbGV2ZWxdPVwibGV2ZWxcIiBbY2xhc3MucmVkdWNlZF09XCJsZWZ0YmFyUmVkdWNlZFwiXHJcbiAgICBbY2xhc3MuYWN0aXZlXT1cIiF3aWRlTW9kZSAmJiBhY3RpdmVcIiBbY2xhc3MuZXhwYW5kZWRdPVwiaXRlbS50cmVlJEV4cGFuZGVkXCJcclxuICAgIFtjbGFzcy5oaWdobGlnaHRlZF09XCJpdGVtLnRyZWUkSGlnaGxpZ2h0ZWRcIiBbY2xhc3MubGktdGhpbi1tb2RlXT1cIiF3aWRlTW9kZVwiIFtjbGFzcy5tZW51LWl0ZW1dPVwiIXdpZGVNb2RlXCJcclxuICAgIFthcHBUb29sdGlwXT1cImxldmVsPT09MSAmJiAhYWN0aXZlID8gY2FwdGlvbiA6IHVuZGVmaW5lZFwiIFtwb3NpdGlvbl09XCIncmlnaHQnXCIgW25nU3R5bGVdPVwie1xyXG4gICAgICAgIG1hcmdpblRvcDogKGxldmVsPT09MSAmJiAhd2lkZU1vZGUpID8gbmF2aWdhdG9yU2VydmljZS5pY29uR3V0dGVyWSArICdweCcgOiAnJyxcclxuICAgICAgICBtYXJnaW5Cb3R0b206IChsZXZlbD09PTEgJiYgIXdpZGVNb2RlKSA/IG5hdmlnYXRvclNlcnZpY2UuaWNvbkd1dHRlclkgKyAncHgnIDogJydcclxuICAgIH1cIj5cclxuICAgIDxkaXYgY2xhc3M9XCJtZW51LWl0ZW0td3JhcHBlclwiIFthdHRyLmRhdGEtbGV2ZWxdPVwibGV2ZWxcIiAoY2xpY2spPVwib25DbGljaygkZXZlbnQsIGl0ZW0pXCJcclxuICAgICAgICBbY2xhc3MubW9kdWxlLXRoaW4tbW9kZV09XCIhd2lkZU1vZGUgJiYgbGV2ZWw9PT0xXCIgW2NsYXNzLnRoaW4tYnJhbmNoXT1cIiF3aWRlTW9kZSAmJiBsZXZlbCA+IDFcIiBbbmdTdHlsZV09XCJ7XHJcbiAgICAgICAgICAgIGJvcmRlclJhZGl1czogKGxldmVsPT09MSAmJiAhd2lkZU1vZGUpID8gbmF2aWdhdG9yU2VydmljZS5pY29uQm9yZGVyUmFkaXVzICsgJ3B4JyA6ICcnXHJcbiAgICAgICAgfVwiPlxyXG5cclxuICAgICAgICBAaWYgKHdpZGVNb2RlKSB7XHJcbiAgICAgICAgQGlmICghISFsZWZ0YmFyUmVkdWNlZCkge1xyXG4gICAgICAgIEBpZiAoISFoYXNDaGlsZHJlbikge1xyXG4gICAgICAgIEBpZiAoIWl0ZW0udHJlZSRTZWxlY3RlZCkge1xyXG4gICAgICAgIDxpIFthdHRyLmRhdGEtbGV2ZWxdPVwibGV2ZWxcIiBjbGFzcz1cImN1c3RvbS1pY29uLXBhcmVudC1yaWdodFwiPjwvaT5cclxuICAgICAgICB9IEBlbHNlIHtcclxuICAgICAgICA8aSBbYXR0ci5kYXRhLWxldmVsXT1cImxldmVsXCIgY2xhc3M9XCJjdXN0b20taWNvbi1wYXJlbnQtZG93blwiPjwvaT5cclxuICAgICAgICB9XHJcbiAgICAgICAgfSBAZWxzZSB7XHJcbiAgICAgICAgQGlmIChpdGVtLnRyZWUkU2VsZWN0ZWQgJiYgaXRlbS5jb2RlICE9PSAnTUVOVS5EQVNIQk9BUkQnICYmIGl0ZW0uY29kZSAhPT0gJ01FTlUuSE9NRScpIHtcclxuICAgICAgICA8aSBbYXR0ci5kYXRhLWxldmVsXT1cImxldmVsXCIgY2xhc3M9XCJjdXN0b20taWNvbi1jaGlsZC1yaWdodFwiPjwvaT5cclxuICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpZiAoISFpdGVtLmljb25TdmcpIHtcclxuICAgICAgICA8aSBbYXR0ci5kYXRhLWxldmVsXT1cImxldmVsXCIgY2xhc3M9XCInbW9kdWxlLWljb24nXCJcclxuICAgICAgICAgICAgW2FwcFRvb2x0aXBdPVwid2lkZU1vZGUgPyBjYXB0aW9uIDogdW5kZWZpbmVkXCIgKGNsaWNrKT1cIm9uTW9kdWxlSWNvbkNsaWNrKCRldmVudCwgaXRlbSk7ZmFsc2VcIiBbbmdTdHlsZV09XCJ7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogJ2Fic29sdXRlJyxcclxuICAgICAgICAgICAgICAgIGxlZnQ6IHdpZGVNb2RlID8gJzIwcHgnIDogJ3Vuc2V0J1xyXG4gICAgICAgICAgICB9XCI+PHNwYW4gW2lubmVySHRtbF09XCJpdGVtLmljb25TdmcgfCBzdHJpbmdIdG1sXCI+PC9zcGFuPjwvaT5cclxuXHJcbiAgICAgICAgPCEtLSA8c3BhbiBbaW5uZXJIdG1sXT1cIml0ZW0uaWNvblN2ZyB8IHN0cmluZ0h0bWxcIj48L3NwYW4+IC0tPlxyXG4gICAgICAgIH0gQGVsc2UgaWYgKCEhaXRlbS5pY29uQ2xhc3MpIHtcclxuICAgICAgICA8aSBbYXR0ci5kYXRhLWxldmVsXT1cImxldmVsXCIgW2NsYXNzXT1cIml0ZW0uaWNvbkNsYXNzICsgJyBtb2R1bGUtaWNvbidcIlxyXG4gICAgICAgICAgICBbYXBwVG9vbHRpcF09XCJ3aWRlTW9kZSA/IGNhcHRpb24gOiB1bmRlZmluZWRcIiAoY2xpY2spPVwib25Nb2R1bGVJY29uQ2xpY2soJGV2ZW50LCBpdGVtKTtmYWxzZVwiIFtuZ1N0eWxlXT1cIntcclxuICAgICAgICAgICAgICAgIGxlZnQ6IHdpZGVNb2RlID8gJzIwcHgnIDogJ3Vuc2V0J1xyXG4gICAgICAgICAgICB9XCI+PC9pPlxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGlmICghd2lkZU1vZGUgfHwgKCFsZWZ0YmFyUmVkdWNlZCAmJiBoYXNDaGlsZHJlbikpIHtcclxuICAgICAgICA8YSAjbGluayBbYXR0ci5kYXRhLWxldmVsXT1cImxldmVsXCIgY2xhc3M9XCJoYXMtc3VibWVudVwiIFthcHBUb29sdGlwXT1cImxldmVsID4gMSA/IGNhcHRpb24gOiB1bmRlZmluZWRcIlxyXG4gICAgICAgICAgICBbY2xhc3MudGhpbi1tb2RlXT1cIiF3aWRlTW9kZVwiPlxyXG4gICAgICAgICAgICA8bmctY29udGFpbmVyIChjbGljayk9XCJzdWJBcnJvd0NsaWNrZWQoJGV2ZW50LCBpdGVtKTtmYWxzZVwiPiA8IS0tZmFsc2UgaXMgaW1wb3J0YW50IGhlcmUtLT5cclxuICAgICAgICAgICAgICAgIDxzcGFuICNzdWJBcnJvdyAqbmdJZj1cIighIWl0ZW0ucGljdHVyZUJhc2U2NCB8fCAhIWl0ZW0ucGljdHVyZVVyaSlcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtjbGFzc109XCInaW1nLXNwYW4gcGx1cyBsZXZlbCcgKyBsZXZlbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpbWcgW3NyY109XCJpdGVtLnBpY3R1cmVCYXNlNjQgfHwgaXRlbS5waWN0dXJlVXJpXCIgKm5nSWY9XCIhIWl0ZW0ucGljdHVyZUJhc2U2NFwiPlxyXG4gICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgPHNwYW4gI3N1YkFycm93ICpuZ0lmPVwiISEhaXRlbS5waWN0dXJlQmFzZTY0ICYmICEhIWl0ZW0ucGljdHVyZVVyaVwiXHJcbiAgICAgICAgICAgICAgICAgICAgW2NsYXNzXT1cIidwbHVzIGxldmVsJyArIGxldmVsXCI+PC9zcGFuPlxyXG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICAgICAgICAgIDxpbWcgKm5nSWY9XCIoISFpdGVtLnBpY3R1cmVCYXNlNjQgfHwgISFpdGVtLnBpY3R1cmVVcmkpXCIgW3NyY109XCJpdGVtLnBpY3R1cmVCYXNlNjQgfHwgaXRlbS5waWN0dXJlVXJpXCI+XHJcblxyXG4gICAgICAgICAgICB7eyBjYXB0aW9uIH19XHJcblxyXG4gICAgICAgIDwvYT5cclxuICAgICAgICB9IEBlbHNlIHtcclxuICAgICAgICA8YSBbYXR0ci5kYXRhLWxldmVsXT1cImxldmVsXCIgW3JvdXRlckxpbmtdPVwiaXRlbS51cmxcIiAoY2xpY2spPVwib25DbGljaygkZXZlbnQsIGl0ZW0pXCJcclxuICAgICAgICAgICAgW2NsYXNzLnRoaW4tbW9kZV09XCIhd2lkZU1vZGVcIiBbYXBwVG9vbHRpcF09XCJ3aWRlTW9kZSAmJiBjYXB0aW9uXCI+XHJcbiAgICAgICAgICAgIHt7IGNhcHRpb24gfX1cclxuICAgICAgICA8L2E+XHJcbiAgICAgICAgfVxyXG5cclxuICAgIDwvZGl2PlxyXG5cclxuICAgIEBpZiAoISF3aWRlTW9kZSAmJiAhIWhhc0NoaWxkcmVuICYmICEhaXRlbS50cmVlJENoaWxkcmVuIS5sZW5ndGggJiYgISEhbGVmdGJhclJlZHVjZWQpIHtcclxuICAgIDx1bCAjY2hpbGRyZW4gW2NsYXNzLmV4cGFuZGVkXT1cIiF3aWRlTW9kZSB8fCBpdGVtLnRyZWUkRXhwYW5kZWRcIiBbY2xhc3MudWwtdGhpbi1tb2RlXT1cIiF3aWRlTW9kZVwiIFtuZ1N0eWxlXT1cIntcclxuICAgICAgICAgICAgcGFkZGluZzogMCxcclxuICAgICAgICAgICAgd2lkdGg6ICEhd2lkZU1vZGUgPyAobGF5b3V0U2VydmljZS5sZWZ0QmFyQ3VycmVudFdpZHRoJC52YWx1ZSAtIGxheW91dFNlcnZpY2UuYmFzaWNTcGFjaW5nIC0gbGF5b3V0U2VydmljZS5zY3JvbGxCYXJXaWR0aCArIDUgKyAncHgnKSA6ICggbGF5b3V0U2VydmljZS5sZWZ0QmFyV2lkZVdpZHRoJC52YWx1ZSArICdweCcgKSxcclxuICAgICAgICB9XCIgW2NsYXNzLnN1Ym1lbnVdPVwiIXdpZGVNb2RlXCI+XHJcbiAgICAgICAgPGRpdj5cclxuICAgICAgICAgICAgQGZvciAoY2hpbGQgb2YgaXRlbS50cmVlJENoaWxkcmVuOyB0cmFjayAkaW5kZXgpIHtcclxuICAgICAgICAgICAgPGFwcC1pdGVtIFtpdGVtXT1cImNoaWxkXCIgW2xldmVsXT1cImxldmVsKzFcIiAoY2xpY2tlZCk9XCJvbkNsaWNrKCRldmVudCwgY2hpbGQpXCI+PC9hcHAtaXRlbT5cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC91bD5cclxuICAgIH1cclxuXHJcbjwvbGk+Il19
|