@recursyve/nice-data-filter-kit 14.2.3 → 14.3.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.
- package/esm2020/lib/components/base-list/store/base-list.service.mjs +1 -1
- package/esm2020/lib/components/nice-filter-view/components/advanced-filters/advanced-filters-trigger.directive.mjs +83 -0
- package/esm2020/lib/components/nice-filter-view/components/advanced-filters/advanced-filters.component.mjs +67 -0
- package/esm2020/lib/components/nice-filter-view/components/advanced-filters/advanced-filters.constant.mjs +3 -0
- package/esm2020/lib/components/nice-filter-view/components/advanced-filters/advanced-filters.form.mjs +127 -0
- package/esm2020/lib/components/nice-filter-view/components/advanced-filters/advanced-filters.module.mjs +143 -0
- package/esm2020/lib/components/nice-filter-view/components/advanced-filters/button/advanced-filters-button.component.mjs +42 -0
- package/esm2020/lib/components/nice-filter-view/components/advanced-filters/filter-selection/filter-selection.component.mjs +49 -0
- package/esm2020/lib/components/nice-filter-view/components/advanced-filters/models/icons.model.mjs +21 -0
- package/esm2020/lib/components/nice-filter-view/components/advanced-filters/public-api.mjs +6 -0
- package/esm2020/lib/components/nice-filter-view/components/advanced-filters/rule/components/date/date-filter.component.mjs +40 -0
- package/esm2020/lib/components/nice-filter-view/components/advanced-filters/rule/components/filter.component.mjs +29 -0
- package/esm2020/lib/components/nice-filter-view/components/advanced-filters/rule/components/number/number-filter.component.mjs +28 -0
- package/esm2020/lib/components/nice-filter-view/components/advanced-filters/rule/components/radio/radio-filter.component.mjs +30 -0
- package/esm2020/lib/components/nice-filter-view/components/advanced-filters/rule/components/select/select-filter.component.mjs +87 -0
- package/esm2020/lib/components/nice-filter-view/components/advanced-filters/rule/components/text/text-filter.component.mjs +31 -0
- package/esm2020/lib/components/nice-filter-view/components/advanced-filters/rule/rule.component.mjs +71 -0
- package/esm2020/lib/components/nice-filter-view/components/advanced-filters/utils/advanced-filters.utils.mjs +83 -0
- package/esm2020/lib/components/nice-filter-view/directives/mat-sort.mjs +4 -1
- package/esm2020/lib/components/nice-filter-view/pipes/filter-group-icon.pipe.mjs +32 -0
- package/esm2020/lib/components/nice-filter-view/public-api.mjs +2 -1
- package/esm2020/lib/components/nice-filter-view/store/nice-filter-view.query.mjs +7 -1
- package/esm2020/lib/components/nice-filter-view/store/nice-filter-view.service.mjs +11 -1
- package/esm2020/lib/components/nice-filter-view/store/nice-filter-view.store.mjs +5 -1
- package/esm2020/lib/components/query-builder/pipes/filter-group-icon.pipe.mjs +9 -4
- package/esm2020/lib/directive/selectable-list/selectable-list-checkbox.directive.mjs +8 -2
- package/fesm2015/recursyve-nice-data-filter-kit.mjs +1007 -171
- package/fesm2015/recursyve-nice-data-filter-kit.mjs.map +1 -1
- package/fesm2020/recursyve-nice-data-filter-kit.mjs +994 -161
- package/fesm2020/recursyve-nice-data-filter-kit.mjs.map +1 -1
- package/lib/components/base-list/store/base-list.service.d.ts +1 -1
- package/lib/components/nice-filter-view/components/advanced-filters/advanced-filters-trigger.directive.d.ts +27 -0
- package/lib/components/nice-filter-view/components/advanced-filters/advanced-filters.component.d.ts +27 -0
- package/lib/components/nice-filter-view/components/advanced-filters/advanced-filters.constant.d.ts +2 -0
- package/lib/components/nice-filter-view/components/advanced-filters/advanced-filters.form.d.ts +20 -0
- package/lib/components/nice-filter-view/components/advanced-filters/advanced-filters.module.d.ts +41 -0
- package/lib/components/nice-filter-view/components/advanced-filters/button/advanced-filters-button.component.d.ts +17 -0
- package/lib/components/nice-filter-view/components/advanced-filters/filter-selection/filter-selection.component.d.ts +16 -0
- package/lib/components/nice-filter-view/components/advanced-filters/models/icons.model.d.ts +10 -0
- package/lib/components/nice-filter-view/components/advanced-filters/public-api.d.ts +5 -0
- package/lib/components/nice-filter-view/components/advanced-filters/rule/components/date/date-filter.component.d.ts +9 -0
- package/lib/components/nice-filter-view/components/advanced-filters/rule/components/filter.component.d.ts +13 -0
- package/lib/components/nice-filter-view/components/advanced-filters/rule/components/number/number-filter.component.d.ts +6 -0
- package/lib/components/nice-filter-view/components/advanced-filters/rule/components/radio/radio-filter.component.d.ts +8 -0
- package/lib/components/nice-filter-view/components/advanced-filters/rule/components/select/select-filter.component.d.ts +22 -0
- package/lib/components/nice-filter-view/components/advanced-filters/rule/components/text/text-filter.component.d.ts +8 -0
- package/lib/components/nice-filter-view/components/advanced-filters/rule/rule.component.d.ts +26 -0
- package/lib/components/nice-filter-view/components/advanced-filters/utils/advanced-filters.utils.d.ts +11 -0
- package/lib/components/nice-filter-view/pipes/filter-group-icon.pipe.d.ts +11 -0
- package/lib/components/nice-filter-view/public-api.d.ts +1 -0
- package/lib/components/nice-filter-view/store/nice-filter-view.query.d.ts +2 -0
- package/lib/components/nice-filter-view/store/nice-filter-view.service.d.ts +1 -0
- package/lib/components/nice-filter-view/store/nice-filter-view.store.d.ts +1 -0
- package/lib/components/query-builder/pipes/filter-group-icon.pipe.d.ts +3 -3
- package/lib/directive/selectable-list/selectable-list-checkbox.directive.d.ts +4 -2
- package/package.json +1 -1
- package/src/lib/components/nice-filter-view/components/advanced-filters/advanced-filters.theme.scss +25 -0
- package/src/lib/components/nice-filter-view/components/advanced-filters/filter-selection/filter-selection.theme.scss +29 -0
- package/src/lib/components/nice-filter-view/components/advanced-filters/rule/rule.theme.scss +96 -0
- package/src/lib/nice-data-filter.theme.scss +2 -0
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
import { CommonModule } from "@angular/common";
|
|
2
|
+
import { NgModule } from "@angular/core";
|
|
3
|
+
import { FormsModule, ReactiveFormsModule } from "@angular/forms";
|
|
4
|
+
import { MatButtonModule } from "@angular/material/button";
|
|
5
|
+
import { MatButtonToggleModule } from "@angular/material/button-toggle";
|
|
6
|
+
import { MatCardModule } from "@angular/material/card";
|
|
7
|
+
import { MatOptionModule, MatRippleModule } from "@angular/material/core";
|
|
8
|
+
import { MatDatepickerModule } from "@angular/material/datepicker";
|
|
9
|
+
import { MatFormFieldModule } from "@angular/material/form-field";
|
|
10
|
+
import { MatIconModule } from "@angular/material/icon";
|
|
11
|
+
import { MatInputModule } from "@angular/material/input";
|
|
12
|
+
import { MatListModule } from "@angular/material/list";
|
|
13
|
+
import { MatRadioModule } from "@angular/material/radio";
|
|
14
|
+
import { MatSelectModule } from "@angular/material/select";
|
|
15
|
+
import { TranslateModule } from "@ngx-translate/core";
|
|
16
|
+
import { NiceLoadingSpinnerModule, NiceTypeaheadModule } from "@recursyve/nice-ui-kit.v2";
|
|
17
|
+
import { NgxMaskModule } from "ngx-mask";
|
|
18
|
+
import { NiceFilterGroupService } from "../../../query-builder/providers/filter-group.service";
|
|
19
|
+
import { NiceFilterGroupIconPipe } from "../../pipes/filter-group-icon.pipe";
|
|
20
|
+
import { AdvancedFiltersTriggerDirective } from "./advanced-filters-trigger.directive";
|
|
21
|
+
import { NiceAdvancedFiltersComponent } from "./advanced-filters.component";
|
|
22
|
+
import { ADVANCED_FILTER_ICONS } from "./advanced-filters.constant";
|
|
23
|
+
import { NiceAdvancedFiltersButtonComponent } from "./button/advanced-filters-button.component";
|
|
24
|
+
import { NiceAdvancedFilterSelectionComponent } from "./filter-selection/filter-selection.component";
|
|
25
|
+
import { defaultIcons } from "./models/icons.model";
|
|
26
|
+
import { NiceAdvancedDateFilterComponent } from "./rule/components/date/date-filter.component";
|
|
27
|
+
import { NiceAdvancedNumberFilterComponent } from "./rule/components/number/number-filter.component";
|
|
28
|
+
import { NiceAdvancedRadioFilterComponent } from "./rule/components/radio/radio-filter.component";
|
|
29
|
+
import { NiceAdvancedSelectFilterComponent } from "./rule/components/select/select-filter.component";
|
|
30
|
+
import { NiceAdvancedTextFilterComponent } from "./rule/components/text/text-filter.component";
|
|
31
|
+
import { NiceAdvancedRuleComponent } from "./rule/rule.component";
|
|
32
|
+
import * as i0 from "@angular/core";
|
|
33
|
+
export class NiceAdvancedFiltersModule {
|
|
34
|
+
static forRoot(options) {
|
|
35
|
+
return {
|
|
36
|
+
ngModule: NiceAdvancedFiltersModule,
|
|
37
|
+
providers: [
|
|
38
|
+
{
|
|
39
|
+
provide: ADVANCED_FILTER_ICONS,
|
|
40
|
+
useValue: {
|
|
41
|
+
...defaultIcons,
|
|
42
|
+
...(options?.icons ?? {})
|
|
43
|
+
}
|
|
44
|
+
},
|
|
45
|
+
options?.filterGroupService ? {
|
|
46
|
+
provide: NiceFilterGroupService,
|
|
47
|
+
useClass: options.filterGroupService
|
|
48
|
+
} : undefined
|
|
49
|
+
].filter((provider) => !!provider)
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
NiceAdvancedFiltersModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: NiceAdvancedFiltersModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
54
|
+
NiceAdvancedFiltersModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.3", ngImport: i0, type: NiceAdvancedFiltersModule, declarations: [NiceAdvancedFiltersComponent,
|
|
55
|
+
NiceAdvancedFiltersButtonComponent,
|
|
56
|
+
NiceAdvancedFilterSelectionComponent,
|
|
57
|
+
NiceAdvancedRuleComponent,
|
|
58
|
+
NiceAdvancedDateFilterComponent,
|
|
59
|
+
NiceAdvancedNumberFilterComponent,
|
|
60
|
+
NiceAdvancedRadioFilterComponent,
|
|
61
|
+
NiceAdvancedSelectFilterComponent,
|
|
62
|
+
NiceAdvancedTextFilterComponent,
|
|
63
|
+
AdvancedFiltersTriggerDirective,
|
|
64
|
+
NiceFilterGroupIconPipe], imports: [CommonModule,
|
|
65
|
+
ReactiveFormsModule,
|
|
66
|
+
MatRadioModule,
|
|
67
|
+
MatCardModule,
|
|
68
|
+
MatListModule,
|
|
69
|
+
NiceLoadingSpinnerModule,
|
|
70
|
+
MatIconModule,
|
|
71
|
+
MatRippleModule,
|
|
72
|
+
MatButtonModule,
|
|
73
|
+
MatFormFieldModule,
|
|
74
|
+
MatOptionModule,
|
|
75
|
+
MatSelectModule,
|
|
76
|
+
FormsModule,
|
|
77
|
+
MatInputModule,
|
|
78
|
+
MatButtonToggleModule,
|
|
79
|
+
TranslateModule,
|
|
80
|
+
MatDatepickerModule,
|
|
81
|
+
NiceTypeaheadModule,
|
|
82
|
+
NgxMaskModule], exports: [NiceAdvancedFiltersComponent, NiceAdvancedFiltersButtonComponent, AdvancedFiltersTriggerDirective] });
|
|
83
|
+
NiceAdvancedFiltersModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: NiceAdvancedFiltersModule, imports: [CommonModule,
|
|
84
|
+
ReactiveFormsModule,
|
|
85
|
+
MatRadioModule,
|
|
86
|
+
MatCardModule,
|
|
87
|
+
MatListModule,
|
|
88
|
+
NiceLoadingSpinnerModule,
|
|
89
|
+
MatIconModule,
|
|
90
|
+
MatRippleModule,
|
|
91
|
+
MatButtonModule,
|
|
92
|
+
MatFormFieldModule,
|
|
93
|
+
MatOptionModule,
|
|
94
|
+
MatSelectModule,
|
|
95
|
+
FormsModule,
|
|
96
|
+
MatInputModule,
|
|
97
|
+
MatButtonToggleModule,
|
|
98
|
+
TranslateModule,
|
|
99
|
+
MatDatepickerModule,
|
|
100
|
+
NiceTypeaheadModule,
|
|
101
|
+
NgxMaskModule] });
|
|
102
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: NiceAdvancedFiltersModule, decorators: [{
|
|
103
|
+
type: NgModule,
|
|
104
|
+
args: [{
|
|
105
|
+
imports: [
|
|
106
|
+
CommonModule,
|
|
107
|
+
ReactiveFormsModule,
|
|
108
|
+
MatRadioModule,
|
|
109
|
+
MatCardModule,
|
|
110
|
+
MatListModule,
|
|
111
|
+
NiceLoadingSpinnerModule,
|
|
112
|
+
MatIconModule,
|
|
113
|
+
MatRippleModule,
|
|
114
|
+
MatButtonModule,
|
|
115
|
+
MatFormFieldModule,
|
|
116
|
+
MatOptionModule,
|
|
117
|
+
MatSelectModule,
|
|
118
|
+
FormsModule,
|
|
119
|
+
MatInputModule,
|
|
120
|
+
MatButtonToggleModule,
|
|
121
|
+
TranslateModule,
|
|
122
|
+
MatDatepickerModule,
|
|
123
|
+
NiceTypeaheadModule,
|
|
124
|
+
NgxMaskModule
|
|
125
|
+
],
|
|
126
|
+
declarations: [
|
|
127
|
+
NiceAdvancedFiltersComponent,
|
|
128
|
+
NiceAdvancedFiltersButtonComponent,
|
|
129
|
+
NiceAdvancedFilterSelectionComponent,
|
|
130
|
+
NiceAdvancedRuleComponent,
|
|
131
|
+
NiceAdvancedDateFilterComponent,
|
|
132
|
+
NiceAdvancedNumberFilterComponent,
|
|
133
|
+
NiceAdvancedRadioFilterComponent,
|
|
134
|
+
NiceAdvancedSelectFilterComponent,
|
|
135
|
+
NiceAdvancedTextFilterComponent,
|
|
136
|
+
AdvancedFiltersTriggerDirective,
|
|
137
|
+
NiceFilterGroupIconPipe
|
|
138
|
+
],
|
|
139
|
+
providers: [],
|
|
140
|
+
exports: [NiceAdvancedFiltersComponent, NiceAdvancedFiltersButtonComponent, AdvancedFiltersTriggerDirective],
|
|
141
|
+
}]
|
|
142
|
+
}] });
|
|
143
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWR2YW5jZWQtZmlsdGVycy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uaWNlLWRhdGEtZmlsdGVyLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvbmljZS1maWx0ZXItdmlldy9jb21wb25lbnRzL2FkdmFuY2VkLWZpbHRlcnMvYWR2YW5jZWQtZmlsdGVycy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBdUIsUUFBUSxFQUFRLE1BQU0sZUFBZSxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDeEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxlQUFlLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDMUUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDbkUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsZUFBZSxFQUFF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bUI7UUFDbkIsbUJBQW1CO1FBQ25CLGFBQWE7MkZBcUJSLHlCQUF5QjtrQkF6Q3JDLFFBQVE7bUJBQUM7b0JBQ04sT0FBTyxFQUFFO3dCQUNMLFlBQVk7d0JBQ1osbUJBQW1CO3dCQUNuQixjQUFjO3dCQUNkLGFBQWE7d0JBQ2IsYUFBYTt3QkFDYix3QkFBd0I7d0JBQ3hCLGFBQWE7d0JBQ2IsZUFBZTt3QkFDZixlQUFlO3dCQUNmLGtCQUFrQjt3QkFDbEIsZUFBZTt3QkFDZixlQUFlO3dCQUNmLFdBQVc7d0JBQ1gsY0FBYzt3QkFDZCxxQkFBcUI7d0JBQ3JCLGVBQWU7d0JBQ2YsbUJBQW1CO3dCQUNuQixtQkFBbUI7d0JBQ25CLGFBQWE7cUJBQ2hCO29CQUNELFlBQVksRUFBRTt3QkFDViw0QkFBNEI7d0JBQzVCLGtDQUFrQzt3QkFDbEMsb0NBQW9DO3dCQUVwQyx5QkFBeUI7d0JBQ3pCLCtCQUErQjt3QkFDL0IsaUNBQWlDO3dCQUNqQyxnQ0FBZ0M7d0JBQ2hDLGlDQUFpQzt3QkFDakMsK0JBQStCO3dCQUUvQiwrQkFBK0I7d0JBRS9CLHVCQUF1QjtxQkFDMUI7b0JBQ0QsU0FBUyxFQUFFLEVBQUU7b0JBQ2IsT0FBTyxFQUFFLENBQUMsNEJBQTRCLEVBQUUsa0NBQWtDLEVBQUUsK0JBQStCLENBQUM7aUJBQy9HIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vblwiO1xuaW1wb3J0IHsgTW9kdWxlV2l0aFByb3ZpZGVycywgTmdNb2R1bGUsIFR5cGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcbmltcG9ydCB7IE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9idXR0b25cIjtcbmltcG9ydCB7IE1hdEJ1dHRvblRvZ2dsZU1vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9idXR0b24tdG9nZ2xlXCI7XG5pbXBvcnQgeyBNYXRDYXJkTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL2NhcmRcIjtcbmltcG9ydCB7IE1hdE9wdGlvbk1vZHVsZSwgTWF0UmlwcGxlTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL2NvcmVcIjtcbmltcG9ydCB7IE1hdERhdGVwaWNrZXJNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvbWF0ZXJpYWwvZGF0ZXBpY2tlclwiO1xuaW1wb3J0IHsgTWF0Rm9ybUZpZWxkTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL2Zvcm0tZmllbGRcIjtcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvblwiO1xuaW1wb3J0IHsgTWF0SW5wdXRNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXRcIjtcbmltcG9ydCB7IE1hdExpc3RNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvbWF0ZXJpYWwvbGlzdFwiO1xuaW1wb3J0IHsgTWF0UmFkaW9Nb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvbWF0ZXJpYWwvcmFkaW9cIjtcbmltcG9ydCB7IE1hdFNlbGVjdE1vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9zZWxlY3RcIjtcbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gXCJAbmd4LXRyYW5zbGF0ZS9jb3JlXCI7XG5pbXBvcnQgeyBOaWNlTG9hZGluZ1NwaW5uZXJNb2R1bGUsIE5pY2VUeXBlYWhlYWRNb2R1bGUgfSBmcm9tIFwiQHJlY3Vyc3l2ZS9uaWNlLXVpLWtpdC52MlwiO1xuaW1wb3J0IHsgTmd4TWFza01vZHVsZSB9IGZyb20gXCJuZ3gtbWFza1wiO1xuaW1wb3J0IHsgTmljZUZpbHRlckdyb3VwU2VydmljZSB9IGZyb20gXCIuLi8uLi8uLi9xdWVyeS1idWlsZGVyL3Byb3ZpZGVycy9maWx0ZXItZ3JvdXAuc2VydmljZVwiO1xuaW1wb3J0IHsgTmljZUZpbHRlckdyb3VwSWNvblBpcGUgfSBmcm9tIFwiLi4vLi4vcGlwZXMvZmlsdGVyLWdyb3VwLWljb24ucGlwZVwiO1xuaW1wb3J0IHsgQWR2YW5jZWRGaWx0ZXJzVHJpZ2dlckRpcmVjdGl2ZSB9IGZyb20gXCIuL2FkdmFuY2VkLWZpbHRlcnMtdHJpZ2dlci5kaXJlY3RpdmVcIjtcbmltcG9ydCB7IE5pY2VBZHZhbmNlZEZpbHRlcnNDb21wb25lbnQgfSBmcm9tIFwiLi9hZHZhbmNlZC1maWx0ZXJzLmNvbXBvbmVudFwiO1xuaW1wb3J0IHsgQURWQU5DRURfRklMVEVSX0lDT05TIH0gZnJvbSBcIi4vYWR2YW5jZWQtZmlsdGVycy5jb25zdGFudFwiO1xuaW1wb3J0IHsgTmljZUFkdmFuY2VkRmlsdGVyc0J1dHRvbkNvbXBvbmVudCB9IGZyb20gXCIuL2J1dHRvbi9hZHZhbmNlZC1maWx0ZXJzLWJ1dHRvbi5jb21wb25lbnRcIjtcbmltcG9ydCB7IE5pY2VBZHZhbmNlZEZpbHRlclNlbGVjdGlvbkNvbXBvbmVudCB9IGZyb20gXCIuL2ZpbHRlci1zZWxlY3Rpb24vZmlsdGVyLXNlbGVjdGlvbi5jb21wb25lbnRcIjtcbmltcG9ydCB7IGRlZmF1bHRJY29ucywgTmljZUFkdmFuY2VkRmlsdGVySWNvbk9wdGlvbnMgfSBmcm9tIFwiLi9tb2RlbHMvaWNvbnMubW9kZWxcIjtcbmltcG9ydCB7IE5pY2VBZHZhbmNlZERhdGVGaWx0ZXJDb21wb25lbnQgfSBmcm9tIFwiLi9ydWxlL2NvbXBvbmVudHMvZGF0ZS9kYXRlLWZpbHRlci5jb21wb25lbnRcIjtcbmltcG9ydCB7IE5pY2VBZHZhbmNlZE51bWJlckZpbHRlckNvbXBvbmVudCB9IGZyb20gXCIuL3J1bGUvY29tcG9uZW50cy9udW1iZXIvbnVtYmVyLWZpbHRlci5jb21wb25lbnRcIjtcbmltcG9ydCB7IE5pY2VBZHZhbmNlZFJhZGlvRmlsdGVyQ29tcG9uZW50IH0gZnJvbSBcIi4vcnVsZS9jb21wb25lbnRzL3JhZGlvL3JhZGlvLWZpbHRlci5jb21wb25lbnRcIjtcbmltcG9ydCB7IE5pY2VBZHZhbmNlZFNlbGVjdEZpbHRlckNvbXBvbmVudCB9IGZyb20gXCIuL3J1bGUvY29tcG9uZW50cy9zZWxlY3Qvc2VsZWN0LWZpbHRlci5jb21wb25lbnRcIjtcbmltcG9ydCB7IE5pY2VBZHZhbmNlZFRleHRGaWx0ZXJDb21wb25lbnQgfSBmcm9tIFwiLi9ydWxlL2NvbXBvbmVudHMvdGV4dC90ZXh0LWZpbHRlci5jb21wb25lbnRcIjtcbmltcG9ydCB7IE5pY2VBZHZhbmNlZFJ1bGVDb21wb25lbnQgfSBmcm9tIFwiLi9ydWxlL3J1bGUuY29tcG9uZW50XCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgTmljZUFkdmFuY2VkRmlsdGVyc09wdGlvbnMge1xuICAgIGljb25zPzogTmljZUFkdmFuY2VkRmlsdGVySWNvbk9wdGlvbnM7XG4gICAgZmlsdGVyR3JvdXBTZXJ2aWNlPzogVHlwZTxOaWNlRmlsdGVyR3JvdXBTZXJ2aWNlPGFueT4+O1xufVxuXG5ATmdNb2R1bGUoe1xuICAgIGltcG9ydHM6IFtcbiAgICAgICAgQ29tbW9uTW9kdWxlLFxuICAgICAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgICAgICBNYXRSYWRpb01vZHVsZSxcbiAgICAgICAgTWF0Q2FyZE1vZHVsZSxcbiAgICAgICAgTWF0TGlzdE1vZHVsZSxcbiAgICAgICAgTmljZUxvYWRpbmdTcGlubmVyTW9kdWxlLFxuICAgICAgICBNYXRJY29uTW9kdWxlLFxuICAgICAgICBNYXRSaXBwbGVNb2R1bGUsXG4gICAgICAgIE1hdEJ1dHRvbk1vZHVsZSxcbiAgICAgICAgTWF0Rm9ybUZpZWxkTW9kdWxlLFxuICAgICAgICBNYXRPcHRpb25Nb2R1bGUsXG4gICAgICAgIE1hdFNlbGVjdE1vZHVsZSxcbiAgICAgICAgRm9ybXNNb2R1bGUsXG4gICAgICAgIE1hdElucHV0TW9kdWxlLFxuICAgICAgICBNYXRCdXR0b25Ub2dnbGVNb2R1bGUsXG4gICAgICAgIFRyYW5zbGF0ZU1vZHVsZSxcbiAgICAgICAgTWF0RGF0ZXBpY2tlck1vZHVsZSxcbiAgICAgICAgTmljZVR5cGVhaGVhZE1vZHVsZSxcbiAgICAgICAgTmd4TWFza01vZHVsZVxuICAgIF0sXG4gICAgZGVjbGFyYXRpb25zOiBbXG4gICAgICAgIE5pY2VBZHZhbmNlZEZpbHRlcnNDb21wb25lbnQsXG4gICAgICAgIE5pY2VBZHZhbmNlZEZpbHRlcnNCdXR0b25Db21wb25lbnQsXG4gICAgICAgIE5pY2VBZHZhbmNlZEZpbHRlclNlbGVjdGlvbkNvbXBvbmVudCxcblxuICAgICAgICBOaWNlQWR2YW5jZWRSdWxlQ29tcG9uZW50LFxuICAgICAgICBOaWNlQWR2YW5jZWREYXRlRmlsdGVyQ29tcG9uZW50LFxuICAgICAgICBOaWNlQWR2YW5jZWROdW1iZXJGaWx0ZXJDb21wb25lbnQsXG4gICAgICAgIE5pY2VBZHZhbmNlZFJhZGlvRmlsdGVyQ29tcG9uZW50LFxuICAgICAgICBOaWNlQWR2YW5jZWRTZWxlY3RGaWx0ZXJDb21wb25lbnQsXG4gICAgICAgIE5pY2VBZHZhbmNlZFRleHRGaWx0ZXJDb21wb25lbnQsXG5cbiAgICAgICAgQWR2YW5jZWRGaWx0ZXJzVHJpZ2dlckRpcmVjdGl2ZSxcblxuICAgICAgICBOaWNlRmlsdGVyR3JvdXBJY29uUGlwZVxuICAgIF0sXG4gICAgcHJvdmlkZXJzOiBbXSxcbiAgICBleHBvcnRzOiBbTmljZUFkdmFuY2VkRmlsdGVyc0NvbXBvbmVudCwgTmljZUFkdmFuY2VkRmlsdGVyc0J1dHRvbkNvbXBvbmVudCwgQWR2YW5jZWRGaWx0ZXJzVHJpZ2dlckRpcmVjdGl2ZV0sXG59KVxuZXhwb3J0IGNsYXNzIE5pY2VBZHZhbmNlZEZpbHRlcnNNb2R1bGUge1xuICAgIHB1YmxpYyBzdGF0aWMgZm9yUm9vdChvcHRpb25zPzogTmljZUFkdmFuY2VkRmlsdGVyc09wdGlvbnMpOiBNb2R1bGVXaXRoUHJvdmlkZXJzPE5pY2VBZHZhbmNlZEZpbHRlcnNNb2R1bGU+IHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIG5nTW9kdWxlOiBOaWNlQWR2YW5jZWRGaWx0ZXJzTW9kdWxlLFxuICAgICAgICAgICAgcHJvdmlkZXJzOiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBwcm92aWRlOiBBRFZBTkNFRF9GSUxURVJfSUNPTlMsXG4gICAgICAgICAgICAgICAgICAgIHVzZVZhbHVlOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAuLi5kZWZhdWx0SWNvbnMsXG4gICAgICAgICAgICAgICAgICAgICAgICAuLi4ob3B0aW9ucz8uaWNvbnMgPz8ge30pXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIG9wdGlvbnM/LmZpbHRlckdyb3VwU2VydmljZSA/IHtcbiAgICAgICAgICAgICAgICAgICAgcHJvdmlkZTogTmljZUZpbHRlckdyb3VwU2VydmljZSxcbiAgICAgICAgICAgICAgICAgICAgdXNlQ2xhc3M6IG9wdGlvbnMuZmlsdGVyR3JvdXBTZXJ2aWNlXG4gICAgICAgICAgICAgICAgfSA6IHVuZGVmaW5lZFxuICAgICAgICAgICAgXS5maWx0ZXIoKHByb3ZpZGVyKSA9PiAhIXByb3ZpZGVyKVxuICAgICAgICB9O1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, Inject, Optional, ViewEncapsulation } from "@angular/core";
|
|
2
|
+
import { map } from "rxjs/operators";
|
|
3
|
+
import { FILTER_VIEW_ICONS } from "../../../nice-filter-view.constant";
|
|
4
|
+
import { NiceFilterViewQuery } from "../../../store/nice-filter-view.query";
|
|
5
|
+
import { NiceFilterViewService } from "../../../store/nice-filter-view.service";
|
|
6
|
+
import { AdvancedFiltersUtils } from "../utils/advanced-filters.utils";
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
import * as i1 from "../../../store/nice-filter-view.query";
|
|
9
|
+
import * as i2 from "../../../store/nice-filter-view.service";
|
|
10
|
+
import * as i3 from "@angular/common";
|
|
11
|
+
import * as i4 from "@angular/material/icon";
|
|
12
|
+
import * as i5 from "@angular/material/button";
|
|
13
|
+
import * as i6 from "../advanced-filters-trigger.directive";
|
|
14
|
+
export class NiceAdvancedFiltersButtonComponent {
|
|
15
|
+
constructor(icons, query, service) {
|
|
16
|
+
this.icons = icons;
|
|
17
|
+
this.query = query;
|
|
18
|
+
this.service = service;
|
|
19
|
+
this.shouldShowAdvancedFilters$ = this.query.selectSubState("showAdvancedFilters");
|
|
20
|
+
this.hasParameters$ = this.query.selectFilterParameters().pipe(map((parameter) => !!parameter.rules?.length));
|
|
21
|
+
}
|
|
22
|
+
clickToggleShowAdvancedFilters() {
|
|
23
|
+
this.service.updateSubState("showAdvancedFilters", !this.query.getSubState("showAdvancedFilters"));
|
|
24
|
+
}
|
|
25
|
+
onSelectedFilter(filter) {
|
|
26
|
+
const rule = AdvancedFiltersUtils.createRule(filter);
|
|
27
|
+
this.service.setRules([{ condition: "and", rules: [rule] }], false);
|
|
28
|
+
this.service.updateSubState("showAdvancedFilters", true);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
NiceAdvancedFiltersButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: NiceAdvancedFiltersButtonComponent, deps: [{ token: FILTER_VIEW_ICONS, optional: true }, { token: i1.NiceFilterViewQuery }, { token: i2.NiceFilterViewService }], target: i0.ɵɵFactoryTarget.Component });
|
|
32
|
+
NiceAdvancedFiltersButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.3", type: NiceAdvancedFiltersButtonComponent, selector: "nice-advanced-filters-button", ngImport: i0, template: "<div class=\"relative\">\n <ng-container *ngIf=\"(hasParameters$ | async) && (shouldShowAdvancedFilters$ | async) !== true\">\n <div class=\"absolute top-2 right-2 w-1 h-1 rounded bg-accent\"></div>\n\n <button mat-icon-button (click)=\"clickToggleShowAdvancedFilters()\">\n <mat-icon [svgIcon]=\"icons.queryBuilder.svgIcon\">{{ icons.queryBuilder.matIcon }}</mat-icon>\n </button>\n </ng-container>\n\n <ng-container *ngIf=\"shouldShowAdvancedFilters$ | async\">\n <button mat-icon-button (click)=\"clickToggleShowAdvancedFilters()\">\n <mat-icon [svgIcon]=\"icons.close.svgIcon\">{{ icons.close.matIcon }}</mat-icon>\n </button>\n </ng-container>\n\n <ng-container *ngIf=\"(hasParameters$ | async) !== true && (shouldShowAdvancedFilters$ | async) !== true\">\n <button mat-icon-button niceAdvancedFiltersTrigger (advancedFilterSelected)=\"onSelectedFilter($event)\">\n <mat-icon>filter_list</mat-icon>\n </button>\n </ng-container>\n</div>\n", styles: ["nice-advanced-filters-button{width:40px;height:40px}\n"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i5.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "directive", type: i6.AdvancedFiltersTriggerDirective, selector: "[niceAdvancedFiltersTrigger]", inputs: ["position"], outputs: ["advancedFilterSelected"], exportAs: ["niceAdvancedFiltersTrigger"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
33
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: NiceAdvancedFiltersButtonComponent, decorators: [{
|
|
34
|
+
type: Component,
|
|
35
|
+
args: [{ selector: "nice-advanced-filters-button", encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"relative\">\n <ng-container *ngIf=\"(hasParameters$ | async) && (shouldShowAdvancedFilters$ | async) !== true\">\n <div class=\"absolute top-2 right-2 w-1 h-1 rounded bg-accent\"></div>\n\n <button mat-icon-button (click)=\"clickToggleShowAdvancedFilters()\">\n <mat-icon [svgIcon]=\"icons.queryBuilder.svgIcon\">{{ icons.queryBuilder.matIcon }}</mat-icon>\n </button>\n </ng-container>\n\n <ng-container *ngIf=\"shouldShowAdvancedFilters$ | async\">\n <button mat-icon-button (click)=\"clickToggleShowAdvancedFilters()\">\n <mat-icon [svgIcon]=\"icons.close.svgIcon\">{{ icons.close.matIcon }}</mat-icon>\n </button>\n </ng-container>\n\n <ng-container *ngIf=\"(hasParameters$ | async) !== true && (shouldShowAdvancedFilters$ | async) !== true\">\n <button mat-icon-button niceAdvancedFiltersTrigger (advancedFilterSelected)=\"onSelectedFilter($event)\">\n <mat-icon>filter_list</mat-icon>\n </button>\n </ng-container>\n</div>\n", styles: ["nice-advanced-filters-button{width:40px;height:40px}\n"] }]
|
|
36
|
+
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
37
|
+
type: Optional
|
|
38
|
+
}, {
|
|
39
|
+
type: Inject,
|
|
40
|
+
args: [FILTER_VIEW_ICONS]
|
|
41
|
+
}] }, { type: i1.NiceFilterViewQuery }, { type: i2.NiceFilterViewService }]; } });
|
|
42
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWR2YW5jZWQtZmlsdGVycy1idXR0b24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmljZS1kYXRhLWZpbHRlci1raXQvc3JjL2xpYi9jb21wb25lbnRzL25pY2UtZmlsdGVyLXZpZXcvY29tcG9uZW50cy9hZHZhbmNlZC1maWx0ZXJzL2J1dHRvbi9hZHZhbmNlZC1maWx0ZXJzLWJ1dHRvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uaWNlLWRhdGEtZmlsdGVyLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvbmljZS1maWx0ZXItdmlldy9jb21wb25lbnRzL2FkdmFuY2VkLWZpbHRlcnMvYnV0dG9uL2FkdmFuY2VkLWZpbHRlcnMtYnV0dG9uLnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQVUsUUFBUSxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2hILE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUdyQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUN2RSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUM1RSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUNoRixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQzs7Ozs7Ozs7QUFTdkUsTUFBTSxPQUFPLGtDQUFrQztJQU0zQyxZQUVXLEtBQTBCLEVBQ3pCLEtBQTBCLEVBQzFCLE9BQThCO1FBRi9CLFVBQUssR0FBTCxLQUFLLENBQXFCO1FBQ3pCLFVBQUssR0FBTCxLQUFLLENBQXFCO1FBQzFCLFlBQU8sR0FBUCxPQUFPLENBQXVCO1FBVG5DLCtCQUEwQixHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsY0FBYyxDQUFVLHFCQUFxQixDQUFDLENBQUM7UUFDdkYsbUJBQWMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLHNCQUFzQixFQUFFLENBQUMsSUFBSSxDQUM1RCxHQUFHLENBQUMsQ0FBQyxTQUFTLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsS0FBSyxFQUFFLE1BQU0sQ0FBQyxDQUNoRCxDQUFDO0lBT0MsQ0FBQztJQUVHLDhCQUE4QjtRQUNqQyxJQUFJLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQyxxQkFBcUIsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLHFCQUFxQixDQUFDLENBQUMsQ0FBQztJQUN2RyxDQUFDO0lBRU0sZ0JBQWdCLENBQUMsTUFBZ0M7UUFDcEQsTUFBTSxJQUFJLEdBQUcsb0JBQW9CLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3JELElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUNwRSxJQUFJLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQyxxQkFBcUIsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUM3RCxDQUFDOzsrSEFyQlEsa0NBQWtDLGtCQU9uQixpQkFBaUI7bUhBUGhDLGtDQUFrQyxvRUNoQi9DLHFoQ0FxQkE7MkZETGEsa0NBQWtDO2tCQVA5QyxTQUFTOytCQUNJLDhCQUE4QixpQkFHekIsaUJBQWlCLENBQUMsSUFBSSxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTTs7MEJBUzFDLFFBQVE7OzBCQUFJLE1BQU07MkJBQUMsaUJBQWlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5qZWN0LCBPbkluaXQsIE9wdGlvbmFsLCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBtYXAgfSBmcm9tIFwicnhqcy9vcGVyYXRvcnNcIjtcbmltcG9ydCB7IEZpbHRlckNvbmZpZ3VyYXRpb25Nb2RlbCB9IGZyb20gXCIuLi8uLi8uLi8uLi8uLi9tb2RlbHMvZmlsdGVyLm1vZGVsXCI7XG5pbXBvcnQgeyBOaWNlQmFzZUljb25PcHRpb25zIH0gZnJvbSBcIi4uLy4uLy4uLy4uL2Jhc2UtbGlzdC9tb2RlbHMvaWNvbnMubW9kZWxcIjtcbmltcG9ydCB7IEZJTFRFUl9WSUVXX0lDT05TIH0gZnJvbSBcIi4uLy4uLy4uL25pY2UtZmlsdGVyLXZpZXcuY29uc3RhbnRcIjtcbmltcG9ydCB7IE5pY2VGaWx0ZXJWaWV3UXVlcnkgfSBmcm9tIFwiLi4vLi4vLi4vc3RvcmUvbmljZS1maWx0ZXItdmlldy5xdWVyeVwiO1xuaW1wb3J0IHsgTmljZUZpbHRlclZpZXdTZXJ2aWNlIH0gZnJvbSBcIi4uLy4uLy4uL3N0b3JlL25pY2UtZmlsdGVyLXZpZXcuc2VydmljZVwiO1xuaW1wb3J0IHsgQWR2YW5jZWRGaWx0ZXJzVXRpbHMgfSBmcm9tIFwiLi4vdXRpbHMvYWR2YW5jZWQtZmlsdGVycy51dGlsc1wiO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogXCJuaWNlLWFkdmFuY2VkLWZpbHRlcnMtYnV0dG9uXCIsXG4gICAgdGVtcGxhdGVVcmw6IFwiYWR2YW5jZWQtZmlsdGVycy1idXR0b24udGVtcGxhdGUuaHRtbFwiLFxuICAgIHN0eWxlVXJsczogW1wiYWR2YW5jZWQtZmlsdGVycy1idXR0b24uc3R5bGUuc2Nzc1wiXSxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIE5pY2VBZHZhbmNlZEZpbHRlcnNCdXR0b25Db21wb25lbnQge1xuICAgIHB1YmxpYyBzaG91bGRTaG93QWR2YW5jZWRGaWx0ZXJzJCA9IHRoaXMucXVlcnkuc2VsZWN0U3ViU3RhdGU8Ym9vbGVhbj4oXCJzaG93QWR2YW5jZWRGaWx0ZXJzXCIpO1xuICAgIHB1YmxpYyBoYXNQYXJhbWV0ZXJzJCA9IHRoaXMucXVlcnkuc2VsZWN0RmlsdGVyUGFyYW1ldGVycygpLnBpcGUoXG4gICAgICAgIG1hcCgocGFyYW1ldGVyKSA9PiAhIXBhcmFtZXRlci5ydWxlcz8ubGVuZ3RoKVxuICAgICk7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQE9wdGlvbmFsKCkgQEluamVjdChGSUxURVJfVklFV19JQ09OUylcbiAgICAgICAgcHVibGljIGljb25zOiBOaWNlQmFzZUljb25PcHRpb25zLFxuICAgICAgICBwcml2YXRlIHF1ZXJ5OiBOaWNlRmlsdGVyVmlld1F1ZXJ5LFxuICAgICAgICBwcml2YXRlIHNlcnZpY2U6IE5pY2VGaWx0ZXJWaWV3U2VydmljZVxuICAgICkge31cblxuICAgIHB1YmxpYyBjbGlja1RvZ2dsZVNob3dBZHZhbmNlZEZpbHRlcnMoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc2VydmljZS51cGRhdGVTdWJTdGF0ZShcInNob3dBZHZhbmNlZEZpbHRlcnNcIiwgIXRoaXMucXVlcnkuZ2V0U3ViU3RhdGUoXCJzaG93QWR2YW5jZWRGaWx0ZXJzXCIpKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgb25TZWxlY3RlZEZpbHRlcihmaWx0ZXI6IEZpbHRlckNvbmZpZ3VyYXRpb25Nb2RlbCk6IHZvaWQge1xuICAgICAgICBjb25zdCBydWxlID0gQWR2YW5jZWRGaWx0ZXJzVXRpbHMuY3JlYXRlUnVsZShmaWx0ZXIpO1xuICAgICAgICB0aGlzLnNlcnZpY2Uuc2V0UnVsZXMoW3sgY29uZGl0aW9uOiBcImFuZFwiLCBydWxlczogW3J1bGVdIH1dLCBmYWxzZSk7XG4gICAgICAgIHRoaXMuc2VydmljZS51cGRhdGVTdWJTdGF0ZShcInNob3dBZHZhbmNlZEZpbHRlcnNcIiwgdHJ1ZSk7XG4gICAgfVxufVxuIiwiPGRpdiBjbGFzcz1cInJlbGF0aXZlXCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIihoYXNQYXJhbWV0ZXJzJCB8IGFzeW5jKSAmJiAoc2hvdWxkU2hvd0FkdmFuY2VkRmlsdGVycyQgfCBhc3luYykgIT09IHRydWVcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImFic29sdXRlIHRvcC0yIHJpZ2h0LTIgdy0xIGgtMSByb3VuZGVkIGJnLWFjY2VudFwiPjwvZGl2PlxuXG4gICAgICAgIDxidXR0b24gbWF0LWljb24tYnV0dG9uIChjbGljayk9XCJjbGlja1RvZ2dsZVNob3dBZHZhbmNlZEZpbHRlcnMoKVwiPlxuICAgICAgICAgICAgPG1hdC1pY29uIFtzdmdJY29uXT1cImljb25zLnF1ZXJ5QnVpbGRlci5zdmdJY29uXCI+e3sgaWNvbnMucXVlcnlCdWlsZGVyLm1hdEljb24gfX08L21hdC1pY29uPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJzaG91bGRTaG93QWR2YW5jZWRGaWx0ZXJzJCB8IGFzeW5jXCI+XG4gICAgICAgIDxidXR0b24gbWF0LWljb24tYnV0dG9uIChjbGljayk9XCJjbGlja1RvZ2dsZVNob3dBZHZhbmNlZEZpbHRlcnMoKVwiPlxuICAgICAgICAgICAgPG1hdC1pY29uIFtzdmdJY29uXT1cImljb25zLmNsb3NlLnN2Z0ljb25cIj57eyBpY29ucy5jbG9zZS5tYXRJY29uIH19PC9tYXQtaWNvbj5cbiAgICAgICAgPC9idXR0b24+XG4gICAgPC9uZy1jb250YWluZXI+XG5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiKGhhc1BhcmFtZXRlcnMkIHwgYXN5bmMpICE9PSB0cnVlICYmIChzaG91bGRTaG93QWR2YW5jZWRGaWx0ZXJzJCB8IGFzeW5jKSAhPT0gdHJ1ZVwiPlxuICAgICAgICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiBuaWNlQWR2YW5jZWRGaWx0ZXJzVHJpZ2dlciAoYWR2YW5jZWRGaWx0ZXJTZWxlY3RlZCk9XCJvblNlbGVjdGVkRmlsdGVyKCRldmVudClcIj5cbiAgICAgICAgICAgIDxtYXQtaWNvbj5maWx0ZXJfbGlzdDwvbWF0LWljb24+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgIDwvbmctY29udGFpbmVyPlxuPC9kaXY+XG4iXX0=
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, EventEmitter, Output, ViewEncapsulation } from "@angular/core";
|
|
2
|
+
import { ArrayUtils } from "@recursyve/nice-ui-kit.v2";
|
|
3
|
+
import { map } from "rxjs/operators";
|
|
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/material/card";
|
|
9
|
+
import * as i4 from "@angular/material/list";
|
|
10
|
+
import * as i5 from "@recursyve/nice-ui-kit.v2";
|
|
11
|
+
import * as i6 from "@angular/material/icon";
|
|
12
|
+
import * as i7 from "@angular/material/core";
|
|
13
|
+
import * as i8 from "../../../pipes/filter-group-icon.pipe";
|
|
14
|
+
export class NiceAdvancedFilterSelectionComponent {
|
|
15
|
+
constructor(query) {
|
|
16
|
+
this.query = query;
|
|
17
|
+
this.filterSelected = new EventEmitter();
|
|
18
|
+
this.loading$ = this.query.selectFilterConfigLoading();
|
|
19
|
+
this.filterGroups$ = this.query.selectFilterConfig().pipe(map((config) => {
|
|
20
|
+
const groups = ArrayUtils.uniqueObjects(config.map(x => x.group), x => x?.key);
|
|
21
|
+
const result = [];
|
|
22
|
+
for (const group of groups) {
|
|
23
|
+
if (!group) {
|
|
24
|
+
continue;
|
|
25
|
+
}
|
|
26
|
+
result.push([group, config.filter(x => x.group?.key === group.key)]);
|
|
27
|
+
}
|
|
28
|
+
return result.sort(([, a], [, b]) => b.length - a.length);
|
|
29
|
+
}));
|
|
30
|
+
}
|
|
31
|
+
selectFilter(filterConfigurationModel) {
|
|
32
|
+
this.filterSelected.emit(filterConfigurationModel);
|
|
33
|
+
}
|
|
34
|
+
trackGroups(index, value) {
|
|
35
|
+
return value[0]?.key ?? index;
|
|
36
|
+
}
|
|
37
|
+
trackFilter(index, value) {
|
|
38
|
+
return value.id ?? index;
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
NiceAdvancedFilterSelectionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: NiceAdvancedFilterSelectionComponent, deps: [{ token: i1.NiceFilterViewQuery }], target: i0.ɵɵFactoryTarget.Component });
|
|
42
|
+
NiceAdvancedFilterSelectionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.3", type: NiceAdvancedFilterSelectionComponent, selector: "nice-advanced-filter-selection", outputs: { filterSelected: "filterSelected" }, ngImport: i0, template: "<mat-card class=\"flex flex-row flex-wrap filter-selection-container\" [niceLoadingOverlay]=\"loading$ | async\">\n <div class=\"grid grid-cols-1 md:grid-cols-2 gap-4\" *ngIf=\"filterGroups$ | async as filterGroups\">\n <div class=\"flex flex-col\" *ngFor=\"let group of filterGroups; trackBy: trackGroups\">\n <div class=\"filter-group flex items-center gap-4 pb-4\">\n <ng-container *ngIf=\"group[0].key | niceFilterGroupIcon as icon\">\n <i mat-list-icon class=\"group-icon fal\" [ngClass]=\"icon.class\" *ngIf=\"icon.class\"></i>\n <mat-icon mat-list-icon class=\"group-icon\" [svgIcon]=\"icon.svgIcon\" *ngIf=\"icon.svgIcon\"></mat-icon>\n <mat-icon mat-list-icon class=\"group-icon\" *ngIf=\"icon.matIcon\">{{ icon.matIcon }}</mat-icon>\n </ng-container>\n\n <strong class=\"group-name\">{{ group[0].name }}</strong>\n </div>\n\n <div class=\"filter-item\" matRipple *ngFor=\"let filter of group[1]; trackBy: trackFilter\" (click)=\"selectFilter(filter)\">\n {{ filter?.name }}\n </div>\n </div>\n </div>\n</mat-card>\n", dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.MatCard, selector: "mat-card", exportAs: ["matCard"] }, { kind: "directive", type: i4.MatListIconCssMatStyler, selector: "[mat-list-icon], [matListIcon]" }, { kind: "directive", type: i5.NiceLoadingDirective, selector: "[niceLoadingOverlay]", inputs: ["niceLoadingOverlay"] }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i7.MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: i8.NiceFilterGroupIconPipe, name: "niceFilterGroupIcon" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
43
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: NiceAdvancedFilterSelectionComponent, decorators: [{
|
|
44
|
+
type: Component,
|
|
45
|
+
args: [{ selector: "nice-advanced-filter-selection", encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<mat-card class=\"flex flex-row flex-wrap filter-selection-container\" [niceLoadingOverlay]=\"loading$ | async\">\n <div class=\"grid grid-cols-1 md:grid-cols-2 gap-4\" *ngIf=\"filterGroups$ | async as filterGroups\">\n <div class=\"flex flex-col\" *ngFor=\"let group of filterGroups; trackBy: trackGroups\">\n <div class=\"filter-group flex items-center gap-4 pb-4\">\n <ng-container *ngIf=\"group[0].key | niceFilterGroupIcon as icon\">\n <i mat-list-icon class=\"group-icon fal\" [ngClass]=\"icon.class\" *ngIf=\"icon.class\"></i>\n <mat-icon mat-list-icon class=\"group-icon\" [svgIcon]=\"icon.svgIcon\" *ngIf=\"icon.svgIcon\"></mat-icon>\n <mat-icon mat-list-icon class=\"group-icon\" *ngIf=\"icon.matIcon\">{{ icon.matIcon }}</mat-icon>\n </ng-container>\n\n <strong class=\"group-name\">{{ group[0].name }}</strong>\n </div>\n\n <div class=\"filter-item\" matRipple *ngFor=\"let filter of group[1]; trackBy: trackFilter\" (click)=\"selectFilter(filter)\">\n {{ filter?.name }}\n </div>\n </div>\n </div>\n</mat-card>\n" }]
|
|
46
|
+
}], ctorParameters: function () { return [{ type: i1.NiceFilterViewQuery }]; }, propDecorators: { filterSelected: [{
|
|
47
|
+
type: Output
|
|
48
|
+
}] } });
|
|
49
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLXNlbGVjdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uaWNlLWRhdGEtZmlsdGVyLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvbmljZS1maWx0ZXItdmlldy9jb21wb25lbnRzL2FkdmFuY2VkLWZpbHRlcnMvZmlsdGVyLXNlbGVjdGlvbi9maWx0ZXItc2VsZWN0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25pY2UtZGF0YS1maWx0ZXIta2l0L3NyYy9saWIvY29tcG9uZW50cy9uaWNlLWZpbHRlci12aWV3L2NvbXBvbmVudHMvYWR2YW5jZWQtZmlsdGVycy9maWx0ZXItc2VsZWN0aW9uL2ZpbHRlci1zZWxlY3Rpb24udGVtcGxhdGUuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBUyxNQUFNLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkgsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVyQyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQzs7Ozs7Ozs7OztBQVE1RSxNQUFNLE9BQU8sb0NBQW9DO0lBc0I3QyxZQUFvQixLQUEwQjtRQUExQixVQUFLLEdBQUwsS0FBSyxDQUFxQjtRQXBCdkMsbUJBQWMsR0FBRyxJQUFJLFlBQVksRUFBNEIsQ0FBQztRQUU5RCxhQUFRLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyx5QkFBeUIsRUFBRSxDQUFDO1FBQ2xELGtCQUFhLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxrQkFBa0IsRUFBRSxDQUFDLElBQUksQ0FDdkQsR0FBRyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUU7WUFDWCxNQUFNLE1BQU0sR0FBRyxVQUFVLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUM7WUFFL0UsTUFBTSxNQUFNLEdBQTZELEVBQUUsQ0FBQztZQUM1RSxLQUFLLE1BQU0sS0FBSyxJQUFJLE1BQU0sRUFBRTtnQkFDeEIsSUFBSSxDQUFDLEtBQUssRUFBRTtvQkFDUixTQUFTO2lCQUNaO2dCQUVELE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxLQUFLLEVBQUUsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLEVBQUUsR0FBRyxLQUFLLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDeEU7WUFFRCxPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUM5RCxDQUFDLENBQUMsQ0FDTCxDQUFDO0lBRStDLENBQUM7SUFFM0MsWUFBWSxDQUFDLHdCQUFrRDtRQUNsRSxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO0lBQ3ZELENBQUM7SUFFTSxXQUFXLENBQUMsS0FBYSxFQUFFLEtBQTZEO1FBQzNGLE9BQU8sS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsSUFBSSxLQUFLLENBQUM7SUFDbEMsQ0FBQztJQUVNLFdBQVcsQ0FBQyxLQUFhLEVBQUUsS0FBK0I7UUFDN0QsT0FBTyxLQUFLLENBQUMsRUFBRSxJQUFJLEtBQUssQ0FBQztJQUM3QixDQUFDOztpSUFsQ1Esb0NBQW9DO3FIQUFwQyxvQ0FBb0MscUhDWmpELHlyQ0FtQkE7MkZEUGEsb0NBQW9DO2tCQU5oRCxTQUFTOytCQUNJLGdDQUFnQyxpQkFFM0IsaUJBQWlCLENBQUMsSUFBSSxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTTswR0FJeEMsY0FBYztzQkFEcEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgQXJyYXlVdGlscyB9IGZyb20gXCJAcmVjdXJzeXZlL25pY2UtdWkta2l0LnYyXCI7XG5pbXBvcnQgeyBtYXAgfSBmcm9tIFwicnhqcy9vcGVyYXRvcnNcIjtcbmltcG9ydCB7IEZpbHRlckNvbmZpZ3VyYXRpb25Nb2RlbCwgRmlsdGVyR3JvdXBDb25maWd1cmF0aW9uIH0gZnJvbSBcIi4uLy4uLy4uLy4uLy4uL21vZGVscy9maWx0ZXIubW9kZWxcIjtcbmltcG9ydCB7IE5pY2VGaWx0ZXJWaWV3UXVlcnkgfSBmcm9tIFwiLi4vLi4vLi4vc3RvcmUvbmljZS1maWx0ZXItdmlldy5xdWVyeVwiO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogXCJuaWNlLWFkdmFuY2VkLWZpbHRlci1zZWxlY3Rpb25cIixcbiAgICB0ZW1wbGF0ZVVybDogXCJmaWx0ZXItc2VsZWN0aW9uLnRlbXBsYXRlLmh0bWxcIixcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIE5pY2VBZHZhbmNlZEZpbHRlclNlbGVjdGlvbkNvbXBvbmVudCB7XG4gICAgQE91dHB1dCgpXG4gICAgcHVibGljIGZpbHRlclNlbGVjdGVkID0gbmV3IEV2ZW50RW1pdHRlcjxGaWx0ZXJDb25maWd1cmF0aW9uTW9kZWw+KCk7XG5cbiAgICBwdWJsaWMgbG9hZGluZyQgPSB0aGlzLnF1ZXJ5LnNlbGVjdEZpbHRlckNvbmZpZ0xvYWRpbmcoKTtcbiAgICBwdWJsaWMgZmlsdGVyR3JvdXBzJCA9IHRoaXMucXVlcnkuc2VsZWN0RmlsdGVyQ29uZmlnKCkucGlwZShcbiAgICAgICAgbWFwKChjb25maWcpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGdyb3VwcyA9IEFycmF5VXRpbHMudW5pcXVlT2JqZWN0cyhjb25maWcubWFwKHggPT4geC5ncm91cCksIHggPT4geD8ua2V5KTtcblxuICAgICAgICAgICAgY29uc3QgcmVzdWx0OiBbRmlsdGVyR3JvdXBDb25maWd1cmF0aW9uLCBGaWx0ZXJDb25maWd1cmF0aW9uTW9kZWxbXV1bXSA9IFtdO1xuICAgICAgICAgICAgZm9yIChjb25zdCBncm91cCBvZiBncm91cHMpIHtcbiAgICAgICAgICAgICAgICBpZiAoIWdyb3VwKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHJlc3VsdC5wdXNoKFtncm91cCwgY29uZmlnLmZpbHRlcih4ID0+IHguZ3JvdXA/LmtleSA9PT0gZ3JvdXAua2V5KV0pO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICByZXR1cm4gcmVzdWx0LnNvcnQoKFssIGFdLCBbLCBiXSkgPT4gYi5sZW5ndGggLSBhLmxlbmd0aCk7XG4gICAgICAgIH0pXG4gICAgKTtcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgcXVlcnk6IE5pY2VGaWx0ZXJWaWV3UXVlcnkpIHt9XG5cbiAgICBwdWJsaWMgc2VsZWN0RmlsdGVyKGZpbHRlckNvbmZpZ3VyYXRpb25Nb2RlbDogRmlsdGVyQ29uZmlndXJhdGlvbk1vZGVsKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZmlsdGVyU2VsZWN0ZWQuZW1pdChmaWx0ZXJDb25maWd1cmF0aW9uTW9kZWwpO1xuICAgIH1cblxuICAgIHB1YmxpYyB0cmFja0dyb3VwcyhpbmRleDogbnVtYmVyLCB2YWx1ZTogW0ZpbHRlckdyb3VwQ29uZmlndXJhdGlvbiwgRmlsdGVyQ29uZmlndXJhdGlvbk1vZGVsW11dKTogYW55IHtcbiAgICAgICAgcmV0dXJuIHZhbHVlWzBdPy5rZXkgPz8gaW5kZXg7XG4gICAgfVxuXG4gICAgcHVibGljIHRyYWNrRmlsdGVyKGluZGV4OiBudW1iZXIsIHZhbHVlOiBGaWx0ZXJDb25maWd1cmF0aW9uTW9kZWwpOiBhbnkge1xuICAgICAgICByZXR1cm4gdmFsdWUuaWQgPz8gaW5kZXg7XG4gICAgfVxufVxuIiwiPG1hdC1jYXJkIGNsYXNzPVwiZmxleCBmbGV4LXJvdyBmbGV4LXdyYXAgZmlsdGVyLXNlbGVjdGlvbi1jb250YWluZXJcIiBbbmljZUxvYWRpbmdPdmVybGF5XT1cImxvYWRpbmckIHwgYXN5bmNcIj5cbiAgICA8ZGl2IGNsYXNzPVwiZ3JpZCBncmlkLWNvbHMtMSBtZDpncmlkLWNvbHMtMiBnYXAtNFwiICpuZ0lmPVwiZmlsdGVyR3JvdXBzJCB8IGFzeW5jIGFzIGZpbHRlckdyb3Vwc1wiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LWNvbFwiICpuZ0Zvcj1cImxldCBncm91cCBvZiBmaWx0ZXJHcm91cHM7IHRyYWNrQnk6IHRyYWNrR3JvdXBzXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmlsdGVyLWdyb3VwIGZsZXggaXRlbXMtY2VudGVyIGdhcC00IHBiLTRcIj5cbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZ3JvdXBbMF0ua2V5IHwgbmljZUZpbHRlckdyb3VwSWNvbiBhcyBpY29uXCI+XG4gICAgICAgICAgICAgICAgICAgIDxpIG1hdC1saXN0LWljb24gY2xhc3M9XCJncm91cC1pY29uIGZhbFwiIFtuZ0NsYXNzXT1cImljb24uY2xhc3NcIiAqbmdJZj1cImljb24uY2xhc3NcIj48L2k+XG4gICAgICAgICAgICAgICAgICAgIDxtYXQtaWNvbiBtYXQtbGlzdC1pY29uIGNsYXNzPVwiZ3JvdXAtaWNvblwiIFtzdmdJY29uXT1cImljb24uc3ZnSWNvblwiICpuZ0lmPVwiaWNvbi5zdmdJY29uXCI+PC9tYXQtaWNvbj5cbiAgICAgICAgICAgICAgICAgICAgPG1hdC1pY29uIG1hdC1saXN0LWljb24gY2xhc3M9XCJncm91cC1pY29uXCIgKm5nSWY9XCJpY29uLm1hdEljb25cIj57eyBpY29uLm1hdEljb24gfX08L21hdC1pY29uPlxuICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgICAgICAgICAgPHN0cm9uZyBjbGFzcz1cImdyb3VwLW5hbWVcIj57eyBncm91cFswXS5uYW1lIH19PC9zdHJvbmc+XG4gICAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZpbHRlci1pdGVtXCIgbWF0UmlwcGxlICpuZ0Zvcj1cImxldCBmaWx0ZXIgb2YgZ3JvdXBbMV07IHRyYWNrQnk6IHRyYWNrRmlsdGVyXCIgIChjbGljayk9XCJzZWxlY3RGaWx0ZXIoZmlsdGVyKVwiPlxuICAgICAgICAgICAgICAgIHt7IGZpbHRlcj8ubmFtZSB9fVxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuPC9tYXQtY2FyZD5cbiJdfQ==
|
package/esm2020/lib/components/nice-filter-view/components/advanced-filters/models/icons.model.mjs
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
export const defaultIcons = {
|
|
2
|
+
add: {
|
|
3
|
+
matIcon: "add"
|
|
4
|
+
},
|
|
5
|
+
close: {
|
|
6
|
+
matIcon: "close"
|
|
7
|
+
},
|
|
8
|
+
refresh: {
|
|
9
|
+
matIcon: "refresh"
|
|
10
|
+
},
|
|
11
|
+
delete: {
|
|
12
|
+
matIcon: "delete"
|
|
13
|
+
},
|
|
14
|
+
arrowDown: {
|
|
15
|
+
matIcon: "arrow_drop_down"
|
|
16
|
+
},
|
|
17
|
+
datePicker: {
|
|
18
|
+
matIcon: "today"
|
|
19
|
+
}
|
|
20
|
+
};
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbnMubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uaWNlLWRhdGEtZmlsdGVyLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvbmljZS1maWx0ZXItdmlldy9jb21wb25lbnRzL2FkdmFuY2VkLWZpbHRlcnMvbW9kZWxzL2ljb25zLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVdBLE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBa0M7SUFDdkQsR0FBRyxFQUFFO1FBQ0QsT0FBTyxFQUFFLEtBQUs7S0FDakI7SUFDRCxLQUFLLEVBQUU7UUFDSCxPQUFPLEVBQUUsT0FBTztLQUNuQjtJQUNELE9BQU8sRUFBRTtRQUNMLE9BQU8sRUFBRSxTQUFTO0tBQ3JCO0lBQ0QsTUFBTSxFQUFFO1FBQ0osT0FBTyxFQUFFLFFBQVE7S0FDcEI7SUFDRCxTQUFTLEVBQUU7UUFDUCxPQUFPLEVBQUUsaUJBQWlCO0tBQzdCO0lBQ0QsVUFBVSxFQUFFO1FBQ1IsT0FBTyxFQUFFLE9BQU87S0FDbkI7Q0FDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmljZUJhc2VMaXN0SWNvbnMgfSBmcm9tIFwiLi4vLi4vLi4vLi4vYmFzZS1saXN0L21vZGVscy9pY29ucy5tb2RlbFwiO1xuXG5leHBvcnQgaW50ZXJmYWNlIE5pY2VBZHZhbmNlZEZpbHRlckljb25PcHRpb25zIHtcbiAgICBhZGQ/OiBOaWNlQmFzZUxpc3RJY29ucztcbiAgICBjbG9zZT86IE5pY2VCYXNlTGlzdEljb25zO1xuICAgIHJlZnJlc2g/OiBOaWNlQmFzZUxpc3RJY29ucztcbiAgICBkZWxldGU/OiBOaWNlQmFzZUxpc3RJY29ucztcbiAgICBhcnJvd0Rvd24/OiBOaWNlQmFzZUxpc3RJY29ucztcbiAgICBkYXRlUGlja2VyPzogTmljZUJhc2VMaXN0SWNvbnM7XG59XG5cbmV4cG9ydCBjb25zdCBkZWZhdWx0SWNvbnM6IE5pY2VBZHZhbmNlZEZpbHRlckljb25PcHRpb25zID0ge1xuICAgIGFkZDoge1xuICAgICAgICBtYXRJY29uOiBcImFkZFwiXG4gICAgfSxcbiAgICBjbG9zZToge1xuICAgICAgICBtYXRJY29uOiBcImNsb3NlXCJcbiAgICB9LFxuICAgIHJlZnJlc2g6IHtcbiAgICAgICAgbWF0SWNvbjogXCJyZWZyZXNoXCJcbiAgICB9LFxuICAgIGRlbGV0ZToge1xuICAgICAgICBtYXRJY29uOiBcImRlbGV0ZVwiXG4gICAgfSxcbiAgICBhcnJvd0Rvd246IHtcbiAgICAgICAgbWF0SWNvbjogXCJhcnJvd19kcm9wX2Rvd25cIlxuICAgIH0sXG4gICAgZGF0ZVBpY2tlcjoge1xuICAgICAgICBtYXRJY29uOiBcInRvZGF5XCJcbiAgICB9XG59O1xuIl19
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export * from "./button/advanced-filters-button.component";
|
|
2
|
+
export * from "./advanced-filters.component";
|
|
3
|
+
export * from "./advanced-filters.module";
|
|
4
|
+
export * from "./advanced-filters.form";
|
|
5
|
+
export * from "./advanced-filters-trigger.directive";
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25pY2UtZGF0YS1maWx0ZXIta2l0L3NyYy9saWIvY29tcG9uZW50cy9uaWNlLWZpbHRlci12aWV3L2NvbXBvbmVudHMvYWR2YW5jZWQtZmlsdGVycy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsNENBQTRDLENBQUM7QUFDM0QsY0FBYyw4QkFBOEIsQ0FBQztBQUM3QyxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYyxzQ0FBc0MsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gXCIuL2J1dHRvbi9hZHZhbmNlZC1maWx0ZXJzLWJ1dHRvbi5jb21wb25lbnRcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2FkdmFuY2VkLWZpbHRlcnMuY29tcG9uZW50XCI7XG5leHBvcnQgKiBmcm9tIFwiLi9hZHZhbmNlZC1maWx0ZXJzLm1vZHVsZVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vYWR2YW5jZWQtZmlsdGVycy5mb3JtXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9hZHZhbmNlZC1maWx0ZXJzLXRyaWdnZXIuZGlyZWN0aXZlXCI7XG4iXX0=
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { Component, forwardRef, Inject, Optional, ViewEncapsulation } from "@angular/core";
|
|
2
|
+
import { NG_VALUE_ACCESSOR } from "@angular/forms";
|
|
3
|
+
import { ADVANCED_FILTER_ICONS } from "../../../advanced-filters.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 NiceAdvancedDateFilterComponent extends FilterComponent {
|
|
12
|
+
constructor(icons) {
|
|
13
|
+
super();
|
|
14
|
+
this.icons = icons;
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
NiceAdvancedDateFilterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: NiceAdvancedDateFilterComponent, deps: [{ token: ADVANCED_FILTER_ICONS, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
18
|
+
NiceAdvancedDateFilterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.3", type: NiceAdvancedDateFilterComponent, selector: "nice-advanced-date-filter", providers: [
|
|
19
|
+
{
|
|
20
|
+
provide: NG_VALUE_ACCESSOR,
|
|
21
|
+
useExisting: forwardRef(() => NiceAdvancedDateFilterComponent),
|
|
22
|
+
multi: true
|
|
23
|
+
}
|
|
24
|
+
], usesInheritance: true, ngImport: i0, template: "<mat-form-field appearance=\"outline\" 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: "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: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3.MatSuffix, selector: "[matSuffix]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { 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: "14.2.3", ngImport: i0, type: NiceAdvancedDateFilterComponent, decorators: [{
|
|
26
|
+
type: Component,
|
|
27
|
+
args: [{ selector: "nice-advanced-date-filter", encapsulation: ViewEncapsulation.None, providers: [
|
|
28
|
+
{
|
|
29
|
+
provide: NG_VALUE_ACCESSOR,
|
|
30
|
+
useExisting: forwardRef(() => NiceAdvancedDateFilterComponent),
|
|
31
|
+
multi: true
|
|
32
|
+
}
|
|
33
|
+
], template: "<mat-form-field appearance=\"outline\" 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: [ADVANCED_FILTER_ICONS]
|
|
39
|
+
}] }]; } });
|
|
40
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1maWx0ZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmljZS1kYXRhLWZpbHRlci1raXQvc3JjL2xpYi9jb21wb25lbnRzL25pY2UtZmlsdGVyLXZpZXcvY29tcG9uZW50cy9hZHZhbmNlZC1maWx0ZXJzL3J1bGUvY29tcG9uZW50cy9kYXRlL2RhdGUtZmlsdGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25pY2UtZGF0YS1maWx0ZXIta2l0L3NyYy9saWIvY29tcG9uZW50cy9uaWNlLWZpbHRlci12aWV3L2NvbXBvbmVudHMvYWR2YW5jZWQtZmlsdGVycy9ydWxlL2NvbXBvbmVudHMvZGF0ZS9kYXRlLWZpbHRlci50ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0YsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbkQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFFM0UsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDOzs7Ozs7O0FBY3RELE1BQU0sT0FBTywrQkFBZ0MsU0FBUSxlQUF1QjtJQUN4RSxZQUE4RCxLQUFvQztRQUM5RixLQUFLLEVBQUUsQ0FBQztRQURrRCxVQUFLLEdBQUwsS0FBSyxDQUErQjtJQUVsRyxDQUFDOzs0SEFIUSwrQkFBK0Isa0JBQ1IscUJBQXFCO2dIQUQ1QywrQkFBK0Isb0RBUjdCO1FBQ1A7WUFDSSxPQUFPLEVBQUUsaUJBQWlCO1lBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsK0JBQStCLENBQUM7WUFDOUQsS0FBSyxFQUFFLElBQUk7U0FDZDtLQUNKLGlEQ2hCTCxvY0FPQTsyRkRXYSwrQkFBK0I7a0JBWjNDLFNBQVM7K0JBQ0ksMkJBQTJCLGlCQUV0QixpQkFBaUIsQ0FBQyxJQUFJLGFBQzFCO3dCQUNQOzRCQUNJLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLGdDQUFnQyxDQUFDOzRCQUM5RCxLQUFLLEVBQUUsSUFBSTt5QkFDZDtxQkFDSjs7MEJBR1ksUUFBUTs7MEJBQUksTUFBTTsyQkFBQyxxQkFBcUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIGZvcndhcmRSZWYsIEluamVjdCwgT3B0aW9uYWwsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XG5pbXBvcnQgeyBBRFZBTkNFRF9GSUxURVJfSUNPTlMgfSBmcm9tIFwiLi4vLi4vLi4vYWR2YW5jZWQtZmlsdGVycy5jb25zdGFudFwiO1xuaW1wb3J0IHsgTmljZUFkdmFuY2VkRmlsdGVySWNvbk9wdGlvbnMgfSBmcm9tIFwiLi4vLi4vLi4vbW9kZWxzL2ljb25zLm1vZGVsXCI7XG5pbXBvcnQgeyBGaWx0ZXJDb21wb25lbnQgfSBmcm9tIFwiLi4vZmlsdGVyLmNvbXBvbmVudFwiO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogXCJuaWNlLWFkdmFuY2VkLWRhdGUtZmlsdGVyXCIsXG4gICAgdGVtcGxhdGVVcmw6IFwiZGF0ZS1maWx0ZXIudGVtcGxhdGUuaHRtbFwiLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gTmljZUFkdmFuY2VkRGF0ZUZpbHRlckNvbXBvbmVudCksXG4gICAgICAgICAgICBtdWx0aTogdHJ1ZVxuICAgICAgICB9XG4gICAgXVxufSlcbmV4cG9ydCBjbGFzcyBOaWNlQWR2YW5jZWREYXRlRmlsdGVyQ29tcG9uZW50IGV4dGVuZHMgRmlsdGVyQ29tcG9uZW50PHN0cmluZz4ge1xuICAgIGNvbnN0cnVjdG9yKEBPcHRpb25hbCgpIEBJbmplY3QoQURWQU5DRURfRklMVEVSX0lDT05TKSBwdWJsaWMgaWNvbnM6IE5pY2VBZHZhbmNlZEZpbHRlckljb25PcHRpb25zKSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgfVxufVxuIiwiPG1hdC1mb3JtLWZpZWxkIGFwcGVhcmFuY2U9XCJvdXRsaW5lXCIgY2xhc3M9XCJmbGV4LWF1dG9cIj5cbiAgICA8aW5wdXQgbWF0SW5wdXQgW21hdERhdGVwaWNrZXJdPVwicGlja2VyXCIgW25nTW9kZWxdPVwidmFsdWVcIiAobmdNb2RlbENoYW5nZSk9XCJvblZhbHVlQ2hhbmdlKCRldmVudClcIiAvPlxuICAgIDxtYXQtZGF0ZXBpY2tlci10b2dnbGUgbWF0U3VmZml4IFtmb3JdPVwicGlja2VyXCI+XG4gICAgICAgIDxtYXQtaWNvbiBtYXREYXRlcGlja2VyVG9nZ2xlSWNvbiBbc3ZnSWNvbl09XCJpY29ucy5kYXRlUGlja2VyLnN2Z0ljb25cIj57eyBpY29ucy5kYXRlUGlja2VyLm1hdEljb24gfX08L21hdC1pY29uPlxuICAgIDwvbWF0LWRhdGVwaWNrZXItdG9nZ2xlPlxuICAgIDxtYXQtZGF0ZXBpY2tlciAjcGlja2VyPjwvbWF0LWRhdGVwaWNrZXI+XG48L21hdC1mb3JtLWZpZWxkPlxuIl19
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { Component } from "@angular/core";
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class FilterComponent {
|
|
4
|
+
constructor() {
|
|
5
|
+
this.propagateChanges = (_) => { };
|
|
6
|
+
}
|
|
7
|
+
get value() {
|
|
8
|
+
return this._value;
|
|
9
|
+
}
|
|
10
|
+
registerOnTouched(fn) {
|
|
11
|
+
// NO-OP
|
|
12
|
+
}
|
|
13
|
+
registerOnChange(fn) {
|
|
14
|
+
this.propagateChanges = fn;
|
|
15
|
+
}
|
|
16
|
+
writeValue(value) {
|
|
17
|
+
this._value = value;
|
|
18
|
+
}
|
|
19
|
+
onValueChange(value) {
|
|
20
|
+
this.propagateChanges(value);
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
FilterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: FilterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
24
|
+
FilterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.3", type: FilterComponent, selector: "ng-component", ngImport: i0, template: ``, isInline: true });
|
|
25
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: FilterComponent, decorators: [{
|
|
26
|
+
type: Component,
|
|
27
|
+
args: [{ template: `` }]
|
|
28
|
+
}] });
|
|
29
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25pY2UtZGF0YS1maWx0ZXIta2l0L3NyYy9saWIvY29tcG9uZW50cy9uaWNlLWZpbHRlci12aWV3L2NvbXBvbmVudHMvYWR2YW5jZWQtZmlsdGVycy9ydWxlL2NvbXBvbmVudHMvZmlsdGVyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUkxQyxNQUFNLE9BQU8sZUFBZTtJQUQ1QjtRQVFjLHFCQUFnQixHQUFHLENBQUMsQ0FBSSxFQUFFLEVBQUUsR0FBRSxDQUFDLENBQUM7S0FpQjdDO0lBckJHLElBQVcsS0FBSztRQUNaLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUN2QixDQUFDO0lBSU0saUJBQWlCLENBQUMsRUFBTztRQUM1QixRQUFRO0lBQ1osQ0FBQztJQUVNLGdCQUFnQixDQUFDLEVBQWtCO1FBQ3RDLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxFQUFFLENBQUM7SUFDL0IsQ0FBQztJQUVNLFVBQVUsQ0FBQyxLQUFRO1FBQ3RCLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO0lBQ3hCLENBQUM7SUFFTSxhQUFhLENBQUMsS0FBUTtRQUN6QixJQUFJLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDakMsQ0FBQzs7NEdBdkJRLGVBQWU7Z0dBQWYsZUFBZSxvREFETCxFQUFFOzJGQUNaLGVBQWU7a0JBRDNCLFNBQVM7bUJBQUMsRUFBRSxRQUFRLEVBQUUsRUFBRSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XG5cbkBDb21wb25lbnQoeyB0ZW1wbGF0ZTogYGAgfSlcbmV4cG9ydCBjbGFzcyBGaWx0ZXJDb21wb25lbnQ8VD4gaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciB7XG4gICAgcHJpdmF0ZSBfdmFsdWU6IFQ7XG5cbiAgICBwdWJsaWMgZ2V0IHZhbHVlKCk6IFQgfCB1bmRlZmluZWQge1xuICAgICAgICByZXR1cm4gdGhpcy5fdmFsdWU7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIHByb3BhZ2F0ZUNoYW5nZXMgPSAoXzogVCkgPT4ge307XG5cbiAgICBwdWJsaWMgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xuICAgICAgICAvLyBOTy1PUFxuICAgIH1cblxuICAgIHB1YmxpYyByZWdpc3Rlck9uQ2hhbmdlKGZuOiAoXzogVCkgPT4gdm9pZCk6IHZvaWQge1xuICAgICAgICB0aGlzLnByb3BhZ2F0ZUNoYW5nZXMgPSBmbjtcbiAgICB9XG5cbiAgICBwdWJsaWMgd3JpdGVWYWx1ZSh2YWx1ZTogVCk6IHZvaWQge1xuICAgICAgICB0aGlzLl92YWx1ZSA9IHZhbHVlO1xuICAgIH1cblxuICAgIHB1YmxpYyBvblZhbHVlQ2hhbmdlKHZhbHVlOiBUKTogdm9pZCB7XG4gICAgICAgIHRoaXMucHJvcGFnYXRlQ2hhbmdlcyh2YWx1ZSk7XG4gICAgfVxufVxuIl19
|
|
@@ -0,0 +1,28 @@
|
|
|
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 NiceAdvancedNumberFilterComponent extends FilterComponent {
|
|
9
|
+
}
|
|
10
|
+
NiceAdvancedNumberFilterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: NiceAdvancedNumberFilterComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
11
|
+
NiceAdvancedNumberFilterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.3", type: NiceAdvancedNumberFilterComponent, selector: "nice-advanced-number-filter", providers: [
|
|
12
|
+
{
|
|
13
|
+
provide: NG_VALUE_ACCESSOR,
|
|
14
|
+
useExisting: forwardRef(() => NiceAdvancedNumberFilterComponent),
|
|
15
|
+
multi: true
|
|
16
|
+
}
|
|
17
|
+
], usesInheritance: true, ngImport: i0, template: "<mat-form-field appearance=\"outline\" 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: "component", type: i2.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], 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"] }], encapsulation: i0.ViewEncapsulation.None });
|
|
18
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: NiceAdvancedNumberFilterComponent, decorators: [{
|
|
19
|
+
type: Component,
|
|
20
|
+
args: [{ selector: "nice-advanced-number-filter", encapsulation: ViewEncapsulation.None, providers: [
|
|
21
|
+
{
|
|
22
|
+
provide: NG_VALUE_ACCESSOR,
|
|
23
|
+
useExisting: forwardRef(() => NiceAdvancedNumberFilterComponent),
|
|
24
|
+
multi: true
|
|
25
|
+
}
|
|
26
|
+
], template: "<mat-form-field appearance=\"outline\" 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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtYmVyLWZpbHRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uaWNlLWRhdGEtZmlsdGVyLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvbmljZS1maWx0ZXItdmlldy9jb21wb25lbnRzL2FkdmFuY2VkLWZpbHRlcnMvcnVsZS9jb21wb25lbnRzL251bWJlci9udW1iZXItZmlsdGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25pY2UtZGF0YS1maWx0ZXIta2l0L3NyYy9saWIvY29tcG9uZW50cy9uaWNlLWZpbHRlci12aWV3L2NvbXBvbmVudHMvYWR2YW5jZWQtZmlsdGVycy9ydWxlL2NvbXBvbmVudHMvbnVtYmVyL251bWJlci1maWx0ZXIudGVtcGxhdGUuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNuRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7Ozs7O0FBY3RELE1BQU0sT0FBTyxpQ0FBa0MsU0FBUSxlQUF1Qjs7OEhBQWpFLGlDQUFpQztrSEFBakMsaUNBQWlDLHNEQVIvQjtRQUNQO1lBQ0ksT0FBTyxFQUFFLGlCQUFpQjtZQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGlDQUFpQyxDQUFDO1lBQ2hFLEtBQUssRUFBRSxJQUFJO1NBQ2Q7S0FDSixpRENkTCx3TEFHQTsyRkRhYSxpQ0FBaUM7a0JBWjdDLFNBQVM7K0JBQ0ksNkJBQTZCLGlCQUV4QixpQkFBaUIsQ0FBQyxJQUFJLGFBQzFCO3dCQUNQOzRCQUNJLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLGtDQUFrQyxDQUFDOzRCQUNoRSxLQUFLLEVBQUUsSUFBSTt5QkFDZDtxQkFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgZm9yd2FyZFJlZiwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcbmltcG9ydCB7IEZpbHRlckNvbXBvbmVudCB9IGZyb20gXCIuLi9maWx0ZXIuY29tcG9uZW50XCI7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiBcIm5pY2UtYWR2YW5jZWQtbnVtYmVyLWZpbHRlclwiLFxuICAgIHRlbXBsYXRlVXJsOiBcIm51bWJlci1maWx0ZXIudGVtcGxhdGUuaHRtbFwiLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gTmljZUFkdmFuY2VkTnVtYmVyRmlsdGVyQ29tcG9uZW50KSxcbiAgICAgICAgICAgIG11bHRpOiB0cnVlXG4gICAgICAgIH1cbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIE5pY2VBZHZhbmNlZE51bWJlckZpbHRlckNvbXBvbmVudCBleHRlbmRzIEZpbHRlckNvbXBvbmVudDxudW1iZXI+IHt9XG4iLCI8bWF0LWZvcm0tZmllbGQgYXBwZWFyYW5jZT1cIm91dGxpbmVcIiBjbGFzcz1cImZsZXgtYXV0b1wiPlxuICAgIDxpbnB1dCBtYXRJbnB1dCBbbmdNb2RlbF09XCJ2YWx1ZVwiIChuZ01vZGVsQ2hhbmdlKT1cIm9uVmFsdWVDaGFuZ2UoJGV2ZW50KVwiIHR5cGU9XCJudW1iZXJcIiAvPlxuPC9tYXQtZm9ybS1maWVsZD5cbiJdfQ==
|
|
@@ -0,0 +1,30 @@
|
|
|
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 NiceAdvancedRadioFilterComponent extends FilterComponent {
|
|
9
|
+
}
|
|
10
|
+
NiceAdvancedRadioFilterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: NiceAdvancedRadioFilterComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
11
|
+
NiceAdvancedRadioFilterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.3", type: NiceAdvancedRadioFilterComponent, selector: "nice-advanced-radio-filter", inputs: { filterConfig: "filterConfig" }, providers: [
|
|
12
|
+
{
|
|
13
|
+
provide: NG_VALUE_ACCESSOR,
|
|
14
|
+
useExisting: forwardRef(() => NiceAdvancedRadioFilterComponent),
|
|
15
|
+
multi: true
|
|
16
|
+
}
|
|
17
|
+
], usesInheritance: true, ngImport: i0, template: "<mat-radio-group appearance=\"outline\" 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: i3.MatRadioGroup, selector: "mat-radio-group", exportAs: ["matRadioGroup"] }, { kind: "component", type: i3.MatRadioButton, selector: "mat-radio-button", inputs: ["disableRipple", "tabIndex"], exportAs: ["matRadioButton"] }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], encapsulation: i0.ViewEncapsulation.None });
|
|
18
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: NiceAdvancedRadioFilterComponent, decorators: [{
|
|
19
|
+
type: Component,
|
|
20
|
+
args: [{ selector: "nice-advanced-radio-filter", encapsulation: ViewEncapsulation.None, providers: [
|
|
21
|
+
{
|
|
22
|
+
provide: NG_VALUE_ACCESSOR,
|
|
23
|
+
useExisting: forwardRef(() => NiceAdvancedRadioFilterComponent),
|
|
24
|
+
multi: true
|
|
25
|
+
}
|
|
26
|
+
], template: "<mat-radio-group appearance=\"outline\" 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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW8tZmlsdGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25pY2UtZGF0YS1maWx0ZXIta2l0L3NyYy9saWIvY29tcG9uZW50cy9uaWNlLWZpbHRlci12aWV3L2NvbXBvbmVudHMvYWR2YW5jZWQtZmlsdGVycy9ydWxlL2NvbXBvbmVudHMvcmFkaW8vcmFkaW8tZmlsdGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25pY2UtZGF0YS1maWx0ZXIta2l0L3NyYy9saWIvY29tcG9uZW50cy9uaWNlLWZpbHRlci12aWV3L2NvbXBvbmVudHMvYWR2YW5jZWQtZmlsdGVycy9ydWxlL2NvbXBvbmVudHMvcmFkaW8vcmFkaW8tZmlsdGVyLnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRW5ELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7Ozs7QUFjdEQsTUFBTSxPQUFPLGdDQUFpQyxTQUFRLGVBQXVCOzs2SEFBaEUsZ0NBQWdDO2lIQUFoQyxnQ0FBZ0MsK0ZBUjlCO1FBQ1A7WUFDSSxPQUFPLEVBQUUsaUJBQWlCO1lBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsZ0NBQWdDLENBQUM7WUFDL0QsS0FBSyxFQUFFLElBQUk7U0FDZDtLQUNKLGlEQ2ZMLG9UQUtBOzJGRFlhLGdDQUFnQztrQkFaNUMsU0FBUzsrQkFDSSw0QkFBNEIsaUJBRXZCLGlCQUFpQixDQUFDLElBQUksYUFDMUI7d0JBQ1A7NEJBQ0ksT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsaUNBQWlDLENBQUM7NEJBQy9ELEtBQUssRUFBRSxJQUFJO3lCQUNkO3FCQUNKOzhCQUlNLFlBQVk7c0JBRGxCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIGZvcndhcmRSZWYsIElucHV0LCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xuaW1wb3J0IHsgRmlsdGVyQ29uZmlndXJhdGlvbk1vZGVsIH0gZnJvbSBcIi4uLy4uLy4uLy4uLy4uLy4uLy4uL21vZGVscy9maWx0ZXIubW9kZWxcIjtcbmltcG9ydCB7IEZpbHRlckNvbXBvbmVudCB9IGZyb20gXCIuLi9maWx0ZXIuY29tcG9uZW50XCI7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiBcIm5pY2UtYWR2YW5jZWQtcmFkaW8tZmlsdGVyXCIsXG4gICAgdGVtcGxhdGVVcmw6IFwicmFkaW8tZmlsdGVyLnRlbXBsYXRlLmh0bWxcIixcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IE5pY2VBZHZhbmNlZFJhZGlvRmlsdGVyQ29tcG9uZW50KSxcbiAgICAgICAgICAgIG11bHRpOiB0cnVlXG4gICAgICAgIH1cbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIE5pY2VBZHZhbmNlZFJhZGlvRmlsdGVyQ29tcG9uZW50IGV4dGVuZHMgRmlsdGVyQ29tcG9uZW50PHN0cmluZz4ge1xuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGZpbHRlckNvbmZpZzogRmlsdGVyQ29uZmlndXJhdGlvbk1vZGVsO1xufVxuIiwiPG1hdC1yYWRpby1ncm91cCBhcHBlYXJhbmNlPVwib3V0bGluZVwiIGNsYXNzPVwiZmxleC1hdXRvXCIgW25nTW9kZWxdPVwidmFsdWVcIiAobmdNb2RlbENoYW5nZSk9XCJvblZhbHVlQ2hhbmdlKCRldmVudClcIj5cbiAgICA8bWF0LXJhZGlvLWJ1dHRvbiBjbGFzcz1cIm14LTRcIiAqbmdGb3I9XCJsZXQgb3B0aW9uIG9mIGZpbHRlckNvbmZpZy5vcHRpb25zXCIgW3ZhbHVlXT1cIm9wdGlvbj8ua2V5XCI+XG4gICAgICAgIHt7IG9wdGlvbj8ubmFtZSB9fVxuICAgIDwvbWF0LXJhZGlvLWJ1dHRvbj5cbjwvbWF0LXJhZGlvLWdyb3VwPlxuIl19
|
|
@@ -0,0 +1,87 @@
|
|
|
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 NiceAdvancedSelectFilterComponent 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
|
+
NiceAdvancedSelectFilterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: NiceAdvancedSelectFilterComponent, deps: [{ token: i1.NiceFilterService, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
66
|
+
NiceAdvancedSelectFilterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.3", type: NiceAdvancedSelectFilterComponent, selector: "nice-advanced-select-filter", inputs: { filterConfig: "filterConfig" }, providers: [
|
|
67
|
+
{
|
|
68
|
+
provide: NG_VALUE_ACCESSOR,
|
|
69
|
+
useExisting: forwardRef(() => NiceAdvancedSelectFilterComponent),
|
|
70
|
+
multi: true
|
|
71
|
+
}
|
|
72
|
+
], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<mat-form-field appearance=\"outline\" 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: "component", type: i4.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], 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"] }], encapsulation: i0.ViewEncapsulation.None });
|
|
73
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: NiceAdvancedSelectFilterComponent, decorators: [{
|
|
74
|
+
type: Component,
|
|
75
|
+
args: [{ selector: "nice-advanced-select-filter", encapsulation: ViewEncapsulation.None, providers: [
|
|
76
|
+
{
|
|
77
|
+
provide: NG_VALUE_ACCESSOR,
|
|
78
|
+
useExisting: forwardRef(() => NiceAdvancedSelectFilterComponent),
|
|
79
|
+
multi: true
|
|
80
|
+
}
|
|
81
|
+
], template: "<mat-form-field appearance=\"outline\" 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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LWZpbHRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uaWNlLWRhdGEtZmlsdGVyLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvbmljZS1maWx0ZXItdmlldy9jb21wb25lbnRzL2FkdmFuY2VkLWZpbHRlcnMvcnVsZS9jb21wb25lbnRzL3NlbGVjdC9zZWxlY3QtZmlsdGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25pY2UtZGF0YS1maWx0ZXIta2l0L3NyYy9saWIvY29tcG9uZW50cy9uaWNlLWZpbHRlci12aWV3L2NvbXBvbmVudHMvYWR2YW5jZWQtZmlsdGVycy9ydWxlL2NvbXBvbmVudHMvc2VsZWN0L3NlbGVjdC1maWx0ZXIudGVtcGxhdGUuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQWdDLFFBQVEsRUFBaUIsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkksT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbkQsT0FBTyxFQUFFLEVBQUUsRUFBRSxPQUFPLEVBQWdCLE1BQU0sTUFBTSxDQUFDO0FBQ2pELE9BQU8sRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFekQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sMkRBQTJELENBQUM7QUFDOUYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDOzs7Ozs7O0FBY3RELE1BQU0sT0FBTyxpQ0FBa0MsU0FBUSxlQUF3QjtJQVMzRSxZQUFrQyxhQUFxQztRQUNuRSxLQUFLLEVBQUUsQ0FBQztRQURzQixrQkFBYSxHQUFiLGFBQWEsQ0FBd0I7UUFOaEUsV0FBTSxH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QVE7NENBUGQsWUFBWTtzQkFEbEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgZm9yd2FyZFJlZiwgSW5wdXQsIE9uQ2hhbmdlcywgT25EZXN0cm95LCBPbkluaXQsIE9wdGlvbmFsLCBTaW1wbGVDaGFuZ2VzLCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xuaW1wb3J0IHsgb2YsIFN1YmplY3QsIFN1YnNjcmlwdGlvbiB9IGZyb20gXCJyeGpzXCI7XG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIHN3aXRjaE1hcCB9IGZyb20gXCJyeGpzL29wZXJhdG9yc1wiO1xuaW1wb3J0IHsgRmlsdGVyQ29uZmlndXJhdGlvbk1vZGVsLCBTZWxlY3RGaWx0ZXJWYWx1ZSB9IGZyb20gXCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9tb2RlbHMvZmlsdGVyLm1vZGVsXCI7XG5pbXBvcnQgeyBOaWNlRmlsdGVyU2VydmljZSB9IGZyb20gXCIuLi8uLi8uLi8uLi8uLi8uLi9iYXNlLWxpc3QvcHJvdmlkZXJzL2Jhc2UtZmlsdGVyLnNlcnZpY2VcIjtcbmltcG9ydCB7IEZpbHRlckNvbXBvbmVudCB9IGZyb20gXCIuLi9maWx0ZXIuY29tcG9uZW50XCI7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiBcIm5pY2UtYWR2YW5jZWQtc2VsZWN0LWZpbHRlclwiLFxuICAgIHRlbXBsYXRlVXJsOiBcInNlbGVjdC1maWx0ZXIudGVtcGxhdGUuaHRtbFwiLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gTmljZUFkdmFuY2VkU2VsZWN0RmlsdGVyQ29tcG9uZW50KSxcbiAgICAgICAgICAgIG11bHRpOiB0cnVlXG4gICAgICAgIH1cbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIE5pY2VBZHZhbmNlZFNlbGVjdEZpbHRlckNvbXBvbmVudCBleHRlbmRzIEZpbHRlckNvbXBvbmVudDx1bmtub3duPiBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95LCBPbkNoYW5nZXMge1xuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGZpbHRlckNvbmZpZzogRmlsdGVyQ29uZmlndXJhdGlvbk1vZGVsO1xuICAgIHB1YmxpYyB2YWx1ZXM6IFNlbGVjdEZpbHRlclZhbHVlW10gPSBbXTtcblxuICAgIHB1YmxpYyBzZWFyY2gkID0gbmV3IFN1YmplY3Q8c3RyaW5nPigpO1xuXG4gICAgcHJpdmF0ZSBzZWFyY2hTdWIkOiBTdWJzY3JpcHRpb247XG5cbiAgICBjb25zdHJ1Y3RvcihAT3B0aW9uYWwoKSBwcm90ZWN0ZWQgZmlsdGVyU2VydmljZTogTmljZUZpbHRlclNlcnZpY2U8YW55Pikge1xuICAgICAgICBzdXBlcigpO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBuZ09uSW5pdCgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgaWYgKCF0aGlzLmZpbHRlckNvbmZpZy5sYXp5TG9hZGluZykge1xuICAgICAgICAgICAgdGhpcy52YWx1ZXMgPSB0aGlzLmZpbHRlckNvbmZpZy52YWx1ZXMgYXMgU2VsZWN0RmlsdGVyVmFsdWVbXTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuc2VhcmNoU3ViJCA9IHRoaXMuc2VhcmNoJFxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgZGVib3VuY2VUaW1lKDMwMCksXG4gICAgICAgICAgICAgICAgc3dpdGNoTWFwKHZhbHVlID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuZmlsdGVyQ29uZmlnLmxhenlMb2FkaW5nKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5maWx0ZXJTZXJ2aWNlLnNlYXJjaEZpbHRlclZhbHVlKHRoaXMuZmlsdGVyQ29uZmlnLCB2YWx1ZSk7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gb2YodGhpcy5maWx0ZXJDb25maWcudmFsdWVzIGFzIFNlbGVjdEZpbHRlclZhbHVlW10pO1xuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAuc3Vic2NyaWJlKHZhbHVlcyA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy52YWx1ZXMgPSB2YWx1ZXM7XG4gICAgICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgICAgICBpZiAoXCJmaWx0ZXJDb25maWdcIiBpbiBjaGFuZ2VzKSB7XG4gICAgICAgICAgICBpZiAoIXRoaXMuZmlsdGVyQ29uZmlnLmxhenlMb2FkaW5nKSB7XG4gICAgICAgICAgICAgICAgdGhpcy52YWx1ZXMgPSB0aGlzLmZpbHRlckNvbmZpZy52YWx1ZXMgYXMgU2VsZWN0RmlsdGVyVmFsdWVbXTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhpcy52YWx1ZXMgPSBbXTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgYXN5bmMgc2VhcmNoVmFsdWUoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIGlmICh0aGlzLnZhbHVlICYmICF0aGlzLnZhbHVlcy5maW5kKHYgPT4gdi5pZCA9PT0gdGhpcy52YWx1ZSkpIHtcbiAgICAgICAgICAgIGNvbnN0IHZhbHVlID0gYXdhaXQgdGhpcy5maWx0ZXJTZXJ2aWNlXG4gICAgICAgICAgICAgICAgLnNlYXJjaEZpbHRlclJlc291cmNlVmFsdWUodGhpcy5maWx0ZXJDb25maWcsIHRoaXMudmFsdWUgYXMgbnVtYmVyKVxuICAgICAgICAgICAgICAgIC50b1Byb21pc2UoKTtcbiAgICAgICAgICAgIHRoaXMudmFsdWVzID0gWy4uLnRoaXMudmFsdWVzLCB2YWx1ZV07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgb25WYWx1ZUNoYW5nZSh2YWx1ZTogdW5rbm93bik6IHZvaWQge1xuICAgICAgICBzdXBlci5vblZhbHVlQ2hhbmdlKHZhbHVlKTtcbiAgICAgICAgdGhpcy5zZWFyY2hWYWx1ZSgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zZWFyY2hTdWIkLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuXG4gICAgcHVibGljIHdyaXRlVmFsdWUodmFsdWU6IHVua25vd24pOiB2b2lkIHtcbiAgICAgICAgc3VwZXIud3JpdGVWYWx1ZSh2YWx1ZSk7XG4gICAgICAgIHRoaXMuc2VhcmNoVmFsdWUoKTtcbiAgICB9XG59XG4iLCI8bWF0LWZvcm0tZmllbGQgYXBwZWFyYW5jZT1cIm91dGxpbmVcIiBjbGFzcz1cImZsZXgtYXV0b1wiPlxuICAgIDxuaWNlLXR5cGVhaGVhZCAqbmdJZj1cIiFmaWx0ZXJDb25maWcubGF6eUxvYWRpbmdcIlxuICAgICAgICBbbmdNb2RlbF09XCJ2YWx1ZVwiXG4gICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cIm9uVmFsdWVDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAgIFtpdGVtc109XCJ2YWx1ZXNcIlxuICAgICAgICBiaW5kVmFsdWU9XCJpZFwiXG4gICAgICAgIGJpbmRMYWJlbD1cIm5hbWVcIlxuICAgID48L25pY2UtdHlwZWFoZWFkPlxuXG4gICAgPG5pY2UtdHlwZWFoZWFkICpuZ0lmPVwiZmlsdGVyQ29uZmlnLmxhenlMb2FkaW5nXCJcbiAgICAgICAgW25nTW9kZWxdPVwidmFsdWVcIlxuICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJvblZhbHVlQ2hhbmdlKCRldmVudClcIlxuICAgICAgICBbaXRlbXNdPVwidmFsdWVzXCJcbiAgICAgICAgW3R5cGVhaGVhZF09XCJzZWFyY2gkXCJcbiAgICAgICAgYmluZFZhbHVlPVwiaWRcIlxuICAgICAgICBiaW5kTGFiZWw9XCJuYW1lXCJcbiAgICA+PC9uaWNlLXR5cGVhaGVhZD5cbjwvbWF0LWZvcm0tZmllbGQ+XG4iXX0=
|