@enigmatry/entry-components 1.2.69 → 1.2.70

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.
@@ -6,10 +6,17 @@ import * as i1 from "./search-filter-input.component";
6
6
  import * as i2 from "@angular/forms";
7
7
  import * as i3 from "@angular/common";
8
8
  import * as i4 from "./search-filter-config.model";
9
+ /**
10
+ * Entry SearchFilter component.
11
+ */
9
12
  export class EntrySearchFilterComponent {
10
13
  constructor(config) {
11
14
  this.config = config;
15
+ /** Configuration of the search filters inputs that will be displayed in the search-filter component. */
12
16
  this.searchFilters = [];
17
+ /**
18
+ * Emits the change in SearchFilterParams so the containing component can apply them and retreive the filtered results.
19
+ */
13
20
  this.searchFilterChange = new EventEmitter();
14
21
  }
15
22
  ngOnInit() {
@@ -42,4 +49,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
42
49
  }], searchFilterChange: [{
43
50
  type: Output
44
51
  }] } });
45
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50cnktc2VhcmNoLWZpbHRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbnRyeS1jb21wb25lbnRzL3NlYXJjaC1maWx0ZXIvZW50cnktc2VhcmNoLWZpbHRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbnRyeS1jb21wb25lbnRzL3NlYXJjaC1maWx0ZXIvZW50cnktc2VhcmNoLWZpbHRlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNoSCxPQUFPLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBR3hELE9BQU8sRUFBRSwwQkFBMEIsRUFBMkIsTUFBTSw4QkFBOEIsQ0FBQzs7Ozs7O0FBUW5HLE1BQU0sT0FBTywwQkFBMEI7SUFPckMsWUFBdUQsTUFBK0I7UUFBL0IsV0FBTSxHQUFOLE1BQU0sQ0FBeUI7UUFMN0Usa0JBQWEsR0FBK0IsRUFBRSxDQUFDO1FBQzlDLHVCQUFrQixHQUFHLElBQUksWUFBWSxFQUFzQixDQUFDO0lBSW9CLENBQUM7SUFFM0YsUUFBUTtRQUNOLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUMvRCxDQUFDO0lBRUQsUUFBUTtRQUNOLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUM7UUFDOUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBRUQsV0FBVyxDQUFDLGFBQXlDO1FBQ25ELE1BQU0sS0FBSyxHQUFRLEVBQUUsQ0FBQztRQUV0QixhQUFhLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxFQUFFO1lBQ25DLE1BQU0sV0FBVyxHQUFHLElBQUksV0FBVyxDQUFDLFlBQVksQ0FBQyxLQUFLLElBQUksRUFBRSxDQUFDLENBQUM7WUFDOUQsS0FBSyxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsR0FBRyxXQUFXLENBQUM7WUFDdEMsWUFBWSxDQUFDLFdBQVcsR0FBRyxXQUFXLENBQUM7UUFDekMsQ0FBQyxDQUFDLENBQUM7UUFDSCxPQUFPLElBQUksU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzlCLENBQUM7O3dIQTNCVSwwQkFBMEIsa0JBT2pCLDBCQUEwQjs0R0FQbkMsMEJBQTBCLDhKQ1p2Qyw0b0JBWU07NEZEQU8sMEJBQTBCO2tCQU50QyxTQUFTOytCQUNFLHFCQUFxQixtQkFHZCx1QkFBdUIsQ0FBQyxNQUFNOzswQkFTbEMsTUFBTTsyQkFBQywwQkFBMEI7NENBTHJDLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0ksa0JBQWtCO3NCQUEzQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbmplY3QsIElucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGb3JtQ29udHJvbCwgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBTZWFyY2hGaWx0ZXJCYXNlIH0gZnJvbSAnLi9zZWFyY2gtZmlsdGVyLWJhc2UnO1xyXG5pbXBvcnQgeyBTZWFyY2hGaWx0ZXJQYXJhbXMgfSBmcm9tICcuL3NlYXJjaC1maWx0ZXItcGFyYW1zJztcclxuaW1wb3J0IHsgRU5UUllfU0VBUkNIX0ZJTFRFUl9DT05GSUcsIEVudHJ5U2VhcmNoRmlsdGVyQ29uZmlnIH0gZnJvbSAnLi9zZWFyY2gtZmlsdGVyLWNvbmZpZy5tb2RlbCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2VudHJ5LXNlYXJjaC1maWx0ZXInLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9lbnRyeS1zZWFyY2gtZmlsdGVyLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9lbnRyeS1zZWFyY2gtZmlsdGVyLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcclxufSlcclxuZXhwb3J0IGNsYXNzIEVudHJ5U2VhcmNoRmlsdGVyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuXHJcbiAgQElucHV0KCkgc2VhcmNoRmlsdGVyczogU2VhcmNoRmlsdGVyQmFzZTxzdHJpbmc+W10gPSBbXTtcclxuICBAT3V0cHV0KCkgc2VhcmNoRmlsdGVyQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxTZWFyY2hGaWx0ZXJQYXJhbXM+KCk7XHJcblxyXG4gIHNlYXJjaEZpbHRlckZvcm0hOiBGb3JtR3JvdXA7XHJcblxyXG4gIGNvbnN0cnVjdG9yKEBJbmplY3QoRU5UUllfU0VBUkNIX0ZJTFRFUl9DT05GSUcpIHB1YmxpYyBjb25maWc6IEVudHJ5U2VhcmNoRmlsdGVyQ29uZmlnKSB7IH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLnNlYXJjaEZpbHRlckZvcm0gPSB0aGlzLnRvRm9ybUdyb3VwKHRoaXMuc2VhcmNoRmlsdGVycyk7XHJcbiAgfVxyXG5cclxuICBvblN1Ym1pdCgpIHtcclxuICAgIGNvbnN0IGZvcm1WYWx1ZSA9IHRoaXMuc2VhcmNoRmlsdGVyRm9ybS52YWx1ZTtcclxuICAgIHRoaXMuc2VhcmNoRmlsdGVyQ2hhbmdlLmVtaXQoZm9ybVZhbHVlKTtcclxuICB9XHJcblxyXG4gIHRvRm9ybUdyb3VwKHNlYXJjaEZpbHRlcnM6IFNlYXJjaEZpbHRlckJhc2U8c3RyaW5nPltdKSB7XHJcbiAgICBjb25zdCBncm91cDogYW55ID0ge307XHJcblxyXG4gICAgc2VhcmNoRmlsdGVycy5mb3JFYWNoKHNlYXJjaEZpbHRlciA9PiB7XHJcbiAgICAgIGNvbnN0IGZvcm1Db250cm9sID0gbmV3IEZvcm1Db250cm9sKHNlYXJjaEZpbHRlci52YWx1ZSB8fCAnJyk7XHJcbiAgICAgIGdyb3VwW3NlYXJjaEZpbHRlci5rZXldID0gZm9ybUNvbnRyb2w7XHJcbiAgICAgIHNlYXJjaEZpbHRlci5mb3JtQ29udHJvbCA9IGZvcm1Db250cm9sO1xyXG4gICAgfSk7XHJcbiAgICByZXR1cm4gbmV3IEZvcm1Hcm91cChncm91cCk7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJzZWFyY2gtZm9ybS1jb250YWluZXJcIj5cclxuICAgIDxmb3JtIChuZ1N1Ym1pdCk9XCJvblN1Ym1pdCgpXCIgW2Zvcm1Hcm91cF09XCJzZWFyY2hGaWx0ZXJGb3JtXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInNlYXJjaC1mb3JtLWZpZWxkc1wiPlxyXG4gICAgICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCBzZWFyY2hGaWx0ZXIgb2Ygc2VhcmNoRmlsdGVyc1wiIGNsYXNzPVwic2VhcmNoLWZvcm0tZmllbGRcIj5cclxuICAgICAgICAgICAgICAgIDxlbnRyeS1zZWFyY2gtZmlsdGVyLWlucHV0IFtzZWFyY2hGaWx0ZXJdPVwic2VhcmNoRmlsdGVyXCJcclxuICAgICAgICAgICAgICAgICAgICBbZm9ybV09XCJzZWFyY2hGaWx0ZXJGb3JtXCI+PC9lbnRyeS1zZWFyY2gtZmlsdGVyLWlucHV0PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdj5cclxuICAgICAgICAgICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwibWF0LXJhaXNlZC1idXR0b24gbWF0LWFjY2VudFwiIHR5cGU9XCJzdWJtaXRcIj57e2NvbmZpZy5hcHBseUJ1dHRvblRleHR9fTwvYnV0dG9uPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvZm9ybT5cclxuPC9kaXY+Il19
52
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50cnktc2VhcmNoLWZpbHRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbnRyeS1jb21wb25lbnRzL3NlYXJjaC1maWx0ZXIvZW50cnktc2VhcmNoLWZpbHRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbnRyeS1jb21wb25lbnRzL3NlYXJjaC1maWx0ZXIvZW50cnktc2VhcmNoLWZpbHRlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNoSCxPQUFPLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBR3hELE9BQU8sRUFBRSwwQkFBMEIsRUFBMkIsTUFBTSw4QkFBOEIsQ0FBQzs7Ozs7O0FBRW5HOztHQUVHO0FBT0gsTUFBTSxPQUFPLDBCQUEwQjtJQVdyQyxZQUF1RCxNQUErQjtRQUEvQixXQUFNLEdBQU4sTUFBTSxDQUF5QjtRQVR0Rix3R0FBd0c7UUFDL0Ysa0JBQWEsR0FBK0IsRUFBRSxDQUFDO1FBQ3hEOztXQUVHO1FBQ08sdUJBQWtCLEdBQUcsSUFBSSxZQUFZLEVBQXNCLENBQUM7SUFJb0IsQ0FBQztJQUUzRixRQUFRO1FBQ04sSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQy9ELENBQUM7SUFFRCxRQUFRO1FBQ04sTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEtBQUssQ0FBQztRQUM5QyxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQzFDLENBQUM7SUFFRCxXQUFXLENBQUMsYUFBeUM7UUFDbkQsTUFBTSxLQUFLLEdBQVEsRUFBRSxDQUFDO1FBRXRCLGFBQWEsQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLEVBQUU7WUFDbkMsTUFBTSxXQUFXLEdBQUcsSUFBSSxXQUFXLENBQUMsWUFBWSxDQUFDLEtBQUssSUFBSSxFQUFFLENBQUMsQ0FBQztZQUM5RCxLQUFLLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxHQUFHLFdBQVcsQ0FBQztZQUN0QyxZQUFZLENBQUMsV0FBVyxHQUFHLFdBQVcsQ0FBQztRQUN6QyxDQUFDLENBQUMsQ0FBQztRQUNILE9BQU8sSUFBSSxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDOUIsQ0FBQzs7d0hBL0JVLDBCQUEwQixrQkFXakIsMEJBQTBCOzRHQVhuQywwQkFBMEIsOEpDZnZDLDRvQkFZTTs0RkRHTywwQkFBMEI7a0JBTnRDLFNBQVM7K0JBQ0UscUJBQXFCLG1CQUdkLHVCQUF1QixDQUFDLE1BQU07OzBCQWFsQyxNQUFNOzJCQUFDLDBCQUEwQjs0Q0FSckMsYUFBYTtzQkFBckIsS0FBSztnQkFJSSxrQkFBa0I7c0JBQTNCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIEluamVjdCwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1Db250cm9sLCBGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IFNlYXJjaEZpbHRlckJhc2UgfSBmcm9tICcuL3NlYXJjaC1maWx0ZXItYmFzZSc7XHJcbmltcG9ydCB7IFNlYXJjaEZpbHRlclBhcmFtcyB9IGZyb20gJy4vc2VhcmNoLWZpbHRlci1wYXJhbXMnO1xyXG5pbXBvcnQgeyBFTlRSWV9TRUFSQ0hfRklMVEVSX0NPTkZJRywgRW50cnlTZWFyY2hGaWx0ZXJDb25maWcgfSBmcm9tICcuL3NlYXJjaC1maWx0ZXItY29uZmlnLm1vZGVsJztcclxuXHJcbi8qKlxyXG4gKiBFbnRyeSBTZWFyY2hGaWx0ZXIgY29tcG9uZW50LlxyXG4gKi9cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdlbnRyeS1zZWFyY2gtZmlsdGVyJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vZW50cnktc2VhcmNoLWZpbHRlci5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vZW50cnktc2VhcmNoLWZpbHRlci5jb21wb25lbnQuc2NzcyddLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBFbnRyeVNlYXJjaEZpbHRlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblxyXG4gIC8qKiBDb25maWd1cmF0aW9uIG9mIHRoZSBzZWFyY2ggZmlsdGVycyBpbnB1dHMgdGhhdCB3aWxsIGJlIGRpc3BsYXllZCBpbiB0aGUgc2VhcmNoLWZpbHRlciBjb21wb25lbnQuICovXHJcbiAgQElucHV0KCkgc2VhcmNoRmlsdGVyczogU2VhcmNoRmlsdGVyQmFzZTxzdHJpbmc+W10gPSBbXTtcclxuICAvKipcclxuICAgKiBFbWl0cyB0aGUgY2hhbmdlIGluIFNlYXJjaEZpbHRlclBhcmFtcyBzbyB0aGUgY29udGFpbmluZyBjb21wb25lbnQgY2FuIGFwcGx5IHRoZW0gYW5kIHJldHJlaXZlIHRoZSBmaWx0ZXJlZCByZXN1bHRzLlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBzZWFyY2hGaWx0ZXJDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPFNlYXJjaEZpbHRlclBhcmFtcz4oKTtcclxuXHJcbiAgc2VhcmNoRmlsdGVyRm9ybSE6IEZvcm1Hcm91cDtcclxuXHJcbiAgY29uc3RydWN0b3IoQEluamVjdChFTlRSWV9TRUFSQ0hfRklMVEVSX0NPTkZJRykgcHVibGljIGNvbmZpZzogRW50cnlTZWFyY2hGaWx0ZXJDb25maWcpIHsgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuc2VhcmNoRmlsdGVyRm9ybSA9IHRoaXMudG9Gb3JtR3JvdXAodGhpcy5zZWFyY2hGaWx0ZXJzKTtcclxuICB9XHJcblxyXG4gIG9uU3VibWl0KCkge1xyXG4gICAgY29uc3QgZm9ybVZhbHVlID0gdGhpcy5zZWFyY2hGaWx0ZXJGb3JtLnZhbHVlO1xyXG4gICAgdGhpcy5zZWFyY2hGaWx0ZXJDaGFuZ2UuZW1pdChmb3JtVmFsdWUpO1xyXG4gIH1cclxuXHJcbiAgdG9Gb3JtR3JvdXAoc2VhcmNoRmlsdGVyczogU2VhcmNoRmlsdGVyQmFzZTxzdHJpbmc+W10pIHtcclxuICAgIGNvbnN0IGdyb3VwOiBhbnkgPSB7fTtcclxuXHJcbiAgICBzZWFyY2hGaWx0ZXJzLmZvckVhY2goc2VhcmNoRmlsdGVyID0+IHtcclxuICAgICAgY29uc3QgZm9ybUNvbnRyb2wgPSBuZXcgRm9ybUNvbnRyb2woc2VhcmNoRmlsdGVyLnZhbHVlIHx8ICcnKTtcclxuICAgICAgZ3JvdXBbc2VhcmNoRmlsdGVyLmtleV0gPSBmb3JtQ29udHJvbDtcclxuICAgICAgc2VhcmNoRmlsdGVyLmZvcm1Db250cm9sID0gZm9ybUNvbnRyb2w7XHJcbiAgICB9KTtcclxuICAgIHJldHVybiBuZXcgRm9ybUdyb3VwKGdyb3VwKTtcclxuICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cInNlYXJjaC1mb3JtLWNvbnRhaW5lclwiPlxyXG4gICAgPGZvcm0gKG5nU3VibWl0KT1cIm9uU3VibWl0KClcIiBbZm9ybUdyb3VwXT1cInNlYXJjaEZpbHRlckZvcm1cIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwic2VhcmNoLWZvcm0tZmllbGRzXCI+XHJcbiAgICAgICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IHNlYXJjaEZpbHRlciBvZiBzZWFyY2hGaWx0ZXJzXCIgY2xhc3M9XCJzZWFyY2gtZm9ybS1maWVsZFwiPlxyXG4gICAgICAgICAgICAgICAgPGVudHJ5LXNlYXJjaC1maWx0ZXItaW5wdXQgW3NlYXJjaEZpbHRlcl09XCJzZWFyY2hGaWx0ZXJcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtmb3JtXT1cInNlYXJjaEZpbHRlckZvcm1cIj48L2VudHJ5LXNlYXJjaC1maWx0ZXItaW5wdXQ+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2PlxyXG4gICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJtYXQtcmFpc2VkLWJ1dHRvbiBtYXQtYWNjZW50XCIgdHlwZT1cInN1Ym1pdFwiPnt7Y29uZmlnLmFwcGx5QnV0dG9uVGV4dH19PC9idXR0b24+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9mb3JtPlxyXG48L2Rpdj4iXX0=
@@ -1,7 +1,6 @@
1
- export * from './entry-search-filter.module';
2
- export * from './entry-search-filter.component';
3
- export * from './search-filter-base';
4
- export * from './search-filter-params';
5
- export * from './search-filter-textbox';
6
- export * from './search-filter-config.model';
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VudHJ5LWNvbXBvbmVudHMvc2VhcmNoLWZpbHRlci9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLDhCQUE4QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9lbnRyeS1zZWFyY2gtZmlsdGVyLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2VudHJ5LXNlYXJjaC1maWx0ZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc2VhcmNoLWZpbHRlci1iYXNlJztcbmV4cG9ydCAqIGZyb20gJy4vc2VhcmNoLWZpbHRlci1wYXJhbXMnO1xuZXhwb3J0ICogZnJvbSAnLi9zZWFyY2gtZmlsdGVyLXRleHRib3gnO1xuZXhwb3J0ICogZnJvbSAnLi9zZWFyY2gtZmlsdGVyLWNvbmZpZy5tb2RlbCc7XG4iXX0=
1
+ export { EntrySearchFilterComponent } from './entry-search-filter.component';
2
+ export { SearchFilterBase } from './search-filter-base';
3
+ export { SearchFilterInput } from './search-filter-textbox';
4
+ export { EntrySearchFilterModule } from './entry-search-filter.module';
5
+ export { ENTRY_SEARCH_FILTER_CONFIG, EntrySearchFilterConfig } from './search-filter-config.model';
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VudHJ5LWNvbXBvbmVudHMvc2VhcmNoLWZpbHRlci9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBRzdFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRTVELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBRXZFLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHsgRW50cnlTZWFyY2hGaWx0ZXJDb21wb25lbnQgfSBmcm9tICcuL2VudHJ5LXNlYXJjaC1maWx0ZXIuY29tcG9uZW50JztcblxuZXhwb3J0IHsgU2VhcmNoRmlsdGVyUGFyYW1zIH0gZnJvbSAnLi9zZWFyY2gtZmlsdGVyLXBhcmFtcyc7XG5leHBvcnQgeyBTZWFyY2hGaWx0ZXJCYXNlIH0gZnJvbSAnLi9zZWFyY2gtZmlsdGVyLWJhc2UnO1xuZXhwb3J0IHsgU2VhcmNoRmlsdGVySW5wdXQgfSBmcm9tICcuL3NlYXJjaC1maWx0ZXItdGV4dGJveCc7XG5cbmV4cG9ydCB7IEVudHJ5U2VhcmNoRmlsdGVyTW9kdWxlIH0gZnJvbSAnLi9lbnRyeS1zZWFyY2gtZmlsdGVyLm1vZHVsZSc7XG5cbmV4cG9ydCB7IEVOVFJZX1NFQVJDSF9GSUxURVJfQ09ORklHLCBFbnRyeVNlYXJjaEZpbHRlckNvbmZpZyB9IGZyb20gJy4vc2VhcmNoLWZpbHRlci1jb25maWcubW9kZWwnO1xuIl19
@@ -1,3 +1,6 @@
1
+ /**
2
+ * Base Entry search filter input component.
3
+ */
1
4
  export class SearchFilterBase {
2
5
  constructor(options = {}) {
3
6
  this.value = options.value;
@@ -16,4 +19,4 @@ export class SearchFilterBase {
16
19
  }
17
20
  }
18
21
  }
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWZpbHRlci1iYXNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZW50cnktY29tcG9uZW50cy9zZWFyY2gtZmlsdGVyL3NlYXJjaC1maWx0ZXItYmFzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLE9BQU8sZ0JBQWdCO0lBVzNCLFlBQVksVUFBd0MsRUFBRTtRQUNwRCxJQUFJLENBQUMsS0FBSyxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUM7UUFDM0IsSUFBSSxDQUFDLEdBQUcsR0FBRyxPQUFPLENBQUMsR0FBRyxJQUFJLEVBQUUsQ0FBQztRQUM3QixJQUFJLENBQUMsS0FBSyxHQUFHLE9BQU8sQ0FBQyxLQUFLLElBQUksRUFBRSxDQUFDO1FBQ2pDLElBQUksQ0FBQyxXQUFXLEdBQUcsT0FBTyxDQUFDLFdBQVcsSUFBSSxFQUFFLENBQUM7UUFDN0MsSUFBSSxDQUFDLEtBQUssR0FBRyxPQUFPLENBQUMsS0FBSyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDO1FBQzdELElBQUksQ0FBQyxXQUFXLEdBQUcsT0FBTyxDQUFDLFdBQVcsSUFBSSxFQUFFLENBQUM7UUFDN0MsSUFBSSxDQUFDLElBQUksR0FBRyxPQUFPLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQztRQUMvQixJQUFJLENBQUMsU0FBUyxHQUFHLE9BQU8sQ0FBQyxTQUFTLElBQUksR0FBRyxDQUFDO0lBQzVDLENBQUM7SUFFRCxRQUFRLENBQUMsS0FBb0I7UUFDM0IsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDbkIsSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFO1lBQ3BCLElBQUksQ0FBQyxXQUFXLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQ3BDO0lBQ0gsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRm9ybUNvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcblxyXG5leHBvcnQgY2xhc3MgU2VhcmNoRmlsdGVyQmFzZTxUPiB7XHJcbiAga2V5OiBzdHJpbmc7XHJcbiAgdmFsdWU6IFQgfCB1bmRlZmluZWQ7XHJcbiAgbGFiZWw6IHN0cmluZztcclxuICBwbGFjZWhvbGRlcjogc3RyaW5nO1xyXG4gIHR5cGU6IHN0cmluZztcclxuICBvcmRlcjogbnVtYmVyO1xyXG4gIGNvbnRyb2xUeXBlOiBzdHJpbmc7XHJcbiAgbWF4TGVuZ3RoOiBudW1iZXI7XHJcbiAgZm9ybUNvbnRyb2w6IEZvcm1Db250cm9sO1xyXG5cclxuICBjb25zdHJ1Y3RvcihvcHRpb25zOiBQYXJ0aWFsPFNlYXJjaEZpbHRlckJhc2U8VD4+ID0ge30pIHtcclxuICAgIHRoaXMudmFsdWUgPSBvcHRpb25zLnZhbHVlO1xyXG4gICAgdGhpcy5rZXkgPSBvcHRpb25zLmtleSB8fCAnJztcclxuICAgIHRoaXMubGFiZWwgPSBvcHRpb25zLmxhYmVsIHx8ICcnO1xyXG4gICAgdGhpcy5wbGFjZWhvbGRlciA9IG9wdGlvbnMucGxhY2Vob2xkZXIgfHwgJyc7XHJcbiAgICB0aGlzLm9yZGVyID0gb3B0aW9ucy5vcmRlciA9PT0gdW5kZWZpbmVkID8gMSA6IG9wdGlvbnMub3JkZXI7XHJcbiAgICB0aGlzLmNvbnRyb2xUeXBlID0gb3B0aW9ucy5jb250cm9sVHlwZSB8fCAnJztcclxuICAgIHRoaXMudHlwZSA9IG9wdGlvbnMudHlwZSB8fCAnJztcclxuICAgIHRoaXMubWF4TGVuZ3RoID0gb3B0aW9ucy5tYXhMZW5ndGggfHwgMjU2O1xyXG4gIH1cclxuXHJcbiAgc2V0VmFsdWUodmFsdWU6IFQgfCB1bmRlZmluZWQpIHtcclxuICAgIHRoaXMudmFsdWUgPSB2YWx1ZTtcclxuICAgIGlmICh0aGlzLmZvcm1Db250cm9sKSB7XHJcbiAgICAgIHRoaXMuZm9ybUNvbnRyb2wucGF0Y2hWYWx1ZSh2YWx1ZSk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWZpbHRlci1iYXNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZW50cnktY29tcG9uZW50cy9zZWFyY2gtZmlsdGVyL3NlYXJjaC1maWx0ZXItYmFzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQTs7R0FFRztBQUNILE1BQU0sT0FBTyxnQkFBZ0I7SUFrQjNCLFlBQVksVUFBd0MsRUFBRTtRQUNwRCxJQUFJLENBQUMsS0FBSyxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUM7UUFDM0IsSUFBSSxDQUFDLEdBQUcsR0FBRyxPQUFPLENBQUMsR0FBRyxJQUFJLEVBQUUsQ0FBQztRQUM3QixJQUFJLENBQUMsS0FBSyxHQUFHLE9BQU8sQ0FBQyxLQUFLLElBQUksRUFBRSxDQUFDO1FBQ2pDLElBQUksQ0FBQyxXQUFXLEdBQUcsT0FBTyxDQUFDLFdBQVcsSUFBSSxFQUFFLENBQUM7UUFDN0MsSUFBSSxDQUFDLEtBQUssR0FBRyxPQUFPLENBQUMsS0FBSyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDO1FBQzdELElBQUksQ0FBQyxXQUFXLEdBQUcsT0FBTyxDQUFDLFdBQVcsSUFBSSxFQUFFLENBQUM7UUFDN0MsSUFBSSxDQUFDLElBQUksR0FBRyxPQUFPLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQztRQUMvQixJQUFJLENBQUMsU0FBUyxHQUFHLE9BQU8sQ0FBQyxTQUFTLElBQUksR0FBRyxDQUFDO0lBQzVDLENBQUM7SUFFRCxRQUFRLENBQUMsS0FBb0I7UUFDM0IsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDbkIsSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFO1lBQ3BCLElBQUksQ0FBQyxXQUFXLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQ3BDO0lBQ0gsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRm9ybUNvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcblxyXG4vKipcclxuICogQmFzZSBFbnRyeSBzZWFyY2ggZmlsdGVyIGlucHV0IGNvbXBvbmVudC5cclxuICovXHJcbmV4cG9ydCBjbGFzcyBTZWFyY2hGaWx0ZXJCYXNlPFQ+IHtcclxuICAvKiogVW5pcXVlIHNlYXJjaC1maWx0ZXIgaW5wdXQga2V5ICovXHJcbiAga2V5OiBzdHJpbmc7XHJcbiAgLyoqIERlZmF1bHQgdmFsdWUgdG8gYmUgZGlzcGxheWVkL3NlbGVjdGVkIGluIHRoZSBpbnB1dCBjb250cm9sICovXHJcbiAgdmFsdWU6IFQgfCB1bmRlZmluZWQ7XHJcbiAgLyoqIERlZmF1bHQgKi9cclxuICBsYWJlbDogc3RyaW5nO1xyXG4gIC8qKiBMYWJlbCB0ZXh0IHRvIGJlIGRpc3BsYXllZCBmb3IgdGhlIHNlYXJjaC1maWx0ZXIgaW5wdXQgY29udHJvbCAqL1xyXG4gIHBsYWNlaG9sZGVyOiBzdHJpbmc7XHJcbiAgLyoqIFR5cGUgb2YgaW5wdXQgY29udHJvbCBlLmcuICdlbWFpbCcgKi9cclxuICB0eXBlOiBzdHJpbmc7XHJcbiAgb3JkZXI6IG51bWJlcjtcclxuICAvKiogQ29udHJvbCB0eXBlIHRvIGJlIG92ZXJyaWRlbiBpbiBpbXBsZW1lbnRpbmcgY2xhc3MsIHVzZWQgdG8gcmVuZGVyIHRoZSBwcm9wZXIgaW5wdXQgdHlwZSBlLmcuICd0ZXh0Ym94JyAqL1xyXG4gIGNvbnRyb2xUeXBlOiBzdHJpbmc7XHJcbiAgLyoqIE1heCB0ZXh0IGxlbmd0aCB0byBiZSBlbnRlcmQgaW4gdGhlIGlucHV0IGNvbXBvbmVudCAoZGVmYXVsdCBpcyAyNTYpICovXHJcbiAgbWF4TGVuZ3RoOiBudW1iZXI7XHJcbiAgZm9ybUNvbnRyb2w6IEZvcm1Db250cm9sO1xyXG5cclxuICBjb25zdHJ1Y3RvcihvcHRpb25zOiBQYXJ0aWFsPFNlYXJjaEZpbHRlckJhc2U8VD4+ID0ge30pIHtcclxuICAgIHRoaXMudmFsdWUgPSBvcHRpb25zLnZhbHVlO1xyXG4gICAgdGhpcy5rZXkgPSBvcHRpb25zLmtleSB8fCAnJztcclxuICAgIHRoaXMubGFiZWwgPSBvcHRpb25zLmxhYmVsIHx8ICcnO1xyXG4gICAgdGhpcy5wbGFjZWhvbGRlciA9IG9wdGlvbnMucGxhY2Vob2xkZXIgfHwgJyc7XHJcbiAgICB0aGlzLm9yZGVyID0gb3B0aW9ucy5vcmRlciA9PT0gdW5kZWZpbmVkID8gMSA6IG9wdGlvbnMub3JkZXI7XHJcbiAgICB0aGlzLmNvbnRyb2xUeXBlID0gb3B0aW9ucy5jb250cm9sVHlwZSB8fCAnJztcclxuICAgIHRoaXMudHlwZSA9IG9wdGlvbnMudHlwZSB8fCAnJztcclxuICAgIHRoaXMubWF4TGVuZ3RoID0gb3B0aW9ucy5tYXhMZW5ndGggfHwgMjU2O1xyXG4gIH1cclxuXHJcbiAgc2V0VmFsdWUodmFsdWU6IFQgfCB1bmRlZmluZWQpIHtcclxuICAgIHRoaXMudmFsdWUgPSB2YWx1ZTtcclxuICAgIGlmICh0aGlzLmZvcm1Db250cm9sKSB7XHJcbiAgICAgIHRoaXMuZm9ybUNvbnRyb2wucGF0Y2hWYWx1ZSh2YWx1ZSk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -1,4 +1,7 @@
1
1
  import { InjectionToken } from '@angular/core';
