@elderbyte/ngx-starter 18.13.0-beta.0 → 18.13.0-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/_index.scss +7 -0
- package/esm2022/lib/components/access-denied/elder-access-denied.component.mjs +3 -3
- package/esm2022/lib/components/badge/elder-badge/elder-badge.component.mjs +3 -3
- package/esm2022/lib/components/card-organizer/card-stack/elder-card-stack.component.mjs +3 -3
- package/esm2022/lib/components/cards/elder-card/elder-card.component.mjs +3 -3
- package/esm2022/lib/components/data-transfer/http-data-transfer-indicator/http-data-transfer-indicator.component.mjs +3 -3
- package/esm2022/lib/components/data-transfer/http-data-transfer-overview/http-data-transfer-overview.component.mjs +3 -3
- package/esm2022/lib/components/data-view/grid/elder-grid/elder-grid.component.mjs +3 -3
- package/esm2022/lib/components/data-view/table/elder-table/elder-table.component.mjs +3 -3
- package/esm2022/lib/components/dialogs/confirm-dialog/elder-confirm-dialog.component.mjs +3 -3
- package/esm2022/lib/components/dialogs/selection-dialog/elder-selection-dialog/elder-selection-dialog.component.mjs +3 -3
- package/esm2022/lib/components/files/blob-viewer/elder-blob-viewer.component.mjs +3 -3
- package/esm2022/lib/components/forms/search/search-box/elder-search-box.component.mjs +3 -3
- package/esm2022/lib/components/graph/elder-progress-bar/elder-progress-bar.component.mjs +3 -3
- package/esm2022/lib/components/headers/elder-header/elder-header.component.mjs +3 -3
- package/esm2022/lib/components/navigation/bread-crumbs/bread-crumbs/elder-bread-crumbs.component.mjs +3 -3
- package/esm2022/lib/components/navigation/nav/nav-group/elder-nav-group.component.mjs +3 -3
- package/esm2022/lib/components/navigation/nav/nav-link/elder-nav-link.component.mjs +3 -3
- package/esm2022/lib/components/navigation/toolbar/toolbar/elder-toolbar.component.mjs +4 -5
- package/esm2022/lib/components/page/exit-guard/page-exit-lock-indicator/page-exit-lock-indicator.component.mjs +3 -3
- package/esm2022/lib/components/page/exit-guard/page-exit-lock-overview/page-exit-lock-overview.component.mjs +3 -3
- package/esm2022/lib/components/select/filter/elder-filter-chip-template/elder-filter-chip-template.component.mjs +3 -3
- package/esm2022/lib/components/shell/header/elder-app-header/elder-app-header.component.mjs +2 -2
- package/esm2022/lib/components/shell/shell/elder-shell.component.mjs +6 -6
- package/esm2022/lib/components/toasts/standard-toast/standard-toast.component.mjs +3 -3
- package/fesm2022/elderbyte-ngx-starter.mjs +52 -52
- package/fesm2022/elderbyte-ngx-starter.mjs.map +1 -1
- package/package.json +1 -1
- package/src/lib/components/badge/elder-badge/elder-badge.component.scss +2 -2
- package/src/lib/components/button-group/elder-button-group/elder-button-group.component.scss +3 -3
- package/src/lib/components/card-organizer/card-stack/elder-card-stack.component.scss +9 -25
- package/src/lib/components/cards/elder-card/elder-card.component.scss +7 -8
- package/src/lib/components/chips/_elder-chip-theme.scss +3 -3
- package/src/lib/components/data-transfer/http-data-transfer-indicator/http-data-transfer-indicator.component.scss +1 -1
- package/src/lib/components/data-view/grid/elder-grid/elder-grid.component.scss +3 -6
- package/src/lib/components/data-view/table/elder-table/elder-table.component.scss +8 -10
- package/src/lib/components/errors/exception-detail/elder-exception-detail.component.scss +2 -2
- package/src/lib/components/expand-toggle-button/elder-expand-toggle-button.component.scss +1 -1
- package/src/lib/components/files/blob-viewer/elder-blob-viewer.component.scss +4 -10
- package/src/lib/components/graph/elder-progress-bar/elder-progress-bar.component.scss +0 -1
- package/src/lib/components/navigation/bread-crumbs/bread-crumbs/elder-bread-crumbs.component.scss +2 -0
- package/src/lib/components/navigation/nav/_elder-nav-theme.scss +8 -4
- package/src/lib/components/navigation/nav/nav-group/elder-nav-group.component.scss +1 -1
- package/src/lib/components/navigation/nav/nav-link/elder-nav-link.component.scss +4 -4
- package/src/lib/components/page/exit-guard/page-exit-lock-indicator/page-exit-lock-indicator.component.scss +2 -2
- package/src/lib/components/panels/card-panel/elder-card-panel.component.scss +2 -2
- package/src/lib/components/panels/elder-dialog-panel/elder-dialog-panel.component.scss +3 -3
- package/src/lib/components/panels/flat/_elder-panel-theme.scss +8 -41
- package/src/lib/components/select/filter/elder-filter-chip-template/elder-filter-chip-template.component.scss +2 -3
- package/src/lib/components/select/multi/elder-multi-select-chips/elder-multi-select-chips.component.scss +1 -2
- package/src/lib/components/shell/header/elder-app-header/elder-app-header.component.scss +2 -2
- package/src/lib/components/shell/shell/elder-shell.component.scss +8 -0
- package/src/lib/components/toasts/standard-toast/standard-toast.component.scss +31 -2
- package/theming/_elder-badge-sizing.scss +21 -0
- package/theming/_elder-color-helpers.scss +74 -0
- package/theming/_elder-common.scss +15 -3
- package/theming/_elder-design-token-overwrites.scss +33 -0
- package/theming/_elder-flex-layout.scss +0 -11
- package/theming/_elder-layout-system.scss +225 -0
- package/theming/_elder-m3-theme.scss +208 -4
- package/theming/_elder-scrollbar-theme.scss +1 -1
- package/theming/_elder-style-fixes.scss +214 -20
- package/theming/_mixins.scss +0 -1
|
@@ -84,7 +84,7 @@ export class ElderSearchBoxComponent {
|
|
|
84
84
|
this.searchContextDirective.reset();
|
|
85
85
|
}
|
|
86
86
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: ElderSearchBoxComponent, deps: [{ token: i1.ElderSearchContextDirective }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
87
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.5", type: ElderSearchBoxComponent, isStandalone: true, selector: "elder-search-box", inputs: { autoPanel: "autoPanel", name: "name", queryKey: "queryKey", placeholder: "placeholder", label: "label", hint: "hint", autocomplete: "autocomplete", appearance: "appearance", dense: "dense" }, host: { classAttribute: "elder-form-field-host" }, queries: [{ propertyName: "customSearchPanel", first: true, predicate: ElderSearchPanelComponent, descendants: true, isSignal: true }], viewQueries: [{ propertyName: "search", first: true, predicate: ["search"], descendants: true, isSignal: true }, { propertyName: "overlayComponent", first: true, predicate: ElderOverlayComponent, descendants: true, isSignal: true }], exportAs: ["elderSearchBox"], ngImport: i0, template: "<div class=\"layout-row place-stretch-center full flex\">\n <mat-form-field\n [appearance]=\"appearance\"\n class=\"elder-search-box-field flex-auto\"\n subscriptSizing=\"dynamic\"\n [elderDense]=\"dense\"\n >\n <button\n matPrefix\n mat-icon-button\n type=\"button\"\n [elderOverlayTrigger]=\"searchPanel\"\n (click)=\"blurFocus($event)\"\n >\n <mat-icon>search</mat-icon>\n </button>\n\n <input\n matInput\n type=\"text\"\n [name]=\"name\"\n [placeholder]=\"placeholder\"\n #search\n cdkFocusInitial\n ngModel\n elderSearchInput\n [elderSearchInputKey]=\"queryKey\"\n #searchInput=\"elderSearchInput\"\n [autocomplete]=\"autoPanel && customSearchPanel() ? 'off' : autocomplete\"\n [elderOverlayOrigin]=\"searchPanel\"\n [elderOverlayTrigger]=\"searchPanel\"\n [elderOverlayTriggerType]=\"'focus'\"\n [elderOverlayTriggerEnabled]=\"\n autoPanel && customSearchPanel() && (searchInput?.state$ | async)?.pristine\n \"\n />\n\n @if (hint) {\n <mat-hint>{{ hint }}</mat-hint>\n }\n\n <div class=\"layout-row\" matSuffix>\n @if (touchedSearchInputs$ | async; as touchedInputs) {\n @if (touchedInputs.length > 0) {\n <button\n mat-icon-button\n type=\"button\"\n (click)=\"clearSearch($event)\"\n name=\"clear\"\n aria-label=\"Clear\"\n >\n <mat-icon>close</mat-icon>\n </button>\n }\n\n @if (customSearchPanel()) {\n <button\n mat-icon-button\n type=\"button\"\n name=\"openPanel\"\n [elderOverlayTrigger]=\"searchPanel\"\n (click)=\"blurFocus($event)\"\n >\n <mat-icon\n [matBadge]=\"touchedInputs.length\"\n matBadgeSize=\"small\"\n [matBadgeOverlap]=\"true\"\n [matBadgeHidden]=\"touchedInputs.length === 0\"\n matBadgeColor=\"accent\"\n [color]=\"touchedInputs.length > 0 ? 'accent' : undefined\"\n >\n filter_list\n </mat-icon>\n </button>\n }\n }\n </div>\n </mat-form-field>\n</div>\n\n<!-- Overlay Panel for advanced search -->\n<elder-overlay #searchPanel=\"elderOverlay\">\n <elder-dialog-panel class=\"elder-search-panel-container\">\n <!-- Project the users custom search panel here -->\n <ng-content select=\"elder-search-panel\"></ng-content>\n\n <div class=\"layout-row place-between-center\">\n <button mat-
|
|
87
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.5", type: ElderSearchBoxComponent, isStandalone: true, selector: "elder-search-box", inputs: { autoPanel: "autoPanel", name: "name", queryKey: "queryKey", placeholder: "placeholder", label: "label", hint: "hint", autocomplete: "autocomplete", appearance: "appearance", dense: "dense" }, host: { classAttribute: "elder-form-field-host" }, queries: [{ propertyName: "customSearchPanel", first: true, predicate: ElderSearchPanelComponent, descendants: true, isSignal: true }], viewQueries: [{ propertyName: "search", first: true, predicate: ["search"], descendants: true, isSignal: true }, { propertyName: "overlayComponent", first: true, predicate: ElderOverlayComponent, descendants: true, isSignal: true }], exportAs: ["elderSearchBox"], ngImport: i0, template: "<div class=\"layout-row place-stretch-center full flex\">\n <mat-form-field\n [appearance]=\"appearance\"\n class=\"elder-search-box-field flex-auto\"\n subscriptSizing=\"dynamic\"\n [elderDense]=\"dense\"\n >\n <button\n matPrefix\n mat-icon-button\n type=\"button\"\n [elderOverlayTrigger]=\"searchPanel\"\n (click)=\"blurFocus($event)\"\n >\n <mat-icon>search</mat-icon>\n </button>\n\n <input\n matInput\n type=\"text\"\n [name]=\"name\"\n [placeholder]=\"placeholder\"\n #search\n cdkFocusInitial\n ngModel\n elderSearchInput\n [elderSearchInputKey]=\"queryKey\"\n #searchInput=\"elderSearchInput\"\n [autocomplete]=\"autoPanel && customSearchPanel() ? 'off' : autocomplete\"\n [elderOverlayOrigin]=\"searchPanel\"\n [elderOverlayTrigger]=\"searchPanel\"\n [elderOverlayTriggerType]=\"'focus'\"\n [elderOverlayTriggerEnabled]=\"\n autoPanel && customSearchPanel() && (searchInput?.state$ | async)?.pristine\n \"\n />\n\n @if (hint) {\n <mat-hint>{{ hint }}</mat-hint>\n }\n\n <div class=\"layout-row\" matSuffix>\n @if (touchedSearchInputs$ | async; as touchedInputs) {\n @if (touchedInputs.length > 0) {\n <button\n mat-icon-button\n type=\"button\"\n (click)=\"clearSearch($event)\"\n name=\"clear\"\n aria-label=\"Clear\"\n >\n <mat-icon>close</mat-icon>\n </button>\n }\n\n @if (customSearchPanel()) {\n <button\n mat-icon-button\n type=\"button\"\n name=\"openPanel\"\n [elderOverlayTrigger]=\"searchPanel\"\n (click)=\"blurFocus($event)\"\n >\n <mat-icon\n [matBadge]=\"touchedInputs.length\"\n matBadgeSize=\"small\"\n [matBadgeOverlap]=\"true\"\n [matBadgeHidden]=\"touchedInputs.length === 0\"\n matBadgeColor=\"accent\"\n [color]=\"touchedInputs.length > 0 ? 'accent' : undefined\"\n >\n filter_list\n </mat-icon>\n </button>\n }\n }\n </div>\n </mat-form-field>\n</div>\n\n<!-- Overlay Panel for advanced search -->\n<elder-overlay #searchPanel=\"elderOverlay\">\n <elder-dialog-panel class=\"elder-search-panel-container\">\n <!-- Project the users custom search panel here -->\n <ng-content select=\"elder-search-panel\"></ng-content>\n\n <div class=\"layout-row place-between-center\">\n <button mat-flat-button type=\"button\" name=\"clear\" (click)=\"clearSearch($event)\">\n {{ 'context.reset' | translate }}\n </button>\n\n <button\n mat-flat-button\n type=\"button\"\n name=\"ok\"\n color=\"primary\"\n (click)=\"searchPanel.closeOverlay()\"\n >\n Ok\n </button>\n </div>\n </elder-dialog-panel>\n</elder-overlay>\n", styles: [".elder-search-box-field{margin-top:4px;margin-bottom:4px}.elder-search-panel-container{min-width:250px}\n"], dependencies: [{ kind: "component", type: MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: ElderFormFieldDenseDirective, selector: "mat-form-field[elderDense]", inputs: ["elderDense", "subscriptSizing", "floatLabel"] }, { kind: "component", type: MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "directive", type: MatPrefix, selector: "[matPrefix], [matIconPrefix], [matTextPrefix]", inputs: ["matTextPrefix"] }, { kind: "directive", type: ElderOverlayTriggerDirective, selector: "[elderOverlayTrigger]", inputs: ["elderOverlayTrigger", "elderOverlayTriggerType", "elderOverlayTriggerEnabled"] }, { kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: ElderSearchInputDirective, selector: "[elderSearchInput]", inputs: ["elderSearchInputTransform", "elderSearchInput", "elderSearchInputFallback", "valueAsId", "elderSearchInputKey"], exportAs: ["elderSearchInput"] }, { kind: "directive", type: ElderOverlayOriginDirective, selector: "[elderOverlayOrigin]", inputs: ["elderOverlayOrigin"] }, { kind: "directive", type: MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "directive", type: MatBadge, selector: "[matBadge]", inputs: ["matBadgeColor", "matBadgeOverlap", "matBadgeDisabled", "matBadgePosition", "matBadge", "matBadgeDescription", "matBadgeSize", "matBadgeHidden"] }, { kind: "component", type: ElderOverlayComponent, selector: "elder-overlay", inputs: ["originX", "originY", "overlayX", "overlayY", "offsetY", "offsetX", "backdrop", "backdropVisible", "origin", "positionStrategy", "overlaySize"], outputs: ["keydownEvents", "attachedChange"], exportAs: ["elderOverlay"] }, { kind: "component", type: ElderDialogPanelComponent, selector: "elder-dialog-panel" }, { kind: "component", type: MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
88
88
|
}
|
|
89
89
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: ElderSearchBoxComponent, decorators: [{
|
|
90
90
|
type: Component,
|
|
@@ -108,7 +108,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImpor
|
|
|
108
108
|
MatButton,
|
|
109
109
|
AsyncPipe,
|
|
110
110
|
TranslateModule,
|
|
111
|
-
], template: "<div class=\"layout-row place-stretch-center full flex\">\n <mat-form-field\n [appearance]=\"appearance\"\n class=\"elder-search-box-field flex-auto\"\n subscriptSizing=\"dynamic\"\n [elderDense]=\"dense\"\n >\n <button\n matPrefix\n mat-icon-button\n type=\"button\"\n [elderOverlayTrigger]=\"searchPanel\"\n (click)=\"blurFocus($event)\"\n >\n <mat-icon>search</mat-icon>\n </button>\n\n <input\n matInput\n type=\"text\"\n [name]=\"name\"\n [placeholder]=\"placeholder\"\n #search\n cdkFocusInitial\n ngModel\n elderSearchInput\n [elderSearchInputKey]=\"queryKey\"\n #searchInput=\"elderSearchInput\"\n [autocomplete]=\"autoPanel && customSearchPanel() ? 'off' : autocomplete\"\n [elderOverlayOrigin]=\"searchPanel\"\n [elderOverlayTrigger]=\"searchPanel\"\n [elderOverlayTriggerType]=\"'focus'\"\n [elderOverlayTriggerEnabled]=\"\n autoPanel && customSearchPanel() && (searchInput?.state$ | async)?.pristine\n \"\n />\n\n @if (hint) {\n <mat-hint>{{ hint }}</mat-hint>\n }\n\n <div class=\"layout-row\" matSuffix>\n @if (touchedSearchInputs$ | async; as touchedInputs) {\n @if (touchedInputs.length > 0) {\n <button\n mat-icon-button\n type=\"button\"\n (click)=\"clearSearch($event)\"\n name=\"clear\"\n aria-label=\"Clear\"\n >\n <mat-icon>close</mat-icon>\n </button>\n }\n\n @if (customSearchPanel()) {\n <button\n mat-icon-button\n type=\"button\"\n name=\"openPanel\"\n [elderOverlayTrigger]=\"searchPanel\"\n (click)=\"blurFocus($event)\"\n >\n <mat-icon\n [matBadge]=\"touchedInputs.length\"\n matBadgeSize=\"small\"\n [matBadgeOverlap]=\"true\"\n [matBadgeHidden]=\"touchedInputs.length === 0\"\n matBadgeColor=\"accent\"\n [color]=\"touchedInputs.length > 0 ? 'accent' : undefined\"\n >\n filter_list\n </mat-icon>\n </button>\n }\n }\n </div>\n </mat-form-field>\n</div>\n\n<!-- Overlay Panel for advanced search -->\n<elder-overlay #searchPanel=\"elderOverlay\">\n <elder-dialog-panel class=\"elder-search-panel-container\">\n <!-- Project the users custom search panel here -->\n <ng-content select=\"elder-search-panel\"></ng-content>\n\n <div class=\"layout-row place-between-center\">\n <button mat-
|
|
111
|
+
], template: "<div class=\"layout-row place-stretch-center full flex\">\n <mat-form-field\n [appearance]=\"appearance\"\n class=\"elder-search-box-field flex-auto\"\n subscriptSizing=\"dynamic\"\n [elderDense]=\"dense\"\n >\n <button\n matPrefix\n mat-icon-button\n type=\"button\"\n [elderOverlayTrigger]=\"searchPanel\"\n (click)=\"blurFocus($event)\"\n >\n <mat-icon>search</mat-icon>\n </button>\n\n <input\n matInput\n type=\"text\"\n [name]=\"name\"\n [placeholder]=\"placeholder\"\n #search\n cdkFocusInitial\n ngModel\n elderSearchInput\n [elderSearchInputKey]=\"queryKey\"\n #searchInput=\"elderSearchInput\"\n [autocomplete]=\"autoPanel && customSearchPanel() ? 'off' : autocomplete\"\n [elderOverlayOrigin]=\"searchPanel\"\n [elderOverlayTrigger]=\"searchPanel\"\n [elderOverlayTriggerType]=\"'focus'\"\n [elderOverlayTriggerEnabled]=\"\n autoPanel && customSearchPanel() && (searchInput?.state$ | async)?.pristine\n \"\n />\n\n @if (hint) {\n <mat-hint>{{ hint }}</mat-hint>\n }\n\n <div class=\"layout-row\" matSuffix>\n @if (touchedSearchInputs$ | async; as touchedInputs) {\n @if (touchedInputs.length > 0) {\n <button\n mat-icon-button\n type=\"button\"\n (click)=\"clearSearch($event)\"\n name=\"clear\"\n aria-label=\"Clear\"\n >\n <mat-icon>close</mat-icon>\n </button>\n }\n\n @if (customSearchPanel()) {\n <button\n mat-icon-button\n type=\"button\"\n name=\"openPanel\"\n [elderOverlayTrigger]=\"searchPanel\"\n (click)=\"blurFocus($event)\"\n >\n <mat-icon\n [matBadge]=\"touchedInputs.length\"\n matBadgeSize=\"small\"\n [matBadgeOverlap]=\"true\"\n [matBadgeHidden]=\"touchedInputs.length === 0\"\n matBadgeColor=\"accent\"\n [color]=\"touchedInputs.length > 0 ? 'accent' : undefined\"\n >\n filter_list\n </mat-icon>\n </button>\n }\n }\n </div>\n </mat-form-field>\n</div>\n\n<!-- Overlay Panel for advanced search -->\n<elder-overlay #searchPanel=\"elderOverlay\">\n <elder-dialog-panel class=\"elder-search-panel-container\">\n <!-- Project the users custom search panel here -->\n <ng-content select=\"elder-search-panel\"></ng-content>\n\n <div class=\"layout-row place-between-center\">\n <button mat-flat-button type=\"button\" name=\"clear\" (click)=\"clearSearch($event)\">\n {{ 'context.reset' | translate }}\n </button>\n\n <button\n mat-flat-button\n type=\"button\"\n name=\"ok\"\n color=\"primary\"\n (click)=\"searchPanel.closeOverlay()\"\n >\n Ok\n </button>\n </div>\n </elder-dialog-panel>\n</elder-overlay>\n", styles: [".elder-search-box-field{margin-top:4px;margin-bottom:4px}.elder-search-panel-container{min-width:250px}\n"] }]
|
|
112
112
|
}], ctorParameters: () => [{ type: i1.ElderSearchContextDirective }], propDecorators: { autoPanel: [{
|
|
113
113
|
type: Input
|
|
114
114
|
}], name: [{
|
|
@@ -128,4 +128,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImpor
|
|
|
128
128
|
}], dense: [{
|
|
129
129
|
type: Input
|
|
130
130
|
}] } });
|
|
131
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItc2VhcmNoLWJveC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm1zL3NlYXJjaC9zZWFyY2gtYm94L2VsZGVyLXNlYXJjaC1ib3guY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9mb3Jtcy9zZWFyY2gvc2VhcmNoLWJveC9lbGRlci1zZWFyY2gtYm94LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFlBQVksRUFFWixNQUFNLEVBRU4sS0FBSyxFQUdMLFNBQVMsR0FFVixNQUFNLGVBQWUsQ0FBQTtBQUN0QixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sc0JBQXNCLENBQUE7QUFFcEQsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sZ0NBQWdDLENBQUE7QUFFMUUsT0FBTyxFQUFnQixxQkFBcUIsRUFBRSxNQUFNLHVCQUF1QixDQUFBO0FBQzNFLE9BQU8sRUFFTCxZQUFZLEVBQ1osU0FBUyxFQUNULE9BQU8sRUFDUCxTQUFTLEdBQ1YsTUFBTSw4QkFBOEIsQ0FBQTtBQUNyQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUE7QUFDckQsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0saUVBQWlFLENBQUE7QUFDM0csT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMkNBQTJDLENBQUE7QUFDakYsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHlCQUF5QixDQUFBO0FBQ2xELE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLGtEQUFrRCxDQUFBO0FBQzlGLE9B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UCxTQUFTLHFIQUNULFFBQVEsa05BQ1IscUJBQXFCLDhSQUNyQix5QkFBeUIsK0RBQ3pCLFNBQVMsNEtBQ1QsU0FBUyw2Q0FDVCxlQUFlOzsyRkFHTix1QkFBdUI7a0JBL0JuQyxTQUFTOytCQUNFLGtCQUFrQixZQUNsQixnQkFBZ0IsUUFJcEIsRUFBRSxLQUFLLEVBQUUsdUJBQXVCLEVBQUUsbUJBQ3ZCLHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsSUFBSSxXQUNQO3dCQUNQLElBQUk7d0JBQ0osWUFBWTt3QkFDWiw0QkFBNEI7d0JBQzVCLGFBQWE7d0JBQ2IsU0FBUzt3QkFDVCw0QkFBNEI7d0JBQzVCLE9BQU87d0JBQ1AsUUFBUTt3QkFDUixXQUFXO3dCQUNYLHlCQUF5Qjt3QkFDekIsMkJBQTJCO3dCQUMzQixPQUFPO3dCQUNQLFNBQVM7d0JBQ1QsUUFBUTt3QkFDUixxQkFBcUI7d0JBQ3JCLHlCQUF5Qjt3QkFDekIsU0FBUzt3QkFDVCxTQUFTO3dCQUNULGVBQWU7cUJBQ2hCO2dHQXFCTSxTQUFTO3NCQURmLEtBQUs7Z0JBSUMsSUFBSTtzQkFEVixLQUFLO2dCQUlDLFFBQVE7c0JBRGQsS0FBSztnQkFJQyxXQUFXO3NCQURqQixLQUFLO2dCQUlDLEtBQUs7c0JBRFgsS0FBSztnQkFJQyxJQUFJO3NCQURWLEtBQUs7Z0JBTUMsWUFBWTtzQkFEbEIsS0FBSztnQkFJQyxVQUFVO3NCQURoQixLQUFLO2dCQXFDSyxLQUFLO3NCQURmLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlckNvbnRlbnRJbml0LFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBjb250ZW50Q2hpbGQsXG4gIENvbnRlbnRDaGlsZCxcbiAgZWZmZWN0LFxuICBFbGVtZW50UmVmLFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxuICBzaWduYWwsXG4gIHZpZXdDaGlsZCxcbiAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgTG9nZ2VyRmFjdG9yeSB9IGZyb20gJ0BlbGRlcmJ5dGUvdHMtbG9nZ2VyJ1xuaW1wb3J0IHsgRWxkZXJTZWFyY2hDb250ZXh0RGlyZWN0aXZlIH0gZnJvbSAnLi4vZWxkZXItc2VhcmNoLWNvbnRleHQuZGlyZWN0aXZlJ1xuaW1wb3J0IHsgRWxkZXJTZWFyY2hQYW5lbENvbXBvbmVudCB9IGZyb20gJy4vZWxkZXItc2VhcmNoLXBhbmVsLmNvbXBvbmVudCdcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSwgU3ViamVjdCB9IGZyb20gJ3J4anMnXG5pbXBvcnQgeyBCb29sZWFuSW5wdXQsIGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2VyY2lvbidcbmltcG9ydCB7XG4gIE1hdEZvcm1GaWVsZEFwcGVhcmFuY2UsXG4gIE1hdEZvcm1GaWVsZCxcbiAgTWF0UHJlZml4LFxuICBNYXRIaW50LFxuICBNYXRTdWZmaXgsXG59IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2Zvcm0tZmllbGQnXG5pbXBvcnQgeyBUcmFuc2xhdGVNb2R1bGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJ1xuaW1wb3J0IHsgRWxkZXJEaWFsb2dQYW5lbENvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL3BhbmVscy9lbGRlci1kaWFsb2ctcGFuZWwvZWxkZXItZGlhbG9nLXBhbmVsLmNvbXBvbmVudCdcbmltcG9ydCB7IEVsZGVyT3ZlcmxheUNvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL292ZXJsYXlzL2VsZGVyLW92ZXJsYXkuY29tcG9uZW50J1xuaW1wb3J0IHsgTWF0QmFkZ2UgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9iYWRnZSdcbmltcG9ydCB7IEVsZGVyT3ZlcmxheU9yaWdpbkRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uLy4uL292ZXJsYXlzL2VsZGVyLW92ZXJsYXktb3JpZ2luLmRpcmVjdGl2ZSdcbmltcG9ydCB7IEVsZGVyU2VhcmNoSW5wdXREaXJlY3RpdmUgfSBmcm9tICcuLi9lbGRlci1zZWFyY2gtaW5wdXQuZGlyZWN0aXZlJ1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3JtcydcbmltcG9ydCB7IE1hdElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnXG5pbXBvcnQgeyBNYXRJY29uIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbidcbmltcG9ydCB7IEVsZGVyT3ZlcmxheVRyaWdnZXJEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi8uLi9vdmVybGF5cy9lbGRlci1vdmVybGF5LXRyaWdnZXIuZGlyZWN0aXZlJ1xuaW1wb3J0IHsgTWF0SWNvbkJ1dHRvbiwgTWF0QnV0dG9uIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJ1xuaW1wb3J0IHsgRWxkZXJGb3JtRmllbGREZW5zZURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZXMvZWxkZXItZm9ybS1maWVsZC1kZW5zZS5kaXJlY3RpdmUnXG5pbXBvcnQgeyBOZ0lmLCBBc3luY1BpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nXG5pbXBvcnQgeyBTZWFyY2hJbnB1dFN0YXRlIH0gZnJvbSAnLi4vZG9tYWluL2lucHV0L3NlYXJjaC1pbnB1dC1zdGF0ZSdcbmltcG9ydCB7IE92ZXJsYXlSZWYgfSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSdcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZWxkZXItc2VhcmNoLWJveCcsXG4gIGV4cG9ydEFzOiAnZWxkZXJTZWFyY2hCb3gnLFxuICB0ZW1wbGF0ZVVybDogJy4vZWxkZXItc2VhcmNoLWJveC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2VsZGVyLXNlYXJjaC1ib3guY29tcG9uZW50LnNjc3MnXSxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1ob3N0LW1ldGFkYXRhLXByb3BlcnR5XG4gIGhvc3Q6IHsgY2xhc3M6ICdlbGRlci1mb3JtLWZpZWxkLWhvc3QnIH0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgTmdJZixcbiAgICBNYXRGb3JtRmllbGQsXG4gICAgRWxkZXJGb3JtRmllbGREZW5zZURpcmVjdGl2ZSxcbiAgICBNYXRJY29uQnV0dG9uLFxuICAgIE1hdFByZWZpeCxcbiAgICBFbGRlck92ZXJsYXlUcmlnZ2VyRGlyZWN0aXZlLFxuICAgIE1hdEljb24sXG4gICAgTWF0SW5wdXQsXG4gICAgRm9ybXNNb2R1bGUsXG4gICAgRWxkZXJTZWFyY2hJbnB1dERpcmVjdGl2ZSxcbiAgICBFbGRlck92ZXJsYXlPcmlnaW5EaXJlY3RpdmUsXG4gICAgTWF0SGludCxcbiAgICBNYXRTdWZmaXgsXG4gICAgTWF0QmFkZ2UsXG4gICAgRWxkZXJPdmVybGF5Q29tcG9uZW50LFxuICAgIEVsZGVyRGlhbG9nUGFuZWxDb21wb25lbnQsXG4gICAgTWF0QnV0dG9uLFxuICAgIEFzeW5jUGlwZSxcbiAgICBUcmFuc2xhdGVNb2R1bGUsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEVsZGVyU2VhcmNoQm94Q29tcG9uZW50IHtcbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIEZpZWxkcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSByZWFkb25seSBsb2cgPSBMb2dnZXJGYWN0b3J5LmdldExvZ2dlcih0aGlzLmNvbnN0cnVjdG9yLm5hbWUpXG5cbiAgLy8gVGhlIHNlYXJjaCBleHByZXNzaW9uIGlucHV0IEVsZW1lbnRcbiAgcHVibGljIHNlYXJjaCA9IHZpZXdDaGlsZC5yZXF1aXJlZDxFbGVtZW50UmVmPEhUTUxJbnB1dEVsZW1lbnQ+Pignc2VhcmNoJylcbiAgcHVibGljIHJlYWRvbmx5IG92ZXJsYXlDb21wb25lbnQgPSB2aWV3Q2hpbGQucmVxdWlyZWQoRWxkZXJPdmVybGF5Q29tcG9uZW50KVxuXG4gIHB1YmxpYyByZWFkb25seSBjdXN0b21TZWFyY2hQYW5lbCA9IGNvbnRlbnRDaGlsZChFbGRlclNlYXJjaFBhbmVsQ29tcG9uZW50KVxuXG4gIC8qKlxuICAgKiBEaXNwbGF5IHRoZSBzZWFyY2ggcGFuZWwgaW1tZWRpYXRlbHkgd2hlbiB0aGUgdXNlciBlbnRlcnMgdGhlIHNlYXJjaCBib3guXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgYXV0b1BhbmVsID0gdHJ1ZVxuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBuYW1lID0gJ3NlYXJjaEV4cHJlc3Npb24nXG5cbiAgQElucHV0KClcbiAgcHVibGljIHF1ZXJ5S2V5ID0gJ3F1ZXJ5J1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBwbGFjZWhvbGRlcjogc3RyaW5nXG5cbiAgQElucHV0KClcbiAgcHVibGljIGxhYmVsOiBzdHJpbmdcblxuICBASW5wdXQoKVxuICBwdWJsaWMgaGludDogc3RyaW5nXG5cbiAgcHJpdmF0ZSBfZGVuc2UgPSBmYWxzZVxuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBhdXRvY29tcGxldGUgPSAnb2ZmJ1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBhcHBlYXJhbmNlOiBNYXRGb3JtRmllbGRBcHBlYXJhbmNlXG5cbiAgcHVibGljIHJlYWRvbmx5IHRvdWNoZWRTZWFyY2hJbnB1dHMkOiBPYnNlcnZhYmxlPFNlYXJjaElucHV0U3RhdGVbXT5cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogQ29uc3RydWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgcmVhZG9ubHkgc2VhcmNoQ29udGV4dERpcmVjdGl2ZTogRWxkZXJTZWFyY2hDb250ZXh0RGlyZWN0aXZlKSB7XG4gICAgdGhpcy50b3VjaGVkU2VhcmNoSW5wdXRzJCA9IHNlYXJjaENvbnRleHREaXJlY3RpdmUudG91Y2hlZFNlYXJjaElucHV0cyRcbiAgICAgIC5waXBlXG4gICAgICAvLyB0YXAoYXR0cnMgPT4gdGhpcy5sb2dnZXIuZXJyb3IoJ0F0dHJzJywgYXR0cnMpKVxuICAgICAgKClcbiAgICBlZmZlY3QoXG4gICAgICAoKSA9PiB7XG4gICAgICAgIGNvbnN0IGN1c3RvbVNlYXJjaFBhbmVsID0gdGhpcy5jdXN0b21TZWFyY2hQYW5lbCgpXG4gICAgICAgIGNvbnN0IG92ZXJsYXkgPSB0aGlzLm92ZXJsYXlDb21wb25lbnQoKVxuICAgICAgICBpZiAoY3VzdG9tU2VhcmNoUGFuZWwpIHtcbiAgICAgICAgICBjdXN0b21TZWFyY2hQYW5lbC5vdmVybGF5LnNldChvdmVybGF5KVxuICAgICAgICB9XG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBhbGxvd1NpZ25hbFdyaXRlczogdHJ1ZSxcbiAgICAgIH1cbiAgICApXG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJvcGVydGllcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGRlbnNlKHZhbHVlOiBCb29sZWFuSW5wdXQpIHtcbiAgICB0aGlzLl9kZW5zZSA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSlcbiAgfVxuXG4gIHB1YmxpYyBnZXQgZGVuc2UoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2RlbnNlXG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHVibGljIEFQSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgYmx1ckZvY3VzKGV2ZW50OiBhbnkpOiB2b2lkIHtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMuc2VhcmNoKCkubmF0aXZlRWxlbWVudC5ibHVyKCksIDApXG4gIH1cblxuICAvKipcbiAgICogT2NjdXJzIHdoZW4gdGhlIHVzZXIgY2xpY2tzIHRoZSBjbGVhciBzZWFyY2ggYnV0dG9uXG4gICAqL1xuICBwdWJsaWMgY2xlYXJTZWFyY2goZXZlbnQ6IGFueSk6IHZvaWQge1xuICAgIHRoaXMuc2VhcmNoQ29udGV4dERpcmVjdGl2ZS5yZXNldCgpXG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJpdmF0ZSBtZXRob2RzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbn1cbiIsIjxkaXYgY2xhc3M9XCJsYXlvdXQtcm93IHBsYWNlLXN0cmV0Y2gtY2VudGVyIGZ1bGwgZmxleFwiPlxuICA8bWF0LWZvcm0tZmllbGRcbiAgICBbYXBwZWFyYW5jZV09XCJhcHBlYXJhbmNlXCJcbiAgICBjbGFzcz1cImVsZGVyLXNlYXJjaC1ib3gtZmllbGQgZmxleC1hdXRvXCJcbiAgICBzdWJzY3JpcHRTaXppbmc9XCJkeW5hbWljXCJcbiAgICBbZWxkZXJEZW5zZV09XCJkZW5zZVwiXG4gID5cbiAgICA8YnV0dG9uXG4gICAgICBtYXRQcmVmaXhcbiAgICAgIG1hdC1pY29uLWJ1dHRvblxuICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICBbZWxkZXJPdmVybGF5VHJpZ2dlcl09XCJzZWFyY2hQYW5lbFwiXG4gICAgICAoY2xpY2spPVwiYmx1ckZvY3VzKCRldmVudClcIlxuICAgID5cbiAgICAgIDxtYXQtaWNvbj5zZWFyY2g8L21hdC1pY29uPlxuICAgIDwvYnV0dG9uPlxuXG4gICAgPGlucHV0XG4gICAgICBtYXRJbnB1dFxuICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgW25hbWVdPVwibmFtZVwiXG4gICAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxuICAgICAgI3NlYXJjaFxuICAgICAgY2RrRm9jdXNJbml0aWFsXG4gICAgICBuZ01vZGVsXG4gICAgICBlbGRlclNlYXJjaElucHV0XG4gICAgICBbZWxkZXJTZWFyY2hJbnB1dEtleV09XCJxdWVyeUtleVwiXG4gICAgICAjc2VhcmNoSW5wdXQ9XCJlbGRlclNlYXJjaElucHV0XCJcbiAgICAgIFthdXRvY29tcGxldGVdPVwiYXV0b1BhbmVsICYmIGN1c3RvbVNlYXJjaFBhbmVsKCkgPyAnb2ZmJyA6IGF1dG9jb21wbGV0ZVwiXG4gICAgICBbZWxkZXJPdmVybGF5T3JpZ2luXT1cInNlYXJjaFBhbmVsXCJcbiAgICAgIFtlbGRlck92ZXJsYXlUcmlnZ2VyXT1cInNlYXJjaFBhbmVsXCJcbiAgICAgIFtlbGRlck92ZXJsYXlUcmlnZ2VyVHlwZV09XCInZm9jdXMnXCJcbiAgICAgIFtlbGRlck92ZXJsYXlUcmlnZ2VyRW5hYmxlZF09XCJcbiAgICAgICAgYXV0b1BhbmVsICYmIGN1c3RvbVNlYXJjaFBhbmVsKCkgJiYgKHNlYXJjaElucHV0Py5zdGF0ZSQgfCBhc3luYyk/LnByaXN0aW5lXG4gICAgICBcIlxuICAgIC8+XG5cbiAgICBAaWYgKGhpbnQpIHtcbiAgICAgIDxtYXQtaGludD57eyBoaW50IH19PC9tYXQtaGludD5cbiAgICB9XG5cbiAgICA8ZGl2IGNsYXNzPVwibGF5b3V0LXJvd1wiIG1hdFN1ZmZpeD5cbiAgICAgIEBpZiAodG91Y2hlZFNlYXJjaElucHV0cyQgfCBhc3luYzsgYXMgdG91Y2hlZElucHV0cykge1xuICAgICAgICBAaWYgKHRvdWNoZWRJbnB1dHMubGVuZ3RoID4gMCkge1xuICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgIG1hdC1pY29uLWJ1dHRvblxuICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAoY2xpY2spPVwiY2xlYXJTZWFyY2goJGV2ZW50KVwiXG4gICAgICAgICAgICBuYW1lPVwiY2xlYXJcIlxuICAgICAgICAgICAgYXJpYS1sYWJlbD1cIkNsZWFyXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICA8bWF0LWljb24+Y2xvc2U8L21hdC1pY29uPlxuICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICB9XG5cbiAgICAgICAgQGlmIChjdXN0b21TZWFyY2hQYW5lbCgpKSB7XG4gICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgbWF0LWljb24tYnV0dG9uXG4gICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgIG5hbWU9XCJvcGVuUGFuZWxcIlxuICAgICAgICAgICAgW2VsZGVyT3ZlcmxheVRyaWdnZXJdPVwic2VhcmNoUGFuZWxcIlxuICAgICAgICAgICAgKGNsaWNrKT1cImJsdXJGb2N1cygkZXZlbnQpXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICA8bWF0LWljb25cbiAgICAgICAgICAgICAgW21hdEJhZGdlXT1cInRvdWNoZWRJbnB1dHMubGVuZ3RoXCJcbiAgICAgICAgICAgICAgbWF0QmFkZ2VTaXplPVwic21hbGxcIlxuICAgICAgICAgICAgICBbbWF0QmFkZ2VPdmVybGFwXT1cInRydWVcIlxuICAgICAgICAgICAgICBbbWF0QmFkZ2VIaWRkZW5dPVwidG91Y2hlZElucHV0cy5sZW5ndGggPT09IDBcIlxuICAgICAgICAgICAgICBtYXRCYWRnZUNvbG9yPVwiYWNjZW50XCJcbiAgICAgICAgICAgICAgW2NvbG9yXT1cInRvdWNoZWRJbnB1dHMubGVuZ3RoID4gMCA/ICdhY2NlbnQnIDogdW5kZWZpbmVkXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgZmlsdGVyX2xpc3RcbiAgICAgICAgICAgIDwvbWF0LWljb24+XG4gICAgICAgICAgPC9idXR0b24+XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICA8L2Rpdj5cbiAgPC9tYXQtZm9ybS1maWVsZD5cbjwvZGl2PlxuXG48IS0tIE92ZXJsYXkgUGFuZWwgZm9yIGFkdmFuY2VkIHNlYXJjaCAtLT5cbjxlbGRlci1vdmVybGF5ICNzZWFyY2hQYW5lbD1cImVsZGVyT3ZlcmxheVwiPlxuICA8ZWxkZXItZGlhbG9nLXBhbmVsIGNsYXNzPVwiZWxkZXItc2VhcmNoLXBhbmVsLWNvbnRhaW5lclwiPlxuICAgIDwhLS0gUHJvamVjdCB0aGUgdXNlcnMgY3VzdG9tIHNlYXJjaCBwYW5lbCBoZXJlIC0tPlxuICAgIDxuZy1jb250ZW50IHNlbGVjdD1cImVsZGVyLXNlYXJjaC1wYW5lbFwiPjwvbmctY29udGVudD5cblxuICAgIDxkaXYgY2xhc3M9XCJsYXlvdXQtcm93IHBsYWNlLWJldHdlZW4tY2VudGVyXCI+XG4gICAgICA8YnV0dG9uIG1hdC1yYWlzZWQtYnV0dG9uIHR5cGU9XCJidXR0b25cIiBuYW1lPVwiY2xlYXJcIiAoY2xpY2spPVwiY2xlYXJTZWFyY2goJGV2ZW50KVwiPlxuICAgICAgICB7eyAnY29udGV4dC5yZXNldCcgfCB0cmFuc2xhdGUgfX1cbiAgICAgIDwvYnV0dG9uPlxuXG4gICAgICA8YnV0dG9uXG4gICAgICAgIG1hdC1yYWlzZWQtYnV0dG9uXG4gICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICBuYW1lPVwib2tcIlxuICAgICAgICBjb2xvcj1cInByaW1hcnlcIlxuICAgICAgICAoY2xpY2spPVwic2VhcmNoUGFuZWwuY2xvc2VPdmVybGF5KClcIlxuICAgICAgPlxuICAgICAgICBPa1xuICAgICAgPC9idXR0b24+XG4gICAgPC9kaXY+XG4gIDwvZWxkZXItZGlhbG9nLXBhbmVsPlxuPC9lbGRlci1vdmVybGF5PlxuIl19
|
|
131
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItc2VhcmNoLWJveC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm1zL3NlYXJjaC9zZWFyY2gtYm94L2VsZGVyLXNlYXJjaC1ib3guY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9mb3Jtcy9zZWFyY2gvc2VhcmNoLWJveC9lbGRlci1zZWFyY2gtYm94LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFlBQVksRUFFWixNQUFNLEVBRU4sS0FBSyxFQUdMLFNBQVMsR0FFVixNQUFNLGVBQWUsQ0FBQTtBQUN0QixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sc0JBQXNCLENBQUE7QUFFcEQsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sZ0NBQWdDLENBQUE7QUFFMUUsT0FBTyxFQUFnQixxQkFBcUIsRUFBRSxNQUFNLHVCQUF1QixDQUFBO0FBQzNFLE9BQU8sRUFFTCxZQUFZLEVBQ1osU0FBUyxFQUNULE9BQU8sRUFDUCxTQUFTLEdBQ1YsTUFBTSw4QkFBOEIsQ0FBQTtBQUNyQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUE7QUFDckQsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0saUVBQWlFLENBQUE7QUFDM0csT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMkNBQTJDLENBQUE7QUFDakYsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHlCQUF5QixDQUFBO0FBQ2xELE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLGtEQUFrRCxDQUFBO0FBQzlGLE9B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UCxTQUFTLHFIQUNULFFBQVEsa05BQ1IscUJBQXFCLDhSQUNyQix5QkFBeUIsK0RBQ3pCLFNBQVMsNEtBQ1QsU0FBUyw2Q0FDVCxlQUFlOzsyRkFHTix1QkFBdUI7a0JBL0JuQyxTQUFTOytCQUNFLGtCQUFrQixZQUNsQixnQkFBZ0IsUUFJcEIsRUFBRSxLQUFLLEVBQUUsdUJBQXVCLEVBQUUsbUJBQ3ZCLHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsSUFBSSxXQUNQO3dCQUNQLElBQUk7d0JBQ0osWUFBWTt3QkFDWiw0QkFBNEI7d0JBQzVCLGFBQWE7d0JBQ2IsU0FBUzt3QkFDVCw0QkFBNEI7d0JBQzVCLE9BQU87d0JBQ1AsUUFBUTt3QkFDUixXQUFXO3dCQUNYLHlCQUF5Qjt3QkFDekIsMkJBQTJCO3dCQUMzQixPQUFPO3dCQUNQLFNBQVM7d0JBQ1QsUUFBUTt3QkFDUixxQkFBcUI7d0JBQ3JCLHlCQUF5Qjt3QkFDekIsU0FBUzt3QkFDVCxTQUFTO3dCQUNULGVBQWU7cUJBQ2hCO2dHQXFCTSxTQUFTO3NCQURmLEtBQUs7Z0JBSUMsSUFBSTtzQkFEVixLQUFLO2dCQUlDLFFBQVE7c0JBRGQsS0FBSztnQkFJQyxXQUFXO3NCQURqQixLQUFLO2dCQUlDLEtBQUs7c0JBRFgsS0FBSztnQkFJQyxJQUFJO3NCQURWLEtBQUs7Z0JBTUMsWUFBWTtzQkFEbEIsS0FBSztnQkFJQyxVQUFVO3NCQURoQixLQUFLO2dCQXFDSyxLQUFLO3NCQURmLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlckNvbnRlbnRJbml0LFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBjb250ZW50Q2hpbGQsXG4gIENvbnRlbnRDaGlsZCxcbiAgZWZmZWN0LFxuICBFbGVtZW50UmVmLFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxuICBzaWduYWwsXG4gIHZpZXdDaGlsZCxcbiAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgTG9nZ2VyRmFjdG9yeSB9IGZyb20gJ0BlbGRlcmJ5dGUvdHMtbG9nZ2VyJ1xuaW1wb3J0IHsgRWxkZXJTZWFyY2hDb250ZXh0RGlyZWN0aXZlIH0gZnJvbSAnLi4vZWxkZXItc2VhcmNoLWNvbnRleHQuZGlyZWN0aXZlJ1xuaW1wb3J0IHsgRWxkZXJTZWFyY2hQYW5lbENvbXBvbmVudCB9IGZyb20gJy4vZWxkZXItc2VhcmNoLXBhbmVsLmNvbXBvbmVudCdcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSwgU3ViamVjdCB9IGZyb20gJ3J4anMnXG5pbXBvcnQgeyBCb29sZWFuSW5wdXQsIGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2VyY2lvbidcbmltcG9ydCB7XG4gIE1hdEZvcm1GaWVsZEFwcGVhcmFuY2UsXG4gIE1hdEZvcm1GaWVsZCxcbiAgTWF0UHJlZml4LFxuICBNYXRIaW50LFxuICBNYXRTdWZmaXgsXG59IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2Zvcm0tZmllbGQnXG5pbXBvcnQgeyBUcmFuc2xhdGVNb2R1bGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJ1xuaW1wb3J0IHsgRWxkZXJEaWFsb2dQYW5lbENvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL3BhbmVscy9lbGRlci1kaWFsb2ctcGFuZWwvZWxkZXItZGlhbG9nLXBhbmVsLmNvbXBvbmVudCdcbmltcG9ydCB7IEVsZGVyT3ZlcmxheUNvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL292ZXJsYXlzL2VsZGVyLW92ZXJsYXkuY29tcG9uZW50J1xuaW1wb3J0IHsgTWF0QmFkZ2UgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9iYWRnZSdcbmltcG9ydCB7IEVsZGVyT3ZlcmxheU9yaWdpbkRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uLy4uL292ZXJsYXlzL2VsZGVyLW92ZXJsYXktb3JpZ2luLmRpcmVjdGl2ZSdcbmltcG9ydCB7IEVsZGVyU2VhcmNoSW5wdXREaXJlY3RpdmUgfSBmcm9tICcuLi9lbGRlci1zZWFyY2gtaW5wdXQuZGlyZWN0aXZlJ1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3JtcydcbmltcG9ydCB7IE1hdElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnXG5pbXBvcnQgeyBNYXRJY29uIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbidcbmltcG9ydCB7IEVsZGVyT3ZlcmxheVRyaWdnZXJEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi8uLi9vdmVybGF5cy9lbGRlci1vdmVybGF5LXRyaWdnZXIuZGlyZWN0aXZlJ1xuaW1wb3J0IHsgTWF0SWNvbkJ1dHRvbiwgTWF0QnV0dG9uIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJ1xuaW1wb3J0IHsgRWxkZXJGb3JtRmllbGREZW5zZURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZXMvZWxkZXItZm9ybS1maWVsZC1kZW5zZS5kaXJlY3RpdmUnXG5pbXBvcnQgeyBOZ0lmLCBBc3luY1BpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nXG5pbXBvcnQgeyBTZWFyY2hJbnB1dFN0YXRlIH0gZnJvbSAnLi4vZG9tYWluL2lucHV0L3NlYXJjaC1pbnB1dC1zdGF0ZSdcbmltcG9ydCB7IE92ZXJsYXlSZWYgfSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSdcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZWxkZXItc2VhcmNoLWJveCcsXG4gIGV4cG9ydEFzOiAnZWxkZXJTZWFyY2hCb3gnLFxuICB0ZW1wbGF0ZVVybDogJy4vZWxkZXItc2VhcmNoLWJveC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2VsZGVyLXNlYXJjaC1ib3guY29tcG9uZW50LnNjc3MnXSxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1ob3N0LW1ldGFkYXRhLXByb3BlcnR5XG4gIGhvc3Q6IHsgY2xhc3M6ICdlbGRlci1mb3JtLWZpZWxkLWhvc3QnIH0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgTmdJZixcbiAgICBNYXRGb3JtRmllbGQsXG4gICAgRWxkZXJGb3JtRmllbGREZW5zZURpcmVjdGl2ZSxcbiAgICBNYXRJY29uQnV0dG9uLFxuICAgIE1hdFByZWZpeCxcbiAgICBFbGRlck92ZXJsYXlUcmlnZ2VyRGlyZWN0aXZlLFxuICAgIE1hdEljb24sXG4gICAgTWF0SW5wdXQsXG4gICAgRm9ybXNNb2R1bGUsXG4gICAgRWxkZXJTZWFyY2hJbnB1dERpcmVjdGl2ZSxcbiAgICBFbGRlck92ZXJsYXlPcmlnaW5EaXJlY3RpdmUsXG4gICAgTWF0SGludCxcbiAgICBNYXRTdWZmaXgsXG4gICAgTWF0QmFkZ2UsXG4gICAgRWxkZXJPdmVybGF5Q29tcG9uZW50LFxuICAgIEVsZGVyRGlhbG9nUGFuZWxDb21wb25lbnQsXG4gICAgTWF0QnV0dG9uLFxuICAgIEFzeW5jUGlwZSxcbiAgICBUcmFuc2xhdGVNb2R1bGUsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEVsZGVyU2VhcmNoQm94Q29tcG9uZW50IHtcbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIEZpZWxkcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSByZWFkb25seSBsb2cgPSBMb2dnZXJGYWN0b3J5LmdldExvZ2dlcih0aGlzLmNvbnN0cnVjdG9yLm5hbWUpXG5cbiAgLy8gVGhlIHNlYXJjaCBleHByZXNzaW9uIGlucHV0IEVsZW1lbnRcbiAgcHVibGljIHNlYXJjaCA9IHZpZXdDaGlsZC5yZXF1aXJlZDxFbGVtZW50UmVmPEhUTUxJbnB1dEVsZW1lbnQ+Pignc2VhcmNoJylcbiAgcHVibGljIHJlYWRvbmx5IG92ZXJsYXlDb21wb25lbnQgPSB2aWV3Q2hpbGQucmVxdWlyZWQoRWxkZXJPdmVybGF5Q29tcG9uZW50KVxuXG4gIHB1YmxpYyByZWFkb25seSBjdXN0b21TZWFyY2hQYW5lbCA9IGNvbnRlbnRDaGlsZChFbGRlclNlYXJjaFBhbmVsQ29tcG9uZW50KVxuXG4gIC8qKlxuICAgKiBEaXNwbGF5IHRoZSBzZWFyY2ggcGFuZWwgaW1tZWRpYXRlbHkgd2hlbiB0aGUgdXNlciBlbnRlcnMgdGhlIHNlYXJjaCBib3guXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgYXV0b1BhbmVsID0gdHJ1ZVxuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBuYW1lID0gJ3NlYXJjaEV4cHJlc3Npb24nXG5cbiAgQElucHV0KClcbiAgcHVibGljIHF1ZXJ5S2V5ID0gJ3F1ZXJ5J1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBwbGFjZWhvbGRlcjogc3RyaW5nXG5cbiAgQElucHV0KClcbiAgcHVibGljIGxhYmVsOiBzdHJpbmdcblxuICBASW5wdXQoKVxuICBwdWJsaWMgaGludDogc3RyaW5nXG5cbiAgcHJpdmF0ZSBfZGVuc2UgPSBmYWxzZVxuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBhdXRvY29tcGxldGUgPSAnb2ZmJ1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBhcHBlYXJhbmNlOiBNYXRGb3JtRmllbGRBcHBlYXJhbmNlXG5cbiAgcHVibGljIHJlYWRvbmx5IHRvdWNoZWRTZWFyY2hJbnB1dHMkOiBPYnNlcnZhYmxlPFNlYXJjaElucHV0U3RhdGVbXT5cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogQ29uc3RydWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgcmVhZG9ubHkgc2VhcmNoQ29udGV4dERpcmVjdGl2ZTogRWxkZXJTZWFyY2hDb250ZXh0RGlyZWN0aXZlKSB7XG4gICAgdGhpcy50b3VjaGVkU2VhcmNoSW5wdXRzJCA9IHNlYXJjaENvbnRleHREaXJlY3RpdmUudG91Y2hlZFNlYXJjaElucHV0cyRcbiAgICAgIC5waXBlXG4gICAgICAvLyB0YXAoYXR0cnMgPT4gdGhpcy5sb2dnZXIuZXJyb3IoJ0F0dHJzJywgYXR0cnMpKVxuICAgICAgKClcbiAgICBlZmZlY3QoXG4gICAgICAoKSA9PiB7XG4gICAgICAgIGNvbnN0IGN1c3RvbVNlYXJjaFBhbmVsID0gdGhpcy5jdXN0b21TZWFyY2hQYW5lbCgpXG4gICAgICAgIGNvbnN0IG92ZXJsYXkgPSB0aGlzLm92ZXJsYXlDb21wb25lbnQoKVxuICAgICAgICBpZiAoY3VzdG9tU2VhcmNoUGFuZWwpIHtcbiAgICAgICAgICBjdXN0b21TZWFyY2hQYW5lbC5vdmVybGF5LnNldChvdmVybGF5KVxuICAgICAgICB9XG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBhbGxvd1NpZ25hbFdyaXRlczogdHJ1ZSxcbiAgICAgIH1cbiAgICApXG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJvcGVydGllcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGRlbnNlKHZhbHVlOiBCb29sZWFuSW5wdXQpIHtcbiAgICB0aGlzLl9kZW5zZSA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSlcbiAgfVxuXG4gIHB1YmxpYyBnZXQgZGVuc2UoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2RlbnNlXG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHVibGljIEFQSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgYmx1ckZvY3VzKGV2ZW50OiBhbnkpOiB2b2lkIHtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMuc2VhcmNoKCkubmF0aXZlRWxlbWVudC5ibHVyKCksIDApXG4gIH1cblxuICAvKipcbiAgICogT2NjdXJzIHdoZW4gdGhlIHVzZXIgY2xpY2tzIHRoZSBjbGVhciBzZWFyY2ggYnV0dG9uXG4gICAqL1xuICBwdWJsaWMgY2xlYXJTZWFyY2goZXZlbnQ6IGFueSk6IHZvaWQge1xuICAgIHRoaXMuc2VhcmNoQ29udGV4dERpcmVjdGl2ZS5yZXNldCgpXG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJpdmF0ZSBtZXRob2RzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbn1cbiIsIjxkaXYgY2xhc3M9XCJsYXlvdXQtcm93IHBsYWNlLXN0cmV0Y2gtY2VudGVyIGZ1bGwgZmxleFwiPlxuICA8bWF0LWZvcm0tZmllbGRcbiAgICBbYXBwZWFyYW5jZV09XCJhcHBlYXJhbmNlXCJcbiAgICBjbGFzcz1cImVsZGVyLXNlYXJjaC1ib3gtZmllbGQgZmxleC1hdXRvXCJcbiAgICBzdWJzY3JpcHRTaXppbmc9XCJkeW5hbWljXCJcbiAgICBbZWxkZXJEZW5zZV09XCJkZW5zZVwiXG4gID5cbiAgICA8YnV0dG9uXG4gICAgICBtYXRQcmVmaXhcbiAgICAgIG1hdC1pY29uLWJ1dHRvblxuICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICBbZWxkZXJPdmVybGF5VHJpZ2dlcl09XCJzZWFyY2hQYW5lbFwiXG4gICAgICAoY2xpY2spPVwiYmx1ckZvY3VzKCRldmVudClcIlxuICAgID5cbiAgICAgIDxtYXQtaWNvbj5zZWFyY2g8L21hdC1pY29uPlxuICAgIDwvYnV0dG9uPlxuXG4gICAgPGlucHV0XG4gICAgICBtYXRJbnB1dFxuICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgW25hbWVdPVwibmFtZVwiXG4gICAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxuICAgICAgI3NlYXJjaFxuICAgICAgY2RrRm9jdXNJbml0aWFsXG4gICAgICBuZ01vZGVsXG4gICAgICBlbGRlclNlYXJjaElucHV0XG4gICAgICBbZWxkZXJTZWFyY2hJbnB1dEtleV09XCJxdWVyeUtleVwiXG4gICAgICAjc2VhcmNoSW5wdXQ9XCJlbGRlclNlYXJjaElucHV0XCJcbiAgICAgIFthdXRvY29tcGxldGVdPVwiYXV0b1BhbmVsICYmIGN1c3RvbVNlYXJjaFBhbmVsKCkgPyAnb2ZmJyA6IGF1dG9jb21wbGV0ZVwiXG4gICAgICBbZWxkZXJPdmVybGF5T3JpZ2luXT1cInNlYXJjaFBhbmVsXCJcbiAgICAgIFtlbGRlck92ZXJsYXlUcmlnZ2VyXT1cInNlYXJjaFBhbmVsXCJcbiAgICAgIFtlbGRlck92ZXJsYXlUcmlnZ2VyVHlwZV09XCInZm9jdXMnXCJcbiAgICAgIFtlbGRlck92ZXJsYXlUcmlnZ2VyRW5hYmxlZF09XCJcbiAgICAgICAgYXV0b1BhbmVsICYmIGN1c3RvbVNlYXJjaFBhbmVsKCkgJiYgKHNlYXJjaElucHV0Py5zdGF0ZSQgfCBhc3luYyk/LnByaXN0aW5lXG4gICAgICBcIlxuICAgIC8+XG5cbiAgICBAaWYgKGhpbnQpIHtcbiAgICAgIDxtYXQtaGludD57eyBoaW50IH19PC9tYXQtaGludD5cbiAgICB9XG5cbiAgICA8ZGl2IGNsYXNzPVwibGF5b3V0LXJvd1wiIG1hdFN1ZmZpeD5cbiAgICAgIEBpZiAodG91Y2hlZFNlYXJjaElucHV0cyQgfCBhc3luYzsgYXMgdG91Y2hlZElucHV0cykge1xuICAgICAgICBAaWYgKHRvdWNoZWRJbnB1dHMubGVuZ3RoID4gMCkge1xuICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgIG1hdC1pY29uLWJ1dHRvblxuICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAoY2xpY2spPVwiY2xlYXJTZWFyY2goJGV2ZW50KVwiXG4gICAgICAgICAgICBuYW1lPVwiY2xlYXJcIlxuICAgICAgICAgICAgYXJpYS1sYWJlbD1cIkNsZWFyXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICA8bWF0LWljb24+Y2xvc2U8L21hdC1pY29uPlxuICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICB9XG5cbiAgICAgICAgQGlmIChjdXN0b21TZWFyY2hQYW5lbCgpKSB7XG4gICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgbWF0LWljb24tYnV0dG9uXG4gICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgIG5hbWU9XCJvcGVuUGFuZWxcIlxuICAgICAgICAgICAgW2VsZGVyT3ZlcmxheVRyaWdnZXJdPVwic2VhcmNoUGFuZWxcIlxuICAgICAgICAgICAgKGNsaWNrKT1cImJsdXJGb2N1cygkZXZlbnQpXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICA8bWF0LWljb25cbiAgICAgICAgICAgICAgW21hdEJhZGdlXT1cInRvdWNoZWRJbnB1dHMubGVuZ3RoXCJcbiAgICAgICAgICAgICAgbWF0QmFkZ2VTaXplPVwic21hbGxcIlxuICAgICAgICAgICAgICBbbWF0QmFkZ2VPdmVybGFwXT1cInRydWVcIlxuICAgICAgICAgICAgICBbbWF0QmFkZ2VIaWRkZW5dPVwidG91Y2hlZElucHV0cy5sZW5ndGggPT09IDBcIlxuICAgICAgICAgICAgICBtYXRCYWRnZUNvbG9yPVwiYWNjZW50XCJcbiAgICAgICAgICAgICAgW2NvbG9yXT1cInRvdWNoZWRJbnB1dHMubGVuZ3RoID4gMCA/ICdhY2NlbnQnIDogdW5kZWZpbmVkXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgZmlsdGVyX2xpc3RcbiAgICAgICAgICAgIDwvbWF0LWljb24+XG4gICAgICAgICAgPC9idXR0b24+XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICA8L2Rpdj5cbiAgPC9tYXQtZm9ybS1maWVsZD5cbjwvZGl2PlxuXG48IS0tIE92ZXJsYXkgUGFuZWwgZm9yIGFkdmFuY2VkIHNlYXJjaCAtLT5cbjxlbGRlci1vdmVybGF5ICNzZWFyY2hQYW5lbD1cImVsZGVyT3ZlcmxheVwiPlxuICA8ZWxkZXItZGlhbG9nLXBhbmVsIGNsYXNzPVwiZWxkZXItc2VhcmNoLXBhbmVsLWNvbnRhaW5lclwiPlxuICAgIDwhLS0gUHJvamVjdCB0aGUgdXNlcnMgY3VzdG9tIHNlYXJjaCBwYW5lbCBoZXJlIC0tPlxuICAgIDxuZy1jb250ZW50IHNlbGVjdD1cImVsZGVyLXNlYXJjaC1wYW5lbFwiPjwvbmctY29udGVudD5cblxuICAgIDxkaXYgY2xhc3M9XCJsYXlvdXQtcm93IHBsYWNlLWJldHdlZW4tY2VudGVyXCI+XG4gICAgICA8YnV0dG9uIG1hdC1mbGF0LWJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgbmFtZT1cImNsZWFyXCIgKGNsaWNrKT1cImNsZWFyU2VhcmNoKCRldmVudClcIj5cbiAgICAgICAge3sgJ2NvbnRleHQucmVzZXQnIHwgdHJhbnNsYXRlIH19XG4gICAgICA8L2J1dHRvbj5cblxuICAgICAgPGJ1dHRvblxuICAgICAgICBtYXQtZmxhdC1idXR0b25cbiAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgIG5hbWU9XCJva1wiXG4gICAgICAgIGNvbG9yPVwicHJpbWFyeVwiXG4gICAgICAgIChjbGljayk9XCJzZWFyY2hQYW5lbC5jbG9zZU92ZXJsYXkoKVwiXG4gICAgICA+XG4gICAgICAgIE9rXG4gICAgICA8L2J1dHRvbj5cbiAgICA8L2Rpdj5cbiAgPC9lbGRlci1kaWFsb2ctcGFuZWw+XG48L2VsZGVyLW92ZXJsYXk+XG4iXX0=
|
|
@@ -71,11 +71,11 @@ export class ElderProgressBarComponent {
|
|
|
71
71
|
}
|
|
72
72
|
}
|
|
73
73
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: ElderProgressBarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
74
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.5", type: ElderProgressBarComponent, isStandalone: true, selector: "elder-progress-bar", inputs: { minHeight: "minHeight", barColor: "barColor", barBackgroundColor: "barBackgroundColor", value: "value", bars: "bars" }, ngImport: i0, template: "<div\n *ngIf=\"bars$ | async as bars\"\n class=\"layout-row elder-flex-control\"\n style=\"overflow: hidden\"\n [style.background]=\"barBackgroundColor\"\n [style.min-height.px]=\"minHeight\"\n [style.border-radius.px]=\"2\"\n>\n <div *ngIf=\"bars.length === 0\" [style.font-size.px]=\"minHeight\"></div>\n\n <span\n class=\"elder-progress-content\"\n *ngFor=\"let bar of bars\"\n [style.max-width.%]=\"bar.widthPercent\"\n [style.background]=\"bar.color\"\n [style.min-height]=\"minHeight\"\n [style.font-size.px]=\"minHeight\"\n >\n \n </span>\n</div>\n", styles: [".elder-progress-content{flex:1 1 100
|
|
74
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.5", type: ElderProgressBarComponent, isStandalone: true, selector: "elder-progress-bar", inputs: { minHeight: "minHeight", barColor: "barColor", barBackgroundColor: "barBackgroundColor", value: "value", bars: "bars" }, ngImport: i0, template: "<div\n *ngIf=\"bars$ | async as bars\"\n class=\"layout-row elder-flex-control\"\n style=\"overflow: hidden\"\n [style.background]=\"barBackgroundColor\"\n [style.min-height.px]=\"minHeight\"\n [style.border-radius.px]=\"2\"\n>\n <div *ngIf=\"bars.length === 0\" [style.font-size.px]=\"minHeight\"></div>\n\n <span\n class=\"elder-progress-content\"\n *ngFor=\"let bar of bars\"\n [style.max-width.%]=\"bar.widthPercent\"\n [style.background]=\"bar.color\"\n [style.min-height]=\"minHeight\"\n [style.font-size.px]=\"minHeight\"\n >\n \n </span>\n</div>\n", styles: [".elder-progress-content{flex:1 1 100%}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
75
75
|
}
|
|
76
76
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: ElderProgressBarComponent, decorators: [{
|
|
77
77
|
type: Component,
|
|
78
|
-
args: [{ selector: 'elder-progress-bar', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [NgIf, NgFor, AsyncPipe], template: "<div\n *ngIf=\"bars$ | async as bars\"\n class=\"layout-row elder-flex-control\"\n style=\"overflow: hidden\"\n [style.background]=\"barBackgroundColor\"\n [style.min-height.px]=\"minHeight\"\n [style.border-radius.px]=\"2\"\n>\n <div *ngIf=\"bars.length === 0\" [style.font-size.px]=\"minHeight\"></div>\n\n <span\n class=\"elder-progress-content\"\n *ngFor=\"let bar of bars\"\n [style.max-width.%]=\"bar.widthPercent\"\n [style.background]=\"bar.color\"\n [style.min-height]=\"minHeight\"\n [style.font-size.px]=\"minHeight\"\n >\n \n </span>\n</div>\n", styles: [".elder-progress-content{flex:1 1 100
|
|
78
|
+
args: [{ selector: 'elder-progress-bar', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [NgIf, NgFor, AsyncPipe], template: "<div\n *ngIf=\"bars$ | async as bars\"\n class=\"layout-row elder-flex-control\"\n style=\"overflow: hidden\"\n [style.background]=\"barBackgroundColor\"\n [style.min-height.px]=\"minHeight\"\n [style.border-radius.px]=\"2\"\n>\n <div *ngIf=\"bars.length === 0\" [style.font-size.px]=\"minHeight\"></div>\n\n <span\n class=\"elder-progress-content\"\n *ngFor=\"let bar of bars\"\n [style.max-width.%]=\"bar.widthPercent\"\n [style.background]=\"bar.color\"\n [style.min-height]=\"minHeight\"\n [style.font-size.px]=\"minHeight\"\n >\n \n </span>\n</div>\n", styles: [".elder-progress-content{flex:1 1 100%}\n"] }]
|
|
79
79
|
}], ctorParameters: () => [], propDecorators: { minHeight: [{
|
|
80
80
|
type: Input
|
|
81
81
|
}], barColor: [{
|
|
@@ -87,4 +87,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImpor
|
|
|
87
87
|
}], bars: [{
|
|
88
88
|
type: Input
|
|
89
89
|
}] } });
|
|
90
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
90
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItcHJvZ3Jlc3MtYmFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvZ3JhcGgvZWxkZXItcHJvZ3Jlc3MtYmFyL2VsZGVyLXByb2dyZXNzLWJhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL2dyYXBoL2VsZGVyLXByb2dyZXNzLWJhci9lbGRlci1wcm9ncmVzcy1iYXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSx1QkFBdUIsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFDekUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLE1BQU0sQ0FBQTtBQUN0QyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sV0FBVyxDQUFBO0FBQ2xDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQTtBQUNwRCxPQUFPLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTs7QUFVeEQsTUFBTSxPQUFPLHlCQUF5QjtJQXdCcEM7Ozs7Z0ZBSTRFO0lBRTVFO1FBN0JBOzs7O29GQUk0RTtRQUUzRCxRQUFHLEdBQUcsYUFBYSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFBO1FBRzlELGNBQVMsR0FBRyxDQUFDLENBQUE7UUFFcEI7OztXQUdHO1FBRUksYUFBUSxHQUFHLFNBQVMsQ0FBQTtRQUdwQix1QkFBa0IsR0FBRyxXQUFXLENBQUE7UUFFdkIsVUFBSyxHQUFHLElBQUksZUFBZSxDQUFXLEVBQUUsQ0FBQyxDQUFBO0lBUTFDLENBQUM7SUFFaEI7Ozs7Z0ZBSTRFO0lBRTVFLElBQ1csS0FBSyxDQUFDLEtBQWE7UUFDNUIsSUFBSSxLQUFLLElBQUksSUFBSSxFQUFFLENBQUM7WUFDbEIsSUFBSSxDQUFDLGlCQUFpQixDQUFDLEtBQUssQ0FBQyxDQUFBO1FBQy9CLENBQUM7SUFDSCxDQUFDO0lBRUQsSUFDVyxJQUFJLENBQUMsSUFBYztRQUM1QixJQUFJLElBQUksRUFBRSxDQUFDO1lBQ1QsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLFlBQVksR0FBRyxDQUFDLENBQUMsQ0FBQTtZQUN4RCxJQUFJLENBQUMseUJBQXlCLENBQUMsU0FBUyxDQUFDLENBQUE7WUFDekMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUE7UUFDNUIsQ0FBQztJQUNILENBQUM7SUFFRCxJQUFXLElBQUk7UUFDYixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUE7SUFDOUIsQ0FBQztJQUVEOzs7O2dGQUk0RTtJQUU1RTs7OztnRkFJNEU7SUFFcEUsaUJBQWlCLENBQUMsS0FBYTtRQUNyQyxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxNQUFNLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFBO1FBQ3JGLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxZQUFZLEdBQUcsS0FBSyxDQUFBO1FBQzVCLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFBO0lBQ2xCLENBQUM7SUFFTyx5QkFBeUIsQ0FBQyxJQUFjO1FBQzlDLElBQUksSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUNwQixNQUFNLGVBQWUsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLE1BQU0sRUFBRSxFQUFFLENBQUMsR0FBRyxHQUFHLE1BQU0sQ0FBQyxDQUFBO1lBQzdGLElBQUksZUFBZSxHQUFHLEdBQUcsRUFBRSxDQUFDO2dCQUMxQixJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxrRUFBa0UsQ0FBQyxDQUFBO2dCQUNqRixJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxZQUFZLEdBQUcsQ0FBQyxHQUFHLEdBQUcsZUFBZSxDQUFDLEdBQUcsQ0FBQyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUE7WUFDbEYsQ0FBQztRQUNILENBQUM7SUFDSCxDQUFDOzhHQXBGVSx5QkFBeUI7a0dBQXpCLHlCQUF5QixnTkNkdEMsa2xCQXFCQSxrR0RUWSxJQUFJLDZGQUFFLEtBQUssOEdBQUUsU0FBUzs7MkZBRXJCLHlCQUF5QjtrQkFSckMsU0FBUzsrQkFDRSxvQkFBb0IsbUJBR2IsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJLFdBQ1AsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLFNBQVMsQ0FBQzt3REFZMUIsU0FBUztzQkFEZixLQUFLO2dCQVFDLFFBQVE7c0JBRGQsS0FBSztnQkFJQyxrQkFBa0I7c0JBRHhCLEtBQUs7Z0JBb0JLLEtBQUs7c0JBRGYsS0FBSztnQkFRSyxJQUFJO3NCQURkLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QgfSBmcm9tICdyeGpzJ1xuaW1wb3J0IHsgU3ViQmFyIH0gZnJvbSAnLi9zdWItYmFyJ1xuaW1wb3J0IHsgTG9nZ2VyRmFjdG9yeSB9IGZyb20gJ0BlbGRlcmJ5dGUvdHMtbG9nZ2VyJ1xuaW1wb3J0IHsgTmdJZiwgTmdGb3IsIEFzeW5jUGlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbidcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZWxkZXItcHJvZ3Jlc3MtYmFyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2VsZGVyLXByb2dyZXNzLWJhci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2VsZGVyLXByb2dyZXNzLWJhci5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW05nSWYsIE5nRm9yLCBBc3luY1BpcGVdLFxufSlcbmV4cG9ydCBjbGFzcyBFbGRlclByb2dyZXNzQmFyQ29tcG9uZW50IHtcbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIEZpZWxkcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSByZWFkb25seSBsb2cgPSBMb2dnZXJGYWN0b3J5LmdldExvZ2dlcih0aGlzLmNvbnN0cnVjdG9yLm5hbWUpXG5cbiAgQElucHV0KClcbiAgcHVibGljIG1pbkhlaWdodCA9IDZcblxuICAvKipcbiAgICogVGhpcyBjb2xvciBpcyB1c2VkIHdoZW4gdGhlIGJhciBpcyBzZXQgdmlhIHRoZSAndmFsdWUnIGlucHV0LlxuICAgKiBJdCBkb2VzIG5vdCBnZXQgdXNlZCB3aGVuIG11bHRpcGxlIHN1Yi1iYXJzIGFyZSBzZXQgZGlyZWN0bHkuXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgYmFyQ29sb3IgPSAnIzI4YTc0NSdcblxuICBASW5wdXQoKVxuICBwdWJsaWMgYmFyQmFja2dyb3VuZENvbG9yID0gJ2xpZ2h0Z3JheSdcblxuICBwdWJsaWMgcmVhZG9ubHkgYmFycyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFN1YkJhcltdPihbXSlcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogQ29uc3RydWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBjb25zdHJ1Y3RvcigpIHt9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByb3BlcnRpZXMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgQElucHV0KClcbiAgcHVibGljIHNldCB2YWx1ZSh2YWx1ZTogbnVtYmVyKSB7XG4gICAgaWYgKHZhbHVlICE9IG51bGwpIHtcbiAgICAgIHRoaXMuc2V0U2luZ2xlQmFyVmFsdWUodmFsdWUpXG4gICAgfVxuICB9XG5cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBiYXJzKGJhcnM6IFN1YkJhcltdKSB7XG4gICAgaWYgKGJhcnMpIHtcbiAgICAgIGNvbnN0IHZhbGlkQmFycyA9IGJhcnMuZmlsdGVyKChiKSA9PiBiLndpZHRoUGVyY2VudCA+IDApXG4gICAgICB0aGlzLmNoZWNrQW5kQWRqdXN0UGVyY2VudGFnZXModmFsaWRCYXJzKVxuICAgICAgdGhpcy5iYXJzJC5uZXh0KHZhbGlkQmFycylcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZ2V0IGJhcnMoKTogU3ViQmFyW10ge1xuICAgIHJldHVybiB0aGlzLmJhcnMkLmdldFZhbHVlKClcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQdWJsaWMgQVBJICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQcml2YXRlIG1ldGhvZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByaXZhdGUgc2V0U2luZ2xlQmFyVmFsdWUodmFsdWU6IG51bWJlcik6IHZvaWQge1xuICAgIGNvbnN0IGJhcnMgPSB0aGlzLmJhcnMubGVuZ3RoID09PSAxID8gWy4uLnRoaXMuYmFyc10gOiBbbmV3IFN1YkJhcigwLCB0aGlzLmJhckNvbG9yKV1cbiAgICBiYXJzWzBdLndpZHRoUGVyY2VudCA9IHZhbHVlXG4gICAgdGhpcy5iYXJzID0gYmFyc1xuICB9XG5cbiAgcHJpdmF0ZSBjaGVja0FuZEFkanVzdFBlcmNlbnRhZ2VzKGJhcnM6IFN1YkJhcltdKTogdm9pZCB7XG4gICAgaWYgKGJhcnMubGVuZ3RoID4gMCkge1xuICAgICAgY29uc3QgdG90YWxQZXJjZW50YWdlID0gYmFycy5tYXAoKGIpID0+IGIud2lkdGhQZXJjZW50KS5yZWR1Y2UoKHN1bSwgbnVtYmVyKSA9PiBzdW0gKyBudW1iZXIpXG4gICAgICBpZiAodG90YWxQZXJjZW50YWdlID4gMTAwKSB7XG4gICAgICAgIHRoaXMubG9nLndhcm4oJ1RvdGFsIGJhcnMgd2lkdGggYXJlIGdyZWF0ZXIgdGhhbiAxMDAlLCBhZGp1c3RpbmcgcGVyY2VudGFnZXMuLi4nKVxuICAgICAgICBiYXJzLmZvckVhY2goKGIpID0+IChiLndpZHRoUGVyY2VudCA9ICgxMDAgLyB0b3RhbFBlcmNlbnRhZ2UpICogYi53aWR0aFBlcmNlbnQpKVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiPGRpdlxuICAqbmdJZj1cImJhcnMkIHwgYXN5bmMgYXMgYmFyc1wiXG4gIGNsYXNzPVwibGF5b3V0LXJvdyBlbGRlci1mbGV4LWNvbnRyb2xcIlxuICBzdHlsZT1cIm92ZXJmbG93OiBoaWRkZW5cIlxuICBbc3R5bGUuYmFja2dyb3VuZF09XCJiYXJCYWNrZ3JvdW5kQ29sb3JcIlxuICBbc3R5bGUubWluLWhlaWdodC5weF09XCJtaW5IZWlnaHRcIlxuICBbc3R5bGUuYm9yZGVyLXJhZGl1cy5weF09XCIyXCJcbj5cbiAgPGRpdiAqbmdJZj1cImJhcnMubGVuZ3RoID09PSAwXCIgW3N0eWxlLmZvbnQtc2l6ZS5weF09XCJtaW5IZWlnaHRcIj48L2Rpdj5cblxuICA8c3BhblxuICAgIGNsYXNzPVwiZWxkZXItcHJvZ3Jlc3MtY29udGVudFwiXG4gICAgKm5nRm9yPVwibGV0IGJhciBvZiBiYXJzXCJcbiAgICBbc3R5bGUubWF4LXdpZHRoLiVdPVwiYmFyLndpZHRoUGVyY2VudFwiXG4gICAgW3N0eWxlLmJhY2tncm91bmRdPVwiYmFyLmNvbG9yXCJcbiAgICBbc3R5bGUubWluLWhlaWdodF09XCJtaW5IZWlnaHRcIlxuICAgIFtzdHlsZS5mb250LXNpemUucHhdPVwibWluSGVpZ2h0XCJcbiAgPlxuICAgICZuYnNwO1xuICA8L3NwYW4+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -16,14 +16,14 @@ export class ElderHeaderComponent {
|
|
|
16
16
|
**************************************************************************/
|
|
17
17
|
ngOnInit() { }
|
|
18
18
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: ElderHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
19
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.5", type: ElderHeaderComponent, isStandalone: true, selector: "elder-header", inputs: { header: "header", subheader: "subheader" }, ngImport: i0, template: "<div class=\"layout-col
|
|
19
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.5", type: ElderHeaderComponent, isStandalone: true, selector: "elder-header", inputs: { header: "header", subheader: "subheader" }, ngImport: i0, template: "<div class=\"layout-col\">\n <h2>{{ header ? header : ('-' | translate) }}</h2>\n <span class=\"mat-caption\">{{ subheader ? subheader : ('-' | translate) }}</span>\n</div>\n", styles: ["h2{margin-top:0;font:var(--md-sys-typescale-title-large);letter-spacing:var(--md-sys-typescale-title-large-tracking)}\n"], dependencies: [{ kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }] }); }
|
|
20
20
|
}
|
|
21
21
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: ElderHeaderComponent, decorators: [{
|
|
22
22
|
type: Component,
|
|
23
|
-
args: [{ selector: 'elder-header', standalone: true, imports: [TranslateModule], template: "<div class=\"layout-col
|
|
23
|
+
args: [{ selector: 'elder-header', standalone: true, imports: [TranslateModule], template: "<div class=\"layout-col\">\n <h2>{{ header ? header : ('-' | translate) }}</h2>\n <span class=\"mat-caption\">{{ subheader ? subheader : ('-' | translate) }}</span>\n</div>\n", styles: ["h2{margin-top:0;font:var(--md-sys-typescale-title-large);letter-spacing:var(--md-sys-typescale-title-large-tracking)}\n"] }]
|
|
24
24
|
}], ctorParameters: () => [], propDecorators: { header: [{
|
|
25
25
|
type: Input
|
|
26
26
|
}], subheader: [{
|
|
27
27
|
type: Input
|
|
28
28
|
}] } });
|
|
29
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
29
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItaGVhZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvaGVhZGVycy9lbGRlci1oZWFkZXIvZWxkZXItaGVhZGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvaGVhZGVycy9lbGRlci1oZWFkZXIvZWxkZXItaGVhZGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFBO0FBQ3hELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQTs7O0FBU3JELE1BQU0sT0FBTyxvQkFBb0I7SUFhL0I7Ozs7Z0ZBSTRFO0lBRTVFLGdCQUFlLENBQUM7SUFFaEI7Ozs7Z0ZBSTRFO0lBRXJFLFFBQVEsS0FBVSxDQUFDOzhHQTNCZixvQkFBb0I7a0dBQXBCLG9CQUFvQiw4SENWakMsa0xBSUEsZ0xESVksZUFBZTs7MkZBRWQsb0JBQW9CO2tCQVBoQyxTQUFTOytCQUNFLGNBQWMsY0FHWixJQUFJLFdBQ1AsQ0FBQyxlQUFlLENBQUM7d0RBVW5CLE1BQU07c0JBRFosS0FBSztnQkFJQyxTQUFTO3NCQURmLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSdcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZWxkZXItaGVhZGVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2VsZGVyLWhlYWRlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2VsZGVyLWhlYWRlci5jb21wb25lbnQuY3NzJ10sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtUcmFuc2xhdGVNb2R1bGVdLFxufSlcbmV4cG9ydCBjbGFzcyBFbGRlckhlYWRlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBGaWVsZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBoZWFkZXI6IHN0cmluZ1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzdWJoZWFkZXI6IHN0cmluZ1xuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBDb25zdHJ1Y3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIGNvbnN0cnVjdG9yKCkge31cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogTGlmZSBDeWNsZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7fVxufVxuIiwiPGRpdiBjbGFzcz1cImxheW91dC1jb2xcIj5cbiAgPGgyPnt7IGhlYWRlciA/IGhlYWRlciA6ICgnLScgfCB0cmFuc2xhdGUpIH19PC9oMj5cbiAgPHNwYW4gY2xhc3M9XCJtYXQtY2FwdGlvblwiPnt7IHN1YmhlYWRlciA/IHN1YmhlYWRlciA6ICgnLScgfCB0cmFuc2xhdGUpIH19PC9zcGFuPlxuPC9kaXY+XG4iXX0=
|
package/esm2022/lib/components/navigation/bread-crumbs/bread-crumbs/elder-bread-crumbs.component.mjs
CHANGED
|
@@ -140,7 +140,7 @@ export class ElderBreadCrumbsComponent {
|
|
|
140
140
|
return nodes;
|
|
141
141
|
}
|
|
142
142
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: ElderBreadCrumbsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
143
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.5", type: ElderBreadCrumbsComponent, isStandalone: true, selector: "elder-bread-crumbs", inputs: { root: "root", rootTranslation: "rootTranslation", rootIcon: "rootIcon", backgroundColor: "backgroundColor", editModeEnabled: "editModeEnabled", path: "path" }, outputs: { pathChange: "pathChange" }, viewQueries: [{ propertyName: "trigger", first: true, predicate: MatMenuTrigger, descendants: true }], ngImport: i0, template: "<!-- main container-->\n<div\n class=\"layout-row place-start-center full breadcrumb-bar\"\n [style.background-color]=\"backgroundColor\"\n *ngIf=\"{ enabled: editMode$ | async } as editMode\"\n>\n <!-- path container -->\n <form\n #breadCrumbForm=\"ngForm\"\n class=\"layout-row place-start-center flex breadcrumb-path\"\n (click)=\"enableEditMode()\"\n >\n <!-- path edit control (if editMode:enabled) -->\n <mat-form-field class=\"flex\" *ngIf=\"editMode.enabled\" elderDense>\n {{ pathInput.focus() }}\n <input\n matInput\n type=\"text\"\n name=\"pathInput\"\n #pathInput\n [ngModel]=\"path\"\n (ngModelChange)=\"onPathInputChange($event)\"\n (blur)=\"onPathEditBlur($event)\"\n elderKeyEvent\n [elderKeyEventFilter]=\"'Enter'\"\n (onElderKeyEvent)=\"onEnter()\"\n />\n </mat-form-field>\n\n <!-- navigation control (if editMode:disabled) -->\n <ng-container *ngIf=\"!editMode.enabled\">\n <div\n class=\"layout-row place-center-center flex-none\"\n *ngFor=\"let node of nodes$ | async; let isFirst = first; let isLast = last\"\n >\n <!-- arrow right icon as path element delimiter -->\n <mat-icon *ngIf=\"!isFirst\" class=\"noselect breadcrumb-arrow\">keyboard_arrow_right</mat-icon>\n\n <!-- root element (case root icon) -->\n <a\n *ngIf=\"isFirst && rootIcon\"\n mat-icon-button\n class=\"breadcrumb\"\n (click)=\"goToPath(node)\"\n elderStopEventPropagation\n >\n <mat-icon>{{ rootIcon }}</mat-icon>\n </a>\n\n <!-- intermediate elements (not last and (not first or root icon)) -->\n <a\n *ngIf=\"!isLast && (!isFirst || !rootIcon)\"\n mat-button\n class=\"breadcrumb\"\n (click)=\"goToPath(node)\"\n elderStopEventPropagation\n >\n <span>{{ node.name }}</span>\n </a>\n\n <!-- last element (is last and (not first or root icon)) -->\n <a\n mat-button\n class=\"breadcrumb\"\n *ngIf=\"isLast && (!isFirst || !rootIcon)\"\n (click)=\"(null)\"\n elderStopEventPropagation\n >\n {{ node.name }}\n <mat-icon>arrow_drop_down</mat-icon>\n </a>\n </div>\n </ng-container>\n </form>\n\n <!-- bread crumb action menu button -->\n <button mat-icon-button type=\"button\" [matMenuTriggerFor]=\"menu\">\n <mat-icon style=\"font-size: 22px\">arrow_drop_down</mat-icon>\n\n <mat-menu #menu=\"matMenu\">\n <button mat-menu-item type=\"button\" [elderClipboardPut]=\"path\">\n <mat-icon>content_copy</mat-icon>\n <span>{{ 'Pfad kopieren' }}</span>\n </button>\n\n <button\n mat-menu-item\n type=\"button\"\n (click)=\"onMenuEditPathClick($event)\"\n elderStopEventPropagation\n >\n <mat-icon *ngIf=\"!editMode.enabled\">edit</mat-icon>\n <mat-icon *ngIf=\"editMode.enabled\">done</mat-icon>\n <span *ngIf=\"!editMode.enabled\">{{ 'Pfad editieren' }}</span>\n <span *ngIf=\"editMode.enabled\">{{ 'Pfad best\u00E4tigen' }}</span>\n </button>\n </mat-menu>\n </button>\n</div>\n", styles: [".breadcrumb-path{padding:0 8px}.breadcrumb{padding-left:4px;padding-right:4px;font-size:18px;font-weight:400}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i1.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: ElderFormFieldDenseDirective, selector: "mat-form-field[elderDense]", inputs: ["elderDense", "subscriptSizing", "floatLabel"] }, { kind: "directive", type: MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: ElderKeyEventDirective, selector: "[elderKeyEvent]", inputs: ["elderKeyEventFilter", "elderKeyEventDown", "elderKeyEventChildren", "elderKeyEventCallback"], outputs: ["onElderKeyEvent"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: MatIconAnchor, selector: "a[mat-icon-button]", exportAs: ["matButton", "matAnchor"] }, { kind: "directive", type: ElderStopEventPropagationDirective, selector: "[elderStopEventPropagation]" }, { kind: "component", type: MatAnchor, selector: "a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button]", exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "directive", type: MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", inputs: ["mat-menu-trigger-for", "matMenuTriggerFor", "matMenuTriggerData", "matMenuTriggerRestoreFocus"], outputs: ["menuOpened", "onMenuOpen", "menuClosed", "onMenuClose"], exportAs: ["matMenuTrigger"] }, { kind: "component", type: MatMenu, selector: "mat-menu", inputs: ["backdropClass", "aria-label", "aria-labelledby", "aria-describedby", "xPosition", "yPosition", "overlapTrigger", "hasBackdrop", "class", "classList"], outputs: ["closed", "close"], exportAs: ["matMenu"] }, { kind: "component", type: MatMenuItem, selector: "[mat-menu-item]", inputs: ["role", "disabled", "disableRipple"], exportAs: ["matMenuItem"] }, { kind: "directive", type: ElderClipboardPutDirective, selector: "[elderClipboardPut]", inputs: ["elderClipboardPut"], outputs: ["clipboardCopied"] }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
143
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.5", type: ElderBreadCrumbsComponent, isStandalone: true, selector: "elder-bread-crumbs", inputs: { root: "root", rootTranslation: "rootTranslation", rootIcon: "rootIcon", backgroundColor: "backgroundColor", editModeEnabled: "editModeEnabled", path: "path" }, outputs: { pathChange: "pathChange" }, viewQueries: [{ propertyName: "trigger", first: true, predicate: MatMenuTrigger, descendants: true }], ngImport: i0, template: "<!-- main container-->\n<div\n class=\"layout-row place-start-center full breadcrumb-bar\"\n [style.background-color]=\"backgroundColor\"\n *ngIf=\"{ enabled: editMode$ | async } as editMode\"\n>\n <!-- path container -->\n <form\n #breadCrumbForm=\"ngForm\"\n class=\"layout-row place-start-center flex breadcrumb-path\"\n (click)=\"enableEditMode()\"\n >\n <!-- path edit control (if editMode:enabled) -->\n <mat-form-field class=\"flex\" *ngIf=\"editMode.enabled\" elderDense>\n {{ pathInput.focus() }}\n <input\n matInput\n type=\"text\"\n name=\"pathInput\"\n #pathInput\n [ngModel]=\"path\"\n (ngModelChange)=\"onPathInputChange($event)\"\n (blur)=\"onPathEditBlur($event)\"\n elderKeyEvent\n [elderKeyEventFilter]=\"'Enter'\"\n (onElderKeyEvent)=\"onEnter()\"\n />\n </mat-form-field>\n\n <!-- navigation control (if editMode:disabled) -->\n <ng-container *ngIf=\"!editMode.enabled\">\n <div\n class=\"layout-row place-center-center flex-none\"\n *ngFor=\"let node of nodes$ | async; let isFirst = first; let isLast = last\"\n >\n <!-- arrow right icon as path element delimiter -->\n <mat-icon *ngIf=\"!isFirst\" class=\"noselect breadcrumb-arrow\">keyboard_arrow_right</mat-icon>\n\n <!-- root element (case root icon) -->\n <a\n *ngIf=\"isFirst && rootIcon\"\n mat-icon-button\n class=\"breadcrumb\"\n (click)=\"goToPath(node)\"\n elderStopEventPropagation\n >\n <mat-icon>{{ rootIcon }}</mat-icon>\n </a>\n\n <!-- intermediate elements (not last and (not first or root icon)) -->\n <a\n *ngIf=\"!isLast && (!isFirst || !rootIcon)\"\n mat-button\n class=\"breadcrumb\"\n (click)=\"goToPath(node)\"\n elderStopEventPropagation\n >\n <span>{{ node.name }}</span>\n </a>\n\n <!-- last element (is last and (not first or root icon)) -->\n <a\n mat-button\n class=\"breadcrumb\"\n *ngIf=\"isLast && (!isFirst || !rootIcon)\"\n (click)=\"(null)\"\n elderStopEventPropagation\n >\n {{ node.name }}\n <mat-icon>arrow_drop_down</mat-icon>\n </a>\n </div>\n </ng-container>\n </form>\n\n <!-- bread crumb action menu button -->\n <button mat-icon-button type=\"button\" [matMenuTriggerFor]=\"menu\">\n <mat-icon style=\"font-size: 22px\">arrow_drop_down</mat-icon>\n\n <mat-menu #menu=\"matMenu\">\n <button mat-menu-item type=\"button\" [elderClipboardPut]=\"path\">\n <mat-icon>content_copy</mat-icon>\n <span>{{ 'Pfad kopieren' }}</span>\n </button>\n\n <button\n mat-menu-item\n type=\"button\"\n (click)=\"onMenuEditPathClick($event)\"\n elderStopEventPropagation\n >\n <mat-icon *ngIf=\"!editMode.enabled\">edit</mat-icon>\n <mat-icon *ngIf=\"editMode.enabled\">done</mat-icon>\n <span *ngIf=\"!editMode.enabled\">{{ 'Pfad editieren' }}</span>\n <span *ngIf=\"editMode.enabled\">{{ 'Pfad best\u00E4tigen' }}</span>\n </button>\n </mat-menu>\n </button>\n</div>\n", styles: [".breadcrumb-bar{padding-top:4px;padding-bottom:4px}.breadcrumb-path{padding:0 8px}.breadcrumb{padding-left:4px;padding-right:4px;font-size:18px;font-weight:400}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i1.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: ElderFormFieldDenseDirective, selector: "mat-form-field[elderDense]", inputs: ["elderDense", "subscriptSizing", "floatLabel"] }, { kind: "directive", type: MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: ElderKeyEventDirective, selector: "[elderKeyEvent]", inputs: ["elderKeyEventFilter", "elderKeyEventDown", "elderKeyEventChildren", "elderKeyEventCallback"], outputs: ["onElderKeyEvent"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: MatIconAnchor, selector: "a[mat-icon-button]", exportAs: ["matButton", "matAnchor"] }, { kind: "directive", type: ElderStopEventPropagationDirective, selector: "[elderStopEventPropagation]" }, { kind: "component", type: MatAnchor, selector: "a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button]", exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "directive", type: MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", inputs: ["mat-menu-trigger-for", "matMenuTriggerFor", "matMenuTriggerData", "matMenuTriggerRestoreFocus"], outputs: ["menuOpened", "onMenuOpen", "menuClosed", "onMenuClose"], exportAs: ["matMenuTrigger"] }, { kind: "component", type: MatMenu, selector: "mat-menu", inputs: ["backdropClass", "aria-label", "aria-labelledby", "aria-describedby", "xPosition", "yPosition", "overlapTrigger", "hasBackdrop", "class", "classList"], outputs: ["closed", "close"], exportAs: ["matMenu"] }, { kind: "component", type: MatMenuItem, selector: "[mat-menu-item]", inputs: ["role", "disabled", "disableRipple"], exportAs: ["matMenuItem"] }, { kind: "directive", type: ElderClipboardPutDirective, selector: "[elderClipboardPut]", inputs: ["elderClipboardPut"], outputs: ["clipboardCopied"] }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
144
144
|
}
|
|
145
145
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: ElderBreadCrumbsComponent, decorators: [{
|
|
146
146
|
type: Component,
|
|
@@ -162,7 +162,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImpor
|
|
|
162
162
|
MatMenuItem,
|
|
163
163
|
ElderClipboardPutDirective,
|
|
164
164
|
AsyncPipe,
|
|
165
|
-
], template: "<!-- main container-->\n<div\n class=\"layout-row place-start-center full breadcrumb-bar\"\n [style.background-color]=\"backgroundColor\"\n *ngIf=\"{ enabled: editMode$ | async } as editMode\"\n>\n <!-- path container -->\n <form\n #breadCrumbForm=\"ngForm\"\n class=\"layout-row place-start-center flex breadcrumb-path\"\n (click)=\"enableEditMode()\"\n >\n <!-- path edit control (if editMode:enabled) -->\n <mat-form-field class=\"flex\" *ngIf=\"editMode.enabled\" elderDense>\n {{ pathInput.focus() }}\n <input\n matInput\n type=\"text\"\n name=\"pathInput\"\n #pathInput\n [ngModel]=\"path\"\n (ngModelChange)=\"onPathInputChange($event)\"\n (blur)=\"onPathEditBlur($event)\"\n elderKeyEvent\n [elderKeyEventFilter]=\"'Enter'\"\n (onElderKeyEvent)=\"onEnter()\"\n />\n </mat-form-field>\n\n <!-- navigation control (if editMode:disabled) -->\n <ng-container *ngIf=\"!editMode.enabled\">\n <div\n class=\"layout-row place-center-center flex-none\"\n *ngFor=\"let node of nodes$ | async; let isFirst = first; let isLast = last\"\n >\n <!-- arrow right icon as path element delimiter -->\n <mat-icon *ngIf=\"!isFirst\" class=\"noselect breadcrumb-arrow\">keyboard_arrow_right</mat-icon>\n\n <!-- root element (case root icon) -->\n <a\n *ngIf=\"isFirst && rootIcon\"\n mat-icon-button\n class=\"breadcrumb\"\n (click)=\"goToPath(node)\"\n elderStopEventPropagation\n >\n <mat-icon>{{ rootIcon }}</mat-icon>\n </a>\n\n <!-- intermediate elements (not last and (not first or root icon)) -->\n <a\n *ngIf=\"!isLast && (!isFirst || !rootIcon)\"\n mat-button\n class=\"breadcrumb\"\n (click)=\"goToPath(node)\"\n elderStopEventPropagation\n >\n <span>{{ node.name }}</span>\n </a>\n\n <!-- last element (is last and (not first or root icon)) -->\n <a\n mat-button\n class=\"breadcrumb\"\n *ngIf=\"isLast && (!isFirst || !rootIcon)\"\n (click)=\"(null)\"\n elderStopEventPropagation\n >\n {{ node.name }}\n <mat-icon>arrow_drop_down</mat-icon>\n </a>\n </div>\n </ng-container>\n </form>\n\n <!-- bread crumb action menu button -->\n <button mat-icon-button type=\"button\" [matMenuTriggerFor]=\"menu\">\n <mat-icon style=\"font-size: 22px\">arrow_drop_down</mat-icon>\n\n <mat-menu #menu=\"matMenu\">\n <button mat-menu-item type=\"button\" [elderClipboardPut]=\"path\">\n <mat-icon>content_copy</mat-icon>\n <span>{{ 'Pfad kopieren' }}</span>\n </button>\n\n <button\n mat-menu-item\n type=\"button\"\n (click)=\"onMenuEditPathClick($event)\"\n elderStopEventPropagation\n >\n <mat-icon *ngIf=\"!editMode.enabled\">edit</mat-icon>\n <mat-icon *ngIf=\"editMode.enabled\">done</mat-icon>\n <span *ngIf=\"!editMode.enabled\">{{ 'Pfad editieren' }}</span>\n <span *ngIf=\"editMode.enabled\">{{ 'Pfad best\u00E4tigen' }}</span>\n </button>\n </mat-menu>\n </button>\n</div>\n", styles: [".breadcrumb-path{padding:0 8px}.breadcrumb{padding-left:4px;padding-right:4px;font-size:18px;font-weight:400}\n"] }]
|
|
165
|
+
], template: "<!-- main container-->\n<div\n class=\"layout-row place-start-center full breadcrumb-bar\"\n [style.background-color]=\"backgroundColor\"\n *ngIf=\"{ enabled: editMode$ | async } as editMode\"\n>\n <!-- path container -->\n <form\n #breadCrumbForm=\"ngForm\"\n class=\"layout-row place-start-center flex breadcrumb-path\"\n (click)=\"enableEditMode()\"\n >\n <!-- path edit control (if editMode:enabled) -->\n <mat-form-field class=\"flex\" *ngIf=\"editMode.enabled\" elderDense>\n {{ pathInput.focus() }}\n <input\n matInput\n type=\"text\"\n name=\"pathInput\"\n #pathInput\n [ngModel]=\"path\"\n (ngModelChange)=\"onPathInputChange($event)\"\n (blur)=\"onPathEditBlur($event)\"\n elderKeyEvent\n [elderKeyEventFilter]=\"'Enter'\"\n (onElderKeyEvent)=\"onEnter()\"\n />\n </mat-form-field>\n\n <!-- navigation control (if editMode:disabled) -->\n <ng-container *ngIf=\"!editMode.enabled\">\n <div\n class=\"layout-row place-center-center flex-none\"\n *ngFor=\"let node of nodes$ | async; let isFirst = first; let isLast = last\"\n >\n <!-- arrow right icon as path element delimiter -->\n <mat-icon *ngIf=\"!isFirst\" class=\"noselect breadcrumb-arrow\">keyboard_arrow_right</mat-icon>\n\n <!-- root element (case root icon) -->\n <a\n *ngIf=\"isFirst && rootIcon\"\n mat-icon-button\n class=\"breadcrumb\"\n (click)=\"goToPath(node)\"\n elderStopEventPropagation\n >\n <mat-icon>{{ rootIcon }}</mat-icon>\n </a>\n\n <!-- intermediate elements (not last and (not first or root icon)) -->\n <a\n *ngIf=\"!isLast && (!isFirst || !rootIcon)\"\n mat-button\n class=\"breadcrumb\"\n (click)=\"goToPath(node)\"\n elderStopEventPropagation\n >\n <span>{{ node.name }}</span>\n </a>\n\n <!-- last element (is last and (not first or root icon)) -->\n <a\n mat-button\n class=\"breadcrumb\"\n *ngIf=\"isLast && (!isFirst || !rootIcon)\"\n (click)=\"(null)\"\n elderStopEventPropagation\n >\n {{ node.name }}\n <mat-icon>arrow_drop_down</mat-icon>\n </a>\n </div>\n </ng-container>\n </form>\n\n <!-- bread crumb action menu button -->\n <button mat-icon-button type=\"button\" [matMenuTriggerFor]=\"menu\">\n <mat-icon style=\"font-size: 22px\">arrow_drop_down</mat-icon>\n\n <mat-menu #menu=\"matMenu\">\n <button mat-menu-item type=\"button\" [elderClipboardPut]=\"path\">\n <mat-icon>content_copy</mat-icon>\n <span>{{ 'Pfad kopieren' }}</span>\n </button>\n\n <button\n mat-menu-item\n type=\"button\"\n (click)=\"onMenuEditPathClick($event)\"\n elderStopEventPropagation\n >\n <mat-icon *ngIf=\"!editMode.enabled\">edit</mat-icon>\n <mat-icon *ngIf=\"editMode.enabled\">done</mat-icon>\n <span *ngIf=\"!editMode.enabled\">{{ 'Pfad editieren' }}</span>\n <span *ngIf=\"editMode.enabled\">{{ 'Pfad best\u00E4tigen' }}</span>\n </button>\n </mat-menu>\n </button>\n</div>\n", styles: [".breadcrumb-bar{padding-top:4px;padding-bottom:4px}.breadcrumb-path{padding:0 8px}.breadcrumb{padding-left:4px;padding-right:4px;font-size:18px;font-weight:400}\n"] }]
|
|
166
166
|
}], ctorParameters: () => [], propDecorators: { pathChange: [{
|
|
167
167
|
type: Output
|
|
168
168
|
}], root: [{
|
|
@@ -181,4 +181,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImpor
|
|
|
181
181
|
}], path: [{
|
|
182
182
|
type: Input
|
|
183
183
|
}] } });
|
|
184
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItYnJlYWQtY3J1bWJzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvbmF2aWdhdGlvbi9icmVhZC1jcnVtYnMvYnJlYWQtY3J1bWJzL2VsZGVyLWJyZWFkLWNydW1icy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL25hdmlnYXRpb24vYnJlYWQtY3J1bWJzL2JyZWFkLWNydW1icy9lbGRlci1icmVhZC1jcnVtYnMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFHTCxNQUFNLEVBQ04sU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFBO0FBQ3RCLE9BQU8sRUFBRSxlQUFlLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFBO0FBQy9DLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQTtBQUNwRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sY0FBYyxDQUFBO0FBQ3ZDLE9BQU8sRUFBRSxZQUFZLEVBQUUsb0JBQW9CLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFDOUUsT0FBTyxFQUFFLGNBQWMsRUFBRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sd0JBQXdCLENBQUE7QUFDN0UsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0seURBQXlELENBQUE7QUFDcEcsT0FBTyxFQUFFLGtDQUFrQyxFQUFFLE1BQU0sa0VBQWtFLENBQUE7QUFDckgsT0FBTyxFQUFFLGFBQWEsRUFBRSxTQUFTLEVBQUUsYUFBYSxFQUFFLE1BQU0s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LFFBQVEsaVVBQ1Isc0JBQXNCLGtNQUN0QixLQUFLLG1IQUNMLE9BQU8sMklBQ1AsYUFBYSxxR0FDYixrQ0FBa0Msd0VBQ2xDLFNBQVMsaUtBQ1QsYUFBYSw2RkFDYixjQUFjLHFTQUNkLE9BQU8sMlFBQ1AsV0FBVyxzSUFDWCwwQkFBMEIsd0hBQzFCLFNBQVM7OzJGQUdBLHlCQUF5QjtrQkExQnJDLFNBQVM7K0JBQ0Usb0JBQW9CLG1CQUdiLHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsSUFBSSxXQUNQO3dCQUNQLElBQUk7d0JBQ0osV0FBVzt3QkFDWCxZQUFZO3dCQUNaLDRCQUE0Qjt3QkFDNUIsUUFBUTt3QkFDUixzQkFBc0I7d0JBQ3RCLEtBQUs7d0JBQ0wsT0FBTzt3QkFDUCxhQUFhO3dCQUNiLGtDQUFrQzt3QkFDbEMsU0FBUzt3QkFDVCxhQUFhO3dCQUNiLGNBQWM7d0JBQ2QsT0FBTzt3QkFDUCxXQUFXO3dCQUNYLDBCQUEwQjt3QkFDMUIsU0FBUztxQkFDVjt3REFvQmUsVUFBVTtzQkFEekIsTUFBTTtnQkFJQSxJQUFJO3NCQURWLEtBQUs7Z0JBSUMsZUFBZTtzQkFEckIsS0FBSztnQkFJQyxRQUFRO3NCQURkLEtBQUs7Z0JBSUMsZUFBZTtzQkFEckIsS0FBSztnQkFJQyxPQUFPO3NCQURiLFNBQVM7dUJBQUMsY0FBYztnQkE0Q2QsZUFBZTtzQkFEekIsS0FBSztnQkFVSyxJQUFJO3NCQURkLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgT3V0cHV0LFxuICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIFN1YmplY3QgfSBmcm9tICdyeGpzJ1xuaW1wb3J0IHsgTG9nZ2VyRmFjdG9yeSB9IGZyb20gJ0BlbGRlcmJ5dGUvdHMtbG9nZ2VyJ1xuaW1wb3J0IHsgUGF0aE5vZGUgfSBmcm9tICcuLi9wYXRoL3BhdGgnXG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIGRpc3RpbmN0VW50aWxDaGFuZ2VkLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycydcbmltcG9ydCB7IE1hdE1lbnVUcmlnZ2VyLCBNYXRNZW51LCBNYXRNZW51SXRlbSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL21lbnUnXG5pbXBvcnQgeyBFbGRlckNsaXBib2FyZFB1dERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uLy4uL2Zvcm1zL2RpcmVjdGl2ZXMvZWxkZXItY2xpcGJvYXJkLXB1dC5kaXJlY3RpdmUnXG5pbXBvcnQgeyBFbGRlclN0b3BFdmVudFByb3BhZ2F0aW9uRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vLi4vZm9ybXMvZGlyZWN0aXZlcy9lbGRlci1zdG9wLWV2ZW50LXByb3BhZ2F0aW9uLmRpcmVjdGl2ZSdcbmltcG9ydCB7IE1hdEljb25BbmNob3IsIE1hdEFuY2hvciwgTWF0SWNvbkJ1dHRvbiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbidcbmltcG9ydCB7IE1hdEljb24gfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJ1xuaW1wb3J0IHsgRWxkZXJLZXlFdmVudERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uLy4uL2Zvcm1zL2RpcmVjdGl2ZXMvZWxkZXIta2V5LWV2ZW50LmRpcmVjdGl2ZSdcbmltcG9ydCB7IE1hdElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnXG5pbXBvcnQgeyBFbGRlckZvcm1GaWVsZERlbnNlRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vLi4vZm9ybXMvZGlyZWN0aXZlcy9lbGRlci1mb3JtLWZpZWxkLWRlbnNlLmRpcmVjdGl2ZSdcbmltcG9ydCB7IE1hdEZvcm1GaWVsZCB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2Zvcm0tZmllbGQnXG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJ1xuaW1wb3J0IHsgTmdJZiwgTmdGb3IsIEFzeW5jUGlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbidcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZWxkZXItYnJlYWQtY3J1bWJzJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2VsZGVyLWJyZWFkLWNydW1icy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2VsZGVyLWJyZWFkLWNydW1icy5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIE5nSWYsXG4gICAgRm9ybXNNb2R1bGUsXG4gICAgTWF0Rm9ybUZpZWxkLFxuICAgIEVsZGVyRm9ybUZpZWxkRGVuc2VEaXJlY3RpdmUsXG4gICAgTWF0SW5wdXQsXG4gICAgRWxkZXJLZXlFdmVudERpcmVjdGl2ZSxcbiAgICBOZ0ZvcixcbiAgICBNYXRJY29uLFxuICAgIE1hdEljb25BbmNob3IsXG4gICAgRWxkZXJTdG9wRXZlbnRQcm9wYWdhdGlvbkRpcmVjdGl2ZSxcbiAgICBNYXRBbmNob3IsXG4gICAgTWF0SWNvbkJ1dHRvbixcbiAgICBNYXRNZW51VHJpZ2dlcixcbiAgICBNYXRNZW51LFxuICAgIE1hdE1lbnVJdGVtLFxuICAgIEVsZGVyQ2xpcGJvYXJkUHV0RGlyZWN0aXZlLFxuICAgIEFzeW5jUGlwZSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgRWxkZXJCcmVhZENydW1ic0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIEZpZWxkcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSByZWFkb25seSBsb2cgPSBMb2dnZXJGYWN0b3J5LmdldExvZ2dlcih0aGlzLmNvbnN0cnVjdG9yLm5hbWUpXG5cbiAgcHJpdmF0ZSByZWFkb25seSBfdW5zdWJzY3JpYmUgPSBuZXcgU3ViamVjdDx2b2lkPigpXG5cbiAgcHJpdmF0ZSBfcGF0aDogc3RyaW5nXG5cbiAgcHVibGljIHJlYWRvbmx5IGVkaXRNb2RlJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpXG5cbiAgcHJpdmF0ZSByZWFkb25seSBfcGF0aElucHV0Q2hhbmdlZCQ6IFN1YmplY3Q8c3RyaW5nPiA9IG5ldyBTdWJqZWN0PHN0cmluZz4oKVxuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgcmVhZG9ubHkgcGF0aENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpXG5cbiAgQElucHV0KClcbiAgcHVibGljIHJvb3QgPSAnLydcblxuICBASW5wdXQoKVxuICBwdWJsaWMgcm9vdFRyYW5zbGF0aW9uOiBzdHJpbmcgPSBudWxsXG5cbiAgQElucHV0KClcbiAgcHVibGljIHJvb3RJY29uOiBzdHJpbmdcblxuICBASW5wdXQoKVxuICBwdWJsaWMgYmFja2dyb3VuZENvbG9yOiBzdHJpbmdcblxuICBAVmlld0NoaWxkKE1hdE1lbnVUcmlnZ2VyKVxuICBwdWJsaWMgdHJpZ2dlcjogTWF0TWVudVRyaWdnZXJcblxuICBwdWJsaWMgcmVhZG9ubHkgbm9kZXMkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxQYXRoTm9kZVtdPihbXSlcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogQ29uc3RydWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBjb25zdHJ1Y3RvcigpIHt9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIExpZmUgQ3ljbGUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuX3BhdGhJbnB1dENoYW5nZWQkXG4gICAgICAucGlwZShcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuX3Vuc3Vic2NyaWJlKSxcbiAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSwgLy8gb25seSBlbWl0IGlmIHZhbHVlIGlzIGRpZmZlcmVudCBmcm9tIHByZXZpb3VzIHZhbHVlXG4gICAgICAgIGRlYm91bmNlVGltZSgyNTApXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCh2YWx1ZSkgPT4ge1xuICAgICAgICB0aGlzLmxvZy5pbmZvKHZhbHVlKVxuICAgICAgICB0aGlzLnBhdGhDaGFuZ2UuZW1pdCh2YWx1ZSlcbiAgICAgIH0pXG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5fdW5zdWJzY3JpYmUubmV4dCgpXG4gICAgdGhpcy5fdW5zdWJzY3JpYmUuY29tcGxldGUoKVxuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByb3BlcnRpZXMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBlZGl0TW9kZUVuYWJsZWQodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLmVkaXRNb2RlJC5uZXh0KHZhbHVlKVxuICB9XG5cbiAgcHVibGljIGdldCBlZGl0TW9kZUVuYWJsZWQoKSB7XG4gICAgcmV0dXJuIHRoaXMuZWRpdE1vZGUkLmdldFZhbHVlKClcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgcGF0aChwYXRoOiBzdHJpbmcpIHtcbiAgICBpZiAodGhpcy5fcGF0aCAhPT0gcGF0aCkge1xuICAgICAgdGhpcy5fcGF0aCA9IHBhdGhcbiAgICAgIHRoaXMubm9kZXMkLm5leHQodGhpcy5idWlsZE5vZGVzKHRoaXMuX3BhdGgpKVxuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBnZXQgcm9vdFJhd0Rpc3BsYXkoKTogc3RyaW5nIHtcbiAgICBjb25zdCBwYXJ0cyA9IHRoaXMucm9vdC5zcGxpdCgnLycpXG4gICAgY29uc3QgdmFsID0gcGFydHNbcGFydHMubGVuZ3RoIC0gMV1cbiAgICByZXR1cm4gdmFsID8gdmFsIDogJ0hvbWUnXG4gIH1cblxuICBwdWJsaWMgZ2V0IHBhdGgoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fcGF0aFxuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFB1YmxpYyBBUEkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIG9uRW50ZXIoKTogdm9pZCB7XG4gICAgdGhpcy5kaXNhYmxlRWRpdE1vZGUoKVxuICB9XG5cbiAgcHVibGljIG9uUGF0aEVkaXRCbHVyKGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgIC8vIHRoaXMubG9nLmRlYnVnKCdibHVycmVkJywgZXZlbnQpO1xuICAgIHRoaXMuZGlzYWJsZUVkaXRNb2RlKClcbiAgfVxuXG4gIHB1YmxpYyBvblBhdGhJbnB1dENoYW5nZSh2YWx1ZTogc3RyaW5nKSB7XG4gICAgdGhpcy5fcGF0aElucHV0Q2hhbmdlZCQubmV4dCh2YWx1ZSlcbiAgfVxuXG4gIHB1YmxpYyBvbk1lbnVFZGl0UGF0aENsaWNrKGV2ZW50OiBhbnkpIHtcbiAgICB0aGlzLnRyaWdnZXIuY2xvc2VNZW51KClcbiAgICB0aGlzLnRvZ2dsZUVkaXRNb2RlKClcbiAgfVxuXG4gIHB1YmxpYyBnb1RvUm9vdCgpIHtcbiAgICB0aGlzLmdvVG9QYXRoKG5ldyBQYXRoTm9kZSh0aGlzLnJvb3QsICcnKSlcbiAgfVxuXG4gIHB1YmxpYyBnb1RvUGF0aChub2RlOiBQYXRoTm9kZSkge1xuICAgIHRoaXMucGF0aCA9IG5vZGUuaWRcbiAgICB0aGlzLnBhdGhDaGFuZ2UubmV4dCh0aGlzLl9wYXRoKVxuICB9XG5cbiAgcHVibGljIHRvZ2dsZUVkaXRNb2RlKCk6IHZvaWQge1xuICAgIHRoaXMuZWRpdE1vZGVFbmFibGVkID0gIXRoaXMuZWRpdE1vZGVFbmFibGVkXG4gIH1cblxuICBwdWJsaWMgZW5hYmxlRWRpdE1vZGUoKTogdm9pZCB7XG4gICAgdGhpcy5lZGl0TW9kZUVuYWJsZWQgPSB0cnVlXG4gIH1cblxuICBwdWJsaWMgZGlzYWJsZUVkaXRNb2RlKCk6IHZvaWQge1xuICAgIHRoaXMuZWRpdE1vZGVFbmFibGVkID0gZmFsc2VcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQcml2YXRlIG1ldGhvZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByaXZhdGUgYnVpbGROb2RlcyhwYXRoOiBzdHJpbmcpOiBQYXRoTm9kZVtdIHtcbiAgICBjb25zdCBub2RlczogUGF0aE5vZGVbXSA9IFtdXG5cbiAgICBub2Rlcy5wdXNoKFxuICAgICAgbmV3IFBhdGhOb2RlKHRoaXMucm9vdCwgdGhpcy5yb290VHJhbnNsYXRpb24gPyB0aGlzLnJvb3RUcmFuc2xhdGlvbiA6IHRoaXMucm9vdFJhd0Rpc3BsYXkpXG4gICAgKVxuXG4gICAgaWYgKHBhdGgpIHtcbiAgICAgIHBhdGggPSBwYXRoLnN0YXJ0c1dpdGgodGhpcy5yb290KSA/IHBhdGguc3Vic3RyKHRoaXMucm9vdC5sZW5ndGgpIDogcGF0aFxuXG4gICAgICB0aGlzLmxvZy5kZWJ1ZygncGF0aDogJyArIHBhdGgpXG5cbiAgICAgIGNvbnN0IHBhcnRzID0gcGF0aC5zcGxpdCgnLycpXG5cbiAgICAgIGxldCBwYXJlbnQgPSB0aGlzLnJvb3RcblxuICAgICAgZm9yIChjb25zdCBwYXJ0IG9mIHBhcnRzKSB7XG4gICAgICAgIGlmIChwYXJ0Lmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgIGNvbnRpbnVlXG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBjdXJyZW50ID0gcGFyZW50ID8gcGFyZW50ICsgJy8nICsgcGFydCA6IHBhcnRcblxuICAgICAgICBub2Rlcy5wdXNoKG5ldyBQYXRoTm9kZShjdXJyZW50LCBwYXJ0KSlcblxuICAgICAgICBwYXJlbnQgPSBjdXJyZW50XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIG5vZGVzXG4gIH1cbn1cbiIsIjwhLS0gbWFpbiBjb250YWluZXItLT5cbjxkaXZcbiAgY2xhc3M9XCJsYXlvdXQtcm93IHBsYWNlLXN0YXJ0LWNlbnRlciBmdWxsIGJyZWFkY3J1bWItYmFyXCJcbiAgW3N0eWxlLmJhY2tncm91bmQtY29sb3JdPVwiYmFja2dyb3VuZENvbG9yXCJcbiAgKm5nSWY9XCJ7IGVuYWJsZWQ6IGVkaXRNb2RlJCB8IGFzeW5jIH0gYXMgZWRpdE1vZGVcIlxuPlxuICA8IS0tIHBhdGggY29udGFpbmVyIC0tPlxuICA8Zm9ybVxuICAgICNicmVhZENydW1iRm9ybT1cIm5nRm9ybVwiXG4gICAgY2xhc3M9XCJsYXlvdXQtcm93IHBsYWNlLXN0YXJ0LWNlbnRlciBmbGV4IGJyZWFkY3J1bWItcGF0aFwiXG4gICAgKGNsaWNrKT1cImVuYWJsZUVkaXRNb2RlKClcIlxuICA+XG4gICAgPCEtLSBwYXRoIGVkaXQgY29udHJvbCAoaWYgZWRpdE1vZGU6ZW5hYmxlZCkgLS0+XG4gICAgPG1hdC1mb3JtLWZpZWxkIGNsYXNzPVwiZmxleFwiICpuZ0lmPVwiZWRpdE1vZGUuZW5hYmxlZFwiIGVsZGVyRGVuc2U+XG4gICAgICB7eyBwYXRoSW5wdXQuZm9jdXMoKSB9fVxuICAgICAgPGlucHV0XG4gICAgICAgIG1hdElucHV0XG4gICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgbmFtZT1cInBhdGhJbnB1dFwiXG4gICAgICAgICNwYXRoSW5wdXRcbiAgICAgICAgW25nTW9kZWxdPVwicGF0aFwiXG4gICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cIm9uUGF0aElucHV0Q2hhbmdlKCRldmVudClcIlxuICAgICAgICAoYmx1cik9XCJvblBhdGhFZGl0Qmx1cigkZXZlbnQpXCJcbiAgICAgICAgZWxkZXJLZXlFdmVudFxuICAgICAgICBbZWxkZXJLZXlFdmVudEZpbHRlcl09XCInRW50ZXInXCJcbiAgICAgICAgKG9uRWxkZXJLZXlFdmVudCk9XCJvbkVudGVyKClcIlxuICAgICAgLz5cbiAgICA8L21hdC1mb3JtLWZpZWxkPlxuXG4gICAgPCEtLSBuYXZpZ2F0aW9uIGNvbnRyb2wgKGlmIGVkaXRNb2RlOmRpc2FibGVkKSAtLT5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWVkaXRNb2RlLmVuYWJsZWRcIj5cbiAgICAgIDxkaXZcbiAgICAgICAgY2xhc3M9XCJsYXlvdXQtcm93IHBsYWNlLWNlbnRlci1jZW50ZXIgZmxleC1ub25lXCJcbiAgICAgICAgKm5nRm9yPVwibGV0IG5vZGUgb2Ygbm9kZXMkIHwgYXN5bmM7IGxldCBpc0ZpcnN0ID0gZmlyc3Q7IGxldCBpc0xhc3QgPSBsYXN0XCJcbiAgICAgID5cbiAgICAgICAgPCEtLSBhcnJvdyByaWdodCBpY29uIGFzIHBhdGggZWxlbWVudCBkZWxpbWl0ZXIgLS0+XG4gICAgICAgIDxtYXQtaWNvbiAqbmdJZj1cIiFpc0ZpcnN0XCIgY2xhc3M9XCJub3NlbGVjdCBicmVhZGNydW1iLWFycm93XCI+a2V5Ym9hcmRfYXJyb3dfcmlnaHQ8L21hdC1pY29uPlxuXG4gICAgICAgIDwhLS0gcm9vdCBlbGVtZW50IChjYXNlIHJvb3QgaWNvbikgLS0+XG4gICAgICAgIDxhXG4gICAgICAgICAgKm5nSWY9XCJpc0ZpcnN0ICYmIHJvb3RJY29uXCJcbiAgICAgICAgICBtYXQtaWNvbi1idXR0b25cbiAgICAgICAgICBjbGFzcz1cImJyZWFkY3J1bWJcIlxuICAgICAgICAgIChjbGljayk9XCJnb1RvUGF0aChub2RlKVwiXG4gICAgICAgICAgZWxkZXJTdG9wRXZlbnRQcm9wYWdhdGlvblxuICAgICAgICA+XG4gICAgICAgICAgPG1hdC1pY29uPnt7IHJvb3RJY29uIH19PC9tYXQtaWNvbj5cbiAgICAgICAgPC9hPlxuXG4gICAgICAgIDwhLS0gaW50ZXJtZWRpYXRlIGVsZW1lbnRzIChub3QgbGFzdCBhbmQgKG5vdCBmaXJzdCBvciByb290IGljb24pKSAtLT5cbiAgICAgICAgPGFcbiAgICAgICAgICAqbmdJZj1cIiFpc0xhc3QgJiYgKCFpc0ZpcnN0IHx8ICFyb290SWNvbilcIlxuICAgICAgICAgIG1hdC1idXR0b25cbiAgICAgICAgICBjbGFzcz1cImJyZWFkY3J1bWJcIlxuICAgICAgICAgIChjbGljayk9XCJnb1RvUGF0aChub2RlKVwiXG4gICAgICAgICAgZWxkZXJTdG9wRXZlbnRQcm9wYWdhdGlvblxuICAgICAgICA+XG4gICAgICAgICAgPHNwYW4+e3sgbm9kZS5uYW1lIH19PC9zcGFuPlxuICAgICAgICA8L2E+XG5cbiAgICAgICAgPCEtLSBsYXN0IGVsZW1lbnQgKGlzIGxhc3QgYW5kIChub3QgZmlyc3Qgb3Igcm9vdCBpY29uKSkgLS0+XG4gICAgICAgIDxhXG4gICAgICAgICAgbWF0LWJ1dHRvblxuICAgICAgICAgIGNsYXNzPVwiYnJlYWRjcnVtYlwiXG4gICAgICAgICAgKm5nSWY9XCJpc0xhc3QgJiYgKCFpc0ZpcnN0IHx8ICFyb290SWNvbilcIlxuICAgICAgICAgIChjbGljayk9XCIobnVsbClcIlxuICAgICAgICAgIGVsZGVyU3RvcEV2ZW50UHJvcGFnYXRpb25cbiAgICAgICAgPlxuICAgICAgICAgIHt7IG5vZGUubmFtZSB9fVxuICAgICAgICAgIDxtYXQtaWNvbj5hcnJvd19kcm9wX2Rvd248L21hdC1pY29uPlxuICAgICAgICA8L2E+XG4gICAgICA8L2Rpdj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC9mb3JtPlxuXG4gIDwhLS0gYnJlYWQgY3J1bWIgYWN0aW9uIG1lbnUgYnV0dG9uIC0tPlxuICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgW21hdE1lbnVUcmlnZ2VyRm9yXT1cIm1lbnVcIj5cbiAgICA8bWF0LWljb24gc3R5bGU9XCJmb250LXNpemU6IDIycHhcIj5hcnJvd19kcm9wX2Rvd248L21hdC1pY29uPlxuXG4gICAgPG1hdC1tZW51ICNtZW51PVwibWF0TWVudVwiPlxuICAgICAgPGJ1dHRvbiBtYXQtbWVudS1pdGVtIHR5cGU9XCJidXR0b25cIiBbZWxkZXJDbGlwYm9hcmRQdXRdPVwicGF0aFwiPlxuICAgICAgICA8bWF0LWljb24+Y29udGVudF9jb3B5PC9tYXQtaWNvbj5cbiAgICAgICAgPHNwYW4+e3sgJ1BmYWQga29waWVyZW4nIH19PC9zcGFuPlxuICAgICAgPC9idXR0b24+XG5cbiAgICAgIDxidXR0b25cbiAgICAgICAgbWF0LW1lbnUtaXRlbVxuICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgKGNsaWNrKT1cIm9uTWVudUVkaXRQYXRoQ2xpY2soJGV2ZW50KVwiXG4gICAgICAgIGVsZGVyU3RvcEV2ZW50UHJvcGFnYXRpb25cbiAgICAgID5cbiAgICAgICAgPG1hdC1pY29uICpuZ0lmPVwiIWVkaXRNb2RlLmVuYWJsZWRcIj5lZGl0PC9tYXQtaWNvbj5cbiAgICAgICAgPG1hdC1pY29uICpuZ0lmPVwiZWRpdE1vZGUuZW5hYmxlZFwiPmRvbmU8L21hdC1pY29uPlxuICAgICAgICA8c3BhbiAqbmdJZj1cIiFlZGl0TW9kZS5lbmFibGVkXCI+e3sgJ1BmYWQgZWRpdGllcmVuJyB9fTwvc3Bhbj5cbiAgICAgICAgPHNwYW4gKm5nSWY9XCJlZGl0TW9kZS5lbmFibGVkXCI+e3sgJ1BmYWQgYmVzdMOkdGlnZW4nIH19PC9zcGFuPlxuICAgICAgPC9idXR0b24+XG4gICAgPC9tYXQtbWVudT5cbiAgPC9idXR0b24+XG48L2Rpdj5cbiJdfQ==
|
|
184
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItYnJlYWQtY3J1bWJzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvbmF2aWdhdGlvbi9icmVhZC1jcnVtYnMvYnJlYWQtY3J1bWJzL2VsZGVyLWJyZWFkLWNydW1icy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL25hdmlnYXRpb24vYnJlYWQtY3J1bWJzL2JyZWFkLWNydW1icy9lbGRlci1icmVhZC1jcnVtYnMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFHTCxNQUFNLEVBQ04sU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFBO0FBQ3RCLE9BQU8sRUFBRSxlQUFlLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFBO0FBQy9DLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQTtBQUNwRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sY0FBYyxDQUFBO0FBQ3ZDLE9BQU8sRUFBRSxZQUFZLEVBQUUsb0JBQW9CLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFDOUUsT0FBTyxFQUFFLGNBQWMsRUFBRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sd0JBQXdCLENBQUE7QUFDN0UsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0seURBQXlELENBQUE7QUFDcEcsT0FBTyxFQUFFLGtDQUFrQyxFQUFFLE1BQU0sa0VBQWtFLENBQUE7QUFDckgsT0FBTyxFQUFFLGFBQWEsRUFBRSxTQUFTLEVBQUUsYUFBYSxFQUFFLE1BQU0sMEJBQTBCLENBQUE7QUFDbEYsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHdCQUF3QixDQUFBO0FBQ2hELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHFEQUFxRCxDQUFBO0FBQzVGLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQTtBQUNsRCxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSw0REFBNEQsQ0FBQTtBQUN6RyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sOEJBQThCLENBQUE7QUFDM0QsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBQzVDLE9BQU8sRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLGlCQUFpQixDQUFBOzs7QUE0QnhELE1BQU0sT0FBTyx5QkFBeUI7SUFxQ3BDOzs7O2dGQUk0RTtJQUU1RTtRQTFDQTs7OztvRkFJNEU7UUFFM0QsUUFBRyxHQUFHLGFBQWEsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQTtRQUVwRCxpQkFBWSxHQUFHLElBQUksT0FBTyxFQUFRLENBQUE7UUFJbkMsY0FBUyxHQUFHLElBQUksZUFBZSxDQUFVLEtBQUssQ0FBQyxDQUFBO1FBRTlDLHVCQUFrQixHQUFvQixJQUFJLE9BQU8sRUFBVSxDQUFBO1FBRzVELGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFBO1FBR2hELFNBQUksR0FBRyxHQUFHLENBQUE7UUFHVixvQkFBZSxHQUFXLElBQUksQ0FBQTtRQVdyQixXQUFNLEdBQUcsSUFBSSxlQUFlLENBQWEsRUFBRSxDQUFDLENBQUE7SUFRN0MsQ0FBQztJQUVoQjs7OztnRkFJNEU7SUFFckUsUUFBUTtRQUNiLElBQUksQ0FBQyxrQkFBa0I7YUFDcEIsSUFBSSxDQUNILFNBQVMsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLEVBQzVCLG9CQUFvQixFQUFFLEVBQUUsc0RBQXNEO1FBQzlFLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FDbEI7YUFDQSxTQUFTLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtZQUNuQixJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQTtZQUNwQixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQTtRQUM3QixDQUFDLENBQUMsQ0FBQTtJQUNOLENBQUM7SUFFTSxXQUFXO1FBQ2hCLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxFQUFFLENBQUE7UUFDeEIsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLEVBQUUsQ0FBQTtJQUM5QixDQUFDO0lBRUQ7Ozs7Z0ZBSTRFO0lBRTVFLElBQ1csZUFBZSxDQUFDLEtBQWM7UUFDdkMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUE7SUFDNUIsQ0FBQztJQUVELElBQVcsZUFBZTtRQUN4QixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxFQUFFLENBQUE7SUFDbEMsQ0FBQztJQUVELElBQ1csSUFBSSxDQUFDLElBQVk7UUFDMUIsSUFBSSxJQUFJLENBQUMsS0FBSyxLQUFLLElBQUksRUFBRSxDQUFDO1lBQ3hCLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFBO1lBQ2pCLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUE7UUFDL0MsQ0FBQztJQUNILENBQUM7SUFFRCxJQUFXLGNBQWM7UUFDdkIsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUE7UUFDbEMsTUFBTSxHQUFHLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUE7UUFDbkMsT0FBTyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFBO0lBQzNCLENBQUM7SUFFRCxJQUFXLElBQUk7UUFDYixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUE7SUFDbkIsQ0FBQztJQUVEOzs7O2dGQUk0RTtJQUVyRSxPQUFPO1FBQ1osSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFBO0lBQ3hCLENBQUM7SUFFTSxjQUFjLENBQUMsS0FBWTtRQUNoQyxvQ0FBb0M7UUFDcEMsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFBO0lBQ3hCLENBQUM7SUFFTSxpQkFBaUIsQ0FBQyxLQUFhO1FBQ3BDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUE7SUFDckMsQ0FBQztJQUVNLG1CQUFtQixDQUFDLEtBQVU7UUFDbkMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUUsQ0FBQTtRQUN4QixJQUFJLENBQUMsY0FBYyxFQUFFLENBQUE7SUFDdkIsQ0FBQztJQUVNLFFBQVE7UUFDYixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQTtJQUM1QyxDQUFDO0lBRU0sUUFBUSxDQUFDLElBQWM7UUFDNUIsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFBO1FBQ25CLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQTtJQUNsQyxDQUFDO0lBRU0sY0FBYztRQUNuQixJQUFJLENBQUMsZUFBZSxHQUFHLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQTtJQUM5QyxDQUFDO0lBRU0sY0FBYztRQUNuQixJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQTtJQUM3QixDQUFDO0lBRU0sZUFBZTtRQUNwQixJQUFJLENBQUMsZUFBZSxHQUFHLEtBQUssQ0FBQTtJQUM5QixDQUFDO0lBRUQ7Ozs7Z0ZBSTRFO0lBRXBFLFVBQVUsQ0FBQyxJQUFZO1FBQzdCLE1BQU0sS0FBSyxHQUFlLEVBQUUsQ0FBQTtRQUU1QixLQUFLLENBQUMsSUFBSSxDQUNSLElBQUksUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUMzRixDQUFBO1FBRUQsSUFBSSxJQUFJLEVBQUUsQ0FBQztZQUNULElBQUksR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUE7WUFFeEUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxDQUFBO1lBRS9CLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUE7WUFFN0IsSUFBSSxNQUFNLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQTtZQUV0QixLQUFLLE1BQU0sSUFBSSxJQUFJLEtBQUssRUFBRSxDQUFDO2dCQUN6QixJQUFJLElBQUksQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7b0JBQ3RCLFNBQVE7Z0JBQ1YsQ0FBQztnQkFFRCxNQUFNLE9BQU8sR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLE1BQU0sR0FBRyxHQUFHLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUE7Z0JBRW5ELEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxRQUFRLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUE7Z0JBRXZDLE1BQU0sR0FBRyxPQUFPLENBQUE7WUFDbEIsQ0FBQztRQUNILENBQUM7UUFFRCxPQUFPLEtBQUssQ0FBQTtJQUNkLENBQUM7OEdBdkxVLHlCQUF5QjtrR0FBekIseUJBQXlCLHdVQWdDekIsY0FBYyxnRENwRjNCLDh0R0FtR0EsNE5EbEVJLElBQUksNEZBQ0osV0FBVyx3aUNBQ1gsWUFBWSw0TEFDWiw0QkFBNEIsZ0lBQzVCLFFBQVEsaVVBQ1Isc0JBQXNCLGtNQUN0QixLQUFLLG1IQUNMLE9BQU8sMklBQ1AsYUFBYSxxR0FDYixrQ0FBa0Msd0VBQ2xDLFNBQVMsaUtBQ1QsYUFBYSw2RkFDYixjQUFjLHFTQUNkLE9BQU8sMlFBQ1AsV0FBVyxzSUFDWCwwQkFBMEIsd0hBQzFCLFNBQVM7OzJGQUdBLHlCQUF5QjtrQkExQnJDLFNBQVM7K0JBQ0Usb0JBQW9CLG1CQUdiLHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsSUFBSSxXQUNQO3dCQUNQLElBQUk7d0JBQ0osV0FBVzt3QkFDWCxZQUFZO3dCQUNaLDRCQUE0Qjt3QkFDNUIsUUFBUTt3QkFDUixzQkFBc0I7d0JBQ3RCLEtBQUs7d0JBQ0wsT0FBTzt3QkFDUCxhQUFhO3dCQUNiLGtDQUFrQzt3QkFDbEMsU0FBUzt3QkFDVCxhQUFhO3dCQUNiLGNBQWM7d0JBQ2QsT0FBTzt3QkFDUCxXQUFXO3dCQUNYLDBCQUEwQjt3QkFDMUIsU0FBUztxQkFDVjt3REFvQmUsVUFBVTtzQkFEekIsTUFBTTtnQkFJQSxJQUFJO3NCQURWLEtBQUs7Z0JBSUMsZUFBZTtzQkFEckIsS0FBSztnQkFJQyxRQUFRO3NCQURkLEtBQUs7Z0JBSUMsZUFBZTtzQkFEckIsS0FBSztnQkFJQyxPQUFPO3NCQURiLFNBQVM7dUJBQUMsY0FBYztnQkE0Q2QsZUFBZTtzQkFEekIsS0FBSztnQkFVSyxJQUFJO3NCQURkLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgT3V0cHV0LFxuICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIFN1YmplY3QgfSBmcm9tICdyeGpzJ1xuaW1wb3J0IHsgTG9nZ2VyRmFjdG9yeSB9IGZyb20gJ0BlbGRlcmJ5dGUvdHMtbG9nZ2VyJ1xuaW1wb3J0IHsgUGF0aE5vZGUgfSBmcm9tICcuLi9wYXRoL3BhdGgnXG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIGRpc3RpbmN0VW50aWxDaGFuZ2VkLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycydcbmltcG9ydCB7IE1hdE1lbnVUcmlnZ2VyLCBNYXRNZW51LCBNYXRNZW51SXRlbSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL21lbnUnXG5pbXBvcnQgeyBFbGRlckNsaXBib2FyZFB1dERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uLy4uL2Zvcm1zL2RpcmVjdGl2ZXMvZWxkZXItY2xpcGJvYXJkLXB1dC5kaXJlY3RpdmUnXG5pbXBvcnQgeyBFbGRlclN0b3BFdmVudFByb3BhZ2F0aW9uRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vLi4vZm9ybXMvZGlyZWN0aXZlcy9lbGRlci1zdG9wLWV2ZW50LXByb3BhZ2F0aW9uLmRpcmVjdGl2ZSdcbmltcG9ydCB7IE1hdEljb25BbmNob3IsIE1hdEFuY2hvciwgTWF0SWNvbkJ1dHRvbiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbidcbmltcG9ydCB7IE1hdEljb24gfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJ1xuaW1wb3J0IHsgRWxkZXJLZXlFdmVudERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uLy4uL2Zvcm1zL2RpcmVjdGl2ZXMvZWxkZXIta2V5LWV2ZW50LmRpcmVjdGl2ZSdcbmltcG9ydCB7IE1hdElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnXG5pbXBvcnQgeyBFbGRlckZvcm1GaWVsZERlbnNlRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vLi4vZm9ybXMvZGlyZWN0aXZlcy9lbGRlci1mb3JtLWZpZWxkLWRlbnNlLmRpcmVjdGl2ZSdcbmltcG9ydCB7IE1hdEZvcm1GaWVsZCB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2Zvcm0tZmllbGQnXG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJ1xuaW1wb3J0IHsgTmdJZiwgTmdGb3IsIEFzeW5jUGlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbidcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZWxkZXItYnJlYWQtY3J1bWJzJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2VsZGVyLWJyZWFkLWNydW1icy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2VsZGVyLWJyZWFkLWNydW1icy5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIE5nSWYsXG4gICAgRm9ybXNNb2R1bGUsXG4gICAgTWF0Rm9ybUZpZWxkLFxuICAgIEVsZGVyRm9ybUZpZWxkRGVuc2VEaXJlY3RpdmUsXG4gICAgTWF0SW5wdXQsXG4gICAgRWxkZXJLZXlFdmVudERpcmVjdGl2ZSxcbiAgICBOZ0ZvcixcbiAgICBNYXRJY29uLFxuICAgIE1hdEljb25BbmNob3IsXG4gICAgRWxkZXJTdG9wRXZlbnRQcm9wYWdhdGlvbkRpcmVjdGl2ZSxcbiAgICBNYXRBbmNob3IsXG4gICAgTWF0SWNvbkJ1dHRvbixcbiAgICBNYXRNZW51VHJpZ2dlcixcbiAgICBNYXRNZW51LFxuICAgIE1hdE1lbnVJdGVtLFxuICAgIEVsZGVyQ2xpcGJvYXJkUHV0RGlyZWN0aXZlLFxuICAgIEFzeW5jUGlwZSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgRWxkZXJCcmVhZENydW1ic0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIEZpZWxkcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSByZWFkb25seSBsb2cgPSBMb2dnZXJGYWN0b3J5LmdldExvZ2dlcih0aGlzLmNvbnN0cnVjdG9yLm5hbWUpXG5cbiAgcHJpdmF0ZSByZWFkb25seSBfdW5zdWJzY3JpYmUgPSBuZXcgU3ViamVjdDx2b2lkPigpXG5cbiAgcHJpdmF0ZSBfcGF0aDogc3RyaW5nXG5cbiAgcHVibGljIHJlYWRvbmx5IGVkaXRNb2RlJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpXG5cbiAgcHJpdmF0ZSByZWFkb25seSBfcGF0aElucHV0Q2hhbmdlZCQ6IFN1YmplY3Q8c3RyaW5nPiA9IG5ldyBTdWJqZWN0PHN0cmluZz4oKVxuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgcmVhZG9ubHkgcGF0aENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpXG5cbiAgQElucHV0KClcbiAgcHVibGljIHJvb3QgPSAnLydcblxuICBASW5wdXQoKVxuICBwdWJsaWMgcm9vdFRyYW5zbGF0aW9uOiBzdHJpbmcgPSBudWxsXG5cbiAgQElucHV0KClcbiAgcHVibGljIHJvb3RJY29uOiBzdHJpbmdcblxuICBASW5wdXQoKVxuICBwdWJsaWMgYmFja2dyb3VuZENvbG9yOiBzdHJpbmdcblxuICBAVmlld0NoaWxkKE1hdE1lbnVUcmlnZ2VyKVxuICBwdWJsaWMgdHJpZ2dlcjogTWF0TWVudVRyaWdnZXJcblxuICBwdWJsaWMgcmVhZG9ubHkgbm9kZXMkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxQYXRoTm9kZVtdPihbXSlcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogQ29uc3RydWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBjb25zdHJ1Y3RvcigpIHt9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIExpZmUgQ3ljbGUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuX3BhdGhJbnB1dENoYW5nZWQkXG4gICAgICAucGlwZShcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuX3Vuc3Vic2NyaWJlKSxcbiAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSwgLy8gb25seSBlbWl0IGlmIHZhbHVlIGlzIGRpZmZlcmVudCBmcm9tIHByZXZpb3VzIHZhbHVlXG4gICAgICAgIGRlYm91bmNlVGltZSgyNTApXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCh2YWx1ZSkgPT4ge1xuICAgICAgICB0aGlzLmxvZy5pbmZvKHZhbHVlKVxuICAgICAgICB0aGlzLnBhdGhDaGFuZ2UuZW1pdCh2YWx1ZSlcbiAgICAgIH0pXG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5fdW5zdWJzY3JpYmUubmV4dCgpXG4gICAgdGhpcy5fdW5zdWJzY3JpYmUuY29tcGxldGUoKVxuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByb3BlcnRpZXMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBlZGl0TW9kZUVuYWJsZWQodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLmVkaXRNb2RlJC5uZXh0KHZhbHVlKVxuICB9XG5cbiAgcHVibGljIGdldCBlZGl0TW9kZUVuYWJsZWQoKSB7XG4gICAgcmV0dXJuIHRoaXMuZWRpdE1vZGUkLmdldFZhbHVlKClcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgcGF0aChwYXRoOiBzdHJpbmcpIHtcbiAgICBpZiAodGhpcy5fcGF0aCAhPT0gcGF0aCkge1xuICAgICAgdGhpcy5fcGF0aCA9IHBhdGhcbiAgICAgIHRoaXMubm9kZXMkLm5leHQodGhpcy5idWlsZE5vZGVzKHRoaXMuX3BhdGgpKVxuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBnZXQgcm9vdFJhd0Rpc3BsYXkoKTogc3RyaW5nIHtcbiAgICBjb25zdCBwYXJ0cyA9IHRoaXMucm9vdC5zcGxpdCgnLycpXG4gICAgY29uc3QgdmFsID0gcGFydHNbcGFydHMubGVuZ3RoIC0gMV1cbiAgICByZXR1cm4gdmFsID8gdmFsIDogJ0hvbWUnXG4gIH1cblxuICBwdWJsaWMgZ2V0IHBhdGgoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fcGF0aFxuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFB1YmxpYyBBUEkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIG9uRW50ZXIoKTogdm9pZCB7XG4gICAgdGhpcy5kaXNhYmxlRWRpdE1vZGUoKVxuICB9XG5cbiAgcHVibGljIG9uUGF0aEVkaXRCbHVyKGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgIC8vIHRoaXMubG9nLmRlYnVnKCdibHVycmVkJywgZXZlbnQpO1xuICAgIHRoaXMuZGlzYWJsZUVkaXRNb2RlKClcbiAgfVxuXG4gIHB1YmxpYyBvblBhdGhJbnB1dENoYW5nZSh2YWx1ZTogc3RyaW5nKSB7XG4gICAgdGhpcy5fcGF0aElucHV0Q2hhbmdlZCQubmV4dCh2YWx1ZSlcbiAgfVxuXG4gIHB1YmxpYyBvbk1lbnVFZGl0UGF0aENsaWNrKGV2ZW50OiBhbnkpIHtcbiAgICB0aGlzLnRyaWdnZXIuY2xvc2VNZW51KClcbiAgICB0aGlzLnRvZ2dsZUVkaXRNb2RlKClcbiAgfVxuXG4gIHB1YmxpYyBnb1RvUm9vdCgpIHtcbiAgICB0aGlzLmdvVG9QYXRoKG5ldyBQYXRoTm9kZSh0aGlzLnJvb3QsICcnKSlcbiAgfVxuXG4gIHB1YmxpYyBnb1RvUGF0aChub2RlOiBQYXRoTm9kZSkge1xuICAgIHRoaXMucGF0aCA9IG5vZGUuaWRcbiAgICB0aGlzLnBhdGhDaGFuZ2UubmV4dCh0aGlzLl9wYXRoKVxuICB9XG5cbiAgcHVibGljIHRvZ2dsZUVkaXRNb2RlKCk6IHZvaWQge1xuICAgIHRoaXMuZWRpdE1vZGVFbmFibGVkID0gIXRoaXMuZWRpdE1vZGVFbmFibGVkXG4gIH1cblxuICBwdWJsaWMgZW5hYmxlRWRpdE1vZGUoKTogdm9pZCB7XG4gICAgdGhpcy5lZGl0TW9kZUVuYWJsZWQgPSB0cnVlXG4gIH1cblxuICBwdWJsaWMgZGlzYWJsZUVkaXRNb2RlKCk6IHZvaWQge1xuICAgIHRoaXMuZWRpdE1vZGVFbmFibGVkID0gZmFsc2VcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQcml2YXRlIG1ldGhvZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByaXZhdGUgYnVpbGROb2RlcyhwYXRoOiBzdHJpbmcpOiBQYXRoTm9kZVtdIHtcbiAgICBjb25zdCBub2RlczogUGF0aE5vZGVbXSA9IFtdXG5cbiAgICBub2Rlcy5wdXNoKFxuICAgICAgbmV3IFBhdGhOb2RlKHRoaXMucm9vdCwgdGhpcy5yb290VHJhbnNsYXRpb24gPyB0aGlzLnJvb3RUcmFuc2xhdGlvbiA6IHRoaXMucm9vdFJhd0Rpc3BsYXkpXG4gICAgKVxuXG4gICAgaWYgKHBhdGgpIHtcbiAgICAgIHBhdGggPSBwYXRoLnN0YXJ0c1dpdGgodGhpcy5yb290KSA/IHBhdGguc3Vic3RyKHRoaXMucm9vdC5sZW5ndGgpIDogcGF0aFxuXG4gICAgICB0aGlzLmxvZy5kZWJ1ZygncGF0aDogJyArIHBhdGgpXG5cbiAgICAgIGNvbnN0IHBhcnRzID0gcGF0aC5zcGxpdCgnLycpXG5cbiAgICAgIGxldCBwYXJlbnQgPSB0aGlzLnJvb3RcblxuICAgICAgZm9yIChjb25zdCBwYXJ0IG9mIHBhcnRzKSB7XG4gICAgICAgIGlmIChwYXJ0Lmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgIGNvbnRpbnVlXG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBjdXJyZW50ID0gcGFyZW50ID8gcGFyZW50ICsgJy8nICsgcGFydCA6IHBhcnRcblxuICAgICAgICBub2Rlcy5wdXNoKG5ldyBQYXRoTm9kZShjdXJyZW50LCBwYXJ0KSlcblxuICAgICAgICBwYXJlbnQgPSBjdXJyZW50XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIG5vZGVzXG4gIH1cbn1cbiIsIjwhLS0gbWFpbiBjb250YWluZXItLT5cbjxkaXZcbiAgY2xhc3M9XCJsYXlvdXQtcm93IHBsYWNlLXN0YXJ0LWNlbnRlciBmdWxsIGJyZWFkY3J1bWItYmFyXCJcbiAgW3N0eWxlLmJhY2tncm91bmQtY29sb3JdPVwiYmFja2dyb3VuZENvbG9yXCJcbiAgKm5nSWY9XCJ7IGVuYWJsZWQ6IGVkaXRNb2RlJCB8IGFzeW5jIH0gYXMgZWRpdE1vZGVcIlxuPlxuICA8IS0tIHBhdGggY29udGFpbmVyIC0tPlxuICA8Zm9ybVxuICAgICNicmVhZENydW1iRm9ybT1cIm5nRm9ybVwiXG4gICAgY2xhc3M9XCJsYXlvdXQtcm93IHBsYWNlLXN0YXJ0LWNlbnRlciBmbGV4IGJyZWFkY3J1bWItcGF0aFwiXG4gICAgKGNsaWNrKT1cImVuYWJsZUVkaXRNb2RlKClcIlxuICA+XG4gICAgPCEtLSBwYXRoIGVkaXQgY29udHJvbCAoaWYgZWRpdE1vZGU6ZW5hYmxlZCkgLS0+XG4gICAgPG1hdC1mb3JtLWZpZWxkIGNsYXNzPVwiZmxleFwiICpuZ0lmPVwiZWRpdE1vZGUuZW5hYmxlZFwiIGVsZGVyRGVuc2U+XG4gICAgICB7eyBwYXRoSW5wdXQuZm9jdXMoKSB9fVxuICAgICAgPGlucHV0XG4gICAgICAgIG1hdElucHV0XG4gICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgbmFtZT1cInBhdGhJbnB1dFwiXG4gICAgICAgICNwYXRoSW5wdXRcbiAgICAgICAgW25nTW9kZWxdPVwicGF0aFwiXG4gICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cIm9uUGF0aElucHV0Q2hhbmdlKCRldmVudClcIlxuICAgICAgICAoYmx1cik9XCJvblBhdGhFZGl0Qmx1cigkZXZlbnQpXCJcbiAgICAgICAgZWxkZXJLZXlFdmVudFxuICAgICAgICBbZWxkZXJLZXlFdmVudEZpbHRlcl09XCInRW50ZXInXCJcbiAgICAgICAgKG9uRWxkZXJLZXlFdmVudCk9XCJvbkVudGVyKClcIlxuICAgICAgLz5cbiAgICA8L21hdC1mb3JtLWZpZWxkPlxuXG4gICAgPCEtLSBuYXZpZ2F0aW9uIGNvbnRyb2wgKGlmIGVkaXRNb2RlOmRpc2FibGVkKSAtLT5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWVkaXRNb2RlLmVuYWJsZWRcIj5cbiAgICAgIDxkaXZcbiAgICAgICAgY2xhc3M9XCJsYXlvdXQtcm93IHBsYWNlLWNlbnRlci1jZW50ZXIgZmxleC1ub25lXCJcbiAgICAgICAgKm5nRm9yPVwibGV0IG5vZGUgb2Ygbm9kZXMkIHwgYXN5bmM7IGxldCBpc0ZpcnN0ID0gZmlyc3Q7IGxldCBpc0xhc3QgPSBsYXN0XCJcbiAgICAgID5cbiAgICAgICAgPCEtLSBhcnJvdyByaWdodCBpY29uIGFzIHBhdGggZWxlbWVudCBkZWxpbWl0ZXIgLS0+XG4gICAgICAgIDxtYXQtaWNvbiAqbmdJZj1cIiFpc0ZpcnN0XCIgY2xhc3M9XCJub3NlbGVjdCBicmVhZGNydW1iLWFycm93XCI+a2V5Ym9hcmRfYXJyb3dfcmlnaHQ8L21hdC1pY29uPlxuXG4gICAgICAgIDwhLS0gcm9vdCBlbGVtZW50IChjYXNlIHJvb3QgaWNvbikgLS0+XG4gICAgICAgIDxhXG4gICAgICAgICAgKm5nSWY9XCJpc0ZpcnN0ICYmIHJvb3RJY29uXCJcbiAgICAgICAgICBtYXQtaWNvbi1idXR0b25cbiAgICAgICAgICBjbGFzcz1cImJyZWFkY3J1bWJcIlxuICAgICAgICAgIChjbGljayk9XCJnb1RvUGF0aChub2RlKVwiXG4gICAgICAgICAgZWxkZXJTdG9wRXZlbnRQcm9wYWdhdGlvblxuICAgICAgICA+XG4gICAgICAgICAgPG1hdC1pY29uPnt7IHJvb3RJY29uIH19PC9tYXQtaWNvbj5cbiAgICAgICAgPC9hPlxuXG4gICAgICAgIDwhLS0gaW50ZXJtZWRpYXRlIGVsZW1lbnRzIChub3QgbGFzdCBhbmQgKG5vdCBmaXJzdCBvciByb290IGljb24pKSAtLT5cbiAgICAgICAgPGFcbiAgICAgICAgICAqbmdJZj1cIiFpc0xhc3QgJiYgKCFpc0ZpcnN0IHx8ICFyb290SWNvbilcIlxuICAgICAgICAgIG1hdC1idXR0b25cbiAgICAgICAgICBjbGFzcz1cImJyZWFkY3J1bWJcIlxuICAgICAgICAgIChjbGljayk9XCJnb1RvUGF0aChub2RlKVwiXG4gICAgICAgICAgZWxkZXJTdG9wRXZlbnRQcm9wYWdhdGlvblxuICAgICAgICA+XG4gICAgICAgICAgPHNwYW4+e3sgbm9kZS5uYW1lIH19PC9zcGFuPlxuICAgICAgICA8L2E+XG5cbiAgICAgICAgPCEtLSBsYXN0IGVsZW1lbnQgKGlzIGxhc3QgYW5kIChub3QgZmlyc3Qgb3Igcm9vdCBpY29uKSkgLS0+XG4gICAgICAgIDxhXG4gICAgICAgICAgbWF0LWJ1dHRvblxuICAgICAgICAgIGNsYXNzPVwiYnJlYWRjcnVtYlwiXG4gICAgICAgICAgKm5nSWY9XCJpc0xhc3QgJiYgKCFpc0ZpcnN0IHx8ICFyb290SWNvbilcIlxuICAgICAgICAgIChjbGljayk9XCIobnVsbClcIlxuICAgICAgICAgIGVsZGVyU3RvcEV2ZW50UHJvcGFnYXRpb25cbiAgICAgICAgPlxuICAgICAgICAgIHt7IG5vZGUubmFtZSB9fVxuICAgICAgICAgIDxtYXQtaWNvbj5hcnJvd19kcm9wX2Rvd248L21hdC1pY29uPlxuICAgICAgICA8L2E+XG4gICAgICA8L2Rpdj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC9mb3JtPlxuXG4gIDwhLS0gYnJlYWQgY3J1bWIgYWN0aW9uIG1lbnUgYnV0dG9uIC0tPlxuICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgW21hdE1lbnVUcmlnZ2VyRm9yXT1cIm1lbnVcIj5cbiAgICA8bWF0LWljb24gc3R5bGU9XCJmb250LXNpemU6IDIycHhcIj5hcnJvd19kcm9wX2Rvd248L21hdC1pY29uPlxuXG4gICAgPG1hdC1tZW51ICNtZW51PVwibWF0TWVudVwiPlxuICAgICAgPGJ1dHRvbiBtYXQtbWVudS1pdGVtIHR5cGU9XCJidXR0b25cIiBbZWxkZXJDbGlwYm9hcmRQdXRdPVwicGF0aFwiPlxuICAgICAgICA8bWF0LWljb24+Y29udGVudF9jb3B5PC9tYXQtaWNvbj5cbiAgICAgICAgPHNwYW4+e3sgJ1BmYWQga29waWVyZW4nIH19PC9zcGFuPlxuICAgICAgPC9idXR0b24+XG5cbiAgICAgIDxidXR0b25cbiAgICAgICAgbWF0LW1lbnUtaXRlbVxuICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgKGNsaWNrKT1cIm9uTWVudUVkaXRQYXRoQ2xpY2soJGV2ZW50KVwiXG4gICAgICAgIGVsZGVyU3RvcEV2ZW50UHJvcGFnYXRpb25cbiAgICAgID5cbiAgICAgICAgPG1hdC1pY29uICpuZ0lmPVwiIWVkaXRNb2RlLmVuYWJsZWRcIj5lZGl0PC9tYXQtaWNvbj5cbiAgICAgICAgPG1hdC1pY29uICpuZ0lmPVwiZWRpdE1vZGUuZW5hYmxlZFwiPmRvbmU8L21hdC1pY29uPlxuICAgICAgICA8c3BhbiAqbmdJZj1cIiFlZGl0TW9kZS5lbmFibGVkXCI+e3sgJ1BmYWQgZWRpdGllcmVuJyB9fTwvc3Bhbj5cbiAgICAgICAgPHNwYW4gKm5nSWY9XCJlZGl0TW9kZS5lbmFibGVkXCI+e3sgJ1BmYWQgYmVzdMOkdGlnZW4nIH19PC9zcGFuPlxuICAgICAgPC9idXR0b24+XG4gICAgPC9tYXQtbWVudT5cbiAgPC9idXR0b24+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -77,7 +77,7 @@ export class ElderNavGroupComponent {
|
|
|
77
77
|
return this.navList.isActive(this.value);
|
|
78
78
|
}
|
|
79
79
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: ElderNavGroupComponent, deps: [{ token: i1.ElderNavListComponent }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
80
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.5", type: ElderNavGroupComponent, isStandalone: true, selector: "elder-nav-group", inputs: { value: "value" }, outputs: { clicked: "clicked" }, queries: [{ propertyName: "children", predicate: ElderNavLinkComponent }], ngImport: i0, template: "<ng-container *ngIf=\"state$ | async as state\">\n <div class=\"layout-col nav-group\">\n <a\n matRipple\n class=\"layout-row place-start-center nav-group-button mat-button-fill mdc-list-item mdc-list-item--with-one-line\"\n [class.nav-group-button-open]=\"state.isOpen\"\n [class.nav-group-button-closed]=\"!state.isOpen\"\n [class.nav-group-button-active]=\"active$ | async\"\n (click)=\"itemClick($event)\"\n >\n <div class=\"layout-row place-start-center gap-lg full noselect mdc-list-item__primary-text\">\n <ng-content></ng-content>\n <span class=\"flex\"></span>\n <mat-icon>{{ state.isOpen ? 'keyboard_arrow_up' : 'keyboard_arrow_down' }}</mat-icon>\n </div>\n </a>\n\n <!-- Nested Items projection -->\n <div\n class=\"layout-col nav-group-items-container p-sm gap-sm\"\n [@openClose]=\"state.isOpen ? 'open' : 'closed'\"\n >\n <ng-content select=\"elder-nav-link\"></ng-content>\n </div>\n </div>\n</ng-container>\n", styles: [".nav-group-button-closed{padding-left:16px}.nav-group{min-height:48px}.nav-group-button{padding-right:16px;min-height:48px;font-size:16px;font-weight:400;border-radius:
|
|
80
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.5", type: ElderNavGroupComponent, isStandalone: true, selector: "elder-nav-group", inputs: { value: "value" }, outputs: { clicked: "clicked" }, queries: [{ propertyName: "children", predicate: ElderNavLinkComponent }], ngImport: i0, template: "<ng-container *ngIf=\"state$ | async as state\">\n <div class=\"layout-col nav-group\">\n <a\n matRipple\n class=\"layout-row place-start-center nav-group-button mat-button-fill mdc-list-item mdc-list-item--with-one-line\"\n [class.nav-group-button-open]=\"state.isOpen\"\n [class.nav-group-button-closed]=\"!state.isOpen\"\n [class.nav-group-button-active]=\"active$ | async\"\n (click)=\"itemClick($event)\"\n >\n <div class=\"layout-row place-start-center gap-lg full noselect mdc-list-item__primary-text\">\n <ng-content></ng-content>\n <span class=\"flex\"></span>\n <mat-icon>{{ state.isOpen ? 'keyboard_arrow_up' : 'keyboard_arrow_down' }}</mat-icon>\n </div>\n </a>\n\n <!-- Nested Items projection -->\n <div\n class=\"layout-col nav-group-items-container p-sm gap-sm\"\n [@openClose]=\"state.isOpen ? 'open' : 'closed'\"\n >\n <ng-content select=\"elder-nav-link\"></ng-content>\n </div>\n </div>\n</ng-container>\n", styles: [".nav-group-button-closed{padding-left:16px}.nav-group{min-height:48px}.nav-group-button{padding-right:16px;min-height:48px;font-size:16px;font-weight:400;border-radius:var(--elder-border-radius-sm);cursor:pointer}.nav-group-button .mat-icon{height:24px;width:24px;font-size:24px;padding:4px}.nav-group-items-container{overflow:hidden}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }, { kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "pipe", type: AsyncPipe, name: "async" }], animations: [
|
|
81
81
|
trigger('openClose', [
|
|
82
82
|
state('open', style({
|
|
83
83
|
height: '*',
|
|
@@ -109,7 +109,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImpor
|
|
|
109
109
|
transition('open => closed', [animate('200ms')]),
|
|
110
110
|
transition('closed => open', [animate('200ms')]),
|
|
111
111
|
]),
|
|
112
|
-
], changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [NgIf, MatRipple, MatIcon, AsyncPipe], template: "<ng-container *ngIf=\"state$ | async as state\">\n <div class=\"layout-col nav-group\">\n <a\n matRipple\n class=\"layout-row place-start-center nav-group-button mat-button-fill mdc-list-item mdc-list-item--with-one-line\"\n [class.nav-group-button-open]=\"state.isOpen\"\n [class.nav-group-button-closed]=\"!state.isOpen\"\n [class.nav-group-button-active]=\"active$ | async\"\n (click)=\"itemClick($event)\"\n >\n <div class=\"layout-row place-start-center gap-lg full noselect mdc-list-item__primary-text\">\n <ng-content></ng-content>\n <span class=\"flex\"></span>\n <mat-icon>{{ state.isOpen ? 'keyboard_arrow_up' : 'keyboard_arrow_down' }}</mat-icon>\n </div>\n </a>\n\n <!-- Nested Items projection -->\n <div\n class=\"layout-col nav-group-items-container p-sm gap-sm\"\n [@openClose]=\"state.isOpen ? 'open' : 'closed'\"\n >\n <ng-content select=\"elder-nav-link\"></ng-content>\n </div>\n </div>\n</ng-container>\n", styles: [".nav-group-button-closed{padding-left:16px}.nav-group{min-height:48px}.nav-group-button{padding-right:16px;min-height:48px;font-size:16px;font-weight:400;border-radius:
|
|
112
|
+
], changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [NgIf, MatRipple, MatIcon, AsyncPipe], template: "<ng-container *ngIf=\"state$ | async as state\">\n <div class=\"layout-col nav-group\">\n <a\n matRipple\n class=\"layout-row place-start-center nav-group-button mat-button-fill mdc-list-item mdc-list-item--with-one-line\"\n [class.nav-group-button-open]=\"state.isOpen\"\n [class.nav-group-button-closed]=\"!state.isOpen\"\n [class.nav-group-button-active]=\"active$ | async\"\n (click)=\"itemClick($event)\"\n >\n <div class=\"layout-row place-start-center gap-lg full noselect mdc-list-item__primary-text\">\n <ng-content></ng-content>\n <span class=\"flex\"></span>\n <mat-icon>{{ state.isOpen ? 'keyboard_arrow_up' : 'keyboard_arrow_down' }}</mat-icon>\n </div>\n </a>\n\n <!-- Nested Items projection -->\n <div\n class=\"layout-col nav-group-items-container p-sm gap-sm\"\n [@openClose]=\"state.isOpen ? 'open' : 'closed'\"\n >\n <ng-content select=\"elder-nav-link\"></ng-content>\n </div>\n </div>\n</ng-container>\n", styles: [".nav-group-button-closed{padding-left:16px}.nav-group{min-height:48px}.nav-group-button{padding-right:16px;min-height:48px;font-size:16px;font-weight:400;border-radius:var(--elder-border-radius-sm);cursor:pointer}.nav-group-button .mat-icon{height:24px;width:24px;font-size:24px;padding:4px}.nav-group-items-container{overflow:hidden}\n"] }]
|
|
113
113
|
}], ctorParameters: () => [{ type: i1.ElderNavListComponent }], propDecorators: { children: [{
|
|
114
114
|
type: ContentChildren,
|
|
115
115
|
args: [ElderNavLinkComponent]
|
|
@@ -118,4 +118,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImpor
|
|
|
118
118
|
}], value: [{
|
|
119
119
|
type: Input
|
|
120
120
|
}] } });
|
|
121
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItbmF2LWdyb3VwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvbmF2aWdhdGlvbi9uYXYvbmF2LWdyb3VwL2VsZGVyLW5hdi1ncm91cC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL25hdmlnYXRpb24vbmF2L25hdi1ncm91cC9lbGRlci1uYXYtZ3JvdXAuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsZUFBZSxFQUNmLEtBQUssRUFHTCxNQUFNLEdBRVAsTUFBTSxlQUFlLENBQUE7QUFDdEIsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQTtBQUNoRixPQUFPLEVBQUUscUJBQXFCLEVBQUUsY0FBYyxFQUFFLE1BQU0sc0NBQXNDLENBQUE7QUFDNUYsT0FBTyxFQUFFLGVBQWUsRUFBYyxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUE7QUFFM0QsT0FBTyxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUMvQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sd0JBQXdCLENBQUE7QUFDaEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHdCQUF3QixDQUFBO0FBQ2xELE9BQU8sRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLE1BQU0saUJBQWlCLENBQUE7OztBQW1DakQsTUFBTSxPQUFPLHNCQUFzQjtJQW1CakM7Ozs7Z0ZBSTRFO0lBRTVFLFlBQTZCLE9BQThCO1FBQTlC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VSxDQUFDLGdCQUFnQixFQUFFLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7Z0JBQ2hELFVBQVUsQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO2FBQ2pELENBQUM7U0FDSDs7MkZBS1Usc0JBQXNCO2tCQTdCbEMsU0FBUzsrQkFDRSxpQkFBaUIsY0FHZjt3QkFDVixPQUFPLENBQUMsV0FBVyxFQUFFOzRCQUNuQixLQUFLLENBQ0gsTUFBTSxFQUNOLEtBQUssQ0FBQztnQ0FDSixNQUFNLEVBQUUsR0FBRztnQ0FDWCxPQUFPLEVBQUUsQ0FBQzs2QkFDWCxDQUFDLENBQ0g7NEJBQ0QsS0FBSyxDQUNILFFBQVEsRUFDUixLQUFLLENBQUM7Z0NBQ0osTUFBTSxFQUFFLENBQUM7Z0NBQ1QsT0FBTyxFQUFFLEdBQUc7Z0NBQ1osT0FBTyxFQUFFLENBQUM7NkJBQ1gsQ0FBQyxDQUNIOzRCQUNELFVBQVUsQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDOzRCQUNoRCxVQUFVLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQzt5QkFDakQsQ0FBQztxQkFDSCxtQkFDZ0IsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJLFdBQ1AsQ0FBQyxJQUFJLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxTQUFTLENBQUM7MEZBVXZDLFFBQVE7c0JBRGQsZUFBZTt1QkFBQyxxQkFBcUI7Z0JBTXRCLE9BQU87c0JBRHRCLE1BQU07Z0JBa0RJLEtBQUs7c0JBRGYsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIENvbnRlbnRDaGlsZHJlbixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBPdXRwdXQsXG4gIFF1ZXJ5TGlzdCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IGFuaW1hdGUsIHN0YXRlLCBzdHlsZSwgdHJhbnNpdGlvbiwgdHJpZ2dlciB9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnXG5pbXBvcnQgeyBFbGRlck5hdkxpbmtDb21wb25lbnQsIE5hdkl0ZW1DbGlja2VkIH0gZnJvbSAnLi4vbmF2LWxpbmsvZWxkZXItbmF2LWxpbmsuY29tcG9uZW50J1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlLCBTdWJqZWN0IH0gZnJvbSAncnhqcydcbmltcG9ydCB7IEVsZGVyTmF2TGlzdENvbXBvbmVudCB9IGZyb20gJy4uL25hdi1saXN0L2VsZGVyLW5hdi1saXN0LmNvbXBvbmVudCdcbmltcG9ydCB7IG1hcCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnXG5pbXBvcnQgeyBNYXRJY29uIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbidcbmltcG9ydCB7IE1hdFJpcHBsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NvcmUnXG5pbXBvcnQgeyBOZ0lmLCBBc3luY1BpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nXG5cbmludGVyZmFjZSBOYXZHcm91cFN0YXRlIHtcbiAgaXNPcGVuOiBib29sZWFuXG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2VsZGVyLW5hdi1ncm91cCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9lbGRlci1uYXYtZ3JvdXAuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9lbGRlci1uYXYtZ3JvdXAuY29tcG9uZW50LnNjc3MnXSxcbiAgYW5pbWF0aW9uczogW1xuICAgIHRyaWdnZXIoJ29wZW5DbG9zZScsIFtcbiAgICAgIHN0YXRlKFxuICAgICAgICAnb3BlbicsXG4gICAgICAgIHN0eWxlKHtcbiAgICAgICAgICBoZWlnaHQ6ICcqJyxcbiAgICAgICAgICBvcGFjaXR5OiAxLFxuICAgICAgICB9KVxuICAgICAgKSxcbiAgICAgIHN0YXRlKFxuICAgICAgICAnY2xvc2VkJyxcbiAgICAgICAgc3R5bGUoe1xuICAgICAgICAgIGhlaWdodDogMCxcbiAgICAgICAgICBvcGFjaXR5OiAwLjUsXG4gICAgICAgICAgcGFkZGluZzogMCxcbiAgICAgICAgfSlcbiAgICAgICksXG4gICAgICB0cmFuc2l0aW9uKCdvcGVuID0+IGNsb3NlZCcsIFthbmltYXRlKCcyMDBtcycpXSksXG4gICAgICB0cmFuc2l0aW9uKCdjbG9zZWQgPT4gb3BlbicsIFthbmltYXRlKCcyMDBtcycpXSksXG4gICAgXSksXG4gIF0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbTmdJZiwgTWF0UmlwcGxlLCBNYXRJY29uLCBBc3luY1BpcGVdLFxufSlcbmV4cG9ydCBjbGFzcyBFbGRlck5hdkdyb3VwQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogRmllbGRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBAQ29udGVudENoaWxkcmVuKEVsZGVyTmF2TGlua0NvbXBvbmVudClcbiAgcHVibGljIGNoaWxkcmVuOiBRdWVyeUxpc3Q8RWxkZXJOYXZMaW5rQ29tcG9uZW50PlxuXG4gIHB1YmxpYyByZWFkb25seSBzdGF0ZSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PE5hdkdyb3VwU3RhdGU+KHsgaXNPcGVuOiBmYWxzZSB9KVxuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgcmVhZG9ubHkgY2xpY2tlZCA9IG5ldyBTdWJqZWN0PE5hdkl0ZW1DbGlja2VkPigpXG5cbiAgcHJpdmF0ZSByZWFkb25seSBkZXN0cm95JCA9IG5ldyBTdWJqZWN0PHZvaWQ+KClcbiAgcHJpdmF0ZSByZWFkb25seSBfYWN0aXZlJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpXG4gIHByaXZhdGUgX3ZhbHVlOiBhbnlcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogQ29uc3RydWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IG5hdkxpc3Q6IEVsZGVyTmF2TGlzdENvbXBvbmVudCkge31cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogTGlmZSBDeWNsZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5uYXZMaXN0LnZhbHVlQ2hhbmdlXG4gICAgICAucGlwZShcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuZGVzdHJveSQpLFxuICAgICAgICBtYXAoKHZhbHVlKSA9PiB0aGlzLmlzQ3VycmVudFZhbHVlQWN0aXZlKVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgoYWN0aXZlKSA9PiB0aGlzLl9hY3RpdmUkLm5leHQoYWN0aXZlKSlcblxuICAgIGlmICh0aGlzLnZhbHVlKSB7XG4gICAgICB0aGlzLl9hY3RpdmUkLm5leHQodGhpcy5pc0N1cnJlbnRWYWx1ZUFjdGl2ZSlcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5kZXN0cm95JC5uZXh0KClcbiAgICB0aGlzLmRlc3Ryb3kkLmNvbXBsZXRlKClcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQcm9wZXJ0aWVzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHB1YmxpYyBnZXQgYWN0aXZlJCgpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5fYWN0aXZlJFxuICB9XG5cbiAgQElucHV0KClcbiAgcHVibGljIHNldCB2YWx1ZSh2OiBhbnkpIHtcbiAgICB0aGlzLl92YWx1ZSA9IHZcbiAgfVxuXG4gIHB1YmxpYyBnZXQgdmFsdWUoKTogYW55IHtcbiAgICByZXR1cm4gdGhpcy5fdmFsdWVcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQdWJsaWMgQXBpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHB1YmxpYyBpdGVtQ2xpY2soZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcbiAgICB0aGlzLmNsaWNrZWQubmV4dChuZXcgTmF2SXRlbUNsaWNrZWQoZXZlbnQsIHRoaXMudmFsdWUpKVxuICAgIHRoaXMudG9nZ2xlKClcbiAgICBpZiAodGhpcy52YWx1ZSkge1xuICAgICAgdGhpcy5uYXZMaXN0LnZhbHVlID0gdGhpcy52YWx1ZVxuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyB0b2dnbGUoKTogdm9pZCB7XG4gICAgY29uc3QgbXlTdGF0ZSA9IHRoaXMuc3RhdGUkLmdldFZhbHVlKClcbiAgICB0aGlzLnN0YXRlJC5uZXh0KHsgaXNPcGVuOiAhbXlTdGF0ZS5pc09wZW4gfSlcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQcml2YXRlIG1ldGhvZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByaXZhdGUgZ2V0IGlzQ3VycmVudFZhbHVlQWN0aXZlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLm5hdkxpc3QuaXNBY3RpdmUodGhpcy52YWx1ZSlcbiAgfVxufVxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cInN0YXRlJCB8IGFzeW5jIGFzIHN0YXRlXCI+XG4gIDxkaXYgY2xhc3M9XCJsYXlvdXQtY29sIG5hdi1ncm91cFwiPlxuICAgIDxhXG4gICAgICBtYXRSaXBwbGVcbiAgICAgIGNsYXNzPVwibGF5b3V0LXJvdyBwbGFjZS1zdGFydC1jZW50ZXIgbmF2LWdyb3VwLWJ1dHRvbiBtYXQtYnV0dG9uLWZpbGwgbWRjLWxpc3QtaXRlbSBtZGMtbGlzdC1pdGVtLS13aXRoLW9uZS1saW5lXCJcbiAgICAgIFtjbGFzcy5uYXYtZ3JvdXAtYnV0dG9uLW9wZW5dPVwic3RhdGUuaXNPcGVuXCJcbiAgICAgIFtjbGFzcy5uYXYtZ3JvdXAtYnV0dG9uLWNsb3NlZF09XCIhc3RhdGUuaXNPcGVuXCJcbiAgICAgIFtjbGFzcy5uYXYtZ3JvdXAtYnV0dG9uLWFjdGl2ZV09XCJhY3RpdmUkIHwgYXN5bmNcIlxuICAgICAgKGNsaWNrKT1cIml0ZW1DbGljaygkZXZlbnQpXCJcbiAgICA+XG4gICAgICA8ZGl2IGNsYXNzPVwibGF5b3V0LXJvdyBwbGFjZS1zdGFydC1jZW50ZXIgZ2FwLWxnIGZ1bGwgbm9zZWxlY3QgbWRjLWxpc3QtaXRlbV9fcHJpbWFyeS10ZXh0XCI+XG4gICAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJmbGV4XCI+PC9zcGFuPlxuICAgICAgICA8bWF0LWljb24+e3sgc3RhdGUuaXNPcGVuID8gJ2tleWJvYXJkX2Fycm93X3VwJyA6ICdrZXlib2FyZF9hcnJvd19kb3duJyB9fTwvbWF0LWljb24+XG4gICAgICA8L2Rpdj5cbiAgICA8L2E+XG5cbiAgICA8IS0tIE5lc3RlZCBJdGVtcyBwcm9qZWN0aW9uIC0tPlxuICAgIDxkaXZcbiAgICAgIGNsYXNzPVwibGF5b3V0LWNvbCBuYXYtZ3JvdXAtaXRlbXMtY29udGFpbmVyIHAtc20gZ2FwLXNtXCJcbiAgICAgIFtAb3BlbkNsb3NlXT1cInN0YXRlLmlzT3BlbiA/ICdvcGVuJyA6ICdjbG9zZWQnXCJcbiAgICA+XG4gICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJlbGRlci1uYXYtbGlua1wiPjwvbmctY29udGVudD5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==
|
|
121
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItbmF2LWdyb3VwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvbmF2aWdhdGlvbi9uYXYvbmF2LWdyb3VwL2VsZGVyLW5hdi1ncm91cC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL25hdmlnYXRpb24vbmF2L25hdi1ncm91cC9lbGRlci1uYXYtZ3JvdXAuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsZUFBZSxFQUNmLEtBQUssRUFHTCxNQUFNLEdBRVAsTUFBTSxlQUFlLENBQUE7QUFDdEIsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQTtBQUNoRixPQUFPLEVBQUUscUJBQXFCLEVBQUUsY0FBYyxFQUFFLE1BQU0sc0NBQXNDLENBQUE7QUFDNUYsT0FBTyxFQUFFLGVBQWUsRUFBYyxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUE7QUFFM0QsT0FBTyxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUMvQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sd0JBQXdCLENBQUE7QUFDaEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHdCQUF3QixDQUFBO0FBQ2xELE9BQU8sRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLE1BQU0saUJBQWlCLENBQUE7OztBQW1DakQsTUFBTSxPQUFPLHNCQUFzQjtJQW1CakM7Ozs7Z0ZBSTRFO0lBRTVFLFlBQTZCLE9BQThCO1FBQTlC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VSxDQUFDLGdCQUFnQixFQUFFLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7Z0JBQ2hELFVBQVUsQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO2FBQ2pELENBQUM7U0FDSDs7MkZBS1Usc0JBQXNCO2tCQTdCbEMsU0FBUzsrQkFDRSxpQkFBaUIsY0FHZjt3QkFDVixPQUFPLENBQUMsV0FBVyxFQUFFOzRCQUNuQixLQUFLLENBQ0gsTUFBTSxFQUNOLEtBQUssQ0FBQztnQ0FDSixNQUFNLEVBQUUsR0FBRztnQ0FDWCxPQUFPLEVBQUUsQ0FBQzs2QkFDWCxDQUFDLENBQ0g7NEJBQ0QsS0FBSyxDQUNILFFBQVEsRUFDUixLQUFLLENBQUM7Z0NBQ0osTUFBTSxFQUFFLENBQUM7Z0NBQ1QsT0FBTyxFQUFFLEdBQUc7Z0NBQ1osT0FBTyxFQUFFLENBQUM7NkJBQ1gsQ0FBQyxDQUNIOzRCQUNELFVBQVUsQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDOzRCQUNoRCxVQUFVLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQzt5QkFDakQsQ0FBQztxQkFDSCxtQkFDZ0IsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJLFdBQ1AsQ0FBQyxJQUFJLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxTQUFTLENBQUM7MEZBVXZDLFFBQVE7c0JBRGQsZUFBZTt1QkFBQyxxQkFBcUI7Z0JBTXRCLE9BQU87c0JBRHRCLE1BQU07Z0JBa0RJLEtBQUs7c0JBRGYsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIENvbnRlbnRDaGlsZHJlbixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBPdXRwdXQsXG4gIFF1ZXJ5TGlzdCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IGFuaW1hdGUsIHN0YXRlLCBzdHlsZSwgdHJhbnNpdGlvbiwgdHJpZ2dlciB9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnXG5pbXBvcnQgeyBFbGRlck5hdkxpbmtDb21wb25lbnQsIE5hdkl0ZW1DbGlja2VkIH0gZnJvbSAnLi4vbmF2LWxpbmsvZWxkZXItbmF2LWxpbmsuY29tcG9uZW50J1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlLCBTdWJqZWN0IH0gZnJvbSAncnhqcydcbmltcG9ydCB7IEVsZGVyTmF2TGlzdENvbXBvbmVudCB9IGZyb20gJy4uL25hdi1saXN0L2VsZGVyLW5hdi1saXN0LmNvbXBvbmVudCdcbmltcG9ydCB7IG1hcCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnXG5pbXBvcnQgeyBNYXRJY29uIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbidcbmltcG9ydCB7IE1hdFJpcHBsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NvcmUnXG5pbXBvcnQgeyBOZ0lmLCBBc3luY1BpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nXG5cbmludGVyZmFjZSBOYXZHcm91cFN0YXRlIHtcbiAgaXNPcGVuOiBib29sZWFuXG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2VsZGVyLW5hdi1ncm91cCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9lbGRlci1uYXYtZ3JvdXAuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9lbGRlci1uYXYtZ3JvdXAuY29tcG9uZW50LnNjc3MnXSxcbiAgYW5pbWF0aW9uczogW1xuICAgIHRyaWdnZXIoJ29wZW5DbG9zZScsIFtcbiAgICAgIHN0YXRlKFxuICAgICAgICAnb3BlbicsXG4gICAgICAgIHN0eWxlKHtcbiAgICAgICAgICBoZWlnaHQ6ICcqJyxcbiAgICAgICAgICBvcGFjaXR5OiAxLFxuICAgICAgICB9KVxuICAgICAgKSxcbiAgICAgIHN0YXRlKFxuICAgICAgICAnY2xvc2VkJyxcbiAgICAgICAgc3R5bGUoe1xuICAgICAgICAgIGhlaWdodDogMCxcbiAgICAgICAgICBvcGFjaXR5OiAwLjUsXG4gICAgICAgICAgcGFkZGluZzogMCxcbiAgICAgICAgfSlcbiAgICAgICksXG4gICAgICB0cmFuc2l0aW9uKCdvcGVuID0+IGNsb3NlZCcsIFthbmltYXRlKCcyMDBtcycpXSksXG4gICAgICB0cmFuc2l0aW9uKCdjbG9zZWQgPT4gb3BlbicsIFthbmltYXRlKCcyMDBtcycpXSksXG4gICAgXSksXG4gIF0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbTmdJZiwgTWF0UmlwcGxlLCBNYXRJY29uLCBBc3luY1BpcGVdLFxufSlcbmV4cG9ydCBjbGFzcyBFbGRlck5hdkdyb3VwQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogRmllbGRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBAQ29udGVudENoaWxkcmVuKEVsZGVyTmF2TGlua0NvbXBvbmVudClcbiAgcHVibGljIGNoaWxkcmVuOiBRdWVyeUxpc3Q8RWxkZXJOYXZMaW5rQ29tcG9uZW50PlxuXG4gIHB1YmxpYyByZWFkb25seSBzdGF0ZSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PE5hdkdyb3VwU3RhdGU+KHsgaXNPcGVuOiBmYWxzZSB9KVxuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgcmVhZG9ubHkgY2xpY2tlZCA9IG5ldyBTdWJqZWN0PE5hdkl0ZW1DbGlja2VkPigpXG5cbiAgcHJpdmF0ZSByZWFkb25seSBkZXN0cm95JCA9IG5ldyBTdWJqZWN0PHZvaWQ+KClcbiAgcHJpdmF0ZSByZWFkb25seSBfYWN0aXZlJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpXG4gIHByaXZhdGUgX3ZhbHVlOiBhbnlcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogQ29uc3RydWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IG5hdkxpc3Q6IEVsZGVyTmF2TGlzdENvbXBvbmVudCkge31cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogTGlmZSBDeWNsZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5uYXZMaXN0LnZhbHVlQ2hhbmdlXG4gICAgICAucGlwZShcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuZGVzdHJveSQpLFxuICAgICAgICBtYXAoKHZhbHVlKSA9PiB0aGlzLmlzQ3VycmVudFZhbHVlQWN0aXZlKVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgoYWN0aXZlKSA9PiB0aGlzLl9hY3RpdmUkLm5leHQoYWN0aXZlKSlcblxuICAgIGlmICh0aGlzLnZhbHVlKSB7XG4gICAgICB0aGlzLl9hY3RpdmUkLm5leHQodGhpcy5pc0N1cnJlbnRWYWx1ZUFjdGl2ZSlcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5kZXN0cm95JC5uZXh0KClcbiAgICB0aGlzLmRlc3Ryb3kkLmNvbXBsZXRlKClcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQcm9wZXJ0aWVzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHB1YmxpYyBnZXQgYWN0aXZlJCgpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5fYWN0aXZlJFxuICB9XG5cbiAgQElucHV0KClcbiAgcHVibGljIHNldCB2YWx1ZSh2OiBhbnkpIHtcbiAgICB0aGlzLl92YWx1ZSA9IHZcbiAgfVxuXG4gIHB1YmxpYyBnZXQgdmFsdWUoKTogYW55IHtcbiAgICByZXR1cm4gdGhpcy5fdmFsdWVcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQdWJsaWMgQXBpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHB1YmxpYyBpdGVtQ2xpY2soZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcbiAgICB0aGlzLmNsaWNrZWQubmV4dChuZXcgTmF2SXRlbUNsaWNrZWQoZXZlbnQsIHRoaXMudmFsdWUpKVxuICAgIHRoaXMudG9nZ2xlKClcbiAgICBpZiAodGhpcy52YWx1ZSkge1xuICAgICAgdGhpcy5uYXZMaXN0LnZhbHVlID0gdGhpcy52YWx1ZVxuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyB0b2dnbGUoKTogdm9pZCB7XG4gICAgY29uc3QgbXlTdGF0ZSA9IHRoaXMuc3RhdGUkLmdldFZhbHVlKClcbiAgICB0aGlzLnN0YXRlJC5uZXh0KHsgaXNPcGVuOiAhbXlTdGF0ZS5pc09wZW4gfSlcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQcml2YXRlIG1ldGhvZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByaXZhdGUgZ2V0IGlzQ3VycmVudFZhbHVlQWN0aXZlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLm5hdkxpc3QuaXNBY3RpdmUodGhpcy52YWx1ZSlcbiAgfVxufVxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cInN0YXRlJCB8IGFzeW5jIGFzIHN0YXRlXCI+XG4gIDxkaXYgY2xhc3M9XCJsYXlvdXQtY29sIG5hdi1ncm91cFwiPlxuICAgIDxhXG4gICAgICBtYXRSaXBwbGVcbiAgICAgIGNsYXNzPVwibGF5b3V0LXJvdyBwbGFjZS1zdGFydC1jZW50ZXIgbmF2LWdyb3VwLWJ1dHRvbiBtYXQtYnV0dG9uLWZpbGwgbWRjLWxpc3QtaXRlbSBtZGMtbGlzdC1pdGVtLS13aXRoLW9uZS1saW5lXCJcbiAgICAgIFtjbGFzcy5uYXYtZ3JvdXAtYnV0dG9uLW9wZW5dPVwic3RhdGUuaXNPcGVuXCJcbiAgICAgIFtjbGFzcy5uYXYtZ3JvdXAtYnV0dG9uLWNsb3NlZF09XCIhc3RhdGUuaXNPcGVuXCJcbiAgICAgIFtjbGFzcy5uYXYtZ3JvdXAtYnV0dG9uLWFjdGl2ZV09XCJhY3RpdmUkIHwgYXN5bmNcIlxuICAgICAgKGNsaWNrKT1cIml0ZW1DbGljaygkZXZlbnQpXCJcbiAgICA+XG4gICAgICA8ZGl2IGNsYXNzPVwibGF5b3V0LXJvdyBwbGFjZS1zdGFydC1jZW50ZXIgZ2FwLWxnIGZ1bGwgbm9zZWxlY3QgbWRjLWxpc3QtaXRlbV9fcHJpbWFyeS10ZXh0XCI+XG4gICAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJmbGV4XCI+PC9zcGFuPlxuICAgICAgICA8bWF0LWljb24+e3sgc3RhdGUuaXNPcGVuID8gJ2tleWJvYXJkX2Fycm93X3VwJyA6ICdrZXlib2FyZF9hcnJvd19kb3duJyB9fTwvbWF0LWljb24+XG4gICAgICA8L2Rpdj5cbiAgICA8L2E+XG5cbiAgICA8IS0tIE5lc3RlZCBJdGVtcyBwcm9qZWN0aW9uIC0tPlxuICAgIDxkaXZcbiAgICAgIGNsYXNzPVwibGF5b3V0LWNvbCBuYXYtZ3JvdXAtaXRlbXMtY29udGFpbmVyIHAtc20gZ2FwLXNtXCJcbiAgICAgIFtAb3BlbkNsb3NlXT1cInN0YXRlLmlzT3BlbiA/ICdvcGVuJyA6ICdjbG9zZWQnXCJcbiAgICA+XG4gICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJlbGRlci1uYXYtbGlua1wiPjwvbmctY29udGVudD5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==
|