@enigmatry/entry-components 15.1.0-preview → 15.1.0-preview.1

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.
Files changed (38) hide show
  1. package/esm2020/search-filter/autocomplete/autocomplete-search-filter.component.mjs +50 -0
  2. package/esm2020/search-filter/autocomplete/autocomplete-search-filter.model.mjs +19 -0
  3. package/esm2020/search-filter/control-type.mjs +7 -0
  4. package/esm2020/search-filter/entry-search-filter.component.mjs +19 -6
  5. package/esm2020/search-filter/entry-search-filter.module.mjs +14 -8
  6. package/esm2020/search-filter/public-api.mjs +6 -5
  7. package/esm2020/search-filter/search-filter-base.model.mjs +26 -0
  8. package/esm2020/search-filter/select/select-search-filter.component.mjs +28 -0
  9. package/esm2020/search-filter/select/select-search-filter.model.mjs +23 -0
  10. package/esm2020/search-filter/select-option.model.mjs +12 -0
  11. package/esm2020/search-filter/text/text-search-filter.component.mjs +18 -0
  12. package/esm2020/search-filter/text/text-search-filter.model.mjs +12 -0
  13. package/fesm2015/enigmatry-entry-components-search-filter.mjs +116 -33
  14. package/fesm2015/enigmatry-entry-components-search-filter.mjs.map +1 -1
  15. package/fesm2020/enigmatry-entry-components-search-filter.mjs +115 -33
  16. package/fesm2020/enigmatry-entry-components-search-filter.mjs.map +1 -1
  17. package/package.json +1 -1
  18. package/search-filter/README.md +45 -17
  19. package/search-filter/autocomplete/autocomplete-search-filter.component.d.ts +21 -0
  20. package/search-filter/autocomplete/autocomplete-search-filter.model.d.ts +19 -0
  21. package/search-filter/control-type.d.ts +5 -0
  22. package/search-filter/entry-search-filter.component.d.ts +9 -1
  23. package/search-filter/entry-search-filter.module.d.ts +11 -9
  24. package/search-filter/public-api.d.ts +5 -4
  25. package/search-filter/{search-filter-input/search-filter-base.model.d.ts → search-filter-base.model.d.ts} +3 -2
  26. package/search-filter/select/select-search-filter.component.d.ts +14 -0
  27. package/search-filter/{search-filter-input/inputs → select}/select-search-filter.model.d.ts +5 -4
  28. package/search-filter/{search-filter-input/inputs/select-filter-option.model.d.ts → select-option.model.d.ts} +2 -2
  29. package/search-filter/text/text-search-filter.component.d.ts +10 -0
  30. package/search-filter/{search-filter-input/inputs → text}/text-search-filter.model.d.ts +2 -1
  31. package/esm2020/search-filter/search-filter-input/control-type.model.mjs +0 -5
  32. package/esm2020/search-filter/search-filter-input/inputs/select-filter-option.model.mjs +0 -12
  33. package/esm2020/search-filter/search-filter-input/inputs/select-search-filter.model.mjs +0 -23
  34. package/esm2020/search-filter/search-filter-input/inputs/text-search-filter.model.mjs +0 -12
  35. package/esm2020/search-filter/search-filter-input/search-filter-base.model.mjs +0 -25
  36. package/esm2020/search-filter/search-filter-input/search-filter-input.component.mjs +0 -36
  37. package/search-filter/search-filter-input/control-type.model.d.ts +0 -4
  38. package/search-filter/search-filter-input/search-filter-input.component.d.ts +0 -18