2
+ /**
3
+ * Used to provide default configurations on module level.
4
+ */
2
5
  export class EntrySearchFilterConfig {
3
6
  constructor(config = {}) {
4
7
  this.applyButtonText = config.applyButtonText ?? 'Apply';
@@ -8,4 +11,4 @@ export const ENTRY_SEARCH_FILTER_CONFIG = new InjectionToken('EntrySearchFilterC
8
11
  providedIn: 'root',
9
12
  factory: () => new EntrySearchFilterConfig()
10
13
  });
11
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWZpbHRlci1jb25maWcubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbnRyeS1jb21wb25lbnRzL3NlYXJjaC1maWx0ZXIvc2VhcmNoLWZpbHRlci1jb25maWcubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUvQyxNQUFNLE9BQU8sdUJBQXVCO0lBR2hDLFlBQVksU0FBMkMsRUFBRTtRQUNyRCxJQUFJLENBQUMsZUFBZSxHQUFHLE1BQU0sQ0FBQyxlQUFlLElBQUksT0FBTyxDQUFDO0lBQzdELENBQUM7Q0FDSjtBQUNELE1BQU0sQ0FBQyxNQUFNLDBCQUEwQixHQUFHLElBQUksY0FBYyxDQUEwQix5QkFBeUIsRUFDM0c7SUFDSSxVQUFVLEVBQUUsTUFBTTtJQUNsQixPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUMsSUFBSSx1QkFBdUIsRUFBRTtDQUMvQyxDQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3Rpb25Ub2tlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5leHBvcnQgY2xhc3MgRW50cnlTZWFyY2hGaWx0ZXJDb25maWcge1xuICAgIGFwcGx5QnV0dG9uVGV4dDogc3RyaW5nO1xuXG4gICAgY29uc3RydWN0b3IoY29uZmlnOiBQYXJ0aWFsPEVudHJ5U2VhcmNoRmlsdGVyQ29uZmlnPiA9IHt9KSB7XG4gICAgICAgIHRoaXMuYXBwbHlCdXR0b25UZXh0ID0gY29uZmlnLmFwcGx5QnV0dG9uVGV4dCA/PyAnQXBwbHknO1xuICAgIH1cbn1cbmV4cG9ydCBjb25zdCBFTlRSWV9TRUFSQ0hfRklMVEVSX0NPTkZJRyA9IG5ldyBJbmplY3Rpb25Ub2tlbjxFbnRyeVNlYXJjaEZpbHRlckNvbmZpZz4oJ0VudHJ5U2VhcmNoRmlsdGVyQ29uZmlnJyxcbiAgICB7XG4gICAgICAgIHByb3ZpZGVkSW46ICdyb290JyxcbiAgICAgICAgZmFjdG9yeTogKCkgPT4gbmV3IEVudHJ5U2VhcmNoRmlsdGVyQ29uZmlnKClcbiAgICB9XG4pO1xuIl19
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWZpbHRlci1jb25maWcubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbnRyeS1jb21wb25lbnRzL3NlYXJjaC1maWx0ZXIvc2VhcmNoLWZpbHRlci1jb25maWcubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUvQzs7R0FFRztBQUNILE1BQU0sT0FBTyx1QkFBdUI7SUFJaEMsWUFBWSxTQUEyQyxFQUFFO1FBQ3JELElBQUksQ0FBQyxlQUFlLEdBQUcsTUFBTSxDQUFDLGVBQWUsSUFBSSxPQUFPLENBQUM7SUFDN0QsQ0FBQztDQUNKO0FBQ0QsTUFBTSxDQUFDLE1BQU0sMEJBQTBCLEdBQUcsSUFBSSxjQUFjLENBQTBCLHlCQUF5QixFQUMzRztJQUNJLFVBQVUsRUFBRSxNQUFNO0lBQ2xCLE9BQU8sRUFBRSxHQUFHLEVBQUUsQ0FBQyxJQUFJLHVCQUF1QixFQUFFO0NBQy9DLENBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGlvblRva2VuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbi8qKlxuICogVXNlZCB0byBwcm92aWRlIGRlZmF1bHQgY29uZmlndXJhdGlvbnMgb24gbW9kdWxlIGxldmVsLlxuICovXG5leHBvcnQgY2xhc3MgRW50cnlTZWFyY2hGaWx0ZXJDb25maWcge1xuICAgIC8qKiBBcHBseSBzZWFyY2ggZmlsdGVycyBidXR0b24gbGFiZWwgKGRlZmF1bHQgJ0FwcGx5JykgKi9cbiAgICBhcHBseUJ1dHRvblRleHQ6IHN0cmluZztcblxuICAgIGNvbnN0cnVjdG9yKGNvbmZpZzogUGFydGlhbDxFbnRyeVNlYXJjaEZpbHRlckNvbmZpZz4gPSB7fSkge1xuICAgICAgICB0aGlzLmFwcGx5QnV0dG9uVGV4dCA9IGNvbmZpZy5hcHBseUJ1dHRvblRleHQgPz8gJ0FwcGx5JztcbiAgICB9XG59XG5leHBvcnQgY29uc3QgRU5UUllfU0VBUkNIX0ZJTFRFUl9DT05GSUcgPSBuZXcgSW5qZWN0aW9uVG9rZW48RW50cnlTZWFyY2hGaWx0ZXJDb25maWc+KCdFbnRyeVNlYXJjaEZpbHRlckNvbmZpZycsXG4gICAge1xuICAgICAgICBwcm92aWRlZEluOiAncm9vdCcsXG4gICAgICAgIGZhY3Rvcnk6ICgpID0+IG5ldyBFbnRyeVNlYXJjaEZpbHRlckNvbmZpZygpXG4gICAgfVxuKTtcbiJdfQ==
@@ -16,4 +16,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
16
16
  }], form: [{
17
17
  type: Input
18
18
  }] } });
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWZpbHRlci1pbnB1dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbnRyeS1jb21wb25lbnRzL3NlYXJjaC1maWx0ZXIvc2VhcmNoLWZpbHRlci1pbnB1dC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbnRyeS1jb21wb25lbnRzL3NlYXJjaC1maWx0ZXIvc2VhcmNoLWZpbHRlci1pbnB1dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7O0FBUzFFLE1BQU0sT0FBTywrQkFBK0I7OzZIQUEvQiwrQkFBK0I7aUhBQS9CLCtCQUErQix5SENUNUMsdWNBU2lCOzRGREFKLCtCQUErQjtrQkFMM0MsU0FBUzsrQkFDRSwyQkFBMkIsbUJBRXBCLHVCQUF1QixDQUFDLE1BQU07OEJBSXRDLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBTZWFyY2hGaWx0ZXJCYXNlIH0gZnJvbSAnLi9zZWFyY2gtZmlsdGVyLWJhc2UnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdlbnRyeS1zZWFyY2gtZmlsdGVyLWlucHV0JyxcclxuICB0ZW1wbGF0ZVVybDogJy4vc2VhcmNoLWZpbHRlci1pbnB1dC5jb21wb25lbnQuaHRtbCcsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcclxufSlcclxuZXhwb3J0IGNsYXNzIEVudHJ5U2VhcmNoRmlsdGVySW5wdXRDb21wb25lbnQge1xyXG5cclxuICBASW5wdXQoKSBzZWFyY2hGaWx0ZXIhOiBTZWFyY2hGaWx0ZXJCYXNlPHN0cmluZz47XHJcbiAgQElucHV0KCkgZm9ybSE6IEZvcm1Hcm91cDtcclxufVxyXG4iLCI8bWF0LWZvcm0tZmllbGQgW2Zvcm1Hcm91cF09XCJmb3JtXCI+XHJcbiAgPG1hdC1sYWJlbCBbYXR0ci5mb3JdPVwic2VhcmNoRmlsdGVyLmtleVwiPnt7c2VhcmNoRmlsdGVyLmxhYmVsfX08L21hdC1sYWJlbD5cclxuXHJcbiAgPGRpdiBbbmdTd2l0Y2hdPVwic2VhcmNoRmlsdGVyLmNvbnRyb2xUeXBlXCI+XHJcblxyXG4gICAgPGlucHV0ICpuZ1N3aXRjaENhc2U9XCIndGV4dGJveCdcIiBbZm9ybUNvbnRyb2xOYW1lXT1cInNlYXJjaEZpbHRlci5rZXlcIiBbaWRdPVwic2VhcmNoRmlsdGVyLmtleVwiXHJcbiAgICAgIFt0eXBlXT1cInNlYXJjaEZpbHRlci50eXBlXCIgbWF0SW5wdXQgW3BsYWNlaG9sZGVyXT1cInNlYXJjaEZpbHRlci5wbGFjZWhvbGRlclwiIFttYXhsZW5ndGhdPVwic2VhcmNoRmlsdGVyLm1heExlbmd0aFwiPlxyXG5cclxuICA8L2Rpdj5cclxuPC9tYXQtZm9ybS1maWVsZD4iXX0=
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWZpbHRlci1pbnB1dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbnRyeS1jb21wb25lbnRzL3NlYXJjaC1maWx0ZXIvc2VhcmNoLWZpbHRlci1pbnB1dC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbnRyeS1jb21wb25lbnRzL3NlYXJjaC1maWx0ZXIvc2VhcmNoLWZpbHRlci1pbnB1dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7O0FBUzFFLE1BQU0sT0FBTywrQkFBK0I7OzZIQUEvQiwrQkFBK0I7aUhBQS9CLCtCQUErQix5SENUNUMsdWNBU2lCOzRGREFKLCtCQUErQjtrQkFMM0MsU0FBUzsrQkFDRSwyQkFBMkIsbUJBRXBCLHVCQUF1QixDQUFDLE1BQU07OEJBSXRDLFlBQVk7c0JBQXBCLEtBQUs7Z0JBRUcsSUFBSTtzQkFBWixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBTZWFyY2hGaWx0ZXJCYXNlIH0gZnJvbSAnLi9zZWFyY2gtZmlsdGVyLWJhc2UnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdlbnRyeS1zZWFyY2gtZmlsdGVyLWlucHV0JyxcclxuICB0ZW1wbGF0ZVVybDogJy4vc2VhcmNoLWZpbHRlci1pbnB1dC5jb21wb25lbnQuaHRtbCcsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcclxufSlcclxuZXhwb3J0IGNsYXNzIEVudHJ5U2VhcmNoRmlsdGVySW5wdXRDb21wb25lbnQge1xyXG4gIC8qKiBDb25maWd1cmF0aW9uIG9mIHRoZSBzZWFyY2ggZmlsdGVycyBpbnB1dHMgdGhhdCB3aWxsIGJlIGRpc3BsYXllZCBpbiB0aGUgc2VhcmNoLWZpbHRlciBjb21wb25lbnQuICovXHJcbiAgQElucHV0KCkgc2VhcmNoRmlsdGVyITogU2VhcmNoRmlsdGVyQmFzZTxzdHJpbmc+O1xyXG4gIC8qKiBGb3JtIGdyb3VwIHRvIHdoaWNoIHRoZSBzZWFyY2gtZmlsdGVyIGlucHV0IGNvbXBvbmVudCB3aWxsIGJlIGFkZGVkLiAqL1xyXG4gIEBJbnB1dCgpIGZvcm0hOiBGb3JtR3JvdXA7XHJcbn1cclxuIiwiPG1hdC1mb3JtLWZpZWxkIFtmb3JtR3JvdXBdPVwiZm9ybVwiPlxyXG4gIDxtYXQtbGFiZWwgW2F0dHIuZm9yXT1cInNlYXJjaEZpbHRlci5rZXlcIj57e3NlYXJjaEZpbHRlci5sYWJlbH19PC9tYXQtbGFiZWw+XHJcblxyXG4gIDxkaXYgW25nU3dpdGNoXT1cInNlYXJjaEZpbHRlci5jb250cm9sVHlwZVwiPlxyXG5cclxuICAgIDxpbnB1dCAqbmdTd2l0Y2hDYXNlPVwiJ3RleHRib3gnXCIgW2Zvcm1Db250cm9sTmFtZV09XCJzZWFyY2hGaWx0ZXIua2V5XCIgW2lkXT1cInNlYXJjaEZpbHRlci5rZXlcIlxyXG4gICAgICBbdHlwZV09XCJzZWFyY2hGaWx0ZXIudHlwZVwiIG1hdElucHV0IFtwbGFjZWhvbGRlcl09XCJzZWFyY2hGaWx0ZXIucGxhY2Vob2xkZXJcIiBbbWF4bGVuZ3RoXT1cInNlYXJjaEZpbHRlci5tYXhMZW5ndGhcIj5cclxuXHJcbiAgPC9kaXY+XHJcbjwvbWF0LWZvcm0tZmllbGQ+Il19
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWZpbHRlci1wYXJhbXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbnRyeS1jb21wb25lbnRzL3NlYXJjaC1maWx0ZXIvc2VhcmNoLWZpbHRlci1wYXJhbXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB0eXBlIFNlYXJjaEZpbHRlclBhcmFtcyA9IHtcclxuICBba2V5OiBzdHJpbmddOiBhbnk7XHJcbn07XHJcbiJdfQ==
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWZpbHRlci1wYXJhbXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbnRyeS1jb21wb25lbnRzL3NlYXJjaC1maWx0ZXIvc2VhcmNoLWZpbHRlci1wYXJhbXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxyXG4gKiBTZWFyY2hGaWx0ZXJQYXJhbXMgYXJlIHRoZSBzYW1lIHR5cGUgYXMgQGFuZ3VsYXIvcm91dGVyIHR5cGUgUGFyYW1zLFxyXG4gKiBjb250YWluaW5nIGEgY29sbGVjdGlvbiBvZiBxdWVyeSBVUkwgcGFyYW1ldGVycyBmb3IgZWFzeSBpbnRlZ3JhdGlvbi5cclxuICovXHJcbmV4cG9ydCB0eXBlIFNlYXJjaEZpbHRlclBhcmFtcyA9IHtcclxuICBba2V5OiBzdHJpbmddOiBhbnk7XHJcbn07XHJcbiJdfQ==
@@ -1,15 +1,18 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { InjectionToken, Component, ChangeDetectionStrategy, Input, EventEmitter, Inject, Output, NgModule } from '@angular/core';
3
- import * as i3 from '@angular/common';
4
- import { CommonModule } from '@angular/common';
5
3
  import * as i2 from '@angular/forms';
