aril 0.1.3 → 0.1.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/theme/layout/app/menu/app.menu.component.mjs +9 -7
- package/esm2022/theme/layout/app/topbar/app.topbar.component.mjs +1 -1
- package/esm2022/ui/rolePicker/aril-ui-rolePicker.mjs +5 -0
- package/esm2022/ui/rolePicker/index.mjs +2 -0
- package/esm2022/ui/rolePicker/src/interface.mjs +2 -0
- package/esm2022/ui/rolePicker/src/role-picker.component.mjs +54 -0
- package/fesm2022/aril-theme-layout.mjs +9 -7
- package/fesm2022/aril-theme-layout.mjs.map +1 -1
- package/fesm2022/aril-ui-rolePicker.mjs +61 -0
- package/fesm2022/aril-ui-rolePicker.mjs.map +1 -0
- package/package.json +148 -142
- package/theme/layout/app/menu/app.menu.component.html +2 -2
- package/theme/layout/app/menu/app.menu.component.ts +3 -2
- package/theme/styles/layout/_sidebar_slim_plus.scss +4 -4
- package/theme/styles/layout/_sidebar_vertical.scss +2 -2
- package/theme/styles/theme/base/components/data/_datatable.scss +4 -4
- package/ui/rolePicker/index.d.ts +1 -0
- package/ui/rolePicker/src/interface.d.ts +40 -0
- package/ui/rolePicker/src/role-picker.component.d.ts +29 -0
|
@@ -239,8 +239,9 @@ export class AppMenuItemComponent {
|
|
|
239
239
|
[tooltipDisabled]="!(isSlim && root)">
|
|
240
240
|
<i [ngClass]="item.icon" class="layout-menuitem-icon"></i>
|
|
241
241
|
|
|
242
|
-
|
|
243
|
-
|
|
242
|
+
@if(item.label) {
|
|
243
|
+
<span class="layout-menuitem-text">{{ item.label }}</span>
|
|
244
|
+
}
|
|
244
245
|
@if (item.items) {
|
|
245
246
|
<i class="pi pi-fw pi-angle-down layout-submenu-toggler"></i>
|
|
246
247
|
}
|
|
@@ -328,8 +329,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
|
|
|
328
329
|
[tooltipDisabled]="!(isSlim && root)">
|
|
329
330
|
<i [ngClass]="item.icon" class="layout-menuitem-icon"></i>
|
|
330
331
|
|
|
331
|
-
|
|
332
|
-
|
|
332
|
+
@if(item.label) {
|
|
333
|
+
<span class="layout-menuitem-text">{{ item.label }}</span>
|
|
334
|
+
}
|
|
333
335
|
@if (item.items) {
|
|
334
336
|
<i class="pi pi-fw pi-angle-down layout-submenu-toggler"></i>
|
|
335
337
|
}
|
|
@@ -386,11 +388,11 @@ export class AppMenuComponent {
|
|
|
386
388
|
this.hostMenuItems = globalThis.hostMenuItems;
|
|
387
389
|
}
|
|
388
390
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AppMenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
389
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.1.2", type: AppMenuComponent, isStandalone: true, selector: "app-menu", ngImport: i0, template: "<ul class=\"layout-menu flex-
|
|
391
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.1.2", type: AppMenuComponent, isStandalone: true, selector: "app-menu", ngImport: i0, template: "<ul class=\"layout-menu h-full flex-column\">\r\n\t@for (item of isHostMode ? hostMenuItems() : menuService.menuItems(); track $index) {\r\n\t\t@if (item.separator) {\r\n\t\t\t<li class=\"menu-separator\"></li>\r\n\t\t} @else {\r\n\t\t\t<li app-menuitem [item]=\"item\" [index]=\"$index\" [root]=\"true\" [class.mt-auto]=\"item.remoteName === 'mng'\"></li>\r\n\t\t}\r\n\t}\r\n</ul>\r\n", dependencies: [{ kind: "component", type: AppMenuItemComponent, selector: "[app-menuitem]", inputs: ["item", "index", "root", "parentKey"] }] }); }
|
|
390
392
|
}
|
|
391
393
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AppMenuComponent, decorators: [{
|
|
392
394
|
type: Component,
|
|
393
|
-
args: [{ standalone: true, selector: 'app-menu', imports: [AppMenuItemComponent], template: "<ul class=\"layout-menu flex-
|
|
395
|
+
args: [{ standalone: true, selector: 'app-menu', imports: [AppMenuItemComponent], template: "<ul class=\"layout-menu h-full flex-column\">\r\n\t@for (item of isHostMode ? hostMenuItems() : menuService.menuItems(); track $index) {\r\n\t\t@if (item.separator) {\r\n\t\t\t<li class=\"menu-separator\"></li>\r\n\t\t} @else {\r\n\t\t\t<li app-menuitem [item]=\"item\" [index]=\"$index\" [root]=\"true\" [class.mt-auto]=\"item.remoteName === 'mng'\"></li>\r\n\t\t}\r\n\t}\r\n</ul>\r\n" }]
|
|
394
396
|
}] });
|
|
395
397
|
export class AppSubMenuComponent {
|
|
396
398
|
constructor() {
|
|
@@ -409,4 +411,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
|
|
|
409
411
|
type: HostBinding,
|
|
410
412
|
args: ['id']
|
|
411
413
|
}] } });
|
|
412
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLm1lbnUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXJpbC90aGVtZS9sYXlvdXQvYXBwL21lbnUvYXBwLm1lbnUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXJpbC90aGVtZS9sYXlvdXQvYXBwL21lbnUvYXBwLm1lbnUuY29tcG9uZW50Lmh0bWwiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hcmlsL3RoZW1lL2xheW91dC9hcHAvbWVudS9hcHAuc3ViLm1lbnUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFrQixPQUFPLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDakcsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzFDLE9BQU8sRUFBRSxTQUFTLEVBQWMsV0FBVyxFQUFFLEtBQUssRUFBcUIsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNoSCxPQUFPLEVBQUUsYUFBYSxFQUFVLFVBQVUsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBR3RGLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzlDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUdoRCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHeEMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGdDQUFnQyxDQUFDOzs7Ozs7O0FBNkdoRSxNQUFNLE9BQU8sb0JBQW9CO0lBbUJoQyxZQUNRLGFBQTRCLEVBQzVCLE1BQWMsRUFDZCxXQUEyQjtRQUYzQixr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QUM7cUJBQ0Y7b0lBTVEsSUFBSTtzQkFBWixLQUFLO2dCQUVHLEtBQUs7c0JBQWIsS0FBSztnQkFFOEMsSUFBSTtzQkFBdkQsS0FBSzs7c0JBQUksV0FBVzt1QkFBQyw0QkFBNEI7Z0JBRXpDLFNBQVM7c0JBQWpCLEtBQUs7Z0JBRWdCLE9BQU87c0JBQTVCLFNBQVM7dUJBQUMsU0FBUztnQkFxTWhCLFdBQVc7c0JBRGQsV0FBVzt1QkFBQyx1QkFBdUI7O0FBc0JyQyxNQUFNLE9BQU8sZ0JBQWdCO0lBTjdCO1FBT0MsZ0JBQVcsR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDckMsZUFBVSxHQUFTLFVBQVcsQ0FBQyxVQUFVLENBQUM7UUFDMUMsa0JBQWEsR0FBUyxVQUFXLENBQUMsYUFBYSxDQUFDO0tBQ2hEOzhHQUpZLGdCQUFnQjtrR0FBaEIsZ0JBQWdCLG9FQzlWN0IsNFVBU0EsNENEa0hhLG9CQUFvQjs7MkZBbU9wQixnQkFBZ0I7a0JBTjVCLFNBQVM7aUNBQ0csSUFBSSxZQUNOLFVBQVUsV0FDWCxDQUFDLG9CQUFvQixDQUFDOztBQWNoQyxNQUFNLE9BQU8sbUJBQW1CO0lBTmhDO1FBT0MsZ0JBQVcsR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7S0FLckM7SUFIQSxJQUF1QixFQUFFO1FBQ3hCLE9BQU8sZUFBZSxHQUFTLFVBQVcsQ0FBQyxRQUFRLENBQUM7SUFDckQsQ0FBQzs4R0FMVyxtQkFBbUI7a0dBQW5CLG1CQUFtQixtSEV6V2hDLDJQQU9BLDRDRm9IYSxvQkFBb0I7OzJGQThPcEIsbUJBQW1CO2tCQU4vQixTQUFTO2lDQUNHLElBQUksWUFDTixjQUFjLFdBQ2YsQ0FBQyxvQkFBb0IsQ0FBQzs4QkFNUixFQUFFO3NCQUF4QixXQUFXO3VCQUFDLElBQUkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBbmltYXRpb25FdmVudCwgYW5pbWF0ZSwgc3RhdGUsIHN0eWxlLCB0cmFuc2l0aW9uLCB0cmlnZ2VyIH0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XHJcbmltcG9ydCB7IE5nQ2xhc3MgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBDb21wb25lbnQsIEVsZW1lbnRSZWYsIEhvc3RCaW5kaW5nLCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQsIFZpZXdDaGlsZCwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE5hdmlnYXRpb25FbmQsIFJvdXRlciwgUm91dGVyTGluaywgUm91dGVyTGlua0FjdGl2ZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcblxyXG5pbXBvcnQgeyBNZW51SXRlbSB9IGZyb20gJ3ByaW1lbmcvYXBpJztcclxuaW1wb3J0IHsgRG9tSGFuZGxlciB9IGZyb20gJ3ByaW1lbmcvZG9tJztcclxuaW1wb3J0IHsgUmlwcGxlTW9kdWxlIH0gZnJvbSAncHJpbWVuZy9yaXBwbGUnO1xyXG5pbXBvcnQgeyBUb29sdGlwTW9kdWxlIH0gZnJvbSAncHJpbWVuZy90b29sdGlwJztcclxuXHJcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBmaWx0ZXIgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcblxyXG5pbXBvcnQgeyBMYXlvdXRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZS9hcHAubGF5b3V0LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBBcHBNZW51U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2UvYXBwLm1lbnUuc2VydmljZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuXHRzdGFuZGFsb25lOiB0cnVlLFxyXG5cdHNlbGVjdG9yOiAnW2FwcC1tZW51aXRlbV0nLFxyXG5cdHRlbXBsYXRlOiBgXHJcblx0XHQ8bmctY29udGFpbmVyPlxyXG5cdFx0XHRAaWYgKHJvb3QpIHtcclxuXHRcdFx0XHQ8ZGl2IGNsYXNzPVwibGF5b3V0LW1lbnVpdGVtLXJvb3QtdGV4dFwiPlxyXG5cdFx0XHRcdFx0e3sgaXRlbS5sYWJlbCB9fVxyXG5cdFx0XHRcdDwvZGl2PlxyXG5cdFx0XHR9XHJcblx0XHRcdEBpZiAoaXRlbS5pdGVtcz8ubGVuZ3RoKSB7XHJcblx0XHRcdFx0PGFcclxuXHRcdFx0XHRcdFtuZ0NsYXNzXT1cInsgJ2FjdGl2ZS1yb290LW1lbnUtaXRlbSc6IHJvb3QgJiYga2V5ID09IG1lbnVTZXJ2aWNlLmFjdGl2ZVJvb3RNZW51SXRlbUtleSgpIH1cIlxyXG5cdFx0XHRcdFx0W2F0dHIuaHJlZl09XCJpdGVtLnVybFwiXHJcblx0XHRcdFx0XHQoY2xpY2spPVwiaXRlbUNsaWNrKCRldmVudClcIlxyXG5cdFx0XHRcdFx0KG1vdXNlZW50ZXIpPVwib25Nb3VzZUVudGVyKClcIlxyXG5cdFx0XHRcdFx0W2F0dHIudGFyZ2V0XT1cIml0ZW0udGFyZ2V0XCJcclxuXHRcdFx0XHRcdHRhYmluZGV4PVwiMFwiXHJcblx0XHRcdFx0XHRwUmlwcGxlXHJcblx0XHRcdFx0XHRbcFRvb2x0aXBdPVwiaXRlbS5sYWJlbFwiXHJcblx0XHRcdFx0XHRbdG9vbHRpcERpc2FibGVkXT1cIiEoaXNTbGltICYmIHJvb3QgJiYgIWFjdGl2ZSlcIj5cclxuXHRcdFx0XHRcdDxpIFtuZ0NsYXNzXT1cIml0ZW0uaWNvblwiIGNsYXNzPVwibGF5b3V0LW1lbnVpdGVtLWljb25cIj48L2k+XHJcblx0XHRcdFx0XHQ8c3BhbiBjbGFzcz1cImxheW91dC1tZW51aXRlbS10ZXh0XCI+e3sgaXRlbS5sYWJlbCB9fTwvc3Bhbj5cclxuXHRcdFx0XHRcdEBpZiAoaXRlbS5pdGVtcykge1xyXG5cdFx0XHRcdFx0XHQ8aSBjbGFzcz1cInBpIHBpLWZ3IHBpLWFuZ2xlLWRvd24gbGF5b3V0LXN1Ym1lbnUtdG9nZ2xlclwiPjwvaT5cclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHQ8L2E+XHJcblx0XHRcdH0gQGVsc2Uge1xyXG5cdFx0XHRcdDxhXHJcblx0XHRcdFx0XHRbbmdDbGFzc109XCJ7ICdhY3RpdmUtcm9vdC1tZW51LWl0ZW0nOiByb290ICYmIGtleSA9PSBtZW51U2VydmljZS5hY3RpdmVSb290TWVudUl0ZW1LZXkoKSB9XCJcclxuXHRcdFx0XHRcdChjbGljayk9XCJpdGVtQ2xpY2soJGV2ZW50KVwiXHJcblx0XHRcdFx0XHQobW91c2VlbnRlcik9XCJvbk1vdXNlRW50ZXIoKVwiXHJcblx0XHRcdFx0XHRbcm91dGVyTGlua109XCJpdGVtLnJvdXRlckxpbmtcIlxyXG5cdFx0XHRcdFx0cm91dGVyTGlua0FjdGl2ZT1cImFjdGl2ZS1yb3V0ZVwiXHJcblx0XHRcdFx0XHRbcm91dGVyTGlua0FjdGl2ZU9wdGlvbnNdPVwiXHJcblx0XHRcdFx0XHRcdGl0ZW0ucm91dGVyTGlua0FjdGl2ZU9wdGlvbnMgfHwge1xyXG5cdFx0XHRcdFx0XHRcdHBhdGhzOiAnZXhhY3QnLFxyXG5cdFx0XHRcdFx0XHRcdHF1ZXJ5UGFyYW1zOiAnaWdub3JlZCcsXHJcblx0XHRcdFx0XHRcdFx0bWF0cml4UGFyYW1zOiAnaWdub3JlZCcsXHJcblx0XHRcdFx0XHRcdFx0ZnJhZ21lbnQ6ICdpZ25vcmVkJ1xyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcIlxyXG5cdFx0XHRcdFx0W2ZyYWdtZW50XT1cIml0ZW0uZnJhZ21lbnRcIlxyXG5cdFx0XHRcdFx0W3F1ZXJ5UGFyYW1zSGFuZGxpbmddPVwiaXRlbS5xdWVyeVBhcmFtc0hhbmRsaW5nXCJcclxuXHRcdFx0XHRcdFtwcmVzZXJ2ZUZyYWdtZW50XT1cIml0ZW0ucHJlc2VydmVGcmFnbWVudFwiXHJcblx0XHRcdFx0XHRbc2tpcExvY2F0aW9uQ2hhbmdlXT1cIml0ZW0uc2tpcExvY2F0aW9uQ2hhbmdlXCJcclxuXHRcdFx0XHRcdFtyZXBsYWNlVXJsXT1cIml0ZW0ucmVwbGFjZVVybFwiXHJcblx0XHRcdFx0XHRbc3RhdGVdPVwiaXRlbS5zdGF0ZVwiXHJcblx0XHRcdFx0XHRbcXVlcnlQYXJhbXNdPVwiaXRlbS5xdWVyeVBhcmFtc1wiXHJcblx0XHRcdFx0XHRbYXR0ci50YXJnZXRdPVwiaXRlbS50YXJnZXRcIlxyXG5cdFx0XHRcdFx0dGFiaW5kZXg9XCIwXCJcclxuXHRcdFx0XHRcdHBSaXBwbGVcclxuXHRcdFx0XHRcdFtwVG9vbHRpcF09XCJpdGVtLmxhYmVsXCJcclxuXHRcdFx0XHRcdFt0b29sdGlwRGlzYWJsZWRdPVwiIShpc1NsaW0gJiYgcm9vdClcIj5cclxuXHRcdFx0XHRcdDxpIFtuZ0NsYXNzXT1cIml0ZW0uaWNvblwiIGNsYXNzPVwibGF5b3V0LW1lbnVpdGVtLWljb25cIj48L2k+XHJcblxyXG5cdFx0XHRcdFx0PHNwYW4gY2xhc3M9XCJsYXlvdXQtbWVudWl0ZW0tdGV4dFwiPnt7IGl0ZW0ubGFiZWwgfX08L3NwYW4+XHJcblxyXG5cdFx0XHRcdFx0QGlmIChpdGVtLml0ZW1zKSB7XHJcblx0XHRcdFx0XHRcdDxpIGNsYXNzPVwicGkgcGktZncgcGktYW5nbGUtZG93biBsYXlvdXQtc3VibWVudS10b2dnbGVyXCI+PC9pPlxyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdDwvYT5cclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0QGlmIChpdGVtLml0ZW1zKSB7XHJcblx0XHRcdFx0PHVsICNzdWJtZW51IFtAY2hpbGRyZW5dPVwic3VibWVudUFuaW1hdGlvblwiIChAY2hpbGRyZW4uZG9uZSk9XCJvblN1Ym1lbnVBbmltYXRlZCgkZXZlbnQpXCI+XHJcblx0XHRcdFx0XHRAZm9yIChjaGlsZCBvZiBpdGVtLml0ZW1zOyB0cmFjayBjaGlsZDsgbGV0IGkgPSAkaW5kZXgpIHtcclxuXHRcdFx0XHRcdFx0PGxpIGFwcC1tZW51aXRlbSBbaXRlbV09XCJjaGlsZFwiIFtpbmRleF09XCJpXCIgW3BhcmVudEtleV09XCJrZXlcIj48L2xpPlxyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdDwvdWw+XHJcblx0XHRcdH1cclxuXHRcdDwvbmctY29udGFpbmVyPlxyXG5cdGAsXHJcblx0aW1wb3J0czogW05nQ2xhc3MsIFJvdXRlckxpbmssIFJvdXRlckxpbmtBY3RpdmUsIFRvb2x0aXBNb2R1bGUsIFJpcHBsZU1vZHVsZV0sXHJcblx0YW5pbWF0aW9uczogW1xyXG5cdFx0dHJpZ2dlcignY2hpbGRyZW4nLCBbXHJcblx0XHRcdHN0YXRlKFxyXG5cdFx0XHRcdCdjb2xsYXBzZWQnLFxyXG5cdFx0XHRcdHN0eWxlKHtcclxuXHRcdFx0XHRcdGhlaWdodDogJzAnXHJcblx0XHRcdFx0fSlcclxuXHRcdFx0KSxcclxuXHRcdFx0c3RhdGUoXHJcblx0XHRcdFx0J2V4cGFuZGVkJyxcclxuXHRcdFx0XHRzdHlsZSh7XHJcblx0XHRcdFx0XHRoZWlnaHQ6ICcqJ1xyXG5cdFx0XHRcdH0pXHJcblx0XHRcdCksXHJcblx0XHRcdHN0YXRlKFxyXG5cdFx0XHRcdCdoaWRkZW4nLFxyXG5cdFx0XHRcdHN0eWxlKHtcclxuXHRcdFx0XHRcdGRpc3BsYXk6ICdub25lJ1xyXG5cdFx0XHRcdH0pXHJcblx0XHRcdCksXHJcblx0XHRcdHN0YXRlKFxyXG5cdFx0XHRcdCd2aXNpYmxlJyxcclxuXHRcdFx0XHRzdHlsZSh7XHJcblx0XHRcdFx0XHRkaXNwbGF5OiAnYmxvY2snXHJcblx0XHRcdFx0fSlcclxuXHRcdFx0KSxcclxuXHRcdFx0dHJhbnNpdGlvbignY29sbGFwc2VkIDw9PiBleHBhbmRlZCcsIGFuaW1hdGUoJzQwMG1zIGN1YmljLWJlemllcigwLjg2LCAwLCAwLjA3LCAxKScpKVxyXG5cdFx0XSlcclxuXHRdLFxyXG5cdHN0eWxlczogW1xyXG5cdFx0Jy5hY3RpdmUtcm9vdC1tZW51LWl0ZW0geyBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTsgJiA+IGksc3BhbiB7IGNvbG9yOiB2YXIoLS1wcmltYXJ5LWZvcmVncm91bmQpICFpbXBvcnRhbnQ7IH0gJiA+IHNwYW4geyBmb250LXdlaWdodDogNzAwOyB9IH0nXHJcblx0XVxyXG59KVxyXG5leHBvcnQgY2xhc3MgQXBwTWVudUl0ZW1Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XHJcblx0QElucHV0KCkgaXRlbSE6IE1lbnVJdGVtO1xyXG5cclxuXHRASW5wdXQoKSBpbmRleCE6IG51bWJlcjtcclxuXHJcblx0QElucHV0KCkgQEhvc3RCaW5kaW5nKCdjbGFzcy5sYXlvdXQtcm9vdC1tZW51aXRlbScpIHJvb3QhOiBib29sZWFuO1xyXG5cclxuXHRASW5wdXQoKSBwYXJlbnRLZXkhOiBzdHJpbmc7XHJcblxyXG5cdEBWaWV3Q2hpbGQoJ3N1Ym1lbnUnKSBzdWJtZW51ITogRWxlbWVudFJlZjtcclxuXHJcblx0YWN0aXZlID0gZmFsc2U7XHJcblxyXG5cdG1lbnVTb3VyY2VTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcclxuXHJcblx0bWVudVJlc2V0U3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XHJcblxyXG5cdGtleTogc3RyaW5nID0gJyc7XHJcblxyXG5cdGNvbnN0cnVjdG9yKFxyXG5cdFx0cHVibGljIGxheW91dFNlcnZpY2U6IExheW91dFNlcnZpY2UsXHJcblx0XHRwdWJsaWMgcm91dGVyOiBSb3V0ZXIsXHJcblx0XHRwdWJsaWMgbWVudVNlcnZpY2U6IEFwcE1lbnVTZXJ2aWNlXHJcblx0KSB7XHJcblx0XHR0aGlzLm1lbnVTb3VyY2VTdWJzY3JpcHRpb24gPSB0aGlzLm1lbnVTZXJ2aWNlLm1lbnVTb3VyY2UkLnN1YnNjcmliZSgodmFsdWUpID0+IHtcclxuXHRcdFx0UHJvbWlzZS5yZXNvbHZlKG51bGwpLnRoZW4oKCkgPT4ge1xyXG5cdFx0XHRcdGlmICh2YWx1ZS5yb3V0ZUV2ZW50KSB7XHJcblx0XHRcdFx0XHR0aGlzLmFjdGl2ZSA9IHZhbHVlLmtleSA9PT0gdGhpcy5rZXkgfHwgdmFsdWUua2V5LnN0YXJ0c1dpdGgodGhpcy5rZXkgKyAnLScpID8gdHJ1ZSA6IGZhbHNlO1xyXG5cdFx0XHRcdH0gZWxzZSB7XHJcblx0XHRcdFx0XHRpZiAodmFsdWUua2V5ICE9PSB0aGlzLmtleSAmJiAhdmFsdWUua2V5LnN0YXJ0c1dpdGgodGhpcy5rZXkgKyAnLScpKSB7XHJcblx0XHRcdFx0XHRcdHRoaXMuYWN0aXZlID0gZmFsc2U7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9KTtcclxuXHRcdH0pO1xyXG5cclxuXHRcdHRoaXMubWVudVJlc2V0U3Vic2NyaXB0aW9uID0gdGhpcy5tZW51U2VydmljZS5yZXNldFNvdXJjZSQuc3Vic2NyaWJlKCgpID0+IHtcclxuXHRcdFx0dGhpcy5hY3RpdmUgPSBmYWxzZTtcclxuXHRcdH0pO1xyXG5cclxuXHRcdHRoaXMucm91dGVyLmV2ZW50cy5waXBlKGZpbHRlcigoZXZlbnQpID0+IGV2ZW50IGluc3RhbmNlb2YgTmF2aWdhdGlvbkVuZCkpLnN1YnNjcmliZSgocGFyYW1zOiBhbnkpID0+IHtcclxuXHRcdFx0aWYgKHRoaXMuaXNTbGltUGx1cyB8fCB0aGlzLmlzU2xpbSB8fCB0aGlzLmlzSG9yaXpvbnRhbCkge1xyXG5cdFx0XHRcdGlmICghdGhpcy5sYXlvdXRTZXJ2aWNlLm1mZUFwcEl0ZW1DbGlja2VkKCkpIHRoaXMuYWN0aXZlID0gZmFsc2U7XHJcblx0XHRcdH0gZWxzZSB7XHJcblx0XHRcdFx0aWYgKHRoaXMuaXRlbS5yb3V0ZXJMaW5rKSB7XHJcblx0XHRcdFx0XHR0aGlzLnVwZGF0ZUFjdGl2ZVN0YXRlRnJvbVJvdXRlKCk7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHRpZiAoXHJcblx0XHRcdFx0dGhpcy5pdGVtWydwYXRoJ10gPT09IHBhcmFtcy51cmwgfHxcclxuXHRcdFx0XHR0aGlzLml0ZW0ucm91dGVyTGluayA9PT0gcGFyYW1zLnVybCB8fFxyXG5cdFx0XHRcdHRoaXMuaXRlbS5yb3V0ZXJMaW5rID09PSBwYXJhbXMudXJsQWZ0ZXJSZWRpcmVjdHMgfHxcclxuXHRcdFx0XHR0aGlzLml0ZW1bJ3JlbW90ZU5hbWUnXSA9PT0gcGFyYW1zLnVybC5zdWJzdHJpbmcoMSlcclxuXHRcdFx0KSB7XHJcblx0XHRcdFx0dGhpcy5tZW51U2VydmljZS5hY3RpdmVSb290TWVudUl0ZW1LZXkuc2V0KHRoaXMua2V5LmNoYXJBdCgwKSk7XHJcblx0XHRcdH1cclxuXHRcdH0pO1xyXG5cdH1cclxuXHJcblx0bmdPbkluaXQoKSB7XHJcblx0XHR0aGlzLmtleSA9IHRoaXMucGFyZW50S2V5ID8gdGhpcy5wYXJlbnRLZXkgKyAnLScgKyB0aGlzLmluZGV4IDogU3RyaW5nKHRoaXMuaW5kZXgpO1xyXG5cdFx0aWYgKCEodGhpcy5pc1NsaW1QbHVzIHx8IHRoaXMuaXNTbGltIHx8IHRoaXMuaXNIb3Jpem9udGFsKSAmJiB0aGlzLml0ZW0ucm91dGVyTGluaykge1xyXG5cdFx0XHR0aGlzLnVwZGF0ZUFjdGl2ZVN0YXRlRnJvbVJvdXRlKCk7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRuZ0FmdGVyVmlld0NoZWNrZWQoKSB7XHJcblx0XHRpZiAoXHJcblx0XHRcdHRoaXMucm9vdCAmJlxyXG5cdFx0XHR0aGlzLmFjdGl2ZSAmJlxyXG5cdFx0XHR0aGlzLmxheW91dFNlcnZpY2UuaXNEZXNrdG9wKCkgJiZcclxuXHRcdFx0KHRoaXMubGF5b3V0U2VydmljZS5pc0hvcml6b250YWwoKSB8fCB0aGlzLmxheW91dFNlcnZpY2UuaXNTbGltKCkgfHwgdGhpcy5sYXlvdXRTZXJ2aWNlLmlzU2xpbVBsdXMoKSlcclxuXHRcdCkge1xyXG5cdFx0XHR0aGlzLmNhbGN1bGF0ZVBvc2l0aW9uKHRoaXMuc3VibWVudT8ubmF0aXZlRWxlbWVudCwgdGhpcy5zdWJtZW51Py5uYXRpdmVFbGVtZW50LnBhcmVudEVsZW1lbnQpO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0dXBkYXRlQWN0aXZlU3RhdGVGcm9tUm91dGUoKSB7XHJcblx0XHRsZXQgYWN0aXZlUm91dGUgPSB0aGlzLnJvdXRlci5pc0FjdGl2ZSh0aGlzLml0ZW0ucm91dGVyTGlua1swXSwge1xyXG5cdFx0XHRwYXRoczogJ2V4YWN0JyxcclxuXHRcdFx0cXVlcnlQYXJhbXM6ICdpZ25vcmVkJyxcclxuXHRcdFx0bWF0cml4UGFyYW1zOiAnaWdub3JlZCcsXHJcblx0XHRcdGZyYWdtZW50OiAnaWdub3JlZCdcclxuXHRcdH0pO1xyXG5cclxuXHRcdGlmIChhY3RpdmVSb3V0ZSkge1xyXG5cdFx0XHR0aGlzLm1lbnVTZXJ2aWNlLm9uTWVudVN0YXRlQ2hhbmdlKHsga2V5OiB0aGlzLmtleSwgcm91dGVFdmVudDogdHJ1ZSB9KTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdG9uU3VibWVudUFuaW1hdGVkKGV2ZW50OiBBbmltYXRpb25FdmVudCkge1xyXG5cdFx0aWYgKFxyXG5cdFx0XHRldmVudC50b1N0YXRlID09PSAndmlzaWJsZScgJiZcclxuXHRcdFx0dGhpcy5sYXlvdXRTZXJ2aWNlLmlzRGVza3RvcCgpICYmXHJcblx0XHRcdCh0aGlzLmxheW91dFNlcnZpY2UuaXNIb3Jpem9udGFsKCkgfHwgdGhpcy5sYXlvdXRTZXJ2aWNlLmlzU2xpbSgpIHx8IHRoaXMubGF5b3V0U2VydmljZS5pc1NsaW1QbHVzKCkpXHJcblx0XHQpIHtcclxuXHRcdFx0Y29uc3QgZWwgPSA8SFRNTFVMaXN0RWxlbWVudD5ldmVudC5lbGVtZW50O1xyXG5cdFx0XHRjb25zdCBlbFBhcmVudCA9IDxIVE1MVUxpc3RFbGVtZW50PmVsLnBhcmVudEVsZW1lbnQ7XHJcblx0XHRcdHRoaXMuY2FsY3VsYXRlUG9zaXRpb24oZWwsIGVsUGFyZW50KTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdGNhbGN1bGF0ZVBvc2l0aW9uKG92ZXJsYXk6IEhUTUxFbGVtZW50LCB0YXJnZXQ6IEhUTUxFbGVtZW50KSB7XHJcblx0XHRpZiAob3ZlcmxheSkge1xyXG5cdFx0XHRjb25zdCB7IGxlZnQsIHRvcCB9ID0gdGFyZ2V0LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xyXG5cdFx0XHRjb25zdCBbdldpZHRoLCB2SGVpZ2h0XSA9IFt3aW5kb3cuaW5uZXJXaWR0aCwgd2luZG93LmlubmVySGVpZ2h0XTtcclxuXHRcdFx0Y29uc3QgW29XaWR0aCwgb0hlaWdodF0gPSBbb3ZlcmxheS5vZmZzZXRXaWR0aCwgb3ZlcmxheS5vZmZzZXRIZWlnaHRdO1xyXG5cdFx0XHRjb25zdCBzY3JvbGxiYXJXaWR0aCA9IERvbUhhbmRsZXIuY2FsY3VsYXRlU2Nyb2xsYmFyV2lkdGgoKTtcclxuXHRcdFx0Ly8gcmVzZXRcclxuXHRcdFx0b3ZlcmxheS5zdHlsZS50b3AgPSAnJztcclxuXHRcdFx0b3ZlcmxheS5zdHlsZS5sZWZ0ID0gJyc7XHJcblxyXG5cdFx0XHRpZiAodGhpcy5sYXlvdXRTZXJ2aWNlLmlzSG9yaXpvbnRhbCgpKSB7XHJcblx0XHRcdFx0Y29uc3Qgd2lkdGggPSBsZWZ0ICsgb1dpZHRoICsgc2Nyb2xsYmFyV2lkdGg7XHJcblx0XHRcdFx0b3ZlcmxheS5zdHlsZS5sZWZ0ID0gdldpZHRoIDwgd2lkdGggPyBgJHtsZWZ0IC0gKHdpZHRoIC0gdldpZHRoKX1weGAgOiBgJHtsZWZ0fXB4YDtcclxuXHRcdFx0fSBlbHNlIGlmICh0aGlzLmxheW91dFNlcnZpY2UuaXNTbGltKCkgfHwgdGhpcy5sYXlvdXRTZXJ2aWNlLmlzU2xpbVBsdXMoKSkge1xyXG5cdFx0XHRcdGNvbnN0IGhlaWdodCA9IHRvcCArIG9IZWlnaHQ7XHJcblx0XHRcdFx0b3ZlcmxheS5zdHlsZS50b3AgPSB2SGVpZ2h0IDwgaGVpZ2h0ID8gYCR7dG9wIC0gKGhlaWdodCAtIHZIZWlnaHQpfXB4YCA6IGAke3RvcH1weGA7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdGl0ZW1DbGljayhldmVudDogRXZlbnQpIHtcclxuXHRcdC8vIGF2b2lkIHByb2Nlc3NpbmcgZGlzYWJsZWQgaXRlbXNcclxuXHRcdGlmICh0aGlzLml0ZW0uZGlzYWJsZWQpIHtcclxuXHRcdFx0ZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuXHRcdFx0cmV0dXJuO1xyXG5cdFx0fVxyXG5cclxuXHRcdC8vIG5hdmlnYXRlIHdpdGggaG92ZXJcclxuXHRcdGlmICgodGhpcy5yb290ICYmIHRoaXMuaXNTbGltKSB8fCB0aGlzLmlzSG9yaXpvbnRhbCB8fCB0aGlzLmlzU2xpbVBsdXMpIHtcclxuXHRcdFx0dGhpcy5sYXlvdXRTZXJ2aWNlLnN0YXRlLm1lbnVIb3ZlckFjdGl2ZSA9ICF0aGlzLmxheW91dFNlcnZpY2Uuc3RhdGUubWVudUhvdmVyQWN0aXZlO1xyXG5cdFx0fVxyXG5cclxuXHRcdC8vIGV4ZWN1dGUgY29tbWFuZFxyXG5cdFx0aWYgKHRoaXMuaXRlbS5jb21tYW5kKSB7XHJcblx0XHRcdHRoaXMuaXRlbS5jb21tYW5kKHsgb3JpZ2luYWxFdmVudDogZXZlbnQsIGl0ZW06IHRoaXMuaXRlbSB9KTtcclxuXHRcdH1cclxuXHJcblx0XHQvLyB0b2dnbGUgYWN0aXZlIHN0YXRlXHJcblx0XHRpZiAodGhpcy5pdGVtLml0ZW1zKSB7XHJcblx0XHRcdHRoaXMuYWN0aXZlID0gIXRoaXMuYWN0aXZlO1xyXG5cclxuXHRcdFx0aWYgKHRoaXMucm9vdCAmJiB0aGlzLmFjdGl2ZSAmJiAodGhpcy5pc1NsaW0gfHwgdGhpcy5pc0hvcml6b250YWwgfHwgdGhpcy5pc1NsaW1QbHVzKSkge1xyXG5cdFx0XHRcdHRoaXMubGF5b3V0U2VydmljZS5vbk92ZXJsYXlTdWJtZW51T3BlbigpO1xyXG5cclxuXHRcdFx0XHRpZiAodGhpcy5pdGVtWydtZmVBcHAnXSkge1xyXG5cdFx0XHRcdFx0dGhpcy5sYXlvdXRTZXJ2aWNlLm1mZUFwcEl0ZW1DbGlja2VkLnNldCh0cnVlKTtcclxuXHRcdFx0XHR9IGVsc2Uge1xyXG5cdFx0XHRcdFx0dGhpcy5sYXlvdXRTZXJ2aWNlLm1mZUFwcEl0ZW1DbGlja2VkLnNldChmYWxzZSk7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9IGVsc2Uge1xyXG5cdFx0XHRpZiAodGhpcy5sYXlvdXRTZXJ2aWNlLmlzTW9iaWxlKCkpIHtcclxuXHRcdFx0XHR0aGlzLmxheW91dFNlcnZpY2Uuc3RhdGUuc3RhdGljTWVudU1vYmlsZUFjdGl2ZSA9IGZhbHNlO1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHRpZiAodGhpcy5pc1NsaW0gfHwgdGhpcy5pc0hvcml6b250YWwgfHwgdGhpcy5pc1NsaW1QbHVzKSB7XHJcblx0XHRcdFx0dGhpcy5tZW51U2VydmljZS5yZXNldCgpO1xyXG5cdFx0XHRcdHRoaXMubGF5b3V0U2VydmljZS5zdGF0ZS5tZW51SG92ZXJBY3RpdmUgPSBmYWxzZTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cclxuXHRcdHRoaXMubWVudVNlcnZpY2Uub25NZW51U3RhdGVDaGFuZ2UoeyBrZXk6IHRoaXMua2V5IH0pO1xyXG5cdH1cclxuXHJcblx0b25Nb3VzZUVudGVyKCkge1xyXG5cdFx0Ly8gYWN0aXZhdGUgaXRlbSBvbiBob3ZlclxyXG5cdFx0aWYgKCg8YW55Pmdsb2JhbFRoaXMpLmlzSG9zdE1vZGUgJiYgIXRoaXMuaXRlbS5pdGVtcz8ubGVuZ3RoKSByZXR1cm47XHJcblxyXG5cdFx0aWYgKHRoaXMucm9vdCAmJiAodGhpcy5pc1NsaW0gfHwgdGhpcy5pc0hvcml6b250YWwgfHwgdGhpcy5pc1NsaW1QbHVzKSAmJiB0aGlzLmxheW91dFNlcnZpY2UuaXNEZXNrdG9wKCkpIHtcclxuXHRcdFx0aWYgKHRoaXMubGF5b3V0U2VydmljZS5zdGF0ZS5tZW51SG92ZXJBY3RpdmUpIHtcclxuXHRcdFx0XHR0aGlzLmFjdGl2ZSA9IHRydWU7XHJcblx0XHRcdFx0dGhpcy5tZW51U2VydmljZS5vbk1lbnVTdGF0ZUNoYW5nZSh7IGtleTogdGhpcy5rZXkgfSk7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdGdldCBzdWJtZW51QW5pbWF0aW9uKCkge1xyXG5cdFx0aWYgKFxyXG5cdFx0XHR0aGlzLmxheW91dFNlcnZpY2UuaXNEZXNrdG9wKCkgJiZcclxuXHRcdFx0KHRoaXMubGF5b3V0U2VydmljZS5pc0hvcml6b250YWwoKSB8fCB0aGlzLmxheW91dFNlcnZpY2UuaXNTbGltKCkgfHwgdGhpcy5sYXlvdXRTZXJ2aWNlLmlzU2xpbVBsdXMoKSlcclxuXHRcdCkge1xyXG5cdFx0XHRyZXR1cm4gdGhpcy5hY3RpdmUgPyAndmlzaWJsZScgOiAnaGlkZGVuJztcclxuXHRcdH0gZWxzZVxyXG5cdFx0XHRyZXR1cm4gKFxyXG5cdFx0XHRcdHRoaXMucm9vdCA/ICdleHBhbmRlZCdcclxuXHRcdFx0XHQ6IHRoaXMuYWN0aXZlID8gJ2V4cGFuZGVkJ1xyXG5cdFx0XHRcdDogJ2NvbGxhcHNlZCdcclxuXHRcdFx0KTtcclxuXHR9XHJcblxyXG5cdGdldCBpc0hvcml6b250YWwoKSB7XHJcblx0XHRyZXR1cm4gdGhpcy5sYXlvdXRTZXJ2aWNlLmlzSG9yaXpvbnRhbCgpO1xyXG5cdH1cclxuXHJcblx0Z2V0IGlzU2xpbSgpIHtcclxuXHRcdHJldHVybiB0aGlzLmxheW91dFNlcnZpY2UuaXNTbGltKCk7XHJcblx0fVxyXG5cclxuXHRnZXQgaXNTbGltUGx1cygpIHtcclxuXHRcdHJldHVybiB0aGlzLmxheW91dFNlcnZpY2UuaXNTbGltUGx1cygpO1xyXG5cdH1cclxuXHJcblx0QEhvc3RCaW5kaW5nKCdjbGFzcy5hY3RpdmUtbWVudWl0ZW0nKVxyXG5cdGdldCBhY3RpdmVDbGFzcygpIHtcclxuXHRcdHJldHVybiB0aGlzLmFjdGl2ZSAmJiAhdGhpcy5yb290O1xyXG5cdH1cclxuXHJcblx0bmdPbkRlc3Ryb3koKSB7XHJcblx0XHRpZiAodGhpcy5tZW51U291cmNlU3Vic2NyaXB0aW9uKSB7XHJcblx0XHRcdHRoaXMubWVudVNvdXJjZVN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xyXG5cdFx0fVxyXG5cclxuXHRcdGlmICh0aGlzLm1lbnVSZXNldFN1YnNjcmlwdGlvbikge1xyXG5cdFx0XHR0aGlzLm1lbnVSZXNldFN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuQENvbXBvbmVudCh7XHJcblx0c3RhbmRhbG9uZTogdHJ1ZSxcclxuXHRzZWxlY3RvcjogJ2FwcC1tZW51JyxcclxuXHRpbXBvcnRzOiBbQXBwTWVudUl0ZW1Db21wb25lbnRdLFxyXG5cdHRlbXBsYXRlVXJsOiAnLi9hcHAubWVudS5jb21wb25lbnQuaHRtbCdcclxufSlcclxuZXhwb3J0IGNsYXNzIEFwcE1lbnVDb21wb25lbnQge1xyXG5cdG1lbnVTZXJ2aWNlID0gaW5qZWN0KEFwcE1lbnVTZXJ2aWNlKTtcclxuXHRpc0hvc3RNb2RlID0gKDxhbnk+Z2xvYmFsVGhpcykuaXNIb3N0TW9kZTtcclxuXHRob3N0TWVudUl0ZW1zID0gKDxhbnk+Z2xvYmFsVGhpcykuaG9zdE1lbnVJdGVtcztcclxufVxyXG5AQ29tcG9uZW50KHtcclxuXHRzdGFuZGFsb25lOiB0cnVlLFxyXG5cdHNlbGVjdG9yOiAnYXBwLXN1Yi1tZW51JyxcclxuXHRpbXBvcnRzOiBbQXBwTWVudUl0ZW1Db21wb25lbnRdLFxyXG5cdHRlbXBsYXRlVXJsOiAnLi9hcHAuc3ViLm1lbnUuY29tcG9uZW50Lmh0bWwnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBcHBTdWJNZW51Q29tcG9uZW50IHtcclxuXHRtZW51U2VydmljZSA9IGluamVjdChBcHBNZW51U2VydmljZSk7XHJcblxyXG5cdEBIb3N0QmluZGluZygnaWQnKSBnZXQgaWQoKSB7XHJcblx0XHRyZXR1cm4gJ2FwcC1zdWItbWVudS0nICsgKDxhbnk+Z2xvYmFsVGhpcykuYWN0aXZlTUY7XHJcblx0fVxyXG59XHJcbiIsIjx1bCBjbGFzcz1cImxheW91dC1tZW51IGZsZXgtd3JhcFwiPlxyXG5cdEBmb3IgKGl0ZW0gb2YgaXNIb3N0TW9kZSA/IGhvc3RNZW51SXRlbXMoKSA6IG1lbnVTZXJ2aWNlLm1lbnVJdGVtcygpOyB0cmFjayAkaW5kZXgpIHtcclxuXHRcdEBpZiAoaXRlbS5zZXBhcmF0b3IpIHtcclxuXHRcdFx0PGxpIGNsYXNzPVwibWVudS1zZXBhcmF0b3JcIj48L2xpPlxyXG5cdFx0fSBAZWxzZSB7XHJcblx0XHRcdDxsaSBhcHAtbWVudWl0ZW0gW2l0ZW1dPVwiaXRlbVwiIFtpbmRleF09XCIkaW5kZXhcIiBbcm9vdF09XCJ0cnVlXCI+PC9saT5cclxuXHRcdH1cclxuXHR9XHJcbjwvdWw+XHJcbiIsIkBmb3IgKHN1Ykl0ZW0gb2YgbWVudVNlcnZpY2Uuc3ViTWVudUl0ZW1zKCk7IHRyYWNrICRpbmRleCkge1xyXG5cdEBpZiAoc3ViSXRlbS5zZXBhcmF0b3IpIHtcclxuXHRcdDxsaSBjbGFzcz1cIm1lbnUtc2VwYXJhdG9yXCI+PC9saT5cclxuXHR9IEBlbHNlIHtcclxuXHRcdDxsaSBhcHAtbWVudWl0ZW0gW2l0ZW1dPVwic3ViSXRlbVwiIFtpbmRleF09XCIkaW5kZXhcIiBbcm9vdF09XCJmYWxzZVwiPjwvbGk+XHJcblx0fVxyXG59XHJcbiJdfQ==
|
|
414
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLm1lbnUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXJpbC90aGVtZS9sYXlvdXQvYXBwL21lbnUvYXBwLm1lbnUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXJpbC90aGVtZS9sYXlvdXQvYXBwL21lbnUvYXBwLm1lbnUuY29tcG9uZW50Lmh0bWwiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hcmlsL3RoZW1lL2xheW91dC9hcHAvbWVudS9hcHAuc3ViLm1lbnUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFrQixPQUFPLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDakcsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzFDLE9BQU8sRUFBRSxTQUFTLEVBQWMsV0FBVyxFQUFFLEtBQUssRUFBcUIsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNoSCxPQUFPLEVBQUUsYUFBYSxFQUFVLFVBQVUsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBR3RGLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzlDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUdoRCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHeEMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGdDQUFnQyxDQUFDOzs7Ozs7O0FBOEdoRSxNQUFNLE9BQU8sb0JBQW9CO0lBbUJoQyxZQUNRLGFBQTRCLEVBQzVCLE1BQWMsRUFDZCxXQUEyQjtRQUYzQixr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Q0FBQztxQkFDRjtvSUFNUSxJQUFJO3NCQUFaLEtBQUs7Z0JBRUcsS0FBSztzQkFBYixLQUFLO2dCQUU4QyxJQUFJO3NCQUF2RCxLQUFLOztzQkFBSSxXQUFXO3VCQUFDLDRCQUE0QjtnQkFFekMsU0FBUztzQkFBakIsS0FBSztnQkFFZ0IsT0FBTztzQkFBNUIsU0FBUzt1QkFBQyxTQUFTO2dCQXFNaEIsV0FBVztzQkFEZCxXQUFXO3VCQUFDLHVCQUF1Qjs7QUFzQnJDLE1BQU0sT0FBTyxnQkFBZ0I7SUFON0I7UUFPQyxnQkFBVyxHQUFHLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUNyQyxlQUFVLEdBQVMsVUFBVyxDQUFDLFVBQVUsQ0FBQztRQUMxQyxrQkFBYSxHQUFTLFVBQVcsQ0FBQyxhQUFhLENBQUM7S0FDaEQ7OEdBSlksZ0JBQWdCO2tHQUFoQixnQkFBZ0Isb0VDL1Y3QixtWUFTQSw0Q0RtSGEsb0JBQW9COzsyRkFtT3BCLGdCQUFnQjtrQkFONUIsU0FBUztpQ0FDRyxJQUFJLFlBQ04sVUFBVSxXQUNYLENBQUMsb0JBQW9CLENBQUM7O0FBY2hDLE1BQU0sT0FBTyxtQkFBbUI7SUFOaEM7UUFPQyxnQkFBVyxHQUFHLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQztLQUtyQztJQUhBLElBQXVCLEVBQUU7UUFDeEIsT0FBTyxlQUFlLEdBQVMsVUFBVyxDQUFDLFFBQVEsQ0FBQztJQUNyRCxDQUFDOzhHQUxXLG1CQUFtQjtrR0FBbkIsbUJBQW1CLG1IRTFXaEMsMlBBT0EsNENGcUhhLG9CQUFvQjs7MkZBOE9wQixtQkFBbUI7a0JBTi9CLFNBQVM7aUNBQ0csSUFBSSxZQUNOLGNBQWMsV0FDZixDQUFDLG9CQUFvQixDQUFDOzhCQU1SLEVBQUU7c0JBQXhCLFdBQVc7dUJBQUMsSUFBSSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFuaW1hdGlvbkV2ZW50LCBhbmltYXRlLCBzdGF0ZSwgc3R5bGUsIHRyYW5zaXRpb24sIHRyaWdnZXIgfSBmcm9tICdAYW5ndWxhci9hbmltYXRpb25zJztcclxuaW1wb3J0IHsgTmdDbGFzcyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IENvbXBvbmVudCwgRWxlbWVudFJlZiwgSG9zdEJpbmRpbmcsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgVmlld0NoaWxkLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTmF2aWdhdGlvbkVuZCwgUm91dGVyLCBSb3V0ZXJMaW5rLCBSb3V0ZXJMaW5rQWN0aXZlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuXHJcbmltcG9ydCB7IE1lbnVJdGVtIH0gZnJvbSAncHJpbWVuZy9hcGknO1xyXG5pbXBvcnQgeyBEb21IYW5kbGVyIH0gZnJvbSAncHJpbWVuZy9kb20nO1xyXG5pbXBvcnQgeyBSaXBwbGVNb2R1bGUgfSBmcm9tICdwcmltZW5nL3JpcHBsZSc7XHJcbmltcG9ydCB7IFRvb2x0aXBNb2R1bGUgfSBmcm9tICdwcmltZW5nL3Rvb2x0aXAnO1xyXG5cclxuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IGZpbHRlciB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuXHJcbmltcG9ydCB7IExheW91dFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlL2FwcC5sYXlvdXQuc2VydmljZSc7XHJcbmltcG9ydCB7IEFwcE1lbnVTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZS9hcHAubWVudS5zZXJ2aWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG5cdHN0YW5kYWxvbmU6IHRydWUsXHJcblx0c2VsZWN0b3I6ICdbYXBwLW1lbnVpdGVtXScsXHJcblx0dGVtcGxhdGU6IGBcclxuXHRcdDxuZy1jb250YWluZXI+XHJcblx0XHRcdEBpZiAocm9vdCkge1xyXG5cdFx0XHRcdDxkaXYgY2xhc3M9XCJsYXlvdXQtbWVudWl0ZW0tcm9vdC10ZXh0XCI+XHJcblx0XHRcdFx0XHR7eyBpdGVtLmxhYmVsIH19XHJcblx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdH1cclxuXHRcdFx0QGlmIChpdGVtLml0ZW1zPy5sZW5ndGgpIHtcclxuXHRcdFx0XHQ8YVxyXG5cdFx0XHRcdFx0W25nQ2xhc3NdPVwieyAnYWN0aXZlLXJvb3QtbWVudS1pdGVtJzogcm9vdCAmJiBrZXkgPT0gbWVudVNlcnZpY2UuYWN0aXZlUm9vdE1lbnVJdGVtS2V5KCkgfVwiXHJcblx0XHRcdFx0XHRbYXR0ci5ocmVmXT1cIml0ZW0udXJsXCJcclxuXHRcdFx0XHRcdChjbGljayk9XCJpdGVtQ2xpY2soJGV2ZW50KVwiXHJcblx0XHRcdFx0XHQobW91c2VlbnRlcik9XCJvbk1vdXNlRW50ZXIoKVwiXHJcblx0XHRcdFx0XHRbYXR0ci50YXJnZXRdPVwiaXRlbS50YXJnZXRcIlxyXG5cdFx0XHRcdFx0dGFiaW5kZXg9XCIwXCJcclxuXHRcdFx0XHRcdHBSaXBwbGVcclxuXHRcdFx0XHRcdFtwVG9vbHRpcF09XCJpdGVtLmxhYmVsXCJcclxuXHRcdFx0XHRcdFt0b29sdGlwRGlzYWJsZWRdPVwiIShpc1NsaW0gJiYgcm9vdCAmJiAhYWN0aXZlKVwiPlxyXG5cdFx0XHRcdFx0PGkgW25nQ2xhc3NdPVwiaXRlbS5pY29uXCIgY2xhc3M9XCJsYXlvdXQtbWVudWl0ZW0taWNvblwiPjwvaT5cclxuXHRcdFx0XHRcdDxzcGFuIGNsYXNzPVwibGF5b3V0LW1lbnVpdGVtLXRleHRcIj57eyBpdGVtLmxhYmVsIH19PC9zcGFuPlxyXG5cdFx0XHRcdFx0QGlmIChpdGVtLml0ZW1zKSB7XHJcblx0XHRcdFx0XHRcdDxpIGNsYXNzPVwicGkgcGktZncgcGktYW5nbGUtZG93biBsYXlvdXQtc3VibWVudS10b2dnbGVyXCI+PC9pPlxyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdDwvYT5cclxuXHRcdFx0fSBAZWxzZSB7XHJcblx0XHRcdFx0PGFcclxuXHRcdFx0XHRcdFtuZ0NsYXNzXT1cInsgJ2FjdGl2ZS1yb290LW1lbnUtaXRlbSc6IHJvb3QgJiYga2V5ID09IG1lbnVTZXJ2aWNlLmFjdGl2ZVJvb3RNZW51SXRlbUtleSgpIH1cIlxyXG5cdFx0XHRcdFx0KGNsaWNrKT1cIml0ZW1DbGljaygkZXZlbnQpXCJcclxuXHRcdFx0XHRcdChtb3VzZWVudGVyKT1cIm9uTW91c2VFbnRlcigpXCJcclxuXHRcdFx0XHRcdFtyb3V0ZXJMaW5rXT1cIml0ZW0ucm91dGVyTGlua1wiXHJcblx0XHRcdFx0XHRyb3V0ZXJMaW5rQWN0aXZlPVwiYWN0aXZlLXJvdXRlXCJcclxuXHRcdFx0XHRcdFtyb3V0ZXJMaW5rQWN0aXZlT3B0aW9uc109XCJcclxuXHRcdFx0XHRcdFx0aXRlbS5yb3V0ZXJMaW5rQWN0aXZlT3B0aW9ucyB8fCB7XHJcblx0XHRcdFx0XHRcdFx0cGF0aHM6ICdleGFjdCcsXHJcblx0XHRcdFx0XHRcdFx0cXVlcnlQYXJhbXM6ICdpZ25vcmVkJyxcclxuXHRcdFx0XHRcdFx0XHRtYXRyaXhQYXJhbXM6ICdpZ25vcmVkJyxcclxuXHRcdFx0XHRcdFx0XHRmcmFnbWVudDogJ2lnbm9yZWQnXHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFwiXHJcblx0XHRcdFx0XHRbZnJhZ21lbnRdPVwiaXRlbS5mcmFnbWVudFwiXHJcblx0XHRcdFx0XHRbcXVlcnlQYXJhbXNIYW5kbGluZ109XCJpdGVtLnF1ZXJ5UGFyYW1zSGFuZGxpbmdcIlxyXG5cdFx0XHRcdFx0W3ByZXNlcnZlRnJhZ21lbnRdPVwiaXRlbS5wcmVzZXJ2ZUZyYWdtZW50XCJcclxuXHRcdFx0XHRcdFtza2lwTG9jYXRpb25DaGFuZ2VdPVwiaXRlbS5za2lwTG9jYXRpb25DaGFuZ2VcIlxyXG5cdFx0XHRcdFx0W3JlcGxhY2VVcmxdPVwiaXRlbS5yZXBsYWNlVXJsXCJcclxuXHRcdFx0XHRcdFtzdGF0ZV09XCJpdGVtLnN0YXRlXCJcclxuXHRcdFx0XHRcdFtxdWVyeVBhcmFtc109XCJpdGVtLnF1ZXJ5UGFyYW1zXCJcclxuXHRcdFx0XHRcdFthdHRyLnRhcmdldF09XCJpdGVtLnRhcmdldFwiXHJcblx0XHRcdFx0XHR0YWJpbmRleD1cIjBcIlxyXG5cdFx0XHRcdFx0cFJpcHBsZVxyXG5cdFx0XHRcdFx0W3BUb29sdGlwXT1cIml0ZW0ubGFiZWxcIlxyXG5cdFx0XHRcdFx0W3Rvb2x0aXBEaXNhYmxlZF09XCIhKGlzU2xpbSAmJiByb290KVwiPlxyXG5cdFx0XHRcdFx0PGkgW25nQ2xhc3NdPVwiaXRlbS5pY29uXCIgY2xhc3M9XCJsYXlvdXQtbWVudWl0ZW0taWNvblwiPjwvaT5cclxuXHJcblx0XHRcdFx0XHRAaWYoaXRlbS5sYWJlbCkge1xyXG5cdFx0XHRcdFx0XHQ8c3BhbiBjbGFzcz1cImxheW91dC1tZW51aXRlbS10ZXh0XCI+e3sgaXRlbS5sYWJlbCB9fTwvc3Bhbj5cclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdEBpZiAoaXRlbS5pdGVtcykge1xyXG5cdFx0XHRcdFx0XHQ8aSBjbGFzcz1cInBpIHBpLWZ3IHBpLWFuZ2xlLWRvd24gbGF5b3V0LXN1Ym1lbnUtdG9nZ2xlclwiPjwvaT5cclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHQ8L2E+XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdEBpZiAoaXRlbS5pdGVtcykge1xyXG5cdFx0XHRcdDx1bCAjc3VibWVudSBbQGNoaWxkcmVuXT1cInN1Ym1lbnVBbmltYXRpb25cIiAoQGNoaWxkcmVuLmRvbmUpPVwib25TdWJtZW51QW5pbWF0ZWQoJGV2ZW50KVwiPlxyXG5cdFx0XHRcdFx0QGZvciAoY2hpbGQgb2YgaXRlbS5pdGVtczsgdHJhY2sgY2hpbGQ7IGxldCBpID0gJGluZGV4KSB7XHJcblx0XHRcdFx0XHRcdDxsaSBhcHAtbWVudWl0ZW0gW2l0ZW1dPVwiY2hpbGRcIiBbaW5kZXhdPVwiaVwiIFtwYXJlbnRLZXldPVwia2V5XCI+PC9saT5cclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHQ8L3VsPlxyXG5cdFx0XHR9XHJcblx0XHQ8L25nLWNvbnRhaW5lcj5cclxuXHRgLFxyXG5cdGltcG9ydHM6IFtOZ0NsYXNzLCBSb3V0ZXJMaW5rLCBSb3V0ZXJMaW5rQWN0aXZlLCBUb29sdGlwTW9kdWxlLCBSaXBwbGVNb2R1bGVdLFxyXG5cdGFuaW1hdGlvbnM6IFtcclxuXHRcdHRyaWdnZXIoJ2NoaWxkcmVuJywgW1xyXG5cdFx0XHRzdGF0ZShcclxuXHRcdFx0XHQnY29sbGFwc2VkJyxcclxuXHRcdFx0XHRzdHlsZSh7XHJcblx0XHRcdFx0XHRoZWlnaHQ6ICcwJ1xyXG5cdFx0XHRcdH0pXHJcblx0XHRcdCksXHJcblx0XHRcdHN0YXRlKFxyXG5cdFx0XHRcdCdleHBhbmRlZCcsXHJcblx0XHRcdFx0c3R5bGUoe1xyXG5cdFx0XHRcdFx0aGVpZ2h0OiAnKidcclxuXHRcdFx0XHR9KVxyXG5cdFx0XHQpLFxyXG5cdFx0XHRzdGF0ZShcclxuXHRcdFx0XHQnaGlkZGVuJyxcclxuXHRcdFx0XHRzdHlsZSh7XHJcblx0XHRcdFx0XHRkaXNwbGF5OiAnbm9uZSdcclxuXHRcdFx0XHR9KVxyXG5cdFx0XHQpLFxyXG5cdFx0XHRzdGF0ZShcclxuXHRcdFx0XHQndmlzaWJsZScsXHJcblx0XHRcdFx0c3R5bGUoe1xyXG5cdFx0XHRcdFx0ZGlzcGxheTogJ2Jsb2NrJ1xyXG5cdFx0XHRcdH0pXHJcblx0XHRcdCksXHJcblx0XHRcdHRyYW5zaXRpb24oJ2NvbGxhcHNlZCA8PT4gZXhwYW5kZWQnLCBhbmltYXRlKCc0MDBtcyBjdWJpYy1iZXppZXIoMC44NiwgMCwgMC4wNywgMSknKSlcclxuXHRcdF0pXHJcblx0XSxcclxuXHRzdHlsZXM6IFtcclxuXHRcdCcuYWN0aXZlLXJvb3QtbWVudS1pdGVtIHsgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcHJpbWFyeS1jb2xvcik7ICYgPiBpLHNwYW4geyBjb2xvcjogdmFyKC0tcHJpbWFyeS1mb3JlZ3JvdW5kKSAhaW1wb3J0YW50OyB9ICYgPiBzcGFuIHsgZm9udC13ZWlnaHQ6IDcwMDsgfSB9J1xyXG5cdF1cclxufSlcclxuZXhwb3J0IGNsYXNzIEFwcE1lbnVJdGVtQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG5cdEBJbnB1dCgpIGl0ZW0hOiBNZW51SXRlbTtcclxuXHJcblx0QElucHV0KCkgaW5kZXghOiBudW1iZXI7XHJcblxyXG5cdEBJbnB1dCgpIEBIb3N0QmluZGluZygnY2xhc3MubGF5b3V0LXJvb3QtbWVudWl0ZW0nKSByb290ITogYm9vbGVhbjtcclxuXHJcblx0QElucHV0KCkgcGFyZW50S2V5ITogc3RyaW5nO1xyXG5cclxuXHRAVmlld0NoaWxkKCdzdWJtZW51Jykgc3VibWVudSE6IEVsZW1lbnRSZWY7XHJcblxyXG5cdGFjdGl2ZSA9IGZhbHNlO1xyXG5cclxuXHRtZW51U291cmNlU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XHJcblxyXG5cdG1lbnVSZXNldFN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xyXG5cclxuXHRrZXk6IHN0cmluZyA9ICcnO1xyXG5cclxuXHRjb25zdHJ1Y3RvcihcclxuXHRcdHB1YmxpYyBsYXlvdXRTZXJ2aWNlOiBMYXlvdXRTZXJ2aWNlLFxyXG5cdFx0cHVibGljIHJvdXRlcjogUm91dGVyLFxyXG5cdFx0cHVibGljIG1lbnVTZXJ2aWNlOiBBcHBNZW51U2VydmljZVxyXG5cdCkge1xyXG5cdFx0dGhpcy5tZW51U291cmNlU3Vic2NyaXB0aW9uID0gdGhpcy5tZW51U2VydmljZS5tZW51U291cmNlJC5zdWJzY3JpYmUoKHZhbHVlKSA9PiB7XHJcblx0XHRcdFByb21pc2UucmVzb2x2ZShudWxsKS50aGVuKCgpID0+IHtcclxuXHRcdFx0XHRpZiAodmFsdWUucm91dGVFdmVudCkge1xyXG5cdFx0XHRcdFx0dGhpcy5hY3RpdmUgPSB2YWx1ZS5rZXkgPT09IHRoaXMua2V5IHx8IHZhbHVlLmtleS5zdGFydHNXaXRoKHRoaXMua2V5ICsgJy0nKSA/IHRydWUgOiBmYWxzZTtcclxuXHRcdFx0XHR9IGVsc2Uge1xyXG5cdFx0XHRcdFx0aWYgKHZhbHVlLmtleSAhPT0gdGhpcy5rZXkgJiYgIXZhbHVlLmtleS5zdGFydHNXaXRoKHRoaXMua2V5ICsgJy0nKSkge1xyXG5cdFx0XHRcdFx0XHR0aGlzLmFjdGl2ZSA9IGZhbHNlO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fSk7XHJcblx0XHR9KTtcclxuXHJcblx0XHR0aGlzLm1lbnVSZXNldFN1YnNjcmlwdGlvbiA9IHRoaXMubWVudVNlcnZpY2UucmVzZXRTb3VyY2UkLnN1YnNjcmliZSgoKSA9PiB7XHJcblx0XHRcdHRoaXMuYWN0aXZlID0gZmFsc2U7XHJcblx0XHR9KTtcclxuXHJcblx0XHR0aGlzLnJvdXRlci5ldmVudHMucGlwZShmaWx0ZXIoKGV2ZW50KSA9PiBldmVudCBpbnN0YW5jZW9mIE5hdmlnYXRpb25FbmQpKS5zdWJzY3JpYmUoKHBhcmFtczogYW55KSA9PiB7XHJcblx0XHRcdGlmICh0aGlzLmlzU2xpbVBsdXMgfHwgdGhpcy5pc1NsaW0gfHwgdGhpcy5pc0hvcml6b250YWwpIHtcclxuXHRcdFx0XHRpZiAoIXRoaXMubGF5b3V0U2VydmljZS5tZmVBcHBJdGVtQ2xpY2tlZCgpKSB0aGlzLmFjdGl2ZSA9IGZhbHNlO1xyXG5cdFx0XHR9IGVsc2Uge1xyXG5cdFx0XHRcdGlmICh0aGlzLml0ZW0ucm91dGVyTGluaykge1xyXG5cdFx0XHRcdFx0dGhpcy51cGRhdGVBY3RpdmVTdGF0ZUZyb21Sb3V0ZSgpO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0aWYgKFxyXG5cdFx0XHRcdHRoaXMuaXRlbVsncGF0aCddID09PSBwYXJhbXMudXJsIHx8XHJcblx0XHRcdFx0dGhpcy5pdGVtLnJvdXRlckxpbmsgPT09IHBhcmFtcy51cmwgfHxcclxuXHRcdFx0XHR0aGlzLml0ZW0ucm91dGVyTGluayA9PT0gcGFyYW1zLnVybEFmdGVyUmVkaXJlY3RzIHx8XHJcblx0XHRcdFx0dGhpcy5pdGVtWydyZW1vdGVOYW1lJ10gPT09IHBhcmFtcy51cmwuc3Vic3RyaW5nKDEpXHJcblx0XHRcdCkge1xyXG5cdFx0XHRcdHRoaXMubWVudVNlcnZpY2UuYWN0aXZlUm9vdE1lbnVJdGVtS2V5LnNldCh0aGlzLmtleS5jaGFyQXQoMCkpO1xyXG5cdFx0XHR9XHJcblx0XHR9KTtcclxuXHR9XHJcblxyXG5cdG5nT25Jbml0KCkge1xyXG5cdFx0dGhpcy5rZXkgPSB0aGlzLnBhcmVudEtleSA/IHRoaXMucGFyZW50S2V5ICsgJy0nICsgdGhpcy5pbmRleCA6IFN0cmluZyh0aGlzLmluZGV4KTtcclxuXHRcdGlmICghKHRoaXMuaXNTbGltUGx1cyB8fCB0aGlzLmlzU2xpbSB8fCB0aGlzLmlzSG9yaXpvbnRhbCkgJiYgdGhpcy5pdGVtLnJvdXRlckxpbmspIHtcclxuXHRcdFx0dGhpcy51cGRhdGVBY3RpdmVTdGF0ZUZyb21Sb3V0ZSgpO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0bmdBZnRlclZpZXdDaGVja2VkKCkge1xyXG5cdFx0aWYgKFxyXG5cdFx0XHR0aGlzLnJvb3QgJiZcclxuXHRcdFx0dGhpcy5hY3RpdmUgJiZcclxuXHRcdFx0dGhpcy5sYXlvdXRTZXJ2aWNlLmlzRGVza3RvcCgpICYmXHJcblx0XHRcdCh0aGlzLmxheW91dFNlcnZpY2UuaXNIb3Jpem9udGFsKCkgfHwgdGhpcy5sYXlvdXRTZXJ2aWNlLmlzU2xpbSgpIHx8IHRoaXMubGF5b3V0U2VydmljZS5pc1NsaW1QbHVzKCkpXHJcblx0XHQpIHtcclxuXHRcdFx0dGhpcy5jYWxjdWxhdGVQb3NpdGlvbih0aGlzLnN1Ym1lbnU/Lm5hdGl2ZUVsZW1lbnQsIHRoaXMuc3VibWVudT8ubmF0aXZlRWxlbWVudC5wYXJlbnRFbGVtZW50KTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdHVwZGF0ZUFjdGl2ZVN0YXRlRnJvbVJvdXRlKCkge1xyXG5cdFx0bGV0IGFjdGl2ZVJvdXRlID0gdGhpcy5yb3V0ZXIuaXNBY3RpdmUodGhpcy5pdGVtLnJvdXRlckxpbmtbMF0sIHtcclxuXHRcdFx0cGF0aHM6ICdleGFjdCcsXHJcblx0XHRcdHF1ZXJ5UGFyYW1zOiAnaWdub3JlZCcsXHJcblx0XHRcdG1hdHJpeFBhcmFtczogJ2lnbm9yZWQnLFxyXG5cdFx0XHRmcmFnbWVudDogJ2lnbm9yZWQnXHJcblx0XHR9KTtcclxuXHJcblx0XHRpZiAoYWN0aXZlUm91dGUpIHtcclxuXHRcdFx0dGhpcy5tZW51U2VydmljZS5vbk1lbnVTdGF0ZUNoYW5nZSh7IGtleTogdGhpcy5rZXksIHJvdXRlRXZlbnQ6IHRydWUgfSk7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRvblN1Ym1lbnVBbmltYXRlZChldmVudDogQW5pbWF0aW9uRXZlbnQpIHtcclxuXHRcdGlmIChcclxuXHRcdFx0ZXZlbnQudG9TdGF0ZSA9PT0gJ3Zpc2libGUnICYmXHJcblx0XHRcdHRoaXMubGF5b3V0U2VydmljZS5pc0Rlc2t0b3AoKSAmJlxyXG5cdFx0XHQodGhpcy5sYXlvdXRTZXJ2aWNlLmlzSG9yaXpvbnRhbCgpIHx8IHRoaXMubGF5b3V0U2VydmljZS5pc1NsaW0oKSB8fCB0aGlzLmxheW91dFNlcnZpY2UuaXNTbGltUGx1cygpKVxyXG5cdFx0KSB7XHJcblx0XHRcdGNvbnN0IGVsID0gPEhUTUxVTGlzdEVsZW1lbnQ+ZXZlbnQuZWxlbWVudDtcclxuXHRcdFx0Y29uc3QgZWxQYXJlbnQgPSA8SFRNTFVMaXN0RWxlbWVudD5lbC5wYXJlbnRFbGVtZW50O1xyXG5cdFx0XHR0aGlzLmNhbGN1bGF0ZVBvc2l0aW9uKGVsLCBlbFBhcmVudCk7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRjYWxjdWxhdGVQb3NpdGlvbihvdmVybGF5OiBIVE1MRWxlbWVudCwgdGFyZ2V0OiBIVE1MRWxlbWVudCkge1xyXG5cdFx0aWYgKG92ZXJsYXkpIHtcclxuXHRcdFx0Y29uc3QgeyBsZWZ0LCB0b3AgfSA9IHRhcmdldC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcclxuXHRcdFx0Y29uc3QgW3ZXaWR0aCwgdkhlaWdodF0gPSBbd2luZG93LmlubmVyV2lkdGgsIHdpbmRvdy5pbm5lckhlaWdodF07XHJcblx0XHRcdGNvbnN0IFtvV2lkdGgsIG9IZWlnaHRdID0gW292ZXJsYXkub2Zmc2V0V2lkdGgsIG92ZXJsYXkub2Zmc2V0SGVpZ2h0XTtcclxuXHRcdFx0Y29uc3Qgc2Nyb2xsYmFyV2lkdGggPSBEb21IYW5kbGVyLmNhbGN1bGF0ZVNjcm9sbGJhcldpZHRoKCk7XHJcblx0XHRcdC8vIHJlc2V0XHJcblx0XHRcdG92ZXJsYXkuc3R5bGUudG9wID0gJyc7XHJcblx0XHRcdG92ZXJsYXkuc3R5bGUubGVmdCA9ICcnO1xyXG5cclxuXHRcdFx0aWYgKHRoaXMubGF5b3V0U2VydmljZS5pc0hvcml6b250YWwoKSkge1xyXG5cdFx0XHRcdGNvbnN0IHdpZHRoID0gbGVmdCArIG9XaWR0aCArIHNjcm9sbGJhcldpZHRoO1xyXG5cdFx0XHRcdG92ZXJsYXkuc3R5bGUubGVmdCA9IHZXaWR0aCA8IHdpZHRoID8gYCR7bGVmdCAtICh3aWR0aCAtIHZXaWR0aCl9cHhgIDogYCR7bGVmdH1weGA7XHJcblx0XHRcdH0gZWxzZSBpZiAodGhpcy5sYXlvdXRTZXJ2aWNlLmlzU2xpbSgpIHx8IHRoaXMubGF5b3V0U2VydmljZS5pc1NsaW1QbHVzKCkpIHtcclxuXHRcdFx0XHRjb25zdCBoZWlnaHQgPSB0b3AgKyBvSGVpZ2h0O1xyXG5cdFx0XHRcdG92ZXJsYXkuc3R5bGUudG9wID0gdkhlaWdodCA8IGhlaWdodCA/IGAke3RvcCAtIChoZWlnaHQgLSB2SGVpZ2h0KX1weGAgOiBgJHt0b3B9cHhgO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRpdGVtQ2xpY2soZXZlbnQ6IEV2ZW50KSB7XHJcblx0XHQvLyBhdm9pZCBwcm9jZXNzaW5nIGRpc2FibGVkIGl0ZW1zXHJcblx0XHRpZiAodGhpcy5pdGVtLmRpc2FibGVkKSB7XHJcblx0XHRcdGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcblx0XHRcdHJldHVybjtcclxuXHRcdH1cclxuXHJcblx0XHQvLyBuYXZpZ2F0ZSB3aXRoIGhvdmVyXHJcblx0XHRpZiAoKHRoaXMucm9vdCAmJiB0aGlzLmlzU2xpbSkgfHwgdGhpcy5pc0hvcml6b250YWwgfHwgdGhpcy5pc1NsaW1QbHVzKSB7XHJcblx0XHRcdHRoaXMubGF5b3V0U2VydmljZS5zdGF0ZS5tZW51SG92ZXJBY3RpdmUgPSAhdGhpcy5sYXlvdXRTZXJ2aWNlLnN0YXRlLm1lbnVIb3ZlckFjdGl2ZTtcclxuXHRcdH1cclxuXHJcblx0XHQvLyBleGVjdXRlIGNvbW1hbmRcclxuXHRcdGlmICh0aGlzLml0ZW0uY29tbWFuZCkge1xyXG5cdFx0XHR0aGlzLml0ZW0uY29tbWFuZCh7IG9yaWdpbmFsRXZlbnQ6IGV2ZW50LCBpdGVtOiB0aGlzLml0ZW0gfSk7XHJcblx0XHR9XHJcblxyXG5cdFx0Ly8gdG9nZ2xlIGFjdGl2ZSBzdGF0ZVxyXG5cdFx0aWYgKHRoaXMuaXRlbS5pdGVtcykge1xyXG5cdFx0XHR0aGlzLmFjdGl2ZSA9ICF0aGlzLmFjdGl2ZTtcclxuXHJcblx0XHRcdGlmICh0aGlzLnJvb3QgJiYgdGhpcy5hY3RpdmUgJiYgKHRoaXMuaXNTbGltIHx8IHRoaXMuaXNIb3Jpem9udGFsIHx8IHRoaXMuaXNTbGltUGx1cykpIHtcclxuXHRcdFx0XHR0aGlzLmxheW91dFNlcnZpY2Uub25PdmVybGF5U3VibWVudU9wZW4oKTtcclxuXHJcblx0XHRcdFx0aWYgKHRoaXMuaXRlbVsnbWZlQXBwJ10pIHtcclxuXHRcdFx0XHRcdHRoaXMubGF5b3V0U2VydmljZS5tZmVBcHBJdGVtQ2xpY2tlZC5zZXQodHJ1ZSk7XHJcblx0XHRcdFx0fSBlbHNlIHtcclxuXHRcdFx0XHRcdHRoaXMubGF5b3V0U2VydmljZS5tZmVBcHBJdGVtQ2xpY2tlZC5zZXQoZmFsc2UpO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fSBlbHNlIHtcclxuXHRcdFx0aWYgKHRoaXMubGF5b3V0U2VydmljZS5pc01vYmlsZSgpKSB7XHJcblx0XHRcdFx0dGhpcy5sYXlvdXRTZXJ2aWNlLnN0YXRlLnN0YXRpY01lbnVNb2JpbGVBY3RpdmUgPSBmYWxzZTtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0aWYgKHRoaXMuaXNTbGltIHx8IHRoaXMuaXNIb3Jpem9udGFsIHx8IHRoaXMuaXNTbGltUGx1cykge1xyXG5cdFx0XHRcdHRoaXMubWVudVNlcnZpY2UucmVzZXQoKTtcclxuXHRcdFx0XHR0aGlzLmxheW91dFNlcnZpY2Uuc3RhdGUubWVudUhvdmVyQWN0aXZlID0gZmFsc2U7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblx0XHR0aGlzLm1lbnVTZXJ2aWNlLm9uTWVudVN0YXRlQ2hhbmdlKHsga2V5OiB0aGlzLmtleSB9KTtcclxuXHR9XHJcblxyXG5cdG9uTW91c2VFbnRlcigpIHtcclxuXHRcdC8vIGFjdGl2YXRlIGl0ZW0gb24gaG92ZXJcclxuXHRcdGlmICgoPGFueT5nbG9iYWxUaGlzKS5pc0hvc3RNb2RlICYmICF0aGlzLml0ZW0uaXRlbXM/Lmxlbmd0aCkgcmV0dXJuO1xyXG5cclxuXHRcdGlmICh0aGlzLnJvb3QgJiYgKHRoaXMuaXNTbGltIHx8IHRoaXMuaXNIb3Jpem9udGFsIHx8IHRoaXMuaXNTbGltUGx1cykgJiYgdGhpcy5sYXlvdXRTZXJ2aWNlLmlzRGVza3RvcCgpKSB7XHJcblx0XHRcdGlmICh0aGlzLmxheW91dFNlcnZpY2Uuc3RhdGUubWVudUhvdmVyQWN0aXZlKSB7XHJcblx0XHRcdFx0dGhpcy5hY3RpdmUgPSB0cnVlO1xyXG5cdFx0XHRcdHRoaXMubWVudVNlcnZpY2Uub25NZW51U3RhdGVDaGFuZ2UoeyBrZXk6IHRoaXMua2V5IH0pO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRnZXQgc3VibWVudUFuaW1hdGlvbigpIHtcclxuXHRcdGlmIChcclxuXHRcdFx0dGhpcy5sYXlvdXRTZXJ2aWNlLmlzRGVza3RvcCgpICYmXHJcblx0XHRcdCh0aGlzLmxheW91dFNlcnZpY2UuaXNIb3Jpem9udGFsKCkgfHwgdGhpcy5sYXlvdXRTZXJ2aWNlLmlzU2xpbSgpIHx8IHRoaXMubGF5b3V0U2VydmljZS5pc1NsaW1QbHVzKCkpXHJcblx0XHQpIHtcclxuXHRcdFx0cmV0dXJuIHRoaXMuYWN0aXZlID8gJ3Zpc2libGUnIDogJ2hpZGRlbic7XHJcblx0XHR9IGVsc2VcclxuXHRcdFx0cmV0dXJuIChcclxuXHRcdFx0XHR0aGlzLnJvb3QgPyAnZXhwYW5kZWQnXHJcblx0XHRcdFx0OiB0aGlzLmFjdGl2ZSA/ICdleHBhbmRlZCdcclxuXHRcdFx0XHQ6ICdjb2xsYXBzZWQnXHJcblx0XHRcdCk7XHJcblx0fVxyXG5cclxuXHRnZXQgaXNIb3Jpem9udGFsKCkge1xyXG5cdFx0cmV0dXJuIHRoaXMubGF5b3V0U2VydmljZS5pc0hvcml6b250YWwoKTtcclxuXHR9XHJcblxyXG5cdGdldCBpc1NsaW0oKSB7XHJcblx0XHRyZXR1cm4gdGhpcy5sYXlvdXRTZXJ2aWNlLmlzU2xpbSgpO1xyXG5cdH1cclxuXHJcblx0Z2V0IGlzU2xpbVBsdXMoKSB7XHJcblx0XHRyZXR1cm4gdGhpcy5sYXlvdXRTZXJ2aWNlLmlzU2xpbVBsdXMoKTtcclxuXHR9XHJcblxyXG5cdEBIb3N0QmluZGluZygnY2xhc3MuYWN0aXZlLW1lbnVpdGVtJylcclxuXHRnZXQgYWN0aXZlQ2xhc3MoKSB7XHJcblx0XHRyZXR1cm4gdGhpcy5hY3RpdmUgJiYgIXRoaXMucm9vdDtcclxuXHR9XHJcblxyXG5cdG5nT25EZXN0cm95KCkge1xyXG5cdFx0aWYgKHRoaXMubWVudVNvdXJjZVN1YnNjcmlwdGlvbikge1xyXG5cdFx0XHR0aGlzLm1lbnVTb3VyY2VTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcclxuXHRcdH1cclxuXHJcblx0XHRpZiAodGhpcy5tZW51UmVzZXRTdWJzY3JpcHRpb24pIHtcclxuXHRcdFx0dGhpcy5tZW51UmVzZXRTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbkBDb21wb25lbnQoe1xyXG5cdHN0YW5kYWxvbmU6IHRydWUsXHJcblx0c2VsZWN0b3I6ICdhcHAtbWVudScsXHJcblx0aW1wb3J0czogW0FwcE1lbnVJdGVtQ29tcG9uZW50XSxcclxuXHR0ZW1wbGF0ZVVybDogJy4vYXBwLm1lbnUuY29tcG9uZW50Lmh0bWwnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBcHBNZW51Q29tcG9uZW50IHtcclxuXHRtZW51U2VydmljZSA9IGluamVjdChBcHBNZW51U2VydmljZSk7XHJcblx0aXNIb3N0TW9kZSA9ICg8YW55Pmdsb2JhbFRoaXMpLmlzSG9zdE1vZGU7XHJcblx0aG9zdE1lbnVJdGVtcyA9ICg8YW55Pmdsb2JhbFRoaXMpLmhvc3RNZW51SXRlbXM7XHJcbn1cclxuQENvbXBvbmVudCh7XHJcblx0c3RhbmRhbG9uZTogdHJ1ZSxcclxuXHRzZWxlY3RvcjogJ2FwcC1zdWItbWVudScsXHJcblx0aW1wb3J0czogW0FwcE1lbnVJdGVtQ29tcG9uZW50XSxcclxuXHR0ZW1wbGF0ZVVybDogJy4vYXBwLnN1Yi5tZW51LmNvbXBvbmVudC5odG1sJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgQXBwU3ViTWVudUNvbXBvbmVudCB7XHJcblx0bWVudVNlcnZpY2UgPSBpbmplY3QoQXBwTWVudVNlcnZpY2UpO1xyXG5cclxuXHRASG9zdEJpbmRpbmcoJ2lkJykgZ2V0IGlkKCkge1xyXG5cdFx0cmV0dXJuICdhcHAtc3ViLW1lbnUtJyArICg8YW55Pmdsb2JhbFRoaXMpLmFjdGl2ZU1GO1xyXG5cdH1cclxufVxyXG4iLCI8dWwgY2xhc3M9XCJsYXlvdXQtbWVudSBoLWZ1bGwgZmxleC1jb2x1bW5cIj5cclxuXHRAZm9yIChpdGVtIG9mIGlzSG9zdE1vZGUgPyBob3N0TWVudUl0ZW1zKCkgOiBtZW51U2VydmljZS5tZW51SXRlbXMoKTsgdHJhY2sgJGluZGV4KSB7XHJcblx0XHRAaWYgKGl0ZW0uc2VwYXJhdG9yKSB7XHJcblx0XHRcdDxsaSBjbGFzcz1cIm1lbnUtc2VwYXJhdG9yXCI+PC9saT5cclxuXHRcdH0gQGVsc2Uge1xyXG5cdFx0XHQ8bGkgYXBwLW1lbnVpdGVtIFtpdGVtXT1cIml0ZW1cIiBbaW5kZXhdPVwiJGluZGV4XCIgW3Jvb3RdPVwidHJ1ZVwiIFtjbGFzcy5tdC1hdXRvXT1cIml0ZW0ucmVtb3RlTmFtZSA9PT0gJ21uZydcIj48L2xpPlxyXG5cdFx0fVxyXG5cdH1cclxuPC91bD5cclxuIiwiQGZvciAoc3ViSXRlbSBvZiBtZW51U2VydmljZS5zdWJNZW51SXRlbXMoKTsgdHJhY2sgJGluZGV4KSB7XHJcblx0QGlmIChzdWJJdGVtLnNlcGFyYXRvcikge1xyXG5cdFx0PGxpIGNsYXNzPVwibWVudS1zZXBhcmF0b3JcIj48L2xpPlxyXG5cdH0gQGVsc2Uge1xyXG5cdFx0PGxpIGFwcC1tZW51aXRlbSBbaXRlbV09XCJzdWJJdGVtXCIgW2luZGV4XT1cIiRpbmRleFwiIFtyb290XT1cImZhbHNlXCI+PC9saT5cclxuXHR9XHJcbn1cclxuIl19
|
|
@@ -66,7 +66,7 @@ export class AppTopbarComponent {
|
|
|
66
66
|
this.layoutService.showConfigSidebar();
|
|
67
67
|
}
|
|
68
68
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AppTopbarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
69
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.2", type: AppTopbarComponent, isStandalone: true, selector: "app-topbar", viewQueries: [{ propertyName: "menuButton", first: true, predicate: ["menubutton"], descendants: true }], ngImport: i0, template: "<div class=\"layout-topbar\">\r\n\t<div class=\"topbar-start\">\r\n\t\t<button #menubutton type=\"button\" class=\"topbar-menubutton p-link p-trigger\" (click)=\"onMenuButtonClick()\">\r\n\t\t\t<i class=\"pi pi-bars\"></i>\r\n\t\t</button>\r\n\t\t<img [src]=\"filePath()\" class=\"mr-3\" alt=\"yeap\" />\r\n\t</div>\r\n\r\n\t<div class=\"topbar-search\" style=\"width: 50rem\">\r\n\t\t<span class=\"p-input-icon-left\" style=\"width: 100%\">\r\n\t\t\t<i class=\"pi pi-search\"></i>\r\n\t\t\t<input\r\n\t\t\t\ttype=\"text\"\r\n\t\t\t\tpInputText\r\n\t\t\t\tvariant=\"filled\"\r\n\t\t\t\tplaceholder=\"Genel Arama\"\r\n\t\t\t\tstyle=\"background: #EFF3F8;border: none; height: 42px;\"\r\n\t\t\t\tclass=\"p-inputtext p-component p-element sm:w-full\" />\r\n\t\t</span>\r\n\t</div>\r\n\r\n\t<div class=\"topbar-end mr-2\">\r\n\t\t<ul class=\"topbar-menu\">\r\n\t\t\t<li>\r\n\t\t\t\t<p-button icon=\"pi pi-sitemap\" severity=\"secondary\" [text]=\"true\" [rounded]=\"true\" />\r\n\t\t\t</li>\r\n\t\t\t<li>\r\n\t\t\t\t<p-button icon=\"pi pi-history\" severity=\"secondary\" [text]=\"true\" [rounded]=\"true\" />\r\n\t\t\t</li>\r\n\t\t\t<li>\r\n\t\t\t\t<p-button icon=\"pi pi-heart\" severity=\"secondary\" [text]=\"true\" [rounded]=\"true\" />\r\n\t\t\t</li>\r\n\t\t\t<li>\r\n\t\t\t\t<p-button severity=\"secondary\" [text]=\"true\" [rounded]=\"true\" (click)=\"onProfileButtonClick()\">\r\n\t\t\t\t\t{{ username[0] | uppercase }}\r\n\t\t\t\t</p-button>\r\n\t\t\t</li>\r\n\t\t\t<li>\r\n\t\t\t\t<p-divider layout=\"vertical\" styleClass=\"h-1rem border-500 m-0\" />\r\n\t\t\t</li>\r\n\t\t\t<li>\r\n\t\t\t\t<i class=\"pi pi-bell\" severity=\"info\" pBadge [value]=\"0\"></i>\r\n\t\t\t</li>\r\n\t\t</ul>\r\n\t</div>\r\n</div>\r\n\r\n<app-breadcrumb class=\"topbar-breadcrumb\"></app-breadcrumb>\r\n", dependencies: [{ kind: "ngmodule", type: ButtonModule }, { kind: "component", type: i1.Button, selector: "p-button", inputs: ["type", "iconPos", "icon", "badge", "label", "disabled", "loading", "loadingIcon", "raised", "rounded", "text", "plain", "severity", "outlined", "link", "tabindex", "size", "style", "styleClass", "badgeClass", "ariaLabel", "autofocus"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "component", type: AppBreadcrumbComponent, selector: "app-breadcrumb" }, { kind: "pipe", type: UpperCasePipe, name: "uppercase" }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: DividerModule }, { kind: "component", type: i2.Divider, selector: "p-divider", inputs: ["style", "styleClass", "layout", "type", "align"] }, { kind: "ngmodule", type: BadgeModule }, { kind: "directive", type: i3.BadgeDirective, selector: "[pBadge]", inputs: ["badgeDisabled", "badgeSize", "size", "severity", "value"] }] }); }
|
|
69
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.2", type: AppTopbarComponent, isStandalone: true, selector: "app-topbar", viewQueries: [{ propertyName: "menuButton", first: true, predicate: ["menubutton"], descendants: true }], ngImport: i0, template: "<div class=\"layout-topbar\">\r\n\t<div class=\"topbar-start\">\r\n\t\t<button #menubutton type=\"button\" class=\"topbar-menubutton p-link p-trigger\" (click)=\"onMenuButtonClick()\">\r\n\t\t\t<i class=\"pi pi-bars\"></i>\r\n\t\t</button>\r\n\t\t<img [src]=\"filePath()\" class=\"mr-3\" alt=\"yeap\" />\r\n\t</div>\r\n\r\n\t<div class=\"topbar-search\" style=\"width: 50rem\">\r\n\t\t<span class=\"p-input-icon-left\" style=\"width: 100%\">\r\n\t\t\t<i class=\"pi pi-search\"></i>\r\n\t\t\t<input\r\n\t\t\t\ttype=\"text\"\r\n\t\t\t\tpInputText\r\n\t\t\t\tvariant=\"filled\"\r\n\t\t\t\tplaceholder=\"Genel Arama\"\r\n\t\t\t\tstyle=\"background: #EFF3F8;border: none; height: 42px;\"\r\n\t\t\t\tclass=\"p-inputtext p-component p-element sm:w-full\" />\r\n\t\t</span>\r\n\t</div>\r\n\r\n\t<div class=\"topbar-end mr-2\">\r\n\t\t<ul class=\"topbar-menu\">\r\n\t\t\t<li>\r\n\t\t\t\t<p-button icon=\"pi pi-sitemap\" severity=\"secondary\" [text]=\"true\" [rounded]=\"true\" />\r\n\t\t\t</li>\r\n\t\t\t<li>\r\n\t\t\t\t<p-button icon=\"pi pi-history\" severity=\"secondary\" [text]=\"true\" [rounded]=\"true\" />\r\n\t\t\t</li>\r\n\t\t\t<li>\r\n\t\t\t\t<p-button icon=\"pi pi-heart\" severity=\"secondary\" [text]=\"true\" [rounded]=\"true\" />\r\n\t\t\t</li>\r\n\t\t\t<li>\r\n\t\t\t\t<p-button severity=\"secondary\" [text]=\"true\" [rounded]=\"true\" (click)=\"onProfileButtonClick()\">\r\n\t\t\t\t\t{{ username[0] | uppercase }}\r\n\t\t\t\t</p-button>\r\n\t\t\t</li>\r\n\t\t\t<li>\r\n\t\t\t\t<p-divider layout=\"vertical\" styleClass=\"h-1rem border-500 m-0\" />\r\n\t\t\t</li>\r\n\t\t\t<li>\r\n\t\t\t\t<i class=\"pi pi-bell\" severity=\"info\" pBadge [value]=\"0\"></i>\r\n\t\t\t</li>\r\n\t\t</ul>\r\n\t</div>\r\n</div>\r\n\r\n<app-breadcrumb class=\"topbar-breadcrumb\"></app-breadcrumb>\r\n", dependencies: [{ kind: "ngmodule", type: ButtonModule }, { kind: "component", type: i1.Button, selector: "p-button", inputs: ["type", "iconPos", "icon", "badge", "label", "disabled", "loading", "loadingIcon", "raised", "rounded", "text", "plain", "severity", "outlined", "link", "tabindex", "size", "style", "styleClass", "badgeClass", "ariaLabel", "autofocus"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "component", type: AppBreadcrumbComponent, selector: "app-breadcrumb" }, { kind: "pipe", type: UpperCasePipe, name: "uppercase" }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: DividerModule }, { kind: "component", type: i2.Divider, selector: "p-divider", inputs: ["style", "styleClass", "layout", "type", "align"] }, { kind: "ngmodule", type: BadgeModule }, { kind: "directive", type: i3.BadgeDirective, selector: "[pBadge]", inputs: ["badgeDisabled", "badgeSize", "size", "severity", "value", "badgeStyle", "badgeStyleClass"] }] }); }
|
|
70
70
|
}
|
|
71
71
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AppTopbarComponent, decorators: [{
|
|
72
72
|
type: Component,
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generated bundle index. Do not edit.
|
|
3
|
+
*/
|
|
4
|
+
export * from './index';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJpbC11aS1yb2xlUGlja2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvYXJpbC91aS9yb2xlUGlja2VyL2FyaWwtdWktcm9sZVBpY2tlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ==
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export * from './src/role-picker.component';
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hcmlsL3VpL3JvbGVQaWNrZXIvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyw2QkFBNkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vc3JjL3JvbGUtcGlja2VyLmNvbXBvbmVudCc7Il19
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXJpbC91aS9yb2xlUGlja2VyL3NyYy9pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9uby1lbXB0eS1pbnRlcmZhY2UgKi9cclxuaW1wb3J0IHsgSW50ZXJmYWNlcyB9IGZyb20gJ2FyaWwvdXRpbC9saWInO1xyXG5cclxuZXhwb3J0IHR5cGUgU2VsZWN0Qm94SXRlbSA9XHJcblx0fCBJbnRlcmZhY2VzLk1hcFN0cmluZ1N0cmluZ1xyXG5cdHwgSW50ZXJmYWNlcy5NYXBTdHJpbmdOdW1iZXJcclxuXHR8IEludGVyZmFjZXMuTWFwTnVtYmVyU3RyaW5nXHJcblx0fCBJbnRlcmZhY2VzLk1hcE51bWJlck51bWJlcjtcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgU2VsZWN0aW9uUmVxdWVzdERUTyB7XHJcblx0Z3JvdXBOYW1lOiBzdHJpbmc7XHJcblx0cGFyYW1ldGVycz86IFBhcmFtZXRlcnM7XHJcblx0cGFyZW50U2VsZWN0aW9uS2V5OiBzdHJpbmcgfCBudWxsO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFBhcmFtZXRlcnMge1xyXG5cdGFkZGl0aW9uYWxQcm9wMTogQWRkaXRpb25hbFByb3A7XHJcblx0YWRkaXRpb25hbFByb3AyOiBBZGRpdGlvbmFsUHJvcDtcclxuXHRhZGRpdGlvbmFsUHJvcDM6IEFkZGl0aW9uYWxQcm9wO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEFkZGl0aW9uYWxQcm9wIHt9XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFNlbGVjdGlvbkdyb3VwRFRPIHtcclxuXHRpZDogbnVtYmVyO1xyXG5cdGdyb3VwTmFtZTogc3RyaW5nO1xyXG5cdGdyb3VwRGVzY3JpcHRpb246IHN0cmluZztcclxuXHRncm91cENvbW1lbnQ6IHN0cmluZztcclxuXHRsb2FkU3RyYXRlZ3k6IHN0cmluZztcclxuXHRkeW5hbWljUXVlcnk6IHN0cmluZztcclxuXHRwYXJlbnRHcm91cElkOiBudW1iZXI7XHJcblx0c2VsZWN0aW9uSXRlbXM6IFNlbGVjdGlvbkl0ZW1bXTtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBTZWxlY3Rpb25JdGVtIHtcclxuXHRpZDogbnVtYmVyO1xyXG5cdGdyb3VwSWQ6IG51bWJlcjtcclxuXHRzZWxlY3Rpb25LZXk6IHN0cmluZztcclxuXHRzZWxlY3Rpb25EaXNwbGF5OiBzdHJpbmc7XHJcblx0c2hvd09yZGVyOiBudW1iZXI7XHJcblx0cGFyZW50U2VsZWN0aW9uS2V5OiBzdHJpbmc7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgUm9sZVJlc3BvbnNlRFRPIHtcclxuXHRpZDogc3RyaW5nO1xyXG5cdG5hbWU6IHN0cmluZztcclxuXHRjbGllbnRSZWZlcmVuY2VLZXk6IHN0cmluZztcclxuXHRjbGllbnRJZDogc3RyaW5nO1xyXG5cdGRlc2NyaXB0aW9uOiBzdHJpbmc7XHJcblx0dXJpczogc3RyaW5nO1xyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { Component, EventEmitter, Output, effect, input, signal } from '@angular/core';
|
|
2
|
+
import { ReactiveFormsModule } from '@angular/forms';
|
|
3
|
+
import { DxSelectBoxModule } from 'devextreme-angular/ui/select-box';
|
|
4
|
+
import { firstValueFrom } from 'rxjs';
|
|
5
|
+
import { BaseInputComponent, DXInputErrorMessagePipe, InputErrorMessagePipe, ValueAccessorDirective } from 'aril/ui/lib';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "@angular/common/http";
|
|
8
|
+
import * as i2 from "aril/ui/lib";
|
|
9
|
+
import * as i3 from "@angular/forms";
|
|
10
|
+
import * as i4 from "devextreme-angular/ui/select-box";
|
|
11
|
+
export class RolePickerComponent extends BaseInputComponent {
|
|
12
|
+
constructor(http) {
|
|
13
|
+
super();
|
|
14
|
+
this.http = http;
|
|
15
|
+
this.itemKey = input('key');
|
|
16
|
+
this.itemText = input('text');
|
|
17
|
+
this.groupName = input('');
|
|
18
|
+
this.parentSelectionKey = input(null);
|
|
19
|
+
this.tabindex = input(0);
|
|
20
|
+
this.items = input.required();
|
|
21
|
+
this.selectionItems = signal(null);
|
|
22
|
+
/** * @description when grouped = true, option item structure { key:string, items:[] } */
|
|
23
|
+
this.grouped = input(false);
|
|
24
|
+
this.showClearButton = input(true);
|
|
25
|
+
this.placeholder = input('');
|
|
26
|
+
this.searchExpr = input('');
|
|
27
|
+
this.baseUrl = input('http://yeap.edas1.com/mw/v1'); // default
|
|
28
|
+
this.roleEndPointUrl = input('/user-management/roles/by-client-reference-key?clientReferenceKey='); // default
|
|
29
|
+
this.client = input('thor'); // default
|
|
30
|
+
this.onSelectionChanged = new EventEmitter();
|
|
31
|
+
effect(() => {
|
|
32
|
+
if (this.client())
|
|
33
|
+
this.getSelectionItems();
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
async getSelectionItems() {
|
|
37
|
+
const roleItems = await firstValueFrom(this.http.get(this.baseUrl() + this.roleEndPointUrl() + this.client()));
|
|
38
|
+
console.log(roleItems);
|
|
39
|
+
this.selectionItems.set(roleItems.map((item) => ({
|
|
40
|
+
key: item.id,
|
|
41
|
+
text: item.name,
|
|
42
|
+
parentSelectionKey: item.clientId
|
|
43
|
+
})));
|
|
44
|
+
}
|
|
45
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: RolePickerComponent, deps: [{ token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
46
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "17.1.2", type: RolePickerComponent, isStandalone: true, selector: "aril-role-picker[formControl], aril-role-picker[formControlName]", inputs: { itemKey: { classPropertyName: "itemKey", publicName: "itemKey", isSignal: true, isRequired: false, transformFunction: null }, itemText: { classPropertyName: "itemText", publicName: "itemText", isSignal: true, isRequired: false, transformFunction: null }, groupName: { classPropertyName: "groupName", publicName: "groupName", isSignal: true, isRequired: false, transformFunction: null }, parentSelectionKey: { classPropertyName: "parentSelectionKey", publicName: "parentSelectionKey", isSignal: true, isRequired: false, transformFunction: null }, tabindex: { classPropertyName: "tabindex", publicName: "tabindex", isSignal: true, isRequired: false, transformFunction: null }, items: { classPropertyName: "items", publicName: "items", isSignal: true, isRequired: true, transformFunction: null }, grouped: { classPropertyName: "grouped", publicName: "grouped", isSignal: true, isRequired: false, transformFunction: null }, showClearButton: { classPropertyName: "showClearButton", publicName: "showClearButton", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, searchExpr: { classPropertyName: "searchExpr", publicName: "searchExpr", isSignal: true, isRequired: false, transformFunction: null }, baseUrl: { classPropertyName: "baseUrl", publicName: "baseUrl", isSignal: true, isRequired: false, transformFunction: null }, roleEndPointUrl: { classPropertyName: "roleEndPointUrl", publicName: "roleEndPointUrl", isSignal: true, isRequired: false, transformFunction: null }, client: { classPropertyName: "client", publicName: "client", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onSelectionChanged: "onSelectionChanged" }, providers: [InputErrorMessagePipe], usesInheritance: true, hostDirectives: [{ directive: i2.ValueAccessorDirective }], ngImport: i0, template: "<dx-select-box\r\n\t[items]=\"selectionItems() || items()\"\r\n\t[valueExpr]=\"itemKey()\"\r\n\t[displayExpr]=\"itemText()\"\r\n\t[searchEnabled]=\"true\"\r\n\t[searchExpr]=\"searchExpr()\"\r\n\t[tabIndex]=\"tabindex()\"\r\n\t[grouped]=\"grouped()\"\r\n\t[placeholder]=\"placeholder()\"\r\n\t[showClearButton]=\"showClearButton()\"\r\n\t[isValid]=\"ngControl?.control?.valid || ngControl?.control?.pristine || ngControl?.control?.disabled || false\"\r\n\t[validationError]=\"ngControl?.control?.errors | dxInputErrorMessage: ngControl?.control\"\r\n\tvalidationMessagePosition=\"top\"\r\n\t[formControl]=\"ngControl.control\"\r\n\t(ngModelChange)=\"ngControl.viewToModelUpdate($event)\"\r\n\t(onSelectionChanged)=\"onSelectionChanged.emit($event.selectedItem)\">\r\n</dx-select-box>\r\n", dependencies: [{ kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: DxSelectBoxModule }, { kind: "component", type: i4.DxSelectBoxComponent, selector: "dx-select-box", inputs: ["acceptCustomValue", "accessKey", "activeStateEnabled", "buttons", "customItemCreateEvent", "dataSource", "deferRendering", "disabled", "displayExpr", "displayValue", "dropDownButtonTemplate", "dropDownOptions", "elementAttr", "fieldTemplate", "focusStateEnabled", "grouped", "groupTemplate", "height", "hint", "hoverStateEnabled", "inputAttr", "isDirty", "isValid", "items", "itemTemplate", "label", "labelMode", "maxLength", "minSearchLength", "name", "noDataText", "opened", "openOnFieldClick", "placeholder", "readOnly", "rtlEnabled", "searchEnabled", "searchExpr", "searchMode", "searchTimeout", "selectedItem", "showClearButton", "showDataBeforeSearch", "showDropDownButton", "showSelectionControls", "spellcheck", "stylingMode", "tabIndex", "text", "useItemTextAsTitle", "validationError", "validationErrors", "validationMessageMode", "validationMessagePosition", "validationStatus", "value", "valueChangeEvent", "valueExpr", "visible", "width", "wrapItemText"], outputs: ["onChange", "onClosed", "onContentReady", "onCopy", "onCustomItemCreating", "onCut", "onDisposing", "onEnterKey", "onFocusIn", "onFocusOut", "onInitialized", "onInput", "onItemClick", "onKeyDown", "onKeyUp", "onOpened", "onOptionChanged", "onPaste", "onSelectionChanged", "onValueChanged", "acceptCustomValueChange", "accessKeyChange", "activeStateEnabledChange", "buttonsChange", "customItemCreateEventChange", "dataSourceChange", "deferRenderingChange", "disabledChange", "displayExprChange", "displayValueChange", "dropDownButtonTemplateChange", "dropDownOptionsChange", "elementAttrChange", "fieldTemplateChange", "focusStateEnabledChange", "groupedChange", "groupTemplateChange", "heightChange", "hintChange", "hoverStateEnabledChange", "inputAttrChange", "isDirtyChange", "isValidChange", "itemsChange", "itemTemplateChange", "labelChange", "labelModeChange", "maxLengthChange", "minSearchLengthChange", "nameChange", "noDataTextChange", "openedChange", "openOnFieldClickChange", "placeholderChange", "readOnlyChange", "rtlEnabledChange", "searchEnabledChange", "searchExprChange", "searchModeChange", "searchTimeoutChange", "selectedItemChange", "showClearButtonChange", "showDataBeforeSearchChange", "showDropDownButtonChange", "showSelectionControlsChange", "spellcheckChange", "stylingModeChange", "tabIndexChange", "textChange", "useItemTextAsTitleChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationMessagePositionChange", "validationStatusChange", "valueChange", "valueChangeEventChange", "valueExprChange", "visibleChange", "widthChange", "wrapItemTextChange", "onBlur"] }, { kind: "pipe", type: DXInputErrorMessagePipe, name: "dxInputErrorMessage" }] }); }
|
|
47
|
+
}
|
|
48
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: RolePickerComponent, decorators: [{
|
|
49
|
+
type: Component,
|
|
50
|
+
args: [{ standalone: true, selector: 'aril-role-picker[formControl], aril-role-picker[formControlName]', imports: [ReactiveFormsModule, DxSelectBoxModule, DXInputErrorMessagePipe], providers: [InputErrorMessagePipe], hostDirectives: [ValueAccessorDirective], template: "<dx-select-box\r\n\t[items]=\"selectionItems() || items()\"\r\n\t[valueExpr]=\"itemKey()\"\r\n\t[displayExpr]=\"itemText()\"\r\n\t[searchEnabled]=\"true\"\r\n\t[searchExpr]=\"searchExpr()\"\r\n\t[tabIndex]=\"tabindex()\"\r\n\t[grouped]=\"grouped()\"\r\n\t[placeholder]=\"placeholder()\"\r\n\t[showClearButton]=\"showClearButton()\"\r\n\t[isValid]=\"ngControl?.control?.valid || ngControl?.control?.pristine || ngControl?.control?.disabled || false\"\r\n\t[validationError]=\"ngControl?.control?.errors | dxInputErrorMessage: ngControl?.control\"\r\n\tvalidationMessagePosition=\"top\"\r\n\t[formControl]=\"ngControl.control\"\r\n\t(ngModelChange)=\"ngControl.viewToModelUpdate($event)\"\r\n\t(onSelectionChanged)=\"onSelectionChanged.emit($event.selectedItem)\">\r\n</dx-select-box>\r\n" }]
|
|
51
|
+
}], ctorParameters: () => [{ type: i1.HttpClient }], propDecorators: { onSelectionChanged: [{
|
|
52
|
+
type: Output
|
|
53
|
+
}] } });
|
|
54
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9sZS1waWNrZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXJpbC91aS9yb2xlUGlja2VyL3NyYy9yb2xlLXBpY2tlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hcmlsL3VpL3JvbGVQaWNrZXIvc3JjL3JvbGUtcGlja2VyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2RixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVyRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNyRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBR3RDLE9BQU8sRUFDTixrQkFBa0IsRUFDbEIsdUJBQXVCLEVBQ3ZCLHFCQUFxQixFQUNyQixzQkFBc0IsRUFDdEIsTUFBTSxhQUFhLENBQUM7Ozs7OztBQVlyQixNQUFNLE9BQU8sbUJBQW9CLFNBQVEsa0JBQWtCO0lBc0IxRCxZQUFvQixJQUFnQjtRQUNuQyxLQUFLLEVBQUUsQ0FBQztRQURXLFNBQUksR0FBSixJQUFJLENBQVk7UUFyQnBDLFlBQU8sR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDdkIsYUFBUSxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUN6QixjQUFTLEdBQUcsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ3RCLHVCQUFrQixHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNqQyxhQUFRLEdBQUcsS0FBSyxDQUFTLENBQUMsQ0FBQyxDQUFDO1FBQzVCLFVBQUssR0FBRyxLQUFLLENBQUMsUUFBUSxFQUFtQixDQUFDO1FBRTFDLG1CQUFjLEdBQUcsTUFBTSxDQUF5QixJQUFJLENBQUMsQ0FBQztRQUV0RCx5RkFBeUY7UUFDekYsWUFBTyxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN2QixvQkFBZSxHQUFHLEtBQUssQ0FBVSxJQUFJLENBQUMsQ0FBQztRQUN2QyxnQkFBVyxHQUFHLEtBQUssQ0FBUyxFQUFFLENBQUMsQ0FBQztRQUNoQyxlQUFVLEdBQUcsS0FBSyxDQUFvQixFQUFFLENBQUMsQ0FBQztRQUUxQyxZQUFPLEdBQUcsS0FBSyxDQUFnQiw2QkFBNkIsQ0FBQyxDQUFDLENBQUMsVUFBVTtRQUN6RSxvQkFBZSxHQUFHLEtBQUssQ0FBUyxvRUFBb0UsQ0FBQyxDQUFDLENBQUMsVUFBVTtRQUNqSCxXQUFNLEdBQUcsS0FBSyxDQUFTLE1BQU0sQ0FBQyxDQUFDLENBQUMsVUFBVTtRQUVoQyx1QkFBa0IsR0FBRyxJQUFJLFlBQVksRUFBaUIsQ0FBQztRQUloRSxNQUFNLENBQUMsR0FBRyxFQUFFO1lBQ1gsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFO2dCQUFFLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1FBQzdDLENBQUMsQ0FBQyxDQUFDO0lBQ0osQ0FBQztJQUVELEtBQUssQ0FBQyxpQkFBaUI7UUFDdEIsTUFBTSxTQUFTLEdBQUcsTUFBTSxjQUFjLENBQ3JDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFvQixJQUFJLENBQUMsT0FBTyxFQUFFLEdBQUcsSUFBSSxDQUFDLGVBQWUsRUFBRSxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUN6RixDQUFDO1FBRUYsT0FBTyxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUN2QixJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FDdEIsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQztZQUN4QixHQUFHLEVBQUUsSUFBSSxDQUFDLEVBQUU7WUFDWixJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUk7WUFDZixrQkFBa0IsRUFBRSxJQUFJLENBQUMsUUFBUTtTQUNqQyxDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ0gsQ0FBQzs4R0ExQ1csbUJBQW1CO2tHQUFuQixtQkFBbUIsZzREQUhwQixDQUFDLHFCQUFxQixDQUFDLDZHQ3RCbkMsb3hCQWlCQSwyQ0RJVyxtQkFBbUIseVRBQUUsaUJBQWlCLDRxRkFBRSx1QkFBdUI7OzJGQUk3RCxtQkFBbUI7a0JBUi9CLFNBQVM7aUNBQ0csSUFBSSxZQUNOLGtFQUFrRSxXQUVuRSxDQUFDLG1CQUFtQixFQUFFLGlCQUFpQixFQUFFLHVCQUF1QixDQUFDLGFBQy9ELENBQUMscUJBQXFCLENBQUMsa0JBQ2xCLENBQUMsc0JBQXNCLENBQUM7K0VBc0I5QixrQkFBa0I7c0JBQTNCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgT3V0cHV0LCBlZmZlY3QsIGlucHV0LCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuXHJcbmltcG9ydCB7IER4U2VsZWN0Qm94TW9kdWxlIH0gZnJvbSAnZGV2ZXh0cmVtZS1hbmd1bGFyL3VpL3NlbGVjdC1ib3gnO1xyXG5pbXBvcnQgeyBmaXJzdFZhbHVlRnJvbSB9IGZyb20gJ3J4anMnO1xyXG5cclxuaW1wb3J0IHsgQVBJX0NPTkZJR1MgfSBmcm9tICdhcmlsL2Jvb3QvY29uZmlnL2FwaSc7XHJcbmltcG9ydCB7XHJcblx0QmFzZUlucHV0Q29tcG9uZW50LFxyXG5cdERYSW5wdXRFcnJvck1lc3NhZ2VQaXBlLFxyXG5cdElucHV0RXJyb3JNZXNzYWdlUGlwZSxcclxuXHRWYWx1ZUFjY2Vzc29yRGlyZWN0aXZlXHJcbn0gZnJvbSAnYXJpbC91aS9saWInO1xyXG5cclxuaW1wb3J0IHsgUm9sZVJlc3BvbnNlRFRPLCBTZWxlY3RCb3hJdGVtLCBTZWxlY3Rpb25Hcm91cERUTywgU2VsZWN0aW9uUmVxdWVzdERUTyB9IGZyb20gJy4vaW50ZXJmYWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG5cdHN0YW5kYWxvbmU6IHRydWUsXHJcblx0c2VsZWN0b3I6ICdhcmlsLXJvbGUtcGlja2VyW2Zvcm1Db250cm9sXSwgYXJpbC1yb2xlLXBpY2tlcltmb3JtQ29udHJvbE5hbWVdJyxcclxuXHR0ZW1wbGF0ZVVybDogJy4vcm9sZS1waWNrZXIuY29tcG9uZW50Lmh0bWwnLFxyXG5cdGltcG9ydHM6IFtSZWFjdGl2ZUZvcm1zTW9kdWxlLCBEeFNlbGVjdEJveE1vZHVsZSwgRFhJbnB1dEVycm9yTWVzc2FnZVBpcGVdLFxyXG5cdHByb3ZpZGVyczogW0lucHV0RXJyb3JNZXNzYWdlUGlwZV0sXHJcblx0aG9zdERpcmVjdGl2ZXM6IFtWYWx1ZUFjY2Vzc29yRGlyZWN0aXZlXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgUm9sZVBpY2tlckNvbXBvbmVudCBleHRlbmRzIEJhc2VJbnB1dENvbXBvbmVudCB7XHJcblx0aXRlbUtleSA9IGlucHV0KCdrZXknKTtcclxuXHRpdGVtVGV4dCA9IGlucHV0KCd0ZXh0Jyk7XHJcblx0Z3JvdXBOYW1lID0gaW5wdXQoJycpO1xyXG5cdHBhcmVudFNlbGVjdGlvbktleSA9IGlucHV0KG51bGwpO1xyXG5cdHRhYmluZGV4ID0gaW5wdXQ8bnVtYmVyPigwKTtcclxuXHRpdGVtcyA9IGlucHV0LnJlcXVpcmVkPFNlbGVjdEJveEl0ZW1bXT4oKTtcclxuXHJcblx0c2VsZWN0aW9uSXRlbXMgPSBzaWduYWw8U2VsZWN0Qm94SXRlbVtdIHwgbnVsbD4obnVsbCk7XHJcblxyXG5cdC8qKiAqIEBkZXNjcmlwdGlvbiB3aGVuIGdyb3VwZWQgPSB0cnVlLCBvcHRpb24gaXRlbSBzdHJ1Y3R1cmUgeyBrZXk6c3RyaW5nLCBpdGVtczpbXSB9ICovXHJcblx0Z3JvdXBlZCA9IGlucHV0KGZhbHNlKTtcclxuXHRzaG93Q2xlYXJCdXR0b24gPSBpbnB1dDxib29sZWFuPih0cnVlKTtcclxuXHRwbGFjZWhvbGRlciA9IGlucHV0PHN0cmluZz4oJycpO1xyXG5cdHNlYXJjaEV4cHIgPSBpbnB1dDxzdHJpbmcgfCBzdHJpbmdbXT4oJycpO1xyXG5cclxuXHRiYXNlVXJsID0gaW5wdXQ8c3RyaW5nIHwgbnVsbD4oJ2h0dHA6Ly95ZWFwLmVkYXMxLmNvbS9tdy92MScpOyAvLyBkZWZhdWx0XHJcblx0cm9sZUVuZFBvaW50VXJsID0gaW5wdXQ8c3RyaW5nPignL3VzZXItbWFuYWdlbWVudC9yb2xlcy9ieS1jbGllbnQtcmVmZXJlbmNlLWtleT9jbGllbnRSZWZlcmVuY2VLZXk9Jyk7IC8vIGRlZmF1bHRcclxuXHRjbGllbnQgPSBpbnB1dDxzdHJpbmc+KCd0aG9yJyk7IC8vIGRlZmF1bHRcclxuXHJcblx0QE91dHB1dCgpIG9uU2VsZWN0aW9uQ2hhbmdlZCA9IG5ldyBFdmVudEVtaXR0ZXI8U2VsZWN0Qm94SXRlbT4oKTtcclxuXHJcblx0Y29uc3RydWN0b3IocHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50KSB7XHJcblx0XHRzdXBlcigpO1xyXG5cdFx0ZWZmZWN0KCgpID0+IHtcclxuXHRcdFx0aWYgKHRoaXMuY2xpZW50KCkpIHRoaXMuZ2V0U2VsZWN0aW9uSXRlbXMoKTtcclxuXHRcdH0pO1xyXG5cdH1cclxuXHJcblx0YXN5bmMgZ2V0U2VsZWN0aW9uSXRlbXMoKSB7XHJcblx0XHRjb25zdCByb2xlSXRlbXMgPSBhd2FpdCBmaXJzdFZhbHVlRnJvbShcclxuXHRcdFx0dGhpcy5odHRwLmdldDxSb2xlUmVzcG9uc2VEVE9bXT4odGhpcy5iYXNlVXJsKCkgKyB0aGlzLnJvbGVFbmRQb2ludFVybCgpICsgdGhpcy5jbGllbnQoKSlcclxuXHRcdCk7XHJcblxyXG5cdFx0Y29uc29sZS5sb2cocm9sZUl0ZW1zKTtcclxuXHRcdHRoaXMuc2VsZWN0aW9uSXRlbXMuc2V0KFxyXG5cdFx0XHRyb2xlSXRlbXMubWFwKChpdGVtKSA9PiAoe1xyXG5cdFx0XHRcdGtleTogaXRlbS5pZCxcclxuXHRcdFx0XHR0ZXh0OiBpdGVtLm5hbWUsXHJcblx0XHRcdFx0cGFyZW50U2VsZWN0aW9uS2V5OiBpdGVtLmNsaWVudElkXHJcblx0XHRcdH0pKVxyXG5cdFx0KTtcclxuXHR9XHJcbn1cclxuIiwiPGR4LXNlbGVjdC1ib3hcclxuXHRbaXRlbXNdPVwic2VsZWN0aW9uSXRlbXMoKSB8fCBpdGVtcygpXCJcclxuXHRbdmFsdWVFeHByXT1cIml0ZW1LZXkoKVwiXHJcblx0W2Rpc3BsYXlFeHByXT1cIml0ZW1UZXh0KClcIlxyXG5cdFtzZWFyY2hFbmFibGVkXT1cInRydWVcIlxyXG5cdFtzZWFyY2hFeHByXT1cInNlYXJjaEV4cHIoKVwiXHJcblx0W3RhYkluZGV4XT1cInRhYmluZGV4KClcIlxyXG5cdFtncm91cGVkXT1cImdyb3VwZWQoKVwiXHJcblx0W3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyKClcIlxyXG5cdFtzaG93Q2xlYXJCdXR0b25dPVwic2hvd0NsZWFyQnV0dG9uKClcIlxyXG5cdFtpc1ZhbGlkXT1cIm5nQ29udHJvbD8uY29udHJvbD8udmFsaWQgfHwgbmdDb250cm9sPy5jb250cm9sPy5wcmlzdGluZSB8fCBuZ0NvbnRyb2w/LmNvbnRyb2w/LmRpc2FibGVkIHx8IGZhbHNlXCJcclxuXHRbdmFsaWRhdGlvbkVycm9yXT1cIm5nQ29udHJvbD8uY29udHJvbD8uZXJyb3JzIHwgZHhJbnB1dEVycm9yTWVzc2FnZTogbmdDb250cm9sPy5jb250cm9sXCJcclxuXHR2YWxpZGF0aW9uTWVzc2FnZVBvc2l0aW9uPVwidG9wXCJcclxuXHRbZm9ybUNvbnRyb2xdPVwibmdDb250cm9sLmNvbnRyb2xcIlxyXG5cdChuZ01vZGVsQ2hhbmdlKT1cIm5nQ29udHJvbC52aWV3VG9Nb2RlbFVwZGF0ZSgkZXZlbnQpXCJcclxuXHQob25TZWxlY3Rpb25DaGFuZ2VkKT1cIm9uU2VsZWN0aW9uQ2hhbmdlZC5lbWl0KCRldmVudC5zZWxlY3RlZEl0ZW0pXCI+XHJcbjwvZHgtc2VsZWN0LWJveD5cclxuIl19
|
|
@@ -686,8 +686,9 @@ class AppMenuItemComponent {
|
|
|
686
686
|
[tooltipDisabled]="!(isSlim && root)">
|
|
687
687
|
<i [ngClass]="item.icon" class="layout-menuitem-icon"></i>
|
|
688
688
|
|
|
689
|
-
|
|
690
|
-
|
|
689
|
+
@if(item.label) {
|
|
690
|
+
<span class="layout-menuitem-text">{{ item.label }}</span>
|
|
691
|
+
}
|
|
691
692
|
@if (item.items) {
|
|
692
693
|
<i class="pi pi-fw pi-angle-down layout-submenu-toggler"></i>
|
|
693
694
|
}
|
|
@@ -775,8 +776,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
|
|
|
775
776
|
[tooltipDisabled]="!(isSlim && root)">
|
|
776
777
|
<i [ngClass]="item.icon" class="layout-menuitem-icon"></i>
|
|
777
778
|
|
|
778
|
-
|
|
779
|
-
|
|
779
|
+
@if(item.label) {
|
|
780
|
+
<span class="layout-menuitem-text">{{ item.label }}</span>
|
|
781
|
+
}
|
|
780
782
|
@if (item.items) {
|
|
781
783
|
<i class="pi pi-fw pi-angle-down layout-submenu-toggler"></i>
|
|
782
784
|
}
|
|
@@ -833,11 +835,11 @@ class AppMenuComponent {
|
|
|
833
835
|
this.hostMenuItems = globalThis.hostMenuItems;
|
|
834
836
|
}
|
|
835
837
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AppMenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
836
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.1.2", type: AppMenuComponent, isStandalone: true, selector: "app-menu", ngImport: i0, template: "<ul class=\"layout-menu flex-
|
|
838
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.1.2", type: AppMenuComponent, isStandalone: true, selector: "app-menu", ngImport: i0, template: "<ul class=\"layout-menu h-full flex-column\">\r\n\t@for (item of isHostMode ? hostMenuItems() : menuService.menuItems(); track $index) {\r\n\t\t@if (item.separator) {\r\n\t\t\t<li class=\"menu-separator\"></li>\r\n\t\t} @else {\r\n\t\t\t<li app-menuitem [item]=\"item\" [index]=\"$index\" [root]=\"true\" [class.mt-auto]=\"item.remoteName === 'mng'\"></li>\r\n\t\t}\r\n\t}\r\n</ul>\r\n", dependencies: [{ kind: "component", type: AppMenuItemComponent, selector: "[app-menuitem]", inputs: ["item", "index", "root", "parentKey"] }] }); }
|
|
837
839
|
}
|
|
838
840
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AppMenuComponent, decorators: [{
|
|
839
841
|
type: Component,
|
|
840
|
-
args: [{ standalone: true, selector: 'app-menu', imports: [AppMenuItemComponent], template: "<ul class=\"layout-menu flex-
|
|
842
|
+
args: [{ standalone: true, selector: 'app-menu', imports: [AppMenuItemComponent], template: "<ul class=\"layout-menu h-full flex-column\">\r\n\t@for (item of isHostMode ? hostMenuItems() : menuService.menuItems(); track $index) {\r\n\t\t@if (item.separator) {\r\n\t\t\t<li class=\"menu-separator\"></li>\r\n\t\t} @else {\r\n\t\t\t<li app-menuitem [item]=\"item\" [index]=\"$index\" [root]=\"true\" [class.mt-auto]=\"item.remoteName === 'mng'\"></li>\r\n\t\t}\r\n\t}\r\n</ul>\r\n" }]
|
|
841
843
|
}] });
|
|
842
844
|
class AppSubMenuComponent {
|
|
843
845
|
constructor() {
|
|
@@ -947,7 +949,7 @@ class AppTopbarComponent {
|
|
|
947
949
|
this.layoutService.showConfigSidebar();
|
|
948
950
|
}
|
|
949
951
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AppTopbarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
950
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.2", type: AppTopbarComponent, isStandalone: true, selector: "app-topbar", viewQueries: [{ propertyName: "menuButton", first: true, predicate: ["menubutton"], descendants: true }], ngImport: i0, template: "<div class=\"layout-topbar\">\r\n\t<div class=\"topbar-start\">\r\n\t\t<button #menubutton type=\"button\" class=\"topbar-menubutton p-link p-trigger\" (click)=\"onMenuButtonClick()\">\r\n\t\t\t<i class=\"pi pi-bars\"></i>\r\n\t\t</button>\r\n\t\t<img [src]=\"filePath()\" class=\"mr-3\" alt=\"yeap\" />\r\n\t</div>\r\n\r\n\t<div class=\"topbar-search\" style=\"width: 50rem\">\r\n\t\t<span class=\"p-input-icon-left\" style=\"width: 100%\">\r\n\t\t\t<i class=\"pi pi-search\"></i>\r\n\t\t\t<input\r\n\t\t\t\ttype=\"text\"\r\n\t\t\t\tpInputText\r\n\t\t\t\tvariant=\"filled\"\r\n\t\t\t\tplaceholder=\"Genel Arama\"\r\n\t\t\t\tstyle=\"background: #EFF3F8;border: none; height: 42px;\"\r\n\t\t\t\tclass=\"p-inputtext p-component p-element sm:w-full\" />\r\n\t\t</span>\r\n\t</div>\r\n\r\n\t<div class=\"topbar-end mr-2\">\r\n\t\t<ul class=\"topbar-menu\">\r\n\t\t\t<li>\r\n\t\t\t\t<p-button icon=\"pi pi-sitemap\" severity=\"secondary\" [text]=\"true\" [rounded]=\"true\" />\r\n\t\t\t</li>\r\n\t\t\t<li>\r\n\t\t\t\t<p-button icon=\"pi pi-history\" severity=\"secondary\" [text]=\"true\" [rounded]=\"true\" />\r\n\t\t\t</li>\r\n\t\t\t<li>\r\n\t\t\t\t<p-button icon=\"pi pi-heart\" severity=\"secondary\" [text]=\"true\" [rounded]=\"true\" />\r\n\t\t\t</li>\r\n\t\t\t<li>\r\n\t\t\t\t<p-button severity=\"secondary\" [text]=\"true\" [rounded]=\"true\" (click)=\"onProfileButtonClick()\">\r\n\t\t\t\t\t{{ username[0] | uppercase }}\r\n\t\t\t\t</p-button>\r\n\t\t\t</li>\r\n\t\t\t<li>\r\n\t\t\t\t<p-divider layout=\"vertical\" styleClass=\"h-1rem border-500 m-0\" />\r\n\t\t\t</li>\r\n\t\t\t<li>\r\n\t\t\t\t<i class=\"pi pi-bell\" severity=\"info\" pBadge [value]=\"0\"></i>\r\n\t\t\t</li>\r\n\t\t</ul>\r\n\t</div>\r\n</div>\r\n\r\n<app-breadcrumb class=\"topbar-breadcrumb\"></app-breadcrumb>\r\n", dependencies: [{ kind: "ngmodule", type: ButtonModule }, { kind: "component", type: i6.Button, selector: "p-button", inputs: ["type", "iconPos", "icon", "badge", "label", "disabled", "loading", "loadingIcon", "raised", "rounded", "text", "plain", "severity", "outlined", "link", "tabindex", "size", "style", "styleClass", "badgeClass", "ariaLabel", "autofocus"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "component", type: AppBreadcrumbComponent, selector: "app-breadcrumb" }, { kind: "pipe", type: UpperCasePipe, name: "uppercase" }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: DividerModule }, { kind: "component", type: i2.Divider, selector: "p-divider", inputs: ["style", "styleClass", "layout", "type", "align"] }, { kind: "ngmodule", type: BadgeModule }, { kind: "directive", type: i3$2.BadgeDirective, selector: "[pBadge]", inputs: ["badgeDisabled", "badgeSize", "size", "severity", "value"] }] }); }
|
|
952
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.2", type: AppTopbarComponent, isStandalone: true, selector: "app-topbar", viewQueries: [{ propertyName: "menuButton", first: true, predicate: ["menubutton"], descendants: true }], ngImport: i0, template: "<div class=\"layout-topbar\">\r\n\t<div class=\"topbar-start\">\r\n\t\t<button #menubutton type=\"button\" class=\"topbar-menubutton p-link p-trigger\" (click)=\"onMenuButtonClick()\">\r\n\t\t\t<i class=\"pi pi-bars\"></i>\r\n\t\t</button>\r\n\t\t<img [src]=\"filePath()\" class=\"mr-3\" alt=\"yeap\" />\r\n\t</div>\r\n\r\n\t<div class=\"topbar-search\" style=\"width: 50rem\">\r\n\t\t<span class=\"p-input-icon-left\" style=\"width: 100%\">\r\n\t\t\t<i class=\"pi pi-search\"></i>\r\n\t\t\t<input\r\n\t\t\t\ttype=\"text\"\r\n\t\t\t\tpInputText\r\n\t\t\t\tvariant=\"filled\"\r\n\t\t\t\tplaceholder=\"Genel Arama\"\r\n\t\t\t\tstyle=\"background: #EFF3F8;border: none; height: 42px;\"\r\n\t\t\t\tclass=\"p-inputtext p-component p-element sm:w-full\" />\r\n\t\t</span>\r\n\t</div>\r\n\r\n\t<div class=\"topbar-end mr-2\">\r\n\t\t<ul class=\"topbar-menu\">\r\n\t\t\t<li>\r\n\t\t\t\t<p-button icon=\"pi pi-sitemap\" severity=\"secondary\" [text]=\"true\" [rounded]=\"true\" />\r\n\t\t\t</li>\r\n\t\t\t<li>\r\n\t\t\t\t<p-button icon=\"pi pi-history\" severity=\"secondary\" [text]=\"true\" [rounded]=\"true\" />\r\n\t\t\t</li>\r\n\t\t\t<li>\r\n\t\t\t\t<p-button icon=\"pi pi-heart\" severity=\"secondary\" [text]=\"true\" [rounded]=\"true\" />\r\n\t\t\t</li>\r\n\t\t\t<li>\r\n\t\t\t\t<p-button severity=\"secondary\" [text]=\"true\" [rounded]=\"true\" (click)=\"onProfileButtonClick()\">\r\n\t\t\t\t\t{{ username[0] | uppercase }}\r\n\t\t\t\t</p-button>\r\n\t\t\t</li>\r\n\t\t\t<li>\r\n\t\t\t\t<p-divider layout=\"vertical\" styleClass=\"h-1rem border-500 m-0\" />\r\n\t\t\t</li>\r\n\t\t\t<li>\r\n\t\t\t\t<i class=\"pi pi-bell\" severity=\"info\" pBadge [value]=\"0\"></i>\r\n\t\t\t</li>\r\n\t\t</ul>\r\n\t</div>\r\n</div>\r\n\r\n<app-breadcrumb class=\"topbar-breadcrumb\"></app-breadcrumb>\r\n", dependencies: [{ kind: "ngmodule", type: ButtonModule }, { kind: "component", type: i6.Button, selector: "p-button", inputs: ["type", "iconPos", "icon", "badge", "label", "disabled", "loading", "loadingIcon", "raised", "rounded", "text", "plain", "severity", "outlined", "link", "tabindex", "size", "style", "styleClass", "badgeClass", "ariaLabel", "autofocus"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "component", type: AppBreadcrumbComponent, selector: "app-breadcrumb" }, { kind: "pipe", type: UpperCasePipe, name: "uppercase" }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: DividerModule }, { kind: "component", type: i2.Divider, selector: "p-divider", inputs: ["style", "styleClass", "layout", "type", "align"] }, { kind: "ngmodule", type: BadgeModule }, { kind: "directive", type: i3$2.BadgeDirective, selector: "[pBadge]", inputs: ["badgeDisabled", "badgeSize", "size", "severity", "value", "badgeStyle", "badgeStyleClass"] }] }); }
|
|
951
953
|
}
|
|
952
954
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AppTopbarComponent, decorators: [{
|
|
953
955
|
type: Component,
|