@@ -0,0 +1,50 @@
1
+ import { ChangeDetectionStrategy, Component, Input, ViewChild } from '@angular/core';
2
+ import { FormControlName } from '@angular/forms';
3
+ import { Subject, of } from 'rxjs';
4
+ import { filter, tap, takeUntil, debounceTime } from 'rxjs/operators';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "@angular/common";
7
+ import * as i2 from "@angular/forms";
8
+ import * as i3 from "@angular/material/input";
9
+ import * as i4 from "@angular/material/form-field";
10
+ import * as i5 from "@angular/material/core";
11
+ import * as i6 from "@angular/material/autocomplete";
12
+ export class AutocompleteSearchFilterComponent {
13
+ constructor(cdr) {
14
+ this.cdr = cdr;
15
+ this.options$ = of([]);
16
+ this.options = [];
17
+ this.destroy$ = new Subject();
18
+ this.displayFn = (selectedKey) => this.options.find(x => x.key === selectedKey)?.label;
19
+ }
20
+ ngAfterViewInit() {
21
+ this.searchField
22
+ .valueChanges
23
+ .pipe(takeUntil(this.destroy$), filter(value => value?.length >= this.searchFilter.minimumCharacters), debounceTime(this.searchFilter.debounceTime))
24
+ .subscribe(searchValue => {
25
+ // call search and retrieve options
26
+ this.options$ = this.searchFilter.search(searchValue)
27
+ .pipe(tap(options => this.options = options));
28
+ // mark for check because of the debounce
29
+ this.cdr.markForCheck();
30
+ });
31
+ }
32
+ ngOnDestroy() {
33
+ this.destroy$.next();
34
+ this.destroy$.complete();
35
+ }
36
+ }
37
+ AutocompleteSearchFilterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: AutocompleteSearchFilterComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
38
+ AutocompleteSearchFilterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: AutocompleteSearchFilterComponent, selector: "entry-autocomplete-search-filter", inputs: { searchFilter: "searchFilter", form: "form" }, viewQueries: [{ propertyName: "searchField", first: true, predicate: FormControlName, descendants: true }], ngImport: i0, template: "<mat-form-field [formGroup]=\"form\" subscriptSizing=\"dynamic\">\n <mat-label>{{searchFilter.label}}</mat-label>\n <input type=\"text\" matInput [placeholder]=\"searchFilter.placeholder\"\n [formControlName]=\"searchFilter.key\" [id]=\"searchFilter.key\" [matAutocomplete]=\"auto\">\n <mat-autocomplete [displayWith]=\"displayFn\" #auto=\"matAutocomplete\">\n <mat-option *ngFor=\"let option of options$ | async\" [value]=\"option.key\">\n {{option.label}}\n </mat-option>\n </mat-autocomplete>\n</mat-form-field>", dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { 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.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i3.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: i4.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4.MatLabel, selector: "mat-label" }, { kind: "component", type: i5.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "component", type: i6.MatAutocomplete, selector: "mat-autocomplete", inputs: ["disableRipple", "hideSingleSelectionIndicator"], exportAs: ["matAutocomplete"] }, { kind: "directive", type: i6.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", exportAs: ["matAutocompleteTrigger"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
39
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: AutocompleteSearchFilterComponent, decorators: [{
40
+ type: Component,
41
+ args: [{ selector: 'entry-autocomplete-search-filter', changeDetection: ChangeDetectionStrategy.OnPush, template: "<mat-form-field [formGroup]=\"form\" subscriptSizing=\"dynamic\">\n <mat-label>{{searchFilter.label}}</mat-label>\n <input type=\"text\" matInput [placeholder]=\"searchFilter.placeholder\"\n [formControlName]=\"searchFilter.key\" [id]=\"searchFilter.key\" [matAutocomplete]=\"auto\">\n <mat-autocomplete [displayWith]=\"displayFn\" #auto=\"matAutocomplete\">\n <mat-option *ngFor=\"let option of options$ | async\" [value]=\"option.key\">\n {{option.label}}\n </mat-option>\n </mat-autocomplete>\n</mat-form-field>" }]
42
+ }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { searchFilter: [{
43
+ type: Input
44
+ }], form: [{
45
+ type: Input
46
+ }], searchField: [{
47
+ type: ViewChild,
48
+ args: [FormControlName]
49
+ }] } });
50
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b2NvbXBsZXRlLXNlYXJjaC1maWx0ZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9lbnRyeS1jb21wb25lbnRzL3NlYXJjaC1maWx0ZXIvYXV0b2NvbXBsZXRlL2F1dG9jb21wbGV0ZS1zZWFyY2gtZmlsdGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZW50cnktY29tcG9uZW50cy9zZWFyY2gtZmlsdGVyL2F1dG9jb21wbGV0ZS9hdXRvY29tcGxldGUtc2VhcmNoLWZpbHRlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWlCLHVCQUF1QixFQUFxQixTQUFTLEVBQUUsS0FBSyxFQUFhLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsSSxPQUFPLEVBQUUsZUFBZSxFQUFvQixNQUFNLGdCQUFnQixDQUFDO0FBQ25FLE9BQU8sRUFBYyxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9DLE9BQU8sRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7Ozs7QUFTdEUsTUFBTSxPQUFPLGlDQUFpQztJQVc1QyxZQUFvQixHQUFzQjtRQUF0QixRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQUwxQyxhQUFRLEdBQWtDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNqRCxZQUFPLEdBQXNCLEVBQUUsQ0FBQztRQUVoQyxhQUFRLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQTZCL0IsY0FBUyxHQUFHLENBQUMsV0FBYyxFQUFVLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLEtBQUssV0FBVyxDQUFDLEVBQUUsS0FBSyxDQUFDO0lBM0IvQyxDQUFDO0lBRS9DLGVBQWU7UUFDYixJQUFJLENBQUMsV0FBVzthQUNiLFlBQVk7YUFDWixJQUFJLENBQ0gsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsRUFDeEIsTUFBTSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxFQUFFLE1BQU0sSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLGlCQUFpQixDQUFDLEVBQ3JFLFlBQVksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLFlBQVksQ0FBQyxDQUM3QzthQUNBLFNBQVMsQ0FBQyxXQUFXLENBQUMsRUFBRTtZQUN2QixtQ0FBbUM7WUFDbkMsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUM7aUJBQ2xELElBQUksQ0FDSCxHQUFHLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQyxDQUN2QyxDQUFDO1lBRUoseUNBQXlDO1lBQ3pDLElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDMUIsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDckIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUMzQixDQUFDOzsrSEFwQ1UsaUNBQWlDO21IQUFqQyxpQ0FBaUMsNktBSWpDLGVBQWUsZ0RDaEI1QixnakJBU2lCOzRGREdKLGlDQUFpQztrQkFMN0MsU0FBUzsrQkFDRSxrQ0FBa0MsbUJBRTNCLHVCQUF1QixDQUFDLE1BQU07d0dBR3RDLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUVzQixXQUFXO3NCQUF0QyxTQUFTO3VCQUFDLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgSW5wdXQsIE9uRGVzdHJveSwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtQ29udHJvbE5hbWUsIFVudHlwZWRGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJqZWN0LCBvZiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZmlsdGVyLCB0YXAsIHRha2VVbnRpbCwgZGVib3VuY2VUaW1lIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgU2VsZWN0T3B0aW9uIH0gZnJvbSAnLi4vc2VsZWN0LW9wdGlvbi5tb2RlbCc7XG5pbXBvcnQgeyBBdXRvY29tcGxldGVTZWFyY2hGaWx0ZXIgfSBmcm9tICcuL2F1dG9jb21wbGV0ZS1zZWFyY2gtZmlsdGVyLm1vZGVsJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZW50cnktYXV0b2NvbXBsZXRlLXNlYXJjaC1maWx0ZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vYXV0b2NvbXBsZXRlLXNlYXJjaC1maWx0ZXIuY29tcG9uZW50Lmh0bWwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBBdXRvY29tcGxldGVTZWFyY2hGaWx0ZXJDb21wb25lbnQ8VD4gaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xuICBASW5wdXQoKSBzZWFyY2hGaWx0ZXI6IEF1dG9jb21wbGV0ZVNlYXJjaEZpbHRlcjxUPjtcbiAgQElucHV0KCkgZm9ybTogVW50eXBlZEZvcm1Hcm91cDtcblxuICBAVmlld0NoaWxkKEZvcm1Db250cm9sTmFtZSkgc2VhcmNoRmllbGQ6IEZvcm1Db250cm9sTmFtZTtcblxuICBvcHRpb25zJDogT2JzZXJ2YWJsZTxTZWxlY3RPcHRpb248VD5bXT4gPSBvZihbXSk7XG4gIG9wdGlvbnM6IFNlbGVjdE9wdGlvbjxUPltdID0gW107XG5cbiAgZGVzdHJveSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZikgeyB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIHRoaXMuc2VhcmNoRmllbGRcbiAgICAgIC52YWx1ZUNoYW5nZXNcbiAgICAgIC5waXBlKFxuICAgICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95JCksXG4gICAgICAgIGZpbHRlcih2YWx1ZSA9PiB2YWx1ZT8ubGVuZ3RoID49IHRoaXMuc2VhcmNoRmlsdGVyLm1pbmltdW1DaGFyYWN0ZXJzKSxcbiAgICAgICAgZGVib3VuY2VUaW1lKHRoaXMuc2VhcmNoRmlsdGVyLmRlYm91bmNlVGltZSlcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoc2VhcmNoVmFsdWUgPT4ge1xuICAgICAgICAvLyBjYWxsIHNlYXJjaCBhbmQgcmV0cmlldmUgb3B0aW9uc1xuICAgICAgICB0aGlzLm9wdGlvbnMkID0gdGhpcy5zZWFyY2hGaWx0ZXIuc2VhcmNoKHNlYXJjaFZhbHVlKVxuICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgdGFwKG9wdGlvbnMgPT4gdGhpcy5vcHRpb25zID0gb3B0aW9ucylcbiAgICAgICAgICApO1xuXG4gICAgICAgIC8vIG1hcmsgZm9yIGNoZWNrIGJlY2F1c2Ugb2YgdGhlIGRlYm91bmNlXG4gICAgICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICAgICAgfSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLmRlc3Ryb3kkLm5leHQoKTtcbiAgICB0aGlzLmRlc3Ryb3kkLmNvbXBsZXRlKCk7XG4gIH1cblxuICBkaXNwbGF5Rm4gPSAoc2VsZWN0ZWRLZXk6IFQpOiBzdHJpbmcgPT4gdGhpcy5vcHRpb25zLmZpbmQoeCA9PiB4LmtleSA9PT0gc2VsZWN0ZWRLZXkpPy5sYWJlbDtcbn1cbiIsIjxtYXQtZm9ybS1maWVsZCBbZm9ybUdyb3VwXT1cImZvcm1cIiBzdWJzY3JpcHRTaXppbmc9XCJkeW5hbWljXCI+XG4gICAgPG1hdC1sYWJlbD57e3NlYXJjaEZpbHRlci5sYWJlbH19PC9tYXQtbGFiZWw+XG4gICAgPGlucHV0IHR5cGU9XCJ0ZXh0XCIgbWF0SW5wdXQgW3BsYWNlaG9sZGVyXT1cInNlYXJjaEZpbHRlci5wbGFjZWhvbGRlclwiXG4gICAgICAgIFtmb3JtQ29udHJvbE5hbWVdPVwic2VhcmNoRmlsdGVyLmtleVwiIFtpZF09XCJzZWFyY2hGaWx0ZXIua2V5XCIgW21hdEF1dG9jb21wbGV0ZV09XCJhdXRvXCI+XG4gICAgPG1hdC1hdXRvY29tcGxldGUgW2Rpc3BsYXlXaXRoXT1cImRpc3BsYXlGblwiICNhdXRvPVwibWF0QXV0b2NvbXBsZXRlXCI+XG4gICAgICAgIDxtYXQtb3B0aW9uICpuZ0Zvcj1cImxldCBvcHRpb24gb2Ygb3B0aW9ucyQgfCBhc3luY1wiIFt2YWx1ZV09XCJvcHRpb24ua2V5XCI+XG4gICAgICAgICAgICB7e29wdGlvbi5sYWJlbH19XG4gICAgICAgIDwvbWF0LW9wdGlvbj5cbiAgICA8L21hdC1hdXRvY29tcGxldGU+XG48L21hdC1mb3JtLWZpZWxkPiJdfQ==
@@ -0,0 +1,19 @@
1
+ import { ControlType } from '../control-type';
2
+ import { SearchFilterBase } from '../search-filter-base.model';
3
+ /**
4
+ * Search filter autocomplete field configuration. Options for the autocomplete are provided
5
+ * indirectly via the search function that takes a string and returns an observable array of
6
+ * SelectOption<T>
7
+ */
8
+ export class AutocompleteSearchFilter extends SearchFilterBase {
9
+ constructor(options = {}) {
10
+ super(options);
11
+ this.controlType = ControlType.autocomplete;
12
+ this.search = options.search;
13
+ this.placeholder = options.placeholder;
14
+ this.label = options.label;
15
+ this.debounceTime = options.debounceTime ?? 300;
16
+ this.minimumCharacters = options.minimumCharacters ?? 3;
17
+ }
18
+ }
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b2NvbXBsZXRlLXNlYXJjaC1maWx0ZXIubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2VudHJ5LWNvbXBvbmVudHMvc2VhcmNoLWZpbHRlci9hdXRvY29tcGxldGUvYXV0b2NvbXBsZXRlLXNlYXJjaC1maWx0ZXIubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzlDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBSS9EOzs7O0dBSUc7QUFDSCxNQUFNLE9BQU8sd0JBQTRCLFNBQVEsZ0JBQW1CO0lBU2xFLFlBQVksVUFBZ0QsRUFBRTtRQUM1RCxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7UUFUakIsZ0JBQVcsR0FBRyxXQUFXLENBQUMsWUFBWSxDQUFDO1FBVXJDLElBQUksQ0FBQyxNQUFNLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQztRQUM3QixJQUFJLENBQUMsV0FBVyxHQUFHLE9BQU8sQ0FBQyxXQUFXLENBQUM7UUFDdkMsSUFBSSxDQUFDLEtBQUssR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDO1FBQzNCLElBQUksQ0FBQyxZQUFZLEdBQUcsT0FBTyxDQUFDLFlBQVksSUFBSSxHQUFHLENBQUM7UUFDaEQsSUFBSSxDQUFDLGlCQUFpQixHQUFHLE9BQU8sQ0FBQyxpQkFBaUIsSUFBSSxDQUFDLENBQUM7SUFDMUQsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29udHJvbFR5cGUgfSBmcm9tICcuLi9jb250cm9sLXR5cGUnO1xuaW1wb3J0IHsgU2VhcmNoRmlsdGVyQmFzZSB9IGZyb20gJy4uL3NlYXJjaC1maWx0ZXItYmFzZS5tb2RlbCc7XG5pbXBvcnQgeyBTZWxlY3RPcHRpb24gfSBmcm9tICcuLi9zZWxlY3Qtb3B0aW9uLm1vZGVsJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcblxuLyoqXG4gKiBTZWFyY2ggZmlsdGVyIGF1dG9jb21wbGV0ZSBmaWVsZCBjb25maWd1cmF0aW9uLiBPcHRpb25zIGZvciB0aGUgYXV0b2NvbXBsZXRlIGFyZSBwcm92aWRlZFxuICogaW5kaXJlY3RseSB2aWEgdGhlIHNlYXJjaCBmdW5jdGlvbiB0aGF0IHRha2VzIGEgc3RyaW5nIGFuZCByZXR1cm5zIGFuIG9ic2VydmFibGUgYXJyYXkgb2ZcbiAqIFNlbGVjdE9wdGlvbjxUPlxuICovXG5leHBvcnQgY2xhc3MgQXV0b2NvbXBsZXRlU2VhcmNoRmlsdGVyPFQ+IGV4dGVuZHMgU2VhcmNoRmlsdGVyQmFzZTxUPntcbiAgY29udHJvbFR5cGUgPSBDb250cm9sVHlwZS5hdXRvY29tcGxldGU7XG4gIC8qKiBDYWxsYmFjayBmdW5jdGlvbiBmb3IgYXV0b2NvbXBsZXRlIG9wdGlvbnMgKi9cbiAgc2VhcmNoOiAoaW5wdXQ6IHN0cmluZykgPT4gT2JzZXJ2YWJsZTxTZWxlY3RPcHRpb248VD5bXT47XG4gIC8qKiBNaW5pbXVtIG51bWJlciBvZiBjaGFyYWN0ZXJzIHRoYXQgbXVzdCBlbnRlciB0byB0cmlnZ2VyIHRoZSBzZWFyY2ggZnVuY3Rpb24oZGVmYXVsdCBpcyAzKSAqL1xuICBtaW5pbXVtQ2hhcmFjdGVyczogbnVtYmVyO1xuICAvKiogRGVsYXkgaW4gdHlwaW5nIGJlZm9yZSB0cmlnZ2VyaW5nIHRoZSBzZWFyY2ggZnVuY3Rpb24gaW4gbWlsbGlzZWNvbmRzKGRlZmF1bHQgaXMgMzAwKSAqL1xuICBkZWJvdW5jZVRpbWU6IG51bWJlcjtcblxuICBjb25zdHJ1Y3RvcihvcHRpb25zOiBQYXJ0aWFsPEF1dG9jb21wbGV0ZVNlYXJjaEZpbHRlcjxUPj4gPSB7fSkge1xuICAgIHN1cGVyKG9wdGlvbnMpO1xuICAgIHRoaXMuc2VhcmNoID0gb3B0aW9ucy5zZWFyY2g7XG4gICAgdGhpcy5wbGFjZWhvbGRlciA9IG9wdGlvbnMucGxhY2Vob2xkZXI7XG4gICAgdGhpcy5sYWJlbCA9IG9wdGlvbnMubGFiZWw7XG4gICAgdGhpcy5kZWJvdW5jZVRpbWUgPSBvcHRpb25zLmRlYm91bmNlVGltZSA/PyAzMDA7XG4gICAgdGhpcy5taW5pbXVtQ2hhcmFjdGVycyA9IG9wdGlvbnMubWluaW11bUNoYXJhY3RlcnMgPz8gMztcbiAgfVxufVxuIl19
@@ -0,0 +1,7 @@
1
+ export var ControlType;
2
+ (function (ControlType) {
3
+ ControlType["text"] = "text-input";
4
+ ControlType["select"] = "select-input";
5
+ ControlType["autocomplete"] = "autocomplete-input";
6
+ })(ControlType || (ControlType = {}));
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJvbC10eXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9lbnRyeS1jb21wb25lbnRzL3NlYXJjaC1maWx0ZXIvY29udHJvbC10eXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBTixJQUFZLFdBSVg7QUFKRCxXQUFZLFdBQVc7SUFDbkIsa0NBQW1CLENBQUE7SUFDbkIsc0NBQXVCLENBQUE7SUFDdkIsa0RBQW1DLENBQUE7QUFDdkMsQ0FBQyxFQUpXLFdBQVcsS0FBWCxXQUFXLFFBSXRCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGVudW0gQ29udHJvbFR5cGUge1xuICAgIHRleHQgPSAndGV4dC1pbnB1dCcsXG4gICAgc2VsZWN0ID0gJ3NlbGVjdC1pbnB1dCcsXG4gICAgYXV0b2NvbXBsZXRlID0gJ2F1dG9jb21wbGV0ZS1pbnB1dCdcbn1cbiJdfQ==
@@ -1,13 +1,16 @@
1
1
  import { ChangeDetectionStrategy, Component, EventEmitter, Inject, Input, Output } from '@angular/core';
2
2
  import { UntypedFormGroup } from '@angular/forms';
3
3
  import { ENTRY_SEARCH_FILTER_CONFIG } from './search-filter-config.model';
4
+ import { ControlType } from './control-type';
4
5
  import * as i0 from "@angular/core";
5
6
  import * as i1 from "@angular/common";
6
7
  import * as i2 from "@angular/forms";
7
8
  import * as i3 from "@angular/material/button";
8
9
  import * as i4 from "@enigmatry/entry-components/button";
9
- import * as i5 from "./search-filter-input/search-filter-input.component";
10
- import * as i6 from "./search-filter-config.model";
10
+ import * as i5 from "./text/text-search-filter.component";
11
+ import * as i6 from "./select/select-search-filter.component";
12
+ import * as i7 from "./autocomplete/autocomplete-search-filter.component";
13
+ import * as i8 from "./search-filter-config.model";
11
14
  /**
12
15
  * Entry SearchFilter component.
13
16
  */
@@ -20,6 +23,7 @@ export class EntrySearchFilterComponent {
20
23
  * Emits the change in SearchFilterParams so the containing component can apply them and retrieve the filtered results.
21
24
  */
22
25
  this.searchFilterChange = new EventEmitter();
26
+ this.controlType = ControlType;
23
27
  }
24
28
  ngOnInit() {
25
29
  this.searchFilterForm = this.toFormGroup(this.searchFilters);
@@ -37,13 +41,22 @@ export class EntrySearchFilterComponent {
37
41
  });
38
42
  return new UntypedFormGroup(group);
39
43
  }
44
+ asTextSearchFilter(searchFilter) {
45
+ return searchFilter;
46
+ }
47
+ asSelectSearchFilter(searchFilter) {
48
+ return searchFilter;
49
+ }
50
+ asAutocompleteSearchFilter(searchFilter) {
51
+ return searchFilter;
52
+ }
40
53
  }
41
54
  EntrySearchFilterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: EntrySearchFilterComponent, deps: [{ token: ENTRY_SEARCH_FILTER_CONFIG }], target: i0.ɵɵFactoryTarget.Component });