6
4
  import { FormControl, FormGroup, FormsModule, ReactiveFormsModule } from '@angular/forms';
5
+ import * as i1 from '@angular/material/form-field';
6
+ import * as i3 from '@angular/common';
7
+ import { CommonModule } from '@angular/common';
7
8
  import * as i4 from '@angular/material/input';
8
9
  import { MatInputModule } from '@angular/material/input';
9
10
  import { MatButtonModule } from '@angular/material/button';
10
11
  import { MatListModule } from '@angular/material/list';
11
- import * as i1 from '@angular/material/form-field';
12
12
 
13
+ /**
14
+ * Used to provide default configurations on module level.
15
+ */
13
16
  class EntrySearchFilterConfig {
14
17
  constructor(config = {}) {
15
18
  var _a;
@@ -34,10 +37,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
34
37
  type: Input
35
38
  }] } });
36
39
 
40
+ /**
41
+ * Entry SearchFilter component.
42
+ */
37
43
  class EntrySearchFilterComponent {
38
44
  constructor(config) {
39
45
  this.config = config;
46
+ /** Configuration of the search filters inputs that will be displayed in the search-filter component. */
40
47
  this.searchFilters = [];
48
+ /**
49
+ * Emits the change in SearchFilterParams so the containing component can apply them and retreive the filtered results.
50
+ */
41
51
  this.searchFilterChange = new EventEmitter();
42
52
  }
43
53
  ngOnInit() {
@@ -73,6 +83,35 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
73
83
  type: Output
74
84
  }] } });
