@recursyve/nice-data-filter-kit 15.3.4 → 16.0.0

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 (163) hide show
  1. package/{esm2020 → esm2022}/lib/components/base-list/base-list.component.mjs +8 -8
  2. package/{esm2020 → esm2022}/lib/components/base-list/base-list.module.mjs +40 -40
  3. package/{esm2020 → esm2022}/lib/components/base-list/directives/base-list-buttons.directive.mjs +4 -4
  4. package/{esm2020 → esm2022}/lib/components/base-list/directives/base-list-cards.directive.mjs +4 -4
  5. package/{esm2020 → esm2022}/lib/components/base-list/directives/base-list-custom-content.directive.mjs +4 -4
  6. package/{esm2020 → esm2022}/lib/components/base-list/directives/base-list-directives.module.mjs +19 -19
  7. package/{esm2020 → esm2022}/lib/components/base-list/directives/base-list-empty-search-result-state.directive.mjs +4 -4
  8. package/{esm2020 → esm2022}/lib/components/base-list/directives/base-list-empty-state.directive.mjs +4 -4
  9. package/{esm2020 → esm2022}/lib/components/base-list/directives/base-list-filters.directive.mjs +4 -4
  10. package/{esm2020 → esm2022}/lib/components/base-list/directives/base-list-table.directive.mjs +4 -4
  11. package/{esm2020 → esm2022}/lib/components/base-list/directives/base-list-title.directive.mjs +4 -4
  12. package/{esm2020 → esm2022}/lib/components/base-list/providers/base-filter.service.mjs +4 -4
  13. package/{esm2020 → esm2022}/lib/components/base-list/providers/base-list-saved-report.service.mjs +4 -4
  14. package/{esm2020 → esm2022}/lib/components/base-list/store/base-list.query.mjs +4 -4
  15. package/{esm2020 → esm2022}/lib/components/base-list/store/base-list.service.mjs +4 -4
  16. package/{esm2020 → esm2022}/lib/components/base-list/store/base-list.store.mjs +4 -4
  17. package/{esm2020 → esm2022}/lib/components/multi-state-list/multi-state-list.component.mjs +8 -8
  18. package/{esm2020 → esm2022}/lib/components/multi-state-list/multi-state-list.module.mjs +40 -40
  19. package/{esm2020 → esm2022}/lib/components/multi-state-list/store/multi-state-list.query.mjs +4 -4
  20. package/{esm2020 → esm2022}/lib/components/multi-state-list/store/multi-state-list.service.mjs +4 -4
  21. package/{esm2020 → esm2022}/lib/components/multi-state-list/store/multi-state-list.store.mjs +4 -4
  22. package/{esm2020 → esm2022}/lib/components/nice-filter-view/components/advanced-filters/advanced-filters-trigger.directive.mjs +4 -4
  23. package/esm2022/lib/components/nice-filter-view/components/advanced-filters/advanced-filters.component.mjs +119 -0
  24. package/{esm2020 → esm2022}/lib/components/nice-filter-view/components/advanced-filters/advanced-filters.module.mjs +52 -52
  25. package/{esm2020 → esm2022}/lib/components/nice-filter-view/components/advanced-filters/button/advanced-filters-button.component.mjs +4 -4
  26. package/{esm2020 → esm2022}/lib/components/nice-filter-view/components/advanced-filters/filter-selection/filter-selection.component.mjs +4 -4
  27. package/{esm2020 → esm2022}/lib/components/nice-filter-view/components/advanced-filters/providers/async-typeahead.provider.mjs +4 -4
  28. package/esm2022/lib/components/nice-filter-view/components/advanced-filters/rule/components/date/date-filter.component.mjs +40 -0
  29. package/{esm2020 → esm2022}/lib/components/nice-filter-view/components/advanced-filters/rule/components/filter.component.mjs +4 -4
  30. package/esm2022/lib/components/nice-filter-view/components/advanced-filters/rule/components/number/number-filter.component.mjs +28 -0
  31. package/esm2022/lib/components/nice-filter-view/components/advanced-filters/rule/components/radio/radio-filter.component.mjs +30 -0
  32. package/esm2022/lib/components/nice-filter-view/components/advanced-filters/rule/components/select/select-filter.component.mjs +60 -0
  33. package/esm2022/lib/components/nice-filter-view/components/advanced-filters/rule/components/text/text-filter.component.mjs +31 -0
  34. package/{esm2020 → esm2022}/lib/components/nice-filter-view/components/advanced-filters/rule/rule.component.mjs +4 -4
  35. package/esm2022/lib/components/nice-filter-view/components/advanced-filters/utils/advanced-filters.utils.mjs +79 -0
  36. package/{esm2020 → esm2022}/lib/components/nice-filter-view/components/common/data.directive.mjs +4 -4
  37. package/{esm2020 → esm2022}/lib/components/nice-filter-view/components/custom-data-view/custom-data-view.component.mjs +4 -4
  38. package/{esm2020 → esm2022}/lib/components/nice-filter-view/components/export-buttons/export-buttons.component.mjs +4 -4
  39. package/{esm2020 → esm2022}/lib/components/nice-filter-view/components/export-buttons/export.directive.mjs +4 -4
  40. package/{esm2020 → esm2022}/lib/components/nice-filter-view/components/infinite-scroll-data-view/infinite-scroll-data-view.component.mjs +4 -4
  41. package/{esm2020 → esm2022}/lib/components/nice-filter-view/components/search/search.component.mjs +5 -5
  42. package/{esm2020 → esm2022}/lib/components/nice-filter-view/directives/mat-paginator.mjs +4 -4
  43. package/{esm2020 → esm2022}/lib/components/nice-filter-view/directives/mat-sort.mjs +4 -4
  44. package/{esm2020 → esm2022}/lib/components/nice-filter-view/directives/mat-tables.mjs +4 -4
  45. package/{esm2020 → esm2022}/lib/components/nice-filter-view/directives/query-params.directive.mjs +4 -4
  46. package/{esm2020 → esm2022}/lib/components/nice-filter-view/nice-base-filter-view.component.mjs +4 -4
  47. package/{esm2020 → esm2022}/lib/components/nice-filter-view/nice-filter-view.component.mjs +8 -8
  48. package/{esm2020 → esm2022}/lib/components/nice-filter-view/nice-filter-view.module.mjs +40 -40
  49. package/{esm2020 → esm2022}/lib/components/nice-filter-view/nice-nested-filter-view.mjs +4 -4
  50. package/{esm2020 → esm2022}/lib/components/nice-filter-view/pipes/filter-group-icon.pipe.mjs +4 -4
  51. package/{esm2020 → esm2022}/lib/components/nice-filter-view/store/nice-filter-view.query.mjs +4 -4
  52. package/{esm2020 → esm2022}/lib/components/nice-filter-view/store/nice-filter-view.service.mjs +4 -4
  53. package/{esm2020 → esm2022}/lib/components/nice-filter-view/store/nice-filter-view.store.mjs +4 -4
  54. package/{esm2020 → esm2022}/lib/components/query-builder/filter-selection/filter-selection.component.mjs +4 -4
  55. package/{esm2020 → esm2022}/lib/components/query-builder/pipes/filter-group-icon.pipe.mjs +4 -4
  56. package/{esm2020 → esm2022}/lib/components/query-builder/query-builder-trigger.directive.mjs +4 -4
  57. package/esm2022/lib/components/query-builder/query-builder.component.mjs +100 -0
  58. package/{esm2020 → esm2022}/lib/components/query-builder/query-builder.module.mjs +45 -45
  59. package/esm2022/lib/components/query-builder/rule/components/date/date-filter.component.mjs +40 -0
  60. package/{esm2020 → esm2022}/lib/components/query-builder/rule/components/filter.component.mjs +4 -4
  61. package/esm2022/lib/components/query-builder/rule/components/number/number-filter.component.mjs +28 -0
  62. package/esm2022/lib/components/query-builder/rule/components/radio/radio-filter.component.mjs +30 -0
  63. package/esm2022/lib/components/query-builder/rule/components/select/select-filter.component.mjs +87 -0
  64. package/esm2022/lib/components/query-builder/rule/components/text/text-filter.component.mjs +31 -0
  65. package/{esm2020 → esm2022}/lib/components/query-builder/rule/rule.component.mjs +4 -4
  66. package/esm2022/lib/components/query-builder/utils/qb-filter.utils.mjs +89 -0
  67. package/{esm2020 → esm2022}/lib/directive/selectable-list/providers/preload-selected-entities.provider.mjs +4 -4
  68. package/{esm2020 → esm2022}/lib/directive/selectable-list/providers/selectable-list-content.service.mjs +4 -4
  69. package/{esm2020 → esm2022}/lib/directive/selectable-list/selectable-list-checkbox.directive.mjs +4 -4
  70. package/{esm2020 → esm2022}/lib/directive/selectable-list/selectable-list-select-all.directive.mjs +4 -4
  71. package/{esm2020 → esm2022}/lib/directive/selectable-list/selectable-list-state.directive.mjs +4 -4
  72. package/{esm2020 → esm2022}/lib/directive/selectable-list/selectable-list.directive.mjs +4 -4
  73. package/{esm2020 → esm2022}/lib/directive/selectable-list/selectable-list.module.mjs +5 -5
  74. package/{esm2020 → esm2022}/lib/directive/selectable-list/store/selectable-list.service.mjs +4 -4
  75. package/{esm2020 → esm2022}/lib/utils/date.adapter.mjs +4 -4
  76. package/{fesm2020 → fesm2022}/recursyve-nice-data-filter-kit.mjs +572 -572
  77. package/{fesm2020 → fesm2022}/recursyve-nice-data-filter-kit.mjs.map +1 -1
  78. package/lib/components/base-list/base-list.component.d.ts +1 -1
  79. package/lib/components/base-list/directives/base-list-buttons.directive.d.ts +1 -1
  80. package/lib/components/base-list/directives/base-list-table.directive.d.ts +1 -1
  81. package/lib/components/multi-state-list/multi-state-list.component.d.ts +1 -1
  82. package/lib/components/nice-filter-view/components/advanced-filters/advanced-filters-trigger.directive.d.ts +1 -1
  83. package/lib/components/nice-filter-view/components/advanced-filters/rule/components/radio/radio-filter.component.d.ts +1 -1
  84. package/lib/components/nice-filter-view/components/advanced-filters/rule/components/select/select-filter.component.d.ts +1 -1
  85. package/lib/components/nice-filter-view/components/advanced-filters/rule/components/text/text-filter.component.d.ts +1 -1
  86. package/lib/components/nice-filter-view/components/advanced-filters/rule/rule.component.d.ts +1 -1
  87. package/lib/components/nice-filter-view/components/export-buttons/export-buttons.component.d.ts +1 -1
  88. package/lib/components/nice-filter-view/components/export-buttons/export.directive.d.ts +1 -1
  89. package/lib/components/nice-filter-view/components/search/search.component.d.ts +1 -1
  90. package/lib/components/nice-filter-view/nice-filter-view.component.d.ts +1 -1
  91. package/lib/components/query-builder/filter-selection/filter-selection.component.d.ts +1 -1
  92. package/lib/components/query-builder/query-builder-trigger.directive.d.ts +1 -1
  93. package/lib/components/query-builder/query-builder.component.d.ts +1 -1
  94. package/lib/components/query-builder/rule/components/radio/radio-filter.component.d.ts +1 -1
  95. package/lib/components/query-builder/rule/components/select/select-filter.component.d.ts +1 -1
  96. package/lib/components/query-builder/rule/components/text/text-filter.component.d.ts +1 -1
  97. package/lib/components/query-builder/rule/rule.component.d.ts +1 -1
  98. package/lib/directive/selectable-list/selectable-list-checkbox.directive.d.ts +1 -1
  99. package/lib/directive/selectable-list/selectable-list-select-all.directive.d.ts +1 -1
  100. package/lib/directive/selectable-list/selectable-list.directive.d.ts +1 -1
  101. package/package.json +13 -19
  102. package/esm2020/lib/components/nice-filter-view/components/advanced-filters/advanced-filters.component.mjs +0 -119
  103. package/esm2020/lib/components/nice-filter-view/components/advanced-filters/rule/components/date/date-filter.component.mjs +0 -40
  104. package/esm2020/lib/components/nice-filter-view/components/advanced-filters/rule/components/number/number-filter.component.mjs +0 -28
  105. package/esm2020/lib/components/nice-filter-view/components/advanced-filters/rule/components/radio/radio-filter.component.mjs +0 -30
  106. package/esm2020/lib/components/nice-filter-view/components/advanced-filters/rule/components/select/select-filter.component.mjs +0 -60
  107. package/esm2020/lib/components/nice-filter-view/components/advanced-filters/rule/components/text/text-filter.component.mjs +0 -31
  108. package/esm2020/lib/components/nice-filter-view/components/advanced-filters/utils/advanced-filters.utils.mjs +0 -79
  109. package/esm2020/lib/components/query-builder/query-builder.component.mjs +0 -100
  110. package/esm2020/lib/components/query-builder/rule/components/date/date-filter.component.mjs +0 -40
  111. package/esm2020/lib/components/query-builder/rule/components/number/number-filter.component.mjs +0 -28
  112. package/esm2020/lib/components/query-builder/rule/components/radio/radio-filter.component.mjs +0 -30
  113. package/esm2020/lib/components/query-builder/rule/components/select/select-filter.component.mjs +0 -87
  114. package/esm2020/lib/components/query-builder/rule/components/text/text-filter.component.mjs +0 -31
  115. package/esm2020/lib/components/query-builder/utils/qb-filter.utils.mjs +0 -89
  116. package/fesm2015/recursyve-nice-data-filter-kit.mjs +0 -5586
  117. package/fesm2015/recursyve-nice-data-filter-kit.mjs.map +0 -1
  118. /package/{esm2020 → esm2022}/lib/api/dto/saved-reports.dto.mjs +0 -0
  119. /package/{esm2020 → esm2022}/lib/api/filter.api.mjs +0 -0
  120. /package/{esm2020 → esm2022}/lib/api/models/saved-reports.model.mjs +0 -0
  121. /package/{esm2020 → esm2022}/lib/api/public-api.mjs +0 -0
  122. /package/{esm2020 → esm2022}/lib/api/saved-report.api.mjs +0 -0
  123. /package/{esm2020 → esm2022}/lib/components/base-list/base-list.constant.mjs +0 -0
  124. /package/{esm2020 → esm2022}/lib/components/base-list/models/columns.model.mjs +0 -0
  125. /package/{esm2020 → esm2022}/lib/components/base-list/models/export.model.mjs +0 -0
  126. /package/{esm2020 → esm2022}/lib/components/base-list/models/icons.model.mjs +0 -0
  127. /package/{esm2020 → esm2022}/lib/components/base-list/models/layout.model.mjs +0 -0
  128. /package/{esm2020 → esm2022}/lib/components/base-list/public-api.mjs +0 -0
  129. /package/{esm2020 → esm2022}/lib/components/multi-state-list/models/list-states.model.mjs +0 -0
  130. /package/{esm2020 → esm2022}/lib/components/multi-state-list/multi-state-list.constant.mjs +0 -0
  131. /package/{esm2020 → esm2022}/lib/components/multi-state-list/providers/multi-state-filter.service.mjs +0 -0
  132. /package/{esm2020 → esm2022}/lib/components/multi-state-list/public-api.mjs +0 -0
  133. /package/{esm2020 → esm2022}/lib/components/nice-filter-view/components/advanced-filters/advanced-filters.constant.mjs +0 -0
  134. /package/{esm2020 → esm2022}/lib/components/nice-filter-view/components/advanced-filters/advanced-filters.form.mjs +0 -0
  135. /package/{esm2020 → esm2022}/lib/components/nice-filter-view/components/advanced-filters/models/icons.model.mjs +0 -0
  136. /package/{esm2020 → esm2022}/lib/components/nice-filter-view/components/advanced-filters/public-api.mjs +0 -0
  137. /package/{esm2020 → esm2022}/lib/components/nice-filter-view/models/order-options.model.mjs +0 -0
  138. /package/{esm2020 → esm2022}/lib/components/nice-filter-view/nice-filter-view.constant.mjs +0 -0
  139. /package/{esm2020 → esm2022}/lib/components/nice-filter-view/public-api.mjs +0 -0
  140. /package/{esm2020 → esm2022}/lib/components/public-api.mjs +0 -0
  141. /package/{esm2020 → esm2022}/lib/components/query-builder/models/icons.model.mjs +0 -0
  142. /package/{esm2020 → esm2022}/lib/components/query-builder/providers/filter-group.service.mjs +0 -0
  143. /package/{esm2020 → esm2022}/lib/components/query-builder/public-api.mjs +0 -0
  144. /package/{esm2020 → esm2022}/lib/components/query-builder/query-builder.constant.mjs +0 -0
  145. /package/{esm2020 → esm2022}/lib/components/query-builder/query-builder.form.mjs +0 -0
  146. /package/{esm2020 → esm2022}/lib/directive/public-api.mjs +0 -0
  147. /package/{esm2020 → esm2022}/lib/directive/selectable-list/model/load-all-entities-options.model.mjs +0 -0
  148. /package/{esm2020 → esm2022}/lib/directive/selectable-list/model/selectable-list-options.model.mjs +0 -0
  149. /package/{esm2020 → esm2022}/lib/directive/selectable-list/public-api.mjs +0 -0
  150. /package/{esm2020 → esm2022}/lib/directive/selectable-list/selectable-list.constant.mjs +0 -0
  151. /package/{esm2020 → esm2022}/lib/directive/selectable-list/store/selectable-list-state.query.mjs +0 -0
  152. /package/{esm2020 → esm2022}/lib/directive/selectable-list/store/selectable-list-state.service.mjs +0 -0
  153. /package/{esm2020 → esm2022}/lib/directive/selectable-list/store/selectable-list.state.mjs +0 -0
  154. /package/{esm2020 → esm2022}/lib/models/filter.model.mjs +0 -0
  155. /package/{esm2020 → esm2022}/lib/models/public-api.mjs +0 -0
  156. /package/{esm2020 → esm2022}/lib/models/query.model.mjs +0 -0
  157. /package/{esm2020 → esm2022}/lib/utils/filter.utils.mjs +0 -0
  158. /package/{esm2020 → esm2022}/lib/utils/order.utils.mjs +0 -0
  159. /package/{esm2020 → esm2022}/lib/utils/public-api.mjs +0 -0
  160. /package/{esm2020 → esm2022}/lib/utils/query-params.utils.mjs +0 -0
  161. /package/{esm2020 → esm2022}/lib/utils/string.utils.mjs +0 -0
  162. /package/{esm2020 → esm2022}/public-api.mjs +0 -0
  163. /package/{esm2020 → esm2022}/recursyve-nice-data-filter-kit.mjs +0 -0