42
- EntrySearchFilterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: EntrySearchFilterComponent, selector: "entry-search-filter", inputs: { searchFilters: "searchFilters" }, outputs: { searchFilterChange: "searchFilterChange" }, ngImport: i0, template: "<form (ngSubmit)=\"onSubmit()\" [formGroup]=\"searchFilterForm\" class=\"search-form-container entry-form\">\r\n <div *ngFor=\"let searchFilter of searchFilters\" class=\"form-field\">\r\n <entry-search-filter-input [searchFilter]=\"searchFilter\" [form]=\"searchFilterForm\">\r\n </entry-search-filter-input>\r\n </div>\r\n <div class=\"entry-search-filter-actions\">\r\n <button mat-button entry-submit-button>\r\n <span>{{config.applyButtonText}}</span>\r\n </button>\r\n </div>\r\n</form>", styles: [""], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "directive", type: i4.EntryButtonDirective, selector: "[mat-button][entry-submit-button],[mat-button][entry-cancel-button]" }, { kind: "component", type: i5.EntrySearchFilterInputComponent, selector: "entry-search-filter-input", inputs: ["searchFilter", "form"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
55
+ EntrySearchFilterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: EntrySearchFilterComponent, selector: "entry-search-filter", inputs: { searchFilters: "searchFilters" }, outputs: { searchFilterChange: "searchFilterChange" }, ngImport: i0, template: "<form (ngSubmit)=\"onSubmit()\" [formGroup]=\"searchFilterForm\" class=\"search-form-container entry-form\">\r\n <div *ngFor=\"let searchFilter of searchFilters\" class=\"form-field\">\r\n <ng-container [ngSwitch]=\"searchFilter.controlType\">\r\n <entry-text-search-filter *ngSwitchCase=\"controlType.text\" [searchFilter]=\"asTextSearchFilter(searchFilter)\" [form]=\"searchFilterForm\"></entry-text-search-filter>\r\n <entry-select-search-filter *ngSwitchCase=\"controlType.select\" [searchFilter]=\"asSelectSearchFilter(searchFilter)\" [form]=\"searchFilterForm\"></entry-select-search-filter>\r\n <entry-autocomplete-search-filter *ngSwitchCase=\"controlType.autocomplete\" [searchFilter]=\"asAutocompleteSearchFilter(searchFilter)\" [form]=\"searchFilterForm\"></entry-autocomplete-search-filter>\r\n </ng-container>\r\n </div>\r\n <div class=\"entry-search-filter-actions\">\r\n <button mat-button entry-submit-button>\r\n <span>{{config.applyButtonText}}</span>\r\n </button>\r\n </div>\r\n</form>", dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "directive", type: i4.EntryButtonDirective, selector: "[mat-button][entry-submit-button],[mat-button][entry-cancel-button]" }, { kind: "component", type: i5.TextSearchFilterComponent, selector: "entry-text-search-filter", inputs: ["searchFilter", "form"] }, { kind: "component", type: i6.SelectSearchFilterComponent, selector: "entry-select-search-filter", inputs: ["searchFilter", "form"] }, { kind: "component", type: i7.AutocompleteSearchFilterComponent, selector: "entry-autocomplete-search-filter", inputs: ["searchFilter", "form"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
43
56
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: EntrySearchFilterComponent, decorators: [{
44
57
  type: Component,
45
- args: [{ selector: 'entry-search-filter', changeDetection: ChangeDetectionStrategy.OnPush, template: "<form (ngSubmit)=\"onSubmit()\" [formGroup]=\"searchFilterForm\" class=\"search-form-container entry-form\">\r\n <div *ngFor=\"let searchFilter of searchFilters\" class=\"form-field\">\r\n <entry-search-filter-input [searchFilter]=\"searchFilter\" [form]=\"searchFilterForm\">\r\n </entry-search-filter-input>\r\n </div>\r\n <div class=\"entry-search-filter-actions\">\r\n <button mat-button entry-submit-button>\r\n <span>{{config.applyButtonText}}</span>\r\n </button>\r\n </div>\r\n</form>" }]
46
- }], ctorParameters: function () { return [{ type: i6.EntrySearchFilterConfig, decorators: [{
58
+ args: [{ selector: 'entry-search-filter', changeDetection: ChangeDetectionStrategy.OnPush, template: "<form (ngSubmit)=\"onSubmit()\" [formGroup]=\"searchFilterForm\" class=\"search-form-container entry-form\">\r\n <div *ngFor=\"let searchFilter of searchFilters\" class=\"form-field\">\r\n <ng-container [ngSwitch]=\"searchFilter.controlType\">\r\n <entry-text-search-filter *ngSwitchCase=\"controlType.text\" [searchFilter]=\"asTextSearchFilter(searchFilter)\" [form]=\"searchFilterForm\"></entry-text-search-filter>\r\n <entry-select-search-filter *ngSwitchCase=\"controlType.select\" [searchFilter]=\"asSelectSearchFilter(searchFilter)\" [form]=\"searchFilterForm\"></entry-select-search-filter>\r\n <entry-autocomplete-search-filter *ngSwitchCase=\"controlType.autocomplete\" [searchFilter]=\"asAutocompleteSearchFilter(searchFilter)\" [form]=\"searchFilterForm\"></entry-autocomplete-search-filter>\r\n </ng-container>\r\n </div>\r\n <div class=\"entry-search-filter-actions\">\r\n <button mat-button entry-submit-button>\r\n <span>{{config.applyButtonText}}</span>\r\n </button>\r\n </div>\r\n</form>" }]
59
+ }], ctorParameters: function () { return [{ type: i8.EntrySearchFilterConfig, decorators: [{
47
60
  type: Inject,
48
61
  args: [ENTRY_SEARCH_FILTER_CONFIG]
49
62
  }] }]; }, propDecorators: { searchFilters: [{
@@ -51,4 +64,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
51
64
  }], searchFilterChange: [{
52
65
  type: Output
53
66
  }] } });
54
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50cnktc2VhcmNoLWZpbHRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2VudHJ5LWNvbXBvbmVudHMvc2VhcmNoLWZpbHRlci9lbnRyeS1zZWFyY2gtZmlsdGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL2xpYnMvZW50cnktY29tcG9uZW50cy9zZWFyY2gtZmlsdGVyL2VudHJ5LXNlYXJjaC1maWx0ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDaEgsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFbEQsT0FBTyxFQUFFLDBCQUEwQixFQUEyQixNQUFNLDhCQUE4QixDQUFDOzs7Ozs7OztBQUduRzs7R0FFRztBQU9ILE1BQU0sT0FBTywwQkFBMEI7SUFXckMsWUFBdUQsTUFBK0I7UUFBL0IsV0FBTSxHQUFOLE1BQU0sQ0FBeUI7UUFUdEYsd0dBQXdHO1FBQy9GLGtCQUFhLEdBQTRCLEVBQUUsQ0FBQztRQUNyRDs7V0FFRztRQUNPLHVCQUFrQixHQUFHLElBQUksWUFBWSxFQUFzQixDQUFDO0lBSW9CLENBQUM7SUFFM0YsUUFBUTtRQUNOLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUMvRCxDQUFDO0lBRUQsUUFBUTtRQUNOLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUM7UUFDOUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBRUQsV0FBVyxDQUFDLGFBQXNDO1FBQ2hELE1BQU0sS0FBSyxHQUFRLEVBQUUsQ0FBQztRQUN0QixhQUFhLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxFQUFFO1lBQ25DLE1BQU0sV0FBVyxHQUFHLFlBQVksQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUNqRCxLQUFLLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxHQUFHLFdBQVcsQ0FBQztZQUN0QyxZQUFZLENBQUMsV0FBVyxHQUFHLFdBQVcsQ0FBQztRQUN6QyxDQUFDLENBQUMsQ0FBQztRQUNILE9BQU8sSUFBSSxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNyQyxDQUFDOzt3SEE5QlUsMEJBQTBCLGtCQVdqQiwwQkFBMEI7NEdBWG5DLDBCQUEwQiw4SkNmdkMsaWlCQVVPOzRGREtNLDBCQUEwQjtrQkFOdEMsU0FBUzsrQkFDRSxxQkFBcUIsbUJBR2QsdUJBQXVCLENBQUMsTUFBTTs7MEJBYWxDLE1BQU07MkJBQUMsMEJBQTBCOzRDQVJyQyxhQUFhO3NCQUFyQixLQUFLO2dCQUlJLGtCQUFrQjtzQkFBM0IsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5qZWN0LCBJbnB1dCwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgVW50eXBlZEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgU2VhcmNoRmlsdGVyUGFyYW1zIH0gZnJvbSAnLi9zZWFyY2gtZmlsdGVyLXBhcmFtcy50eXBlJztcclxuaW1wb3J0IHsgRU5UUllfU0VBUkNIX0ZJTFRFUl9DT05GSUcsIEVudHJ5U2VhcmNoRmlsdGVyQ29uZmlnIH0gZnJvbSAnLi9zZWFyY2gtZmlsdGVyLWNvbmZpZy5tb2RlbCc7XHJcbmltcG9ydCB7IFNlYXJjaEZpbHRlckJhc2UgfSBmcm9tICcuL3NlYXJjaC1maWx0ZXItaW5wdXQvc2VhcmNoLWZpbHRlci1iYXNlLm1vZGVsJztcclxuXHJcbi8qKlxyXG4gKiBFbnRyeSBTZWFyY2hGaWx0ZXIgY29tcG9uZW50LlxyXG4gKi9cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdlbnRyeS1zZWFyY2gtZmlsdGVyJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vZW50cnktc2VhcmNoLWZpbHRlci5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vZW50cnktc2VhcmNoLWZpbHRlci5jb21wb25lbnQuc2NzcyddLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBFbnRyeVNlYXJjaEZpbHRlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblxyXG4gIC8qKiBDb25maWd1cmF0aW9uIG9mIHRoZSBzZWFyY2ggZmlsdGVycyBpbnB1dHMgdGhhdCB3aWxsIGJlIGRpc3BsYXllZCBpbiB0aGUgc2VhcmNoLWZpbHRlciBjb21wb25lbnQuICovXHJcbiAgQElucHV0KCkgc2VhcmNoRmlsdGVyczogU2VhcmNoRmlsdGVyQmFzZTxhbnk+W10gPSBbXTtcclxuICAvKipcclxuICAgKiBFbWl0cyB0aGUgY2hhbmdlIGluIFNlYXJjaEZpbHRlclBhcmFtcyBzbyB0aGUgY29udGFpbmluZyBjb21wb25lbnQgY2FuIGFwcGx5IHRoZW0gYW5kIHJldHJpZXZlIHRoZSBmaWx0ZXJlZCByZXN1bHRzLlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBzZWFyY2hGaWx0ZXJDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPFNlYXJjaEZpbHRlclBhcmFtcz4oKTtcclxuXHJcbiAgc2VhcmNoRmlsdGVyRm9ybSE6IFVudHlwZWRGb3JtR3JvdXA7XHJcblxyXG4gIGNvbnN0cnVjdG9yKEBJbmplY3QoRU5UUllfU0VBUkNIX0ZJTFRFUl9DT05GSUcpIHB1YmxpYyBjb25maWc6IEVudHJ5U2VhcmNoRmlsdGVyQ29uZmlnKSB7IH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLnNlYXJjaEZpbHRlckZvcm0gPSB0aGlzLnRvRm9ybUdyb3VwKHRoaXMuc2VhcmNoRmlsdGVycyk7XHJcbiAgfVxyXG5cclxuICBvblN1Ym1pdCgpIHtcclxuICAgIGNvbnN0IGZvcm1WYWx1ZSA9IHRoaXMuc2VhcmNoRmlsdGVyRm9ybS52YWx1ZTtcclxuICAgIHRoaXMuc2VhcmNoRmlsdGVyQ2hhbmdlLmVtaXQoZm9ybVZhbHVlKTtcclxuICB9XHJcblxyXG4gIHRvRm9ybUdyb3VwKHNlYXJjaEZpbHRlcnM6IFNlYXJjaEZpbHRlckJhc2U8YW55PltdKSB7XHJcbiAgICBjb25zdCBncm91cDogYW55ID0ge307XHJcbiAgICBzZWFyY2hGaWx0ZXJzLmZvckVhY2goc2VhcmNoRmlsdGVyID0+IHtcclxuICAgICAgY29uc3QgZm9ybUNvbnRyb2wgPSBzZWFyY2hGaWx0ZXIudG9Gb3JtQ29udHJvbCgpO1xyXG4gICAgICBncm91cFtzZWFyY2hGaWx0ZXIua2V5XSA9IGZvcm1Db250cm9sO1xyXG4gICAgICBzZWFyY2hGaWx0ZXIuZm9ybUNvbnRyb2wgPSBmb3JtQ29udHJvbDtcclxuICAgIH0pO1xyXG4gICAgcmV0dXJuIG5ldyBVbnR5cGVkRm9ybUdyb3VwKGdyb3VwKTtcclxuICB9XHJcbn1cclxuXHJcbiIsIjxmb3JtIChuZ1N1Ym1pdCk9XCJvblN1Ym1pdCgpXCIgW2Zvcm1Hcm91cF09XCJzZWFyY2hGaWx0ZXJGb3JtXCIgY2xhc3M9XCJzZWFyY2gtZm9ybS1jb250YWluZXIgZW50cnktZm9ybVwiPlxyXG4gICAgPGRpdiAqbmdGb3I9XCJsZXQgc2VhcmNoRmlsdGVyIG9mIHNlYXJjaEZpbHRlcnNcIiBjbGFzcz1cImZvcm0tZmllbGRcIj5cclxuICAgICAgICA8ZW50cnktc2VhcmNoLWZpbHRlci1pbnB1dCBbc2VhcmNoRmlsdGVyXT1cInNlYXJjaEZpbHRlclwiIFtmb3JtXT1cInNlYXJjaEZpbHRlckZvcm1cIj5cclxuICAgICAgICA8L2VudHJ5LXNlYXJjaC1maWx0ZXItaW5wdXQ+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJlbnRyeS1zZWFyY2gtZmlsdGVyLWFjdGlvbnNcIj5cclxuICAgICAgICA8YnV0dG9uIG1hdC1idXR0b24gZW50cnktc3VibWl0LWJ1dHRvbj5cclxuICAgICAgICAgICAgPHNwYW4+e3tjb25maWcuYXBwbHlCdXR0b25UZXh0fX08L3NwYW4+XHJcbiAgICAgICAgPC9idXR0b24+XHJcbiAgICA8L2Rpdj5cclxuPC9mb3JtPiJdfQ==
67
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50cnktc2VhcmNoLWZpbHRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2VudHJ5LWNvbXBvbmVudHMvc2VhcmNoLWZpbHRlci9lbnRyeS1zZWFyY2gtZmlsdGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL2xpYnMvZW50cnktY29tcG9uZW50cy9zZWFyY2gtZmlsdGVyL2VudHJ5LXNlYXJjaC1maWx0ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDaEgsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFbEQsT0FBTyxFQUFFLDBCQUEwQixFQUEyQixNQUFNLDhCQUE4QixDQUFDO0FBS25HLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7Ozs7OztBQUU3Qzs7R0FFRztBQU1ILE1BQU0sT0FBTywwQkFBMEI7SUFZckMsWUFBdUQsTUFBK0I7UUFBL0IsV0FBTSxHQUFOLE1BQU0sQ0FBeUI7UUFWdEYsd0dBQXdHO1FBQy9GLGtCQUFhLEdBQTRCLEVBQUUsQ0FBQztRQUNyRDs7V0FFRztRQUNPLHVCQUFrQixHQUFHLElBQUksWUFBWSxFQUFzQixDQUFDO1FBR3RFLGdCQUFXLEdBQUcsV0FBVyxDQUFDO0lBRWdFLENBQUM7SUFFM0YsUUFBUTtRQUNOLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUMvRCxDQUFDO0lBRUQsUUFBUTtRQUNOLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUM7UUFDOUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBRUQsV0FBVyxDQUFDLGFBQXNDO1FBQ2hELE1BQU0sS0FBSyxHQUFRLEVBQUUsQ0FBQztRQUN0QixhQUFhLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxFQUFFO1lBQ25DLE1BQU0sV0FBVyxHQUFHLFlBQVksQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUNqRCxLQUFLLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxHQUFHLFdBQVcsQ0FBQztZQUN0QyxZQUFZLENBQUMsV0FBVyxHQUFHLFdBQVcsQ0FBQztRQUN6QyxDQUFDLENBQUMsQ0FBQztRQUNILE9BQU8sSUFBSSxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNyQyxDQUFDO0lBRUQsa0JBQWtCLENBQUMsWUFBbUM7UUFDcEQsT0FBTyxZQUFnQyxDQUFDO0lBQzFDLENBQUM7SUFDRCxvQkFBb0IsQ0FBSSxZQUFpQztRQUN2RCxPQUFPLFlBQXFDLENBQUM7SUFDL0MsQ0FBQztJQUNELDBCQUEwQixDQUFJLFlBQWlDO1FBQzdELE9BQU8sWUFBMkMsQ0FBQztJQUNyRCxDQUFDOzt3SEF6Q1UsMEJBQTBCLGtCQVlqQiwwQkFBMEI7NEdBWm5DLDBCQUEwQiw4SkNsQnZDLG1rQ0FhTzs0RkRLTSwwQkFBMEI7a0JBTHRDLFNBQVM7K0JBQ0UscUJBQXFCLG1CQUVkLHVCQUF1QixDQUFDLE1BQU07OzBCQWNsQyxNQUFNOzJCQUFDLDBCQUEwQjs0Q0FUckMsYUFBYTtzQkFBckIsS0FBSztnQkFJSSxrQkFBa0I7c0JBQTNCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIEluamVjdCwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFVudHlwZWRGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IFNlYXJjaEZpbHRlclBhcmFtcyB9IGZyb20gJy4vc2VhcmNoLWZpbHRlci1wYXJhbXMudHlwZSc7XHJcbmltcG9ydCB7IEVOVFJZX1NFQVJDSF9GSUxURVJfQ09ORklHLCBFbnRyeVNlYXJjaEZpbHRlckNvbmZpZyB9IGZyb20gJy4vc2VhcmNoLWZpbHRlci1jb25maWcubW9kZWwnO1xyXG5pbXBvcnQgeyBTZWFyY2hGaWx0ZXJCYXNlIH0gZnJvbSAnLi9zZWFyY2gtZmlsdGVyLWJhc2UubW9kZWwnO1xyXG5pbXBvcnQgeyBUZXh0U2VhcmNoRmlsdGVyIH0gZnJvbSAnLi90ZXh0L3RleHQtc2VhcmNoLWZpbHRlci5tb2RlbCc7XHJcbmltcG9ydCB7IFNlbGVjdFNlYXJjaEZpbHRlciB9IGZyb20gJy4vc2VsZWN0L3NlbGVjdC1zZWFyY2gtZmlsdGVyLm1vZGVsJztcclxuaW1wb3J0IHsgQXV0b2NvbXBsZXRlU2VhcmNoRmlsdGVyIH0gZnJvbSAnLi9hdXRvY29tcGxldGUvYXV0b2NvbXBsZXRlLXNlYXJjaC1maWx0ZXIubW9kZWwnO1xyXG5pbXBvcnQgeyBDb250cm9sVHlwZSB9IGZyb20gJy4vY29udHJvbC10eXBlJztcclxuXHJcbi8qKlxyXG4gKiBFbnRyeSBTZWFyY2hGaWx0ZXIgY29tcG9uZW50LlxyXG4gKi9cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdlbnRyeS1zZWFyY2gtZmlsdGVyJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vZW50cnktc2VhcmNoLWZpbHRlci5jb21wb25lbnQuaHRtbCcsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcclxufSlcclxuZXhwb3J0IGNsYXNzIEVudHJ5U2VhcmNoRmlsdGVyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuXHJcbiAgLyoqIENvbmZpZ3VyYXRpb24gb2YgdGhlIHNlYXJjaCBmaWx0ZXJzIGlucHV0cyB0aGF0IHdpbGwgYmUgZGlzcGxheWVkIGluIHRoZSBzZWFyY2gtZmlsdGVyIGNvbXBvbmVudC4gKi9cclxuICBASW5wdXQoKSBzZWFyY2hGaWx0ZXJzOiBTZWFyY2hGaWx0ZXJCYXNlPGFueT5bXSA9IFtdO1xyXG4gIC8qKlxyXG4gICAqIEVtaXRzIHRoZSBjaGFuZ2UgaW4gU2VhcmNoRmlsdGVyUGFyYW1zIHNvIHRoZSBjb250YWluaW5nIGNvbXBvbmVudCBjYW4gYXBwbHkgdGhlbSBhbmQgcmV0cmlldmUgdGhlIGZpbHRlcmVkIHJlc3VsdHMuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIHNlYXJjaEZpbHRlckNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8U2VhcmNoRmlsdGVyUGFyYW1zPigpO1xyXG5cclxuICBzZWFyY2hGaWx0ZXJGb3JtITogVW50eXBlZEZvcm1Hcm91cDtcclxuICBjb250cm9sVHlwZSA9IENvbnRyb2xUeXBlO1xyXG5cclxuICBjb25zdHJ1Y3RvcihASW5qZWN0KEVOVFJZX1NFQVJDSF9GSUxURVJfQ09ORklHKSBwdWJsaWMgY29uZmlnOiBFbnRyeVNlYXJjaEZpbHRlckNvbmZpZykgeyB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5zZWFyY2hGaWx0ZXJGb3JtID0gdGhpcy50b0Zvcm1Hcm91cCh0aGlzLnNlYXJjaEZpbHRlcnMpO1xyXG4gIH1cclxuXHJcbiAgb25TdWJtaXQoKSB7XHJcbiAgICBjb25zdCBmb3JtVmFsdWUgPSB0aGlzLnNlYXJjaEZpbHRlckZvcm0udmFsdWU7XHJcbiAgICB0aGlzLnNlYXJjaEZpbHRlckNoYW5nZS5lbWl0KGZvcm1WYWx1ZSk7XHJcbiAgfVxyXG5cclxuICB0b0Zvcm1Hcm91cChzZWFyY2hGaWx0ZXJzOiBTZWFyY2hGaWx0ZXJCYXNlPGFueT5bXSkge1xyXG4gICAgY29uc3QgZ3JvdXA6IGFueSA9IHt9O1xyXG4gICAgc2VhcmNoRmlsdGVycy5mb3JFYWNoKHNlYXJjaEZpbHRlciA9PiB7XHJcbiAgICAgIGNvbnN0IGZvcm1Db250cm9sID0gc2VhcmNoRmlsdGVyLnRvRm9ybUNvbnRyb2woKTtcclxuICAgICAgZ3JvdXBbc2VhcmNoRmlsdGVyLmtleV0gPSBmb3JtQ29udHJvbDtcclxuICAgICAgc2VhcmNoRmlsdGVyLmZvcm1Db250cm9sID0gZm9ybUNvbnRyb2w7XHJcbiAgICB9KTtcclxuICAgIHJldHVybiBuZXcgVW50eXBlZEZvcm1Hcm91cChncm91cCk7XHJcbiAgfVxyXG5cclxuICBhc1RleHRTZWFyY2hGaWx0ZXIoc2VhcmNoRmlsdGVyOiBTZWFyY2hGaWx0ZXJCYXNlPGFueT4pOiBUZXh0U2VhcmNoRmlsdGVyIHtcclxuICAgIHJldHVybiBzZWFyY2hGaWx0ZXIgYXMgVGV4dFNlYXJjaEZpbHRlcjtcclxuICB9XHJcbiAgYXNTZWxlY3RTZWFyY2hGaWx0ZXI8VD4oc2VhcmNoRmlsdGVyOiBTZWFyY2hGaWx0ZXJCYXNlPFQ+KTogU2VsZWN0U2VhcmNoRmlsdGVyPFQ+IHtcclxuICAgIHJldHVybiBzZWFyY2hGaWx0ZXIgYXMgU2VsZWN0U2VhcmNoRmlsdGVyPFQ+O1xyXG4gIH1cclxuICBhc0F1dG9jb21wbGV0ZVNlYXJjaEZpbHRlcjxUPihzZWFyY2hGaWx0ZXI6IFNlYXJjaEZpbHRlckJhc2U8VD4pOiBBdXRvY29tcGxldGVTZWFyY2hGaWx0ZXI8VD4ge1xyXG4gICAgcmV0dXJuIHNlYXJjaEZpbHRlciBhcyBBdXRvY29tcGxldGVTZWFyY2hGaWx0ZXI8VD47XHJcbiAgfVxyXG59XHJcblxyXG4iLCI8Zm9ybSAobmdTdWJtaXQpPVwib25TdWJtaXQoKVwiIFtmb3JtR3JvdXBdPVwic2VhcmNoRmlsdGVyRm9ybVwiIGNsYXNzPVwic2VhcmNoLWZvcm0tY29udGFpbmVyIGVudHJ5LWZvcm1cIj5cclxuICAgIDxkaXYgKm5nRm9yPVwibGV0IHNlYXJjaEZpbHRlciBvZiBzZWFyY2hGaWx0ZXJzXCIgY2xhc3M9XCJmb3JtLWZpZWxkXCI+XHJcbiAgICAgICAgPG5nLWNvbnRhaW5lciBbbmdTd2l0Y2hdPVwic2VhcmNoRmlsdGVyLmNvbnRyb2xUeXBlXCI+XHJcbiAgICAgICAgICAgIDxlbnRyeS10ZXh0LXNlYXJjaC1maWx0ZXIgKm5nU3dpdGNoQ2FzZT1cImNvbnRyb2xUeXBlLnRleHRcIiBbc2VhcmNoRmlsdGVyXT1cImFzVGV4dFNlYXJjaEZpbHRlcihzZWFyY2hGaWx0ZXIpXCIgW2Zvcm1dPVwic2VhcmNoRmlsdGVyRm9ybVwiPjwvZW50cnktdGV4dC1zZWFyY2gtZmlsdGVyPlxyXG4gICAgICAgICAgICA8ZW50cnktc2VsZWN0LXNlYXJjaC1maWx0ZXIgKm5nU3dpdGNoQ2FzZT1cImNvbnRyb2xUeXBlLnNlbGVjdFwiIFtzZWFyY2hGaWx0ZXJdPVwiYXNTZWxlY3RTZWFyY2hGaWx0ZXIoc2VhcmNoRmlsdGVyKVwiIFtmb3JtXT1cInNlYXJjaEZpbHRlckZvcm1cIj48L2VudHJ5LXNlbGVjdC1zZWFyY2gtZmlsdGVyPlxyXG4gICAgICAgICAgICA8ZW50cnktYXV0b2NvbXBsZXRlLXNlYXJjaC1maWx0ZXIgKm5nU3dpdGNoQ2FzZT1cImNvbnRyb2xUeXBlLmF1dG9jb21wbGV0ZVwiIFtzZWFyY2hGaWx0ZXJdPVwiYXNBdXRvY29tcGxldGVTZWFyY2hGaWx0ZXIoc2VhcmNoRmlsdGVyKVwiIFtmb3JtXT1cInNlYXJjaEZpbHRlckZvcm1cIj48L2VudHJ5LWF1dG9jb21wbGV0ZS1zZWFyY2gtZmlsdGVyPlxyXG4gICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwiZW50cnktc2VhcmNoLWZpbHRlci1hY3Rpb25zXCI+XHJcbiAgICAgICAgPGJ1dHRvbiBtYXQtYnV0dG9uIGVudHJ5LXN1Ym1pdC1idXR0b24+XHJcbiAgICAgICAgICAgIDxzcGFuPnt7Y29uZmlnLmFwcGx5QnV0dG9uVGV4dH19PC9zcGFuPlxyXG4gICAgICAgIDwvYnV0dG9uPlxyXG4gICAgPC9kaXY+XHJcbjwvZm9ybT4iXX0=
@@ -5,22 +5,26 @@ import { MatInputModule } from '@angular/material/input';
5
5
  import { MatButtonModule } from '@angular/material/button';
6
6
  import { MatSelectModule } from '@angular/material/select';
7
7
  import { EntryButtonModule } from '@enigmatry/entry-components/button';
8
- import { MatTooltipModule } from '@angular/material/tooltip';
9
8
  import { EntrySearchFilterComponent } from './entry-search-filter.component';
10
- import { EntrySearchFilterInputComponent } from './search-filter-input/search-filter-input.component';
9
+ import { TextSearchFilterComponent } from './text/text-search-filter.component';
10
+ import { SelectSearchFilterComponent } from './select/select-search-filter.component';
11
+ import { AutocompleteSearchFilterComponent } from './autocomplete/autocomplete-search-filter.component';
12
+ import { MatAutocompleteModule } from '@angular/material/autocomplete';
11
13
  import * as i0 from "@angular/core";
12
14
  export class EntrySearchFilterModule {
13
15
  }
14
16
  EntrySearchFilterModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: EntrySearchFilterModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
15
17
  EntrySearchFilterModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.10", ngImport: i0, type: EntrySearchFilterModule, declarations: [EntrySearchFilterComponent,
16
- EntrySearchFilterInputComponent], imports: [CommonModule,
18
+ TextSearchFilterComponent,
19
+ SelectSearchFilterComponent,
20
+ AutocompleteSearchFilterComponent], imports: [CommonModule,
17
21
  FormsModule,
18
22
  ReactiveFormsModule,
19
23
  MatInputModule,
20
24
  MatButtonModule,
21
25
  EntryButtonModule,
22
26
  MatSelectModule,
23
- MatTooltipModule], exports: [EntrySearchFilterComponent] });
27
+ MatAutocompleteModule], exports: [EntrySearchFilterComponent] });
24
28
  EntrySearchFilterModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: EntrySearchFilterModule, imports: [CommonModule,
25
29
  FormsModule,
26
30
  ReactiveFormsModule,
@@ -28,13 +32,15 @@ EntrySearchFilterModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0",
28
32
  MatButtonModule,
29
33
  EntryButtonModule,
30
34
  MatSelectModule,
31
- MatTooltipModule] });
35
+ MatAutocompleteModule] });
32
36
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: EntrySearchFilterModule, decorators: [{
33
37
  type: NgModule,
34
38
  args: [{
35
39
  declarations: [
36
40
  EntrySearchFilterComponent,
37
- EntrySearchFilterInputComponent
41
+ TextSearchFilterComponent,
42
+ SelectSearchFilterComponent,
43
+ AutocompleteSearchFilterComponent
38
44
  ],
39
45
  imports: [
40
46
  CommonModule,
@@ -44,11 +50,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
44
50
  MatButtonModule,
45
51
  EntryButtonModule,
46
52
  MatSelectModule,
47
- MatTooltipModule
53
+ MatAutocompleteModule
48
54
  ],
49
55
  exports: [
50
56
  EntrySearchFilterComponent
51
57
  ]
52
58
  }]
53
59
  }] });