75
85
 
86
+ /**
87
+ * Base Entry search filter input component.
88
+ */
89
+ class SearchFilterBase {
90
+ constructor(options = {}) {
91
+ this.value = options.value;
92
+ this.key = options.key || '';
93
+ this.label = options.label || '';
94
+ this.placeholder = options.placeholder || '';
95
+ this.order = options.order === undefined ? 1 : options.order;
96
+ this.controlType = options.controlType || '';
97
+ this.type = options.type || '';
98
+ this.maxLength = options.maxLength || 256;
99
+ }
100
+ setValue(value) {
101
+ this.value = value;
102
+ if (this.formControl) {
103
+ this.formControl.patchValue(value);
104
+ }
105
+ }
106
+ }
107
+
108
+ class SearchFilterInput extends SearchFilterBase {
109
+ constructor() {
110
+ super(...arguments);
111
+ this.controlType = 'textbox';
112
+ }
113
+ }
114
+
76
115
  class EntrySearchFilterModule {
77
116
  }
78
117
  EntrySearchFilterModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: EntrySearchFilterModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
@@ -112,32 +151,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
112
151
  }]
113
152
  }] });
114
153
 
115
- class SearchFilterBase {
116
- constructor(options = {}) {
117
- this.value = options.value;
118
- this.key = options.key || '';
119
- this.label = options.label || '';
120
- this.placeholder = options.placeholder || '';
121
- this.order = options.order === undefined ? 1 : options.order;
122
- this.controlType = options.controlType || '';
123
- this.type = options.type || '';
124
- this.maxLength = options.maxLength || 256;
125
- }
126
- setValue(value) {
127
- this.value = value;
128
- if (this.formControl) {
129
- this.formControl.patchValue(value);
130
- }
131
- }
132
- }
133
-
134
- class SearchFilterInput extends SearchFilterBase {
135
- constructor() {
136
- super(...arguments);
137
- this.controlType = 'textbox';
138
- }
139
- }
140
-
141
154
  /**
142
155
  * Generated bundle index. Do not edit.
143
156
  */
