@dsivd/prestations-ng 17.6.4 → 17.6.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +10 -0
- package/dsivd-prestations-ng-17.6.6.tgz +0 -0
- package/esm2022/foehn-breadcrumb/foehn-breadcrumb.component.mjs +2 -2
- package/esm2022/foehn-dropdown-menu/dropdown-menu-item.type.mjs +1 -1
- package/esm2022/foehn-dropdown-menu/foehn-dropdown-menu.component.mjs +3 -3
- package/fesm2022/dsivd-prestations-ng.mjs +3 -3
- package/fesm2022/dsivd-prestations-ng.mjs.map +1 -1
- package/foehn-dropdown-menu/dropdown-menu-item.type.d.ts +2 -0
- package/package.json +1 -1
- package/dsivd-prestations-ng-17.6.4.tgz +0 -0
package/CHANGELOG.md
CHANGED
|
@@ -6,6 +6,16 @@
|
|
|
6
6
|
|
|
7
7
|
---
|
|
8
8
|
|
|
9
|
+
## [17.6.6]
|
|
10
|
+
|
|
11
|
+
- [foehn-dropdown-menu.component.html](projects/prestations-ng/src/foehn-dropdown-menu/foehn-dropdown-menu.component.html)
|
|
12
|
+
- added `[queryParams]` to `foehn-dropdown-menu` to be able to pass query parameters to the router link
|
|
13
|
+
|
|
14
|
+
## [17.6.5]
|
|
15
|
+
|
|
16
|
+
- [foehn-breadcrumb.component.ts](projects/prestations-ng/src/foehn-breadcrumb/foehn-breadcrumb.component.ts)
|
|
17
|
+
- open breadcrumb link of type `url` to a new tab (`target="_blank"`)
|
|
18
|
+
|
|
9
19
|
## [17.6.4]
|
|
10
20
|
|
|
11
21
|
### Updated
|
|
Binary file
|
|
@@ -57,7 +57,7 @@ export class FoehnBreadcrumbComponent {
|
|
|
57
57
|
}
|
|
58
58
|
}
|
|
59
59
|
redirect(item) {
|
|
60
|
-
window.
|
|
60
|
+
window.open(item.url, '_blank');
|
|
61
61
|
}
|
|
62
62
|
navigate(item) {
|
|
63
63
|
this.addBreadcrumbClickEventToLogger(item);
|
|
@@ -102,4 +102,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
102
102
|
}], confirmLeavingAlert: [{
|
|
103
103
|
type: Input
|
|
104
104
|
}] } });
|
|
105
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9laG4tYnJlYWRjcnVtYi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9wcmVzdGF0aW9ucy1uZy9zcmMvZm9laG4tYnJlYWRjcnVtYi9mb2Vobi1icmVhZGNydW1iLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3Byb2plY3RzL3ByZXN0YXRpb25zLW5nL3NyYy9mb2Vobi1icmVhZGNydW1iL2ZvZWhuLWJyZWFkY3J1bWIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBTXBFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQzs7Ozs7Ozs7QUFXbkUsTUFBTSxPQUFPLHdCQUF3QjtJQVlqQyxZQUNZLGlCQUF5QyxFQUN6QyxNQUFjLEVBQ2Qsd0JBQWtELEVBQ2xELFdBQXdCLEVBQ3hCLHNCQUE4QztRQUo5QyxzQkFBaUIsR0FBakIsaUJBQWlCLENBQXdCO1FBQ3pDLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDZCw2QkFBd0IsR0FBeEIsd0JBQXdCLENBQTBCO1FBQ2xELGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQ3hCLDJCQUFzQixHQUF0QixzQkFBc0IsQ0FBd0I7UUFmMUQsb0JBQWUsR0FBcUIsRUFBRSxDQUFDO0lBZ0JwQyxDQUFDO0lBRUosS0FBSztRQUNELElBQUksQ0FBQyxlQUFlLEdBQUcsRUFBRSxDQUFDO1FBQzFCLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO0lBQzNCLENBQUM7SUFFRCxRQUFRO1FBQ0osTUFBTSxvQkFBb0IsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLGNBQWM7WUFDeEQsQ0FBQyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxrQ0FBa0MsRUFBRTtZQUM3RCxDQUFDLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLG9C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QUFJLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDL0IsSUFBSSxJQUFJLENBQUMscUJBQXFCLEVBQUUsQ0FBQztnQkFDN0IsTUFBTSxJQUFJLElBQUksTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMscUJBQXFCLENBQUM7cUJBQ2hELEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsR0FBRyxJQUFJLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDO3FCQUN2RCxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUNyQixDQUFDO1lBQ0QsTUFBTSxJQUFJLElBQUksSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQy9CLENBQUM7UUFDRCxJQUFJLENBQUMsc0JBQXNCLENBQUMsUUFBUSxDQUNoQyxZQUFZLENBQUMsZ0JBQWdCLEVBQzdCLE1BQU0sQ0FDVCxDQUFDO0lBQ04sQ0FBQzsrR0F0R1Esd0JBQXdCO21HQUF4Qix3QkFBd0IsOEtDakJyQywyMUJBd0JBOzs0RkRQYSx3QkFBd0I7a0JBTHBDLFNBQVM7K0JBQ0ksa0JBQWtCO3NOQU01QixlQUFlO3NCQURkLEtBQUs7Z0JBSU4sVUFBVTtzQkFEVCxLQUFLO2dCQUlOLG1CQUFtQjtzQkFEbEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IEZvZWhuQ29uZmlybU1vZGFsU2VydmljZSB9IGZyb20gJy4uL2ZvZWhuLWNvbmZpcm0tbW9kYWwvZm9laG4tY29uZmlybS1tb2RhbC5zZXJ2aWNlJztcbmltcG9ydCB7IEZvZWhuQ29uZmlybU1vZGFsQ29udGVudCB9IGZyb20gJy4uL2ZvZWhuLWNvbmZpcm0tbW9kYWwvZm9laG4tY29uZmlybS1tb2RhbC1jb250ZW50JztcbmltcG9ydCB7IFNka0V2ZW50VHlwZSB9IGZyb20gJy4uL3Nkay1ldmVudHMtbG9nZ2VyL3Nkay1ldmVudC10eXBlJztcbmltcG9ydCB7IFNka0V2ZW50c0xvZ2dlclNlcnZpY2UgfSBmcm9tICcuLi9zZGstZXZlbnRzLWxvZ2dlci9zZGstZXZlbnRzLWxvZ2dlci5zZXJ2aWNlJztcbmltcG9ydCB7IFNlc3Npb25JbmZvIH0gZnJvbSAnLi4vc2RrLXNlc3Npb24taW5mby9zZXNzaW9uLWluZm8uc2VydmljZSc7XG5pbXBvcnQgeyBCcmVhZGNydW1iLCBCcmVhZGNydW1iSXRlbSB9IGZyb20gJy4vYnJlYWRjcnVtYic7XG5pbXBvcnQgeyBCcmVhZGNydW1iRXZlbnRTZXJ2aWNlIH0gZnJvbSAnLi9icmVhZGNydW1iLWV2ZW50LnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2ZvZWhuLWJyZWFkY3J1bWInLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9mb2Vobi1icmVhZGNydW1iLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9mb2Vobi1icmVhZGNydW1iLmNvbXBvbmVudC5jc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBGb2VobkJyZWFkY3J1bWJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gICAgQElucHV0KClcbiAgICBicmVhZGNydW1iSXRlbXM6IEJyZWFkY3J1bWJJdGVtW10gPSBbXTtcblxuICAgIEBJbnB1dCgpXG4gICAgY3VycmVudE5hdjogc3RyaW5nO1xuXG4gICAgQElucHV0KClcbiAgICBjb25maXJtTGVhdmluZ0FsZXJ0OiBGb2VobkNvbmZpcm1Nb2RhbENvbnRlbnQ7XG5cbiAgICBwcml2YXRlIGJyZWFkY3J1bWJTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIGJyZWFkY3J1bWJTZXJ2aWNlOiBCcmVhZGNydW1iRXZlbnRTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyLFxuICAgICAgICBwcml2YXRlIGZvZWhuQ29uZmlybU1vZGFsU2VydmljZTogRm9laG5Db25maXJtTW9kYWxTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIHNlc3Npb25JbmZvOiBTZXNzaW9uSW5mbyxcbiAgICAgICAgcHJpdmF0ZSBzZGtFdmVudHNMb2dnZXJTZXJ2aWNlOiBTZGtFdmVudHNMb2dnZXJTZXJ2aWNlXG4gICAgKSB7fVxuXG4gICAgcmVzZXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuYnJlYWRjcnVtYkl0ZW1zID0gW107XG4gICAgICAgIHRoaXMuY3VycmVudE5hdiA9IG51bGw7XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGJyZWFkY3J1bWJPYnNlcnZhYmxlID0gdGhpcy5zZXNzaW9uSW5mby5uZXZlckNvbm5lY3RlZFxuICAgICAgICAgICAgPyB0aGlzLmJyZWFkY3J1bWJTZXJ2aWNlLm5ldmVyQ29ubmVjdGVkQnJlYWRjcnVtYk9ic2VydmFibGUoKVxuICAgICAgICAgICAgOiB0aGlzLmJyZWFkY3J1bWJTZXJ2aWNlLmJyZWFkY3J1bWJPYnNlcnZhYmxlKCk7XG5cbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHJ4anMtYW5ndWxhci9wcmVmZXItYXN5bmMtcGlwZVxuICAgICAgICB0aGlzLmJyZWFkY3J1bWJTdWJzY3JpcHRpb24gPSBicmVhZGNydW1iT2JzZXJ2YWJsZS5zdWJzY3JpYmUoXG4gICAgICAgICAgICAoYmM6IEJyZWFkY3J1bWIpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoYmMgJiYgYmMuYnJlYWRjcnVtYkl0ZW1zICYmIGJjLmJyZWFkY3J1bWJJdGVtcy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuYnJlYWRjcnVtYkl0ZW1zID0gYmMuYnJlYWRjcnVtYkl0ZW1zO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmN1cnJlbnROYXYgPSBiYy5jdXJyZW50ID8gYmMuY3VycmVudC5sYWJlbCA6IG51bGw7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5yZXNldCgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5icmVhZGNydW1iU3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpO1xuICAgICAgICB0aGlzLmJyZWFkY3J1bWJTdWJzY3JpcHRpb24gPSBudWxsO1xuICAgIH1cblxuICAgIGNvbmZpcm1BbmRMZWF2ZShpdGVtOiBCcmVhZGNydW1iSXRlbSk6IHZvaWQge1xuICAgICAgICBpZiAoXG4gICAgICAgICAgICAhdGhpcy5icmVhZGNydW1iU2VydmljZS5za2lwTGVhdmluZ0FsZXJ0QmVjYXVzZURlbWFuZElzVHJhbnNtaXR0ZWRcbiAgICAgICAgKSB7XG4gICAgICAgICAgICBpZiAoaXRlbS5za2lwTGVhdmluZ0FsZXJ0ICE9PSBmYWxzZSkge1xuICAgICAgICAgICAgICAgIHRoaXMubmF2aWdhdGUoaXRlbSk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHRoaXMuZm9laG5Db25maXJtTW9kYWxTZXJ2aWNlXG4gICAgICAgICAgICAgICAgICAgIC5vcGVuQ29uZmlybU1vZGFsKHRoaXMuY29uZmlybUxlYXZpbmdBbGVydClcbiAgICAgICAgICAgICAgICAgICAgLnRoZW4oXG4gICAgICAgICAgICAgICAgICAgICAgICAoKSA9PiB0aGlzLm5hdmlnYXRlKGl0ZW0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1lbXB0eS1mdW5jdGlvblxuICAgICAgICAgICAgICAgICAgICAgICAgKCkgPT4ge31cbiAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMubmF2aWdhdGUoaXRlbSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICByZWRpcmVjdChpdGVtOiBCcmVhZGNydW1iSXRlbSk6IHZvaWQge1xuICAgICAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9IGl0ZW0udXJsO1xuICAgIH1cblxuICAgIHByaXZhdGUgbmF2aWdhdGUoaXRlbTogQnJlYWRjcnVtYkl0ZW0pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5hZGRCcmVhZGNydW1iQ2xpY2tFdmVudFRvTG9nZ2VyKGl0ZW0pO1xuICAgICAgICBpZiAoaXRlbS5yb3V0ZXJMaW5rICYmICFpdGVtLnJvdXRlckxpbmtRdWVyeVBhcmFtcykge1xuICAgICAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW2l0ZW0ucm91dGVyTGlua10pO1xuICAgICAgICB9IGVsc2UgaWYgKGl0ZW0ucm91dGVyTGluayAmJiBpdGVtLnJvdXRlckxpbmtRdWVyeVBhcmFtcykge1xuICAgICAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW2l0ZW0ucm91dGVyTGlua10sIHtcbiAgICAgICAgICAgICAgICBxdWVyeVBhcmFtczogaXRlbS5yb3V0ZXJMaW5rUXVlcnlQYXJhbXNcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9IGVsc2UgaWYgKGl0ZW0udXJsKSB7XG4gICAgICAgICAgICB0aGlzLnJlZGlyZWN0KGl0ZW0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBhZGRCcmVhZGNydW1iQ2xpY2tFdmVudFRvTG9nZ2VyKGl0ZW06IEJyZWFkY3J1bWJJdGVtKTogdm9pZCB7XG4gICAgICAgIGxldCBkZXRhaWw6IHN0cmluZztcbiAgICAgICAgaWYgKGl0ZW0/LnVybD8ubGVuZ3RoKSB7XG4gICAgICAgICAgICBkZXRhaWwgPSBgWyR7aXRlbS51cmx9XSR7aXRlbS5sYWJlbH1gO1xuICAgICAgICB9IGVsc2UgaWYgKGl0ZW0/LnJvdXRlckxpbms/Lmxlbmd0aCkge1xuICAgICAgICAgICAgZGV0YWlsID0gYFske2l0ZW0ucm91dGVyTGlua31gO1xuICAgICAgICAgICAgaWYgKGl0ZW0ucm91dGVyTGlua1F1ZXJ5UGFyYW1zKSB7XG4gICAgICAgICAgICAgICAgZGV0YWlsICs9IGA/JHtPYmplY3Qua2V5cyhpdGVtLnJvdXRlckxpbmtRdWVyeVBhcmFtcylcbiAgICAgICAgICAgICAgICAgICAgLm1hcChrZXkgPT4gYCR7a2V5fT0ke2l0ZW0ucm91dGVyTGlua1F1ZXJ5UGFyYW1zW2tleV19YClcbiAgICAgICAgICAgICAgICAgICAgLmpvaW4oJyYnKX1gO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZGV0YWlsICs9IGBdJHtpdGVtLmxhYmVsfWA7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5zZGtFdmVudHNMb2dnZXJTZXJ2aWNlLmFkZEV2ZW50KFxuICAgICAgICAgICAgU2RrRXZlbnRUeXBlLkJSRUFEQ1JVTUJfQ0xJQ0ssXG4gICAgICAgICAgICBkZXRhaWxcbiAgICAgICAgKTtcbiAgICB9XG59XG4iLCI8bmF2XG4gICAgaWQ9XCJwYWdlLWJyZWFkY3J1bWJcIlxuICAgIGFyaWEtbGFiZWw9XCJGaWwgZCdBcmlhbmVcIlxuICAgICpuZ0lmPVwiYnJlYWRjcnVtYkl0ZW1zLmxlbmd0aCA+IDBcIlxuPlxuICAgIDxoMiBjbGFzcz1cInZpc3VhbGx5LWhpZGRlblwiPkZpbCBkJ0FyaWFuZTwvaDI+XG4gICAgPG9sIGNsYXNzPVwiYnJlYWRjcnVtYiBicmVhZGNydW1iLS1vdmVycmlkZVwiPlxuICAgICAgICA8bGkgY2xhc3M9XCJicmVhZGNydW1iLWl0ZW1cIiAqbmdGb3I9XCJsZXQgaXRlbSBvZiBicmVhZGNydW1iSXRlbXNcIj5cbiAgICAgICAgICAgIDxhXG4gICAgICAgICAgICAgICAgKm5nSWY9XCJpdGVtLnVybCB8fCBpdGVtLnJvdXRlckxpbmtcIlxuICAgICAgICAgICAgICAgIChjbGljayk9XCIkZXZlbnQucHJldmVudERlZmF1bHQoKTsgY29uZmlybUFuZExlYXZlKGl0ZW0pXCJcbiAgICAgICAgICAgICAgICBbaHJlZl09XCJpdGVtLnVybCA/IGl0ZW0udXJsIDogJyMnXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7eyBpdGVtLmxhYmVsIH19XG4gICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWl0ZW0udXJsICYmICFpdGVtLnJvdXRlckxpbmtcIj5cbiAgICAgICAgICAgICAgICB7eyBpdGVtLmxhYmVsIH19XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9saT5cbiAgICAgICAgPGxpIGNsYXNzPVwidmlzdWFsbHktaGlkZGVuXCIgYXJpYS1jdXJyZW50PVwicGFnZVwiICpuZ0lmPVwiY3VycmVudE5hdlwiPlxuICAgICAgICAgICAge3sgY3VycmVudE5hdiB9fVxuICAgICAgICA8L2xpPlxuICAgIDwvb2w+XG48L25hdj5cbiJdfQ==
|
|
105
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9laG4tYnJlYWRjcnVtYi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9wcmVzdGF0aW9ucy1uZy9zcmMvZm9laG4tYnJlYWRjcnVtYi9mb2Vobi1icmVhZGNydW1iLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3Byb2plY3RzL3ByZXN0YXRpb25zLW5nL3NyYy9mb2Vobi1icmVhZGNydW1iL2ZvZWhuLWJyZWFkY3J1bWIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBTXBFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQzs7Ozs7Ozs7QUFXbkUsTUFBTSxPQUFPLHdCQUF3QjtJQVlqQyxZQUNZLGlCQUF5QyxFQUN6QyxNQUFjLEVBQ2Qsd0JBQWtELEVBQ2xELFdBQXdCLEVBQ3hCLHNCQUE4QztRQUo5QyxzQkFBaUIsR0FBakIsaUJBQWlCLENBQXdCO1FBQ3pDLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDZCw2QkFBd0IsR0FBeEIsd0JBQXdCLENBQTBCO1FBQ2xELGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQ3hCLDJCQUFzQixHQUF0QixzQkFBc0IsQ0FBd0I7UUFmMUQsb0JBQWUsR0FBcUIsRUFBRSxDQUFDO0lBZ0JwQyxDQUFDO0lBRUosS0FBSztRQUNELElBQUksQ0FBQyxlQUFlLEdBQUcsRUFBRSxDQUFDO1FBQzFCLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO0lBQzNCLENBQUM7SUFFRCxRQUFRO1FBQ0osTUFBTSxvQkFBb0IsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLGNBQWM7WUFDeEQsQ0FBQyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxrQ0FBa0MsRUFBRTtZQUM3RCxDQUFDLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLG9C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QUFJLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUMvQixJQUFJLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO2dCQUM3QixNQUFNLElBQUksSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQztxQkFDaEQsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxHQUFHLElBQUksSUFBSSxDQUFDLHFCQUFxQixDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUM7cUJBQ3ZELElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDO1lBQ3JCLENBQUM7WUFDRCxNQUFNLElBQUksSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDL0IsQ0FBQztRQUNELElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxRQUFRLENBQ2hDLFlBQVksQ0FBQyxnQkFBZ0IsRUFDN0IsTUFBTSxDQUNULENBQUM7SUFDTixDQUFDOytHQXRHUSx3QkFBd0I7bUdBQXhCLHdCQUF3Qiw4S0NqQnJDLDIxQkF3QkE7OzRGRFBhLHdCQUF3QjtrQkFMcEMsU0FBUzsrQkFDSSxrQkFBa0I7c05BTTVCLGVBQWU7c0JBRGQsS0FBSztnQkFJTixVQUFVO3NCQURULEtBQUs7Z0JBSU4sbUJBQW1CO3NCQURsQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgRm9laG5Db25maXJtTW9kYWxTZXJ2aWNlIH0gZnJvbSAnLi4vZm9laG4tY29uZmlybS1tb2RhbC9mb2Vobi1jb25maXJtLW1vZGFsLnNlcnZpY2UnO1xuaW1wb3J0IHsgRm9laG5Db25maXJtTW9kYWxDb250ZW50IH0gZnJvbSAnLi4vZm9laG4tY29uZmlybS1tb2RhbC9mb2Vobi1jb25maXJtLW1vZGFsLWNvbnRlbnQnO1xuaW1wb3J0IHsgU2RrRXZlbnRUeXBlIH0gZnJvbSAnLi4vc2RrLWV2ZW50cy1sb2dnZXIvc2RrLWV2ZW50LXR5cGUnO1xuaW1wb3J0IHsgU2RrRXZlbnRzTG9nZ2VyU2VydmljZSB9IGZyb20gJy4uL3Nkay1ldmVudHMtbG9nZ2VyL3Nkay1ldmVudHMtbG9nZ2VyLnNlcnZpY2UnO1xuaW1wb3J0IHsgU2Vzc2lvbkluZm8gfSBmcm9tICcuLi9zZGstc2Vzc2lvbi1pbmZvL3Nlc3Npb24taW5mby5zZXJ2aWNlJztcbmltcG9ydCB7IEJyZWFkY3J1bWIsIEJyZWFkY3J1bWJJdGVtIH0gZnJvbSAnLi9icmVhZGNydW1iJztcbmltcG9ydCB7IEJyZWFkY3J1bWJFdmVudFNlcnZpY2UgfSBmcm9tICcuL2JyZWFkY3J1bWItZXZlbnQuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZm9laG4tYnJlYWRjcnVtYicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2ZvZWhuLWJyZWFkY3J1bWIuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2ZvZWhuLWJyZWFkY3J1bWIuY29tcG9uZW50LmNzcyddXG59KVxuZXhwb3J0IGNsYXNzIEZvZWhuQnJlYWRjcnVtYkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgICBASW5wdXQoKVxuICAgIGJyZWFkY3J1bWJJdGVtczogQnJlYWRjcnVtYkl0ZW1bXSA9IFtdO1xuXG4gICAgQElucHV0KClcbiAgICBjdXJyZW50TmF2OiBzdHJpbmc7XG5cbiAgICBASW5wdXQoKVxuICAgIGNvbmZpcm1MZWF2aW5nQWxlcnQ6IEZvZWhuQ29uZmlybU1vZGFsQ29udGVudDtcblxuICAgIHByaXZhdGUgYnJlYWRjcnVtYlN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgYnJlYWRjcnVtYlNlcnZpY2U6IEJyZWFkY3J1bWJFdmVudFNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsXG4gICAgICAgIHByaXZhdGUgZm9laG5Db25maXJtTW9kYWxTZXJ2aWNlOiBGb2VobkNvbmZpcm1Nb2RhbFNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgc2Vzc2lvbkluZm86IFNlc3Npb25JbmZvLFxuICAgICAgICBwcml2YXRlIHNka0V2ZW50c0xvZ2dlclNlcnZpY2U6IFNka0V2ZW50c0xvZ2dlclNlcnZpY2VcbiAgICApIHt9XG5cbiAgICByZXNldCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5icmVhZGNydW1iSXRlbXMgPSBbXTtcbiAgICAgICAgdGhpcy5jdXJyZW50TmF2ID0gbnVsbDtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgYnJlYWRjcnVtYk9ic2VydmFibGUgPSB0aGlzLnNlc3Npb25JbmZvLm5ldmVyQ29ubmVjdGVkXG4gICAgICAgICAgICA/IHRoaXMuYnJlYWRjcnVtYlNlcnZpY2UubmV2ZXJDb25uZWN0ZWRCcmVhZGNydW1iT2JzZXJ2YWJsZSgpXG4gICAgICAgICAgICA6IHRoaXMuYnJlYWRjcnVtYlNlcnZpY2UuYnJlYWRjcnVtYk9ic2VydmFibGUoKTtcblxuICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcnhqcy1hbmd1bGFyL3ByZWZlci1hc3luYy1waXBlXG4gICAgICAgIHRoaXMuYnJlYWRjcnVtYlN1YnNjcmlwdGlvbiA9IGJyZWFkY3J1bWJPYnNlcnZhYmxlLnN1YnNjcmliZShcbiAgICAgICAgICAgIChiYzogQnJlYWRjcnVtYikgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChiYyAmJiBiYy5icmVhZGNydW1iSXRlbXMgJiYgYmMuYnJlYWRjcnVtYkl0ZW1zLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5icmVhZGNydW1iSXRlbXMgPSBiYy5icmVhZGNydW1iSXRlbXM7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY3VycmVudE5hdiA9IGJjLmN1cnJlbnQgPyBiYy5jdXJyZW50LmxhYmVsIDogbnVsbDtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnJlc2V0KCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICApO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmJyZWFkY3J1bWJTdWJzY3JpcHRpb24/LnVuc3Vic2NyaWJlKCk7XG4gICAgICAgIHRoaXMuYnJlYWRjcnVtYlN1YnNjcmlwdGlvbiA9IG51bGw7XG4gICAgfVxuXG4gICAgY29uZmlybUFuZExlYXZlKGl0ZW06IEJyZWFkY3J1bWJJdGVtKTogdm9pZCB7XG4gICAgICAgIGlmIChcbiAgICAgICAgICAgICF0aGlzLmJyZWFkY3J1bWJTZXJ2aWNlLnNraXBMZWF2aW5nQWxlcnRCZWNhdXNlRGVtYW5kSXNUcmFuc21pdHRlZFxuICAgICAgICApIHtcbiAgICAgICAgICAgIGlmIChpdGVtLnNraXBMZWF2aW5nQWxlcnQgIT09IGZhbHNlKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5uYXZpZ2F0ZShpdGVtKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhpcy5mb2VobkNvbmZpcm1Nb2RhbFNlcnZpY2VcbiAgICAgICAgICAgICAgICAgICAgLm9wZW5Db25maXJtTW9kYWwodGhpcy5jb25maXJtTGVhdmluZ0FsZXJ0KVxuICAgICAgICAgICAgICAgICAgICAudGhlbihcbiAgICAgICAgICAgICAgICAgICAgICAgICgpID0+IHRoaXMubmF2aWdhdGUoaXRlbSksXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWVtcHR5LWZ1bmN0aW9uXG4gICAgICAgICAgICAgICAgICAgICAgICAoKSA9PiB7fVxuICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5uYXZpZ2F0ZShpdGVtKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHJlZGlyZWN0KGl0ZW06IEJyZWFkY3J1bWJJdGVtKTogdm9pZCB7XG4gICAgICAgIHdpbmRvdy5vcGVuKGl0ZW0udXJsLCAnX2JsYW5rJyk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBuYXZpZ2F0ZShpdGVtOiBCcmVhZGNydW1iSXRlbSk6IHZvaWQge1xuICAgICAgICB0aGlzLmFkZEJyZWFkY3J1bWJDbGlja0V2ZW50VG9Mb2dnZXIoaXRlbSk7XG4gICAgICAgIGlmIChpdGVtLnJvdXRlckxpbmsgJiYgIWl0ZW0ucm91dGVyTGlua1F1ZXJ5UGFyYW1zKSB7XG4gICAgICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbaXRlbS5yb3V0ZXJMaW5rXSk7XG4gICAgICAgIH0gZWxzZSBpZiAoaXRlbS5yb3V0ZXJMaW5rICYmIGl0ZW0ucm91dGVyTGlua1F1ZXJ5UGFyYW1zKSB7XG4gICAgICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbaXRlbS5yb3V0ZXJMaW5rXSwge1xuICAgICAgICAgICAgICAgIHF1ZXJ5UGFyYW1zOiBpdGVtLnJvdXRlckxpbmtRdWVyeVBhcmFtc1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0gZWxzZSBpZiAoaXRlbS51cmwpIHtcbiAgICAgICAgICAgIHRoaXMucmVkaXJlY3QoaXRlbSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIGFkZEJyZWFkY3J1bWJDbGlja0V2ZW50VG9Mb2dnZXIoaXRlbTogQnJlYWRjcnVtYkl0ZW0pOiB2b2lkIHtcbiAgICAgICAgbGV0IGRldGFpbDogc3RyaW5nO1xuICAgICAgICBpZiAoaXRlbT8udXJsPy5sZW5ndGgpIHtcbiAgICAgICAgICAgIGRldGFpbCA9IGBbJHtpdGVtLnVybH1dJHtpdGVtLmxhYmVsfWA7XG4gICAgICAgIH0gZWxzZSBpZiAoaXRlbT8ucm91dGVyTGluaz8ubGVuZ3RoKSB7XG4gICAgICAgICAgICBkZXRhaWwgPSBgWyR7aXRlbS5yb3V0ZXJMaW5rfWA7XG4gICAgICAgICAgICBpZiAoaXRlbS5yb3V0ZXJMaW5rUXVlcnlQYXJhbXMpIHtcbiAgICAgICAgICAgICAgICBkZXRhaWwgKz0gYD8ke09iamVjdC5rZXlzKGl0ZW0ucm91dGVyTGlua1F1ZXJ5UGFyYW1zKVxuICAgICAgICAgICAgICAgICAgICAubWFwKGtleSA9PiBgJHtrZXl9PSR7aXRlbS5yb3V0ZXJMaW5rUXVlcnlQYXJhbXNba2V5XX1gKVxuICAgICAgICAgICAgICAgICAgICAuam9pbignJicpfWA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBkZXRhaWwgKz0gYF0ke2l0ZW0ubGFiZWx9YDtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLnNka0V2ZW50c0xvZ2dlclNlcnZpY2UuYWRkRXZlbnQoXG4gICAgICAgICAgICBTZGtFdmVudFR5cGUuQlJFQURDUlVNQl9DTElDSyxcbiAgICAgICAgICAgIGRldGFpbFxuICAgICAgICApO1xuICAgIH1cbn1cbiIsIjxuYXZcbiAgICBpZD1cInBhZ2UtYnJlYWRjcnVtYlwiXG4gICAgYXJpYS1sYWJlbD1cIkZpbCBkJ0FyaWFuZVwiXG4gICAgKm5nSWY9XCJicmVhZGNydW1iSXRlbXMubGVuZ3RoID4gMFwiXG4+XG4gICAgPGgyIGNsYXNzPVwidmlzdWFsbHktaGlkZGVuXCI+RmlsIGQnQXJpYW5lPC9oMj5cbiAgICA8b2wgY2xhc3M9XCJicmVhZGNydW1iIGJyZWFkY3J1bWItLW92ZXJyaWRlXCI+XG4gICAgICAgIDxsaSBjbGFzcz1cImJyZWFkY3J1bWItaXRlbVwiICpuZ0Zvcj1cImxldCBpdGVtIG9mIGJyZWFkY3J1bWJJdGVtc1wiPlxuICAgICAgICAgICAgPGFcbiAgICAgICAgICAgICAgICAqbmdJZj1cIml0ZW0udXJsIHx8IGl0ZW0ucm91dGVyTGlua1wiXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cIiRldmVudC5wcmV2ZW50RGVmYXVsdCgpOyBjb25maXJtQW5kTGVhdmUoaXRlbSlcIlxuICAgICAgICAgICAgICAgIFtocmVmXT1cIml0ZW0udXJsID8gaXRlbS51cmwgOiAnIydcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIHt7IGl0ZW0ubGFiZWwgfX1cbiAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhaXRlbS51cmwgJiYgIWl0ZW0ucm91dGVyTGlua1wiPlxuICAgICAgICAgICAgICAgIHt7IGl0ZW0ubGFiZWwgfX1cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8L2xpPlxuICAgICAgICA8bGkgY2xhc3M9XCJ2aXN1YWxseS1oaWRkZW5cIiBhcmlhLWN1cnJlbnQ9XCJwYWdlXCIgKm5nSWY9XCJjdXJyZW50TmF2XCI+XG4gICAgICAgICAgICB7eyBjdXJyZW50TmF2IH19XG4gICAgICAgIDwvbGk+XG4gICAgPC9vbD5cbjwvbmF2PlxuIl19
|
|
@@ -3,4 +3,4 @@ export class DropdownMenuItem {
|
|
|
3
3
|
this.target = '_self';
|
|
4
4
|
}
|
|
5
5
|
}
|
|
6
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24tbWVudS1pdGVtLnR5cGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9wcmVzdGF0aW9ucy1uZy9zcmMvZm9laG4tZHJvcGRvd24tbWVudS9kcm9wZG93bi1tZW51LWl0ZW0udHlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLE9BQU8sZ0JBQWdCO0lBQTdCO1FBTUksV0FBTSxHQUE2QyxPQUFPLENBQUM7SUFDL0QsQ0FBQztDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGFyYW1zIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcblxuZXhwb3J0IGNsYXNzIERyb3Bkb3duTWVudUl0ZW0ge1xuICAgIHRpdGxlOiBzdHJpbmc7XG4gICAgbGFiZWw6IHN0cmluZztcbiAgICByb3V0ZXJMaW5rPzogc3RyaW5nO1xuICAgIHF1ZXJ5UGFyYW1zPzogUGFyYW1zO1xuICAgIGhyZWY/OiBzdHJpbmc7XG4gICAgdGFyZ2V0PzogJ19zZWxmJyB8ICdfYmxhbmsnIHwgJ19wYXJlbnQnIHwgJ190b3AnID0gJ19zZWxmJztcbn1cbiJdfQ==
|
|
@@ -177,11 +177,11 @@ export class FoehnDropdownMenuComponent {
|
|
|
177
177
|
}
|
|
178
178
|
}
|
|
179
179
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FoehnDropdownMenuComponent, deps: [{ token: i1.Router }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
180
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: FoehnDropdownMenuComponent, selector: "foehn-dropdown-menu", inputs: { id: "id", label: "label", model: "model", btnCssClass: "btnCssClass" }, host: { listeners: { "keyup": "handleKeyboardUpEvent($event)", "keydown": "handleKeyboardDownEvent($event)" }, properties: { "attr.id": "this.hostId" } }, viewQueries: [{ propertyName: "buttonTrigger", first: true, predicate: ["buttonTrigger"], descendants: true, static: true }, { propertyName: "entryPoint", first: true, predicate: ["entryPoint"], descendants: true }, { propertyName: "selectedFocusList", predicate: ["selectedFocusList"], descendants: true }], ngImport: i0, template: "<nav\n [attr.id]=\"buildId('NavContainer')\"\n tabindex=\"-1\"\n [attr.aria-label]=\"'foehn-dropdown-menu.aria-label' | fromDictionary\"\n>\n <button\n [attr.id]=\"buildId('TriggerButton')\"\n type=\"button\"\n class=\"d-flex align-items-center btn\"\n [ngClass]=\"btnCssClass\"\n (click)=\"toggleDropdownVisibility()\"\n (focusin)=\"handleFocusIn()\"\n (focusout)=\"handleFocusOut()\"\n [attr.aria-haspopup]=\"true\"\n [attr.aria-expanded]=\"isDropdownVisible\"\n [attr.aria-controls]=\"'dropdown-menu-list'\"\n [attr.aria-label]=\"label || null\"\n #buttonTrigger\n >\n <ng-content></ng-content>\n </button>\n\n <div class=\"dropdown-menu-container\" *ngIf=\"!!model && isDropdownVisible\">\n <ul\n id=\"dropdown-menu-list\"\n class=\"parent-list list-group\"\n (focusin)=\"handleFocusIn()\"\n (focusout)=\"handleFocusOut()\"\n [style.left.px]=\"popupPosition.left\"\n [style.top.px]=\"popupPosition.top\"\n tabindex=\"-1\"\n #entryPoint\n >\n <ng-container *ngFor=\"let group of model; let i = index\">\n <ng-container *ngIf=\"!!group.title\">\n <li\n *ngIf=\"i > 0\"\n class=\"list-group-item item-divider\"\n [attr.role]=\"'separator'\"\n ></li>\n <li\n class=\"list-group-item list-group-title\"\n tabindex=\"0\"\n #selectedFocusList\n >\n <strong *ngIf=\"!!group.title\">{{ group.title }}</strong>\n <ul class=\"child-list list-group\">\n <li\n *ngFor=\"let item of group.items\"\n class=\"list-group-item\"\n #selectedFocusList\n >\n <ng-container\n [ngTemplateOutlet]=\"itemLink\"\n [ngTemplateOutletContext]=\"{ item: item }\"\n ></ng-container>\n </li>\n </ul>\n </li>\n </ng-container>\n <ng-container *ngIf=\"!group.title\">\n <li\n *ngIf=\"i > 0\"\n class=\"list-group-item item-divider\"\n [attr.role]=\"'separator'\"\n ></li>\n <li\n *ngFor=\"let item of group.items; let j = index\"\n class=\"list-group-item\"\n #selectedFocusList\n >\n <ng-container\n [ngTemplateOutlet]=\"itemLink\"\n [ngTemplateOutletContext]=\"{ item: item }\"\n ></ng-container>\n </li>\n </ng-container>\n </ng-container>\n </ul>\n </div>\n</nav>\n\n<ng-template #itemLink let-item=\"item\">\n <a\n *ngIf=\"!!item.routerLink\"\n [attr.title]=\"item.title\"\n [routerLink]=\"item.routerLink\"\n [innerHTML]=\"item.label\"\n [attr.use-router]=\"true\"\n ></a>\n <a\n *ngIf=\"!item.routerLink\"\n [attr.title]=\"item.title\"\n [attr.href]=\"item.href\"\n [attr.target]=\"item.target\"\n [innerHTML]=\"item.label\"\n [attr.use-router]=\"false\"\n ></a>\n</ng-template>\n", styles: [":host ::ng-deep .btn .svg-inline--fa{color:#000!important}nav button:after{display:inline-block;width:0;height:0;margin-left:.3em;content:\"\";border-top:.4em solid;border-right:.4em solid transparent;border-bottom:0;border-left:.4em solid transparent}nav button.btn.btn-link:after{color:#000}.dropdown-menu-container{position:relative;width:100%}.dropdown-menu-container .parent-list{position:absolute;top:0;left:0;z-index:9999;box-shadow:0 4px 8px #0003,0 6px 20px #00000030;background-color:#fff;width:max-content;max-width:350px}.dropdown-menu-container .list-group-item{border:0;padding:0}.dropdown-menu-container li.item-divider{border-top:1px solid #ddd!important}.dropdown-menu-container li a{width:100%;color:inherit;display:block;padding:.75rem;word-break:break-word}.dropdown-menu-container li.list-group-title strong{padding-left:.75rem}.dropdown-menu-container ul.child-list a{padding-left:1.5rem}.dropdown-menu-container li a:focus{box-shadow:none}.dropdown-menu-container li.list-group-item:hover,.dropdown-menu-container li.list-group-item a:focus{background-color:var(--vd-primary-dark);outline:none;color:#fff}.dropdown-menu-container .list-group-title{padding-top:.5rem}.dropdown-menu-container li.list-group-title:hover{background:none;color:inherit}.dropdown-menu-container li.list-group-title:focus{outline:0;box-shadow:inset 0 1px 1px #00000013,0 0 0 .2rem var(--vd-focus)}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "pipe", type: i3.SdkDictionaryPipe, name: "fromDictionary" }] }); }
|
|
180
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: FoehnDropdownMenuComponent, selector: "foehn-dropdown-menu", inputs: { id: "id", label: "label", model: "model", btnCssClass: "btnCssClass" }, host: { listeners: { "keyup": "handleKeyboardUpEvent($event)", "keydown": "handleKeyboardDownEvent($event)" }, properties: { "attr.id": "this.hostId" } }, viewQueries: [{ propertyName: "buttonTrigger", first: true, predicate: ["buttonTrigger"], descendants: true, static: true }, { propertyName: "entryPoint", first: true, predicate: ["entryPoint"], descendants: true }, { propertyName: "selectedFocusList", predicate: ["selectedFocusList"], descendants: true }], ngImport: i0, template: "<nav\n [attr.id]=\"buildId('NavContainer')\"\n tabindex=\"-1\"\n [attr.aria-label]=\"'foehn-dropdown-menu.aria-label' | fromDictionary\"\n>\n <button\n [attr.id]=\"buildId('TriggerButton')\"\n type=\"button\"\n class=\"d-flex align-items-center btn\"\n [ngClass]=\"btnCssClass\"\n (click)=\"toggleDropdownVisibility()\"\n (focusin)=\"handleFocusIn()\"\n (focusout)=\"handleFocusOut()\"\n [attr.aria-haspopup]=\"true\"\n [attr.aria-expanded]=\"isDropdownVisible\"\n [attr.aria-controls]=\"'dropdown-menu-list'\"\n [attr.aria-label]=\"label || null\"\n #buttonTrigger\n >\n <ng-content></ng-content>\n </button>\n\n <div class=\"dropdown-menu-container\" *ngIf=\"!!model && isDropdownVisible\">\n <ul\n id=\"dropdown-menu-list\"\n class=\"parent-list list-group\"\n (focusin)=\"handleFocusIn()\"\n (focusout)=\"handleFocusOut()\"\n [style.left.px]=\"popupPosition.left\"\n [style.top.px]=\"popupPosition.top\"\n tabindex=\"-1\"\n #entryPoint\n >\n <ng-container *ngFor=\"let group of model; let i = index\">\n <ng-container *ngIf=\"!!group.title\">\n <li\n *ngIf=\"i > 0\"\n class=\"list-group-item item-divider\"\n [attr.role]=\"'separator'\"\n ></li>\n <li\n class=\"list-group-item list-group-title\"\n tabindex=\"0\"\n #selectedFocusList\n >\n <strong *ngIf=\"!!group.title\">{{ group.title }}</strong>\n <ul class=\"child-list list-group\">\n <li\n *ngFor=\"let item of group.items\"\n class=\"list-group-item\"\n #selectedFocusList\n >\n <ng-container\n [ngTemplateOutlet]=\"itemLink\"\n [ngTemplateOutletContext]=\"{ item: item }\"\n ></ng-container>\n </li>\n </ul>\n </li>\n </ng-container>\n <ng-container *ngIf=\"!group.title\">\n <li\n *ngIf=\"i > 0\"\n class=\"list-group-item item-divider\"\n [attr.role]=\"'separator'\"\n ></li>\n <li\n *ngFor=\"let item of group.items; let j = index\"\n class=\"list-group-item\"\n #selectedFocusList\n >\n <ng-container\n [ngTemplateOutlet]=\"itemLink\"\n [ngTemplateOutletContext]=\"{ item: item }\"\n ></ng-container>\n </li>\n </ng-container>\n </ng-container>\n </ul>\n </div>\n</nav>\n\n<ng-template #itemLink let-item=\"item\">\n <a\n *ngIf=\"!!item.routerLink\"\n [attr.title]=\"item.title\"\n [routerLink]=\"item.routerLink\"\n [queryParams]=\"item.queryParams\"\n [innerHTML]=\"item.label\"\n [attr.use-router]=\"true\"\n ></a>\n <a\n *ngIf=\"!item.routerLink\"\n [attr.title]=\"item.title\"\n [attr.href]=\"item.href\"\n [attr.target]=\"item.target\"\n [innerHTML]=\"item.label\"\n [attr.use-router]=\"false\"\n ></a>\n</ng-template>\n", styles: [":host ::ng-deep .btn .svg-inline--fa{color:#000!important}nav button:after{display:inline-block;width:0;height:0;margin-left:.3em;content:\"\";border-top:.4em solid;border-right:.4em solid transparent;border-bottom:0;border-left:.4em solid transparent}nav button.btn.btn-link:after{color:#000}.dropdown-menu-container{position:relative;width:100%}.dropdown-menu-container .parent-list{position:absolute;top:0;left:0;z-index:9999;box-shadow:0 4px 8px #0003,0 6px 20px #00000030;background-color:#fff;width:max-content;max-width:350px}.dropdown-menu-container .list-group-item{border:0;padding:0}.dropdown-menu-container li.item-divider{border-top:1px solid #ddd!important}.dropdown-menu-container li a{width:100%;color:inherit;display:block;padding:.75rem;word-break:break-word}.dropdown-menu-container li.list-group-title strong{padding-left:.75rem}.dropdown-menu-container ul.child-list a{padding-left:1.5rem}.dropdown-menu-container li a:focus{box-shadow:none}.dropdown-menu-container li.list-group-item:hover,.dropdown-menu-container li.list-group-item a:focus{background-color:var(--vd-primary-dark);outline:none;color:#fff}.dropdown-menu-container .list-group-title{padding-top:.5rem}.dropdown-menu-container li.list-group-title:hover{background:none;color:inherit}.dropdown-menu-container li.list-group-title:focus{outline:0;box-shadow:inset 0 1px 1px #00000013,0 0 0 .2rem var(--vd-focus)}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "pipe", type: i3.SdkDictionaryPipe, name: "fromDictionary" }] }); }
|
|
181
181
|
}
|
|
182
182
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FoehnDropdownMenuComponent, decorators: [{
|
|
183
183
|
type: Component,
|
|
184
|
-
args: [{ selector: 'foehn-dropdown-menu', template: "<nav\n [attr.id]=\"buildId('NavContainer')\"\n tabindex=\"-1\"\n [attr.aria-label]=\"'foehn-dropdown-menu.aria-label' | fromDictionary\"\n>\n <button\n [attr.id]=\"buildId('TriggerButton')\"\n type=\"button\"\n class=\"d-flex align-items-center btn\"\n [ngClass]=\"btnCssClass\"\n (click)=\"toggleDropdownVisibility()\"\n (focusin)=\"handleFocusIn()\"\n (focusout)=\"handleFocusOut()\"\n [attr.aria-haspopup]=\"true\"\n [attr.aria-expanded]=\"isDropdownVisible\"\n [attr.aria-controls]=\"'dropdown-menu-list'\"\n [attr.aria-label]=\"label || null\"\n #buttonTrigger\n >\n <ng-content></ng-content>\n </button>\n\n <div class=\"dropdown-menu-container\" *ngIf=\"!!model && isDropdownVisible\">\n <ul\n id=\"dropdown-menu-list\"\n class=\"parent-list list-group\"\n (focusin)=\"handleFocusIn()\"\n (focusout)=\"handleFocusOut()\"\n [style.left.px]=\"popupPosition.left\"\n [style.top.px]=\"popupPosition.top\"\n tabindex=\"-1\"\n #entryPoint\n >\n <ng-container *ngFor=\"let group of model; let i = index\">\n <ng-container *ngIf=\"!!group.title\">\n <li\n *ngIf=\"i > 0\"\n class=\"list-group-item item-divider\"\n [attr.role]=\"'separator'\"\n ></li>\n <li\n class=\"list-group-item list-group-title\"\n tabindex=\"0\"\n #selectedFocusList\n >\n <strong *ngIf=\"!!group.title\">{{ group.title }}</strong>\n <ul class=\"child-list list-group\">\n <li\n *ngFor=\"let item of group.items\"\n class=\"list-group-item\"\n #selectedFocusList\n >\n <ng-container\n [ngTemplateOutlet]=\"itemLink\"\n [ngTemplateOutletContext]=\"{ item: item }\"\n ></ng-container>\n </li>\n </ul>\n </li>\n </ng-container>\n <ng-container *ngIf=\"!group.title\">\n <li\n *ngIf=\"i > 0\"\n class=\"list-group-item item-divider\"\n [attr.role]=\"'separator'\"\n ></li>\n <li\n *ngFor=\"let item of group.items; let j = index\"\n class=\"list-group-item\"\n #selectedFocusList\n >\n <ng-container\n [ngTemplateOutlet]=\"itemLink\"\n [ngTemplateOutletContext]=\"{ item: item }\"\n ></ng-container>\n </li>\n </ng-container>\n </ng-container>\n </ul>\n </div>\n</nav>\n\n<ng-template #itemLink let-item=\"item\">\n <a\n *ngIf=\"!!item.routerLink\"\n [attr.title]=\"item.title\"\n [routerLink]=\"item.routerLink\"\n [innerHTML]=\"item.label\"\n [attr.use-router]=\"true\"\n ></a>\n <a\n *ngIf=\"!item.routerLink\"\n [attr.title]=\"item.title\"\n [attr.href]=\"item.href\"\n [attr.target]=\"item.target\"\n [innerHTML]=\"item.label\"\n [attr.use-router]=\"false\"\n ></a>\n</ng-template>\n", styles: [":host ::ng-deep .btn .svg-inline--fa{color:#000!important}nav button:after{display:inline-block;width:0;height:0;margin-left:.3em;content:\"\";border-top:.4em solid;border-right:.4em solid transparent;border-bottom:0;border-left:.4em solid transparent}nav button.btn.btn-link:after{color:#000}.dropdown-menu-container{position:relative;width:100%}.dropdown-menu-container .parent-list{position:absolute;top:0;left:0;z-index:9999;box-shadow:0 4px 8px #0003,0 6px 20px #00000030;background-color:#fff;width:max-content;max-width:350px}.dropdown-menu-container .list-group-item{border:0;padding:0}.dropdown-menu-container li.item-divider{border-top:1px solid #ddd!important}.dropdown-menu-container li a{width:100%;color:inherit;display:block;padding:.75rem;word-break:break-word}.dropdown-menu-container li.list-group-title strong{padding-left:.75rem}.dropdown-menu-container ul.child-list a{padding-left:1.5rem}.dropdown-menu-container li a:focus{box-shadow:none}.dropdown-menu-container li.list-group-item:hover,.dropdown-menu-container li.list-group-item a:focus{background-color:var(--vd-primary-dark);outline:none;color:#fff}.dropdown-menu-container .list-group-title{padding-top:.5rem}.dropdown-menu-container li.list-group-title:hover{background:none;color:inherit}.dropdown-menu-container li.list-group-title:focus{outline:0;box-shadow:inset 0 1px 1px #00000013,0 0 0 .2rem var(--vd-focus)}\n"] }]
|
|
184
|
+
args: [{ selector: 'foehn-dropdown-menu', template: "<nav\n [attr.id]=\"buildId('NavContainer')\"\n tabindex=\"-1\"\n [attr.aria-label]=\"'foehn-dropdown-menu.aria-label' | fromDictionary\"\n>\n <button\n [attr.id]=\"buildId('TriggerButton')\"\n type=\"button\"\n class=\"d-flex align-items-center btn\"\n [ngClass]=\"btnCssClass\"\n (click)=\"toggleDropdownVisibility()\"\n (focusin)=\"handleFocusIn()\"\n (focusout)=\"handleFocusOut()\"\n [attr.aria-haspopup]=\"true\"\n [attr.aria-expanded]=\"isDropdownVisible\"\n [attr.aria-controls]=\"'dropdown-menu-list'\"\n [attr.aria-label]=\"label || null\"\n #buttonTrigger\n >\n <ng-content></ng-content>\n </button>\n\n <div class=\"dropdown-menu-container\" *ngIf=\"!!model && isDropdownVisible\">\n <ul\n id=\"dropdown-menu-list\"\n class=\"parent-list list-group\"\n (focusin)=\"handleFocusIn()\"\n (focusout)=\"handleFocusOut()\"\n [style.left.px]=\"popupPosition.left\"\n [style.top.px]=\"popupPosition.top\"\n tabindex=\"-1\"\n #entryPoint\n >\n <ng-container *ngFor=\"let group of model; let i = index\">\n <ng-container *ngIf=\"!!group.title\">\n <li\n *ngIf=\"i > 0\"\n class=\"list-group-item item-divider\"\n [attr.role]=\"'separator'\"\n ></li>\n <li\n class=\"list-group-item list-group-title\"\n tabindex=\"0\"\n #selectedFocusList\n >\n <strong *ngIf=\"!!group.title\">{{ group.title }}</strong>\n <ul class=\"child-list list-group\">\n <li\n *ngFor=\"let item of group.items\"\n class=\"list-group-item\"\n #selectedFocusList\n >\n <ng-container\n [ngTemplateOutlet]=\"itemLink\"\n [ngTemplateOutletContext]=\"{ item: item }\"\n ></ng-container>\n </li>\n </ul>\n </li>\n </ng-container>\n <ng-container *ngIf=\"!group.title\">\n <li\n *ngIf=\"i > 0\"\n class=\"list-group-item item-divider\"\n [attr.role]=\"'separator'\"\n ></li>\n <li\n *ngFor=\"let item of group.items; let j = index\"\n class=\"list-group-item\"\n #selectedFocusList\n >\n <ng-container\n [ngTemplateOutlet]=\"itemLink\"\n [ngTemplateOutletContext]=\"{ item: item }\"\n ></ng-container>\n </li>\n </ng-container>\n </ng-container>\n </ul>\n </div>\n</nav>\n\n<ng-template #itemLink let-item=\"item\">\n <a\n *ngIf=\"!!item.routerLink\"\n [attr.title]=\"item.title\"\n [routerLink]=\"item.routerLink\"\n [queryParams]=\"item.queryParams\"\n [innerHTML]=\"item.label\"\n [attr.use-router]=\"true\"\n ></a>\n <a\n *ngIf=\"!item.routerLink\"\n [attr.title]=\"item.title\"\n [attr.href]=\"item.href\"\n [attr.target]=\"item.target\"\n [innerHTML]=\"item.label\"\n [attr.use-router]=\"false\"\n ></a>\n</ng-template>\n", styles: [":host ::ng-deep .btn .svg-inline--fa{color:#000!important}nav button:after{display:inline-block;width:0;height:0;margin-left:.3em;content:\"\";border-top:.4em solid;border-right:.4em solid transparent;border-bottom:0;border-left:.4em solid transparent}nav button.btn.btn-link:after{color:#000}.dropdown-menu-container{position:relative;width:100%}.dropdown-menu-container .parent-list{position:absolute;top:0;left:0;z-index:9999;box-shadow:0 4px 8px #0003,0 6px 20px #00000030;background-color:#fff;width:max-content;max-width:350px}.dropdown-menu-container .list-group-item{border:0;padding:0}.dropdown-menu-container li.item-divider{border-top:1px solid #ddd!important}.dropdown-menu-container li a{width:100%;color:inherit;display:block;padding:.75rem;word-break:break-word}.dropdown-menu-container li.list-group-title strong{padding-left:.75rem}.dropdown-menu-container ul.child-list a{padding-left:1.5rem}.dropdown-menu-container li a:focus{box-shadow:none}.dropdown-menu-container li.list-group-item:hover,.dropdown-menu-container li.list-group-item a:focus{background-color:var(--vd-primary-dark);outline:none;color:#fff}.dropdown-menu-container .list-group-title{padding-top:.5rem}.dropdown-menu-container li.list-group-title:hover{background:none;color:inherit}.dropdown-menu-container li.list-group-title:focus{outline:0;box-shadow:inset 0 1px 1px #00000013,0 0 0 .2rem var(--vd-focus)}\n"] }]
|
|
185
185
|
}], ctorParameters: () => [{ type: i1.Router }], propDecorators: { selectedFocusList: [{
|
|
186
186
|
type: ViewChildren,
|
|
187
187
|
args: ['selectedFocusList']
|
|
@@ -209,4 +209,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
209
209
|
type: HostListener,
|
|
210
210
|
args: ['keydown', ['$event']]
|
|
211
211
|
}] } });
|
|
212
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9laG4tZHJvcGRvd24tbWVudS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9wcmVzdGF0aW9ucy1uZy9zcmMvZm9laG4tZHJvcGRvd24tbWVudS9mb2Vobi1kcm9wZG93bi1tZW51LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3Byb2plY3RzL3ByZXN0YXRpb25zLW5nL3NyYy9mb2Vobi1kcm9wZG93bi1tZW51L2ZvZWhuLWRyb3Bkb3duLW1lbnUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILFNBQVMsRUFFVCxXQUFXLEVBQ1gsWUFBWSxFQUNaLEtBQUssRUFHTCxTQUFTLEVBQ1QsWUFBWSxFQUNmLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7QUFjdkMsTUFBTSxPQUFPLDBCQUEwQjtJQWdDbkMsWUFBb0IsTUFBYztRQUFkLFdBQU0sR0FBTixNQUFNLENBQVE7UUFabEMsZ0JBQVcsR0FBRyxlQUFlLENBQUM7UUFLOUIsc0JBQWlCLEdBQUcsS0FBSyxDQUFDO1FBS2xCLDJCQUFzQixHQUFHLENBQUMsQ0FBQyxDQUFDO1FBR2hDLElBQUksQ0FBQyxhQUFhLEdBQUc7WUFDakIsR0FBRyxFQUFFLENBQUM7WUFDTixJQUFJLEVBQUUsQ0FBQztTQUNWLENBQUM7SUFDTixDQUFDO0lBR0QscUJBQXFCLENBQUMsS0FBb0I7UUFDdEMsSUFBSSxJQUFJLENBQUMsaUJBQWlCLElBQUksS0FBSyxDQUFDLEdBQUcsS0FBSyxRQUFRLEVBQUUsQ0FBQztZQUNuRCxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDckIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDN0MsQ0FBQztJQUNMLENBQUM7SUFHRCx1QkFBdUIsQ0FBQyxLQUFvQjtRQUN4QyxJ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MEJBQTBCO2tCQUx0QyxTQUFTOytCQUNJLHFCQUFxQjsyRUFNL0IsaUJBQWlCO3NCQURoQixZQUFZO3VCQUFDLG1CQUFtQjtnQkFJakMsYUFBYTtzQkFEWixTQUFTO3VCQUFDLGVBQWUsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Z0JBSTVDLFVBQVU7c0JBRFQsU0FBUzt1QkFBQyxZQUFZO2dCQUl2QixFQUFFO3NCQURELEtBQUs7Z0JBSU4sS0FBSztzQkFESixLQUFLO2dCQUlOLEtBQUs7c0JBREosS0FBSztnQkFJTixXQUFXO3NCQURWLEtBQUs7Z0JBSU4sTUFBTTtzQkFETCxXQUFXO3VCQUFDLFNBQVM7Z0JBa0J0QixxQkFBcUI7c0JBRHBCLFlBQVk7dUJBQUMsT0FBTyxFQUFFLENBQUMsUUFBUSxDQUFDO2dCQVNqQyx1QkFBdUI7c0JBRHRCLFlBQVk7dUJBQUMsU0FBUyxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDb21wb25lbnQsXG4gICAgRWxlbWVudFJlZixcbiAgICBIb3N0QmluZGluZyxcbiAgICBIb3N0TGlzdGVuZXIsXG4gICAgSW5wdXQsXG4gICAgT25Jbml0LFxuICAgIFF1ZXJ5TGlzdCxcbiAgICBWaWV3Q2hpbGQsXG4gICAgVmlld0NoaWxkcmVuXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IGZpcnN0IH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBEcm9wZG93bk1lbnVHcm91cCB9IGZyb20gJy4vZHJvcGRvd24tbWVudS1ncm91cC50eXBlJztcblxuaW50ZXJmYWNlIFBvc2l0aW9uIHtcbiAgICBsZWZ0OiBudW1iZXI7XG4gICAgdG9wOiBudW1iZXI7XG59XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZm9laG4tZHJvcGRvd24tbWVudScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2ZvZWhuLWRyb3Bkb3duLW1lbnUuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2ZvZWhuLWRyb3Bkb3duLW1lbnUuY29tcG9uZW50LmNzcyddXG59KVxuZXhwb3J0IGNsYXNzIEZvZWhuRHJvcGRvd25NZW51Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgICBAVmlld0NoaWxkcmVuKCdzZWxlY3RlZEZvY3VzTGlzdCcpXG4gICAgc2VsZWN0ZWRGb2N1c0xpc3Q6IFF1ZXJ5TGlzdDxFbGVtZW50UmVmPjtcblxuICAgIEBWaWV3Q2hpbGQoJ2J1dHRvblRyaWdnZXInLCB7IHN0YXRpYzogdHJ1ZSB9KVxuICAgIGJ1dHRvblRyaWdnZXI6IEVsZW1lbnRSZWY7XG5cbiAgICBAVmlld0NoaWxkKCdlbnRyeVBvaW50JylcbiAgICBlbnRyeVBvaW50OiBFbGVtZW50UmVmO1xuXG4gICAgQElucHV0KClcbiAgICBpZDogc3RyaW5nO1xuXG4gICAgQElucHV0KClcbiAgICBsYWJlbDogc3RyaW5nO1xuXG4gICAgQElucHV0KClcbiAgICBtb2RlbDogRHJvcGRvd25NZW51R3JvdXBbXTtcblxuICAgIEBJbnB1dCgpXG4gICAgYnRuQ3NzQ2xhc3MgPSAnYnRuLXNlY29uZGFyeSc7XG5cbiAgICBASG9zdEJpbmRpbmcoJ2F0dHIuaWQnKVxuICAgIGhvc3RJZDogc3RyaW5nO1xuXG4gICAgaXNEcm9wZG93blZpc2libGUgPSBmYWxzZTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgIGNsb3NlRHJvcGRvd25UaW1lcjogYW55O1xuICAgIHBvcHVwUG9zaXRpb246IFBvc2l0aW9uO1xuXG4gICAgcHJpdmF0ZSBjdXJyZW50SXRlbUdsb2JhbEluZGV4ID0gLTE7XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJvdXRlcjogUm91dGVyKSB7XG4gICAgICAgIHRoaXMucG9wdXBQb3NpdGlvbiA9IHtcbiAgICAgICAgICAgIHRvcDogMCxcbiAgICAgICAgICAgIGxlZnQ6IDBcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKCdrZXl1cCcsIFsnJGV2ZW50J10pXG4gICAgaGFuZGxlS2V5Ym9hcmRVcEV2ZW50KGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmlzRHJvcGRvd25WaXNpYmxlICYmIGV2ZW50LmtleSA9PT0gJ0VzY2FwZScpIHtcbiAgICAgICAgICAgIHRoaXMucmVzZXREcm9wZG93bigpO1xuICAgICAgICAgICAgdGhpcy5idXR0b25UcmlnZ2VyLm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBIb3N0TGlzdGVuZXIoJ2tleWRvd24nLCBbJyRldmVudCddKVxuICAgIGhhbmRsZUtleWJvYXJkRG93bkV2ZW50KGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmlzRHJvcGRvd25WaXNpYmxlKSB7XG4gICAgICAgICAgICB0aGlzLm9uS2V5RG93bklubmVyKGV2ZW50KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmhvc3RJZCA9IHRoaXMuYnVpbGRJZCgpO1xuICAgIH1cblxuICAgIGhhbmRsZUZvY3VzSW4oKTogdm9pZCB7XG4gICAgICAgIGNsZWFyVGltZW91dCh0aGlzLmNsb3NlRHJvcGRvd25UaW1lcik7XG4gICAgfVxuXG4gICAgaGFuZGxlRm9jdXNPdXQoKTogdm9pZCB7XG4gICAgICAgIGNsZWFyVGltZW91dCh0aGlzLmNsb3NlRHJvcGRvd25UaW1lcik7XG4gICAgICAgIHRoaXMuY2xvc2VEcm9wZG93blRpbWVyID0gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLnJlc2V0RHJvcGRvd24oKTtcbiAgICAgICAgfSwgNTApO1xuICAgIH1cblxuICAgIGJ1aWxkSWQoc3VmZml4OiBzdHJpbmcgPSAnJyk6IHN0cmluZyB7XG4gICAgICAgIGNvbnN0IGJhc2VJZCA9IHRoaXMuaWQ7XG4gICAgICAgIGlmICghYmFzZUlkKSB7XG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBgJHtiYXNlSWR9JHtzdWZmaXh9YDtcbiAgICB9XG5cbiAgICB0b2dnbGVEcm9wZG93blZpc2liaWxpdHkoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuaXNEcm9wZG93blZpc2libGUgPSAhdGhpcy5pc0Ryb3Bkb3duVmlzaWJsZTtcblxuICAgICAgICBpZiAodGhpcy5pc0Ryb3Bkb3duVmlzaWJsZSkge1xuICAgICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHJ4anMtYW5ndWxhci9wcmVmZXItYXN5bmMtcGlwZVxuICAgICAgICAgICAgdGhpcy5zZWxlY3RlZEZvY3VzTGlzdC5jaGFuZ2VzLnBpcGUoZmlyc3QoKSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmVudHJ5UG9pbnQubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICAgICAgICAgICAgICAgIC8vIE5lZWQgc2V0VGltZW91dCB0byBiZSBzdXJlIHdlIGhhdmUgbGF0ZXN0IHBvc2l0aW9uIGZvciBjYWxjdWxhdGlvbnNcbiAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMuY2FsY3VsYXRlUG9wdXBQb3NpdGlvbigpKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5yZXNldERyb3Bkb3duKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICByZXNldERyb3Bkb3duKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmlzRHJvcGRvd25WaXNpYmxlID0gZmFsc2U7XG4gICAgICAgIHRoaXMuY3VycmVudEl0ZW1HbG9iYWxJbmRleCA9IC0xO1xuICAgIH1cblxuICAgIHByaXZhdGUgb25LZXlEb3duSW5uZXIoa2V5RXZlbnQ6IEtleWJvYXJkRXZlbnQpOiBib29sZWFuIHtcbiAgICAgICAgLy8gSUUgZG9lc24ndCBzdXBwb3J0IGtleUV2ZW50LmNvZGUsIGFuZCBoYXMgZGlmZmVyZW50IHZhbHVlc1xuICAgICAgICAvLyBpbiBrZXlFdmVudC5rZXkgKERvd24gaW5zdGVhZCBvZiBBcnJvd0Rvd24gZm9yIGluc3RhbmNlKSwgaGVuY2UgdGhlIG11bHRpLXN1cHBvcnQuXG4gICAgICAgIGxldCBpZTExQ29tcGF0aWJsZUNvZGUgPSBrZXlFdmVudC5jb2RlIHx8IGtleUV2ZW50LmtleTtcbiAgICAgICAgaWYgKGtleUV2ZW50LnNoaWZ0S2V5KSB7XG4gICAgICAgICAgICBpZTExQ29tcGF0aWJsZUNvZGUgPSBgU2hpZnQrJHtpZTExQ29tcGF0aWJsZUNvZGV9YDtcbiAgICAgICAgfVxuICAgICAgICBzd2l0Y2ggKGllMTFDb21wYXRpYmxlQ29kZSkge1xuICAgICAgICAgICAgY2FzZSAnRG93bic6XG4gICAgICAgICAgICBjYXNlICdBcnJvd0Rvd24nOlxuICAgICAgICAgICAgY2FzZSAnVGFiJzpcbiAgICAgICAgICAgICAgICB0aGlzLmZvY3VzTmV4dEVsZW1lbnQodHJ1ZSk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICdVcCc6XG4gICAgICAgICAgICBjYXNlICdBcnJvd1VwJzpcbiAgICAgICAgICAgIGNhc2UgJ1NoaWZ0K1RhYic6XG4gICAgICAgICAgICAgICAgdGhpcy5mb2N1c05leHRFbGVtZW50KGZhbHNlKTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgJ0hvbWUnOlxuICAgICAgICAgICAgICAgIHRoaXMuZm9jdXNGaXJzdEVsZW1lbnQoKTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgJ0VuZCc6XG4gICAgICAgICAgICAgICAgdGhpcy5mb2N1c0xhc3RFbGVtZW50KCk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICdTcGFjZSc6XG4gICAgICAgICAgICBjYXNlICdTcGFjZWJhcic6XG4gICAgICAgICAgICBjYXNlICdFbnRlcic6XG4gICAgICAgICAgICAgICAgdGhpcy5zZWxlY3RDdXJyZW50Rm9jdXNJdGVtKCk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICB9XG5cbiAgICAgICAga2V5RXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAga2V5RXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG5cbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIHByaXZhdGUgZm9jdXNOZXh0RWxlbWVudChkb3duOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmVsZW1lbnRzRGlzcGxheWVkKCkpIHtcbiAgICAgICAgICAgIGNvbnN0IHN0ZXAgPSBkb3duID8gMSA6IC0xO1xuICAgICAgICAgICAgdGhpcy5jdXJyZW50SXRlbUdsb2JhbEluZGV4ICs9IHN0ZXA7XG5cbiAgICAgICAgICAgIGNvbnN0IE1BWF9JTkRFWCA9IHRoaXMuc2VsZWN0ZWRGb2N1c0xpc3QubGVuZ3RoIC0gMTtcbiAgICAgICAgICAgIGlmICh0aGlzLmN1cnJlbnRJdGVtR2xvYmFsSW5kZXggPCAwKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5jdXJyZW50SXRlbUdsb2JhbEluZGV4ID0gTUFYX0lOREVYO1xuICAgICAgICAgICAgfSBlbHNlIGlmICh0aGlzLmN1cnJlbnRJdGVtR2xvYmFsSW5kZXggPiBNQVhfSU5ERVgpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmN1cnJlbnRJdGVtR2xvYmFsSW5kZXggPSAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBjb25zdCBuZXh0TGlFbGVtZW50ID0gdGhpcy5zZWxlY3RlZEZvY3VzTGlzdC5nZXQoXG4gICAgICAgICAgICAgICAgdGhpcy5jdXJyZW50SXRlbUdsb2JhbEluZGV4XG4gICAgICAgICAgICApLm5hdGl2ZUVsZW1lbnQ7XG4gICAgICAgICAgICAvLyBDaGVjayBpZiBsaSBjb250YWlucyBhIGxpbmsgYW5kIGZvY3VzIGl0XG4gICAgICAgICAgICBpZiAobmV4dExpRWxlbWVudC5maXJzdEVsZW1lbnRDaGlsZC50YWdOYW1lID09PSAnQScpIHtcbiAgICAgICAgICAgICAgICBuZXh0TGlFbGVtZW50LmZpcnN0RWxlbWVudENoaWxkLmZvY3VzKCk7XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLy8gRm9jdXMgbGktZ3JvdXAtdGl0bGVcbiAgICAgICAgICAgIG5leHRMaUVsZW1lbnQuZm9jdXMoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgZm9jdXNGaXJzdEVsZW1lbnQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuY3VycmVudEl0ZW1HbG9iYWxJbmRleCA9IC0xO1xuICAgICAgICB0aGlzLmZvY3VzTmV4dEVsZW1lbnQodHJ1ZSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBmb2N1c0xhc3RFbGVtZW50KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmN1cnJlbnRJdGVtR2xvYmFsSW5kZXggPSAtMTtcbiAgICAgICAgdGhpcy5mb2N1c05leHRFbGVtZW50KGZhbHNlKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNlbGVjdEN1cnJlbnRGb2N1c0l0ZW0oKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGN1cnJlbnRGb2N1c2VkRWxlbWVudCA9IGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQ7XG5cbiAgICAgICAgaWYgKCEhY3VycmVudEZvY3VzZWRFbGVtZW50ICYmIGN1cnJlbnRGb2N1c2VkRWxlbWVudC50YWdOYW1lID09PSAnQScpIHtcbiAgICAgICAgICAgIGlmIChjdXJyZW50Rm9jdXNlZEVsZW1lbnQuZ2V0QXR0cmlidXRlKCd1c2Utcm91dGVyJykgPT09ICd0cnVlJykge1xuICAgICAgICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFtcbiAgICAgICAgICAgICAgICAgICAgY3VycmVudEZvY3VzZWRFbGVtZW50LmdldEF0dHJpYnV0ZSgnaHJlZicpXG4gICAgICAgICAgICAgICAgXSk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIGlmICghIWN1cnJlbnRGb2N1c2VkRWxlbWVudC5nZXRBdHRyaWJ1dGUoJ3RhcmdldCcpKSB7XG4gICAgICAgICAgICAgICAgICAgIHdpbmRvdy5vcGVuKFxuICAgICAgICAgICAgICAgICAgICAgICAgY3VycmVudEZvY3VzZWRFbGVtZW50LmdldEF0dHJpYnV0ZSgnaHJlZicpLFxuICAgICAgICAgICAgICAgICAgICAgICAgY3VycmVudEZvY3VzZWRFbGVtZW50LmdldEF0dHJpYnV0ZSgndGFyZ2V0JylcbiAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICB3aW5kb3cub3BlbihcbiAgICAgICAgICAgICAgICAgICAgICAgIGN1cnJlbnRGb2N1c2VkRWxlbWVudC5nZXRBdHRyaWJ1dGUoJ2hyZWYnKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICdfc2VsZidcbiAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIGVsZW1lbnRzRGlzcGxheWVkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5zZWxlY3RlZEZvY3VzTGlzdCAmJiAhIXRoaXMuc2VsZWN0ZWRGb2N1c0xpc3QubGVuZ3RoO1xuICAgIH1cblxuICAgIHByaXZhdGUgY2FsY3VsYXRlUG9wdXBQb3NpdGlvbigpOiB2b2lkIHtcbiAgICAgICAgY29uc3Qgc2NyZWVuV2lkdGggPSB3aW5kb3cuaW5uZXJXaWR0aCAtIDIwO1xuICAgICAgICBjb25zdCBzY3JlZW5IZWlnaHQgPSB3aW5kb3cuaW5uZXJIZWlnaHQgLSAyMDtcblxuICAgICAgICBpZiAodGhpcy5lbnRyeVBvaW50KSB7XG4gICAgICAgICAgICBjb25zdCBwb3B1cEJvdW5kaW5nUmVjdCA9XG4gICAgICAgICAgICAgICAgdGhpcy5lbnRyeVBvaW50Lm5hdGl2ZUVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgICAgICAgICBjb25zdCB0cmlnZ2VyQnV0dG9uQm91bmRpbmdSZWN0ID1cbiAgICAgICAgICAgICAgICB0aGlzLmJ1dHRvblRyaWdnZXIubmF0aXZlRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICAgICAgICAgIGNvbnN0IGNhbGN1bGF0ZWRXaWR0aCA9XG4gICAgICAgICAgICAgICAgdHJpZ2dlckJ1dHRvbkJvdW5kaW5nUmVjdC54ICsgcG9wdXBCb3VuZGluZ1JlY3Qud2lkdGg7XG4gICAgICAgICAgICBjb25zdCBjYWxjdWxhdGVkSGVpZ2h0ID1cbiAgICAgICAgICAgICAgICB0cmlnZ2VyQnV0dG9uQm91bmRpbmdSZWN0LnkgK1xuICAgICAgICAgICAgICAgIHRyaWdnZXJCdXR0b25Cb3VuZGluZ1JlY3QuaGVpZ2h0ICtcbiAgICAgICAgICAgICAgICBwb3B1cEJvdW5kaW5nUmVjdC5oZWlnaHQ7XG5cbiAgICAgICAgICAgIGlmIChjYWxjdWxhdGVkV2lkdGggPiBzY3JlZW5XaWR0aCkge1xuICAgICAgICAgICAgICAgIHRoaXMucG9wdXBQb3NpdGlvbi5sZWZ0ID1cbiAgICAgICAgICAgICAgICAgICAgLXBvcHVwQm91bmRpbmdSZWN0LndpZHRoICsgdHJpZ2dlckJ1dHRvbkJvdW5kaW5nUmVjdC53aWR0aDtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhpcy5wb3B1cFBvc2l0aW9uLmxlZnQgPSAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAoY2FsY3VsYXRlZEhlaWdodCA+IHNjcmVlbkhlaWdodCkge1xuICAgICAgICAgICAgICAgIHRoaXMucG9wdXBQb3NpdGlvbi50b3AgPVxuICAgICAgICAgICAgICAgICAgICAtdHJpZ2dlckJ1dHRvbkJvdW5kaW5nUmVjdC5oZWlnaHQgLVxuICAgICAgICAgICAgICAgICAgICBwb3B1cEJvdW5kaW5nUmVjdC5oZWlnaHQ7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHRoaXMucG9wdXBQb3NpdGlvbi50b3AgPSAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiPG5hdlxuICAgIFthdHRyLmlkXT1cImJ1aWxkSWQoJ05hdkNvbnRhaW5lcicpXCJcbiAgICB0YWJpbmRleD1cIi0xXCJcbiAgICBbYXR0ci5hcmlhLWxhYmVsXT1cIidmb2Vobi1kcm9wZG93bi1tZW51LmFyaWEtbGFiZWwnIHwgZnJvbURpY3Rpb25hcnlcIlxuPlxuICAgIDxidXR0b25cbiAgICAgICAgW2F0dHIuaWRdPVwiYnVpbGRJZCgnVHJpZ2dlckJ1dHRvbicpXCJcbiAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgIGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBidG5cIlxuICAgICAgICBbbmdDbGFzc109XCJidG5Dc3NDbGFzc1wiXG4gICAgICAgIChjbGljayk9XCJ0b2dnbGVEcm9wZG93blZpc2liaWxpdHkoKVwiXG4gICAgICAgIChmb2N1c2luKT1cImhhbmRsZUZvY3VzSW4oKVwiXG4gICAgICAgIChmb2N1c291dCk9XCJoYW5kbGVGb2N1c091dCgpXCJcbiAgICAgICAgW2F0dHIuYXJpYS1oYXNwb3B1cF09XCJ0cnVlXCJcbiAgICAgICAgW2F0dHIuYXJpYS1leHBhbmRlZF09XCJpc0Ryb3Bkb3duVmlzaWJsZVwiXG4gICAgICAgIFthdHRyLmFyaWEtY29udHJvbHNdPVwiJ2Ryb3Bkb3duLW1lbnUtbGlzdCdcIlxuICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImxhYmVsIHx8IG51bGxcIlxuICAgICAgICAjYnV0dG9uVHJpZ2dlclxuICAgID5cbiAgICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICAgIDwvYnV0dG9uPlxuXG4gICAgPGRpdiBjbGFzcz1cImRyb3Bkb3duLW1lbnUtY29udGFpbmVyXCIgKm5nSWY9XCIhIW1vZGVsICYmIGlzRHJvcGRvd25WaXNpYmxlXCI+XG4gICAgICAgIDx1bFxuICAgICAgICAgICAgaWQ9XCJkcm9wZG93bi1tZW51LWxpc3RcIlxuICAgICAgICAgICAgY2xhc3M9XCJwYXJlbnQtbGlzdCBsaXN0LWdyb3VwXCJcbiAgICAgICAgICAgIChmb2N1c2luKT1cImhhbmRsZUZvY3VzSW4oKVwiXG4gICAgICAgICAgICAoZm9jdXNvdXQpPVwiaGFuZGxlRm9jdXNPdXQoKVwiXG4gICAgICAgICAgICBbc3R5bGUubGVmdC5weF09XCJwb3B1cFBvc2l0aW9uLmxlZnRcIlxuICAgICAgICAgICAgW3N0eWxlLnRvcC5weF09XCJwb3B1cFBvc2l0aW9uLnRvcFwiXG4gICAgICAgICAgICB0YWJpbmRleD1cIi0xXCJcbiAgICAgICAgICAgICNlbnRyeVBvaW50XG4gICAgICAgID5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGdyb3VwIG9mIG1vZGVsOyBsZXQgaSA9IGluZGV4XCI+XG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiEhZ3JvdXAudGl0bGVcIj5cbiAgICAgICAgICAgICAgICAgICAgPGxpXG4gICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImkgPiAwXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwibGlzdC1ncm91cC1pdGVtIGl0ZW0tZGl2aWRlclwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5yb2xlXT1cIidzZXBhcmF0b3InXCJcbiAgICAgICAgICAgICAgICAgICAgPjwvbGk+XG4gICAgICAgICAgICAgICAgICAgIDxsaVxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJsaXN0LWdyb3VwLWl0ZW0gbGlzdC1ncm91cC10aXRsZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICB0YWJpbmRleD1cIjBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgI3NlbGVjdGVkRm9jdXNMaXN0XG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxzdHJvbmcgKm5nSWY9XCIhIWdyb3VwLnRpdGxlXCI+e3sgZ3JvdXAudGl0bGUgfX08L3N0cm9uZz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx1bCBjbGFzcz1cImNoaWxkLWxpc3QgbGlzdC1ncm91cFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgaXRlbSBvZiBncm91cC5pdGVtc1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwibGlzdC1ncm91cC1pdGVtXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI3NlbGVjdGVkRm9jdXNMaXN0XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJpdGVtTGlua1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyBpdGVtOiBpdGVtIH1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+XG4gICAgICAgICAgICAgICAgICAgIDwvbGk+XG4gICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFncm91cC50aXRsZVwiPlxuICAgICAgICAgICAgICAgICAgICA8bGlcbiAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiaSA+IDBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJsaXN0LWdyb3VwLWl0ZW0gaXRlbS1kaXZpZGVyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLnJvbGVdPVwiJ3NlcGFyYXRvcidcIlxuICAgICAgICAgICAgICAgICAgICA+PC9saT5cbiAgICAgICAgICAgICAgICAgICAgPGxpXG4gICAgICAgICAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgaXRlbSBvZiBncm91cC5pdGVtczsgbGV0IGogPSBpbmRleFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImxpc3QtZ3JvdXAtaXRlbVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAjc2VsZWN0ZWRGb2N1c0xpc3RcbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cIml0ZW1MaW5rXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyBpdGVtOiBpdGVtIH1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgICAgICA8L2xpPlxuICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvdWw+XG4gICAgPC9kaXY+XG48L25hdj5cblxuPG5nLXRlbXBsYXRlICNpdGVtTGluayBsZXQtaXRlbT1cIml0ZW1cIj5cbiAgICA8YVxuICAgICAgICAqbmdJZj1cIiEhaXRlbS5yb3V0ZXJMaW5rXCJcbiAgICAgICAgW2F0dHIudGl0bGVdPVwiaXRlbS50aXRsZVwiXG4gICAgICAgIFtyb3V0ZXJMaW5rXT1cIml0ZW0ucm91dGVyTGlua1wiXG4gICAgICAgIFtpbm5lckhUTUxdPVwiaXRlbS5sYWJlbFwiXG4gICAgICAgIFthdHRyLnVzZS1yb3V0ZXJdPVwidHJ1ZVwiXG4gICAgPjwvYT5cbiAgICA8YVxuICAgICAgICAqbmdJZj1cIiFpdGVtLnJvdXRlckxpbmtcIlxuICAgICAgICBbYXR0ci50aXRsZV09XCJpdGVtLnRpdGxlXCJcbiAgICAgICAgW2F0dHIuaHJlZl09XCJpdGVtLmhyZWZcIlxuICAgICAgICBbYXR0ci50YXJnZXRdPVwiaXRlbS50YXJnZXRcIlxuICAgICAgICBbaW5uZXJIVE1MXT1cIml0ZW0ubGFiZWxcIlxuICAgICAgICBbYXR0ci51c2Utcm91dGVyXT1cImZhbHNlXCJcbiAgICA+PC9hPlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
|
|
212
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9laG4tZHJvcGRvd24tbWVudS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9wcmVzdGF0aW9ucy1uZy9zcmMvZm9laG4tZHJvcGRvd24tbWVudS9mb2Vobi1kcm9wZG93bi1tZW51LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3Byb2plY3RzL3ByZXN0YXRpb25zLW5nL3NyYy9mb2Vobi1kcm9wZG93bi1tZW51L2ZvZWhuLWRyb3Bkb3duLW1lbnUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILFNBQVMsRUFFVCxXQUFXLEVBQ1gsWUFBWSxFQUNaLEtBQUssRUFHTCxTQUFTLEVBQ1QsWUFBWSxFQUNmLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7QUFjdkMsTUFBTSxPQUFPLDBCQUEwQjtJQWdDbkMsWUFBb0IsTUFBYztRQUFkLFdBQU0sR0FBTixNQUFNLENBQVE7UUFabEMsZ0JBQVcsR0FBRyxlQUFlLENBQUM7UUFLOUIsc0JBQWlCLEdBQUcsS0FBSyxDQUFDO1FBS2xCLDJCQUFzQixHQUFHLENBQUMsQ0FBQyxDQUFDO1FBR2hDLElBQUksQ0FBQyxhQUFhLEdBQUc7WUFDakIsR0FBRyxFQUFFLENBQUM7WUFDTixJQUFJLEVBQUUsQ0FBQztTQUNWLENBQUM7SUFDTixDQUFDO0lBR0QscUJBQXFCLENBQUMsS0FBb0I7UUFDdEMsSUFBSSxJQUFJLENBQUMsaUJBQWlCLElBQUksS0FBSyxDQUFDLEdBQUcsS0FBSyxRQUFRLEVBQUUsQ0FBQztZQUNuRCxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDckIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDN0MsQ0FBQztJQUNMLENBQUM7SUFHRCx1QkFBdUIsQ0FBQyxLQUFvQjtRQUN4QyxJQUFJLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1lBQ3pCLElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDL0IsQ0FBQztJQUNMLENBQUM7SUFFRCxRQUFRO1FBQ0osSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDakMsQ0FBQztJQUVELGFBQWE7UUFDVCxZQUFZLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLENBQUM7SUFDMUMsQ0FBQztJQUVELGNBQWM7UUFDVixZQUFZLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFDdEMsSUFBSSxDQUFDLGtCQUFrQixHQUFHLFVBQVUsQ0FBQyxHQUFHLEVBQUU7WUFDdEMsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ3pCLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNYLENBQUM7SUFFRCxPQUFPLENBQUMsU0FBaUIsRUFBRTtRQUN2QixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNWLE9BQU8sSUFBSSxDQUFDO1FBQ2hCLENBQUM7UUFFRCxPQUFPLEdBQUcsTUFBTSxHQUFHLE1BQU0sRUFBRSxDQUFDO0lBQ2hDLENBQUM7SUFFRCx3QkFBd0I7UUFDcEIsSUFBSSxDQUFDLGlCQUFpQixHQUFHLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDO1FBRWpELElBQUksSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7WUFDekIsMERBQTBEO1lBQzFELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtnQkFDeEQsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsS0FBSyxFQUFFLENBQUM7Z0JBQ3RDLHNFQUFzRTtnQkFDdEUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDLENBQUM7WUFDcEQsQ0FBQyxDQUFDLENBQUM7UUFDUCxDQUFDO2FBQU0sQ0FBQztZQUNKLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUN6QixDQUFDO0lBQ0wsQ0FBQztJQUVELGFBQWE7UUFDVCxJQUFJLENBQUMsaUJBQWlCLEdBQUcsS0FBSyxDQUFDO1FBQy9CLElBQUksQ0FBQyxzQkFBc0IsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUNyQyxDQUFDO0lBRU8sY0FBYyxDQUFDLFFBQXVCO1FBQzFDLDZEQUE2RDtRQUM3RCxxRkFBcUY7UUFDckYsSUFBSSxrQkFBa0IsR0FBRyxRQUFRLENBQUMsSUFBSSxJQUFJLFFBQVEsQ0FBQyxHQUFHLENBQUM7UUFDdkQsSUFBSSxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDcEIsa0JBQWtCLEdBQUcsU0FBUyxrQkFBa0IsRUFBRSxDQUFDO1FBQ3ZELENBQUM7UUFDRCxRQUFRLGtCQUFrQixFQUFFLENBQUM7WUFDekIsS0FBSyxNQUFNLENBQUM7WUFDWixLQUFLLFdBQVcsQ0FBQztZQUNqQixLQUFLLEtBQUs7Z0JBQ04sSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUM1QixNQUFNO1lBQ1YsS0FBSyxJQUFJLENBQUM7WUFDVixLQUFLLFNBQVMsQ0FBQztZQUNmLEtBQUssV0FBVztnQkFDWixJQUFJLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQzdCLE1BQU07WUFDVixLQUFLLE1BQU07Z0JBQ1AsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7Z0JBQ3pCLE1BQU07WUFDVixLQUFLLEtBQUs7Z0JBQ04sSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7Z0JBQ3hCLE1BQU07WUFDVixLQUFLLE9BQU8sQ0FBQztZQUNiLEtBQUssVUFBVSxDQUFDO1lBQ2hCLEtBQUssT0FBTztnQkFDUixJQUFJLENBQUMsc0JBQXNCLEVBQUUsQ0FBQztnQkFDOUIsTUFBTTtZQUNWO2dCQUNJLE9BQU8sSUFBSSxDQUFDO1FBQ3BCLENBQUM7UUFFRCxRQUFRLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDMUIsUUFBUSxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBRTNCLE9BQU8sS0FBSyxDQUFDO0lBQ2pCLENBQUM7SUFFTyxnQkFBZ0IsQ0FBQyxJQUFhO1FBQ2xDLElBQUksSUFBSSxDQUFDLGlCQUFpQixFQUFFLEVBQUUsQ0FBQztZQUMzQixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDM0IsSUFBSSxDQUFDLHNCQUFzQixJQUFJLElBQUksQ0FBQztZQUVwQyxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztZQUNwRCxJQUFJLElBQUksQ0FBQyxzQkFBc0IsR0FBRyxDQUFDLEVBQUUsQ0FBQztnQkFDbEMsSUFBSSxDQUFDLHNCQUFzQixHQUFHLFNBQVMsQ0FBQztZQUM1QyxDQUFDO2lCQUFNLElBQUksSUFBSSxDQUFDLHNCQUFzQixHQUFHLFNBQVMsRUFBRSxDQUFDO2dCQUNqRCxJQUFJLENBQUMsc0JBQXNCLEdBQUcsQ0FBQyxDQUFDO1lBQ3BDLENBQUM7WUFFRCxNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsR0FBRyxDQUM1QyxJQUFJLENBQUMsc0JBQXNCLENBQzlCLENBQUMsYUFBYSxDQUFDO1lBQ2hCLDJDQUEyQztZQUMzQyxJQUFJLGFBQWEsQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLEtBQUssR0FBRyxFQUFFLENBQUM7Z0JBQ2xELGFBQWEsQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLEVBQUUsQ0FBQztnQkFDeEMsT0FBTztZQUNYLENBQUM7WUFDRCx1QkFBdUI7WUFDdkIsYUFBYSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQzFCLENBQUM7SUFDTCxDQUFDO0lBRU8saUJBQWlCO1FBQ3JCLElBQUksQ0FBQyxzQkFBc0IsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUNqQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQUVPLGdCQUFnQjtRQUNwQixJQUFJLENBQUMsc0JBQXNCLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDakMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFFTyxzQkFBc0I7UUFDMUIsTUFBTSxxQkFBcUIsR0FBRyxRQUFRLENBQUMsYUFBYSxDQUFDO1FBRXJELElBQUksQ0FBQyxDQUFDLHFCQUFxQixJQUFJLHFCQUFxQixDQUFDLE9BQU8sS0FBSyxHQUFHLEVBQUUsQ0FBQztZQUNuRSxJQUFJLHFCQUFxQixDQUFDLFlBQVksQ0FBQyxZQUFZLENBQUMsS0FBSyxNQUFNLEVBQUUsQ0FBQztnQkFDOUQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUM7b0JBQ2pCLHFCQUFxQixDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUM7aUJBQzdDLENBQUMsQ0FBQztZQUNQLENBQUM7aUJBQU0sQ0FBQztnQkFDSixJQUFJLENBQUMsQ0FBQyxxQkFBcUIsQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztvQkFDakQsTUFBTSxDQUFDLElBQUksQ0FDUCxxQkFBcUIsQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLEVBQzFDLHFCQUFxQixDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsQ0FDL0MsQ0FBQztnQkFDTixDQUFDO3FCQUFNLENBQUM7b0JBQ0osTUFBTSxDQUFDLElBQUksQ0FDUCxxQkFBcUIsQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLEVBQzFDLE9BQU8sQ0FDVixDQUFDO2dCQUNOLENBQUM7WUFDTCxDQUFDO1FBQ0wsQ0FBQztJQUNMLENBQUM7SUFFTyxpQkFBaUI7UUFDckIsT0FBTyxJQUFJLENBQUMsaUJBQWlCLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxNQUFNLENBQUM7SUFDckUsQ0FBQztJQUVPLHNCQUFzQjtRQUMxQixNQUFNLFdBQVcsR0FBRyxNQUFNLENBQUMsVUFBVSxHQUFHLEVBQUUsQ0FBQztRQUMzQyxNQUFNLFlBQVksR0FBRyxNQUFNLENBQUMsV0FBVyxHQUFHLEVBQUUsQ0FBQztRQUU3QyxJQUFJLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUNsQixNQUFNLGlCQUFpQixHQUNuQixJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1lBQzFELE1BQU0seUJBQXlCLEdBQzNCLElBQUksQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLHFCQUFxQixFQUFFLENBQUM7WUFDN0QsTUFBTSxlQUFlLEdBQ2pCLHlCQUF5QixDQUFDLENBQUMsR0FBRyxpQkFBaUIsQ0FBQyxLQUFLLENBQUM7WUFDMUQsTUFBTSxnQkFBZ0IsR0FDbEIseUJBQXlCLENBQUMsQ0FBQztnQkFDM0IseUJBQXlCLENBQUMsTUFBTTtnQkFDaEMsaUJBQWlCLENBQUMsTUFBTSxDQUFDO1lBRTdCLElBQUksZUFBZSxHQUFHLFdBQVcsRUFBRSxDQUFDO2dCQUNoQyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUk7b0JBQ25CLENBQUMsaUJBQWlCLENBQUMsS0FBSyxHQUFHLHlCQUF5QixDQUFDLEtBQUssQ0FBQztZQUNuRSxDQUFDO2lCQUFNLENBQUM7Z0JBQ0osSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFDO1lBQ2hDLENBQUM7WUFFRCxJQUFJLGdCQUFnQixHQUFHLFlBQVksRUFBRSxDQUFDO2dCQUNsQyxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUc7b0JBQ2xCLENBQUMseUJBQXlCLENBQUMsTUFBTTt3QkFDakMsaUJBQWlCLENBQUMsTUFBTSxDQUFDO1lBQ2pDLENBQUM7aUJBQU0sQ0FBQztnQkFDSixJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsR0FBRyxDQUFDLENBQUM7WUFDL0IsQ0FBQztRQUNMLENBQUM7SUFDTCxDQUFDOytHQXZPUSwwQkFBMEI7bUdBQTFCLDBCQUEwQiw2bEJDMUJ2QywrdkhBb0dBOzs0RkQxRWEsMEJBQTBCO2tCQUx0QyxTQUFTOytCQUNJLHFCQUFxQjsyRUFNL0IsaUJBQWlCO3NCQURoQixZQUFZO3VCQUFDLG1CQUFtQjtnQkFJakMsYUFBYTtzQkFEWixTQUFTO3VCQUFDLGVBQWUsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Z0JBSTVDLFVBQVU7c0JBRFQsU0FBUzt1QkFBQyxZQUFZO2dCQUl2QixFQUFFO3NCQURELEtBQUs7Z0JBSU4sS0FBSztzQkFESixLQUFLO2dCQUlOLEtBQUs7c0JBREosS0FBSztnQkFJTixXQUFXO3NCQURWLEtBQUs7Z0JBSU4sTUFBTTtzQkFETCxXQUFXO3VCQUFDLFNBQVM7Z0JBa0J0QixxQkFBcUI7c0JBRHBCLFlBQVk7dUJBQUMsT0FBTyxFQUFFLENBQUMsUUFBUSxDQUFDO2dCQVNqQyx1QkFBdUI7c0JBRHRCLFlBQVk7dUJBQUMsU0FBUyxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDb21wb25lbnQsXG4gICAgRWxlbWVudFJlZixcbiAgICBIb3N0QmluZGluZyxcbiAgICBIb3N0TGlzdGVuZXIsXG4gICAgSW5wdXQsXG4gICAgT25Jbml0LFxuICAgIFF1ZXJ5TGlzdCxcbiAgICBWaWV3Q2hpbGQsXG4gICAgVmlld0NoaWxkcmVuXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IGZpcnN0IH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBEcm9wZG93bk1lbnVHcm91cCB9IGZyb20gJy4vZHJvcGRvd24tbWVudS1ncm91cC50eXBlJztcblxuaW50ZXJmYWNlIFBvc2l0aW9uIHtcbiAgICBsZWZ0OiBudW1iZXI7XG4gICAgdG9wOiBudW1iZXI7XG59XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZm9laG4tZHJvcGRvd24tbWVudScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2ZvZWhuLWRyb3Bkb3duLW1lbnUuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2ZvZWhuLWRyb3Bkb3duLW1lbnUuY29tcG9uZW50LmNzcyddXG59KVxuZXhwb3J0IGNsYXNzIEZvZWhuRHJvcGRvd25NZW51Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgICBAVmlld0NoaWxkcmVuKCdzZWxlY3RlZEZvY3VzTGlzdCcpXG4gICAgc2VsZWN0ZWRGb2N1c0xpc3Q6IFF1ZXJ5TGlzdDxFbGVtZW50UmVmPjtcblxuICAgIEBWaWV3Q2hpbGQoJ2J1dHRvblRyaWdnZXInLCB7IHN0YXRpYzogdHJ1ZSB9KVxuICAgIGJ1dHRvblRyaWdnZXI6IEVsZW1lbnRSZWY7XG5cbiAgICBAVmlld0NoaWxkKCdlbnRyeVBvaW50JylcbiAgICBlbnRyeVBvaW50OiBFbGVtZW50UmVmO1xuXG4gICAgQElucHV0KClcbiAgICBpZDogc3RyaW5nO1xuXG4gICAgQElucHV0KClcbiAgICBsYWJlbDogc3RyaW5nO1xuXG4gICAgQElucHV0KClcbiAgICBtb2RlbDogRHJvcGRvd25NZW51R3JvdXBbXTtcblxuICAgIEBJbnB1dCgpXG4gICAgYnRuQ3NzQ2xhc3MgPSAnYnRuLXNlY29uZGFyeSc7XG5cbiAgICBASG9zdEJpbmRpbmcoJ2F0dHIuaWQnKVxuICAgIGhvc3RJZDogc3RyaW5nO1xuXG4gICAgaXNEcm9wZG93blZpc2libGUgPSBmYWxzZTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgIGNsb3NlRHJvcGRvd25UaW1lcjogYW55O1xuICAgIHBvcHVwUG9zaXRpb246IFBvc2l0aW9uO1xuXG4gICAgcHJpdmF0ZSBjdXJyZW50SXRlbUdsb2JhbEluZGV4ID0gLTE7XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJvdXRlcjogUm91dGVyKSB7XG4gICAgICAgIHRoaXMucG9wdXBQb3NpdGlvbiA9IHtcbiAgICAgICAgICAgIHRvcDogMCxcbiAgICAgICAgICAgIGxlZnQ6IDBcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKCdrZXl1cCcsIFsnJGV2ZW50J10pXG4gICAgaGFuZGxlS2V5Ym9hcmRVcEV2ZW50KGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmlzRHJvcGRvd25WaXNpYmxlICYmIGV2ZW50LmtleSA9PT0gJ0VzY2FwZScpIHtcbiAgICAgICAgICAgIHRoaXMucmVzZXREcm9wZG93bigpO1xuICAgICAgICAgICAgdGhpcy5idXR0b25UcmlnZ2VyLm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBIb3N0TGlzdGVuZXIoJ2tleWRvd24nLCBbJyRldmVudCddKVxuICAgIGhhbmRsZUtleWJvYXJkRG93bkV2ZW50KGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmlzRHJvcGRvd25WaXNpYmxlKSB7XG4gICAgICAgICAgICB0aGlzLm9uS2V5RG93bklubmVyKGV2ZW50KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmhvc3RJZCA9IHRoaXMuYnVpbGRJZCgpO1xuICAgIH1cblxuICAgIGhhbmRsZUZvY3VzSW4oKTogdm9pZCB7XG4gICAgICAgIGNsZWFyVGltZW91dCh0aGlzLmNsb3NlRHJvcGRvd25UaW1lcik7XG4gICAgfVxuXG4gICAgaGFuZGxlRm9jdXNPdXQoKTogdm9pZCB7XG4gICAgICAgIGNsZWFyVGltZW91dCh0aGlzLmNsb3NlRHJvcGRvd25UaW1lcik7XG4gICAgICAgIHRoaXMuY2xvc2VEcm9wZG93blRpbWVyID0gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLnJlc2V0RHJvcGRvd24oKTtcbiAgICAgICAgfSwgNTApO1xuICAgIH1cblxuICAgIGJ1aWxkSWQoc3VmZml4OiBzdHJpbmcgPSAnJyk6IHN0cmluZyB7XG4gICAgICAgIGNvbnN0IGJhc2VJZCA9IHRoaXMuaWQ7XG4gICAgICAgIGlmICghYmFzZUlkKSB7XG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBgJHtiYXNlSWR9JHtzdWZmaXh9YDtcbiAgICB9XG5cbiAgICB0b2dnbGVEcm9wZG93blZpc2liaWxpdHkoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuaXNEcm9wZG93blZpc2libGUgPSAhdGhpcy5pc0Ryb3Bkb3duVmlzaWJsZTtcblxuICAgICAgICBpZiAodGhpcy5pc0Ryb3Bkb3duVmlzaWJsZSkge1xuICAgICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHJ4anMtYW5ndWxhci9wcmVmZXItYXN5bmMtcGlwZVxuICAgICAgICAgICAgdGhpcy5zZWxlY3RlZEZvY3VzTGlzdC5jaGFuZ2VzLnBpcGUoZmlyc3QoKSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmVudHJ5UG9pbnQubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICAgICAgICAgICAgICAgIC8vIE5lZWQgc2V0VGltZW91dCB0byBiZSBzdXJlIHdlIGhhdmUgbGF0ZXN0IHBvc2l0aW9uIGZvciBjYWxjdWxhdGlvbnNcbiAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMuY2FsY3VsYXRlUG9wdXBQb3NpdGlvbigpKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5yZXNldERyb3Bkb3duKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICByZXNldERyb3Bkb3duKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmlzRHJvcGRvd25WaXNpYmxlID0gZmFsc2U7XG4gICAgICAgIHRoaXMuY3VycmVudEl0ZW1HbG9iYWxJbmRleCA9IC0xO1xuICAgIH1cblxuICAgIHByaXZhdGUgb25LZXlEb3duSW5uZXIoa2V5RXZlbnQ6IEtleWJvYXJkRXZlbnQpOiBib29sZWFuIHtcbiAgICAgICAgLy8gSUUgZG9lc24ndCBzdXBwb3J0IGtleUV2ZW50LmNvZGUsIGFuZCBoYXMgZGlmZmVyZW50IHZhbHVlc1xuICAgICAgICAvLyBpbiBrZXlFdmVudC5rZXkgKERvd24gaW5zdGVhZCBvZiBBcnJvd0Rvd24gZm9yIGluc3RhbmNlKSwgaGVuY2UgdGhlIG11bHRpLXN1cHBvcnQuXG4gICAgICAgIGxldCBpZTExQ29tcGF0aWJsZUNvZGUgPSBrZXlFdmVudC5jb2RlIHx8IGtleUV2ZW50LmtleTtcbiAgICAgICAgaWYgKGtleUV2ZW50LnNoaWZ0S2V5KSB7XG4gICAgICAgICAgICBpZTExQ29tcGF0aWJsZUNvZGUgPSBgU2hpZnQrJHtpZTExQ29tcGF0aWJsZUNvZGV9YDtcbiAgICAgICAgfVxuICAgICAgICBzd2l0Y2ggKGllMTFDb21wYXRpYmxlQ29kZSkge1xuICAgICAgICAgICAgY2FzZSAnRG93bic6XG4gICAgICAgICAgICBjYXNlICdBcnJvd0Rvd24nOlxuICAgICAgICAgICAgY2FzZSAnVGFiJzpcbiAgICAgICAgICAgICAgICB0aGlzLmZvY3VzTmV4dEVsZW1lbnQodHJ1ZSk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICdVcCc6XG4gICAgICAgICAgICBjYXNlICdBcnJvd1VwJzpcbiAgICAgICAgICAgIGNhc2UgJ1NoaWZ0K1RhYic6XG4gICAgICAgICAgICAgICAgdGhpcy5mb2N1c05leHRFbGVtZW50KGZhbHNlKTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgJ0hvbWUnOlxuICAgICAgICAgICAgICAgIHRoaXMuZm9jdXNGaXJzdEVsZW1lbnQoKTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgJ0VuZCc6XG4gICAgICAgICAgICAgICAgdGhpcy5mb2N1c0xhc3RFbGVtZW50KCk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICdTcGFjZSc6XG4gICAgICAgICAgICBjYXNlICdTcGFjZWJhcic6XG4gICAgICAgICAgICBjYXNlICdFbnRlcic6XG4gICAgICAgICAgICAgICAgdGhpcy5zZWxlY3RDdXJyZW50Rm9jdXNJdGVtKCk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICB9XG5cbiAgICAgICAga2V5RXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAga2V5RXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG5cbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIHByaXZhdGUgZm9jdXNOZXh0RWxlbWVudChkb3duOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmVsZW1lbnRzRGlzcGxheWVkKCkpIHtcbiAgICAgICAgICAgIGNvbnN0IHN0ZXAgPSBkb3duID8gMSA6IC0xO1xuICAgICAgICAgICAgdGhpcy5jdXJyZW50SXRlbUdsb2JhbEluZGV4ICs9IHN0ZXA7XG5cbiAgICAgICAgICAgIGNvbnN0IE1BWF9JTkRFWCA9IHRoaXMuc2VsZWN0ZWRGb2N1c0xpc3QubGVuZ3RoIC0gMTtcbiAgICAgICAgICAgIGlmICh0aGlzLmN1cnJlbnRJdGVtR2xvYmFsSW5kZXggPCAwKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5jdXJyZW50SXRlbUdsb2JhbEluZGV4ID0gTUFYX0lOREVYO1xuICAgICAgICAgICAgfSBlbHNlIGlmICh0aGlzLmN1cnJlbnRJdGVtR2xvYmFsSW5kZXggPiBNQVhfSU5ERVgpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmN1cnJlbnRJdGVtR2xvYmFsSW5kZXggPSAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBjb25zdCBuZXh0TGlFbGVtZW50ID0gdGhpcy5zZWxlY3RlZEZvY3VzTGlzdC5nZXQoXG4gICAgICAgICAgICAgICAgdGhpcy5jdXJyZW50SXRlbUdsb2JhbEluZGV4XG4gICAgICAgICAgICApLm5hdGl2ZUVsZW1lbnQ7XG4gICAgICAgICAgICAvLyBDaGVjayBpZiBsaSBjb250YWlucyBhIGxpbmsgYW5kIGZvY3VzIGl0XG4gICAgICAgICAgICBpZiAobmV4dExpRWxlbWVudC5maXJzdEVsZW1lbnRDaGlsZC50YWdOYW1lID09PSAnQScpIHtcbiAgICAgICAgICAgICAgICBuZXh0TGlFbGVtZW50LmZpcnN0RWxlbWVudENoaWxkLmZvY3VzKCk7XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLy8gRm9jdXMgbGktZ3JvdXAtdGl0bGVcbiAgICAgICAgICAgIG5leHRMaUVsZW1lbnQuZm9jdXMoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgZm9jdXNGaXJzdEVsZW1lbnQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuY3VycmVudEl0ZW1HbG9iYWxJbmRleCA9IC0xO1xuICAgICAgICB0aGlzLmZvY3VzTmV4dEVsZW1lbnQodHJ1ZSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBmb2N1c0xhc3RFbGVtZW50KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmN1cnJlbnRJdGVtR2xvYmFsSW5kZXggPSAtMTtcbiAgICAgICAgdGhpcy5mb2N1c05leHRFbGVtZW50KGZhbHNlKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNlbGVjdEN1cnJlbnRGb2N1c0l0ZW0oKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGN1cnJlbnRGb2N1c2VkRWxlbWVudCA9IGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQ7XG5cbiAgICAgICAgaWYgKCEhY3VycmVudEZvY3VzZWRFbGVtZW50ICYmIGN1cnJlbnRGb2N1c2VkRWxlbWVudC50YWdOYW1lID09PSAnQScpIHtcbiAgICAgICAgICAgIGlmIChjdXJyZW50Rm9jdXNlZEVsZW1lbnQuZ2V0QXR0cmlidXRlKCd1c2Utcm91dGVyJykgPT09ICd0cnVlJykge1xuICAgICAgICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFtcbiAgICAgICAgICAgICAgICAgICAgY3VycmVudEZvY3VzZWRFbGVtZW50LmdldEF0dHJpYnV0ZSgnaHJlZicpXG4gICAgICAgICAgICAgICAgXSk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIGlmICghIWN1cnJlbnRGb2N1c2VkRWxlbWVudC5nZXRBdHRyaWJ1dGUoJ3RhcmdldCcpKSB7XG4gICAgICAgICAgICAgICAgICAgIHdpbmRvdy5vcGVuKFxuICAgICAgICAgICAgICAgICAgICAgICAgY3VycmVudEZvY3VzZWRFbGVtZW50LmdldEF0dHJpYnV0ZSgnaHJlZicpLFxuICAgICAgICAgICAgICAgICAgICAgICAgY3VycmVudEZvY3VzZWRFbGVtZW50LmdldEF0dHJpYnV0ZSgndGFyZ2V0JylcbiAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICB3aW5kb3cub3BlbihcbiAgICAgICAgICAgICAgICAgICAgICAgIGN1cnJlbnRGb2N1c2VkRWxlbWVudC5nZXRBdHRyaWJ1dGUoJ2hyZWYnKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICdfc2VsZidcbiAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIGVsZW1lbnRzRGlzcGxheWVkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5zZWxlY3RlZEZvY3VzTGlzdCAmJiAhIXRoaXMuc2VsZWN0ZWRGb2N1c0xpc3QubGVuZ3RoO1xuICAgIH1cblxuICAgIHByaXZhdGUgY2FsY3VsYXRlUG9wdXBQb3NpdGlvbigpOiB2b2lkIHtcbiAgICAgICAgY29uc3Qgc2NyZWVuV2lkdGggPSB3aW5kb3cuaW5uZXJXaWR0aCAtIDIwO1xuICAgICAgICBjb25zdCBzY3JlZW5IZWlnaHQgPSB3aW5kb3cuaW5uZXJIZWlnaHQgLSAyMDtcblxuICAgICAgICBpZiAodGhpcy5lbnRyeVBvaW50KSB7XG4gICAgICAgICAgICBjb25zdCBwb3B1cEJvdW5kaW5nUmVjdCA9XG4gICAgICAgICAgICAgICAgdGhpcy5lbnRyeVBvaW50Lm5hdGl2ZUVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgICAgICAgICBjb25zdCB0cmlnZ2VyQnV0dG9uQm91bmRpbmdSZWN0ID1cbiAgICAgICAgICAgICAgICB0aGlzLmJ1dHRvblRyaWdnZXIubmF0aXZlRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICAgICAgICAgIGNvbnN0IGNhbGN1bGF0ZWRXaWR0aCA9XG4gICAgICAgICAgICAgICAgdHJpZ2dlckJ1dHRvbkJvdW5kaW5nUmVjdC54ICsgcG9wdXBCb3VuZGluZ1JlY3Qud2lkdGg7XG4gICAgICAgICAgICBjb25zdCBjYWxjdWxhdGVkSGVpZ2h0ID1cbiAgICAgICAgICAgICAgICB0cmlnZ2VyQnV0dG9uQm91bmRpbmdSZWN0LnkgK1xuICAgICAgICAgICAgICAgIHRyaWdnZXJCdXR0b25Cb3VuZGluZ1JlY3QuaGVpZ2h0ICtcbiAgICAgICAgICAgICAgICBwb3B1cEJvdW5kaW5nUmVjdC5oZWlnaHQ7XG5cbiAgICAgICAgICAgIGlmIChjYWxjdWxhdGVkV2lkdGggPiBzY3JlZW5XaWR0aCkge1xuICAgICAgICAgICAgICAgIHRoaXMucG9wdXBQb3NpdGlvbi5sZWZ0ID1cbiAgICAgICAgICAgICAgICAgICAgLXBvcHVwQm91bmRpbmdSZWN0LndpZHRoICsgdHJpZ2dlckJ1dHRvbkJvdW5kaW5nUmVjdC53aWR0aDtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhpcy5wb3B1cFBvc2l0aW9uLmxlZnQgPSAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAoY2FsY3VsYXRlZEhlaWdodCA+IHNjcmVlbkhlaWdodCkge1xuICAgICAgICAgICAgICAgIHRoaXMucG9wdXBQb3NpdGlvbi50b3AgPVxuICAgICAgICAgICAgICAgICAgICAtdHJpZ2dlckJ1dHRvbkJvdW5kaW5nUmVjdC5oZWlnaHQgLVxuICAgICAgICAgICAgICAgICAgICBwb3B1cEJvdW5kaW5nUmVjdC5oZWlnaHQ7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHRoaXMucG9wdXBQb3NpdGlvbi50b3AgPSAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiPG5hdlxuICAgIFthdHRyLmlkXT1cImJ1aWxkSWQoJ05hdkNvbnRhaW5lcicpXCJcbiAgICB0YWJpbmRleD1cIi0xXCJcbiAgICBbYXR0ci5hcmlhLWxhYmVsXT1cIidmb2Vobi1kcm9wZG93bi1tZW51LmFyaWEtbGFiZWwnIHwgZnJvbURpY3Rpb25hcnlcIlxuPlxuICAgIDxidXR0b25cbiAgICAgICAgW2F0dHIuaWRdPVwiYnVpbGRJZCgnVHJpZ2dlckJ1dHRvbicpXCJcbiAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgIGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBidG5cIlxuICAgICAgICBbbmdDbGFzc109XCJidG5Dc3NDbGFzc1wiXG4gICAgICAgIChjbGljayk9XCJ0b2dnbGVEcm9wZG93blZpc2liaWxpdHkoKVwiXG4gICAgICAgIChmb2N1c2luKT1cImhhbmRsZUZvY3VzSW4oKVwiXG4gICAgICAgIChmb2N1c291dCk9XCJoYW5kbGVGb2N1c091dCgpXCJcbiAgICAgICAgW2F0dHIuYXJpYS1oYXNwb3B1cF09XCJ0cnVlXCJcbiAgICAgICAgW2F0dHIuYXJpYS1leHBhbmRlZF09XCJpc0Ryb3Bkb3duVmlzaWJsZVwiXG4gICAgICAgIFthdHRyLmFyaWEtY29udHJvbHNdPVwiJ2Ryb3Bkb3duLW1lbnUtbGlzdCdcIlxuICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImxhYmVsIHx8IG51bGxcIlxuICAgICAgICAjYnV0dG9uVHJpZ2dlclxuICAgID5cbiAgICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICAgIDwvYnV0dG9uPlxuXG4gICAgPGRpdiBjbGFzcz1cImRyb3Bkb3duLW1lbnUtY29udGFpbmVyXCIgKm5nSWY9XCIhIW1vZGVsICYmIGlzRHJvcGRvd25WaXNpYmxlXCI+XG4gICAgICAgIDx1bFxuICAgICAgICAgICAgaWQ9XCJkcm9wZG93bi1tZW51LWxpc3RcIlxuICAgICAgICAgICAgY2xhc3M9XCJwYXJlbnQtbGlzdCBsaXN0LWdyb3VwXCJcbiAgICAgICAgICAgIChmb2N1c2luKT1cImhhbmRsZUZvY3VzSW4oKVwiXG4gICAgICAgICAgICAoZm9jdXNvdXQpPVwiaGFuZGxlRm9jdXNPdXQoKVwiXG4gICAgICAgICAgICBbc3R5bGUubGVmdC5weF09XCJwb3B1cFBvc2l0aW9uLmxlZnRcIlxuICAgICAgICAgICAgW3N0eWxlLnRvcC5weF09XCJwb3B1cFBvc2l0aW9uLnRvcFwiXG4gICAgICAgICAgICB0YWJpbmRleD1cIi0xXCJcbiAgICAgICAgICAgICNlbnRyeVBvaW50XG4gICAgICAgID5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGdyb3VwIG9mIG1vZGVsOyBsZXQgaSA9IGluZGV4XCI+XG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiEhZ3JvdXAudGl0bGVcIj5cbiAgICAgICAgICAgICAgICAgICAgPGxpXG4gICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImkgPiAwXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwibGlzdC1ncm91cC1pdGVtIGl0ZW0tZGl2aWRlclwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5yb2xlXT1cIidzZXBhcmF0b3InXCJcbiAgICAgICAgICAgICAgICAgICAgPjwvbGk+XG4gICAgICAgICAgICAgICAgICAgIDxsaVxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJsaXN0LWdyb3VwLWl0ZW0gbGlzdC1ncm91cC10aXRsZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICB0YWJpbmRleD1cIjBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgI3NlbGVjdGVkRm9jdXNMaXN0XG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxzdHJvbmcgKm5nSWY9XCIhIWdyb3VwLnRpdGxlXCI+e3sgZ3JvdXAudGl0bGUgfX08L3N0cm9uZz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx1bCBjbGFzcz1cImNoaWxkLWxpc3QgbGlzdC1ncm91cFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgaXRlbSBvZiBncm91cC5pdGVtc1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwibGlzdC1ncm91cC1pdGVtXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI3NlbGVjdGVkRm9jdXNMaXN0XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJpdGVtTGlua1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyBpdGVtOiBpdGVtIH1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+XG4gICAgICAgICAgICAgICAgICAgIDwvbGk+XG4gICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFncm91cC50aXRsZVwiPlxuICAgICAgICAgICAgICAgICAgICA8bGlcbiAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiaSA+IDBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJsaXN0LWdyb3VwLWl0ZW0gaXRlbS1kaXZpZGVyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLnJvbGVdPVwiJ3NlcGFyYXRvcidcIlxuICAgICAgICAgICAgICAgICAgICA+PC9saT5cbiAgICAgICAgICAgICAgICAgICAgPGxpXG4gICAgICAgICAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgaXRlbSBvZiBncm91cC5pdGVtczsgbGV0IGogPSBpbmRleFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImxpc3QtZ3JvdXAtaXRlbVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAjc2VsZWN0ZWRGb2N1c0xpc3RcbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cIml0ZW1MaW5rXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyBpdGVtOiBpdGVtIH1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgICAgICA8L2xpPlxuICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvdWw+XG4gICAgPC9kaXY+XG48L25hdj5cblxuPG5nLXRlbXBsYXRlICNpdGVtTGluayBsZXQtaXRlbT1cIml0ZW1cIj5cbiAgICA8YVxuICAgICAgICAqbmdJZj1cIiEhaXRlbS5yb3V0ZXJMaW5rXCJcbiAgICAgICAgW2F0dHIudGl0bGVdPVwiaXRlbS50aXRsZVwiXG4gICAgICAgIFtyb3V0ZXJMaW5rXT1cIml0ZW0ucm91dGVyTGlua1wiXG4gICAgICAgIFtxdWVyeVBhcmFtc109XCJpdGVtLnF1ZXJ5UGFyYW1zXCJcbiAgICAgICAgW2lubmVySFRNTF09XCJpdGVtLmxhYmVsXCJcbiAgICAgICAgW2F0dHIudXNlLXJvdXRlcl09XCJ0cnVlXCJcbiAgICA+PC9hPlxuICAgIDxhXG4gICAgICAgICpuZ0lmPVwiIWl0ZW0ucm91dGVyTGlua1wiXG4gICAgICAgIFthdHRyLnRpdGxlXT1cIml0ZW0udGl0bGVcIlxuICAgICAgICBbYXR0ci5ocmVmXT1cIml0ZW0uaHJlZlwiXG4gICAgICAgIFthdHRyLnRhcmdldF09XCJpdGVtLnRhcmdldFwiXG4gICAgICAgIFtpbm5lckhUTUxdPVwiaXRlbS5sYWJlbFwiXG4gICAgICAgIFthdHRyLnVzZS1yb3V0ZXJdPVwiZmFsc2VcIlxuICAgID48L2E+XG48L25nLXRlbXBsYXRlPlxuIl19
|
|
@@ -5514,7 +5514,7 @@ class FoehnBreadcrumbComponent {
|
|
|
5514
5514
|
}
|
|
5515
5515
|
}
|
|
5516
5516
|
redirect(item) {
|
|
5517
|
-
window.
|
|
5517
|
+
window.open(item.url, '_blank');
|
|
5518
5518
|
}
|
|
5519
5519
|
navigate(item) {
|
|
5520
5520
|
this.addBreadcrumbClickEventToLogger(item);
|
|
@@ -6135,11 +6135,11 @@ class FoehnDropdownMenuComponent {
|
|
|
6135
6135
|
}
|
|
6136
6136
|
}
|
|
6137
6137
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FoehnDropdownMenuComponent, deps: [{ token: i1$1.Router }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
6138
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: FoehnDropdownMenuComponent, selector: "foehn-dropdown-menu", inputs: { id: "id", label: "label", model: "model", btnCssClass: "btnCssClass" }, host: { listeners: { "keyup": "handleKeyboardUpEvent($event)", "keydown": "handleKeyboardDownEvent($event)" }, properties: { "attr.id": "this.hostId" } }, viewQueries: [{ propertyName: "buttonTrigger", first: true, predicate: ["buttonTrigger"], descendants: true, static: true }, { propertyName: "entryPoint", first: true, predicate: ["entryPoint"], descendants: true }, { propertyName: "selectedFocusList", predicate: ["selectedFocusList"], descendants: true }], ngImport: i0, template: "<nav\n [attr.id]=\"buildId('NavContainer')\"\n tabindex=\"-1\"\n [attr.aria-label]=\"'foehn-dropdown-menu.aria-label' | fromDictionary\"\n>\n <button\n [attr.id]=\"buildId('TriggerButton')\"\n type=\"button\"\n class=\"d-flex align-items-center btn\"\n [ngClass]=\"btnCssClass\"\n (click)=\"toggleDropdownVisibility()\"\n (focusin)=\"handleFocusIn()\"\n (focusout)=\"handleFocusOut()\"\n [attr.aria-haspopup]=\"true\"\n [attr.aria-expanded]=\"isDropdownVisible\"\n [attr.aria-controls]=\"'dropdown-menu-list'\"\n [attr.aria-label]=\"label || null\"\n #buttonTrigger\n >\n <ng-content></ng-content>\n </button>\n\n <div class=\"dropdown-menu-container\" *ngIf=\"!!model && isDropdownVisible\">\n <ul\n id=\"dropdown-menu-list\"\n class=\"parent-list list-group\"\n (focusin)=\"handleFocusIn()\"\n (focusout)=\"handleFocusOut()\"\n [style.left.px]=\"popupPosition.left\"\n [style.top.px]=\"popupPosition.top\"\n tabindex=\"-1\"\n #entryPoint\n >\n <ng-container *ngFor=\"let group of model; let i = index\">\n <ng-container *ngIf=\"!!group.title\">\n <li\n *ngIf=\"i > 0\"\n class=\"list-group-item item-divider\"\n [attr.role]=\"'separator'\"\n ></li>\n <li\n class=\"list-group-item list-group-title\"\n tabindex=\"0\"\n #selectedFocusList\n >\n <strong *ngIf=\"!!group.title\">{{ group.title }}</strong>\n <ul class=\"child-list list-group\">\n <li\n *ngFor=\"let item of group.items\"\n class=\"list-group-item\"\n #selectedFocusList\n >\n <ng-container\n [ngTemplateOutlet]=\"itemLink\"\n [ngTemplateOutletContext]=\"{ item: item }\"\n ></ng-container>\n </li>\n </ul>\n </li>\n </ng-container>\n <ng-container *ngIf=\"!group.title\">\n <li\n *ngIf=\"i > 0\"\n class=\"list-group-item item-divider\"\n [attr.role]=\"'separator'\"\n ></li>\n <li\n *ngFor=\"let item of group.items; let j = index\"\n class=\"list-group-item\"\n #selectedFocusList\n >\n <ng-container\n [ngTemplateOutlet]=\"itemLink\"\n [ngTemplateOutletContext]=\"{ item: item }\"\n ></ng-container>\n </li>\n </ng-container>\n </ng-container>\n </ul>\n </div>\n</nav>\n\n<ng-template #itemLink let-item=\"item\">\n <a\n *ngIf=\"!!item.routerLink\"\n [attr.title]=\"item.title\"\n [routerLink]=\"item.routerLink\"\n [innerHTML]=\"item.label\"\n [attr.use-router]=\"true\"\n ></a>\n <a\n *ngIf=\"!item.routerLink\"\n [attr.title]=\"item.title\"\n [attr.href]=\"item.href\"\n [attr.target]=\"item.target\"\n [innerHTML]=\"item.label\"\n [attr.use-router]=\"false\"\n ></a>\n</ng-template>\n", styles: [":host ::ng-deep .btn .svg-inline--fa{color:#000!important}nav button:after{display:inline-block;width:0;height:0;margin-left:.3em;content:\"\";border-top:.4em solid;border-right:.4em solid transparent;border-bottom:0;border-left:.4em solid transparent}nav button.btn.btn-link:after{color:#000}.dropdown-menu-container{position:relative;width:100%}.dropdown-menu-container .parent-list{position:absolute;top:0;left:0;z-index:9999;box-shadow:0 4px 8px #0003,0 6px 20px #00000030;background-color:#fff;width:max-content;max-width:350px}.dropdown-menu-container .list-group-item{border:0;padding:0}.dropdown-menu-container li.item-divider{border-top:1px solid #ddd!important}.dropdown-menu-container li a{width:100%;color:inherit;display:block;padding:.75rem;word-break:break-word}.dropdown-menu-container li.list-group-title strong{padding-left:.75rem}.dropdown-menu-container ul.child-list a{padding-left:1.5rem}.dropdown-menu-container li a:focus{box-shadow:none}.dropdown-menu-container li.list-group-item:hover,.dropdown-menu-container li.list-group-item a:focus{background-color:var(--vd-primary-dark);outline:none;color:#fff}.dropdown-menu-container .list-group-title{padding-top:.5rem}.dropdown-menu-container li.list-group-title:hover{background:none;color:inherit}.dropdown-menu-container li.list-group-title:focus{outline:0;box-shadow:inset 0 1px 1px #00000013,0 0 0 .2rem var(--vd-focus)}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1$1.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "pipe", type: SdkDictionaryPipe, name: "fromDictionary" }] }); }
|
|
6138
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: FoehnDropdownMenuComponent, selector: "foehn-dropdown-menu", inputs: { id: "id", label: "label", model: "model", btnCssClass: "btnCssClass" }, host: { listeners: { "keyup": "handleKeyboardUpEvent($event)", "keydown": "handleKeyboardDownEvent($event)" }, properties: { "attr.id": "this.hostId" } }, viewQueries: [{ propertyName: "buttonTrigger", first: true, predicate: ["buttonTrigger"], descendants: true, static: true }, { propertyName: "entryPoint", first: true, predicate: ["entryPoint"], descendants: true }, { propertyName: "selectedFocusList", predicate: ["selectedFocusList"], descendants: true }], ngImport: i0, template: "<nav\n [attr.id]=\"buildId('NavContainer')\"\n tabindex=\"-1\"\n [attr.aria-label]=\"'foehn-dropdown-menu.aria-label' | fromDictionary\"\n>\n <button\n [attr.id]=\"buildId('TriggerButton')\"\n type=\"button\"\n class=\"d-flex align-items-center btn\"\n [ngClass]=\"btnCssClass\"\n (click)=\"toggleDropdownVisibility()\"\n (focusin)=\"handleFocusIn()\"\n (focusout)=\"handleFocusOut()\"\n [attr.aria-haspopup]=\"true\"\n [attr.aria-expanded]=\"isDropdownVisible\"\n [attr.aria-controls]=\"'dropdown-menu-list'\"\n [attr.aria-label]=\"label || null\"\n #buttonTrigger\n >\n <ng-content></ng-content>\n </button>\n\n <div class=\"dropdown-menu-container\" *ngIf=\"!!model && isDropdownVisible\">\n <ul\n id=\"dropdown-menu-list\"\n class=\"parent-list list-group\"\n (focusin)=\"handleFocusIn()\"\n (focusout)=\"handleFocusOut()\"\n [style.left.px]=\"popupPosition.left\"\n [style.top.px]=\"popupPosition.top\"\n tabindex=\"-1\"\n #entryPoint\n >\n <ng-container *ngFor=\"let group of model; let i = index\">\n <ng-container *ngIf=\"!!group.title\">\n <li\n *ngIf=\"i > 0\"\n class=\"list-group-item item-divider\"\n [attr.role]=\"'separator'\"\n ></li>\n <li\n class=\"list-group-item list-group-title\"\n tabindex=\"0\"\n #selectedFocusList\n >\n <strong *ngIf=\"!!group.title\">{{ group.title }}</strong>\n <ul class=\"child-list list-group\">\n <li\n *ngFor=\"let item of group.items\"\n class=\"list-group-item\"\n #selectedFocusList\n >\n <ng-container\n [ngTemplateOutlet]=\"itemLink\"\n [ngTemplateOutletContext]=\"{ item: item }\"\n ></ng-container>\n </li>\n </ul>\n </li>\n </ng-container>\n <ng-container *ngIf=\"!group.title\">\n <li\n *ngIf=\"i > 0\"\n class=\"list-group-item item-divider\"\n [attr.role]=\"'separator'\"\n ></li>\n <li\n *ngFor=\"let item of group.items; let j = index\"\n class=\"list-group-item\"\n #selectedFocusList\n >\n <ng-container\n [ngTemplateOutlet]=\"itemLink\"\n [ngTemplateOutletContext]=\"{ item: item }\"\n ></ng-container>\n </li>\n </ng-container>\n </ng-container>\n </ul>\n </div>\n</nav>\n\n<ng-template #itemLink let-item=\"item\">\n <a\n *ngIf=\"!!item.routerLink\"\n [attr.title]=\"item.title\"\n [routerLink]=\"item.routerLink\"\n [queryParams]=\"item.queryParams\"\n [innerHTML]=\"item.label\"\n [attr.use-router]=\"true\"\n ></a>\n <a\n *ngIf=\"!item.routerLink\"\n [attr.title]=\"item.title\"\n [attr.href]=\"item.href\"\n [attr.target]=\"item.target\"\n [innerHTML]=\"item.label\"\n [attr.use-router]=\"false\"\n ></a>\n</ng-template>\n", styles: [":host ::ng-deep .btn .svg-inline--fa{color:#000!important}nav button:after{display:inline-block;width:0;height:0;margin-left:.3em;content:\"\";border-top:.4em solid;border-right:.4em solid transparent;border-bottom:0;border-left:.4em solid transparent}nav button.btn.btn-link:after{color:#000}.dropdown-menu-container{position:relative;width:100%}.dropdown-menu-container .parent-list{position:absolute;top:0;left:0;z-index:9999;box-shadow:0 4px 8px #0003,0 6px 20px #00000030;background-color:#fff;width:max-content;max-width:350px}.dropdown-menu-container .list-group-item{border:0;padding:0}.dropdown-menu-container li.item-divider{border-top:1px solid #ddd!important}.dropdown-menu-container li a{width:100%;color:inherit;display:block;padding:.75rem;word-break:break-word}.dropdown-menu-container li.list-group-title strong{padding-left:.75rem}.dropdown-menu-container ul.child-list a{padding-left:1.5rem}.dropdown-menu-container li a:focus{box-shadow:none}.dropdown-menu-container li.list-group-item:hover,.dropdown-menu-container li.list-group-item a:focus{background-color:var(--vd-primary-dark);outline:none;color:#fff}.dropdown-menu-container .list-group-title{padding-top:.5rem}.dropdown-menu-container li.list-group-title:hover{background:none;color:inherit}.dropdown-menu-container li.list-group-title:focus{outline:0;box-shadow:inset 0 1px 1px #00000013,0 0 0 .2rem var(--vd-focus)}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1$1.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "pipe", type: SdkDictionaryPipe, name: "fromDictionary" }] }); }
|
|
6139
6139
|
}
|
|
6140
6140
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FoehnDropdownMenuComponent, decorators: [{
|
|
6141
6141
|
type: Component,
|
|
6142
|
-
args: [{ selector: 'foehn-dropdown-menu', template: "<nav\n [attr.id]=\"buildId('NavContainer')\"\n tabindex=\"-1\"\n [attr.aria-label]=\"'foehn-dropdown-menu.aria-label' | fromDictionary\"\n>\n <button\n [attr.id]=\"buildId('TriggerButton')\"\n type=\"button\"\n class=\"d-flex align-items-center btn\"\n [ngClass]=\"btnCssClass\"\n (click)=\"toggleDropdownVisibility()\"\n (focusin)=\"handleFocusIn()\"\n (focusout)=\"handleFocusOut()\"\n [attr.aria-haspopup]=\"true\"\n [attr.aria-expanded]=\"isDropdownVisible\"\n [attr.aria-controls]=\"'dropdown-menu-list'\"\n [attr.aria-label]=\"label || null\"\n #buttonTrigger\n >\n <ng-content></ng-content>\n </button>\n\n <div class=\"dropdown-menu-container\" *ngIf=\"!!model && isDropdownVisible\">\n <ul\n id=\"dropdown-menu-list\"\n class=\"parent-list list-group\"\n (focusin)=\"handleFocusIn()\"\n (focusout)=\"handleFocusOut()\"\n [style.left.px]=\"popupPosition.left\"\n [style.top.px]=\"popupPosition.top\"\n tabindex=\"-1\"\n #entryPoint\n >\n <ng-container *ngFor=\"let group of model; let i = index\">\n <ng-container *ngIf=\"!!group.title\">\n <li\n *ngIf=\"i > 0\"\n class=\"list-group-item item-divider\"\n [attr.role]=\"'separator'\"\n ></li>\n <li\n class=\"list-group-item list-group-title\"\n tabindex=\"0\"\n #selectedFocusList\n >\n <strong *ngIf=\"!!group.title\">{{ group.title }}</strong>\n <ul class=\"child-list list-group\">\n <li\n *ngFor=\"let item of group.items\"\n class=\"list-group-item\"\n #selectedFocusList\n >\n <ng-container\n [ngTemplateOutlet]=\"itemLink\"\n [ngTemplateOutletContext]=\"{ item: item }\"\n ></ng-container>\n </li>\n </ul>\n </li>\n </ng-container>\n <ng-container *ngIf=\"!group.title\">\n <li\n *ngIf=\"i > 0\"\n class=\"list-group-item item-divider\"\n [attr.role]=\"'separator'\"\n ></li>\n <li\n *ngFor=\"let item of group.items; let j = index\"\n class=\"list-group-item\"\n #selectedFocusList\n >\n <ng-container\n [ngTemplateOutlet]=\"itemLink\"\n [ngTemplateOutletContext]=\"{ item: item }\"\n ></ng-container>\n </li>\n </ng-container>\n </ng-container>\n </ul>\n </div>\n</nav>\n\n<ng-template #itemLink let-item=\"item\">\n <a\n *ngIf=\"!!item.routerLink\"\n [attr.title]=\"item.title\"\n [routerLink]=\"item.routerLink\"\n [innerHTML]=\"item.label\"\n [attr.use-router]=\"true\"\n ></a>\n <a\n *ngIf=\"!item.routerLink\"\n [attr.title]=\"item.title\"\n [attr.href]=\"item.href\"\n [attr.target]=\"item.target\"\n [innerHTML]=\"item.label\"\n [attr.use-router]=\"false\"\n ></a>\n</ng-template>\n", styles: [":host ::ng-deep .btn .svg-inline--fa{color:#000!important}nav button:after{display:inline-block;width:0;height:0;margin-left:.3em;content:\"\";border-top:.4em solid;border-right:.4em solid transparent;border-bottom:0;border-left:.4em solid transparent}nav button.btn.btn-link:after{color:#000}.dropdown-menu-container{position:relative;width:100%}.dropdown-menu-container .parent-list{position:absolute;top:0;left:0;z-index:9999;box-shadow:0 4px 8px #0003,0 6px 20px #00000030;background-color:#fff;width:max-content;max-width:350px}.dropdown-menu-container .list-group-item{border:0;padding:0}.dropdown-menu-container li.item-divider{border-top:1px solid #ddd!important}.dropdown-menu-container li a{width:100%;color:inherit;display:block;padding:.75rem;word-break:break-word}.dropdown-menu-container li.list-group-title strong{padding-left:.75rem}.dropdown-menu-container ul.child-list a{padding-left:1.5rem}.dropdown-menu-container li a:focus{box-shadow:none}.dropdown-menu-container li.list-group-item:hover,.dropdown-menu-container li.list-group-item a:focus{background-color:var(--vd-primary-dark);outline:none;color:#fff}.dropdown-menu-container .list-group-title{padding-top:.5rem}.dropdown-menu-container li.list-group-title:hover{background:none;color:inherit}.dropdown-menu-container li.list-group-title:focus{outline:0;box-shadow:inset 0 1px 1px #00000013,0 0 0 .2rem var(--vd-focus)}\n"] }]
|
|
6142
|
+
args: [{ selector: 'foehn-dropdown-menu', template: "<nav\n [attr.id]=\"buildId('NavContainer')\"\n tabindex=\"-1\"\n [attr.aria-label]=\"'foehn-dropdown-menu.aria-label' | fromDictionary\"\n>\n <button\n [attr.id]=\"buildId('TriggerButton')\"\n type=\"button\"\n class=\"d-flex align-items-center btn\"\n [ngClass]=\"btnCssClass\"\n (click)=\"toggleDropdownVisibility()\"\n (focusin)=\"handleFocusIn()\"\n (focusout)=\"handleFocusOut()\"\n [attr.aria-haspopup]=\"true\"\n [attr.aria-expanded]=\"isDropdownVisible\"\n [attr.aria-controls]=\"'dropdown-menu-list'\"\n [attr.aria-label]=\"label || null\"\n #buttonTrigger\n >\n <ng-content></ng-content>\n </button>\n\n <div class=\"dropdown-menu-container\" *ngIf=\"!!model && isDropdownVisible\">\n <ul\n id=\"dropdown-menu-list\"\n class=\"parent-list list-group\"\n (focusin)=\"handleFocusIn()\"\n (focusout)=\"handleFocusOut()\"\n [style.left.px]=\"popupPosition.left\"\n [style.top.px]=\"popupPosition.top\"\n tabindex=\"-1\"\n #entryPoint\n >\n <ng-container *ngFor=\"let group of model; let i = index\">\n <ng-container *ngIf=\"!!group.title\">\n <li\n *ngIf=\"i > 0\"\n class=\"list-group-item item-divider\"\n [attr.role]=\"'separator'\"\n ></li>\n <li\n class=\"list-group-item list-group-title\"\n tabindex=\"0\"\n #selectedFocusList\n >\n <strong *ngIf=\"!!group.title\">{{ group.title }}</strong>\n <ul class=\"child-list list-group\">\n <li\n *ngFor=\"let item of group.items\"\n class=\"list-group-item\"\n #selectedFocusList\n >\n <ng-container\n [ngTemplateOutlet]=\"itemLink\"\n [ngTemplateOutletContext]=\"{ item: item }\"\n ></ng-container>\n </li>\n </ul>\n </li>\n </ng-container>\n <ng-container *ngIf=\"!group.title\">\n <li\n *ngIf=\"i > 0\"\n class=\"list-group-item item-divider\"\n [attr.role]=\"'separator'\"\n ></li>\n <li\n *ngFor=\"let item of group.items; let j = index\"\n class=\"list-group-item\"\n #selectedFocusList\n >\n <ng-container\n [ngTemplateOutlet]=\"itemLink\"\n [ngTemplateOutletContext]=\"{ item: item }\"\n ></ng-container>\n </li>\n </ng-container>\n </ng-container>\n </ul>\n </div>\n</nav>\n\n<ng-template #itemLink let-item=\"item\">\n <a\n *ngIf=\"!!item.routerLink\"\n [attr.title]=\"item.title\"\n [routerLink]=\"item.routerLink\"\n [queryParams]=\"item.queryParams\"\n [innerHTML]=\"item.label\"\n [attr.use-router]=\"true\"\n ></a>\n <a\n *ngIf=\"!item.routerLink\"\n [attr.title]=\"item.title\"\n [attr.href]=\"item.href\"\n [attr.target]=\"item.target\"\n [innerHTML]=\"item.label\"\n [attr.use-router]=\"false\"\n ></a>\n</ng-template>\n", styles: [":host ::ng-deep .btn .svg-inline--fa{color:#000!important}nav button:after{display:inline-block;width:0;height:0;margin-left:.3em;content:\"\";border-top:.4em solid;border-right:.4em solid transparent;border-bottom:0;border-left:.4em solid transparent}nav button.btn.btn-link:after{color:#000}.dropdown-menu-container{position:relative;width:100%}.dropdown-menu-container .parent-list{position:absolute;top:0;left:0;z-index:9999;box-shadow:0 4px 8px #0003,0 6px 20px #00000030;background-color:#fff;width:max-content;max-width:350px}.dropdown-menu-container .list-group-item{border:0;padding:0}.dropdown-menu-container li.item-divider{border-top:1px solid #ddd!important}.dropdown-menu-container li a{width:100%;color:inherit;display:block;padding:.75rem;word-break:break-word}.dropdown-menu-container li.list-group-title strong{padding-left:.75rem}.dropdown-menu-container ul.child-list a{padding-left:1.5rem}.dropdown-menu-container li a:focus{box-shadow:none}.dropdown-menu-container li.list-group-item:hover,.dropdown-menu-container li.list-group-item a:focus{background-color:var(--vd-primary-dark);outline:none;color:#fff}.dropdown-menu-container .list-group-title{padding-top:.5rem}.dropdown-menu-container li.list-group-title:hover{background:none;color:inherit}.dropdown-menu-container li.list-group-title:focus{outline:0;box-shadow:inset 0 1px 1px #00000013,0 0 0 .2rem var(--vd-focus)}\n"] }]
|
|
6143
6143
|
}], ctorParameters: () => [{ type: i1$1.Router }], propDecorators: { selectedFocusList: [{
|
|
6144
6144
|
type: ViewChildren,
|
|
6145
6145
|
args: ['selectedFocusList']
|