54
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50cnktc2VhcmNoLWZpbHRlci5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2VudHJ5LWNvbXBvbmVudHMvc2VhcmNoLWZpbHRlci9lbnRyeS1zZWFyY2gtZmlsdGVyLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDdkUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDN0QsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDN0UsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0scURBQXFELENBQUM7O0FBcUJ0RyxNQUFNLE9BQU8sdUJBQXVCOztxSEFBdkIsdUJBQXVCO3NIQUF2Qix1QkFBdUIsaUJBakJoQywwQkFBMEI7UUFDMUIsK0JBQStCLGFBRy9CLFlBQVk7UUFDWixXQUFXO1FBQ1gsbUJBQW1CO1FBQ25CLGNBQWM7UUFDZCxlQUFlO1FBQ2YsaUJBQWlCO1FBQ2pCLGVBQWU7UUFDZixnQkFBZ0IsYUFHaEIsMEJBQTBCO3NIQUdqQix1QkFBdUIsWUFiaEMsWUFBWTtRQUNaLFdBQVc7UUFDWCxtQkFBbUI7UUFDbkIsY0FBYztRQUNkLGVBQWU7UUFDZixpQkFBaUI7UUFDakIsZUFBZTtRQUNmLGdCQUFnQjs0RkFNUCx1QkFBdUI7a0JBbkJuQyxRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRTt3QkFDWiwwQkFBMEI7d0JBQzFCLCtCQUErQjtxQkFDaEM7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osV0FBVzt3QkFDWCxtQkFBbUI7d0JBQ25CLGNBQWM7d0JBQ2QsZUFBZTt3QkFDZixpQkFBaUI7d0JBQ2pCLGVBQWU7d0JBQ2YsZ0JBQWdCO3FCQUNqQjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsMEJBQTBCO3FCQUMzQjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IEZvcm1zTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBNYXRJbnB1dE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2lucHV0JztcclxuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcclxuaW1wb3J0IHsgTWF0U2VsZWN0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc2VsZWN0JztcclxuaW1wb3J0IHsgRW50cnlCdXR0b25Nb2R1bGUgfSBmcm9tICdAZW5pZ21hdHJ5L2VudHJ5LWNvbXBvbmVudHMvYnV0dG9uJztcclxuaW1wb3J0IHsgTWF0VG9vbHRpcE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Rvb2x0aXAnO1xyXG5pbXBvcnQgeyBFbnRyeVNlYXJjaEZpbHRlckNvbXBvbmVudCB9IGZyb20gJy4vZW50cnktc2VhcmNoLWZpbHRlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBFbnRyeVNlYXJjaEZpbHRlcklucHV0Q29tcG9uZW50IH0gZnJvbSAnLi9zZWFyY2gtZmlsdGVyLWlucHV0L3NlYXJjaC1maWx0ZXItaW5wdXQuY29tcG9uZW50JztcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgZGVjbGFyYXRpb25zOiBbXHJcbiAgICBFbnRyeVNlYXJjaEZpbHRlckNvbXBvbmVudCxcclxuICAgIEVudHJ5U2VhcmNoRmlsdGVySW5wdXRDb21wb25lbnRcclxuICBdLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIENvbW1vbk1vZHVsZSxcclxuICAgIEZvcm1zTW9kdWxlLFxyXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcclxuICAgIE1hdElucHV0TW9kdWxlLFxyXG4gICAgTWF0QnV0dG9uTW9kdWxlLFxyXG4gICAgRW50cnlCdXR0b25Nb2R1bGUsXHJcbiAgICBNYXRTZWxlY3RNb2R1bGUsXHJcbiAgICBNYXRUb29sdGlwTW9kdWxlXHJcbiAgXSxcclxuICBleHBvcnRzOiBbXHJcbiAgICBFbnRyeVNlYXJjaEZpbHRlckNvbXBvbmVudFxyXG4gIF1cclxufSlcclxuZXhwb3J0IGNsYXNzIEVudHJ5U2VhcmNoRmlsdGVyTW9kdWxlIHsgfVxyXG4iXX0=
60
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50cnktc2VhcmNoLWZpbHRlci5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2VudHJ5LWNvbXBvbmVudHMvc2VhcmNoLWZpbHRlci9lbnRyeS1zZWFyY2gtZmlsdGVyLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDdkUsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDN0UsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDaEYsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDdEYsT0FBTyxFQUFFLGlDQUFpQyxFQUFFLE1BQU0scURBQXFELENBQUM7QUFDeEcsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7O0FBdUJ2RSxNQUFNLE9BQU8sdUJBQXVCOztxSEFBdkIsdUJBQXVCO3NIQUF2Qix1QkFBdUIsaUJBbkJoQywwQkFBMEI7UUFDMUIseUJBQXlCO1FBQ3pCLDJCQUEyQjtRQUMzQixpQ0FBaUMsYUFHakMsWUFBWTtRQUNaLFdBQVc7UUFDWCxtQkFBbUI7UUFDbkIsY0FBYztRQUNkLGVBQWU7UUFDZixpQkFBaUI7UUFDakIsZUFBZTtRQUNmLHFCQUFxQixhQUdyQiwwQkFBMEI7c0hBR2pCLHVCQUF1QixZQWJoQyxZQUFZO1FBQ1osV0FBVztRQUNYLG1CQUFtQjtRQUNuQixjQUFjO1FBQ2QsZUFBZTtRQUNmLGlCQUFpQjtRQUNqQixlQUFlO1FBQ2YscUJBQXFCOzRGQU1aLHVCQUF1QjtrQkFyQm5DLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFO3dCQUNaLDBCQUEwQjt3QkFDMUIseUJBQXlCO3dCQUN6QiwyQkFBMkI7d0JBQzNCLGlDQUFpQztxQkFDbEM7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osV0FBVzt3QkFDWCxtQkFBbUI7d0JBQ25CLGNBQWM7d0JBQ2QsZUFBZTt3QkFDZixpQkFBaUI7d0JBQ2pCLGVBQWU7d0JBQ2YscUJBQXFCO3FCQUN0QjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsMEJBQTBCO3FCQUMzQjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IEZvcm1zTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBNYXRJbnB1dE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2lucHV0JztcclxuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcclxuaW1wb3J0IHsgTWF0U2VsZWN0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc2VsZWN0JztcclxuaW1wb3J0IHsgRW50cnlCdXR0b25Nb2R1bGUgfSBmcm9tICdAZW5pZ21hdHJ5L2VudHJ5LWNvbXBvbmVudHMvYnV0dG9uJztcclxuaW1wb3J0IHsgRW50cnlTZWFyY2hGaWx0ZXJDb21wb25lbnQgfSBmcm9tICcuL2VudHJ5LXNlYXJjaC1maWx0ZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVGV4dFNlYXJjaEZpbHRlckNvbXBvbmVudCB9IGZyb20gJy4vdGV4dC90ZXh0LXNlYXJjaC1maWx0ZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgU2VsZWN0U2VhcmNoRmlsdGVyQ29tcG9uZW50IH0gZnJvbSAnLi9zZWxlY3Qvc2VsZWN0LXNlYXJjaC1maWx0ZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQXV0b2NvbXBsZXRlU2VhcmNoRmlsdGVyQ29tcG9uZW50IH0gZnJvbSAnLi9hdXRvY29tcGxldGUvYXV0b2NvbXBsZXRlLXNlYXJjaC1maWx0ZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTWF0QXV0b2NvbXBsZXRlTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYXV0b2NvbXBsZXRlJztcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgZGVjbGFyYXRpb25zOiBbXHJcbiAgICBFbnRyeVNlYXJjaEZpbHRlckNvbXBvbmVudCxcclxuICAgIFRleHRTZWFyY2hGaWx0ZXJDb21wb25lbnQsXHJcbiAgICBTZWxlY3RTZWFyY2hGaWx0ZXJDb21wb25lbnQsXHJcbiAgICBBdXRvY29tcGxldGVTZWFyY2hGaWx0ZXJDb21wb25lbnRcclxuICBdLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIENvbW1vbk1vZHVsZSxcclxuICAgIEZvcm1zTW9kdWxlLFxyXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcclxuICAgIE1hdElucHV0TW9kdWxlLFxyXG4gICAgTWF0QnV0dG9uTW9kdWxlLFxyXG4gICAgRW50cnlCdXR0b25Nb2R1bGUsXHJcbiAgICBNYXRTZWxlY3RNb2R1bGUsXHJcbiAgICBNYXRBdXRvY29tcGxldGVNb2R1bGVcclxuICBdLFxyXG4gIGV4cG9ydHM6IFtcclxuICAgIEVudHJ5U2VhcmNoRmlsdGVyQ29tcG9uZW50XHJcbiAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgRW50cnlTZWFyY2hGaWx0ZXJNb2R1bGUgeyB9XHJcbiJdfQ==
@@ -1,8 +1,9 @@
1
1
  export { EntrySearchFilterComponent } from './entry-search-filter.component';