@@ -1 +1 @@
1
- {"version":3,"file":"enigmatry-entry-components-search-filter.mjs","sources":["../../../../projects/entry-components/search-filter/search-filter-config.model.ts","../../../../projects/entry-components/search-filter/search-filter-input.component.ts","../../../../projects/entry-components/search-filter/search-filter-input.component.html","../../../../projects/entry-components/search-filter/entry-search-filter.component.ts","../../../../projects/entry-components/search-filter/entry-search-filter.component.html","../../../../projects/entry-components/search-filter/entry-search-filter.module.ts","../../../../projects/entry-components/search-filter/search-filter-base.ts","../../../../projects/entry-components/search-filter/search-filter-textbox.ts","../../../../projects/entry-components/search-filter/enigmatry-entry-components-search-filter.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\n\nexport class EntrySearchFilterConfig {\n applyButtonText: string;\n\n constructor(config: Partial<EntrySearchFilterConfig> = {}) {\n this.applyButtonText = config.applyButtonText ?? 'Apply';\n }\n}\nexport const ENTRY_SEARCH_FILTER_CONFIG = new InjectionToken<EntrySearchFilterConfig>('EntrySearchFilterConfig',\n {\n providedIn: 'root',\n factory: () => new EntrySearchFilterConfig()\n }\n);\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\r\nimport { FormGroup } from '@angular/forms';\r\nimport { SearchFilterBase } from './search-filter-base';\r\n\r\n@Component({\r\n selector: 'entry-search-filter-input',\r\n templateUrl: './search-filter-input.component.html',\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class EntrySearchFilterInputComponent {\r\n\r\n @Input() searchFilter!: SearchFilterBase<string>;\r\n @Input() form!: FormGroup;\r\n}\r\n","<mat-form-field [formGroup]=\"form\">\r\n <mat-label [attr.for]=\"searchFilter.key\">{{searchFilter.label}}</mat-label>\r\n\r\n <div [ngSwitch]=\"searchFilter.controlType\">\r\n\r\n <input *ngSwitchCase=\"'textbox'\" [formControlName]=\"searchFilter.key\" [id]=\"searchFilter.key\"\r\n [type]=\"searchFilter.type\" matInput [placeholder]=\"searchFilter.placeholder\" [maxlength]=\"searchFilter.maxLength\">\r\n\r\n </div>\r\n</mat-form-field>","import { ChangeDetectionStrategy, Component, EventEmitter, Inject, Input, OnInit, Output } from '@angular/core';\r\nimport { FormControl, FormGroup } from '@angular/forms';\r\nimport { SearchFilterBase } from './search-filter-base';\r\nimport { SearchFilterParams } from './search-filter-params';\r\nimport { ENTRY_SEARCH_FILTER_CONFIG, EntrySearchFilterConfig } from './search-filter-config.model';\r\n\r\n@Component({\r\n selector: 'entry-search-filter',\r\n templateUrl: './entry-search-filter.component.html',\r\n styleUrls: ['./entry-search-filter.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class EntrySearchFilterComponent implements OnInit {\r\n\r\n @Input() searchFilters: SearchFilterBase<string>[] = [];\r\n @Output() searchFilterChange = new EventEmitter<SearchFilterParams>();\r\n\r\n searchFilterForm!: FormGroup;\r\n\r\n constructor(@Inject(ENTRY_SEARCH_FILTER_CONFIG) public config: EntrySearchFilterConfig) { }\r\n\r\n ngOnInit() {\r\n this.searchFilterForm = this.toFormGroup(this.searchFilters);\r\n }\r\n\r\n onSubmit() {\r\n const formValue = this.searchFilterForm.value;\r\n this.searchFilterChange.emit(formValue);\r\n }\r\n\r\n toFormGroup(searchFilters: SearchFilterBase<string>[]) {\r\n const group: any = {};\r\n\r\n searchFilters.forEach(searchFilter => {\r\n const formControl = new FormControl(searchFilter.value || '');\r\n group[searchFilter.key] = formControl;\r\n searchFilter.formControl = formControl;\r\n });\r\n return new FormGroup(group);\r\n }\r\n}\r\n","<div class=\"search-form-container\">\r\n <form (ngSubmit)=\"onSubmit()\" [formGroup]=\"searchFilterForm\">\r\n <div class=\"search-form-fields\">\r\n <div *ngFor=\"let searchFilter of searchFilters\" class=\"search-form-field\">\r\n <entry-search-filter-input [searchFilter]=\"searchFilter\"\r\n [form]=\"searchFilterForm\"></entry-search-filter-input>\r\n </div>\r\n <div>\r\n <button type=\"button\" class=\"mat-raised-button mat-accent\" type=\"submit\">{{config.applyButtonText}}</button>\r\n </div>\r\n </div>\r\n </form>\r\n</div>","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { MatListModule } from '@angular/material/list';\r\n\r\nimport { EntrySearchFilterComponent } from './entry-search-filter.component';\r\nimport { EntrySearchFilterInputComponent } from './search-filter-input.component';\r\n\r\n@NgModule({\r\n declarations: [\r\n EntrySearchFilterComponent,\r\n EntrySearchFilterInputComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n MatInputModule,\r\n MatButtonModule,\r\n MatListModule\r\n ],\r\n exports: [\r\n EntrySearchFilterComponent\r\n ]\r\n})\r\nexport class EntrySearchFilterModule { }\r\n","import { FormControl } from '@angular/forms';\r\n\r\nexport class SearchFilterBase<T> {\r\n key: string;\r\n value: T | undefined;\r\n label: string;\r\n placeholder: string;\r\n type: string;\r\n order: number;\r\n controlType: string;\r\n maxLength: number;\r\n formControl: FormControl;\r\n\r\n constructor(options: Partial<SearchFilterBase<T>> = {}) {\r\n this.value = options.value;\r\n this.key = options.key || '';\r\n this.label = options.label || '';\r\n this.placeholder = options.placeholder || '';\r\n this.order = options.order === undefined ? 1 : options.order;\r\n this.controlType = options.controlType || '';\r\n this.type = options.type || '';\r\n this.maxLength = options.maxLength || 256;\r\n }\r\n\r\n setValue(value: T | undefined) {\r\n this.value = value;\r\n if (this.formControl) {\r\n this.formControl.patchValue(value);\r\n }\r\n }\r\n}\r\n","import { SearchFilterBase } from './search-filter-base';\r\n\r\nexport class SearchFilterInput extends SearchFilterBase<string> {\r\n override controlType = 'textbox';\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.EntrySearchFilterInputComponent"],"mappings":";;;;;;;;;;;;MAEa,uBAAuB,CAAA;IAGhC,WAAY,CAAA,SAA2C,EAAE,EAAA;;QACrD,IAAI,CAAC,eAAe,GAAG,CAAA,EAAA,GAAA,MAAM,CAAC,eAAe,MAAI,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,EAAA,GAAA,OAAO,CAAC;KAC5D;AACJ,CAAA;MACY,0BAA0B,GAAG,IAAI,cAAc,CAA0B,yBAAyB,EAC3G;AACI,IAAA,UAAU,EAAE,MAAM;AAClB,IAAA,OAAO,EAAE,MAAM,IAAI,uBAAuB,EAAE;AAC/C,CAAA;;MCJQ,+BAA+B,CAAA;;6HAA/B,+BAA+B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAA/B,+BAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,+BAA+B,yHCT5C,ucASiB,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,YAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,YAAA,EAAA,oBAAA,EAAA,WAAA,EAAA,YAAA,CAAA,EAAA,QAAA,EAAA,CAAA,cAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,0FAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,kBAAA,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,CAAA,WAAA,CAAA,EAAA,OAAA,EAAA,CAAA,UAAA,CAAA,EAAA,QAAA,EAAA,CAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,QAAA,EAAA,QAAA,EAAA,WAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,QAAA,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,CAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,YAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,QAAA,EAAA,QAAA,EAAA,yHAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,IAAA,EAAA,aAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,mBAAA,EAAA,kBAAA,EAAA,OAAA,EAAA,UAAA,CAAA,EAAA,QAAA,EAAA,CAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,8MAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,CAAA,iBAAA,EAAA,UAAA,EAAA,SAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,kBAAA,EAAA,QAAA,EAAA,4EAAA,EAAA,MAAA,EAAA,CAAA,WAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;4FDAJ,+BAA+B,EAAA,UAAA,EAAA,CAAA;kBAL3C,SAAS;+BACE,2BAA2B,EAAA,eAAA,EAEpB,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,ucAAA,EAAA,CAAA;8BAItC,YAAY,EAAA,CAAA;sBAApB,KAAK;gBACG,IAAI,EAAA,CAAA;sBAAZ,KAAK;;;MEAK,0BAA0B,CAAA;AAOrC,IAAA,WAAA,CAAuD,MAA+B,EAAA;AAA/B,QAAA,IAAM,CAAA,MAAA,GAAN,MAAM,CAAyB;AAL7E,QAAA,IAAa,CAAA,aAAA,GAA+B,EAAE,CAAC;AAC9C,QAAA,IAAA,CAAA,kBAAkB,GAAG,IAAI,YAAY,EAAsB,CAAC;KAIqB;IAE3F,QAAQ,GAAA;QACN,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;KAC9D;IAED,QAAQ,GAAA;AACN,QAAA,MAAM,SAAS,GAAG,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC;AAC9C,QAAA,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;KACzC;AAED,IAAA,WAAW,CAAC,aAAyC,EAAA;QACnD,MAAM,KAAK,GAAQ,EAAE,CAAC;AAEtB,QAAA,aAAa,CAAC,OAAO,CAAC,YAAY,IAAG;YACnC,MAAM,WAAW,GAAG,IAAI,WAAW,CAAC,YAAY,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;AAC9D,YAAA,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC;AACtC,YAAA,YAAY,CAAC,WAAW,GAAG,WAAW,CAAC;AACzC,SAAC,CAAC,CAAC;AACH,QAAA,OAAO,IAAI,SAAS,CAAC,KAAK,CAAC,CAAC;KAC7B;;AA3BU,0BAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,0BAA0B,kBAOjB,0BAA0B,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAPnC,0BAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,0BAA0B,8JCZvC,4oBAYM,EAAA,MAAA,EAAA,CAAA,+GAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAA,+BAAA,EAAA,QAAA,EAAA,2BAAA,EAAA,MAAA,EAAA,CAAA,cAAA,EAAA,MAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,aAAA,EAAA,QAAA,EAAA,8CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,0FAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,kBAAA,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,CAAA,WAAA,CAAA,EAAA,OAAA,EAAA,CAAA,UAAA,CAAA,EAAA,QAAA,EAAA,CAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;4FDAO,0BAA0B,EAAA,UAAA,EAAA,CAAA;kBANtC,SAAS;+BACE,qBAAqB,EAAA,eAAA,EAGd,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,4oBAAA,EAAA,MAAA,EAAA,CAAA,+GAAA,CAAA,EAAA,CAAA;;;8BASlC,MAAM;+BAAC,0BAA0B,CAAA;;yBALrC,aAAa,EAAA,CAAA;sBAArB,KAAK;gBACI,kBAAkB,EAAA,CAAA;sBAA3B,MAAM;;;MEYI,uBAAuB,CAAA;;qHAAvB,uBAAuB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAvB,uBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,uBAAuB,iBAfhC,0BAA0B;AAC1B,QAAA,+BAA+B,aAG/B,YAAY;QACZ,WAAW;QACX,mBAAmB;QACnB,cAAc;QACd,eAAe;QACf,aAAa,aAGb,0BAA0B,CAAA,EAAA,CAAA,CAAA;AAGjB,uBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,uBAAuB,EAZzB,OAAA,EAAA,CAAA;YACP,YAAY;YACZ,WAAW;YACX,mBAAmB;YACnB,cAAc;YACd,eAAe;YACf,aAAa;SACd,CAAA,EAAA,CAAA,CAAA;4FAKU,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBAjBnC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE;wBACZ,0BAA0B;wBAC1B,+BAA+B;AAChC,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,YAAY;wBACZ,WAAW;wBACX,mBAAmB;wBACnB,cAAc;wBACd,eAAe;wBACf,aAAa;AACd,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,0BAA0B;AAC3B,qBAAA;iBACF,CAAA;;;MCxBY,gBAAgB,CAAA;IAW3B,WAAY,CAAA,UAAwC,EAAE,EAAA;AACpD,QAAA,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;QAC3B,IAAI,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,EAAE,CAAC;QAC7B,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC;QACjC,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,EAAE,CAAC;AAC7C,QAAA,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,KAAK,SAAS,GAAG,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC;QAC7D,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,EAAE,CAAC;QAC7C,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC;QAC/B,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,GAAG,CAAC;KAC3C;AAED,IAAA,QAAQ,CAAC,KAAoB,EAAA;AAC3B,QAAA,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,IAAI,CAAC,WAAW,EAAE;AACpB,YAAA,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;AACpC,SAAA;KACF;AACF;;AC5BK,MAAO,iBAAkB,SAAQ,gBAAwB,CAAA;AAA/D,IAAA,WAAA,GAAA;;AACW,QAAA,IAAW,CAAA,WAAA,GAAG,SAAS,CAAC;KAClC;AAAA;;ACJD;;AAEG;;;;"}
1
+ {"version":3,"file":"enigmatry-entry-components-search-filter.mjs","sources":["../../../../projects/entry-components/search-filter/search-filter-config.model.ts","../../../../projects/entry-components/search-filter/search-filter-input.component.ts","../../../../projects/entry-components/search-filter/search-filter-input.component.html","../../../../projects/entry-components/search-filter/entry-search-filter.component.ts","../../../../projects/entry-components/search-filter/entry-search-filter.component.html","../../../../projects/entry-components/search-filter/search-filter-base.ts","../../../../projects/entry-components/search-filter/search-filter-textbox.ts","../../../../projects/entry-components/search-filter/entry-search-filter.module.ts","../../../../projects/entry-components/search-filter/enigmatry-entry-components-search-filter.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\n\n/**\n * Used to provide default configurations on module level.\n */\nexport class EntrySearchFilterConfig {\n /** Apply search filters button label (default 'Apply') */\n applyButtonText: string;\n\n constructor(config: Partial<EntrySearchFilterConfig> = {}) {\n this.applyButtonText = config.applyButtonText ?? 'Apply';\n }\n}\nexport const ENTRY_SEARCH_FILTER_CONFIG = new InjectionToken<EntrySearchFilterConfig>('EntrySearchFilterConfig',\n {\n providedIn: 'root',\n factory: () => new EntrySearchFilterConfig()\n }\n);\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\r\nimport { FormGroup } from '@angular/forms';\r\nimport { SearchFilterBase } from './search-filter-base';\r\n\r\n@Component({\r\n selector: 'entry-search-filter-input',\r\n templateUrl: './search-filter-input.component.html',\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class EntrySearchFilterInputComponent {\r\n /** Configuration of the search filters inputs that will be displayed in the search-filter component. */\r\n @Input() searchFilter!: SearchFilterBase<string>;\r\n /** Form group to which the search-filter input component will be added. */\r\n @Input() form!: FormGroup;\r\n}\r\n","<mat-form-field [formGroup]=\"form\">\r\n <mat-label [attr.for]=\"searchFilter.key\">{{searchFilter.label}}</mat-label>\r\n\r\n <div [ngSwitch]=\"searchFilter.controlType\">\r\n\r\n <input *ngSwitchCase=\"'textbox'\" [formControlName]=\"searchFilter.key\" [id]=\"searchFilter.key\"\r\n [type]=\"searchFilter.type\" matInput [placeholder]=\"searchFilter.placeholder\" [maxlength]=\"searchFilter.maxLength\">\r\n\r\n </div>\r\n</mat-form-field>","import { ChangeDetectionStrategy, Component, EventEmitter, Inject, Input, OnInit, Output } from '@angular/core';\r\nimport { FormControl, FormGroup } from '@angular/forms';\r\nimport { SearchFilterBase } from './search-filter-base';\r\nimport { SearchFilterParams } from './search-filter-params';\r\nimport { ENTRY_SEARCH_FILTER_CONFIG, EntrySearchFilterConfig } from './search-filter-config.model';\r\n\r\n/**\r\n * Entry SearchFilter component.\r\n */\r\n@Component({\r\n selector: 'entry-search-filter',\r\n templateUrl: './entry-search-filter.component.html',\r\n styleUrls: ['./entry-search-filter.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class EntrySearchFilterComponent implements OnInit {\r\n\r\n /** Configuration of the search filters inputs that will be displayed in the search-filter component. */\r\n @Input() searchFilters: SearchFilterBase<string>[] = [];\r\n /**\r\n * Emits the change in SearchFilterParams so the containing component can apply them and retreive the filtered results.\r\n */\r\n @Output() searchFilterChange = new EventEmitter<SearchFilterParams>();\r\n\r\n searchFilterForm!: FormGroup;\r\n\r\n constructor(@Inject(ENTRY_SEARCH_FILTER_CONFIG) public config: EntrySearchFilterConfig) { }\r\n\r\n ngOnInit() {\r\n this.searchFilterForm = this.toFormGroup(this.searchFilters);\r\n }\r\n\r\n onSubmit() {\r\n const formValue = this.searchFilterForm.value;\r\n this.searchFilterChange.emit(formValue);\r\n }\r\n\r\n toFormGroup(searchFilters: SearchFilterBase<string>[]) {\r\n const group: any = {};\r\n\r\n searchFilters.forEach(searchFilter => {\r\n const formControl = new FormControl(searchFilter.value || '');\r\n group[searchFilter.key] = formControl;\r\n searchFilter.formControl = formControl;\r\n });\r\n return new FormGroup(group);\r\n }\r\n}\r\n","<div class=\"search-form-container\">\r\n <form (ngSubmit)=\"onSubmit()\" [formGroup]=\"searchFilterForm\">\r\n <div class=\"search-form-fields\">\r\n <div *ngFor=\"let searchFilter of searchFilters\" class=\"search-form-field\">\r\n <entry-search-filter-input [searchFilter]=\"searchFilter\"\r\n [form]=\"searchFilterForm\"></entry-search-filter-input>\r\n </div>\r\n <div>\r\n <button type=\"button\" class=\"mat-raised-button mat-accent\" type=\"submit\">{{config.applyButtonText}}</button>\r\n </div>\r\n </div>\r\n </form>\r\n</div>","import { FormControl } from '@angular/forms';\r\n\r\n/**\r\n * Base Entry search filter input component.\r\n */\r\nexport class SearchFilterBase<T> {\r\n /** Unique search-filter input key */\r\n key: string;\r\n /** Default value to be displayed/selected in the input control */\r\n value: T | undefined;\r\n /** Default */\r\n label: string;\r\n /** Label text to be displayed for the search-filter input control */\r\n placeholder: string;\r\n /** Type of input control e.g. 'email' */\r\n type: string;\r\n order: number;\r\n /** Control type to be overriden in implementing class, used to render the proper input type e.g. 'textbox' */\r\n controlType: string;\r\n /** Max text length to be enterd in the input component (default is 256) */\r\n maxLength: number;\r\n formControl: FormControl;\r\n\r\n constructor(options: Partial<SearchFilterBase<T>> = {}) {\r\n this.value = options.value;\r\n this.key = options.key || '';\r\n this.label = options.label || '';\r\n this.placeholder = options.placeholder || '';\r\n this.order = options.order === undefined ? 1 : options.order;\r\n this.controlType = options.controlType || '';\r\n this.type = options.type || '';\r\n this.maxLength = options.maxLength || 256;\r\n }\r\n\r\n setValue(value: T | undefined) {\r\n this.value = value;\r\n if (this.formControl) {\r\n this.formControl.patchValue(value);\r\n }\r\n }\r\n}\r\n","import { SearchFilterBase } from './search-filter-base';\r\n\r\nexport class SearchFilterInput extends SearchFilterBase<string> {\r\n override controlType = 'textbox';\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { MatListModule } from '@angular/material/list';\r\n\r\nimport { EntrySearchFilterComponent } from './entry-search-filter.component';\r\nimport { EntrySearchFilterInputComponent } from './search-filter-input.component';\r\n\r\n@NgModule({\r\n declarations: [\r\n EntrySearchFilterComponent,\r\n EntrySearchFilterInputComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n MatInputModule,\r\n MatButtonModule,\r\n MatListModule\r\n ],\r\n exports: [\r\n EntrySearchFilterComponent\r\n ]\r\n})\r\nexport class EntrySearchFilterModule { }\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.EntrySearchFilterInputComponent"],"mappings":"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"}
@@ -1,15 +1,18 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { InjectionToken, Component, ChangeDetectionStrategy, Input, EventEmitter, Inject, Output, NgModule } from '@angular/core';
3
- import * as i3 from '@angular/common';
4
- import { CommonModule } from '@angular/common';
5
3
  import * as i2 from '@angular/forms';
