@elderbyte/ngx-starter 14.4.0-beta.15 → 14.4.0-beta.16
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/esm2020/lib/components/forms/search/search-box/elder-search-box.component.mjs +6 -4
- package/fesm2015/elderbyte-ngx-starter.mjs +5 -3
- package/fesm2015/elderbyte-ngx-starter.mjs.map +1 -1
- package/fesm2020/elderbyte-ngx-starter.mjs +5 -3
- package/fesm2020/elderbyte-ngx-starter.mjs.map +1 -1
- package/lib/components/forms/search/search-box/elder-search-box.component.d.ts +2 -1
- package/package.json +1 -1
- package/theming/_elder-common.scss +4 -0
|
@@ -52,7 +52,7 @@ export class ElderSearchBoxComponent {
|
|
|
52
52
|
this.autoPanel = true;
|
|
53
53
|
this.name = 'searchExpression';
|
|
54
54
|
this.queryKey = 'query';
|
|
55
|
-
this._dense =
|
|
55
|
+
this._dense = true;
|
|
56
56
|
this.autocomplete = 'off';
|
|
57
57
|
}
|
|
58
58
|
/***************************************************************************
|
|
@@ -94,10 +94,10 @@ export class ElderSearchBoxComponent {
|
|
|
94
94
|
}
|
|
95
95
|
}
|
|
96
96
|
ElderSearchBoxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.6", ngImport: i0, type: ElderSearchBoxComponent, deps: [{ token: i1.ElderSearchContextDirective }], target: i0.ɵɵFactoryTarget.Component });
|
|
97
|
-
ElderSearchBoxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.6", type: ElderSearchBoxComponent, selector: "elder-search-box", inputs: { autoPanel: "autoPanel", name: "name", queryKey: "queryKey", placeholder: "placeholder", hint: "hint", autocomplete: "autocomplete", dense: "dense" }, queries: [{ propertyName: "advancedSearch", first: true, predicate: ElderSearchPanelComponent, descendants: true }], viewQueries: [{ propertyName: "search", first: true, predicate: ["search"], descendants: true }], exportAs: ["elderSearchBox"], ngImport: i0, template: "<div fxLayout=\"row\" fxFlex>\n\n <!-- Main search input -->\n <mat-form-field\n *ngIf=\"overlayState$ | async as overlayState\"\n fxFlex=\"grow\" fxFlexAlign=\"center\"\n [elderDense]=\"dense\">\n\n <
|
|
97
|
+
ElderSearchBoxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.6", type: ElderSearchBoxComponent, selector: "elder-search-box", inputs: { autoPanel: "autoPanel", name: "name", queryKey: "queryKey", placeholder: "placeholder", label: "label", hint: "hint", autocomplete: "autocomplete", dense: "dense" }, queries: [{ propertyName: "advancedSearch", first: true, predicate: ElderSearchPanelComponent, descendants: true }], viewQueries: [{ propertyName: "search", first: true, predicate: ["search"], descendants: true }], exportAs: ["elderSearchBox"], ngImport: i0, template: "<div fxLayout=\"row\" fxFlex>\n\n <!-- Main search input -->\n <mat-form-field\n *ngIf=\"overlayState$ | async as overlayState\"\n fxFlex=\"grow\" fxFlexAlign=\"center\"\n [elderDense]=\"dense\">\n\n <button matPrefix mat-icon-button type=\"button\"\n [elderOverlayTrigger]=\"searchPanel\" (click)=\"blurFocus($event)\"\n >\n <mat-icon>search</mat-icon>\n </button>\n\n <input matInput type=\"text\" [name]=\"name\" [placeholder]=\"placeholder\" #search cdkFocusInitial\n ngModel\n elderSearchInput [elderSearchInputKey]=\"queryKey\" #searchInput=\"elderSearchInput\"\n [autocomplete]=\"(autoPanel && overlayState.hasOverlay) ? 'off' : autocomplete\"\n [elderOverlayOrigin]=\"searchPanel\"\n [elderOverlayTrigger]=\"searchPanel\"\n [elderOverlayTriggerType]=\"'focus'\"\n [elderOverlayTriggerEnabled]=\"autoPanel && overlayState.hasOverlay && (searchInput?.state$ | async)?.pristine\"\n >\n <mat-hint *ngIf=\"hint\">{{hint}}</mat-hint>\n\n <div fxLayout=\"row\" matSuffix *ngIf=\"searchModel.userDefinedAttributes$ | async as userDefinedFilters\">\n\n <button mat-icon-button type=\"button\"\n *ngIf=\"userDefinedFilters.length > 0\"\n (click)=\"clearSearch($event)\"\n name=\"clear\" aria-label=\"Clear\">\n <mat-icon>close</mat-icon>\n </button>\n\n <button mat-icon-button type=\"button\"\n *ngIf=\"overlayState.hasOverlay\" name=\"openPanel\"\n [matBadge]=\"userDefinedFilters.length\"\n [matBadgeHidden]=\"userDefinedFilters.length == 0\"\n matBadgeColor=\"accent\"\n [elderOverlayTrigger]=\"searchPanel\" (click)=\"blurFocus($event)\">\n <mat-icon [color]=\"userDefinedFilters.length > 0 ? 'accent' : undefined\">filter_list</mat-icon>\n </button>\n\n </div>\n </mat-form-field>\n</div>\n\n\n<!-- Overlay Panel for advanced search -->\n<elder-overlay #searchPanel=\"elderOverlay\">\n <elder-card-panel class=\"elder-search-panel\">\n\n <!-- Project the users search inputs here -->\n <ng-content select=\"elder-search-panel\"></ng-content>\n\n <div fxLayout=\"row\" fxLayoutAlign=\"space-between center\">\n <button mat-raised-button type=\"button\" name=\"clear\"\n (click)=\"clearSearch($event)\">{{'context.reset' | translate}}\n </button>\n\n <button mat-raised-button type=\"button\" name=\"ok\" color=\"primary\"\n (click)=\"searchPanel.closeOverlay()\">Ok\n </button>\n </div>\n </elder-card-panel>\n</elder-overlay>\n", styles: [".elder-search-panel{min-width:250px}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.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: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i4.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i4.MatPrefix, selector: "[matPrefix]" }, { kind: "directive", type: i4.MatSuffix, selector: "[matSuffix]" }, { kind: "directive", type: i5.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: "component", type: i6.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i8.MatBadge, selector: "[matBadge]", inputs: ["matBadgeDisabled", "matBadgeColor", "matBadgeOverlap", "matBadgePosition", "matBadge", "matBadgeDescription", "matBadgeSize", "matBadgeHidden"] }, { kind: "component", type: i9.ElderOverlayComponent, selector: "elder-overlay", inputs: ["originX", "originY", "overlayX", "overlayY", "offsetY", "offsetX", "backdrop", "backdropVisible", "origin", "positionStrategy", "overlaySize"], outputs: ["keydownEvents", "attachedChange"], exportAs: ["elderOverlay"] }, { kind: "directive", type: i10.ElderOverlayTriggerDirective, selector: "[elderOverlayTrigger]", inputs: ["elderOverlayTrigger", "elderOverlayTriggerType", "elderOverlayTriggerEnabled"] }, { kind: "directive", type: i11.ElderOverlayOriginDirective, selector: "[elderOverlayOrigin]", inputs: ["elderOverlayOrigin"] }, { kind: "component", type: i12.ElderCardPanelComponent, selector: "elder-card-panel" }, { kind: "directive", type: i13.ElderFormFieldDenseDirective, selector: "mat-form-field[elderDense]", inputs: ["elderDense"] }, { kind: "directive", type: i14.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i14.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { kind: "directive", type: i14.DefaultFlexAlignDirective, selector: " [fxFlexAlign], [fxFlexAlign.xs], [fxFlexAlign.sm], [fxFlexAlign.md], [fxFlexAlign.lg], [fxFlexAlign.xl], [fxFlexAlign.lt-sm], [fxFlexAlign.lt-md], [fxFlexAlign.lt-lg], [fxFlexAlign.lt-xl], [fxFlexAlign.gt-xs], [fxFlexAlign.gt-sm], [fxFlexAlign.gt-md], [fxFlexAlign.gt-lg]", inputs: ["fxFlexAlign", "fxFlexAlign.xs", "fxFlexAlign.sm", "fxFlexAlign.md", "fxFlexAlign.lg", "fxFlexAlign.xl", "fxFlexAlign.lt-sm", "fxFlexAlign.lt-md", "fxFlexAlign.lt-lg", "fxFlexAlign.lt-xl", "fxFlexAlign.gt-xs", "fxFlexAlign.gt-sm", "fxFlexAlign.gt-md", "fxFlexAlign.gt-lg"] }, { kind: "directive", type: i14.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { kind: "directive", type: i15.ElderSearchInputDirective, selector: "[elderSearchInput]", inputs: ["elderSearchInputKey", "elderSearchInputTransform", "elderSearchInput", "elderSearchInputFallback"], exportAs: ["elderSearchInput"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: i16.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
98
98
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.6", ngImport: i0, type: ElderSearchBoxComponent, decorators: [{
|
|
99
99
|
type: Component,
|
|
100
|
-
args: [{ selector: 'elder-search-box', exportAs: 'elderSearchBox', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div fxLayout=\"row\" fxFlex>\n\n <!-- Main search input -->\n <mat-form-field\n *ngIf=\"overlayState$ | async as overlayState\"\n fxFlex=\"grow\" fxFlexAlign=\"center\"\n [elderDense]=\"dense\">\n\n <
|
|
100
|
+
args: [{ selector: 'elder-search-box', exportAs: 'elderSearchBox', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div fxLayout=\"row\" fxFlex>\n\n <!-- Main search input -->\n <mat-form-field\n *ngIf=\"overlayState$ | async as overlayState\"\n fxFlex=\"grow\" fxFlexAlign=\"center\"\n [elderDense]=\"dense\">\n\n <button matPrefix mat-icon-button type=\"button\"\n [elderOverlayTrigger]=\"searchPanel\" (click)=\"blurFocus($event)\"\n >\n <mat-icon>search</mat-icon>\n </button>\n\n <input matInput type=\"text\" [name]=\"name\" [placeholder]=\"placeholder\" #search cdkFocusInitial\n ngModel\n elderSearchInput [elderSearchInputKey]=\"queryKey\" #searchInput=\"elderSearchInput\"\n [autocomplete]=\"(autoPanel && overlayState.hasOverlay) ? 'off' : autocomplete\"\n [elderOverlayOrigin]=\"searchPanel\"\n [elderOverlayTrigger]=\"searchPanel\"\n [elderOverlayTriggerType]=\"'focus'\"\n [elderOverlayTriggerEnabled]=\"autoPanel && overlayState.hasOverlay && (searchInput?.state$ | async)?.pristine\"\n >\n <mat-hint *ngIf=\"hint\">{{hint}}</mat-hint>\n\n <div fxLayout=\"row\" matSuffix *ngIf=\"searchModel.userDefinedAttributes$ | async as userDefinedFilters\">\n\n <button mat-icon-button type=\"button\"\n *ngIf=\"userDefinedFilters.length > 0\"\n (click)=\"clearSearch($event)\"\n name=\"clear\" aria-label=\"Clear\">\n <mat-icon>close</mat-icon>\n </button>\n\n <button mat-icon-button type=\"button\"\n *ngIf=\"overlayState.hasOverlay\" name=\"openPanel\"\n [matBadge]=\"userDefinedFilters.length\"\n [matBadgeHidden]=\"userDefinedFilters.length == 0\"\n matBadgeColor=\"accent\"\n [elderOverlayTrigger]=\"searchPanel\" (click)=\"blurFocus($event)\">\n <mat-icon [color]=\"userDefinedFilters.length > 0 ? 'accent' : undefined\">filter_list</mat-icon>\n </button>\n\n </div>\n </mat-form-field>\n</div>\n\n\n<!-- Overlay Panel for advanced search -->\n<elder-overlay #searchPanel=\"elderOverlay\">\n <elder-card-panel class=\"elder-search-panel\">\n\n <!-- Project the users search inputs here -->\n <ng-content select=\"elder-search-panel\"></ng-content>\n\n <div fxLayout=\"row\" fxLayoutAlign=\"space-between center\">\n <button mat-raised-button type=\"button\" name=\"clear\"\n (click)=\"clearSearch($event)\">{{'context.reset' | translate}}\n </button>\n\n <button mat-raised-button type=\"button\" name=\"ok\" color=\"primary\"\n (click)=\"searchPanel.closeOverlay()\">Ok\n </button>\n </div>\n </elder-card-panel>\n</elder-overlay>\n", styles: [".elder-search-panel{min-width:250px}\n"] }]
|
|
101
101
|
}], ctorParameters: function () { return [{ type: i1.ElderSearchContextDirective }]; }, propDecorators: { search: [{
|
|
102
102
|
type: ViewChild,
|
|
103
103
|
args: ['search']
|
|
@@ -112,6 +112,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.6", ngImpor
|
|
|
112
112
|
type: Input
|
|
113
113
|
}], placeholder: [{
|
|
114
114
|
type: Input
|
|
115
|
+
}], label: [{
|
|
116
|
+
type: Input
|
|
115
117
|
}], hint: [{
|
|
116
118
|
type: Input
|
|
117
119
|
}], autocomplete: [{
|
|
@@ -119,4 +121,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.6", ngImpor
|
|
|
119
121
|
}], dense: [{
|
|
120
122
|
type: Input
|
|
121
123
|
}] } });
|
|
122
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItc2VhcmNoLWJveC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm1zL3NlYXJjaC9zZWFyY2gtYm94L2VsZGVyLXNlYXJjaC1ib3guY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9mb3Jtcy9zZWFyY2gvc2VhcmNoLWJveC9lbGRlci1zZWFyY2gtYm94LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDNEIsdUJBQXVCLEVBQ3hELFNBQVMsRUFBRSxZQUFZLEVBQ1gsS0FBSyxFQUVqQixTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRXJELE9BQU8sRUFBQyx5QkFBeUIsRUFBQyxNQUFNLGdDQUFnQyxDQUFDO0FBQ3pFLE9BQU8sRUFBQyxlQUFlLEVBQUUsT0FBTyxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQzlDLE9BQU8sRUFBQyxxQkFBcUIsRUFBQyxNQUFNLHVCQUF1QixDQUFDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFHNUQsTUFBTSxPQUFPLFlBQVk7SUFDdkIsWUFDUyxVQUFtQjtRQUFuQixlQUFVLEdBQVYsVUFBVSxDQUFTO0lBQ3hCLENBQUM7Q0FDTjtBQVVELE1BQU0sT0FBTyx1QkFBdUI7SUFnRGxDOzs7O2dGQUk0RTtJQUU1RSxZQUNrQixXQUF3QztRQUF4QyxnQkFBVyxHQUFYLFdBQVcsQ0FBNkI7UUFyRDFEOzs7O29GQUk0RTtRQUUzRCxXQUFNLEdBQUcsYUFBYSxDQUFDLFNBQVMsQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO1FBRTVELGlCQUFZLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQU9wQyxrQkFBYSxHQUFHLElBQUksZUFBZSxDQUFlLElBQUksWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFFM0Y7Ozs7b0ZBSTRFO1FBRTVFOztXQUVHO1FBRUksY0FBUyxHQUFHLElBQUksQ0FBQztRQUdqQixTQUFJLEdBQUcsa0JBQWtCLENBQUM7UUFHMUIsYUFBUSxHQUFHLE9BQU8sQ0FBQztRQVFsQixXQUFNLEdBQUcsS0FBSyxDQUFDO1FBR2hCLGlCQUFZLEdBQUcsS0FBSyxDQUFDO0lBVzVCLENBQUM7SUFFRDs7OztnRkFJNEU7SUFFckUsUUFBUTtJQUVmLENBQUM7SUFFTSxlQUFlO0lBRXRCLENBQUM7SUFHTSxrQkFBa0I7UUFDdkIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsSUFBSSxZQUFZLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDO0lBQ25FLENBQUM7SUFFTSxXQUFXO1FBQ2hCLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDekIsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUMvQixDQUFDO0lBRUQ7Ozs7Z0ZBSTRFO0lBRTVFLElBQ1csS0FBSyxDQUFDLEtBQWMsSUFBSSxJQUFJLENBQUMsTUFBTSxHQUFHLHFCQUFxQixDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNoRixJQUFXLEtBQUssS0FBYyxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO0lBR25EOzs7O2dGQUk0RTtJQUVyRSxTQUFTLENBQUMsS0FBVTtRQUN6QixVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDeEQsQ0FBQztJQUVEOztPQUVHO0lBQ0ksV0FBVyxDQUFDLEtBQVU7UUFDM0IsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUMzQixDQUFDOztvSEE3R1UsdUJBQXVCO3dHQUF2Qix1QkFBdUIsb1FBZXBCLHlCQUF5QixnTEMzQ3pDLGlwRkFxRUE7MkZEekNhLHVCQUF1QjtrQkFQbkMsU0FBUzsrQkFDRSxrQkFBa0IsWUFDbEIsZ0JBQWdCLG1CQUdULHVCQUF1QixDQUFDLE1BQU07a0hBZTFCLE1BQU07c0JBQTFCLFNBQVM7dUJBQUMsUUFBUTtnQkFFc0IsY0FBYztzQkFBdEQsWUFBWTt1QkFBQyx5QkFBeUI7Z0JBY2hDLFNBQVM7c0JBRGYsS0FBSztnQkFJQyxJQUFJO3NCQURWLEtBQUs7Z0JBSUMsUUFBUTtzQkFEZCxLQUFLO2dCQUlDLFdBQVc7c0JBRGpCLEtBQUs7Z0JBSUMsSUFBSTtzQkFEVixLQUFLO2dCQU1DLFlBQVk7c0JBRGxCLEtBQUs7Z0JBNkNLLEtBQUs7c0JBRGYsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFmdGVyQ29udGVudEluaXQsIEFmdGVyVmlld0luaXQsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsIENvbnRlbnRDaGlsZCxcbiAgRWxlbWVudFJlZiwgSW5wdXQsIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBWaWV3Q2hpbGQsIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IExvZ2dlckZhY3RvcnkgfSBmcm9tICdAZWxkZXJieXRlL3RzLWxvZ2dlcic7XG5pbXBvcnQge0VsZGVyU2VhcmNoQ29udGV4dERpcmVjdGl2ZX0gZnJvbSAnLi4vZWxkZXItc2VhcmNoLWNvbnRleHQuZGlyZWN0aXZlJztcbmltcG9ydCB7RWxkZXJTZWFyY2hQYW5lbENvbXBvbmVudH0gZnJvbSAnLi9lbGRlci1zZWFyY2gtcGFuZWwuY29tcG9uZW50JztcbmltcG9ydCB7QmVoYXZpb3JTdWJqZWN0LCBTdWJqZWN0fSBmcm9tICdyeGpzJztcbmltcG9ydCB7Y29lcmNlQm9vbGVhblByb3BlcnR5fSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nO1xuXG5cbmV4cG9ydCBjbGFzcyBPdmVybGF5U3RhdGUge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgaGFzT3ZlcmxheTogYm9vbGVhblxuICApIHsgfVxufVxuXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2VsZGVyLXNlYXJjaC1ib3gnLFxuICBleHBvcnRBczogJ2VsZGVyU2VhcmNoQm94JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2VsZGVyLXNlYXJjaC1ib3guY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9lbGRlci1zZWFyY2gtYm94LmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIEVsZGVyU2VhcmNoQm94Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3ksIEFmdGVyVmlld0luaXQsIEFmdGVyQ29udGVudEluaXQge1xuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBGaWVsZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgbG9nZ2VyID0gTG9nZ2VyRmFjdG9yeS5nZXRMb2dnZXIoJ0VsZGVyU2VhcmNoQm94Q29tcG9uZW50Jyk7XG5cbiAgcHJpdmF0ZSByZWFkb25seSB1bnN1YnNjcmliZSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIC8vIFRoZSBzZWFyY2ggZXhwcmVzc2lvbiBpbnB1dCBFbGVtZW50XG4gIEBWaWV3Q2hpbGQoJ3NlYXJjaCcpIHNlYXJjaDogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PjtcblxuICBAQ29udGVudENoaWxkKEVsZGVyU2VhcmNoUGFuZWxDb21wb25lbnQpIGFkdmFuY2VkU2VhcmNoOiBFbGRlclNlYXJjaFBhbmVsQ29tcG9uZW50O1xuXG4gIHB1YmxpYyByZWFkb25seSBvdmVybGF5U3RhdGUkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxPdmVybGF5U3RhdGU+KG5ldyBPdmVybGF5U3RhdGUoZmFsc2UpKTtcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHVibGljIEFQSSBGaWVsZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICAvKipcbiAgICogRGlzcGxheSB0aGUgc2VhcmNoIHBhbmVsIGltbWVkaWF0ZWx5IHdoZW4gdGhlIHVzZXIgZW50ZXJzIHRoZSBzZWFyY2ggYm94LlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIGF1dG9QYW5lbCA9IHRydWU7XG5cbiAgQElucHV0KClcbiAgcHVibGljIG5hbWUgPSAnc2VhcmNoRXhwcmVzc2lvbic7XG5cbiAgQElucHV0KClcbiAgcHVibGljIHF1ZXJ5S2V5ID0gJ3F1ZXJ5JztcblxuICBASW5wdXQoKVxuICBwdWJsaWMgcGxhY2Vob2xkZXI6IHN0cmluZztcblxuICBASW5wdXQoKVxuICBwdWJsaWMgaGludDogc3RyaW5nO1xuXG4gIHByaXZhdGUgX2RlbnNlID0gZmFsc2U7XG5cbiAgQElucHV0KClcbiAgcHVibGljIGF1dG9jb21wbGV0ZSA9ICdvZmYnO1xuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBDb25zdHJ1Y3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyByZWFkb25seSBzZWFyY2hNb2RlbDogRWxkZXJTZWFyY2hDb250ZXh0RGlyZWN0aXZlLFxuICApIHtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBMaWZlIEN5Y2xlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcblxuICB9XG5cbiAgcHVibGljIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcblxuICB9XG5cblxuICBwdWJsaWMgbmdBZnRlckNvbnRlbnRJbml0KCk6IHZvaWQge1xuICAgIHRoaXMub3ZlcmxheVN0YXRlJC5uZXh0KG5ldyBPdmVybGF5U3RhdGUoISF0aGlzLmFkdmFuY2VkU2VhcmNoKSk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy51bnN1YnNjcmliZSQubmV4dCgpO1xuICAgIHRoaXMudW5zdWJzY3JpYmUkLmNvbXBsZXRlKCk7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJvcGVydGllcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGRlbnNlKHZhbHVlOiBib29sZWFuKSB7IHRoaXMuX2RlbnNlID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTsgfVxuICBwdWJsaWMgZ2V0IGRlbnNlKCk6IGJvb2xlYW4geyByZXR1cm4gdGhpcy5fZGVuc2U7IH1cblxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQdWJsaWMgQVBJICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHB1YmxpYyBibHVyRm9jdXMoZXZlbnQ6IGFueSk6IHZvaWQge1xuICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy5zZWFyY2gubmF0aXZlRWxlbWVudC5ibHVyKCksIDApO1xuICB9XG5cbiAgLyoqXG4gICAqIE9jY3VycyB3aGVuIHRoZSB1c2VyIGNsaWNrcyB0aGUgY2xlYXIgc2VhcmNoIGJ1dHRvblxuICAgKi9cbiAgcHVibGljIGNsZWFyU2VhcmNoKGV2ZW50OiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLnNlYXJjaE1vZGVsLnJlc2V0KCk7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJpdmF0ZSBtZXRob2RzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxufVxuIiwiPGRpdiBmeExheW91dD1cInJvd1wiIGZ4RmxleD5cblxuICA8IS0tIE1haW4gc2VhcmNoIGlucHV0IC0tPlxuICA8bWF0LWZvcm0tZmllbGRcbiAgICAqbmdJZj1cIm92ZXJsYXlTdGF0ZSQgfCBhc3luYyBhcyBvdmVybGF5U3RhdGVcIlxuICAgIGZ4RmxleD1cImdyb3dcIiBmeEZsZXhBbGlnbj1cImNlbnRlclwiXG4gICAgW2VsZGVyRGVuc2VdPVwiZGVuc2VcIj5cblxuICAgIDxkaXYgZnhMYXlvdXQ9XCJyb3dcIiBtYXRQcmVmaXg+XG4gICAgICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgW2VsZGVyT3ZlcmxheVRyaWdnZXJdPVwic2VhcmNoUGFuZWxcIiAoY2xpY2spPVwiYmx1ckZvY3VzKCRldmVudClcIlxuICAgICAgPlxuICAgICAgICA8bWF0LWljb24+c2VhcmNoPC9tYXQtaWNvbj5cbiAgICAgIDwvYnV0dG9uPlxuICAgIDwvZGl2PlxuXG4gICAgPGlucHV0IG1hdElucHV0IHR5cGU9XCJ0ZXh0XCIgW25hbWVdPVwibmFtZVwiIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiICNzZWFyY2ggY2RrRm9jdXNJbml0aWFsXG4gICAgICAgICAgIG5nTW9kZWxcbiAgICAgICAgICAgZWxkZXJTZWFyY2hJbnB1dCBbZWxkZXJTZWFyY2hJbnB1dEtleV09XCJxdWVyeUtleVwiICNzZWFyY2hJbnB1dD1cImVsZGVyU2VhcmNoSW5wdXRcIlxuICAgICAgICAgICBbYXV0b2NvbXBsZXRlXT1cIihhdXRvUGFuZWwgJiYgb3ZlcmxheVN0YXRlLmhhc092ZXJsYXkpID8gJ29mZicgOiBhdXRvY29tcGxldGVcIlxuICAgICAgICAgICBbZWxkZXJPdmVybGF5T3JpZ2luXT1cInNlYXJjaFBhbmVsXCJcbiAgICAgICAgICAgW2VsZGVyT3ZlcmxheVRyaWdnZXJdPVwic2VhcmNoUGFuZWxcIlxuICAgICAgICAgICBbZWxkZXJPdmVybGF5VHJpZ2dlclR5cGVdPVwiJ2ZvY3VzJ1wiXG4gICAgICAgICAgIFtlbGRlck92ZXJsYXlUcmlnZ2VyRW5hYmxlZF09XCJhdXRvUGFuZWwgJiYgb3ZlcmxheVN0YXRlLmhhc092ZXJsYXkgJiYgKHNlYXJjaElucHV0Py5zdGF0ZSQgfCBhc3luYyk/LnByaXN0aW5lXCJcbiAgICA+XG4gICAgPG1hdC1oaW50ICpuZ0lmPVwiaGludFwiPnt7aGludH19PC9tYXQtaGludD5cblxuICAgIDxkaXYgZnhMYXlvdXQ9XCJyb3dcIiBtYXRTdWZmaXggKm5nSWY9XCJzZWFyY2hNb2RlbC51c2VyRGVmaW5lZEF0dHJpYnV0ZXMkIHwgYXN5bmMgYXMgdXNlckRlZmluZWRGaWx0ZXJzXCI+XG5cbiAgICAgIDxidXR0b24gbWF0LWljb24tYnV0dG9uIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICAqbmdJZj1cInVzZXJEZWZpbmVkRmlsdGVycy5sZW5ndGggPiAwXCJcbiAgICAgICAgICAgICAgKGNsaWNrKT1cImNsZWFyU2VhcmNoKCRldmVudClcIlxuICAgICAgICAgICAgICBuYW1lPVwiY2xlYXJcIiBhcmlhLWxhYmVsPVwiQ2xlYXJcIj5cbiAgICAgICAgPG1hdC1pY29uPmNsb3NlPC9tYXQtaWNvbj5cbiAgICAgIDwvYnV0dG9uPlxuXG4gICAgICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgKm5nSWY9XCJvdmVybGF5U3RhdGUuaGFzT3ZlcmxheVwiIG5hbWU9XCJvcGVuUGFuZWxcIlxuICAgICAgICAgICAgICBbbWF0QmFkZ2VdPVwidXNlckRlZmluZWRGaWx0ZXJzLmxlbmd0aFwiXG4gICAgICAgICAgICAgIFttYXRCYWRnZUhpZGRlbl09XCJ1c2VyRGVmaW5lZEZpbHRlcnMubGVuZ3RoID09IDBcIlxuICAgICAgICAgICAgICBtYXRCYWRnZUNvbG9yPVwiYWNjZW50XCJcbiAgICAgICAgICAgICAgW2VsZGVyT3ZlcmxheVRyaWdnZXJdPVwic2VhcmNoUGFuZWxcIiAoY2xpY2spPVwiYmx1ckZvY3VzKCRldmVudClcIj5cblxuICAgICAgICA8bWF0LWljb24gW2NvbG9yXT1cInVzZXJEZWZpbmVkRmlsdGVycy5sZW5ndGggPiAwID8gJ2FjY2VudCcgOiAnZGVmYXVsdCdcIj5maWx0ZXJfbGlzdDwvbWF0LWljb24+XG4gICAgICA8L2J1dHRvbj5cblxuICAgIDwvZGl2PlxuICA8L21hdC1mb3JtLWZpZWxkPlxuPC9kaXY+XG5cblxuPCEtLSBPdmVybGF5IFBhbmVsIGZvciBhZHZhbmNlZCBzZWFyY2ggLS0+XG48ZWxkZXItb3ZlcmxheSAjc2VhcmNoUGFuZWw9XCJlbGRlck92ZXJsYXlcIj5cbiAgPGVsZGVyLWNhcmQtcGFuZWwgY2xhc3M9XCJlbGRlci1zZWFyY2gtcGFuZWxcIj5cblxuICAgIDwhLS0gUHJvamVjdCB0aGUgdXNlcnMgc2VhcmNoIGlucHV0cyBoZXJlIC0tPlxuICAgIDxuZy1jb250ZW50IHNlbGVjdD1cImVsZGVyLXNlYXJjaC1wYW5lbFwiPjwvbmctY29udGVudD5cblxuICAgIDxkaXYgZnhMYXlvdXQ9XCJyb3dcIiBmeExheW91dEFsaWduPVwic3BhY2UtYmV0d2VlbiBjZW50ZXJcIj5cbiAgICAgIDxidXR0b24gbWF0LXJhaXNlZC1idXR0b24gdHlwZT1cImJ1dHRvblwiIG5hbWU9XCJjbGVhclwiXG4gICAgICAgICAgICAgIChjbGljayk9XCJjbGVhclNlYXJjaCgkZXZlbnQpXCI+e3snY29udGV4dC5yZXNldCcgfCB0cmFuc2xhdGV9fVxuICAgICAgPC9idXR0b24+XG5cbiAgICAgIDxidXR0b24gbWF0LXJhaXNlZC1idXR0b24gdHlwZT1cImJ1dHRvblwiIG5hbWU9XCJva1wiIGNvbG9yPVwicHJpbWFyeVwiXG4gICAgICAgICAgICAgIChjbGljayk9XCJzZWFyY2hQYW5lbC5jbG9zZU92ZXJsYXkoKVwiPk9rXG4gICAgICA8L2J1dHRvbj5cbiAgICA8L2Rpdj5cbiAgPC9lbGRlci1jYXJkLXBhbmVsPlxuPC9lbGRlci1vdmVybGF5PlxuIl19
|
|
124
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItc2VhcmNoLWJveC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm1zL3NlYXJjaC9zZWFyY2gtYm94L2VsZGVyLXNlYXJjaC1ib3guY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9mb3Jtcy9zZWFyY2gvc2VhcmNoLWJveC9lbGRlci1zZWFyY2gtYm94LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDNEIsdUJBQXVCLEVBQ3hELFNBQVMsRUFBRSxZQUFZLEVBQ1gsS0FBSyxFQUVqQixTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRXJELE9BQU8sRUFBQyx5QkFBeUIsRUFBQyxNQUFNLGdDQUFnQyxDQUFDO0FBQ3pFLE9BQU8sRUFBQyxlQUFlLEVBQUUsT0FBTyxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQzlDLE9BQU8sRUFBQyxxQkFBcUIsRUFBQyxNQUFNLHVCQUF1QixDQUFDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFHNUQsTUFBTSxPQUFPLFlBQVk7SUFDdkIsWUFDUyxVQUFtQjtRQUFuQixlQUFVLEdBQVYsVUFBVSxDQUFTO0lBQ3hCLENBQUM7Q0FDTjtBQVVELE1BQU0sT0FBTyx1QkFBdUI7SUFtRGxDOzs7O2dGQUk0RTtJQUU1RSxZQUNrQixXQUF3QztRQUF4QyxnQkFBVyxHQUFYLFdBQVcsQ0FBNkI7UUF4RDFEOzs7O29GQUk0RTtRQUUzRCxXQUFNLEdBQUcsYUFBYSxDQUFDLFNBQVMsQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO1FBRTVELGlCQUFZLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQU9wQyxrQkFBYSxHQUFHLElBQUksZUFBZSxDQUFlLElBQUksWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFFM0Y7Ozs7b0ZBSTRFO1FBRTVFOztXQUVHO1FBRUksY0FBUyxHQUFHLElBQUksQ0FBQztRQUdqQixTQUFJLEdBQUcsa0JBQWtCLENBQUM7UUFHMUIsYUFBUSxHQUFHLE9BQU8sQ0FBQztRQVdsQixXQUFNLEdBQUcsSUFBSSxDQUFDO1FBR2YsaUJBQVksR0FBRyxLQUFLLENBQUM7SUFXNUIsQ0FBQztJQUVEOzs7O2dGQUk0RTtJQUVyRSxRQUFRO0lBRWYsQ0FBQztJQUVNLGVBQWU7SUFFdEIsQ0FBQztJQUdNLGtCQUFrQjtRQUN2QixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLFlBQVksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUM7SUFDbkUsQ0FBQztJQUVNLFdBQVc7UUFDaEIsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUN6QixJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQy9CLENBQUM7SUFFRDs7OztnRkFJNEU7SUFFNUUsSUFDVyxLQUFLLENBQUMsS0FBYyxJQUFJLElBQUksQ0FBQyxNQUFNLEdBQUcscUJBQXFCLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2hGLElBQVcsS0FBSyxLQUFjLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7SUFHbkQ7Ozs7Z0ZBSTRFO0lBRXJFLFNBQVMsQ0FBQyxLQUFVO1FBQ3pCLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUN4RCxDQUFDO0lBRUQ7O09BRUc7SUFDSSxXQUFXLENBQUMsS0FBVTtRQUMzQixJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQzNCLENBQUM7O29IQWhIVSx1QkFBdUI7d0dBQXZCLHVCQUF1QixvUkFlcEIseUJBQXlCLGdMQzNDekMsNmxGQWtFQTsyRkR0Q2EsdUJBQXVCO2tCQVBuQyxTQUFTOytCQUNFLGtCQUFrQixZQUNsQixnQkFBZ0IsbUJBR1QsdUJBQXVCLENBQUMsTUFBTTtrSEFlMUIsTUFBTTtzQkFBMUIsU0FBUzt1QkFBQyxRQUFRO2dCQUVzQixjQUFjO3NCQUF0RCxZQUFZO3VCQUFDLHlCQUF5QjtnQkFjaEMsU0FBUztzQkFEZixLQUFLO2dCQUlDLElBQUk7c0JBRFYsS0FBSztnQkFJQyxRQUFRO3NCQURkLEtBQUs7Z0JBSUMsV0FBVztzQkFEakIsS0FBSztnQkFJQyxLQUFLO3NCQURYLEtBQUs7Z0JBSUMsSUFBSTtzQkFEVixLQUFLO2dCQU1DLFlBQVk7c0JBRGxCLEtBQUs7Z0JBNkNLLEtBQUs7c0JBRGYsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFmdGVyQ29udGVudEluaXQsIEFmdGVyVmlld0luaXQsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsIENvbnRlbnRDaGlsZCxcbiAgRWxlbWVudFJlZiwgSW5wdXQsIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBWaWV3Q2hpbGQsIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IExvZ2dlckZhY3RvcnkgfSBmcm9tICdAZWxkZXJieXRlL3RzLWxvZ2dlcic7XG5pbXBvcnQge0VsZGVyU2VhcmNoQ29udGV4dERpcmVjdGl2ZX0gZnJvbSAnLi4vZWxkZXItc2VhcmNoLWNvbnRleHQuZGlyZWN0aXZlJztcbmltcG9ydCB7RWxkZXJTZWFyY2hQYW5lbENvbXBvbmVudH0gZnJvbSAnLi9lbGRlci1zZWFyY2gtcGFuZWwuY29tcG9uZW50JztcbmltcG9ydCB7QmVoYXZpb3JTdWJqZWN0LCBTdWJqZWN0fSBmcm9tICdyeGpzJztcbmltcG9ydCB7Y29lcmNlQm9vbGVhblByb3BlcnR5fSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nO1xuXG5cbmV4cG9ydCBjbGFzcyBPdmVybGF5U3RhdGUge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgaGFzT3ZlcmxheTogYm9vbGVhblxuICApIHsgfVxufVxuXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2VsZGVyLXNlYXJjaC1ib3gnLFxuICBleHBvcnRBczogJ2VsZGVyU2VhcmNoQm94JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2VsZGVyLXNlYXJjaC1ib3guY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9lbGRlci1zZWFyY2gtYm94LmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIEVsZGVyU2VhcmNoQm94Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3ksIEFmdGVyVmlld0luaXQsIEFmdGVyQ29udGVudEluaXQge1xuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBGaWVsZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgbG9nZ2VyID0gTG9nZ2VyRmFjdG9yeS5nZXRMb2dnZXIoJ0VsZGVyU2VhcmNoQm94Q29tcG9uZW50Jyk7XG5cbiAgcHJpdmF0ZSByZWFkb25seSB1bnN1YnNjcmliZSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIC8vIFRoZSBzZWFyY2ggZXhwcmVzc2lvbiBpbnB1dCBFbGVtZW50XG4gIEBWaWV3Q2hpbGQoJ3NlYXJjaCcpIHNlYXJjaDogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PjtcblxuICBAQ29udGVudENoaWxkKEVsZGVyU2VhcmNoUGFuZWxDb21wb25lbnQpIGFkdmFuY2VkU2VhcmNoOiBFbGRlclNlYXJjaFBhbmVsQ29tcG9uZW50O1xuXG4gIHB1YmxpYyByZWFkb25seSBvdmVybGF5U3RhdGUkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxPdmVybGF5U3RhdGU+KG5ldyBPdmVybGF5U3RhdGUoZmFsc2UpKTtcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHVibGljIEFQSSBGaWVsZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICAvKipcbiAgICogRGlzcGxheSB0aGUgc2VhcmNoIHBhbmVsIGltbWVkaWF0ZWx5IHdoZW4gdGhlIHVzZXIgZW50ZXJzIHRoZSBzZWFyY2ggYm94LlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIGF1dG9QYW5lbCA9IHRydWU7XG5cbiAgQElucHV0KClcbiAgcHVibGljIG5hbWUgPSAnc2VhcmNoRXhwcmVzc2lvbic7XG5cbiAgQElucHV0KClcbiAgcHVibGljIHF1ZXJ5S2V5ID0gJ3F1ZXJ5JztcblxuICBASW5wdXQoKVxuICBwdWJsaWMgcGxhY2Vob2xkZXI6IHN0cmluZztcblxuICBASW5wdXQoKVxuICBwdWJsaWMgbGFiZWw6IHN0cmluZztcblxuICBASW5wdXQoKVxuICBwdWJsaWMgaGludDogc3RyaW5nO1xuXG4gIHByaXZhdGUgX2RlbnNlID0gdHJ1ZTtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgYXV0b2NvbXBsZXRlID0gJ29mZic7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIENvbnN0cnVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIHJlYWRvbmx5IHNlYXJjaE1vZGVsOiBFbGRlclNlYXJjaENvbnRleHREaXJlY3RpdmUsXG4gICkge1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIExpZmUgQ3ljbGUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuXG4gIH1cblxuICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuXG4gIH1cblxuXG4gIHB1YmxpYyBuZ0FmdGVyQ29udGVudEluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5vdmVybGF5U3RhdGUkLm5leHQobmV3IE92ZXJsYXlTdGF0ZSghIXRoaXMuYWR2YW5jZWRTZWFyY2gpKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLnVuc3Vic2NyaWJlJC5uZXh0KCk7XG4gICAgdGhpcy51bnN1YnNjcmliZSQuY29tcGxldGUoKTtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQcm9wZXJ0aWVzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgZGVuc2UodmFsdWU6IGJvb2xlYW4pIHsgdGhpcy5fZGVuc2UgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpOyB9XG4gIHB1YmxpYyBnZXQgZGVuc2UoKTogYm9vbGVhbiB7IHJldHVybiB0aGlzLl9kZW5zZTsgfVxuXG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFB1YmxpYyBBUEkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIGJsdXJGb2N1cyhldmVudDogYW55KTogdm9pZCB7XG4gICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLnNlYXJjaC5uYXRpdmVFbGVtZW50LmJsdXIoKSwgMCk7XG4gIH1cblxuICAvKipcbiAgICogT2NjdXJzIHdoZW4gdGhlIHVzZXIgY2xpY2tzIHRoZSBjbGVhciBzZWFyY2ggYnV0dG9uXG4gICAqL1xuICBwdWJsaWMgY2xlYXJTZWFyY2goZXZlbnQ6IGFueSk6IHZvaWQge1xuICAgIHRoaXMuc2VhcmNoTW9kZWwucmVzZXQoKTtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQcml2YXRlIG1ldGhvZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG59XG4iLCI8ZGl2IGZ4TGF5b3V0PVwicm93XCIgZnhGbGV4PlxuXG4gIDwhLS0gTWFpbiBzZWFyY2ggaW5wdXQgLS0+XG4gIDxtYXQtZm9ybS1maWVsZFxuICAgICpuZ0lmPVwib3ZlcmxheVN0YXRlJCB8IGFzeW5jIGFzIG92ZXJsYXlTdGF0ZVwiXG4gICAgZnhGbGV4PVwiZ3Jvd1wiIGZ4RmxleEFsaWduPVwiY2VudGVyXCJcbiAgICBbZWxkZXJEZW5zZV09XCJkZW5zZVwiPlxuXG4gICAgPGJ1dHRvbiBtYXRQcmVmaXggbWF0LWljb24tYnV0dG9uIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgW2VsZGVyT3ZlcmxheVRyaWdnZXJdPVwic2VhcmNoUGFuZWxcIiAoY2xpY2spPVwiYmx1ckZvY3VzKCRldmVudClcIlxuICAgID5cbiAgICAgIDxtYXQtaWNvbj5zZWFyY2g8L21hdC1pY29uPlxuICAgIDwvYnV0dG9uPlxuXG4gICAgPGlucHV0IG1hdElucHV0IHR5cGU9XCJ0ZXh0XCIgW25hbWVdPVwibmFtZVwiIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiICNzZWFyY2ggY2RrRm9jdXNJbml0aWFsXG4gICAgICAgICAgIG5nTW9kZWxcbiAgICAgICAgICAgZWxkZXJTZWFyY2hJbnB1dCBbZWxkZXJTZWFyY2hJbnB1dEtleV09XCJxdWVyeUtleVwiICNzZWFyY2hJbnB1dD1cImVsZGVyU2VhcmNoSW5wdXRcIlxuICAgICAgICAgICBbYXV0b2NvbXBsZXRlXT1cIihhdXRvUGFuZWwgJiYgb3ZlcmxheVN0YXRlLmhhc092ZXJsYXkpID8gJ29mZicgOiBhdXRvY29tcGxldGVcIlxuICAgICAgICAgICBbZWxkZXJPdmVybGF5T3JpZ2luXT1cInNlYXJjaFBhbmVsXCJcbiAgICAgICAgICAgW2VsZGVyT3ZlcmxheVRyaWdnZXJdPVwic2VhcmNoUGFuZWxcIlxuICAgICAgICAgICBbZWxkZXJPdmVybGF5VHJpZ2dlclR5cGVdPVwiJ2ZvY3VzJ1wiXG4gICAgICAgICAgIFtlbGRlck92ZXJsYXlUcmlnZ2VyRW5hYmxlZF09XCJhdXRvUGFuZWwgJiYgb3ZlcmxheVN0YXRlLmhhc092ZXJsYXkgJiYgKHNlYXJjaElucHV0Py5zdGF0ZSQgfCBhc3luYyk/LnByaXN0aW5lXCJcbiAgICA+XG4gICAgPG1hdC1oaW50ICpuZ0lmPVwiaGludFwiPnt7aGludH19PC9tYXQtaGludD5cblxuICAgIDxkaXYgZnhMYXlvdXQ9XCJyb3dcIiBtYXRTdWZmaXggKm5nSWY9XCJzZWFyY2hNb2RlbC51c2VyRGVmaW5lZEF0dHJpYnV0ZXMkIHwgYXN5bmMgYXMgdXNlckRlZmluZWRGaWx0ZXJzXCI+XG5cbiAgICAgIDxidXR0b24gbWF0LWljb24tYnV0dG9uIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICAqbmdJZj1cInVzZXJEZWZpbmVkRmlsdGVycy5sZW5ndGggPiAwXCJcbiAgICAgICAgICAgICAgKGNsaWNrKT1cImNsZWFyU2VhcmNoKCRldmVudClcIlxuICAgICAgICAgICAgICBuYW1lPVwiY2xlYXJcIiBhcmlhLWxhYmVsPVwiQ2xlYXJcIj5cbiAgICAgICAgPG1hdC1pY29uPmNsb3NlPC9tYXQtaWNvbj5cbiAgICAgIDwvYnV0dG9uPlxuXG4gICAgICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgKm5nSWY9XCJvdmVybGF5U3RhdGUuaGFzT3ZlcmxheVwiIG5hbWU9XCJvcGVuUGFuZWxcIlxuICAgICAgICAgICAgICBbbWF0QmFkZ2VdPVwidXNlckRlZmluZWRGaWx0ZXJzLmxlbmd0aFwiXG4gICAgICAgICAgICAgIFttYXRCYWRnZUhpZGRlbl09XCJ1c2VyRGVmaW5lZEZpbHRlcnMubGVuZ3RoID09IDBcIlxuICAgICAgICAgICAgICBtYXRCYWRnZUNvbG9yPVwiYWNjZW50XCJcbiAgICAgICAgICAgICAgW2VsZGVyT3ZlcmxheVRyaWdnZXJdPVwic2VhcmNoUGFuZWxcIiAoY2xpY2spPVwiYmx1ckZvY3VzKCRldmVudClcIj5cbiAgICAgICAgPG1hdC1pY29uIFtjb2xvcl09XCJ1c2VyRGVmaW5lZEZpbHRlcnMubGVuZ3RoID4gMCA/ICdhY2NlbnQnIDogdW5kZWZpbmVkXCI+ZmlsdGVyX2xpc3Q8L21hdC1pY29uPlxuICAgICAgPC9idXR0b24+XG5cbiAgICA8L2Rpdj5cbiAgPC9tYXQtZm9ybS1maWVsZD5cbjwvZGl2PlxuXG5cbjwhLS0gT3ZlcmxheSBQYW5lbCBmb3IgYWR2YW5jZWQgc2VhcmNoIC0tPlxuPGVsZGVyLW92ZXJsYXkgI3NlYXJjaFBhbmVsPVwiZWxkZXJPdmVybGF5XCI+XG4gIDxlbGRlci1jYXJkLXBhbmVsIGNsYXNzPVwiZWxkZXItc2VhcmNoLXBhbmVsXCI+XG5cbiAgICA8IS0tIFByb2plY3QgdGhlIHVzZXJzIHNlYXJjaCBpbnB1dHMgaGVyZSAtLT5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJlbGRlci1zZWFyY2gtcGFuZWxcIj48L25nLWNvbnRlbnQ+XG5cbiAgICA8ZGl2IGZ4TGF5b3V0PVwicm93XCIgZnhMYXlvdXRBbGlnbj1cInNwYWNlLWJldHdlZW4gY2VudGVyXCI+XG4gICAgICA8YnV0dG9uIG1hdC1yYWlzZWQtYnV0dG9uIHR5cGU9XCJidXR0b25cIiBuYW1lPVwiY2xlYXJcIlxuICAgICAgICAgICAgICAoY2xpY2spPVwiY2xlYXJTZWFyY2goJGV2ZW50KVwiPnt7J2NvbnRleHQucmVzZXQnIHwgdHJhbnNsYXRlfX1cbiAgICAgIDwvYnV0dG9uPlxuXG4gICAgICA8YnV0dG9uIG1hdC1yYWlzZWQtYnV0dG9uIHR5cGU9XCJidXR0b25cIiBuYW1lPVwib2tcIiBjb2xvcj1cInByaW1hcnlcIlxuICAgICAgICAgICAgICAoY2xpY2spPVwic2VhcmNoUGFuZWwuY2xvc2VPdmVybGF5KClcIj5Pa1xuICAgICAgPC9idXR0b24+XG4gICAgPC9kaXY+XG4gIDwvZWxkZXItY2FyZC1wYW5lbD5cbjwvZWxkZXItb3ZlcmxheT5cbiJdfQ==
|
|
@@ -19794,7 +19794,7 @@ class ElderSearchBoxComponent {
|
|
|
19794
19794
|
this.autoPanel = true;
|
|
19795
19795
|
this.name = 'searchExpression';
|
|
19796
19796
|
this.queryKey = 'query';
|
|
19797
|
-
this._dense =
|
|
19797
|
+
this._dense = true;
|
|
19798
19798
|
this.autocomplete = 'off';
|
|
19799
19799
|
}
|
|
19800
19800
|
/***************************************************************************
|
|
@@ -19836,10 +19836,10 @@ class ElderSearchBoxComponent {
|
|
|
19836
19836
|
}
|
|
19837
19837
|
}
|
|
19838
19838
|
ElderSearchBoxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.6", ngImport: i0, type: ElderSearchBoxComponent, deps: [{ token: ElderSearchContextDirective }], target: i0.ɵɵFactoryTarget.Component });
|
|
19839
|
-
ElderSearchBoxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.6", type: ElderSearchBoxComponent, selector: "elder-search-box", inputs: { autoPanel: "autoPanel", name: "name", queryKey: "queryKey", placeholder: "placeholder", hint: "hint", autocomplete: "autocomplete", dense: "dense" }, queries: [{ propertyName: "advancedSearch", first: true, predicate: ElderSearchPanelComponent, descendants: true }], viewQueries: [{ propertyName: "search", first: true, predicate: ["search"], descendants: true }], exportAs: ["elderSearchBox"], ngImport: i0, template: "<div fxLayout=\"row\" fxFlex>\n\n <!-- Main search input -->\n <mat-form-field\n *ngIf=\"overlayState$ | async as overlayState\"\n fxFlex=\"grow\" fxFlexAlign=\"center\"\n [elderDense]=\"dense\">\n\n <
|
|
19839
|
+
ElderSearchBoxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.6", type: ElderSearchBoxComponent, selector: "elder-search-box", inputs: { autoPanel: "autoPanel", name: "name", queryKey: "queryKey", placeholder: "placeholder", label: "label", hint: "hint", autocomplete: "autocomplete", dense: "dense" }, queries: [{ propertyName: "advancedSearch", first: true, predicate: ElderSearchPanelComponent, descendants: true }], viewQueries: [{ propertyName: "search", first: true, predicate: ["search"], descendants: true }], exportAs: ["elderSearchBox"], ngImport: i0, template: "<div fxLayout=\"row\" fxFlex>\n\n <!-- Main search input -->\n <mat-form-field\n *ngIf=\"overlayState$ | async as overlayState\"\n fxFlex=\"grow\" fxFlexAlign=\"center\"\n [elderDense]=\"dense\">\n\n <button matPrefix mat-icon-button type=\"button\"\n [elderOverlayTrigger]=\"searchPanel\" (click)=\"blurFocus($event)\"\n >\n <mat-icon>search</mat-icon>\n </button>\n\n <input matInput type=\"text\" [name]=\"name\" [placeholder]=\"placeholder\" #search cdkFocusInitial\n ngModel\n elderSearchInput [elderSearchInputKey]=\"queryKey\" #searchInput=\"elderSearchInput\"\n [autocomplete]=\"(autoPanel && overlayState.hasOverlay) ? 'off' : autocomplete\"\n [elderOverlayOrigin]=\"searchPanel\"\n [elderOverlayTrigger]=\"searchPanel\"\n [elderOverlayTriggerType]=\"'focus'\"\n [elderOverlayTriggerEnabled]=\"autoPanel && overlayState.hasOverlay && (searchInput?.state$ | async)?.pristine\"\n >\n <mat-hint *ngIf=\"hint\">{{hint}}</mat-hint>\n\n <div fxLayout=\"row\" matSuffix *ngIf=\"searchModel.userDefinedAttributes$ | async as userDefinedFilters\">\n\n <button mat-icon-button type=\"button\"\n *ngIf=\"userDefinedFilters.length > 0\"\n (click)=\"clearSearch($event)\"\n name=\"clear\" aria-label=\"Clear\">\n <mat-icon>close</mat-icon>\n </button>\n\n <button mat-icon-button type=\"button\"\n *ngIf=\"overlayState.hasOverlay\" name=\"openPanel\"\n [matBadge]=\"userDefinedFilters.length\"\n [matBadgeHidden]=\"userDefinedFilters.length == 0\"\n matBadgeColor=\"accent\"\n [elderOverlayTrigger]=\"searchPanel\" (click)=\"blurFocus($event)\">\n <mat-icon [color]=\"userDefinedFilters.length > 0 ? 'accent' : undefined\">filter_list</mat-icon>\n </button>\n\n </div>\n </mat-form-field>\n</div>\n\n\n<!-- Overlay Panel for advanced search -->\n<elder-overlay #searchPanel=\"elderOverlay\">\n <elder-card-panel class=\"elder-search-panel\">\n\n <!-- Project the users search inputs here -->\n <ng-content select=\"elder-search-panel\"></ng-content>\n\n <div fxLayout=\"row\" fxLayoutAlign=\"space-between center\">\n <button mat-raised-button type=\"button\" name=\"clear\"\n (click)=\"clearSearch($event)\">{{'context.reset' | translate}}\n </button>\n\n <button mat-raised-button type=\"button\" name=\"ok\" color=\"primary\"\n (click)=\"searchPanel.closeOverlay()\">Ok\n </button>\n </div>\n </elder-card-panel>\n</elder-overlay>\n", styles: [".elder-search-panel{min-width:250px}\n"], dependencies: [{ kind: "directive", type: i1$4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.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: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i4$1.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4$1.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i4$1.MatPrefix, selector: "[matPrefix]" }, { kind: "directive", type: i4$1.MatSuffix, selector: "[matSuffix]" }, { kind: "directive", type: i5$1.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: "component", type: i5.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i4$3.MatBadge, selector: "[matBadge]", inputs: ["matBadgeDisabled", "matBadgeColor", "matBadgeOverlap", "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: "directive", type: ElderOverlayTriggerDirective, selector: "[elderOverlayTrigger]", inputs: ["elderOverlayTrigger", "elderOverlayTriggerType", "elderOverlayTriggerEnabled"] }, { kind: "directive", type: ElderOverlayOriginDirective, selector: "[elderOverlayOrigin]", inputs: ["elderOverlayOrigin"] }, { kind: "component", type: ElderCardPanelComponent, selector: "elder-card-panel" }, { kind: "directive", type: ElderFormFieldDenseDirective, selector: "mat-form-field[elderDense]", inputs: ["elderDense"] }, { kind: "directive", type: i2$3.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i2$3.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { kind: "directive", type: i2$3.DefaultFlexAlignDirective, selector: " [fxFlexAlign], [fxFlexAlign.xs], [fxFlexAlign.sm], [fxFlexAlign.md], [fxFlexAlign.lg], [fxFlexAlign.xl], [fxFlexAlign.lt-sm], [fxFlexAlign.lt-md], [fxFlexAlign.lt-lg], [fxFlexAlign.lt-xl], [fxFlexAlign.gt-xs], [fxFlexAlign.gt-sm], [fxFlexAlign.gt-md], [fxFlexAlign.gt-lg]", inputs: ["fxFlexAlign", "fxFlexAlign.xs", "fxFlexAlign.sm", "fxFlexAlign.md", "fxFlexAlign.lg", "fxFlexAlign.xl", "fxFlexAlign.lt-sm", "fxFlexAlign.lt-md", "fxFlexAlign.lt-lg", "fxFlexAlign.lt-xl", "fxFlexAlign.gt-xs", "fxFlexAlign.gt-sm", "fxFlexAlign.gt-md", "fxFlexAlign.gt-lg"] }, { kind: "directive", type: i2$3.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { kind: "directive", type: ElderSearchInputDirective, selector: "[elderSearchInput]", inputs: ["elderSearchInputKey", "elderSearchInputTransform", "elderSearchInput", "elderSearchInputFallback"], exportAs: ["elderSearchInput"] }, { kind: "pipe", type: i1$4.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
19840
19840
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.6", ngImport: i0, type: ElderSearchBoxComponent, decorators: [{
|
|
19841
19841
|
type: Component,
|
|
19842
|
-
args: [{ selector: 'elder-search-box', exportAs: 'elderSearchBox', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div fxLayout=\"row\" fxFlex>\n\n <!-- Main search input -->\n <mat-form-field\n *ngIf=\"overlayState$ | async as overlayState\"\n fxFlex=\"grow\" fxFlexAlign=\"center\"\n [elderDense]=\"dense\">\n\n <
|
|
19842
|
+
args: [{ selector: 'elder-search-box', exportAs: 'elderSearchBox', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div fxLayout=\"row\" fxFlex>\n\n <!-- Main search input -->\n <mat-form-field\n *ngIf=\"overlayState$ | async as overlayState\"\n fxFlex=\"grow\" fxFlexAlign=\"center\"\n [elderDense]=\"dense\">\n\n <button matPrefix mat-icon-button type=\"button\"\n [elderOverlayTrigger]=\"searchPanel\" (click)=\"blurFocus($event)\"\n >\n <mat-icon>search</mat-icon>\n </button>\n\n <input matInput type=\"text\" [name]=\"name\" [placeholder]=\"placeholder\" #search cdkFocusInitial\n ngModel\n elderSearchInput [elderSearchInputKey]=\"queryKey\" #searchInput=\"elderSearchInput\"\n [autocomplete]=\"(autoPanel && overlayState.hasOverlay) ? 'off' : autocomplete\"\n [elderOverlayOrigin]=\"searchPanel\"\n [elderOverlayTrigger]=\"searchPanel\"\n [elderOverlayTriggerType]=\"'focus'\"\n [elderOverlayTriggerEnabled]=\"autoPanel && overlayState.hasOverlay && (searchInput?.state$ | async)?.pristine\"\n >\n <mat-hint *ngIf=\"hint\">{{hint}}</mat-hint>\n\n <div fxLayout=\"row\" matSuffix *ngIf=\"searchModel.userDefinedAttributes$ | async as userDefinedFilters\">\n\n <button mat-icon-button type=\"button\"\n *ngIf=\"userDefinedFilters.length > 0\"\n (click)=\"clearSearch($event)\"\n name=\"clear\" aria-label=\"Clear\">\n <mat-icon>close</mat-icon>\n </button>\n\n <button mat-icon-button type=\"button\"\n *ngIf=\"overlayState.hasOverlay\" name=\"openPanel\"\n [matBadge]=\"userDefinedFilters.length\"\n [matBadgeHidden]=\"userDefinedFilters.length == 0\"\n matBadgeColor=\"accent\"\n [elderOverlayTrigger]=\"searchPanel\" (click)=\"blurFocus($event)\">\n <mat-icon [color]=\"userDefinedFilters.length > 0 ? 'accent' : undefined\">filter_list</mat-icon>\n </button>\n\n </div>\n </mat-form-field>\n</div>\n\n\n<!-- Overlay Panel for advanced search -->\n<elder-overlay #searchPanel=\"elderOverlay\">\n <elder-card-panel class=\"elder-search-panel\">\n\n <!-- Project the users search inputs here -->\n <ng-content select=\"elder-search-panel\"></ng-content>\n\n <div fxLayout=\"row\" fxLayoutAlign=\"space-between center\">\n <button mat-raised-button type=\"button\" name=\"clear\"\n (click)=\"clearSearch($event)\">{{'context.reset' | translate}}\n </button>\n\n <button mat-raised-button type=\"button\" name=\"ok\" color=\"primary\"\n (click)=\"searchPanel.closeOverlay()\">Ok\n </button>\n </div>\n </elder-card-panel>\n</elder-overlay>\n", styles: [".elder-search-panel{min-width:250px}\n"] }]
|
|
19843
19843
|
}], ctorParameters: function () { return [{ type: ElderSearchContextDirective }]; }, propDecorators: { search: [{
|
|
19844
19844
|
type: ViewChild,
|
|
19845
19845
|
args: ['search']
|
|
@@ -19854,6 +19854,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.6", ngImpor
|
|
|
19854
19854
|
type: Input
|
|
19855
19855
|
}], placeholder: [{
|
|
19856
19856
|
type: Input
|
|
19857
|
+
}], label: [{
|
|
19858
|
+
type: Input
|
|
19857
19859
|
}], hint: [{
|
|
19858
19860
|
type: Input
|
|
19859
19861
|
}], autocomplete: [{
|