2
- export { SearchFilterBase } from './search-filter-input/search-filter-base.model';
3
- export { TextSearchFilter } from './search-filter-input/inputs/text-search-filter.model';
4
- export { SelectSearchFilter } from './search-filter-input/inputs/select-search-filter.model';
5
- export { SelectFilterOption } from './search-filter-input/inputs/select-filter-option.model';
2
+ export { SearchFilterBase } from './search-filter-base.model';
3
+ export { TextSearchFilter } from './text/text-search-filter.model';
4
+ export { SelectSearchFilter } from './select/select-search-filter.model';
5
+ export { AutocompleteSearchFilter } from './autocomplete/autocomplete-search-filter.model';
6
+ export { SelectOption } from './select-option.model';
6
7
  export { EntrySearchFilterModule } from './entry-search-filter.module';
7
8
  export { ENTRY_SEARCH_FILTER_CONFIG, EntrySearchFilterConfig, provideEntrySearchFilterConfig } from './search-filter-config.model';
8
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvZW50cnktY29tcG9uZW50cy9zZWFyY2gtZmlsdGVyL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFHN0UsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFDbEYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sdURBQXVELENBQUM7QUFDekYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0seURBQXlELENBQUM7QUFDN0YsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0seURBQXlELENBQUM7QUFFN0YsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFFdkUsT0FBTyxFQUFFLDBCQUEwQixFQUFFLHVCQUF1QixFQUFFLDhCQUE4QixFQUFFLE1BQU0sOEJBQThCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgeyBFbnRyeVNlYXJjaEZpbHRlckNvbXBvbmVudCB9IGZyb20gJy4vZW50cnktc2VhcmNoLWZpbHRlci5jb21wb25lbnQnO1xuXG5leHBvcnQgeyBTZWFyY2hGaWx0ZXJQYXJhbXMgfSBmcm9tICcuL3NlYXJjaC1maWx0ZXItcGFyYW1zLnR5cGUnO1xuZXhwb3J0IHsgU2VhcmNoRmlsdGVyQmFzZSB9IGZyb20gJy4vc2VhcmNoLWZpbHRlci1pbnB1dC9zZWFyY2gtZmlsdGVyLWJhc2UubW9kZWwnO1xuZXhwb3J0IHsgVGV4dFNlYXJjaEZpbHRlciB9IGZyb20gJy4vc2VhcmNoLWZpbHRlci1pbnB1dC9pbnB1dHMvdGV4dC1zZWFyY2gtZmlsdGVyLm1vZGVsJztcbmV4cG9ydCB7IFNlbGVjdFNlYXJjaEZpbHRlciB9IGZyb20gJy4vc2VhcmNoLWZpbHRlci1pbnB1dC9pbnB1dHMvc2VsZWN0LXNlYXJjaC1maWx0ZXIubW9kZWwnO1xuZXhwb3J0IHsgU2VsZWN0RmlsdGVyT3B0aW9uIH0gZnJvbSAnLi9zZWFyY2gtZmlsdGVyLWlucHV0L2lucHV0cy9zZWxlY3QtZmlsdGVyLW9wdGlvbi5tb2RlbCc7XG5cbmV4cG9ydCB7IEVudHJ5U2VhcmNoRmlsdGVyTW9kdWxlIH0gZnJvbSAnLi9lbnRyeS1zZWFyY2gtZmlsdGVyLm1vZHVsZSc7XG5cbmV4cG9ydCB7IEVOVFJZX1NFQVJDSF9GSUxURVJfQ09ORklHLCBFbnRyeVNlYXJjaEZpbHRlckNvbmZpZywgcHJvdmlkZUVudHJ5U2VhcmNoRmlsdGVyQ29uZmlnIH0gZnJvbSAnLi9zZWFyY2gtZmlsdGVyLWNvbmZpZy5tb2RlbCc7XG4iXX0=
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvZW50cnktY29tcG9uZW50cy9zZWFyY2gtZmlsdGVyL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFHN0UsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDOUQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDbkUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDekUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0saURBQWlELENBQUM7QUFDM0YsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRXJELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBRXZFLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSx1QkFBdUIsRUFBRSw4QkFBOEIsRUFBRSxNQUFNLDhCQUE4QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHsgRW50cnlTZWFyY2hGaWx0ZXJDb21wb25lbnQgfSBmcm9tICcuL2VudHJ5LXNlYXJjaC1maWx0ZXIuY29tcG9uZW50JztcblxuZXhwb3J0IHsgU2VhcmNoRmlsdGVyUGFyYW1zIH0gZnJvbSAnLi9zZWFyY2gtZmlsdGVyLXBhcmFtcy50eXBlJztcbmV4cG9ydCB7IFNlYXJjaEZpbHRlckJhc2UgfSBmcm9tICcuL3NlYXJjaC1maWx0ZXItYmFzZS5tb2RlbCc7XG5leHBvcnQgeyBUZXh0U2VhcmNoRmlsdGVyIH0gZnJvbSAnLi90ZXh0L3RleHQtc2VhcmNoLWZpbHRlci5tb2RlbCc7XG5leHBvcnQgeyBTZWxlY3RTZWFyY2hGaWx0ZXIgfSBmcm9tICcuL3NlbGVjdC9zZWxlY3Qtc2VhcmNoLWZpbHRlci5tb2RlbCc7XG5leHBvcnQgeyBBdXRvY29tcGxldGVTZWFyY2hGaWx0ZXIgfSBmcm9tICcuL2F1dG9jb21wbGV0ZS9hdXRvY29tcGxldGUtc2VhcmNoLWZpbHRlci5tb2RlbCc7XG5leHBvcnQgeyBTZWxlY3RPcHRpb24gfSBmcm9tICcuL3NlbGVjdC1vcHRpb24ubW9kZWwnO1xuXG5leHBvcnQgeyBFbnRyeVNlYXJjaEZpbHRlck1vZHVsZSB9IGZyb20gJy4vZW50cnktc2VhcmNoLWZpbHRlci5tb2R1bGUnO1xuXG5leHBvcnQgeyBFTlRSWV9TRUFSQ0hfRklMVEVSX0NPTkZJRywgRW50cnlTZWFyY2hGaWx0ZXJDb25maWcsIHByb3ZpZGVFbnRyeVNlYXJjaEZpbHRlckNvbmZpZyB9IGZyb20gJy4vc2VhcmNoLWZpbHRlci1jb25maWcubW9kZWwnO1xuIl19
@@ -0,0 +1,26 @@
1
+ import { FormControl } from '@angular/forms';
2
+ import { ControlType } from './control-type';
3
+ /**
4
+ * Base Entry search filter input component.
5
+ */
6
+ export class SearchFilterBase {
7
+ constructor(options = {}) {
8
+ this.value = options.value;
9
+ this.key = options.key || '';
10
+ this.label = options.label || '';
11
+ this.placeholder = options.placeholder || '';
12
+ this.controlType = options.controlType || ControlType.text;
13
+ this.type = options.type || ControlType.text;
14
+ this.maxLength = options.maxLength || 256;
15
+ }
16
+ setValue(value) {
17
+ this.value = value;
18
+ if (this.formControl) {
19
+ this.formControl.patchValue(value);
20
+ }
21
+ }
22
+ toFormControl() {
23
+ return new FormControl(this.value);
24
+ }
25
+ }
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWZpbHRlci1iYXNlLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9lbnRyeS1jb21wb25lbnRzL3NlYXJjaC1maWx0ZXIvc2VhcmNoLWZpbHRlci1iYXNlLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFN0M7O0dBRUc7QUFDSCxNQUFNLE9BQU8sZ0JBQWdCO0lBa0IzQixZQUFZLFVBQXdDLEVBQUU7UUFDcEQsSUFBSSxDQUFDLEtBQUssR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDO1FBQzNCLElBQUksQ0FBQyxHQUFHLEdBQUcsT0FBTyxDQUFDLEdBQUcsSUFBSSxFQUFFLENBQUM7UUFDN0IsSUFBSSxDQUFDLEtBQUssR0FBRyxPQUFPLENBQUMsS0FBSyxJQUFJLEVBQUUsQ0FBQztRQUNqQyxJQUFJLENBQUMsV0FBVyxHQUFHLE9BQU8sQ0FBQyxXQUFXLElBQUksRUFBRSxDQUFDO1FBQzdDLElBQUksQ0FBQyxXQUFXLEdBQUcsT0FBTyxDQUFDLFdBQVcsSUFBSSxXQUFXLENBQUMsSUFBSSxDQUFDO1FBQzNELElBQUksQ0FBQyxJQUFJLEdBQUcsT0FBTyxDQUFDLElBQUksSUFBSSxXQUFXLENBQUMsSUFBSSxDQUFDO1FBQzdDLElBQUksQ0FBQyxTQUFTLEdBQUcsT0FBTyxDQUFDLFNBQVMsSUFBSSxHQUFHLENBQUM7SUFDNUMsQ0FBQztJQUVELFFBQVEsQ0FBQyxLQUFvQjtRQUMzQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUU7WUFDcEIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDcEM7SUFDSCxDQUFDO0lBRUQsYUFBYTtRQUNYLE9BQU8sSUFBSSxXQUFXLENBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3hDLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZvcm1Db250cm9sIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQ29udHJvbFR5cGUgfSBmcm9tICcuL2NvbnRyb2wtdHlwZSc7XG5cbi8qKlxuICogQmFzZSBFbnRyeSBzZWFyY2ggZmlsdGVyIGlucHV0IGNvbXBvbmVudC5cbiAqL1xuZXhwb3J0IGNsYXNzIFNlYXJjaEZpbHRlckJhc2U8VD4ge1xuICAvKiogVW5pcXVlIHNlYXJjaC1maWx0ZXIgaW5wdXQga2V5ICovXG4gIGtleTogc3RyaW5nO1xuICAvKiogRGVmYXVsdCB2YWx1ZSB0byBiZSBkaXNwbGF5ZWQvc2VsZWN0ZWQgaW4gdGhlIGlucHV0IGNvbnRyb2wgKi9cbiAgdmFsdWU6IFQgfCB1bmRlZmluZWQ7XG4gIC8qKiBMYWJlbCB0ZXh0IHRvIGJlIGRpc3BsYXllZCBmb3IgdGhlIHNlYXJjaC1maWx0ZXIgaW5wdXQgY29udHJvbCAqL1xuICBsYWJlbDogc3RyaW5nO1xuICAvKiogUGxhY2Vob2xkZXIgdGV4dCBmb3Igc2VhcmNoLWZpbHRlciBpbnB1dCBjb250cm9sICAqL1xuICBwbGFjZWhvbGRlcjogc3RyaW5nO1xuICAvKiogVHlwZSBvZiBpbnB1dCBjb250cm9sIGUuZy4gJ3RleHQnIG9yICdlbWFpbCcgKi9cbiAgdHlwZTogc3RyaW5nO1xuICAvKiogQ29udHJvbCB0eXBlIHRvIGJlIG92ZXJyaWRkZW4gaW4gaW1wbGVtZW50aW5nIGNsYXNzLCB1c2VkIHRvIHJlbmRlciB0aGUgcHJvcGVyIGlucHV0IHR5cGUgZS5nLiAndGV4dC1pbnB1dCcgKi9cbiAgY29udHJvbFR5cGU6IENvbnRyb2xUeXBlO1xuICAvKiogTWF4IHRleHQgbGVuZ3RoIHRvIGJlIGVudGVyZWQgaW4gdGhlIGlucHV0IGNvbXBvbmVudCAoZGVmYXVsdCBpcyAyNTYpICovXG4gIG1heExlbmd0aDogbnVtYmVyO1xuICAvKiogQSByZWZlcmVuY2UgdG8gdGhlIGZvcm0gY29udHJvbCBpdCByZXByZXNlbnRzICovXG4gIGZvcm1Db250cm9sOiBGb3JtQ29udHJvbDxUPjtcblxuICBjb25zdHJ1Y3RvcihvcHRpb25zOiBQYXJ0aWFsPFNlYXJjaEZpbHRlckJhc2U8VD4+ID0ge30pIHtcbiAgICB0aGlzLnZhbHVlID0gb3B0aW9ucy52YWx1ZTtcbiAgICB0aGlzLmtleSA9IG9wdGlvbnMua2V5IHx8ICcnO1xuICAgIHRoaXMubGFiZWwgPSBvcHRpb25zLmxhYmVsIHx8ICcnO1xuICAgIHRoaXMucGxhY2Vob2xkZXIgPSBvcHRpb25zLnBsYWNlaG9sZGVyIHx8ICcnO1xuICAgIHRoaXMuY29udHJvbFR5cGUgPSBvcHRpb25zLmNvbnRyb2xUeXBlIHx8IENvbnRyb2xUeXBlLnRleHQ7XG4gICAgdGhpcy50eXBlID0gb3B0aW9ucy50eXBlIHx8IENvbnRyb2xUeXBlLnRleHQ7XG4gICAgdGhpcy5tYXhMZW5ndGggPSBvcHRpb25zLm1heExlbmd0aCB8fCAyNTY7XG4gIH1cblxuICBzZXRWYWx1ZSh2YWx1ZTogVCB8IHVuZGVmaW5lZCkge1xuICAgIHRoaXMudmFsdWUgPSB2YWx1ZTtcbiAgICBpZiAodGhpcy5mb3JtQ29udHJvbCkge1xuICAgICAgdGhpcy5mb3JtQ29udHJvbC5wYXRjaFZhbHVlKHZhbHVlKTtcbiAgICB9XG4gIH1cblxuICB0b0Zvcm1Db250cm9sKCk6IEZvcm1Db250cm9sPFQ+IHtcbiAgICByZXR1cm4gbmV3IEZvcm1Db250cm9sPFQ+KHRoaXMudmFsdWUpO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,28 @@
1
+ import { ChangeDetectionStrategy, Component, Inject, Input } from '@angular/core';
2
+ import { ENTRY_SEARCH_FILTER_CONFIG } from '../search-filter-config.model';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/common";
5
+ import * as i2 from "@angular/forms";
6
+ import * as i3 from "@angular/material/form-field";
7
+ import * as i4 from "@angular/material/select";
8
+ import * as i5 from "@angular/material/core";
9
+ import * as i6 from "../search-filter-config.model";
10
+ export class SelectSearchFilterComponent {
11
+ constructor(config) {
12
+ this.config = config;
13
+ }
14
+ }
15
+ SelectSearchFilterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SelectSearchFilterComponent, deps: [{ token: ENTRY_SEARCH_FILTER_CONFIG }], target: i0.ɵɵFactoryTarget.Component });
16
+ SelectSearchFilterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: SelectSearchFilterComponent, selector: "entry-select-search-filter", inputs: { searchFilter: "searchFilter", form: "form" }, ngImport: i0, template: "<mat-form-field [formGroup]=\"form\" subscriptSizing=\"dynamic\">\n <mat-label [attr.for]=\"searchFilter.key\">{{searchFilter.label}}</mat-label>\n <mat-select [formControlName]=\"searchFilter.key\" [id]=\"searchFilter.key\" [multiple]=\"searchFilter.multiSelect\">\n <mat-option *ngIf=\"!searchFilter.multiSelect\" [value]=\"undefined\">\n {{config.noneSelectedOptionText}}\n </mat-option>\n <ng-container *ngIf=\"searchFilter.options$ !== undefined; else fixedSelectValues\">\n <mat-option *ngFor=\"let option of searchFilter.options$ | async\"\n [value]=\"option.key\">{{option.label}}</mat-option>\n </ng-container>\n <ng-template #fixedSelectValues>\n <mat-option *ngFor=\"let option of searchFilter.options\" [value]=\"option.key\">{{option.label}}</mat-option>\n </ng-template>\n </mat-select>\n</mat-form-field>", dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3.MatLabel, selector: "mat-label" }, { kind: "component", type: i4.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator"], exportAs: ["matSelect"] }, { kind: "component", type: i5.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
17
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SelectSearchFilterComponent, decorators: [{
18
+ type: Component,
19
+ args: [{ selector: 'entry-select-search-filter', changeDetection: ChangeDetectionStrategy.OnPush, template: "<mat-form-field [formGroup]=\"form\" subscriptSizing=\"dynamic\">\n <mat-label [attr.for]=\"searchFilter.key\">{{searchFilter.label}}</mat-label>\n <mat-select [formControlName]=\"searchFilter.key\" [id]=\"searchFilter.key\" [multiple]=\"searchFilter.multiSelect\">\n <mat-option *ngIf=\"!searchFilter.multiSelect\" [value]=\"undefined\">\n {{config.noneSelectedOptionText}}\n </mat-option>\n <ng-container *ngIf=\"searchFilter.options$ !== undefined; else fixedSelectValues\">\n <mat-option *ngFor=\"let option of searchFilter.options$ | async\"\n [value]=\"option.key\">{{option.label}}</mat-option>\n </ng-container>\n <ng-template #fixedSelectValues>\n <mat-option *ngFor=\"let option of searchFilter.options\" [value]=\"option.key\">{{option.label}}</mat-option>\n </ng-template>\n </mat-select>\n</mat-form-field>" }]
20
+ }], ctorParameters: function () { return [{ type: i6.EntrySearchFilterConfig, decorators: [{
21
+ type: Inject,
22
+ args: [ENTRY_SEARCH_FILTER_CONFIG]
23
+ }] }]; }, propDecorators: { searchFilter: [{
24
+ type: Input
25
+ }], form: [{
26
+ type: Input
27
+ }] } });
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LXNlYXJjaC1maWx0ZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9lbnRyeS1jb21wb25lbnRzL3NlYXJjaC1maWx0ZXIvc2VsZWN0L3NlbGVjdC1zZWFyY2gtZmlsdGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZW50cnktY29tcG9uZW50cy9zZWFyY2gtZmlsdGVyL3NlbGVjdC9zZWxlY3Qtc2VhcmNoLWZpbHRlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHbEYsT0FBTyxFQUFFLDBCQUEwQixFQUEyQixNQUFNLCtCQUErQixDQUFDOzs7Ozs7OztBQU9wRyxNQUFNLE9BQU8sMkJBQTJCO0lBTXRDLFlBQXVELE1BQStCO1FBQS9CLFdBQU0sR0FBTixNQUFNLENBQXlCO0lBQUksQ0FBQzs7eUhBTmhGLDJCQUEyQixrQkFNbEIsMEJBQTBCOzZHQU5uQywyQkFBMkIsMEhDVnhDLHc1QkFjaUI7NEZESkosMkJBQTJCO2tCQUx2QyxTQUFTOytCQUNFLDRCQUE0QixtQkFFckIsdUJBQXVCLENBQUMsTUFBTTs7MEJBUWxDLE1BQU07MkJBQUMsMEJBQTBCOzRDQUpyQyxZQUFZO3NCQUFwQixLQUFLO2dCQUVHLElBQUk7c0JBQVosS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEluamVjdCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNlbGVjdFNlYXJjaEZpbHRlciB9IGZyb20gJy4vc2VsZWN0LXNlYXJjaC1maWx0ZXIubW9kZWwnO1xuaW1wb3J0IHsgVW50eXBlZEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEVOVFJZX1NFQVJDSF9GSUxURVJfQ09ORklHLCBFbnRyeVNlYXJjaEZpbHRlckNvbmZpZyB9IGZyb20gJy4uL3NlYXJjaC1maWx0ZXItY29uZmlnLm1vZGVsJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZW50cnktc2VsZWN0LXNlYXJjaC1maWx0ZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vc2VsZWN0LXNlYXJjaC1maWx0ZXIuY29tcG9uZW50Lmh0bWwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBTZWxlY3RTZWFyY2hGaWx0ZXJDb21wb25lbnQ8VD4ge1xuICAvKiogQ29uZmlndXJhdGlvbiBvZiB0aGUgc2VhcmNoIGZpbHRlcnMgaW5wdXRzIHRoYXQgd2lsbCBiZSBkaXNwbGF5ZWQgaW4gdGhlIHNlYXJjaC1maWx0ZXIgY29tcG9uZW50LiAqL1xuICBASW5wdXQoKSBzZWFyY2hGaWx0ZXI6IFNlbGVjdFNlYXJjaEZpbHRlcjxUPjtcbiAgLyoqIEZvcm0gZ3JvdXAgdG8gd2hpY2ggdGhlIHNlYXJjaC1maWx0ZXIgaW5wdXQgY29tcG9uZW50IHdpbGwgYmUgYWRkZWQuICovXG4gIEBJbnB1dCgpIGZvcm06IFVudHlwZWRGb3JtR3JvdXA7XG5cbiAgY29uc3RydWN0b3IoQEluamVjdChFTlRSWV9TRUFSQ0hfRklMVEVSX0NPTkZJRykgcHVibGljIGNvbmZpZzogRW50cnlTZWFyY2hGaWx0ZXJDb25maWcpIHsgfVxufVxuIiwiPG1hdC1mb3JtLWZpZWxkIFtmb3JtR3JvdXBdPVwiZm9ybVwiIHN1YnNjcmlwdFNpemluZz1cImR5bmFtaWNcIj5cbiAgICA8bWF0LWxhYmVsIFthdHRyLmZvcl09XCJzZWFyY2hGaWx0ZXIua2V5XCI+e3tzZWFyY2hGaWx0ZXIubGFiZWx9fTwvbWF0LWxhYmVsPlxuICAgIDxtYXQtc2VsZWN0IFtmb3JtQ29udHJvbE5hbWVdPVwic2VhcmNoRmlsdGVyLmtleVwiIFtpZF09XCJzZWFyY2hGaWx0ZXIua2V5XCIgW211bHRpcGxlXT1cInNlYXJjaEZpbHRlci5tdWx0aVNlbGVjdFwiPlxuICAgICAgICA8bWF0LW9wdGlvbiAqbmdJZj1cIiFzZWFyY2hGaWx0ZXIubXVsdGlTZWxlY3RcIiBbdmFsdWVdPVwidW5kZWZpbmVkXCI+XG4gICAgICAgICAgICB7e2NvbmZpZy5ub25lU2VsZWN0ZWRPcHRpb25UZXh0fX1cbiAgICAgICAgPC9tYXQtb3B0aW9uPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwic2VhcmNoRmlsdGVyLm9wdGlvbnMkICE9PSB1bmRlZmluZWQ7IGVsc2UgZml4ZWRTZWxlY3RWYWx1ZXNcIj5cbiAgICAgICAgICAgIDxtYXQtb3B0aW9uICpuZ0Zvcj1cImxldCBvcHRpb24gb2Ygc2VhcmNoRmlsdGVyLm9wdGlvbnMkIHwgYXN5bmNcIlxuICAgICAgICAgICAgICAgIFt2YWx1ZV09XCJvcHRpb24ua2V5XCI+e3tvcHRpb24ubGFiZWx9fTwvbWF0LW9wdGlvbj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDxuZy10ZW1wbGF0ZSAjZml4ZWRTZWxlY3RWYWx1ZXM+XG4gICAgICAgICAgICA8bWF0LW9wdGlvbiAqbmdGb3I9XCJsZXQgb3B0aW9uIG9mIHNlYXJjaEZpbHRlci5vcHRpb25zXCIgW3ZhbHVlXT1cIm9wdGlvbi5rZXlcIj57e29wdGlvbi5sYWJlbH19PC9tYXQtb3B0aW9uPlxuICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgIDwvbWF0LXNlbGVjdD5cbjwvbWF0LWZvcm0tZmllbGQ+Il19
@@ -0,0 +1,23 @@
1
+ import { SearchFilterBase } from '../search-filter-base.model';
2
+ import { ControlType } from '../control-type';
3
+ /**
4
+ * Search filter select input field configuration. Select options can be provided as fixed list (`options`)
5
+ * or observable (dynamic) list (`options$`).
6
+ */
7
+ export class SelectSearchFilter extends SearchFilterBase {
8
+ constructor(options = {}) {
9
+ super(options);
10
+ this.controlType = ControlType.select;
11
+ /** Fixed list of select filter options (default is empty list) */
12
+ this.options = [];
13
+ /**
14
+ * Enables selection of multiple options (default is true).
15
+ * If it is set to false, 'none selected' option becomes available as a first option.
16
+ * */
17
+ this.multiSelect = true;
18
+ this.options = options.options;
19
+ this.options$ = options.options$;
20
+ this.multiSelect = options.multiSelect;
21
+ }
22
+ }
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LXNlYXJjaC1maWx0ZXIubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2VudHJ5LWNvbXBvbmVudHMvc2VhcmNoLWZpbHRlci9zZWxlY3Qvc2VsZWN0LXNlYXJjaC1maWx0ZXIubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDL0QsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRzlDOzs7R0FHRztBQUNILE1BQU0sT0FBTyxrQkFBc0IsU0FBUSxnQkFBbUI7SUFZNUQsWUFBWSxVQUEwQyxFQUFFO1FBQ3RELEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztRQVpSLGdCQUFXLEdBQUcsV0FBVyxDQUFDLE1BQU0sQ0FBQztRQUMxQyxrRUFBa0U7UUFDbEUsWUFBTyxHQUFzQixFQUFFLENBQUM7UUFHaEM7OzthQUdLO1FBQ0wsZ0JBQVcsR0FBRyxJQUFJLENBQUM7UUFJakIsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFDO1FBQy9CLElBQUksQ0FBQyxRQUFRLEdBQUcsT0FBTyxDQUFDLFFBQVEsQ0FBQztRQUNqQyxJQUFJLENBQUMsV0FBVyxHQUFHLE9BQU8sQ0FBQyxXQUFXLENBQUM7SUFDekMsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgU2VhcmNoRmlsdGVyQmFzZSB9IGZyb20gJy4uL3NlYXJjaC1maWx0ZXItYmFzZS5tb2RlbCc7XG5pbXBvcnQgeyBDb250cm9sVHlwZSB9IGZyb20gJy4uL2NvbnRyb2wtdHlwZSc7XG5pbXBvcnQgeyBTZWxlY3RPcHRpb24gfSBmcm9tICcuLi9zZWxlY3Qtb3B0aW9uLm1vZGVsJztcblxuLyoqXG4gKiBTZWFyY2ggZmlsdGVyIHNlbGVjdCBpbnB1dCBmaWVsZCBjb25maWd1cmF0aW9uLiBTZWxlY3Qgb3B0aW9ucyBjYW4gYmUgcHJvdmlkZWQgYXMgZml4ZWQgbGlzdCAoYG9wdGlvbnNgKVxuICogb3Igb2JzZXJ2YWJsZSAoZHluYW1pYykgbGlzdCAoYG9wdGlvbnMkYCkuXG4gKi9cbmV4cG9ydCBjbGFzcyBTZWxlY3RTZWFyY2hGaWx0ZXI8VD4gZXh0ZW5kcyBTZWFyY2hGaWx0ZXJCYXNlPFQ+IHtcbiAgb3ZlcnJpZGUgY29udHJvbFR5cGUgPSBDb250cm9sVHlwZS5zZWxlY3Q7XG4gIC8qKiBGaXhlZCBsaXN0IG9mIHNlbGVjdCBmaWx0ZXIgb3B0aW9ucyAoZGVmYXVsdCBpcyBlbXB0eSBsaXN0KSAqL1xuICBvcHRpb25zOiBTZWxlY3RPcHRpb248VD5bXSA9IFtdO1xuICAvKiogT2JzZXJ2YWJsZSAoZHluYW1pYykgbGlzdCBvZiBzZWxlY3QgZmlsdGVyIG9wdGlvbnMgKi9cbiAgb3B0aW9ucyQ6IE9ic2VydmFibGU8U2VsZWN0T3B0aW9uPFQ+W10+IHwgdW5kZWZpbmVkO1xuICAvKipcbiAgICogRW5hYmxlcyBzZWxlY3Rpb24gb2YgbXVsdGlwbGUgb3B0aW9ucyAoZGVmYXVsdCBpcyB0cnVlKS5cbiAgICogSWYgaXQgaXMgc2V0IHRvIGZhbHNlLCAnbm9uZSBzZWxlY3RlZCcgb3B0aW9uIGJlY29tZXMgYXZhaWxhYmxlIGFzIGEgZmlyc3Qgb3B0aW9uLlxuICAgKiAqL1xuICBtdWx0aVNlbGVjdCA9IHRydWU7XG5cbiAgY29uc3RydWN0b3Iob3B0aW9uczogUGFydGlhbDxTZWxlY3RTZWFyY2hGaWx0ZXI8VD4+ID0ge30pIHtcbiAgICBzdXBlcihvcHRpb25zKTtcbiAgICB0aGlzLm9wdGlvbnMgPSBvcHRpb25zLm9wdGlvbnM7XG4gICAgdGhpcy5vcHRpb25zJCA9IG9wdGlvbnMub3B0aW9ucyQ7XG4gICAgdGhpcy5tdWx0aVNlbGVjdCA9IG9wdGlvbnMubXVsdGlTZWxlY3Q7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,12 @@
1
+ /** Model used to populate select or autocomplete options. */
2
+ export class SelectOption {
3
+ constructor(
4
+ /** Key used as a value for selected option */
5
+ key,
6
+ /** String value used as display label of select option */
7
+ label) {
8
+ this.key = key;
9
+ this.label = label;
10
+ }
11
+ }
12
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LW9wdGlvbi5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvZW50cnktY29tcG9uZW50cy9zZWFyY2gtZmlsdGVyL3NlbGVjdC1vcHRpb24ubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsNkRBQTZEO0FBQzdELE1BQU0sT0FBTyxZQUFZO0lBQ3JCO0lBQ0ksOENBQThDO0lBQ3ZDLEdBQU07SUFDYiwwREFBMEQ7SUFDbkQsS0FBYTtRQUZiLFFBQUcsR0FBSCxHQUFHLENBQUc7UUFFTixVQUFLLEdBQUwsS0FBSyxDQUFRO0lBQUksQ0FBQztDQUNoQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKiBNb2RlbCB1c2VkIHRvIHBvcHVsYXRlIHNlbGVjdCBvciBhdXRvY29tcGxldGUgb3B0aW9ucy4gKi9cbmV4cG9ydCBjbGFzcyBTZWxlY3RPcHRpb248VD4ge1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICAvKiogS2V5IHVzZWQgYXMgYSB2YWx1ZSBmb3Igc2VsZWN0ZWQgb3B0aW9uICovXG4gICAgICAgIHB1YmxpYyBrZXk6IFQsXG4gICAgICAgIC8qKiBTdHJpbmcgdmFsdWUgdXNlZCBhcyBkaXNwbGF5IGxhYmVsIG9mIHNlbGVjdCBvcHRpb24gKi9cbiAgICAgICAgcHVibGljIGxhYmVsOiBzdHJpbmcpIHsgfVxufVxuIl19
@@ -0,0 +1,18 @@
1
+ import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "@angular/forms";
4
+ import * as i2 from "@angular/material/input";
5
+ import * as i3 from "@angular/material/form-field";
6
+ export class TextSearchFilterComponent {
7
+ }
8
+ TextSearchFilterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TextSearchFilterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
9
+ TextSearchFilterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: TextSearchFilterComponent, selector: "entry-text-search-filter", inputs: { searchFilter: "searchFilter", form: "form" }, ngImport: i0, template: "<mat-form-field [formGroup]=\"form\" subscriptSizing=\"dynamic\">\n <mat-label [attr.for]=\"searchFilter.key\">{{searchFilter.label}}</mat-label>\n <input [formControlName]=\"searchFilter.key\" [id]=\"searchFilter.key\" [type]=\"searchFilter.type\" matInput\n [placeholder]=\"searchFilter.placeholder\" [maxlength]=\"searchFilter.maxLength\">\n</mat-form-field>", dependencies: [{ 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.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i2.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: i3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3.MatLabel, selector: "mat-label" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
10
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TextSearchFilterComponent, decorators: [{
11
+ type: Component,
12
+ args: [{ selector: 'entry-text-search-filter', changeDetection: ChangeDetectionStrategy.OnPush, template: "<mat-form-field [formGroup]=\"form\" subscriptSizing=\"dynamic\">\n <mat-label [attr.for]=\"searchFilter.key\">{{searchFilter.label}}</mat-label>\n <input [formControlName]=\"searchFilter.key\" [id]=\"searchFilter.key\" [type]=\"searchFilter.type\" matInput\n [placeholder]=\"searchFilter.placeholder\" [maxlength]=\"searchFilter.maxLength\">\n</mat-form-field>" }]
13
+ }], propDecorators: { searchFilter: [{
14
+ type: Input
15
+ }], form: [{
16
+ type: Input
17
+ }] } });
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC1zZWFyY2gtZmlsdGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZW50cnktY29tcG9uZW50cy9zZWFyY2gtZmlsdGVyL3RleHQvdGV4dC1zZWFyY2gtZmlsdGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZW50cnktY29tcG9uZW50cy9zZWFyY2gtZmlsdGVyL3RleHQvdGV4dC1zZWFyY2gtZmlsdGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7OztBQVMxRSxNQUFNLE9BQU8seUJBQXlCOzt1SEFBekIseUJBQXlCOzJHQUF6Qix5QkFBeUIsd0hDVHRDLHdYQUlpQjs0RkRLSix5QkFBeUI7a0JBTHJDLFNBQVM7K0JBQ0UsMEJBQTBCLG1CQUVuQix1QkFBdUIsQ0FBQyxNQUFNOzhCQUd0QyxZQUFZO3NCQUFwQixLQUFLO2dCQUVHLElBQUk7c0JBQVosS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBVbnR5cGVkRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgVGV4dFNlYXJjaEZpbHRlciB9IGZyb20gJy4vdGV4dC1zZWFyY2gtZmlsdGVyLm1vZGVsJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZW50cnktdGV4dC1zZWFyY2gtZmlsdGVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3RleHQtc2VhcmNoLWZpbHRlci5jb21wb25lbnQuaHRtbCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIFRleHRTZWFyY2hGaWx0ZXJDb21wb25lbnQge1xuICBASW5wdXQoKSBzZWFyY2hGaWx0ZXI6IFRleHRTZWFyY2hGaWx0ZXI7XG4gIC8qKiBGb3JtIGdyb3VwIHRvIHdoaWNoIHRoZSBzZWFyY2gtZmlsdGVyIGlucHV0IGNvbXBvbmVudCB3aWxsIGJlIGFkZGVkLiAqL1xuICBASW5wdXQoKSBmb3JtOiBVbnR5cGVkRm9ybUdyb3VwO1xufVxuIiwiPG1hdC1mb3JtLWZpZWxkIFtmb3JtR3JvdXBdPVwiZm9ybVwiIHN1YnNjcmlwdFNpemluZz1cImR5bmFtaWNcIj5cbiAgICA8bWF0LWxhYmVsIFthdHRyLmZvcl09XCJzZWFyY2hGaWx0ZXIua2V5XCI+e3tzZWFyY2hGaWx0ZXIubGFiZWx9fTwvbWF0LWxhYmVsPlxuICAgIDxpbnB1dCBbZm9ybUNvbnRyb2xOYW1lXT1cInNlYXJjaEZpbHRlci5rZXlcIiBbaWRdPVwic2VhcmNoRmlsdGVyLmtleVwiIFt0eXBlXT1cInNlYXJjaEZpbHRlci50eXBlXCIgbWF0SW5wdXRcbiAgICAgICAgW3BsYWNlaG9sZGVyXT1cInNlYXJjaEZpbHRlci5wbGFjZWhvbGRlclwiIFttYXhsZW5ndGhdPVwic2VhcmNoRmlsdGVyLm1heExlbmd0aFwiPlxuPC9tYXQtZm9ybS1maWVsZD4iXX0=
@@ -0,0 +1,12 @@
1
+ import { SearchFilterBase } from '../search-filter-base.model';
2
+ import { ControlType } from '../control-type';
3
+ /**
4
+ * Search filter text input filed configuration.
5
+ */
6
+ export class TextSearchFilter extends SearchFilterBase {
7
+ constructor() {
8
+ super(...arguments);
9
+ this.controlType = ControlType.text;
10
+ }
11
+ }
12
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC1zZWFyY2gtZmlsdGVyLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9lbnRyeS1jb21wb25lbnRzL3NlYXJjaC1maWx0ZXIvdGV4dC90ZXh0LXNlYXJjaC1maWx0ZXIubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDL0QsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRTlDOztHQUVHO0FBQ0gsTUFBTSxPQUFPLGdCQUFpQixTQUFRLGdCQUF3QjtJQUE5RDs7UUFDVyxnQkFBVyxHQUFHLFdBQVcsQ0FBQyxJQUFJLENBQUM7SUFDMUMsQ0FBQztDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2VhcmNoRmlsdGVyQmFzZSB9IGZyb20gJy4uL3NlYXJjaC1maWx0ZXItYmFzZS5tb2RlbCc7XG5pbXBvcnQgeyBDb250cm9sVHlwZSB9IGZyb20gJy4uL2NvbnRyb2wtdHlwZSc7XG5cbi8qKlxuICogU2VhcmNoIGZpbHRlciB0ZXh0IGlucHV0IGZpbGVkIGNvbmZpZ3VyYXRpb24uXG4gKi9cbmV4cG9ydCBjbGFzcyBUZXh0U2VhcmNoRmlsdGVyIGV4dGVuZHMgU2VhcmNoRmlsdGVyQmFzZTxzdHJpbmc+IHtcbiAgb3ZlcnJpZGUgY29udHJvbFR5cGUgPSBDb250cm9sVHlwZS50ZXh0O1xufVxuIl19