6
4
  import { FormControl, FormGroup, FormsModule, ReactiveFormsModule } from '@angular/forms';
5
+ import * as i1 from '@angular/material/form-field';
6
+ import * as i3 from '@angular/common';
7
+ import { CommonModule } from '@angular/common';
7
8
  import * as i4 from '@angular/material/input';
8
9
  import { MatInputModule } from '@angular/material/input';
9
10
  import { MatButtonModule } from '@angular/material/button';
10
11
  import { MatListModule } from '@angular/material/list';
11
- import * as i1 from '@angular/material/form-field';
12
12
 
13
+ /**
14
+ * Used to provide default configurations on module level.
15
+ */
13
16
  class EntrySearchFilterConfig {
14
17
  constructor(config = {}) {
15
18
  this.applyButtonText = config.applyButtonText ?? 'Apply';
@@ -33,10 +36,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
33
36
  type: Input
34
37
  }] } });
35
38
 
39
+ /**
40
+ * Entry SearchFilter component.
41
+ */
36
42
  class EntrySearchFilterComponent {
37
43
  constructor(config) {
38
44
  this.config = config;
45
+ /** Configuration of the search filters inputs that will be displayed in the search-filter component. */
39
46
  this.searchFilters = [];
47
+ /**
48
+ * Emits the change in SearchFilterParams so the containing component can apply them and retreive the filtered results.
49
+ */
40
50
  this.searchFilterChange = new EventEmitter();
41
51
  }
42
52
  ngOnInit() {
@@ -70,6 +80,35 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
70
80
  type: Output
71
81
  }] } });