@@ -1,60 +0,0 @@
1
- import { Component, forwardRef, Input, ViewEncapsulation } from "@angular/core";
2
- import { NG_VALUE_ACCESSOR } from "@angular/forms";
3
- import { FilterComponent } from "../filter.component";
4
- import { NiceFilterViewQuery } from "../../../../../store/nice-filter-view.query";
5
- import * as i0 from "@angular/core";
6
- import * as i1 from "../../../../../store/nice-filter-view.query";
7
- import * as i2 from "@angular/common";
8
- import * as i3 from "@angular/forms";
9
- import * as i4 from "@angular/material/form-field";
10
- import * as i5 from "@recursyve/nice-ui-kit.v2";
11
- export class NiceAdvancedSelectFilterComponent extends FilterComponent {
12
- constructor(filterViewQuery) {
13
- super();
14
- this.filterViewQuery = filterViewQuery;
15
- this.values = [];
16
- this.queryParams$ = this.filterViewQuery.selectQueryParams();
17
- }
18
- async ngOnInit() {
19
- if (!this.filterConfig.lazyLoading) {
20
- this.values = this.filterConfig.values;
21
- }
22
- }
23
- ngOnChanges(changes) {
24
- if ("filterConfig" in changes) {
25
- if (!this.filterConfig.lazyLoading) {
26
- this.values = this.filterConfig.values;
27
- }
28
- else {
29
- this.values = [];
30
- }
31
- }
32
- }
33
- onValueChange(value) {
34
- super.onValueChange(value);
35
- }
36
- writeValue(value) {
37
- super.writeValue(value);
38
- }
39
- }
40
- NiceAdvancedSelectFilterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: NiceAdvancedSelectFilterComponent, deps: [{ token: i1.NiceFilterViewQuery }], target: i0.ɵɵFactoryTarget.Component });
41
- NiceAdvancedSelectFilterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: NiceAdvancedSelectFilterComponent, selector: "nice-advanced-select-filter", inputs: { filterConfig: "filterConfig" }, providers: [
42
- {
43
- provide: NG_VALUE_ACCESSOR,
44
- useExisting: forwardRef(() => NiceAdvancedSelectFilterComponent),
45
- multi: true
46
- }
47
- ], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<mat-form-field appearance=\"outline\" class=\"flex-auto\">\n <nice-typeahead\n *ngIf=\"!filterConfig.lazyLoading\"\n [ngModel]=\"value\"\n (ngModelChange)=\"onValueChange($event)\"\n [items]=\"values\"\n bindValue=\"id\"\n bindLabel=\"name\"\n ></nice-typeahead>\n\n <nice-async-typeahead\n *ngIf=\"filterConfig.lazyLoading\"\n resource=\"advancedFilter\"\n [searchOptions]=\"{ filterConfig, queryParams: queryParams$ | async }\"\n [ngModel]=\"value\"\n (ngModelChange)=\"onValueChange($event)\"\n ></nice-async-typeahead>\n</mat-form-field>\n", dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "component", type: i4.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i5.NiceTypeaheadComponent, selector: "nice-typeahead", inputs: ["items", "labelFormatFn", "required", "disabled", "placeholder", "emptyPlaceholder", "allowNotFoundItems", "panelClass", "bindValue", "bindLabel", "typeahead", "page$", "loading", "loadingPage", "searchFn", "optionTemplate"], outputs: ["change"] }, { kind: "component", type: i5.NiceAsyncTypeaheadComponent, selector: "nice-async-typeahead", inputs: ["resource", "searchOptions", "autoReload", "preloadResource", "allowNotFoundItems", "panelClass", "bindValue", "bindLabel", "placeholder", "emptyPlaceholder", "optionTemplate", "filterFn", "labelFormatFn", "disabled", "value", "required"], outputs: ["entityRemoved", "selected"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }], encapsulation: i0.ViewEncapsulation.None });
48
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: NiceAdvancedSelectFilterComponent, decorators: [{
49
- type: Component,
50
- args: [{ selector: "nice-advanced-select-filter", encapsulation: ViewEncapsulation.None, providers: [
51
- {
52
- provide: NG_VALUE_ACCESSOR,
53
- useExisting: forwardRef(() => NiceAdvancedSelectFilterComponent),
54
- multi: true
55
- }
56
- ], template: "<mat-form-field appearance=\"outline\" class=\"flex-auto\">\n <nice-typeahead\n *ngIf=\"!filterConfig.lazyLoading\"\n [ngModel]=\"value\"\n (ngModelChange)=\"onValueChange($event)\"\n [items]=\"values\"\n bindValue=\"id\"\n bindLabel=\"name\"\n ></nice-typeahead>\n\n <nice-async-typeahead\n *ngIf=\"filterConfig.lazyLoading\"\n resource=\"advancedFilter\"\n [searchOptions]=\"{ filterConfig, queryParams: queryParams$ | async }\"\n [ngModel]=\"value\"\n (ngModelChange)=\"onValueChange($event)\"\n ></nice-async-typeahead>\n</mat-form-field>\n" }]
57
- }], ctorParameters: function () { return [{ type: i1.NiceFilterViewQuery }]; }, propDecorators: { filterConfig: [{
58
- type: Input
59
- }] } });
60
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LWZpbHRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uaWNlLWRhdGEtZmlsdGVyLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvbmljZS1maWx0ZXItdmlldy9jb21wb25lbnRzL2FkdmFuY2VkLWZpbHRlcnMvcnVsZS9jb21wb25lbnRzL3NlbGVjdC9zZWxlY3QtZmlsdGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25pY2UtZGF0YS1maWx0ZXIta2l0L3NyYy9saWIvY29tcG9uZW50cy9uaWNlLWZpbHRlci12aWV3L2NvbXBvbmVudHMvYWR2YW5jZWQtZmlsdGVycy9ydWxlL2NvbXBvbmVudHMvc2VsZWN0L3NlbGVjdC1maWx0ZXIudGVtcGxhdGUuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQW9DLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xILE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRW5ELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQzs7Ozs7OztBQWNsRixNQUFNLE9BQU8saUNBQWtDLFNBQVEsZUFBd0I7SUFRM0UsWUFBb0IsZUFBb0M7UUFDcEQsS0FBSyxFQUFFLENBQUM7UUFEUSxvQkFBZSxHQUFmLGVBQWUsQ0FBcUI7UUFKakQsV0FBTSxHQUF3QixFQUFFLENBQUM7UUFFOUIsaUJBQVksR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLGlCQUFpQixFQUFFLENBQUM7SUFJbEUsQ0FBQztJQUVNLEtBQUssQ0FBQyxRQUFRO1FBQ2pCLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLFdBQVcsRUFBRTtZQUNoQyxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBNkIsQ0FBQztTQUNqRTtJQUNMLENBQUM7SUFFTSxXQUFXLENBQUMsT0FBc0I7UUFDckMsSUFBSSxjQUFjLElBQUksT0FBTyxFQUFFO1lBQzNCLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLFdBQVcsRUFBRTtnQkFDaEMsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQTZCLENBQUM7YUFDakU7aUJBQU07Z0JBQ0gsSUFBSSxDQUFDLE1BQU0sR0FBRyxFQUFFLENBQUM7YUFDcEI7U0FDSjtJQUNMLENBQUM7SUFFTSxhQUFhLENBQUMsS0FBYztRQUMvQixLQUFLLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQy9CLENBQUM7SUFFTSxVQUFVLENBQUMsS0FBYztRQUM1QixLQUFLLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzVCLENBQUM7OzhIQWxDUSxpQ0FBaUM7a0hBQWpDLGlDQUFpQyxnR0FSL0I7UUFDUDtZQUNJLE9BQU8sRUFBRSxpQkFBaUI7WUFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxpQ0FBaUMsQ0FBQztZQUNoRSxLQUFLLEVBQUUsSUFBSTtTQUNkO0tBQ0osc0VDaEJMLDJuQkFrQkE7MkZEQWEsaUNBQWlDO2tCQVo3QyxTQUFTOytCQUNJLDZCQUE2QixpQkFFeEIsaUJBQWlCLENBQUMsSUFBSSxhQUMxQjt3QkFDUDs0QkFDSSxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxrQ0FBa0MsQ0FBQzs0QkFDaEUsS0FBSyxFQUFFLElBQUk7eUJBQ2Q7cUJBQ0o7MEdBSU0sWUFBWTtzQkFEbEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgZm9yd2FyZFJlZiwgSW5wdXQsIE9uQ2hhbmdlcywgT25Jbml0LCBTaW1wbGVDaGFuZ2VzLCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xuaW1wb3J0IHsgRmlsdGVyQ29uZmlndXJhdGlvbk1vZGVsLCBTZWxlY3RGaWx0ZXJWYWx1ZSB9IGZyb20gXCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9tb2RlbHMvZmlsdGVyLm1vZGVsXCI7XG5pbXBvcnQgeyBGaWx0ZXJDb21wb25lbnQgfSBmcm9tIFwiLi4vZmlsdGVyLmNvbXBvbmVudFwiO1xuaW1wb3J0IHsgTmljZUZpbHRlclZpZXdRdWVyeSB9IGZyb20gXCIuLi8uLi8uLi8uLi8uLi9zdG9yZS9uaWNlLWZpbHRlci12aWV3LnF1ZXJ5XCI7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiBcIm5pY2UtYWR2YW5jZWQtc2VsZWN0LWZpbHRlclwiLFxuICAgIHRlbXBsYXRlVXJsOiBcInNlbGVjdC1maWx0ZXIudGVtcGxhdGUuaHRtbFwiLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gTmljZUFkdmFuY2VkU2VsZWN0RmlsdGVyQ29tcG9uZW50KSxcbiAgICAgICAgICAgIG11bHRpOiB0cnVlXG4gICAgICAgIH1cbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIE5pY2VBZHZhbmNlZFNlbGVjdEZpbHRlckNvbXBvbmVudCBleHRlbmRzIEZpbHRlckNvbXBvbmVudDx1bmtub3duPiBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBmaWx0ZXJDb25maWc6IEZpbHRlckNvbmZpZ3VyYXRpb25Nb2RlbDtcblxuICAgIHB1YmxpYyB2YWx1ZXM6IFNlbGVjdEZpbHRlclZhbHVlW10gPSBbXTtcblxuICAgIHByb3RlY3RlZCBxdWVyeVBhcmFtcyQgPSB0aGlzLmZpbHRlclZpZXdRdWVyeS5zZWxlY3RRdWVyeVBhcmFtcygpO1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBmaWx0ZXJWaWV3UXVlcnk6IE5pY2VGaWx0ZXJWaWV3UXVlcnkpIHtcbiAgICAgICAgc3VwZXIoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMgbmdPbkluaXQoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIGlmICghdGhpcy5maWx0ZXJDb25maWcubGF6eUxvYWRpbmcpIHtcbiAgICAgICAgICAgIHRoaXMudmFsdWVzID0gdGhpcy5maWx0ZXJDb25maWcudmFsdWVzIGFzIFNlbGVjdEZpbHRlclZhbHVlW107XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgICAgICBpZiAoXCJmaWx0ZXJDb25maWdcIiBpbiBjaGFuZ2VzKSB7XG4gICAgICAgICAgICBpZiAoIXRoaXMuZmlsdGVyQ29uZmlnLmxhenlMb2FkaW5nKSB7XG4gICAgICAgICAgICAgICAgdGhpcy52YWx1ZXMgPSB0aGlzLmZpbHRlckNvbmZpZy52YWx1ZXMgYXMgU2VsZWN0RmlsdGVyVmFsdWVbXTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhpcy52YWx1ZXMgPSBbXTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBvblZhbHVlQ2hhbmdlKHZhbHVlOiB1bmtub3duKTogdm9pZCB7XG4gICAgICAgIHN1cGVyLm9uVmFsdWVDaGFuZ2UodmFsdWUpO1xuICAgIH1cblxuICAgIHB1YmxpYyB3cml0ZVZhbHVlKHZhbHVlOiB1bmtub3duKTogdm9pZCB7XG4gICAgICAgIHN1cGVyLndyaXRlVmFsdWUodmFsdWUpO1xuICAgIH1cbn1cbiIsIjxtYXQtZm9ybS1maWVsZCBhcHBlYXJhbmNlPVwib3V0bGluZVwiIGNsYXNzPVwiZmxleC1hdXRvXCI+XG4gICAgPG5pY2UtdHlwZWFoZWFkXG4gICAgICAgICpuZ0lmPVwiIWZpbHRlckNvbmZpZy5sYXp5TG9hZGluZ1wiXG4gICAgICAgIFtuZ01vZGVsXT1cInZhbHVlXCJcbiAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwib25WYWx1ZUNoYW5nZSgkZXZlbnQpXCJcbiAgICAgICAgW2l0ZW1zXT1cInZhbHVlc1wiXG4gICAgICAgIGJpbmRWYWx1ZT1cImlkXCJcbiAgICAgICAgYmluZExhYmVsPVwibmFtZVwiXG4gICAgPjwvbmljZS10eXBlYWhlYWQ+XG5cbiAgICA8bmljZS1hc3luYy10eXBlYWhlYWRcbiAgICAgICAgKm5nSWY9XCJmaWx0ZXJDb25maWcubGF6eUxvYWRpbmdcIlxuICAgICAgICByZXNvdXJjZT1cImFkdmFuY2VkRmlsdGVyXCJcbiAgICAgICAgW3NlYXJjaE9wdGlvbnNdPVwieyBmaWx0ZXJDb25maWcsIHF1ZXJ5UGFyYW1zOiBxdWVyeVBhcmFtcyQgfCBhc3luYyB9XCJcbiAgICAgICAgW25nTW9kZWxdPVwidmFsdWVcIlxuICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJvblZhbHVlQ2hhbmdlKCRldmVudClcIlxuICAgID48L25pY2UtYXN5bmMtdHlwZWFoZWFkPlxuPC9tYXQtZm9ybS1maWVsZD5cbiJdfQ==
@@ -1,31 +0,0 @@
1
- import { Component, forwardRef, Input, ViewEncapsulation } from "@angular/core";
2
- import { NG_VALUE_ACCESSOR } from "@angular/forms";
3
- import { FilterComponent } from "../filter.component";
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "@angular/forms";
6
- import * as i2 from "@angular/material/form-field";
7
- import * as i3 from "@angular/material/input";
8
- import * as i4 from "ngx-mask";
9
- export class NiceAdvancedTextFilterComponent extends FilterComponent {
10
- }
11
- NiceAdvancedTextFilterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: NiceAdvancedTextFilterComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
12
- NiceAdvancedTextFilterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: NiceAdvancedTextFilterComponent, selector: "nice-advanced-text-filter", inputs: { filterConfig: "filterConfig" }, providers: [
13
- {
14
- provide: NG_VALUE_ACCESSOR,
15
- useExisting: forwardRef(() => NiceAdvancedTextFilterComponent),
16
- multi: true
17
- }
18
- ], usesInheritance: true, ngImport: i0, template: "<mat-form-field appearance=\"outline\" class=\"flex-auto\">\n <input matInput [ngModel]=\"value\" (ngModelChange)=\"onValueChange($event)\" [mask]=\"(filterConfig?.mask) || ''\" [validation]=\"false\" type=\"text\" />\n</mat-form-field>\n", 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: "component", type: i2.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { 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: "directive", type: i4.NgxMaskDirective, selector: "input[mask], textarea[mask]", inputs: ["mask", "specialCharacters", "patterns", "prefix", "suffix", "thousandSeparator", "decimalMarker", "dropSpecialCharacters", "hiddenInput", "showMaskTyped", "placeHolderCharacter", "shownMaskExpression", "showTemplate", "clearIfNotMatch", "validation", "separatorLimit", "allowNegativeNumbers", "leadZeroDateTime", "triggerOnMaskChange"], outputs: ["maskFilled"], exportAs: ["mask", "ngxMask"] }], encapsulation: i0.ViewEncapsulation.None });
19
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: NiceAdvancedTextFilterComponent, decorators: [{
20
- type: Component,
21
- args: [{ selector: "nice-advanced-text-filter", encapsulation: ViewEncapsulation.None, providers: [
22
- {
23
- provide: NG_VALUE_ACCESSOR,
24
- useExisting: forwardRef(() => NiceAdvancedTextFilterComponent),
25
- multi: true
26
- }
27
- ], template: "<mat-form-field appearance=\"outline\" class=\"flex-auto\">\n <input matInput [ngModel]=\"value\" (ngModelChange)=\"onValueChange($event)\" [mask]=\"(filterConfig?.mask) || ''\" [validation]=\"false\" type=\"text\" />\n</mat-form-field>\n" }]
28
- }], propDecorators: { filterConfig: [{
29
- type: Input
30
- }] } });
31
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC1maWx0ZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmljZS1kYXRhLWZpbHRlci1raXQvc3JjL2xpYi9jb21wb25lbnRzL25pY2UtZmlsdGVyLXZpZXcvY29tcG9uZW50cy9hZHZhbmNlZC1maWx0ZXJzL3J1bGUvY29tcG9uZW50cy90ZXh0L3RleHQtZmlsdGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25pY2UtZGF0YS1maWx0ZXIta2l0L3NyYy9saWIvY29tcG9uZW50cy9uaWNlLWZpbHRlci12aWV3L2NvbXBvbmVudHMvYWR2YW5jZWQtZmlsdGVycy9ydWxlL2NvbXBvbmVudHMvdGV4dC90ZXh0LWZpbHRlci50ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNoRixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVuRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7Ozs7OztBQWN0RCxNQUFNLE9BQU8sK0JBQWdDLFNBQVEsZUFBdUI7OzRIQUEvRCwrQkFBK0I7Z0hBQS9CLCtCQUErQiw4RkFSN0I7UUFDUDtZQUNJLE9BQU8sRUFBRSxpQkFBaUI7WUFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQywrQkFBK0IsQ0FBQztZQUM5RCxLQUFLLEVBQUUsSUFBSTtTQUNkO0tBQ0osaURDZkwsbVBBR0E7MkZEY2EsK0JBQStCO2tCQVozQyxTQUFTOytCQUNJLDJCQUEyQixpQkFFdEIsaUJBQWlCLENBQUMsSUFBSSxhQUMxQjt3QkFDUDs0QkFDSSxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxnQ0FBZ0MsQ0FBQzs0QkFDOUQsS0FBSyxFQUFFLElBQUk7eUJBQ2Q7cUJBQ0o7OEJBSU0sWUFBWTtzQkFEbEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgZm9yd2FyZFJlZiwgSW5wdXQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XG5pbXBvcnQgeyBGaWx0ZXJDb25maWd1cmF0aW9uTW9kZWwgfSBmcm9tIFwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbW9kZWxzL2ZpbHRlci5tb2RlbFwiO1xuaW1wb3J0IHsgRmlsdGVyQ29tcG9uZW50IH0gZnJvbSBcIi4uL2ZpbHRlci5jb21wb25lbnRcIjtcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6IFwibmljZS1hZHZhbmNlZC10ZXh0LWZpbHRlclwiLFxuICAgIHRlbXBsYXRlVXJsOiBcInRleHQtZmlsdGVyLnRlbXBsYXRlLmh0bWxcIixcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IE5pY2VBZHZhbmNlZFRleHRGaWx0ZXJDb21wb25lbnQpLFxuICAgICAgICAgICAgbXVsdGk6IHRydWVcbiAgICAgICAgfVxuICAgIF1cbn0pXG5leHBvcnQgY2xhc3MgTmljZUFkdmFuY2VkVGV4dEZpbHRlckNvbXBvbmVudCBleHRlbmRzIEZpbHRlckNvbXBvbmVudDxzdHJpbmc+IHtcbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBmaWx0ZXJDb25maWc6IEZpbHRlckNvbmZpZ3VyYXRpb25Nb2RlbDtcbn1cbiIsIjxtYXQtZm9ybS1maWVsZCBhcHBlYXJhbmNlPVwib3V0bGluZVwiIGNsYXNzPVwiZmxleC1hdXRvXCI+XG4gICAgPGlucHV0IG1hdElucHV0IFtuZ01vZGVsXT1cInZhbHVlXCIgKG5nTW9kZWxDaGFuZ2UpPVwib25WYWx1ZUNoYW5nZSgkZXZlbnQpXCIgW21hc2tdPVwiKGZpbHRlckNvbmZpZz8ubWFzaykgfHwgJydcIiBbdmFsaWRhdGlvbl09XCJmYWxzZVwiIHR5cGU9XCJ0ZXh0XCIgLz5cbjwvbWF0LWZvcm0tZmllbGQ+XG4iXX0=
@@ -1,79 +0,0 @@
1
- import { FilterType } from "../../../../../models/filter.model";
2
- import { FilterOperatorTypes } from "../../../../../models/query.model";
3
- export class AdvancedFiltersUtils {
4
- static isSingleInput(filterOperator) {
5
- if (!filterOperator) {
6
- return false;
7
- }
8
- return AdvancedFiltersUtils.singleInputOperators.includes(filterOperator);
9
- }
10
- static isDoubleInput(filterOperator) {
11
- if (!filterOperator) {
12
- return false;
13
- }
14
- return AdvancedFiltersUtils.doubleInputOperators.includes(filterOperator);
15
- }
16
- static isNoInput(filterOperator) {
17
- if (!filterOperator) {
18
- return false;
19
- }
20
- return AdvancedFiltersUtils.noInputOperators.includes(filterOperator);
21
- }
22
- static createRule(config, operator) {
23
- const base = {
24
- id: config.id,
25
- operation: operator || config.operators[0].id
26
- };
27
- switch (config.type) {
28
- case FilterType.Text:
29
- return {
30
- ...base,
31
- value: AdvancedFiltersUtils.isDoubleInput(operator) ? ["", ""] : ""
32
- };
33
- case FilterType.Number:
34
- case FilterType.Select:
35
- return {
36
- ...base,
37
- value: AdvancedFiltersUtils.isDoubleInput(operator) ? [null, null] : null
38
- };
39
- case FilterType.Date:
40
- return {
41
- ...base,
42
- value: AdvancedFiltersUtils.isDoubleInput(operator) ? [new Date(), new Date()] : new Date()
43
- };
44
- case FilterType.Radio:
45
- return {
46
- ...base,
47
- value: AdvancedFiltersUtils.isDoubleInput(operator)
48
- ? [config.options?.[0].key, config.options?.[0].key]
49
- : config.options?.[0].key
50
- };
51
- }
52
- }
53
- }
54
- AdvancedFiltersUtils.noInputOperators = [
55
- FilterOperatorTypes.IsEmpty,
56
- FilterOperatorTypes.IsNotEmpty,
57
- FilterOperatorTypes.IsNull,
58
- FilterOperatorTypes.IsNotNull,
59
- FilterOperatorTypes.None
60
- ];
61
- AdvancedFiltersUtils.singleInputOperators = [
62
- FilterOperatorTypes.Equal,
63
- FilterOperatorTypes.NotEqual,
64
- FilterOperatorTypes.Less,
65
- FilterOperatorTypes.LessOrEqual,
66
- FilterOperatorTypes.Greater,
67
- FilterOperatorTypes.GreaterOrEqual,
68
- FilterOperatorTypes.BeginsWith,
69
- FilterOperatorTypes.NotBeginsWith,
70
- FilterOperatorTypes.EndsWith,
71
- FilterOperatorTypes.NotEndsWith,
72
- FilterOperatorTypes.Contains,
73
- FilterOperatorTypes.NotContains
74
- ];
75
- AdvancedFiltersUtils.doubleInputOperators = [
76
- FilterOperatorTypes.Between,
77
- FilterOperatorTypes.NotBetween
78
- ];
79
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWR2YW5jZWQtZmlsdGVycy51dGlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25pY2UtZGF0YS1maWx0ZXIta2l0L3NyYy9saWIvY29tcG9uZW50cy9uaWNlLWZpbHRlci12aWV3L2NvbXBvbmVudHMvYWR2YW5jZWQtZmlsdGVycy91dGlscy9hZHZhbmNlZC1maWx0ZXJzLnV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBNEIsVUFBVSxFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDMUYsT0FBTyxFQUFtQixtQkFBbUIsRUFBa0IsTUFBTSxtQ0FBbUMsQ0FBQztBQUV6RyxNQUFNLE9BQU8sb0JBQW9CO0lBNkJ0QixNQUFNLENBQUMsYUFBYSxDQUFDLGNBQWdDO1FBQ3hELElBQUksQ0FBQyxjQUFjLEVBQUU7WUFDakIsT0FBTyxLQUFLLENBQUM7U0FDaEI7UUFDRCxPQUFPLG9CQUFvQixDQUFDLG9CQUFvQixDQUFDLFFBQVEsQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUM5RSxDQUFDO0lBRU0sTUFBTSxDQUFDLGFBQWEsQ0FBQyxjQUFnQztRQUN4RCxJQUFJLENBQUMsY0FBYyxFQUFFO1lBQ2pCLE9BQU8sS0FBSyxDQUFDO1NBQ2hCO1FBQ0QsT0FBTyxvQkFBb0IsQ0FBQyxvQkFBb0IsQ0FBQyxRQUFRLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDOUUsQ0FBQztJQUVNLE1BQU0sQ0FBQyxTQUFTLENBQUMsY0FBZ0M7UUFDcEQsSUFBSSxDQUFDLGNBQWMsRUFBRTtZQUNqQixPQUFPLEtBQUssQ0FBQztTQUNoQjtRQUNELE9BQU8sb0JBQW9CLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQzFFLENBQUM7SUFFTSxNQUFNLENBQUMsVUFBVSxDQUFDLE1BQWdDLEVBQUUsUUFBMEI7UUFDakYsTUFBTSxJQUFJLEdBQUc7WUFDVCxFQUFFLEVBQUUsTUFBTSxDQUFDLEVBQUU7WUFDYixTQUFTLEVBQUUsUUFBUSxJQUFLLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBc0I7U0FDckUsQ0FBQztRQUNGLFFBQVEsTUFBTSxDQUFDLElBQUksRUFBRTtZQUNqQixLQUFLLFVBQVUsQ0FBQyxJQUFJO2dCQUNoQixPQUFPO29CQUNILEdBQUcsSUFBSTtvQkFDUCxLQUFLLEVBQUUsb0JBQW9CLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRTtpQkFDdEUsQ0FBQztZQUNOLEtBQUssVUFBVSxDQUFDLE1BQU0sQ0FBQztZQUN2QixLQUFLLFVBQVUsQ0FBQyxNQUFNO2dCQUNsQixPQUFPO29CQUNILEdBQUcsSUFBSTtvQkFDUCxLQUFLLEVBQUUsb0JBQW9CLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSTtpQkFDNUUsQ0FBQztZQUNOLEtBQUssVUFBVSxDQUFDLElBQUk7Z0JBQ2hCLE9BQU87b0JBQ0gsR0FBRyxJQUFJO29CQUNQLEtBQUssRUFBRSxvQkFBb0IsQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxJQUFJLEVBQUUsRUFBRSxJQUFJLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksSUFBSSxFQUFFO2lCQUM5RixDQUFDO1lBQ04sS0FBSyxVQUFVLENBQUMsS0FBSztnQkFDakIsT0FBTztvQkFDSCxHQUFHLElBQUk7b0JBQ1AsS0FBSyxFQUFFLG9CQUFvQixDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUM7d0JBQy9DLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLEVBQUUsTUFBTSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQzt3QkFDcEQsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHO2lCQUNoQyxDQUFDO1NBQ1Q7SUFDTCxDQUFDOztBQS9FYSxxQ0FBZ0IsR0FBc0I7SUFDaEQsbUJBQW1CLENBQUMsT0FBTztJQUMzQixtQkFBbUIsQ0FBQyxVQUFVO0lBQzlCLG1CQUFtQixDQUFDLE1BQU07SUFDMUIsbUJBQW1CLENBQUMsU0FBUztJQUM3QixtQkFBbUIsQ0FBQyxJQUFJO0NBQzNCLENBQUM7QUFFWSx5Q0FBb0IsR0FBc0I7SUFDcEQsbUJBQW1CLENBQUMsS0FBSztJQUN6QixtQkFBbUIsQ0FBQyxRQUFRO0lBQzVCLG1CQUFtQixDQUFDLElBQUk7SUFDeEIsbUJBQW1CLENBQUMsV0FBVztJQUMvQixtQkFBbUIsQ0FBQyxPQUFPO0lBQzNCLG1CQUFtQixDQUFDLGNBQWM7SUFDbEMsbUJBQW1CLENBQUMsVUFBVTtJQUM5QixtQkFBbUIsQ0FBQyxhQUFhO0lBQ2pDLG1CQUFtQixDQUFDLFFBQVE7SUFDNUIsbUJBQW1CLENBQUMsV0FBVztJQUMvQixtQkFBbUIsQ0FBQyxRQUFRO0lBQzVCLG1CQUFtQixDQUFDLFdBQVc7Q0FDbEMsQ0FBQztBQUVZLHlDQUFvQixHQUFzQjtJQUNwRCxtQkFBbUIsQ0FBQyxPQUFPO0lBQzNCLG1CQUFtQixDQUFDLFVBQVU7Q0FDakMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZpbHRlckNvbmZpZ3VyYXRpb25Nb2RlbCwgRmlsdGVyVHlwZSB9IGZyb20gXCIuLi8uLi8uLi8uLi8uLi9tb2RlbHMvZmlsdGVyLm1vZGVsXCI7XG5pbXBvcnQgeyBGaWx0ZXJPcGVyYXRvcnMsIEZpbHRlck9wZXJhdG9yVHlwZXMsIFF1ZXJ5UnVsZU1vZGVsIH0gZnJvbSBcIi4uLy4uLy4uLy4uLy4uL21vZGVscy9xdWVyeS5tb2RlbFwiO1xuXG5leHBvcnQgY2xhc3MgQWR2YW5jZWRGaWx0ZXJzVXRpbHMge1xuICAgIHB1YmxpYyBzdGF0aWMgbm9JbnB1dE9wZXJhdG9yczogRmlsdGVyT3BlcmF0b3JzW10gPSBbXG4gICAgICAgIEZpbHRlck9wZXJhdG9yVHlwZXMuSXNFbXB0eSxcbiAgICAgICAgRmlsdGVyT3BlcmF0b3JUeXBlcy5Jc05vdEVtcHR5LFxuICAgICAgICBGaWx0ZXJPcGVyYXRvclR5cGVzLklzTnVsbCxcbiAgICAgICAgRmlsdGVyT3BlcmF0b3JUeXBlcy5Jc05vdE51bGwsXG4gICAgICAgIEZpbHRlck9wZXJhdG9yVHlwZXMuTm9uZVxuICAgIF07XG5cbiAgICBwdWJsaWMgc3RhdGljIHNpbmdsZUlucHV0T3BlcmF0b3JzOiBGaWx0ZXJPcGVyYXRvcnNbXSA9IFtcbiAgICAgICAgRmlsdGVyT3BlcmF0b3JUeXBlcy5FcXVhbCxcbiAgICAgICAgRmlsdGVyT3BlcmF0b3JUeXBlcy5Ob3RFcXVhbCxcbiAgICAgICAgRmlsdGVyT3BlcmF0b3JUeXBlcy5MZXNzLFxuICAgICAgICBGaWx0ZXJPcGVyYXRvclR5cGVzLkxlc3NPckVxdWFsLFxuICAgICAgICBGaWx0ZXJPcGVyYXRvclR5cGVzLkdyZWF0ZXIsXG4gICAgICAgIEZpbHRlck9wZXJhdG9yVHlwZXMuR3JlYXRlck9yRXF1YWwsXG4gICAgICAgIEZpbHRlck9wZXJhdG9yVHlwZXMuQmVnaW5zV2l0aCxcbiAgICAgICAgRmlsdGVyT3BlcmF0b3JUeXBlcy5Ob3RCZWdpbnNXaXRoLFxuICAgICAgICBGaWx0ZXJPcGVyYXRvclR5cGVzLkVuZHNXaXRoLFxuICAgICAgICBGaWx0ZXJPcGVyYXRvclR5cGVzLk5vdEVuZHNXaXRoLFxuICAgICAgICBGaWx0ZXJPcGVyYXRvclR5cGVzLkNvbnRhaW5zLFxuICAgICAgICBGaWx0ZXJPcGVyYXRvclR5cGVzLk5vdENvbnRhaW5zXG4gICAgXTtcblxuICAgIHB1YmxpYyBzdGF0aWMgZG91YmxlSW5wdXRPcGVyYXRvcnM6IEZpbHRlck9wZXJhdG9yc1tdID0gW1xuICAgICAgICBGaWx0ZXJPcGVyYXRvclR5cGVzLkJldHdlZW4sXG4gICAgICAgIEZpbHRlck9wZXJhdG9yVHlwZXMuTm90QmV0d2VlblxuICAgIF07XG5cbiAgICBwdWJsaWMgc3RhdGljIGlzU2luZ2xlSW5wdXQoZmlsdGVyT3BlcmF0b3I/OiBGaWx0ZXJPcGVyYXRvcnMpOiBib29sZWFuIHtcbiAgICAgICAgaWYgKCFmaWx0ZXJPcGVyYXRvcikge1xuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBBZHZhbmNlZEZpbHRlcnNVdGlscy5zaW5nbGVJbnB1dE9wZXJhdG9ycy5pbmNsdWRlcyhmaWx0ZXJPcGVyYXRvcik7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBpc0RvdWJsZUlucHV0KGZpbHRlck9wZXJhdG9yPzogRmlsdGVyT3BlcmF0b3JzKTogYm9vbGVhbiB7XG4gICAgICAgIGlmICghZmlsdGVyT3BlcmF0b3IpIHtcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gQWR2YW5jZWRGaWx0ZXJzVXRpbHMuZG91YmxlSW5wdXRPcGVyYXRvcnMuaW5jbHVkZXMoZmlsdGVyT3BlcmF0b3IpO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgaXNOb0lucHV0KGZpbHRlck9wZXJhdG9yPzogRmlsdGVyT3BlcmF0b3JzKTogYm9vbGVhbiB7XG4gICAgICAgIGlmICghZmlsdGVyT3BlcmF0b3IpIHtcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gQWR2YW5jZWRGaWx0ZXJzVXRpbHMubm9JbnB1dE9wZXJhdG9ycy5pbmNsdWRlcyhmaWx0ZXJPcGVyYXRvcik7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBjcmVhdGVSdWxlKGNvbmZpZzogRmlsdGVyQ29uZmlndXJhdGlvbk1vZGVsLCBvcGVyYXRvcj86IEZpbHRlck9wZXJhdG9ycyk6IFF1ZXJ5UnVsZU1vZGVsIHtcbiAgICAgICAgY29uc3QgYmFzZSA9IHtcbiAgICAgICAgICAgIGlkOiBjb25maWcuaWQsXG4gICAgICAgICAgICBvcGVyYXRpb246IG9wZXJhdG9yIHx8IChjb25maWcub3BlcmF0b3JzWzBdLmlkIGFzIEZpbHRlck9wZXJhdG9ycylcbiAgICAgICAgfTtcbiAgICAgICAgc3dpdGNoIChjb25maWcudHlwZSkge1xuICAgICAgICAgICAgY2FzZSBGaWx0ZXJUeXBlLlRleHQ6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAgICAgLi4uYmFzZSxcbiAgICAgICAgICAgICAgICAgICAgdmFsdWU6IEFkdmFuY2VkRmlsdGVyc1V0aWxzLmlzRG91YmxlSW5wdXQob3BlcmF0b3IpID8gW1wiXCIsIFwiXCJdIDogXCJcIlxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICBjYXNlIEZpbHRlclR5cGUuTnVtYmVyOlxuICAgICAgICAgICAgY2FzZSBGaWx0ZXJUeXBlLlNlbGVjdDpcbiAgICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgICAgICAuLi5iYXNlLFxuICAgICAgICAgICAgICAgICAgICB2YWx1ZTogQWR2YW5jZWRGaWx0ZXJzVXRpbHMuaXNEb3VibGVJbnB1dChvcGVyYXRvcikgPyBbbnVsbCwgbnVsbF0gOiBudWxsXG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIGNhc2UgRmlsdGVyVHlwZS5EYXRlOlxuICAgICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgICAgIC4uLmJhc2UsXG4gICAgICAgICAgICAgICAgICAgIHZhbHVlOiBBZHZhbmNlZEZpbHRlcnNVdGlscy5pc0RvdWJsZUlucHV0KG9wZXJhdG9yKSA/IFtuZXcgRGF0ZSgpLCBuZXcgRGF0ZSgpXSA6IG5ldyBEYXRlKClcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgY2FzZSBGaWx0ZXJUeXBlLlJhZGlvOlxuICAgICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgICAgIC4uLmJhc2UsXG4gICAgICAgICAgICAgICAgICAgIHZhbHVlOiBBZHZhbmNlZEZpbHRlcnNVdGlscy5pc0RvdWJsZUlucHV0KG9wZXJhdG9yKVxuICAgICAgICAgICAgICAgICAgICAgICAgPyBbY29uZmlnLm9wdGlvbnM/LlswXS5rZXksIGNvbmZpZy5vcHRpb25zPy5bMF0ua2V5XVxuICAgICAgICAgICAgICAgICAgICAgICAgOiBjb25maWcub3B0aW9ucz8uWzBdLmtleVxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgIH1cbiAgICB9XG59XG4iXX0=
@@ -1,100 +0,0 @@
1
- import { Component, EventEmitter, forwardRef, Inject, Input, Optional, Output, ViewEncapsulation } from "@angular/core";
2
- import { NG_VALUE_ACCESSOR } from "@angular/forms";
3
- import { GeneratedFormGroup, ngxFormGeneratorFactory } from "@recursyve/ngx-form-generator";
4
- import { QUERY_BUILDER_ICONS } from "./query-builder.constant";
5
- import { QueryBuilderForm } from "./query-builder.form";
6
- import { QBFilterUtils } from "./utils/qb-filter.utils";
7
- import * as i0 from "@angular/core";
8
- import * as i1 from "@recursyve/ngx-form-generator";
9
- import * as i2 from "@angular/common";
10
- import * as i3 from "@angular/forms";
11
- import * as i4 from "@angular/material/button";
12
- import * as i5 from "@angular/material/icon";
13
- import * as i6 from "./query-builder-trigger.directive";
14
- import * as i7 from "./rule/rule.component";
15
- import * as i8 from "@ngx-translate/core";
16
- export class NiceQueryBuilderComponent {
17
- get canSave() {
18
- return !this.currentSavedReport;
19
- }
20
- constructor(icons, formGroup) {
21
- this.icons = icons;
22
- this.formGroup = formGroup;
23
- this.close = new EventEmitter();
24
- this.createReport = new EventEmitter();
25
- this.updateReport = new EventEmitter();
26
- this.propagateChanges = (_) => { };
27
- this.rules = this.formGroup.get("rules");
28
- }
29
- registerOnChange(fn) {
30
- this.propagateChanges = fn;
31
- }
32
- registerOnTouched(fn) { }
33
- writeValue(rules) {
34
- this.rules.clear();
35
- this.formGroup.patchValue(new QueryBuilderForm(rules));
36
- }
37
- onClickAddRule(filterConfigurationModel) {
38
- this.rules.push(QBFilterUtils.createQueryModel(filterConfigurationModel));
39
- }
40
- onClickDeleteRule(id) {
41
- this.rules.removeAt(id);
42
- if (this.rules.length === 0) {
43
- this.close.emit();
44
- this.onClickApply();
45
- }
46
- }
47
- onClickApply() {
48
- this.propagateChanges(this.formGroup.getRawValue().transform());
49
- }
50
- onClickSaveReport() {
51
- this.createReport.emit();
52
- }
53
- onClickUpdateReport() {
54
- this.updateReport.emit();
55
- }
56
- }
57
- NiceQueryBuilderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: NiceQueryBuilderComponent, deps: [{ token: QUERY_BUILDER_ICONS, optional: true }, { token: i1.GeneratedFormGroup }], target: i0.ɵɵFactoryTarget.Component });
58
- NiceQueryBuilderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: NiceQueryBuilderComponent, selector: "nice-query-builder", inputs: { filterConfigs: "filterConfigs", currentSavedReport: "currentSavedReport", loading: "loading" }, outputs: { close: "close", createReport: "createReport", updateReport: "updateReport" }, providers: [
59
- {
60
- provide: NG_VALUE_ACCESSOR,
61
- useExisting: forwardRef(() => NiceQueryBuilderComponent),
62
- multi: true
63
- },
64
- {
65
- provide: GeneratedFormGroup,
66
- useFactory: ngxFormGeneratorFactory(QueryBuilderForm)
67
- }
68
- ], ngImport: i0, template: "<div class=\"rules-container flex flex-col\" *ngIf=\"!loading\" [formGroup]=\"formGroup\">\n <ng-container formArrayName=\"rules\">\n <nice-rule\n *ngFor=\"let rule of rules.controls; let i = index\"\n (remove)=\"onClickDeleteRule(i)\"\n [filterConfigs]=\"filterConfigs\"\n [formGroupName]=\"i\"\n ></nice-rule>\n </ng-container>\n <div class=\"flex justify-between\">\n <button\n class=\"add-button add-rule-button\"\n mat-mini-fab\n niceQueryBuilderTrigger\n [queryBuilderFilters]=\"filterConfigs\"\n (queryBuilderFilterSelected)=\"onClickAddRule($event)\"\n >\n <mat-icon [svgIcon]=\"icons.add.svgIcon\">{{ icons.add.matIcon }}</mat-icon>\n </button>\n <div class=\"flex flex-col md:flex-row gap-4\">\n <!-- TODO: Support saved reports -->\n <!--<button mat-button color=\"primary\" (click)=\"onClickSaveReport()\" *ngIf=\"canSave\">\n <mat-icon class=\"mr-8\" fxHide.lt-md>save</mat-icon>\n {{ \"components.query_builder.save_report\" | translate }}\n </button>\n <button mat-button color=\"primary\" (click)=\"onClickUpdateReport()\" *ngIf=\"!canSave\">\n <mat-icon class=\"mr-8\" fxHide.lt-md>save</mat-icon>\n {{ \"components.query_builder.update_report\" | translate }}\n </button>-->\n <button mat-stroked-button color=\"accent\" (click)=\"onClickApply()\">\n {{ \"components.query_builder.update\" | translate }}\n <mat-icon [svgIcon]=\"icons.refresh.svgIcon\">{{ icons.refresh.matIcon }}</mat-icon>\n </button>\n </div>\n </div>\n</div>\n", styles: ["nice-query-builder .rules-container{position:relative}nice-query-builder .rules-container:before{content:\"\";position:absolute;top:32px;bottom:32px;left:46px;width:4px;background:rgba(0,0,0,.12)}nice-query-builder .save-report-button{height:36px}nice-query-builder .add-rule-button{margin-left:28px;margin-right:28px}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "component", type: i4.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i4.MatMiniFabButton, selector: "button[mat-mini-fab]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.FormGroupName, selector: "[formGroupName]", inputs: ["formGroupName"] }, { kind: "directive", type: i3.FormArrayName, selector: "[formArrayName]", inputs: ["formArrayName"] }, { kind: "directive", type: i6.QueryBuilderTriggerDirective, selector: "[niceQueryBuilderTrigger]", inputs: ["queryBuilderFilters", "queryBuilderFiltersLoading"], outputs: ["queryBuilderFilterSelected"] }, { kind: "component", type: i7.RuleComponent, selector: "nice-rule", inputs: ["filterConfigs"], outputs: ["remove"] }, { kind: "pipe", type: i8.TranslatePipe, name: "translate" }], encapsulation: i0.ViewEncapsulation.None });
69
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: NiceQueryBuilderComponent, decorators: [{
70
- type: Component,
71
- args: [{ selector: "nice-query-builder", encapsulation: ViewEncapsulation.None, providers: [
72
- {
73
- provide: NG_VALUE_ACCESSOR,
74
- useExisting: forwardRef(() => NiceQueryBuilderComponent),
75
- multi: true
76
- },
77
- {
78
- provide: GeneratedFormGroup,
79
- useFactory: ngxFormGeneratorFactory(QueryBuilderForm)
80
- }
81
- ], template: "<div class=\"rules-container flex flex-col\" *ngIf=\"!loading\" [formGroup]=\"formGroup\">\n <ng-container formArrayName=\"rules\">\n <nice-rule\n *ngFor=\"let rule of rules.controls; let i = index\"\n (remove)=\"onClickDeleteRule(i)\"\n [filterConfigs]=\"filterConfigs\"\n [formGroupName]=\"i\"\n ></nice-rule>\n </ng-container>\n <div class=\"flex justify-between\">\n <button\n class=\"add-button add-rule-button\"\n mat-mini-fab\n niceQueryBuilderTrigger\n [queryBuilderFilters]=\"filterConfigs\"\n (queryBuilderFilterSelected)=\"onClickAddRule($event)\"\n >\n <mat-icon [svgIcon]=\"icons.add.svgIcon\">{{ icons.add.matIcon }}</mat-icon>\n </button>\n <div class=\"flex flex-col md:flex-row gap-4\">\n <!-- TODO: Support saved reports -->\n <!--<button mat-button color=\"primary\" (click)=\"onClickSaveReport()\" *ngIf=\"canSave\">\n <mat-icon class=\"mr-8\" fxHide.lt-md>save</mat-icon>\n {{ \"components.query_builder.save_report\" | translate }}\n </button>\n <button mat-button color=\"primary\" (click)=\"onClickUpdateReport()\" *ngIf=\"!canSave\">\n <mat-icon class=\"mr-8\" fxHide.lt-md>save</mat-icon>\n {{ \"components.query_builder.update_report\" | translate }}\n </button>-->\n <button mat-stroked-button color=\"accent\" (click)=\"onClickApply()\">\n {{ \"components.query_builder.update\" | translate }}\n <mat-icon [svgIcon]=\"icons.refresh.svgIcon\">{{ icons.refresh.matIcon }}</mat-icon>\n </button>\n </div>\n </div>\n</div>\n", styles: ["nice-query-builder .rules-container{position:relative}nice-query-builder .rules-container:before{content:\"\";position:absolute;top:32px;bottom:32px;left:46px;width:4px;background:rgba(0,0,0,.12)}nice-query-builder .save-report-button{height:36px}nice-query-builder .add-rule-button{margin-left:28px;margin-right:28px}\n"] }]
82
- }], ctorParameters: function () { return [{ type: undefined, decorators: [{
83
- type: Optional
84
- }, {
85
- type: Inject,
86
- args: [QUERY_BUILDER_ICONS]
87
- }] }, { type: i1.GeneratedFormGroup }]; }, propDecorators: { filterConfigs: [{
88
- type: Input
89
- }], currentSavedReport: [{
90
- type: Input
91
- }], loading: [{
92
- type: Input
93
- }], close: [{
94
- type: Output
95
- }], createReport: [{
96
- type: Output
97
- }], updateReport: [{
98
- type: Output
99
- }] } });
100
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnktYnVpbGRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uaWNlLWRhdGEtZmlsdGVyLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvcXVlcnktYnVpbGRlci9xdWVyeS1idWlsZGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25pY2UtZGF0YS1maWx0ZXIta2l0L3NyYy9saWIvY29tcG9uZW50cy9xdWVyeS1idWlsZGVyL3F1ZXJ5LWJ1aWxkZXIudGVtcGxhdGUuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3hILE9BQU8sRUFBd0IsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6RSxPQUFPLEVBQXNCLGtCQUFrQixFQUFFLHVCQUF1QixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFLaEgsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDL0QsT0FBTyxFQUFFLGdCQUFnQixFQUFhLE1BQU0sc0JBQXNCLENBQUM7QUFDbkUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHlCQUF5QixDQUFDOzs7Ozs7Ozs7O0FBbUJ4RCxNQUFNLE9BQU8seUJBQXlCO0lBcUJsQyxJQUFXLE9BQU87UUFDZCxPQUFPLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDO0lBQ3BDLENBQUM7SUFJRCxZQUVXLEtBQWtDLEVBQ2xDLFNBQStDO1FBRC9DLFVBQUssR0FBTCxLQUFLLENBQTZCO1FBQ2xDLGNBQVMsR0FBVCxTQUFTLENBQXNDO1FBbkJuRCxVQUFLLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUczQixpQkFBWSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFHbEMsaUJBQVksR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBUWpDLHFCQUFnQixHQUFHLENBQUMsQ0FBZSxFQUFFLEVBQUUsR0FBRSxDQUFDLENBQUM7UUFPL0MsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQWtDLENBQUM7SUFDOUUsQ0FBQztJQUVNLGdCQUFnQixDQUFDLEVBQWlDO1FBQ3JELElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxFQUFFLENBQUM7SUFDL0IsQ0FBQztJQUVNLGlCQUFpQixDQUFDLEVBQU8sSUFBUyxDQUFDO0lBRW5DLFVBQVUsQ0FBQyxLQUFtQjtRQUNqQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ25CLElBQUksQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLElBQUksZ0JBQWdCLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUMzRCxDQUFDO0lBRU0sY0FBYyxDQUFDLHdCQUFrRDtRQUNwRSxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsZ0JBQWdCLENBQUMsd0JBQXdCLENBQUMsQ0FBQyxDQUFDO0lBQzlFLENBQUM7SUFFTSxpQkFBaUIsQ0FBQyxFQUFVO1FBQy9CLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBRXhCLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1lBQ3pCLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDbEIsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1NBQ3ZCO0lBQ0wsQ0FBQztJQUVNLFlBQVk7UUFDZixJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDO0lBQ3BFLENBQUM7SUFFTSxpQkFBaUI7UUFDcEIsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUM3QixDQUFDO0lBRU0sbUJBQW1CO1FBQ3RCLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDN0IsQ0FBQzs7c0hBckVRLHlCQUF5QixrQkE0QlYsbUJBQW1COzBHQTVCbEMseUJBQXlCLGdQQVp2QjtRQUNQO1lBQ0ksT0FBTyxFQUFFLGlCQUFpQjtZQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLHlCQUF5QixDQUFDO1lBQ3hELEtBQUssRUFBRSxJQUFJO1NBQ2Q7UUFDRDtZQUNJLE9BQU8sRUFBRSxrQkFBa0I7WUFDM0IsVUFBVSxFQUFFLHVCQUF1QixDQUFDLGdCQUFnQixDQUFDO1NBQ3hEO0tBQ0osMEJDMUJMLDZ2REFvQ0E7MkZEUmEseUJBQXlCO2tCQWpCckMsU0FBUzsrQkFDSSxvQkFBb0IsaUJBR2YsaUJBQWlCLENBQUMsSUFBSSxhQUMxQjt3QkFDUDs0QkFDSSxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSwwQkFBMEIsQ0FBQzs0QkFDeEQsS0FBSyxFQUFFLElBQUk7eUJBQ2Q7d0JBQ0Q7NEJBQ0ksT0FBTyxFQUFFLGtCQUFrQjs0QkFDM0IsVUFBVSxFQUFFLHVCQUF1QixDQUFDLGdCQUFnQixDQUFDO3lCQUN4RDtxQkFDSjs7MEJBOEJJLFFBQVE7OzBCQUFJLE1BQU07MkJBQUMsbUJBQW1COzZFQTFCcEMsYUFBYTtzQkFEbkIsS0FBSztnQkFJQyxrQkFBa0I7c0JBRHhCLEtBQUs7Z0JBSUMsT0FBTztzQkFEYixLQUFLO2dCQUlDLEtBQUs7c0JBRFgsTUFBTTtnQkFJQSxZQUFZO3NCQURsQixNQUFNO2dCQUlBLFlBQVk7c0JBRGxCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgZm9yd2FyZFJlZiwgSW5qZWN0LCBJbnB1dCwgT3B0aW9uYWwsIE91dHB1dCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XG5pbXBvcnQgeyBHZW5lcmF0ZWRGb3JtQXJyYXksIEdlbmVyYXRlZEZvcm1Hcm91cCwgbmd4Rm9ybUdlbmVyYXRvckZhY3RvcnkgfSBmcm9tIFwiQHJlY3Vyc3l2ZS9uZ3gtZm9ybS1nZW5lcmF0b3JcIjtcbmltcG9ydCB7IE5pY2VTYXZlZFJlcG9ydHMgfSBmcm9tIFwiLi4vLi4vYXBpL21vZGVscy9zYXZlZC1yZXBvcnRzLm1vZGVsXCI7XG5pbXBvcnQgeyBGaWx0ZXJDb25maWd1cmF0aW9uTW9kZWwgfSBmcm9tIFwiLi4vLi4vbW9kZWxzL2ZpbHRlci5tb2RlbFwiO1xuaW1wb3J0IHsgUXVlcnlNb2RlbCB9IGZyb20gXCIuLi8uLi9tb2RlbHMvcXVlcnkubW9kZWxcIjtcbmltcG9ydCB7IE5pY2VRdWVyeUJ1aWxkZXJJY29uT3B0aW9ucyB9IGZyb20gXCIuL21vZGVscy9pY29ucy5tb2RlbFwiO1xuaW1wb3J0IHsgUVVFUllfQlVJTERFUl9JQ09OUyB9IGZyb20gXCIuL3F1ZXJ5LWJ1aWxkZXIuY29uc3RhbnRcIjtcbmltcG9ydCB7IFF1ZXJ5QnVpbGRlckZvcm0sIFF1ZXJ5Rm9ybSB9IGZyb20gXCIuL3F1ZXJ5LWJ1aWxkZXIuZm9ybVwiO1xuaW1wb3J0IHsgUUJGaWx0ZXJVdGlscyB9IGZyb20gXCIuL3V0aWxzL3FiLWZpbHRlci51dGlsc1wiO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogXCJuaWNlLXF1ZXJ5LWJ1aWxkZXJcIixcbiAgICB0ZW1wbGF0ZVVybDogXCIuL3F1ZXJ5LWJ1aWxkZXIudGVtcGxhdGUuaHRtbFwiLFxuICAgIHN0eWxlVXJsczogW1wiLi9xdWVyeS1idWlsZGVyLnN0eWxlLnNjc3NcIl0sXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICAgICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBOaWNlUXVlcnlCdWlsZGVyQ29tcG9uZW50KSxcbiAgICAgICAgICAgIG11bHRpOiB0cnVlXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IEdlbmVyYXRlZEZvcm1Hcm91cCxcbiAgICAgICAgICAgIHVzZUZhY3Rvcnk6IG5neEZvcm1HZW5lcmF0b3JGYWN0b3J5KFF1ZXJ5QnVpbGRlckZvcm0pXG4gICAgICAgIH1cbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIE5pY2VRdWVyeUJ1aWxkZXJDb21wb25lbnQgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciB7XG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgZmlsdGVyQ29uZmlnczogRmlsdGVyQ29uZmlndXJhdGlvbk1vZGVsW10gfCBudWxsO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgY3VycmVudFNhdmVkUmVwb3J0OiBOaWNlU2F2ZWRSZXBvcnRzIHwgbnVsbDtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGxvYWRpbmc6IGJvb2xlYW47XG5cbiAgICBAT3V0cHV0KClcbiAgICBwdWJsaWMgY2xvc2UgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgICBAT3V0cHV0KClcbiAgICBwdWJsaWMgY3JlYXRlUmVwb3J0ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gICAgQE91dHB1dCgpXG4gICAgcHVibGljIHVwZGF0ZVJlcG9ydCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICAgIHB1YmxpYyBydWxlczogR2VuZXJhdGVkRm9ybUFycmF5PFF1ZXJ5Rm9ybT47XG5cbiAgICBwdWJsaWMgZ2V0IGNhblNhdmUoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhdGhpcy5jdXJyZW50U2F2ZWRSZXBvcnQ7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBwcm9wYWdhdGVDaGFuZ2VzID0gKF86IFF1ZXJ5TW9kZWxbXSkgPT4ge307XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQE9wdGlvbmFsKCkgQEluamVjdChRVUVSWV9CVUlMREVSX0lDT05TKVxuICAgICAgICBwdWJsaWMgaWNvbnM6IE5pY2VRdWVyeUJ1aWxkZXJJY29uT3B0aW9ucyxcbiAgICAgICAgcHVibGljIGZvcm1Hcm91cDogR2VuZXJhdGVkRm9ybUdyb3VwPFF1ZXJ5QnVpbGRlckZvcm0+XG4gICAgKSB7XG4gICAgICAgIHRoaXMucnVsZXMgPSB0aGlzLmZvcm1Hcm91cC5nZXQoXCJydWxlc1wiKSBhcyBHZW5lcmF0ZWRGb3JtQXJyYXk8UXVlcnlGb3JtPjtcbiAgICB9XG5cbiAgICBwdWJsaWMgcmVnaXN0ZXJPbkNoYW5nZShmbjogKHJ1bGVzOiBRdWVyeU1vZGVsW10pID0+IHZvaWQpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5wcm9wYWdhdGVDaGFuZ2VzID0gZm47XG4gICAgfVxuXG4gICAgcHVibGljIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHt9XG5cbiAgICBwdWJsaWMgd3JpdGVWYWx1ZShydWxlczogUXVlcnlNb2RlbFtdKTogdm9pZCB7XG4gICAgICAgIHRoaXMucnVsZXMuY2xlYXIoKTtcbiAgICAgICAgdGhpcy5mb3JtR3JvdXAucGF0Y2hWYWx1ZShuZXcgUXVlcnlCdWlsZGVyRm9ybShydWxlcykpO1xuICAgIH1cblxuICAgIHB1YmxpYyBvbkNsaWNrQWRkUnVsZShmaWx0ZXJDb25maWd1cmF0aW9uTW9kZWw6IEZpbHRlckNvbmZpZ3VyYXRpb25Nb2RlbCk6IHZvaWQge1xuICAgICAgICB0aGlzLnJ1bGVzLnB1c2goUUJGaWx0ZXJVdGlscy5jcmVhdGVRdWVyeU1vZGVsKGZpbHRlckNvbmZpZ3VyYXRpb25Nb2RlbCkpO1xuICAgIH1cblxuICAgIHB1YmxpYyBvbkNsaWNrRGVsZXRlUnVsZShpZDogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIHRoaXMucnVsZXMucmVtb3ZlQXQoaWQpO1xuXG4gICAgICAgIGlmICh0aGlzLnJ1bGVzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgdGhpcy5jbG9zZS5lbWl0KCk7XG4gICAgICAgICAgICB0aGlzLm9uQ2xpY2tBcHBseSgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIG9uQ2xpY2tBcHBseSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5wcm9wYWdhdGVDaGFuZ2VzKHRoaXMuZm9ybUdyb3VwLmdldFJhd1ZhbHVlKCkudHJhbnNmb3JtKCkpO1xuICAgIH1cblxuICAgIHB1YmxpYyBvbkNsaWNrU2F2ZVJlcG9ydCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jcmVhdGVSZXBvcnQuZW1pdCgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBvbkNsaWNrVXBkYXRlUmVwb3J0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnVwZGF0ZVJlcG9ydC5lbWl0KCk7XG4gICAgfVxufVxuIiwiPGRpdiBjbGFzcz1cInJ1bGVzLWNvbnRhaW5lciBmbGV4IGZsZXgtY29sXCIgKm5nSWY9XCIhbG9hZGluZ1wiIFtmb3JtR3JvdXBdPVwiZm9ybUdyb3VwXCI+XG4gICAgPG5nLWNvbnRhaW5lciBmb3JtQXJyYXlOYW1lPVwicnVsZXNcIj5cbiAgICAgICAgPG5pY2UtcnVsZVxuICAgICAgICAgICAgKm5nRm9yPVwibGV0IHJ1bGUgb2YgcnVsZXMuY29udHJvbHM7IGxldCBpID0gaW5kZXhcIlxuICAgICAgICAgICAgKHJlbW92ZSk9XCJvbkNsaWNrRGVsZXRlUnVsZShpKVwiXG4gICAgICAgICAgICBbZmlsdGVyQ29uZmlnc109XCJmaWx0ZXJDb25maWdzXCJcbiAgICAgICAgICAgIFtmb3JtR3JvdXBOYW1lXT1cImlcIlxuICAgICAgICA+PC9uaWNlLXJ1bGU+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPGRpdiBjbGFzcz1cImZsZXgganVzdGlmeS1iZXR3ZWVuXCI+XG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICAgIGNsYXNzPVwiYWRkLWJ1dHRvbiBhZGQtcnVsZS1idXR0b25cIlxuICAgICAgICAgICAgbWF0LW1pbmktZmFiXG4gICAgICAgICAgICBuaWNlUXVlcnlCdWlsZGVyVHJpZ2dlclxuICAgICAgICAgICAgW3F1ZXJ5QnVpbGRlckZpbHRlcnNdPVwiZmlsdGVyQ29uZmlnc1wiXG4gICAgICAgICAgICAocXVlcnlCdWlsZGVyRmlsdGVyU2VsZWN0ZWQpPVwib25DbGlja0FkZFJ1bGUoJGV2ZW50KVwiXG4gICAgICAgID5cbiAgICAgICAgICAgIDxtYXQtaWNvbiBbc3ZnSWNvbl09XCJpY29ucy5hZGQuc3ZnSWNvblwiPnt7IGljb25zLmFkZC5tYXRJY29uIH19PC9tYXQtaWNvbj5cbiAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtY29sIG1kOmZsZXgtcm93IGdhcC00XCI+XG4gICAgICAgICAgICA8IS0tIFRPRE86IFN1cHBvcnQgc2F2ZWQgcmVwb3J0cyAtLT5cbiAgICAgICAgICAgIDwhLS08YnV0dG9uIG1hdC1idXR0b24gY29sb3I9XCJwcmltYXJ5XCIgKGNsaWNrKT1cIm9uQ2xpY2tTYXZlUmVwb3J0KClcIiAqbmdJZj1cImNhblNhdmVcIj5cbiAgICAgICAgICAgICAgICA8bWF0LWljb24gY2xhc3M9XCJtci04XCIgZnhIaWRlLmx0LW1kPnNhdmU8L21hdC1pY29uPlxuICAgICAgICAgICAgICAgIHt7IFwiY29tcG9uZW50cy5xdWVyeV9idWlsZGVyLnNhdmVfcmVwb3J0XCIgfCB0cmFuc2xhdGUgfX1cbiAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgPGJ1dHRvbiBtYXQtYnV0dG9uIGNvbG9yPVwicHJpbWFyeVwiIChjbGljayk9XCJvbkNsaWNrVXBkYXRlUmVwb3J0KClcIiAqbmdJZj1cIiFjYW5TYXZlXCI+XG4gICAgICAgICAgICAgICAgPG1hdC1pY29uIGNsYXNzPVwibXItOFwiIGZ4SGlkZS5sdC1tZD5zYXZlPC9tYXQtaWNvbj5cbiAgICAgICAgICAgICAgICB7eyBcImNvbXBvbmVudHMucXVlcnlfYnVpbGRlci51cGRhdGVfcmVwb3J0XCIgfCB0cmFuc2xhdGUgfX1cbiAgICAgICAgICAgIDwvYnV0dG9uPi0tPlxuICAgICAgICAgICAgPGJ1dHRvbiBtYXQtc3Ryb2tlZC1idXR0b24gY29sb3I9XCJhY2NlbnRcIiAoY2xpY2spPVwib25DbGlja0FwcGx5KClcIj5cbiAgICAgICAgICAgICAgICB7eyBcImNvbXBvbmVudHMucXVlcnlfYnVpbGRlci51cGRhdGVcIiB8IHRyYW5zbGF0ZSB9fVxuICAgICAgICAgICAgICAgIDxtYXQtaWNvbiBbc3ZnSWNvbl09XCJpY29ucy5yZWZyZXNoLnN2Z0ljb25cIj57eyBpY29ucy5yZWZyZXNoLm1hdEljb24gfX08L21hdC1pY29uPlxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuPC9kaXY+XG4iXX0=
@@ -1,40 +0,0 @@
1
- import { Component, forwardRef, Inject, Optional, ViewEncapsulation } from "@angular/core";
2
- import { NG_VALUE_ACCESSOR } from "@angular/forms";
3
- import { QUERY_BUILDER_ICONS } from "../../../query-builder.constant";
4
- import { FilterComponent } from "../filter.component";
5
- import * as i0 from "@angular/core";
6
- import * as i1 from "@angular/forms";
7
- import * as i2 from "@angular/material/icon";
8
- import * as i3 from "@angular/material/form-field";
9
- import * as i4 from "@angular/material/input";
10
- import * as i5 from "@angular/material/datepicker";
11
- export class DateFilterComponent extends FilterComponent {
12
- constructor(icons) {
13
- super();
14
- this.icons = icons;
15
- }
16
- }
17
- DateFilterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DateFilterComponent, deps: [{ token: QUERY_BUILDER_ICONS, optional: true }], target: i0.ɵɵFactoryTarget.Component });
18
- DateFilterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: DateFilterComponent, selector: "nice-date-filter", providers: [
19
- {
20
- provide: NG_VALUE_ACCESSOR,
21
- useExisting: forwardRef(() => DateFilterComponent),
22
- multi: true
23
- }
24
- ], usesInheritance: true, ngImport: i0, template: "<mat-form-field class=\"flex-auto\">\n <input matInput [matDatepicker]=\"picker\" [ngModel]=\"value\" (ngModelChange)=\"onValueChange($event)\" />\n <mat-datepicker-toggle matSuffix [for]=\"picker\">\n <mat-icon matDatepickerToggleIcon [svgIcon]=\"icons.datePicker.svgIcon\">{{ icons.datePicker.matIcon }}</mat-icon>\n </mat-datepicker-toggle>\n <mat-datepicker #picker></mat-datepicker>\n</mat-form-field>\n", 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.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "directive", type: i4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i5.MatDatepicker, selector: "mat-datepicker", exportAs: ["matDatepicker"] }, { kind: "directive", type: i5.MatDatepickerInput, selector: "input[matDatepicker]", inputs: ["matDatepicker", "min", "max", "matDatepickerFilter"], exportAs: ["matDatepickerInput"] }, { kind: "component", type: i5.MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: ["for", "tabIndex", "aria-label", "disabled", "disableRipple"], exportAs: ["matDatepickerToggle"] }, { kind: "directive", type: i5.MatDatepickerToggleIcon, selector: "[matDatepickerToggleIcon]" }], encapsulation: i0.ViewEncapsulation.None });
25
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DateFilterComponent, decorators: [{
26
- type: Component,
27
- args: [{ selector: "nice-date-filter", encapsulation: ViewEncapsulation.None, providers: [
28
- {
29
- provide: NG_VALUE_ACCESSOR,
30
- useExisting: forwardRef(() => DateFilterComponent),
31
- multi: true
32
- }
33
- ], template: "<mat-form-field class=\"flex-auto\">\n <input matInput [matDatepicker]=\"picker\" [ngModel]=\"value\" (ngModelChange)=\"onValueChange($event)\" />\n <mat-datepicker-toggle matSuffix [for]=\"picker\">\n <mat-icon matDatepickerToggleIcon [svgIcon]=\"icons.datePicker.svgIcon\">{{ icons.datePicker.matIcon }}</mat-icon>\n </mat-datepicker-toggle>\n <mat-datepicker #picker></mat-datepicker>\n</mat-form-field>\n" }]
34
- }], ctorParameters: function () { return [{ type: undefined, decorators: [{
35
- type: Optional
36
- }, {
37
- type: Inject,
38
- args: [QUERY_BUILDER_ICONS]
39
- }] }]; } });
40
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1maWx0ZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmljZS1kYXRhLWZpbHRlci1raXQvc3JjL2xpYi9jb21wb25lbnRzL3F1ZXJ5LWJ1aWxkZXIvcnVsZS9jb21wb25lbnRzL2RhdGUvZGF0ZS1maWx0ZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmljZS1kYXRhLWZpbHRlci1raXQvc3JjL2xpYi9jb21wb25lbnRzL3F1ZXJ5LWJ1aWxkZXIvcnVsZS9jb21wb25lbnRzL2RhdGUvZGF0ZS1maWx0ZXIudGVtcGxhdGUuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRW5ELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7Ozs7OztBQWN0RCxNQUFNLE9BQU8sbUJBQW9CLFNBQVEsZUFBdUI7SUFDNUQsWUFBNEQsS0FBa0M7UUFDMUYsS0FBSyxFQUFFLENBQUM7UUFEZ0QsVUFBSyxHQUFMLEtBQUssQ0FBNkI7SUFFOUYsQ0FBQzs7Z0hBSFEsbUJBQW1CLGtCQUNJLG1CQUFtQjtvR0FEMUMsbUJBQW1CLDJDQVJqQjtRQUNQO1lBQ0ksT0FBTyxFQUFFLGlCQUFpQjtZQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLG1CQUFtQixDQUFDO1lBQ2xELEtBQUssRUFBRSxJQUFJO1NBQ2Q7S0FDSixpRENoQkwsNmFBT0E7MkZEV2EsbUJBQW1CO2tCQVovQixTQUFTOytCQUNJLGtCQUFrQixpQkFFYixpQkFBaUIsQ0FBQyxJQUFJLGFBQzFCO3dCQUNQOzRCQUNJLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLG9CQUFvQixDQUFDOzRCQUNsRCxLQUFLLEVBQUUsSUFBSTt5QkFDZDtxQkFDSjs7MEJBR1ksUUFBUTs7MEJBQUksTUFBTTsyQkFBQyxtQkFBbUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIGZvcndhcmRSZWYsIEluamVjdCwgT3B0aW9uYWwsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XG5pbXBvcnQgeyBOaWNlUXVlcnlCdWlsZGVySWNvbk9wdGlvbnMgfSBmcm9tIFwiLi4vLi4vLi4vbW9kZWxzL2ljb25zLm1vZGVsXCI7XG5pbXBvcnQgeyBRVUVSWV9CVUlMREVSX0lDT05TIH0gZnJvbSBcIi4uLy4uLy4uL3F1ZXJ5LWJ1aWxkZXIuY29uc3RhbnRcIjtcbmltcG9ydCB7IEZpbHRlckNvbXBvbmVudCB9IGZyb20gXCIuLi9maWx0ZXIuY29tcG9uZW50XCI7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiBcIm5pY2UtZGF0ZS1maWx0ZXJcIixcbiAgICB0ZW1wbGF0ZVVybDogXCJkYXRlLWZpbHRlci50ZW1wbGF0ZS5odG1sXCIsXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICAgICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBEYXRlRmlsdGVyQ29tcG9uZW50KSxcbiAgICAgICAgICAgIG11bHRpOiB0cnVlXG4gICAgICAgIH1cbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIERhdGVGaWx0ZXJDb21wb25lbnQgZXh0ZW5kcyBGaWx0ZXJDb21wb25lbnQ8c3RyaW5nPiB7XG4gICAgY29uc3RydWN0b3IoQE9wdGlvbmFsKCkgQEluamVjdChRVUVSWV9CVUlMREVSX0lDT05TKSBwdWJsaWMgaWNvbnM6IE5pY2VRdWVyeUJ1aWxkZXJJY29uT3B0aW9ucykge1xuICAgICAgICBzdXBlcigpO1xuICAgIH1cbn1cbiIsIjxtYXQtZm9ybS1maWVsZCBjbGFzcz1cImZsZXgtYXV0b1wiPlxuICAgIDxpbnB1dCBtYXRJbnB1dCBbbWF0RGF0ZXBpY2tlcl09XCJwaWNrZXJcIiBbbmdNb2RlbF09XCJ2YWx1ZVwiIChuZ01vZGVsQ2hhbmdlKT1cIm9uVmFsdWVDaGFuZ2UoJGV2ZW50KVwiIC8+XG4gICAgPG1hdC1kYXRlcGlja2VyLXRvZ2dsZSBtYXRTdWZmaXggW2Zvcl09XCJwaWNrZXJcIj5cbiAgICAgICAgPG1hdC1pY29uIG1hdERhdGVwaWNrZXJUb2dnbGVJY29uIFtzdmdJY29uXT1cImljb25zLmRhdGVQaWNrZXIuc3ZnSWNvblwiPnt7IGljb25zLmRhdGVQaWNrZXIubWF0SWNvbiB9fTwvbWF0LWljb24+XG4gICAgPC9tYXQtZGF0ZXBpY2tlci10b2dnbGU+XG4gICAgPG1hdC1kYXRlcGlja2VyICNwaWNrZXI+PC9tYXQtZGF0ZXBpY2tlcj5cbjwvbWF0LWZvcm0tZmllbGQ+XG4iXX0=
@@ -1,28 +0,0 @@
1
- import { Component, forwardRef, ViewEncapsulation } from "@angular/core";
2
- import { NG_VALUE_ACCESSOR } from "@angular/forms";
3
- import { FilterComponent } from "../filter.component";
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "@angular/forms";
6
- import * as i2 from "@angular/material/form-field";
7
- import * as i3 from "@angular/material/input";
8
- export class NumberFilterComponent extends FilterComponent {
9
- }
10
- NumberFilterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: NumberFilterComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
11
- NumberFilterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: NumberFilterComponent, selector: "nice-number-filter", providers: [
12
- {
13
- provide: NG_VALUE_ACCESSOR,
14
- useExisting: forwardRef(() => NumberFilterComponent),
15
- multi: true
16
- }
17
- ], usesInheritance: true, ngImport: i0, template: "<mat-form-field class=\"flex-auto\">\n <input matInput [ngModel]=\"value\" (ngModelChange)=\"onValueChange($event)\" type=\"number\" />\n</mat-form-field>\n", 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.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i2.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { 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"] }], encapsulation: i0.ViewEncapsulation.None });
18
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: NumberFilterComponent, decorators: [{
19
- type: Component,
20
- args: [{ selector: "nice-number-filter", encapsulation: ViewEncapsulation.None, providers: [
21
- {
22
- provide: NG_VALUE_ACCESSOR,
23
- useExisting: forwardRef(() => NumberFilterComponent),
24
- multi: true
25
- }
26
- ], template: "<mat-form-field class=\"flex-auto\">\n <input matInput [ngModel]=\"value\" (ngModelChange)=\"onValueChange($event)\" type=\"number\" />\n</mat-form-field>\n" }]
27
- }] });
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtYmVyLWZpbHRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uaWNlLWRhdGEtZmlsdGVyLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvcXVlcnktYnVpbGRlci9ydWxlL2NvbXBvbmVudHMvbnVtYmVyL251bWJlci1maWx0ZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmljZS1kYXRhLWZpbHRlci1raXQvc3JjL2xpYi9jb21wb25lbnRzL3F1ZXJ5LWJ1aWxkZXIvcnVsZS9jb21wb25lbnRzL251bWJlci9udW1iZXItZmlsdGVyLnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbkQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDOzs7OztBQWN0RCxNQUFNLE9BQU8scUJBQXNCLFNBQVEsZUFBdUI7O2tIQUFyRCxxQkFBcUI7c0dBQXJCLHFCQUFxQiw2Q0FSbkI7UUFDUDtZQUNJLE9BQU8sRUFBRSxpQkFBaUI7WUFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxxQkFBcUIsQ0FBQztZQUNwRCxLQUFLLEVBQUUsSUFBSTtTQUNkO0tBQ0osaURDZEwsaUtBR0E7MkZEYWEscUJBQXFCO2tCQVpqQyxTQUFTOytCQUNJLG9CQUFvQixpQkFFZixpQkFBaUIsQ0FBQyxJQUFJLGFBQzFCO3dCQUNQOzRCQUNJLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLHNCQUFzQixDQUFDOzRCQUNwRCxLQUFLLEVBQUUsSUFBSTt5QkFDZDtxQkFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgZm9yd2FyZFJlZiwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcbmltcG9ydCB7IEZpbHRlckNvbXBvbmVudCB9IGZyb20gXCIuLi9maWx0ZXIuY29tcG9uZW50XCI7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiBcIm5pY2UtbnVtYmVyLWZpbHRlclwiLFxuICAgIHRlbXBsYXRlVXJsOiBcIm51bWJlci1maWx0ZXIudGVtcGxhdGUuaHRtbFwiLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gTnVtYmVyRmlsdGVyQ29tcG9uZW50KSxcbiAgICAgICAgICAgIG11bHRpOiB0cnVlXG4gICAgICAgIH1cbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIE51bWJlckZpbHRlckNvbXBvbmVudCBleHRlbmRzIEZpbHRlckNvbXBvbmVudDxudW1iZXI+IHt9XG4iLCI8bWF0LWZvcm0tZmllbGQgY2xhc3M9XCJmbGV4LWF1dG9cIj5cbiAgICA8aW5wdXQgbWF0SW5wdXQgW25nTW9kZWxdPVwidmFsdWVcIiAobmdNb2RlbENoYW5nZSk9XCJvblZhbHVlQ2hhbmdlKCRldmVudClcIiB0eXBlPVwibnVtYmVyXCIgLz5cbjwvbWF0LWZvcm0tZmllbGQ+XG4iXX0=
@@ -1,30 +0,0 @@
1
- import { Component, forwardRef, Input, ViewEncapsulation } from "@angular/core";
2
- import { NG_VALUE_ACCESSOR } from "@angular/forms";
3
- import { FilterComponent } from "../filter.component";
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "@angular/common";
6
- import * as i2 from "@angular/forms";
7
- import * as i3 from "@angular/material/radio";
8
- export class RadioFilterComponent extends FilterComponent {
9
- }
10
- RadioFilterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: RadioFilterComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
11
- RadioFilterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: RadioFilterComponent, selector: "nice-radio-filter", inputs: { filterConfig: "filterConfig" }, providers: [
12
- {
13
- provide: NG_VALUE_ACCESSOR,
14
- useExisting: forwardRef(() => RadioFilterComponent),
15
- multi: true
16
- }
17
- ], usesInheritance: true, ngImport: i0, template: "<mat-radio-group class=\"flex-auto\" [ngModel]=\"value\" (ngModelChange)=\"onValueChange($event)\">\n <mat-radio-button class=\"mx-4\" *ngFor=\"let option of filterConfig.options\" [value]=\"option?.key\">\n {{ option?.name }}\n </mat-radio-button>\n</mat-radio-group>\n", dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i3.MatRadioGroup, selector: "mat-radio-group", exportAs: ["matRadioGroup"] }, { kind: "component", type: i3.MatRadioButton, selector: "mat-radio-button", inputs: ["disableRipple", "tabIndex"], exportAs: ["matRadioButton"] }], encapsulation: i0.ViewEncapsulation.None });
18
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: RadioFilterComponent, decorators: [{
19
- type: Component,
20
- args: [{ selector: "nice-radio-filter", encapsulation: ViewEncapsulation.None, providers: [
21
- {
22
- provide: NG_VALUE_ACCESSOR,
23
- useExisting: forwardRef(() => RadioFilterComponent),
24
- multi: true
25
- }
26
- ], template: "<mat-radio-group class=\"flex-auto\" [ngModel]=\"value\" (ngModelChange)=\"onValueChange($event)\">\n <mat-radio-button class=\"mx-4\" *ngFor=\"let option of filterConfig.options\" [value]=\"option?.key\">\n {{ option?.name }}\n </mat-radio-button>\n</mat-radio-group>\n" }]
27
- }], propDecorators: { filterConfig: [{
28
- type: Input
29
- }] } });
30
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW8tZmlsdGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25pY2UtZGF0YS1maWx0ZXIta2l0L3NyYy9saWIvY29tcG9uZW50cy9xdWVyeS1idWlsZGVyL3J1bGUvY29tcG9uZW50cy9yYWRpby9yYWRpby1maWx0ZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmljZS1kYXRhLWZpbHRlci1raXQvc3JjL2xpYi9jb21wb25lbnRzL3F1ZXJ5LWJ1aWxkZXIvcnVsZS9jb21wb25lbnRzL3JhZGlvL3JhZGlvLWZpbHRlci50ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNoRixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVuRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7Ozs7O0FBY3RELE1BQU0sT0FBTyxvQkFBcUIsU0FBUSxlQUF1Qjs7aUhBQXBELG9CQUFvQjtxR0FBcEIsb0JBQW9CLHNGQVJsQjtRQUNQO1lBQ0ksT0FBTyxFQUFFLGlCQUFpQjtZQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLG9CQUFvQixDQUFDO1lBQ25ELEtBQUssRUFBRSxJQUFJO1NBQ2Q7S0FDSixpRENmTCw2UkFLQTsyRkRZYSxvQkFBb0I7a0JBWmhDLFNBQVM7K0JBQ0ksbUJBQW1CLGlCQUVkLGlCQUFpQixDQUFDLElBQUksYUFDMUI7d0JBQ1A7NEJBQ0ksT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUscUJBQXFCLENBQUM7NEJBQ25ELEtBQUssRUFBRSxJQUFJO3lCQUNkO3FCQUNKOzhCQUlNLFlBQVk7c0JBRGxCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIGZvcndhcmRSZWYsIElucHV0LCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xuaW1wb3J0IHsgRmlsdGVyQ29uZmlndXJhdGlvbk1vZGVsIH0gZnJvbSBcIi4uLy4uLy4uLy4uLy4uL21vZGVscy9maWx0ZXIubW9kZWxcIjtcbmltcG9ydCB7IEZpbHRlckNvbXBvbmVudCB9IGZyb20gXCIuLi9maWx0ZXIuY29tcG9uZW50XCI7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiBcIm5pY2UtcmFkaW8tZmlsdGVyXCIsXG4gICAgdGVtcGxhdGVVcmw6IFwicmFkaW8tZmlsdGVyLnRlbXBsYXRlLmh0bWxcIixcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFJhZGlvRmlsdGVyQ29tcG9uZW50KSxcbiAgICAgICAgICAgIG11bHRpOiB0cnVlXG4gICAgICAgIH1cbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIFJhZGlvRmlsdGVyQ29tcG9uZW50IGV4dGVuZHMgRmlsdGVyQ29tcG9uZW50PHN0cmluZz4ge1xuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGZpbHRlckNvbmZpZzogRmlsdGVyQ29uZmlndXJhdGlvbk1vZGVsO1xufVxuIiwiPG1hdC1yYWRpby1ncm91cCBjbGFzcz1cImZsZXgtYXV0b1wiIFtuZ01vZGVsXT1cInZhbHVlXCIgKG5nTW9kZWxDaGFuZ2UpPVwib25WYWx1ZUNoYW5nZSgkZXZlbnQpXCI+XG4gICAgPG1hdC1yYWRpby1idXR0b24gY2xhc3M9XCJteC00XCIgKm5nRm9yPVwibGV0IG9wdGlvbiBvZiBmaWx0ZXJDb25maWcub3B0aW9uc1wiIFt2YWx1ZV09XCJvcHRpb24/LmtleVwiPlxuICAgICAgICB7eyBvcHRpb24/Lm5hbWUgfX1cbiAgICA8L21hdC1yYWRpby1idXR0b24+XG48L21hdC1yYWRpby1ncm91cD5cbiJdfQ==
@@ -1,87 +0,0 @@
1
- import { Component, forwardRef, Input, Optional, ViewEncapsulation } from "@angular/core";
2
- import { NG_VALUE_ACCESSOR } from "@angular/forms";
3
- import { of, Subject } from "rxjs";
4
- import { debounceTime, switchMap } from "rxjs/operators";
5
- import { NiceFilterService } from "../../../../base-list/providers/base-filter.service";
6
- import { FilterComponent } from "../filter.component";
7
- import * as i0 from "@angular/core";
8
- import * as i1 from "../../../../base-list/providers/base-filter.service";
9
- import * as i2 from "@angular/common";
10
- import * as i3 from "@angular/forms";
11
- import * as i4 from "@angular/material/form-field";
12
- import * as i5 from "@recursyve/nice-ui-kit.v2";
13
- export class SelectFilterComponent extends FilterComponent {
14
- constructor(filterService) {
15
- super();
16
- this.filterService = filterService;
17
- this.values = [];
18
- this.search$ = new Subject();
19
- }
20
- async ngOnInit() {
21
- if (!this.filterConfig.lazyLoading) {
22
- this.values = this.filterConfig.values;
23
- }
24
- this.searchSub$ = this.search$
25
- .pipe(debounceTime(300), switchMap(value => {
26
- if (this.filterConfig.lazyLoading) {
27
- return this.filterService.searchFilterValue(this.filterConfig, value);
28
- }
29
- return of(this.filterConfig.values);
30
- }))
31
- .subscribe(values => {
32
- this.values = values;
33
- });
34
- }
35
- ngOnChanges(changes) {
36
- if ("filterConfig" in changes) {
37
- if (!this.filterConfig.lazyLoading) {
38
- this.values = this.filterConfig.values;
39
- }
40
- else {
41
- this.values = [];
42
- }
43
- }
44
- }
45
- async searchValue() {
46
- if (this.value && !this.values.find(v => v.id === this.value)) {
47
- const value = await this.filterService
48
- .searchFilterResourceValue(this.filterConfig, this.value)
49
- .toPromise();
50
- this.values = [...this.values, value];
51
- }
52
- }
53
- onValueChange(value) {
54
- super.onValueChange(value);
55
- this.searchValue();
56
- }
57
- ngOnDestroy() {
58
- this.searchSub$.unsubscribe();
59
- }
60
- writeValue(value) {
61
- super.writeValue(value);
62
- this.searchValue();
63
- }
64
- }
65
- SelectFilterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SelectFilterComponent, deps: [{ token: i1.NiceFilterService, optional: true }], target: i0.ɵɵFactoryTarget.Component });
66
- SelectFilterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: SelectFilterComponent, selector: "nice-select-filter", inputs: { filterConfig: "filterConfig" }, providers: [
67
- {
68
- provide: NG_VALUE_ACCESSOR,
69
- useExisting: forwardRef(() => SelectFilterComponent),
70
- multi: true
71
- }
72
- ], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<mat-form-field class=\"flex-auto\">\n <nice-typeahead *ngIf=\"!filterConfig.lazyLoading\"\n [ngModel]=\"value\"\n (ngModelChange)=\"onValueChange($event)\"\n [items]=\"values\"\n bindValue=\"id\"\n bindLabel=\"name\"\n ></nice-typeahead>\n\n <nice-typeahead *ngIf=\"filterConfig.lazyLoading\"\n [ngModel]=\"value\"\n (ngModelChange)=\"onValueChange($event)\"\n [items]=\"values\"\n [typeahead]=\"search$\"\n bindValue=\"id\"\n bindLabel=\"name\"\n ></nice-typeahead>\n</mat-form-field>\n", dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i4.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "component", type: i5.NiceTypeaheadComponent, selector: "nice-typeahead", inputs: ["items", "labelFormatFn", "required", "disabled", "placeholder", "emptyPlaceholder", "allowNotFoundItems", "panelClass", "bindValue", "bindLabel", "typeahead", "page$", "loading", "loadingPage", "searchFn", "optionTemplate"], outputs: ["change"] }], encapsulation: i0.ViewEncapsulation.None });
73
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SelectFilterComponent, decorators: [{
74
- type: Component,
75
- args: [{ selector: "nice-select-filter", encapsulation: ViewEncapsulation.None, providers: [
76
- {
77
- provide: NG_VALUE_ACCESSOR,
78
- useExisting: forwardRef(() => SelectFilterComponent),
79
- multi: true
80
- }
81
- ], template: "<mat-form-field class=\"flex-auto\">\n <nice-typeahead *ngIf=\"!filterConfig.lazyLoading\"\n [ngModel]=\"value\"\n (ngModelChange)=\"onValueChange($event)\"\n [items]=\"values\"\n bindValue=\"id\"\n bindLabel=\"name\"\n ></nice-typeahead>\n\n <nice-typeahead *ngIf=\"filterConfig.lazyLoading\"\n [ngModel]=\"value\"\n (ngModelChange)=\"onValueChange($event)\"\n [items]=\"values\"\n [typeahead]=\"search$\"\n bindValue=\"id\"\n bindLabel=\"name\"\n ></nice-typeahead>\n</mat-form-field>\n" }]
82
- }], ctorParameters: function () { return [{ type: i1.NiceFilterService, decorators: [{
83
- type: Optional
84
- }] }]; }, propDecorators: { filterConfig: [{
85
- type: Input
86
- }] } });
87
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LWZpbHRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uaWNlLWRhdGEtZmlsdGVyLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvcXVlcnktYnVpbGRlci9ydWxlL2NvbXBvbmVudHMvc2VsZWN0L3NlbGVjdC1maWx0ZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmljZS1kYXRhLWZpbHRlci1raXQvc3JjL2xpYi9jb21wb25lbnRzL3F1ZXJ5LWJ1aWxkZXIvcnVsZS9jb21wb25lbnRzL3NlbGVjdC9zZWxlY3QtZmlsdGVyLnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFnQyxRQUFRLEVBQWlCLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZJLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxFQUFFLEVBQUUsT0FBTyxFQUFnQixNQUFNLE1BQU0sQ0FBQztBQUNqRCxPQUFPLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXpELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHFEQUFxRCxDQUFDO0FBQ3hGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7Ozs7OztBQWN0RCxNQUFNLE9BQU8scUJBQXNCLFNBQVEsZUFBd0I7SUFTL0QsWUFBa0MsYUFBcUM7UUFDbkUsS0FBSyxFQUFFLENBQUM7UUFEc0Isa0JBQWEsR0FBYixhQUFhLENBQXdCO1FBTmhFLFdBQU0sR0FBd0IsRUFBRSxDQUFDO1FBRWpDLFlBQU8sR0FBRyxJQUFJLE9BQU8sRUFBVSxDQUFDO0lBTXZDLENBQUM7SUFFTSxLQUFLLENBQUMsUUFBUTtRQUNqQixJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXLEVBQUU7WUFDaEMsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQTZCLENBQUM7U0FDakU7UUFFRCxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxPQUFPO2FBQ3pCLElBQUksQ0FDRCxZQUFZLENBQUMsR0FBRyxDQUFDLEVBQ2pCLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUNkLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXLEVBQUU7Z0JBQy9CLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLEtBQUssQ0FBQyxDQUFDO2FBQ3pFO1lBRUQsT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUE2QixDQUFDLENBQUM7UUFDL0QsQ0FBQyxDQUFDLENBQ0w7YUFDQSxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDaEIsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFDekIsQ0FBQyxDQUFDLENBQUM7SUFDWCxDQUFDO0lBRU0sV0FBVyxDQUFDLE9BQXNCO1FBQ3JDLElBQUksY0FBYyxJQUFJLE9BQU8sRUFBRTtZQUMzQixJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXLEVBQUU7Z0JBQ2hDLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUE2QixDQUFDO2FBQ2pFO2lCQUFNO2dCQUNILElBQUksQ0FBQyxNQUFNLEdBQUcsRUFBRSxDQUFDO2FBQ3BCO1NBQ0o7SUFDTCxDQUFDO0lBRU8sS0FBSyxDQUFDLFdBQVc7UUFDckIsSUFBSSxJQUFJLENBQUMsS0FBSyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxLQUFLLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUMzRCxNQUFNLEtBQUssR0FBRyxNQUFNLElBQUksQ0FBQyxhQUFhO2lCQUNqQyx5QkFBeUIsQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxLQUFlLENBQUM7aUJBQ2xFLFNBQVMsRUFBRSxDQUFDO1lBQ2pCLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsS0FBSyxDQUFDLENBQUM7U0FDekM7SUFDTCxDQUFDO0lBRU0sYUFBYSxDQUFDLEtBQWM7UUFDL0IsS0FBSyxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMzQixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDdkIsQ0FBQztJQUVNLFdBQVc7UUFDZCxJQUFJLENBQUMsVUFBVSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ2xDLENBQUM7SUFFTSxVQUFVLENBQUMsS0FBYztRQUM1QixLQUFLLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3hCLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUN2QixDQUFDOztrSEFqRVEscUJBQXFCO3NHQUFyQixxQkFBcUIsdUZBUm5CO1FBQ1A7WUFDSSxPQUFPLEVBQUUsaUJBQWlCO1lBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMscUJBQXFCLENBQUM7WUFDcEQsS0FBSyxFQUFFLElBQUk7U0FDZDtLQUNKLHNFQ2xCTCxta0JBa0JBOzJGREVhLHFCQUFxQjtrQkFaakMsU0FBUzsrQkFDSSxvQkFBb0IsaUJBRWYsaUJBQWlCLENBQUMsSUFBSSxhQUMxQjt3QkFDUDs0QkFDSSxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxzQkFBc0IsQ0FBQzs0QkFDcEQsS0FBSyxFQUFFLElBQUk7eUJBQ2Q7cUJBQ0o7OzBCQVdZLFFBQVE7NENBUGQsWUFBWTtzQkFEbEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgZm9yd2FyZFJlZiwgSW5wdXQsIE9uQ2hhbmdlcywgT25EZXN0cm95LCBPbkluaXQsIE9wdGlvbmFsLCBTaW1wbGVDaGFuZ2VzLCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xuaW1wb3J0IHsgb2YsIFN1YmplY3QsIFN1YnNjcmlwdGlvbiB9IGZyb20gXCJyeGpzXCI7XG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIHN3aXRjaE1hcCB9IGZyb20gXCJyeGpzL29wZXJhdG9yc1wiO1xuaW1wb3J0IHsgRmlsdGVyQ29uZmlndXJhdGlvbk1vZGVsLCBTZWxlY3RGaWx0ZXJWYWx1ZSB9IGZyb20gXCIuLi8uLi8uLi8uLi8uLi9tb2RlbHMvZmlsdGVyLm1vZGVsXCI7XG5pbXBvcnQgeyBOaWNlRmlsdGVyU2VydmljZSB9IGZyb20gXCIuLi8uLi8uLi8uLi9iYXNlLWxpc3QvcHJvdmlkZXJzL2Jhc2UtZmlsdGVyLnNlcnZpY2VcIjtcbmltcG9ydCB7IEZpbHRlckNvbXBvbmVudCB9IGZyb20gXCIuLi9maWx0ZXIuY29tcG9uZW50XCI7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiBcIm5pY2Utc2VsZWN0LWZpbHRlclwiLFxuICAgIHRlbXBsYXRlVXJsOiBcInNlbGVjdC1maWx0ZXIudGVtcGxhdGUuaHRtbFwiLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gU2VsZWN0RmlsdGVyQ29tcG9uZW50KSxcbiAgICAgICAgICAgIG11bHRpOiB0cnVlXG4gICAgICAgIH1cbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIFNlbGVjdEZpbHRlckNvbXBvbmVudCBleHRlbmRzIEZpbHRlckNvbXBvbmVudDx1bmtub3duPiBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95LCBPbkNoYW5nZXMge1xuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGZpbHRlckNvbmZpZzogRmlsdGVyQ29uZmlndXJhdGlvbk1vZGVsO1xuICAgIHB1YmxpYyB2YWx1ZXM6IFNlbGVjdEZpbHRlclZhbHVlW10gPSBbXTtcblxuICAgIHB1YmxpYyBzZWFyY2gkID0gbmV3IFN1YmplY3Q8c3RyaW5nPigpO1xuXG4gICAgcHJpdmF0ZSBzZWFyY2hTdWIkOiBTdWJzY3JpcHRpb247XG5cbiAgICBjb25zdHJ1Y3RvcihAT3B0aW9uYWwoKSBwcm90ZWN0ZWQgZmlsdGVyU2VydmljZTogTmljZUZpbHRlclNlcnZpY2U8YW55Pikge1xuICAgICAgICBzdXBlcigpO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBuZ09uSW5pdCgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgaWYgKCF0aGlzLmZpbHRlckNvbmZpZy5sYXp5TG9hZGluZykge1xuICAgICAgICAgICAgdGhpcy52YWx1ZXMgPSB0aGlzLmZpbHRlckNvbmZpZy52YWx1ZXMgYXMgU2VsZWN0RmlsdGVyVmFsdWVbXTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuc2VhcmNoU3ViJCA9IHRoaXMuc2VhcmNoJFxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgZGVib3VuY2VUaW1lKDMwMCksXG4gICAgICAgICAgICAgICAgc3dpdGNoTWFwKHZhbHVlID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuZmlsdGVyQ29uZmlnLmxhenlMb2FkaW5nKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5maWx0ZXJTZXJ2aWNlLnNlYXJjaEZpbHRlclZhbHVlKHRoaXMuZmlsdGVyQ29uZmlnLCB2YWx1ZSk7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gb2YodGhpcy5maWx0ZXJDb25maWcudmFsdWVzIGFzIFNlbGVjdEZpbHRlclZhbHVlW10pO1xuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAuc3Vic2NyaWJlKHZhbHVlcyA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy52YWx1ZXMgPSB2YWx1ZXM7XG4gICAgICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgICAgICBpZiAoXCJmaWx0ZXJDb25maWdcIiBpbiBjaGFuZ2VzKSB7XG4gICAgICAgICAgICBpZiAoIXRoaXMuZmlsdGVyQ29uZmlnLmxhenlMb2FkaW5nKSB7XG4gICAgICAgICAgICAgICAgdGhpcy52YWx1ZXMgPSB0aGlzLmZpbHRlckNvbmZpZy52YWx1ZXMgYXMgU2VsZWN0RmlsdGVyVmFsdWVbXTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhpcy52YWx1ZXMgPSBbXTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgYXN5bmMgc2VhcmNoVmFsdWUoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIGlmICh0aGlzLnZhbHVlICYmICF0aGlzLnZhbHVlcy5maW5kKHYgPT4gdi5pZCA9PT0gdGhpcy52YWx1ZSkpIHtcbiAgICAgICAgICAgIGNvbnN0IHZhbHVlID0gYXdhaXQgdGhpcy5maWx0ZXJTZXJ2aWNlXG4gICAgICAgICAgICAgICAgLnNlYXJjaEZpbHRlclJlc291cmNlVmFsdWUodGhpcy5maWx0ZXJDb25maWcsIHRoaXMudmFsdWUgYXMgbnVtYmVyKVxuICAgICAgICAgICAgICAgIC50b1Byb21pc2UoKTtcbiAgICAgICAgICAgIHRoaXMudmFsdWVzID0gWy4uLnRoaXMudmFsdWVzLCB2YWx1ZV07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgb25WYWx1ZUNoYW5nZSh2YWx1ZTogdW5rbm93bik6IHZvaWQge1xuICAgICAgICBzdXBlci5vblZhbHVlQ2hhbmdlKHZhbHVlKTtcbiAgICAgICAgdGhpcy5zZWFyY2hWYWx1ZSgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zZWFyY2hTdWIkLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuXG4gICAgcHVibGljIHdyaXRlVmFsdWUodmFsdWU6IHVua25vd24pOiB2b2lkIHtcbiAgICAgICAgc3VwZXIud3JpdGVWYWx1ZSh2YWx1ZSk7XG4gICAgICAgIHRoaXMuc2VhcmNoVmFsdWUoKTtcbiAgICB9XG59XG4iLCI8bWF0LWZvcm0tZmllbGQgY2xhc3M9XCJmbGV4LWF1dG9cIj5cbiAgICA8bmljZS10eXBlYWhlYWQgKm5nSWY9XCIhZmlsdGVyQ29uZmlnLmxhenlMb2FkaW5nXCJcbiAgICAgICAgW25nTW9kZWxdPVwidmFsdWVcIlxuICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJvblZhbHVlQ2hhbmdlKCRldmVudClcIlxuICAgICAgICBbaXRlbXNdPVwidmFsdWVzXCJcbiAgICAgICAgYmluZFZhbHVlPVwiaWRcIlxuICAgICAgICBiaW5kTGFiZWw9XCJuYW1lXCJcbiAgICA+PC9uaWNlLXR5cGVhaGVhZD5cblxuICAgIDxuaWNlLXR5cGVhaGVhZCAqbmdJZj1cImZpbHRlckNvbmZpZy5sYXp5TG9hZGluZ1wiXG4gICAgICAgIFtuZ01vZGVsXT1cInZhbHVlXCJcbiAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwib25WYWx1ZUNoYW5nZSgkZXZlbnQpXCJcbiAgICAgICAgW2l0ZW1zXT1cInZhbHVlc1wiXG4gICAgICAgIFt0eXBlYWhlYWRdPVwic2VhcmNoJFwiXG4gICAgICAgIGJpbmRWYWx1ZT1cImlkXCJcbiAgICAgICAgYmluZExhYmVsPVwibmFtZVwiXG4gICAgPjwvbmljZS10eXBlYWhlYWQ+XG48L21hdC1mb3JtLWZpZWxkPlxuIl19