72
82
 
83
+ /**
84
+ * Base Entry search filter input component.
85
+ */
86
+ class SearchFilterBase {
87
+ constructor(options = {}) {
88
+ this.value = options.value;
89
+ this.key = options.key || '';
90
+ this.label = options.label || '';
91
+ this.placeholder = options.placeholder || '';
92
+ this.order = options.order === undefined ? 1 : options.order;
93
+ this.controlType = options.controlType || '';
94
+ this.type = options.type || '';
95
+ this.maxLength = options.maxLength || 256;
96
+ }
97
+ setValue(value) {
98
+ this.value = value;
99
+ if (this.formControl) {
100
+ this.formControl.patchValue(value);
101
+ }
102
+ }
103
+ }
104
+
105
+ class SearchFilterInput extends SearchFilterBase {
106
+ constructor() {
107
+ super(...arguments);
108
+ this.controlType = 'textbox';
109
+ }
110
+ }
111
+
73
112
  class EntrySearchFilterModule {
74
113
  }
75
114
  EntrySearchFilterModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: EntrySearchFilterModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
@@ -109,32 +148,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
109
148
  }]
110
149
  }] });
111
150
 
112
- class SearchFilterBase {
113
- constructor(options = {}) {
114
- this.value = options.value;
115
- this.key = options.key || '';
116
- this.label = options.label || '';
117
- this.placeholder = options.placeholder || '';
118
- this.order = options.order === undefined ? 1 : options.order;
119
- this.controlType = options.controlType || '';
120
- this.type = options.type || '';
121
- this.maxLength = options.maxLength || 256;
122
- }
123
- setValue(value) {
124
- this.value = value;
125
- if (this.formControl) {
126
- this.formControl.patchValue(value);
127
- }
128
- }
129
- }
130
-
131
- class SearchFilterInput extends SearchFilterBase {
132
- constructor() {
133
- super(...arguments);
134
- this.controlType = 'textbox';
135
- }
136
- }
137
-
138
151
  /**
139
152
  * Generated bundle index. Do not edit.
140
153
  */
@@ -1 +1 @@
1
- {"version":3,"file":"enigmatry-entry-components-search-filter.mjs","sources":["../../../../projects/entry-components/search-filter/search-filter-config.model.ts","../../../../projects/entry-components/search-filter/search-filter-input.component.ts","../../../../projects/entry-components/search-filter/search-filter-input.component.html","../../../../projects/entry-components/search-filter/entry-search-filter.component.ts","../../../../projects/entry-components/search-filter/entry-search-filter.component.html","../../../../projects/entry-components/search-filter/entry-search-filter.module.ts","../../../../projects/entry-components/search-filter/search-filter-base.ts","../../../../projects/entry-components/search-filter/search-filter-textbox.ts","../../../../projects/entry-components/search-filter/enigmatry-entry-components-search-filter.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\n\nexport class EntrySearchFilterConfig {\n applyButtonText: string;\n\n constructor(config: Partial<EntrySearchFilterConfig> = {}) {\n this.applyButtonText = config.applyButtonText ?? 'Apply';\n }\n}\nexport const ENTRY_SEARCH_FILTER_CONFIG = new InjectionToken<EntrySearchFilterConfig>('EntrySearchFilterConfig',\n {\n providedIn: 'root',\n factory: () => new EntrySearchFilterConfig()\n }\n);\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\r\nimport { FormGroup } from '@angular/forms';\r\nimport { SearchFilterBase } from './search-filter-base';\r\n\r\n@Component({\r\n selector: 'entry-search-filter-input',\r\n templateUrl: './search-filter-input.component.html',\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class EntrySearchFilterInputComponent {\r\n\r\n @Input() searchFilter!: SearchFilterBase<string>;\r\n @Input() form!: FormGroup;\r\n}\r\n","<mat-form-field [formGroup]=\"form\">\r\n <mat-label [attr.for]=\"searchFilter.key\">{{searchFilter.label}}</mat-label>\r\n\r\n <div [ngSwitch]=\"searchFilter.controlType\">\r\n\r\n <input *ngSwitchCase=\"'textbox'\" [formControlName]=\"searchFilter.key\" [id]=\"searchFilter.key\"\r\n [type]=\"searchFilter.type\" matInput [placeholder]=\"searchFilter.placeholder\" [maxlength]=\"searchFilter.maxLength\">\r\n\r\n </div>\r\n</mat-form-field>","import { ChangeDetectionStrategy, Component, EventEmitter, Inject, Input, OnInit, Output } from '@angular/core';\r\nimport { FormControl, FormGroup } from '@angular/forms';\r\nimport { SearchFilterBase } from './search-filter-base';\r\nimport { SearchFilterParams } from './search-filter-params';\r\nimport { ENTRY_SEARCH_FILTER_CONFIG, EntrySearchFilterConfig } from './search-filter-config.model';\r\n\r\n@Component({\r\n selector: 'entry-search-filter',\r\n templateUrl: './entry-search-filter.component.html',\r\n styleUrls: ['./entry-search-filter.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class EntrySearchFilterComponent implements OnInit {\r\n\r\n @Input() searchFilters: SearchFilterBase<string>[] = [];\r\n @Output() searchFilterChange = new EventEmitter<SearchFilterParams>();\r\n\r\n searchFilterForm!: FormGroup;\r\n\r\n constructor(@Inject(ENTRY_SEARCH_FILTER_CONFIG) public config: EntrySearchFilterConfig) { }\r\n\r\n ngOnInit() {\r\n this.searchFilterForm = this.toFormGroup(this.searchFilters);\r\n }\r\n\r\n onSubmit() {\r\n const formValue = this.searchFilterForm.value;\r\n this.searchFilterChange.emit(formValue);\r\n }\r\n\r\n toFormGroup(searchFilters: SearchFilterBase<string>[]) {\r\n const group: any = {};\r\n\r\n searchFilters.forEach(searchFilter => {\r\n const formControl = new FormControl(searchFilter.value || '');\r\n group[searchFilter.key] = formControl;\r\n searchFilter.formControl = formControl;\r\n });\r\n return new FormGroup(group);\r\n }\r\n}\r\n","<div class=\"search-form-container\">\r\n <form (ngSubmit)=\"onSubmit()\" [formGroup]=\"searchFilterForm\">\r\n <div class=\"search-form-fields\">\r\n <div *ngFor=\"let searchFilter of searchFilters\" class=\"search-form-field\">\r\n <entry-search-filter-input [searchFilter]=\"searchFilter\"\r\n [form]=\"searchFilterForm\"></entry-search-filter-input>\r\n </div>\r\n <div>\r\n <button type=\"button\" class=\"mat-raised-button mat-accent\" type=\"submit\">{{config.applyButtonText}}</button>\r\n </div>\r\n </div>\r\n </form>\r\n</div>","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { MatListModule } from '@angular/material/list';\r\n\r\nimport { EntrySearchFilterComponent } from './entry-search-filter.component';\r\nimport { EntrySearchFilterInputComponent } from './search-filter-input.component';\r\n\r\n@NgModule({\r\n declarations: [\r\n EntrySearchFilterComponent,\r\n EntrySearchFilterInputComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n MatInputModule,\r\n MatButtonModule,\r\n MatListModule\r\n ],\r\n exports: [\r\n EntrySearchFilterComponent\r\n ]\r\n})\r\nexport class EntrySearchFilterModule { }\r\n","import { FormControl } from '@angular/forms';\r\n\r\nexport class SearchFilterBase<T> {\r\n key: string;\r\n value: T | undefined;\r\n label: string;\r\n placeholder: string;\r\n type: string;\r\n order: number;\r\n controlType: string;\r\n maxLength: number;\r\n formControl: FormControl;\r\n\r\n constructor(options: Partial<SearchFilterBase<T>> = {}) {\r\n this.value = options.value;\r\n this.key = options.key || '';\r\n this.label = options.label || '';\r\n this.placeholder = options.placeholder || '';\r\n this.order = options.order === undefined ? 1 : options.order;\r\n this.controlType = options.controlType || '';\r\n this.type = options.type || '';\r\n this.maxLength = options.maxLength || 256;\r\n }\r\n\r\n setValue(value: T | undefined) {\r\n this.value = value;\r\n if (this.formControl) {\r\n this.formControl.patchValue(value);\r\n }\r\n }\r\n}\r\n","import { SearchFilterBase } from './search-filter-base';\r\n\r\nexport class SearchFilterInput extends SearchFilterBase<string> {\r\n override controlType = 'textbox';\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.EntrySearchFilterInputComponent"],"mappings":"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"}
1
+ {"version":3,"file":"enigmatry-entry-components-search-filter.mjs","sources":["../../../../projects/entry-components/search-filter/search-filter-config.model.ts","../../../../projects/entry-components/search-filter/search-filter-input.component.ts","../../../../projects/entry-components/search-filter/search-filter-input.component.html","../../../../projects/entry-components/search-filter/entry-search-filter.component.ts","../../../../projects/entry-components/search-filter/entry-search-filter.component.html","../../../../projects/entry-components/search-filter/search-filter-base.ts","../../../../projects/entry-components/search-filter/search-filter-textbox.ts","../../../../projects/entry-components/search-filter/entry-search-filter.module.ts","../../../../projects/entry-components/search-filter/enigmatry-entry-components-search-filter.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\n\n/**\n * Used to provide default configurations on module level.\n */\nexport class EntrySearchFilterConfig {\n /** Apply search filters button label (default 'Apply') */\n applyButtonText: string;\n\n constructor(config: Partial<EntrySearchFilterConfig> = {}) {\n this.applyButtonText = config.applyButtonText ?? 'Apply';\n }\n}\nexport const ENTRY_SEARCH_FILTER_CONFIG = new InjectionToken<EntrySearchFilterConfig>('EntrySearchFilterConfig',\n {\n providedIn: 'root',\n factory: () => new EntrySearchFilterConfig()\n }\n);\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\r\nimport { FormGroup } from '@angular/forms';\r\nimport { SearchFilterBase } from './search-filter-base';\r\n\r\n@Component({\r\n selector: 'entry-search-filter-input',\r\n templateUrl: './search-filter-input.component.html',\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class EntrySearchFilterInputComponent {\r\n /** Configuration of the search filters inputs that will be displayed in the search-filter component. */\r\n @Input() searchFilter!: SearchFilterBase<string>;\r\n /** Form group to which the search-filter input component will be added. */\r\n @Input() form!: FormGroup;\r\n}\r\n","<mat-form-field [formGroup]=\"form\">\r\n <mat-label [attr.for]=\"searchFilter.key\">{{searchFilter.label}}</mat-label>\r\n\r\n <div [ngSwitch]=\"searchFilter.controlType\">\r\n\r\n <input *ngSwitchCase=\"'textbox'\" [formControlName]=\"searchFilter.key\" [id]=\"searchFilter.key\"\r\n [type]=\"searchFilter.type\" matInput [placeholder]=\"searchFilter.placeholder\" [maxlength]=\"searchFilter.maxLength\">\r\n\r\n </div>\r\n</mat-form-field>","import { ChangeDetectionStrategy, Component, EventEmitter, Inject, Input, OnInit, Output } from '@angular/core';\r\nimport { FormControl, FormGroup } from '@angular/forms';\r\nimport { SearchFilterBase } from './search-filter-base';\r\nimport { SearchFilterParams } from './search-filter-params';\r\nimport { ENTRY_SEARCH_FILTER_CONFIG, EntrySearchFilterConfig } from './search-filter-config.model';\r\n\r\n/**\r\n * Entry SearchFilter component.\r\n */\r\n@Component({\r\n selector: 'entry-search-filter',\r\n templateUrl: './entry-search-filter.component.html',\r\n styleUrls: ['./entry-search-filter.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class EntrySearchFilterComponent implements OnInit {\r\n\r\n /** Configuration of the search filters inputs that will be displayed in the search-filter component. */\r\n @Input() searchFilters: SearchFilterBase<string>[] = [];\r\n /**\r\n * Emits the change in SearchFilterParams so the containing component can apply them and retreive the filtered results.\r\n */\r\n @Output() searchFilterChange = new EventEmitter<SearchFilterParams>();\r\n\r\n searchFilterForm!: FormGroup;\r\n\r\n constructor(@Inject(ENTRY_SEARCH_FILTER_CONFIG) public config: EntrySearchFilterConfig) { }\r\n\r\n ngOnInit() {\r\n this.searchFilterForm = this.toFormGroup(this.searchFilters);\r\n }\r\n\r\n onSubmit() {\r\n const formValue = this.searchFilterForm.value;\r\n this.searchFilterChange.emit(formValue);\r\n }\r\n\r\n toFormGroup(searchFilters: SearchFilterBase<string>[]) {\r\n const group: any = {};\r\n\r\n searchFilters.forEach(searchFilter => {\r\n const formControl = new FormControl(searchFilter.value || '');\r\n group[searchFilter.key] = formControl;\r\n searchFilter.formControl = formControl;\r\n });\r\n return new FormGroup(group);\r\n }\r\n}\r\n","<div class=\"search-form-container\">\r\n <form (ngSubmit)=\"onSubmit()\" [formGroup]=\"searchFilterForm\">\r\n <div class=\"search-form-fields\">\r\n <div *ngFor=\"let searchFilter of searchFilters\" class=\"search-form-field\">\r\n <entry-search-filter-input [searchFilter]=\"searchFilter\"\r\n [form]=\"searchFilterForm\"></entry-search-filter-input>\r\n </div>\r\n <div>\r\n <button type=\"button\" class=\"mat-raised-button mat-accent\" type=\"submit\">{{config.applyButtonText}}</button>\r\n </div>\r\n </div>\r\n </form>\r\n</div>","import { FormControl } from '@angular/forms';\r\n\r\n/**\r\n * Base Entry search filter input component.\r\n */\r\nexport class SearchFilterBase<T> {\r\n /** Unique search-filter input key */\r\n key: string;\r\n /** Default value to be displayed/selected in the input control */\r\n value: T | undefined;\r\n /** Default */\r\n label: string;\r\n /** Label text to be displayed for the search-filter input control */\r\n placeholder: string;\r\n /** Type of input control e.g. 'email' */\r\n type: string;\r\n order: number;\r\n /** Control type to be overriden in implementing class, used to render the proper input type e.g. 'textbox' */\r\n controlType: string;\r\n /** Max text length to be enterd in the input component (default is 256) */\r\n maxLength: number;\r\n formControl: FormControl;\r\n\r\n constructor(options: Partial<SearchFilterBase<T>> = {}) {\r\n this.value = options.value;\r\n this.key = options.key || '';\r\n this.label = options.label || '';\r\n this.placeholder = options.placeholder || '';\r\n this.order = options.order === undefined ? 1 : options.order;\r\n this.controlType = options.controlType || '';\r\n this.type = options.type || '';\r\n this.maxLength = options.maxLength || 256;\r\n }\r\n\r\n setValue(value: T | undefined) {\r\n this.value = value;\r\n if (this.formControl) {\r\n this.formControl.patchValue(value);\r\n }\r\n }\r\n}\r\n","import { SearchFilterBase } from './search-filter-base';\r\n\r\nexport class SearchFilterInput extends SearchFilterBase<string> {\r\n override controlType = 'textbox';\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { MatListModule } from '@angular/material/list';\r\n\r\nimport { EntrySearchFilterComponent } from './entry-search-filter.component';\r\nimport { EntrySearchFilterInputComponent } from './search-filter-input.component';\r\n\r\n@NgModule({\r\n declarations: [\r\n EntrySearchFilterComponent,\r\n EntrySearchFilterInputComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n MatInputModule,\r\n MatButtonModule,\r\n MatListModule\r\n ],\r\n exports: [\r\n EntrySearchFilterComponent\r\n ]\r\n})\r\nexport class EntrySearchFilterModule { }\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.EntrySearchFilterInputComponent"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@enigmatry/entry-components",
3
- "version": "1.2.69",
3
+ "version": "1.2.70",
4
4
  "author": "Enigmatry",
5
5
  "description": "Enigmatry entry angular material components",
6
6
  "homepage": "https://github.com/enigmatry/entry-angular-building-blocks/tree/master/projects/entry-components#readme",
@@ -46,14 +46,3 @@ import {
46
46
  })
47
47
  export class AppModule { }
48
48
  ```
49
-
50
- ## Classes and Interfaces
51
-
52
- | `EntrySearchFilterComponent` | |
53
- | - | - |
54
- | @Input() searchFilters: `SearchFilterBase<string>[]` | Accepts the configuration of the search filters inputs that will be displayed in the search-filter component. |
55
- | @Output() searchFilterChange: `EventEmitter<SearchFilterParams>` | Emits the change in SearchFilterParams so the containing component can apply them and retreive the filtered results. SearchFilterParams are the same type as @angular/router type Params for easy integration. |
56
-
57
- | `EntryDialogConfig` | |
58
- | - | - |
59
- | applyButtonText: `string` | Apply filters button text (default: 'Apply') |
@@ -4,9 +4,16 @@ import { SearchFilterBase } from './search-filter-base';
4
4
  import { SearchFilterParams } from './search-filter-params';
5
5
  import { EntrySearchFilterConfig } from './search-filter-config.model';
6
6
  import * as i0 from "@angular/core";
7
+ /**
8
+ * Entry SearchFilter component.
9
+ */
7
10
  export declare class EntrySearchFilterComponent implements OnInit {
8
11
  config: EntrySearchFilterConfig;
12
+ /** Configuration of the search filters inputs that will be displayed in the search-filter component. */
9
13
  searchFilters: SearchFilterBase<string>[];
14
+ /**
15
+ * Emits the change in SearchFilterParams so the containing component can apply them and retreive the filtered results.
16
+ */
10
17
  searchFilterChange: EventEmitter<SearchFilterParams>;
11
18
  searchFilterForm: FormGroup;
12
19
  constructor(config: EntrySearchFilterConfig);
@@ -1,6 +1,6 @@
1
- export * from './entry-search-filter.module';
2
- export * from './entry-search-filter.component';
3
- export * from './search-filter-base';
4
- export * from './search-filter-params';
5
- export * from './search-filter-textbox';
6
- export * from './search-filter-config.model';
1
+ export { EntrySearchFilterComponent } from './entry-search-filter.component';
2
+ export { SearchFilterParams } from './search-filter-params';
3
+ export { SearchFilterBase } from './search-filter-base';
4
+ export { SearchFilterInput } from './search-filter-textbox';
5
+ export { EntrySearchFilterModule } from './entry-search-filter.module';
6
+ export { ENTRY_SEARCH_FILTER_CONFIG, EntrySearchFilterConfig } from './search-filter-config.model';
@@ -1,12 +1,22 @@
1
1
  import { FormControl } from '@angular/forms';
2
+ /**
3
+ * Base Entry search filter input component.
4
+ */
2
5
  export declare class SearchFilterBase<T> {
6
+ /** Unique search-filter input key */
3
7
  key: string;
8
+ /** Default value to be displayed/selected in the input control */
4
9
  value: T | undefined;
10
+ /** Default */
5
11
  label: string;
12
+ /** Label text to be displayed for the search-filter input control */
6
13
  placeholder: string;
14
+ /** Type of input control e.g. 'email' */
7
15
  type: string;
8
16
  order: number;
17
+ /** Control type to be overriden in implementing class, used to render the proper input type e.g. 'textbox' */
9
18
  controlType: string;
19
+ /** Max text length to be enterd in the input component (default is 256) */
10
20
  maxLength: number;
11
21
  formControl: FormControl;
12
22
  constructor(options?: Partial<SearchFilterBase<T>>);
@@ -1,5 +1,9 @@
1
1
  import { InjectionToken } from '@angular/core';
2
+ /**
3
+ * Used to provide default configurations on module level.
4
+ */
2
5
  export declare class EntrySearchFilterConfig {
6
+ /** Apply search filters button label (default 'Apply') */
3
7
  applyButtonText: string;
4
8
  constructor(config?: Partial<EntrySearchFilterConfig>);
5
9
  }
@@ -2,7 +2,9 @@ import { FormGroup } from '@angular/forms';
2
2
  import { SearchFilterBase } from './search-filter-base';
3
3
  import * as i0 from "@angular/core";
4
4
  export declare class EntrySearchFilterInputComponent {
5
+ /** Configuration of the search filters inputs that will be displayed in the search-filter component. */
5
6
  searchFilter: SearchFilterBase<string>;
7
+ /** Form group to which the search-filter input component will be added. */
6
8
  form: FormGroup;
7
9
  static ɵfac: i0.ɵɵFactoryDeclaration<EntrySearchFilterInputComponent, never>;
8
10
  static ɵcmp: i0.ɵɵComponentDeclaration<EntrySearchFilterInputComponent, "entry-search-filter-input", never, { "searchFilter": "searchFilter"; "form": "form"; }, {}, never, never>;
@@ -1,3 +1,7 @@
1
+ /**
2
+ * SearchFilterParams are the same type as @angular/router type Params,
3
+ * containing a collection of query URL parameters for easy integration.
4
+ */
1
5
  export declare type SearchFilterParams = {
2
6
  [key: string]: any;
3
7
  };