@firestitch/filter 16.0.1 → 18.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.
- package/app/classes/actions-controller.d.ts +41 -41
- package/app/components/action-button/action-button.component.d.ts +9 -9
- package/app/components/action-kebab-actions/action-kebab-actions.component.d.ts +7 -7
- package/app/components/actions/actions.component.d.ts +13 -13
- package/app/components/filter/filter.component.d.ts +204 -204
- package/app/components/filter-chip/filter-chip.component.d.ts +26 -26
- package/app/components/filter-chip-content/filter-chip-content.component.d.ts +18 -18
- package/app/components/filter-chips/filter-chips.component.d.ts +9 -9
- package/app/components/filter-drawer/filter-drawer.component.d.ts +30 -30
- package/app/components/filter-drawer-actions/filter-drawer-actions.component.d.ts +9 -9
- package/app/components/filters-item/autocomplete/autocomplete.component.d.ts +14 -14
- package/app/components/filters-item/autocompletechips/autocompletechips.component.d.ts +16 -16
- package/app/components/filters-item/base-item/base-item.component.d.ts +25 -25
- package/app/components/filters-item/checkbox/checkbox.component.d.ts +11 -11
- package/app/components/filters-item/chips/chips.component.d.ts +13 -13
- package/app/components/filters-item/date/date.component.d.ts +20 -20
- package/app/components/filters-item/date-range/date-range.component.d.ts +15 -15
- package/app/components/filters-item/filter-item.component.d.ts +39 -39
- package/app/components/filters-item/range/range.component.d.ts +15 -15
- package/app/components/filters-item/select/backdrop/backdrop.component.d.ts +6 -6
- package/app/components/filters-item/select/groups/groups.component.d.ts +12 -12
- package/app/components/filters-item/select/multiple/multiple.component.d.ts +15 -15
- package/app/components/filters-item/select/select.component.d.ts +23 -23
- package/app/components/filters-item/select/simple/simple.component.d.ts +14 -14
- package/app/components/filters-item/text/text.component.d.ts +19 -19
- package/app/components/filters-item/week/week.component.d.ts +12 -12
- package/app/components/saved-filter/index.d.ts +3 -3
- package/app/components/saved-filter/saved-filter-edit/index.d.ts +1 -1
- package/app/components/saved-filter/saved-filter-edit/saved-filter-edit.component.d.ts +18 -18
- package/app/components/saved-filter/saved-filter-manage/index.d.ts +1 -1
- package/app/components/saved-filter/saved-filter-manage/saved-filter-manage.component.d.ts +16 -16
- package/app/components/saved-filter/saved-filters-menu/index.d.ts +1 -1
- package/app/components/saved-filter/saved-filters-menu/saved-filters-menu.component.d.ts +24 -24
- package/app/consts/query-param-delimiter.d.ts +1 -1
- package/app/directives/focus-to-item/focus-to-item.directive.d.ts +27 -27
- package/app/directives/status-bar/status-bar.directive.d.ts +8 -8
- package/app/enums/action-mode.enum.d.ts +6 -6
- package/app/enums/action-type.enum.d.ts +9 -9
- package/app/enums/button-style.d.ts +9 -9
- package/app/enums/index.d.ts +6 -6
- package/app/enums/item-date-mode.enum.d.ts +5 -5
- package/app/enums/item-type.enum.d.ts +15 -15
- package/app/enums/picker-view-type.enum.d.ts +7 -7
- package/app/fs-filter.module.d.ts +70 -70
- package/app/helpers/build-query-params.d.ts +3 -3
- package/app/helpers/compare.d.ts +2 -2
- package/app/helpers/create-filter-item.d.ts +14 -14
- package/app/helpers/find-value.d.ts +1 -1
- package/app/helpers/get-range-name.d.ts +1 -1
- package/app/helpers/parse-date.d.ts +1 -1
- package/app/helpers/parse-item-value-from-stored.d.ts +1 -1
- package/app/helpers/query-param-transformers.d.ts +2 -2
- package/app/helpers/restore-items.d.ts +12 -12
- package/app/injectors/filter-config.d.ts +2 -2
- package/app/injectors/filter-drawer-data.d.ts +2 -2
- package/app/injectors/filter-drawer-overlay.d.ts +2 -2
- package/app/interfaces/action.interface.d.ts +81 -81
- package/app/interfaces/config.interface.d.ts +66 -66
- package/app/interfaces/external-params.interface.d.ts +3 -3
- package/app/interfaces/filter.interface.d.ts +4 -4
- package/app/interfaces/index.d.ts +6 -6
- package/app/interfaces/items/autocomplete-chips.interface.d.ts +15 -15
- package/app/interfaces/items/autocomplete.interface.d.ts +9 -9
- package/app/interfaces/items/base.interface.d.ts +29 -29
- package/app/interfaces/items/checkbox.interface.d.ts +7 -7
- package/app/interfaces/items/chips.interface.d.ts +6 -6
- package/app/interfaces/items/date-range.interface.d.ts +8 -8
- package/app/interfaces/items/date.interface.d.ts +7 -7
- package/app/interfaces/items/range.interface.d.ts +13 -13
- package/app/interfaces/items/select.interface.d.ts +20 -20
- package/app/interfaces/items/text.interface.d.ts +9 -9
- package/app/interfaces/items/week.interface.d.ts +7 -7
- package/app/interfaces/saved-filters.interface.d.ts +18 -18
- package/app/interfaces/update-filter-item.interface.d.ts +4 -4
- package/app/models/action-menu-item.model.d.ts +23 -23
- package/app/models/action.model.d.ts +54 -54
- package/app/models/filter-config.d.ts +31 -31
- package/app/models/items/autocomplete/base-autocomplete-item.d.ts +12 -12
- package/app/models/items/autocomplete-chips-item.d.ts +20 -20
- package/app/models/items/autocomplete-item.d.ts +11 -11
- package/app/models/items/base-item.d.ts +80 -80
- package/app/models/items/checkbox-item.d.ts +17 -17
- package/app/models/items/chips-item.d.ts +18 -18
- package/app/models/items/date/base-date-item.d.ts +14 -14
- package/app/models/items/date-item.d.ts +8 -8
- package/app/models/items/date-range/base-date-range-item.d.ts +17 -17
- package/app/models/items/date-range-item.d.ts +6 -6
- package/app/models/items/date-time-item.d.ts +7 -7
- package/app/models/items/date-time-range-item.d.ts +6 -6
- package/app/models/items/range-item.d.ts +19 -19
- package/app/models/items/select/base-select-item.d.ts +13 -13
- package/app/models/items/select/multiple-select-item.d.ts +14 -14
- package/app/models/items/select/simple-select-item.d.ts +14 -14
- package/app/models/items/select-item.d.ts +8 -8
- package/app/models/items/text-item.d.ts +15 -15
- package/app/models/items/week-item.d.ts +18 -18
- package/app/pipes/remove-isolate-value.pipe.d.ts +8 -8
- package/app/providers/filter-meta.d.ts +5 -5
- package/app/services/external-params/persistance-params-controller.service.d.ts +21 -21
- package/app/services/external-params/query-params-controller.service.d.ts +22 -22
- package/app/services/external-params/saved-filters-controller.service.d.ts +40 -40
- package/app/services/external-params-controller.service.d.ts +42 -42
- package/app/services/filter-overlay.service.d.ts +36 -36
- package/app/services/focus-controller.service.d.ts +18 -18
- package/app/services/items-store.service.d.ts +69 -69
- package/esm2022/app/classes/actions-controller.mjs +130 -130
- package/esm2022/app/components/action-button/action-button.component.mjs +21 -21
- package/esm2022/app/components/action-kebab-actions/action-kebab-actions.component.mjs +18 -18
- package/esm2022/app/components/actions/actions.component.mjs +40 -40
- package/esm2022/app/components/filter/filter.component.mjs +626 -626
- package/esm2022/app/components/filter-chip/filter-chip.component.mjs +92 -92
- package/esm2022/app/components/filter-chip-content/filter-chip-content.component.mjs +83 -83
- package/esm2022/app/components/filter-chips/filter-chips.component.mjs +18 -18
- package/esm2022/app/components/filter-drawer/filter-drawer.component.mjs +78 -78
- package/esm2022/app/components/filter-drawer-actions/filter-drawer-actions.component.mjs +27 -27
- package/esm2022/app/components/filters-item/autocomplete/autocomplete.component.mjs +29 -29
- package/esm2022/app/components/filters-item/autocompletechips/autocompletechips.component.mjs +44 -44
- package/esm2022/app/components/filters-item/base-item/base-item.component.mjs +68 -68
- package/esm2022/app/components/filters-item/checkbox/checkbox.component.mjs +23 -23
- package/esm2022/app/components/filters-item/chips/chips.component.mjs +30 -30
- package/esm2022/app/components/filters-item/date/date.component.mjs +45 -45
- package/esm2022/app/components/filters-item/date-range/date-range.component.mjs +36 -36
- package/esm2022/app/components/filters-item/filter-item.component.mjs +82 -82
- package/esm2022/app/components/filters-item/range/range.component.mjs +49 -49
- package/esm2022/app/components/filters-item/select/backdrop/backdrop.component.mjs +12 -12
- package/esm2022/app/components/filters-item/select/groups/groups.component.mjs +33 -33
- package/esm2022/app/components/filters-item/select/multiple/multiple.component.mjs +60 -60
- package/esm2022/app/components/filters-item/select/select.component.mjs +55 -55
- package/esm2022/app/components/filters-item/select/simple/simple.component.mjs +46 -46
- package/esm2022/app/components/filters-item/text/text.component.mjs +51 -51
- package/esm2022/app/components/filters-item/week/week.component.mjs +26 -26
- package/esm2022/app/components/saved-filter/index.mjs +3 -3
- package/esm2022/app/components/saved-filter/saved-filter-edit/index.mjs +1 -1
- package/esm2022/app/components/saved-filter/saved-filter-edit/saved-filter-edit.component.mjs +55 -55
- package/esm2022/app/components/saved-filter/saved-filter-manage/index.mjs +1 -1
- package/esm2022/app/components/saved-filter/saved-filter-manage/saved-filter-manage.component.mjs +45 -45
- package/esm2022/app/components/saved-filter/saved-filters-menu/index.mjs +1 -1
- package/esm2022/app/components/saved-filter/saved-filters-menu/saved-filters-menu.component.mjs +61 -61
- package/esm2022/app/consts/query-param-delimiter.mjs +1 -1
- package/esm2022/app/directives/focus-to-item/focus-to-item.directive.mjs +141 -141
- package/esm2022/app/directives/status-bar/status-bar.directive.mjs +17 -17
- package/esm2022/app/enums/action-mode.enum.mjs +7 -7
- package/esm2022/app/enums/action-type.enum.mjs +10 -10
- package/esm2022/app/enums/button-style.mjs +10 -10
- package/esm2022/app/enums/index.mjs +6 -6
- package/esm2022/app/enums/item-date-mode.enum.mjs +6 -6
- package/esm2022/app/enums/item-type.enum.mjs +16 -16
- package/esm2022/app/enums/picker-view-type.enum.mjs +8 -8
- package/esm2022/app/fs-filter.module.mjs +261 -261
- package/esm2022/app/helpers/build-query-params.mjs +33 -33
- package/esm2022/app/helpers/compare.mjs +38 -38
- package/esm2022/app/helpers/create-filter-item.mjs +55 -55
- package/esm2022/app/helpers/find-value.mjs +13 -13
- package/esm2022/app/helpers/get-range-name.mjs +3 -3
- package/esm2022/app/helpers/parse-date.mjs +8 -8
- package/esm2022/app/helpers/parse-item-value-from-stored.mjs +77 -77
- package/esm2022/app/helpers/query-param-transformers.mjs +8 -8
- package/esm2022/app/helpers/restore-items.mjs +49 -49
- package/esm2022/app/injectors/filter-config.mjs +2 -2
- package/esm2022/app/injectors/filter-drawer-data.mjs +2 -2
- package/esm2022/app/injectors/filter-drawer-overlay.mjs +2 -2
- package/esm2022/app/interfaces/action.interface.mjs +1 -1
- package/esm2022/app/interfaces/config.interface.mjs +1 -1
- package/esm2022/app/interfaces/external-params.interface.mjs +1 -1
- package/esm2022/app/interfaces/filter.interface.mjs +1 -1
- package/esm2022/app/interfaces/index.mjs +6 -6
- package/esm2022/app/interfaces/items/autocomplete-chips.interface.mjs +1 -1
- package/esm2022/app/interfaces/items/autocomplete.interface.mjs +1 -1
- package/esm2022/app/interfaces/items/base.interface.mjs +1 -1
- package/esm2022/app/interfaces/items/checkbox.interface.mjs +1 -1
- package/esm2022/app/interfaces/items/chips.interface.mjs +1 -1
- package/esm2022/app/interfaces/items/date-range.interface.mjs +1 -1
- package/esm2022/app/interfaces/items/date.interface.mjs +1 -1
- package/esm2022/app/interfaces/items/range.interface.mjs +1 -1
- package/esm2022/app/interfaces/items/select.interface.mjs +1 -1
- package/esm2022/app/interfaces/items/text.interface.mjs +1 -1
- package/esm2022/app/interfaces/items/week.interface.mjs +1 -1
- package/esm2022/app/interfaces/saved-filters.interface.mjs +1 -1
- package/esm2022/app/interfaces/update-filter-item.interface.mjs +1 -1
- package/esm2022/app/models/action-menu-item.model.mjs +73 -73
- package/esm2022/app/models/action.model.mjs +156 -156
- package/esm2022/app/models/filter-config.mjs +79 -79
- package/esm2022/app/models/items/autocomplete/base-autocomplete-item.mjs +15 -15
- package/esm2022/app/models/items/autocomplete-chips-item.mjs +67 -67
- package/esm2022/app/models/items/autocomplete-item.mjs +33 -33
- package/esm2022/app/models/items/base-item.mjs +251 -251
- package/esm2022/app/models/items/checkbox-item.mjs +52 -52
- package/esm2022/app/models/items/chips-item.mjs +90 -90
- package/esm2022/app/models/items/date/base-date-item.mjs +50 -50
- package/esm2022/app/models/items/date-item.mjs +19 -19
- package/esm2022/app/models/items/date-range/base-date-range-item.mjs +124 -124
- package/esm2022/app/models/items/date-range-item.mjs +6 -6
- package/esm2022/app/models/items/date-time-item.mjs +9 -9
- package/esm2022/app/models/items/date-time-range-item.mjs +6 -6
- package/esm2022/app/models/items/range-item.mjs +85 -85
- package/esm2022/app/models/items/select/base-select-item.mjs +40 -40
- package/esm2022/app/models/items/select/multiple-select-item.mjs +88 -88
- package/esm2022/app/models/items/select/simple-select-item.mjs +66 -66
- package/esm2022/app/models/items/select-item.mjs +12 -12
- package/esm2022/app/models/items/text-item.mjs +35 -35
- package/esm2022/app/models/items/week-item.mjs +95 -95
- package/esm2022/app/pipes/remove-isolate-value.pipe.mjs +21 -21
- package/esm2022/app/providers/filter-meta.mjs +9 -9
- package/esm2022/app/services/external-params/persistance-params-controller.service.mjs +62 -62
- package/esm2022/app/services/external-params/query-params-controller.service.mjs +66 -66
- package/esm2022/app/services/external-params/saved-filters-controller.service.mjs +167 -167
- package/esm2022/app/services/external-params-controller.service.mjs +185 -185
- package/esm2022/app/services/filter-overlay.service.mjs +130 -130
- package/esm2022/app/services/focus-controller.service.mjs +29 -29
- package/esm2022/app/services/items-store.service.mjs +347 -347
- package/esm2022/firestitch-filter.mjs +4 -4
- package/esm2022/public_api.mjs +35 -35
- package/fesm2022/firestitch-filter.mjs +4536 -4536
- package/fesm2022/firestitch-filter.mjs.map +1 -1
- package/index.d.ts +5 -5
- package/package.json +1 -1
- package/public_api.d.ts +40 -40
|
@@ -1,60 +1,60 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Input, ViewChild } from '@angular/core';
|
|
2
|
-
import { MatSelect } from '@angular/material/select';
|
|
3
|
-
import { MultipleSelectItem } from '../../../../models/items/select/multiple-select-item';
|
|
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/form-field";
|
|
8
|
-
import * as i4 from "@angular/material/select";
|
|
9
|
-
import * as i5 from "@angular/material/core";
|
|
10
|
-
import * as i6 from "@angular/material/checkbox";
|
|
11
|
-
import * as i7 from "@firestitch/form";
|
|
12
|
-
import * as i8 from "../../../../directives/focus-to-item/focus-to-item.directive";
|
|
13
|
-
import * as i9 from "../../../../pipes/remove-isolate-value.pipe";
|
|
14
|
-
export class SelectMultipleComponent {
|
|
15
|
-
cd;
|
|
16
|
-
item;
|
|
17
|
-
select;
|
|
18
|
-
constructor(cd) {
|
|
19
|
-
this.cd = cd;
|
|
20
|
-
}
|
|
21
|
-
changed() {
|
|
22
|
-
if (this.item.isolate) {
|
|
23
|
-
this.item.isolate.enabled = false;
|
|
24
|
-
if (this.item.multiple && Array.isArray(this.item.model)) {
|
|
25
|
-
const index = this.item.model.indexOf(this.item.isolate.value);
|
|
26
|
-
if (index > -1) {
|
|
27
|
-
this.item.model.splice(index, 1);
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
close() {
|
|
33
|
-
this.select.close();
|
|
34
|
-
}
|
|
35
|
-
isolateChange(filter) {
|
|
36
|
-
if (filter.isolate.enabled) {
|
|
37
|
-
filter.model = filter.multiple ? [filter.isolate.value] : filter.isolate.value;
|
|
38
|
-
}
|
|
39
|
-
else {
|
|
40
|
-
if (filter.multiple) {
|
|
41
|
-
filter.model = filter.defaultValue ? filter.defaultValue : [];
|
|
42
|
-
}
|
|
43
|
-
else {
|
|
44
|
-
filter.model = filter.defaultValue ? filter.defaultValue : null;
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
49
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
50
|
-
}
|
|
51
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
52
|
-
type: Component,
|
|
53
|
-
args: [{ selector: 'filter-item-select-multiple', changeDetection: ChangeDetectionStrategy.OnPush, template: "<mat-form-field [ngClass]=\"{ isolate: item.isolate }\">\n <mat-label>{{item.label}}</mat-label>\n <mat-select\n #select\n [fsFilterFocusTrigger]=\"item\"\n [(ngModel)]=\"item.model\"\n (ngModelChange)=\"changed()\"\n [multiple]=\"item.multiple\">\n <mat-option\n *ngFor=\"let item of item.values | fsFilterIsolateValues: item.isolate\"\n [value]=\"item.value\">\n {{ item.name }}\n </mat-option>\n </mat-select>\n\n <mat-hint>\n <div *ngIf=\"item.isolate\">\n <mat-checkbox (change)=\"isolateChange(item)\" [(ngModel)]=\"item.isolate.enabled\">\n <span class=\"checkbox-label\">{{ item.isolate.label }}</span>\n </mat-checkbox>\n </div>\n </mat-hint>\n</mat-form-field>\n", styles: [".isolate{margin-bottom:25px}\n"] }]
|
|
54
|
-
}], ctorParameters:
|
|
55
|
-
type: Input
|
|
56
|
-
}], select: [{
|
|
57
|
-
type: ViewChild,
|
|
58
|
-
args: ['select', { static: true }]
|
|
59
|
-
}] } });
|
|
60
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Input, ViewChild } from '@angular/core';
|
|
2
|
+
import { MatSelect } from '@angular/material/select';
|
|
3
|
+
import { MultipleSelectItem } from '../../../../models/items/select/multiple-select-item';
|
|
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/form-field";
|
|
8
|
+
import * as i4 from "@angular/material/select";
|
|
9
|
+
import * as i5 from "@angular/material/core";
|
|
10
|
+
import * as i6 from "@angular/material/checkbox";
|
|
11
|
+
import * as i7 from "@firestitch/form";
|
|
12
|
+
import * as i8 from "../../../../directives/focus-to-item/focus-to-item.directive";
|
|
13
|
+
import * as i9 from "../../../../pipes/remove-isolate-value.pipe";
|
|
14
|
+
export class SelectMultipleComponent {
|
|
15
|
+
cd;
|
|
16
|
+
item;
|
|
17
|
+
select;
|
|
18
|
+
constructor(cd) {
|
|
19
|
+
this.cd = cd;
|
|
20
|
+
}
|
|
21
|
+
changed() {
|
|
22
|
+
if (this.item.isolate) {
|
|
23
|
+
this.item.isolate.enabled = false;
|
|
24
|
+
if (this.item.multiple && Array.isArray(this.item.model)) {
|
|
25
|
+
const index = this.item.model.indexOf(this.item.isolate.value);
|
|
26
|
+
if (index > -1) {
|
|
27
|
+
this.item.model.splice(index, 1);
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
close() {
|
|
33
|
+
this.select.close();
|
|
34
|
+
}
|
|
35
|
+
isolateChange(filter) {
|
|
36
|
+
if (filter.isolate.enabled) {
|
|
37
|
+
filter.model = filter.multiple ? [filter.isolate.value] : filter.isolate.value;
|
|
38
|
+
}
|
|
39
|
+
else {
|
|
40
|
+
if (filter.multiple) {
|
|
41
|
+
filter.model = filter.defaultValue ? filter.defaultValue : [];
|
|
42
|
+
}
|
|
43
|
+
else {
|
|
44
|
+
filter.model = filter.defaultValue ? filter.defaultValue : null;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: SelectMultipleComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
49
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.7", type: SelectMultipleComponent, selector: "filter-item-select-multiple", inputs: { item: "item" }, viewQueries: [{ propertyName: "select", first: true, predicate: ["select"], descendants: true, static: true }], ngImport: i0, template: "<mat-form-field [ngClass]=\"{ isolate: item.isolate }\">\n <mat-label>{{item.label}}</mat-label>\n <mat-select\n #select\n [fsFilterFocusTrigger]=\"item\"\n [(ngModel)]=\"item.model\"\n (ngModelChange)=\"changed()\"\n [multiple]=\"item.multiple\">\n <mat-option\n *ngFor=\"let item of item.values | fsFilterIsolateValues: item.isolate\"\n [value]=\"item.value\">\n {{ item.name }}\n </mat-option>\n </mat-select>\n\n <mat-hint>\n <div *ngIf=\"item.isolate\">\n <mat-checkbox (change)=\"isolateChange(item)\" [(ngModel)]=\"item.isolate.enabled\">\n <span class=\"checkbox-label\">{{ item.isolate.label }}</span>\n </mat-checkbox>\n </div>\n </mat-hint>\n</mat-form-field>\n", styles: [".isolate{margin-bottom:25px}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3.MatLabel, selector: "mat-label" }, { kind: "directive", type: i3.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "component", type: i4.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i5.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "component", type: i6.MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "disabledInteractive", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { kind: "directive", type: i7.FsFormNoFsValidatorsDirective, selector: "[ngModel]:not([required]):not([fsFormRequired]):not([fsFormCompare]):not([fsFormDateRange]):not([fsFormEmail]):not([fsFormEmails]):not([fsFormFunction]):not([fsFormGreater]):not([fsFormGreaterEqual]):not([fsFormInteger]):not([fsFormLesser]):not([fsFormMax]):not([fsFormMaxLength]):not([fsFormMin]):not([fsFormMinLength]):not([fsFormNumeric]):not([fsFormPattern]):not([fsFormPhone]):not([fsFormUrl]):not([validate])" }, { kind: "directive", type: i8.FocusToItemDirective, selector: "[fsFilterFocusTrigger]", inputs: ["fsFilterFocusTrigger", "focusTargetType"] }, { kind: "pipe", type: i9.FsFilterIsolateValues, name: "fsFilterIsolateValues" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
50
|
+
}
|
|
51
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: SelectMultipleComponent, decorators: [{
|
|
52
|
+
type: Component,
|
|
53
|
+
args: [{ selector: 'filter-item-select-multiple', changeDetection: ChangeDetectionStrategy.OnPush, template: "<mat-form-field [ngClass]=\"{ isolate: item.isolate }\">\n <mat-label>{{item.label}}</mat-label>\n <mat-select\n #select\n [fsFilterFocusTrigger]=\"item\"\n [(ngModel)]=\"item.model\"\n (ngModelChange)=\"changed()\"\n [multiple]=\"item.multiple\">\n <mat-option\n *ngFor=\"let item of item.values | fsFilterIsolateValues: item.isolate\"\n [value]=\"item.value\">\n {{ item.name }}\n </mat-option>\n </mat-select>\n\n <mat-hint>\n <div *ngIf=\"item.isolate\">\n <mat-checkbox (change)=\"isolateChange(item)\" [(ngModel)]=\"item.isolate.enabled\">\n <span class=\"checkbox-label\">{{ item.isolate.label }}</span>\n </mat-checkbox>\n </div>\n </mat-hint>\n</mat-form-field>\n", styles: [".isolate{margin-bottom:25px}\n"] }]
|
|
54
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }], propDecorators: { item: [{
|
|
55
|
+
type: Input
|
|
56
|
+
}], select: [{
|
|
57
|
+
type: ViewChild,
|
|
58
|
+
args: ['select', { static: true }]
|
|
59
|
+
}] } });
|
|
60
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVsdGlwbGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9jb21wb25lbnRzL2ZpbHRlcnMtaXRlbS9zZWxlY3QvbXVsdGlwbGUvbXVsdGlwbGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9jb21wb25lbnRzL2ZpbHRlcnMtaXRlbS9zZWxlY3QvbXVsdGlwbGUvbXVsdGlwbGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULEtBQUssRUFDTCxTQUFTLEVBQ1YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRXJELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHNEQUFzRCxDQUFDOzs7Ozs7Ozs7OztBQVMxRixNQUFNLE9BQU8sdUJBQXVCO0lBUWY7SUFMWixJQUFJLENBQXFCO0lBR3pCLE1BQU0sQ0FBWTtJQUV6QixZQUFtQixFQUFxQjtRQUFyQixPQUFFLEdBQUYsRUFBRSxDQUFtQjtJQUFHLENBQUM7SUFFckMsT0FBTztRQUVaLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUV0QixJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1lBRWxDLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7Z0JBQ3pELE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFFL0QsSUFBSSxLQUFLLEdBQUcsQ0FBQyxDQUFDLEVBQUUsQ0FBQztvQkFDZixJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDO2dCQUNuQyxDQUFDO1lBQ0gsQ0FBQztRQUNILENBQUM7SUFDSCxDQUFDO0lBRU0sS0FBSztRQUNWLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDdEIsQ0FBQztJQUVNLGFBQWEsQ0FBQyxNQUFNO1FBQ3pCLElBQUksTUFBTSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUMzQixNQUFNLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUM7UUFDakYsQ0FBQzthQUFNLENBQUM7WUFDTixJQUFJLE1BQU0sQ0FBQyxRQUFRLEVBQUUsQ0FBQztnQkFDcEIsTUFBTSxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDaEUsQ0FBQztpQkFBTSxDQUFDO2dCQUNOLE1BQU0sQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO1lBQ2xFLENBQUM7UUFDSCxDQUFDO0lBQ0gsQ0FBQzt1R0F4Q1UsdUJBQXVCOzJGQUF2Qix1QkFBdUIsNk1DbEJwQyw0dUJBdUJBOzsyRkRMYSx1QkFBdUI7a0JBTm5DLFNBQVM7K0JBQ0UsNkJBQTZCLG1CQUd0Qix1QkFBdUIsQ0FBQyxNQUFNO3NGQUt4QyxJQUFJO3NCQURWLEtBQUs7Z0JBSUMsTUFBTTtzQkFEWixTQUFTO3VCQUFDLFFBQVEsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgSW5wdXQsXG4gIFZpZXdDaGlsZFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdFNlbGVjdCB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NlbGVjdCc7XG5cbmltcG9ydCB7IE11bHRpcGxlU2VsZWN0SXRlbSB9IGZyb20gJy4uLy4uLy4uLy4uL21vZGVscy9pdGVtcy9zZWxlY3QvbXVsdGlwbGUtc2VsZWN0LWl0ZW0nO1xuXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2ZpbHRlci1pdGVtLXNlbGVjdC1tdWx0aXBsZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9tdWx0aXBsZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL211bHRpcGxlLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBTZWxlY3RNdWx0aXBsZUNvbXBvbmVudCB7XG5cbiAgQElucHV0KClcbiAgcHVibGljIGl0ZW06IE11bHRpcGxlU2VsZWN0SXRlbTtcblxuICBAVmlld0NoaWxkKCdzZWxlY3QnLCB7IHN0YXRpYzogdHJ1ZSB9KVxuICBwdWJsaWMgc2VsZWN0OiBNYXRTZWxlY3Q7XG5cbiAgY29uc3RydWN0b3IocHVibGljIGNkOiBDaGFuZ2VEZXRlY3RvclJlZikge31cblxuICBwdWJsaWMgY2hhbmdlZCgpIHtcblxuICAgIGlmICh0aGlzLml0ZW0uaXNvbGF0ZSkge1xuXG4gICAgICB0aGlzLml0ZW0uaXNvbGF0ZS5lbmFibGVkID0gZmFsc2U7XG5cbiAgICAgIGlmICh0aGlzLml0ZW0ubXVsdGlwbGUgJiYgQXJyYXkuaXNBcnJheSh0aGlzLml0ZW0ubW9kZWwpKSB7XG4gICAgICAgIGNvbnN0IGluZGV4ID0gdGhpcy5pdGVtLm1vZGVsLmluZGV4T2YodGhpcy5pdGVtLmlzb2xhdGUudmFsdWUpO1xuXG4gICAgICAgIGlmIChpbmRleCA+IC0xKSB7XG4gICAgICAgICAgdGhpcy5pdGVtLm1vZGVsLnNwbGljZShpbmRleCwgMSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwdWJsaWMgY2xvc2UoKSB7XG4gICAgdGhpcy5zZWxlY3QuY2xvc2UoKTtcbiAgfVxuXG4gIHB1YmxpYyBpc29sYXRlQ2hhbmdlKGZpbHRlcikge1xuICAgIGlmIChmaWx0ZXIuaXNvbGF0ZS5lbmFibGVkKSB7XG4gICAgICBmaWx0ZXIubW9kZWwgPSBmaWx0ZXIubXVsdGlwbGUgPyBbZmlsdGVyLmlzb2xhdGUudmFsdWVdIDogZmlsdGVyLmlzb2xhdGUudmFsdWU7XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmIChmaWx0ZXIubXVsdGlwbGUpIHtcbiAgICAgICAgZmlsdGVyLm1vZGVsID0gZmlsdGVyLmRlZmF1bHRWYWx1ZSA/IGZpbHRlci5kZWZhdWx0VmFsdWUgOiBbXTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGZpbHRlci5tb2RlbCA9IGZpbHRlci5kZWZhdWx0VmFsdWUgPyBmaWx0ZXIuZGVmYXVsdFZhbHVlIDogbnVsbDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIjxtYXQtZm9ybS1maWVsZCBbbmdDbGFzc109XCJ7IGlzb2xhdGU6IGl0ZW0uaXNvbGF0ZSB9XCI+XG4gIDxtYXQtbGFiZWw+e3tpdGVtLmxhYmVsfX08L21hdC1sYWJlbD5cbiAgPG1hdC1zZWxlY3RcbiAgICAjc2VsZWN0XG4gICAgW2ZzRmlsdGVyRm9jdXNUcmlnZ2VyXT1cIml0ZW1cIlxuICAgIFsobmdNb2RlbCldPVwiaXRlbS5tb2RlbFwiXG4gICAgKG5nTW9kZWxDaGFuZ2UpPVwiY2hhbmdlZCgpXCJcbiAgICBbbXVsdGlwbGVdPVwiaXRlbS5tdWx0aXBsZVwiPlxuICAgICAgPG1hdC1vcHRpb25cbiAgICAgICAgKm5nRm9yPVwibGV0IGl0ZW0gb2YgaXRlbS52YWx1ZXMgfCBmc0ZpbHRlcklzb2xhdGVWYWx1ZXM6IGl0ZW0uaXNvbGF0ZVwiXG4gICAgICAgIFt2YWx1ZV09XCJpdGVtLnZhbHVlXCI+XG4gICAgICAgICAge3sgaXRlbS5uYW1lIH19XG4gICAgPC9tYXQtb3B0aW9uPlxuICA8L21hdC1zZWxlY3Q+XG5cbiAgPG1hdC1oaW50PlxuICAgIDxkaXYgKm5nSWY9XCJpdGVtLmlzb2xhdGVcIj5cbiAgICAgIDxtYXQtY2hlY2tib3ggKGNoYW5nZSk9XCJpc29sYXRlQ2hhbmdlKGl0ZW0pXCIgWyhuZ01vZGVsKV09XCJpdGVtLmlzb2xhdGUuZW5hYmxlZFwiPlxuICAgICAgICA8c3BhbiBjbGFzcz1cImNoZWNrYm94LWxhYmVsXCI+e3sgaXRlbS5pc29sYXRlLmxhYmVsIH19PC9zcGFuPlxuICAgICAgPC9tYXQtY2hlY2tib3g+XG4gICAgPC9kaXY+XG4gIDwvbWF0LWhpbnQ+XG48L21hdC1mb3JtLWZpZWxkPlxuIl19
|
|
@@ -1,55 +1,55 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, ChangeDetectorRef, KeyValueDiffers, Component, ViewChild, } from '@angular/core';
|
|
2
|
-
import { BaseItemComponent } from '../base-item/base-item.component';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "@angular/common";
|
|
5
|
-
import * as i2 from "@angular/material/form-field";
|
|
6
|
-
import * as i3 from "@angular/material/select";
|
|
7
|
-
import * as i4 from "./groups/groups.component";
|
|
8
|
-
import * as i5 from "./simple/simple.component";
|
|
9
|
-
import * as i6 from "./multiple/multiple.component";
|
|
10
|
-
export class SelectComponent extends BaseItemComponent {
|
|
11
|
-
_kvDiffers;
|
|
12
|
-
_cd;
|
|
13
|
-
selectedItem;
|
|
14
|
-
// For case when we have multiple selection with __all option
|
|
15
|
-
// If _all has been selected than we must disable all other items
|
|
16
|
-
allItemsOptionSelected = false;
|
|
17
|
-
get multipleSelectItem() {
|
|
18
|
-
return this.item;
|
|
19
|
-
}
|
|
20
|
-
get simpleSelectItem() {
|
|
21
|
-
return this.item;
|
|
22
|
-
}
|
|
23
|
-
values$;
|
|
24
|
-
constructor(_kvDiffers, _cd) {
|
|
25
|
-
super(_kvDiffers, _cd);
|
|
26
|
-
this._kvDiffers = _kvDiffers;
|
|
27
|
-
this._cd = _cd;
|
|
28
|
-
}
|
|
29
|
-
ngOnChanges(changes) {
|
|
30
|
-
if (changes.item) {
|
|
31
|
-
this.values$ = this.item.values$;
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
ngDoCheck() {
|
|
35
|
-
if (this._kvDiffer) {
|
|
36
|
-
const changes = this._kvDiffer.diff(this.item);
|
|
37
|
-
if (changes) {
|
|
38
|
-
this._cd.markForCheck();
|
|
39
|
-
if (this.selectedItem) {
|
|
40
|
-
this.selectedItem.cd.markForCheck();
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
46
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
47
|
-
}
|
|
48
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
49
|
-
type: Component,
|
|
50
|
-
args: [{ selector: 'filter-item-select', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngIf=\"(item.loading$ | async) else itemSelect\">\n <mat-form-field>\n <mat-label>{{item.label}}</mat-label>\n <mat-select disabled></mat-select>\n </mat-form-field>\n</ng-container>\n\n<ng-template #itemSelect>\n <ng-container *ngIf=\"(values$ | async)?.length\">\n <ng-container *ngIf=\"item.multiple && !item.children\">\n <filter-item-select-multiple\n [item]=\"multipleSelectItem\"\n #selectItem>\n </filter-item-select-multiple>\n </ng-container>\n\n <ng-container *ngIf=\"!item.multiple && !item.children\">\n <filter-item-select-simple\n [item]=\"simpleSelectItem\"\n #selectItem>\n </filter-item-select-simple>\n </ng-container>\n\n <ng-container *ngIf=\"item.children\">\n <filter-item-select-groups\n [item]=\"item\"\n #selectItem>\n </filter-item-select-groups>\n </ng-container>\n </ng-container>\n</ng-template>\n" }]
|
|
51
|
-
}], ctorParameters:
|
|
52
|
-
type: ViewChild,
|
|
53
|
-
args: ['selectItem']
|
|
54
|
-
}] } });
|
|
55
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { ChangeDetectionStrategy, ChangeDetectorRef, KeyValueDiffers, Component, ViewChild, } from '@angular/core';
|
|
2
|
+
import { BaseItemComponent } from '../base-item/base-item.component';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@angular/common";
|
|
5
|
+
import * as i2 from "@angular/material/form-field";
|
|
6
|
+
import * as i3 from "@angular/material/select";
|
|
7
|
+
import * as i4 from "./groups/groups.component";
|
|
8
|
+
import * as i5 from "./simple/simple.component";
|
|
9
|
+
import * as i6 from "./multiple/multiple.component";
|
|
10
|
+
export class SelectComponent extends BaseItemComponent {
|
|
11
|
+
_kvDiffers;
|
|
12
|
+
_cd;
|
|
13
|
+
selectedItem;
|
|
14
|
+
// For case when we have multiple selection with __all option
|
|
15
|
+
// If _all has been selected than we must disable all other items
|
|
16
|
+
allItemsOptionSelected = false;
|
|
17
|
+
get multipleSelectItem() {
|
|
18
|
+
return this.item;
|
|
19
|
+
}
|
|
20
|
+
get simpleSelectItem() {
|
|
21
|
+
return this.item;
|
|
22
|
+
}
|
|
23
|
+
values$;
|
|
24
|
+
constructor(_kvDiffers, _cd) {
|
|
25
|
+
super(_kvDiffers, _cd);
|
|
26
|
+
this._kvDiffers = _kvDiffers;
|
|
27
|
+
this._cd = _cd;
|
|
28
|
+
}
|
|
29
|
+
ngOnChanges(changes) {
|
|
30
|
+
if (changes.item) {
|
|
31
|
+
this.values$ = this.item.values$;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
ngDoCheck() {
|
|
35
|
+
if (this._kvDiffer) {
|
|
36
|
+
const changes = this._kvDiffer.diff(this.item);
|
|
37
|
+
if (changes) {
|
|
38
|
+
this._cd.markForCheck();
|
|
39
|
+
if (this.selectedItem) {
|
|
40
|
+
this.selectedItem.cd.markForCheck();
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: SelectComponent, deps: [{ token: i0.KeyValueDiffers }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
46
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.7", type: SelectComponent, selector: "filter-item-select", viewQueries: [{ propertyName: "selectedItem", first: true, predicate: ["selectItem"], descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<ng-container *ngIf=\"(item.loading$ | async) else itemSelect\">\n <mat-form-field>\n <mat-label>{{item.label}}</mat-label>\n <mat-select disabled></mat-select>\n </mat-form-field>\n</ng-container>\n\n<ng-template #itemSelect>\n <ng-container *ngIf=\"(values$ | async)?.length\">\n <ng-container *ngIf=\"item.multiple && !item.children\">\n <filter-item-select-multiple\n [item]=\"multipleSelectItem\"\n #selectItem>\n </filter-item-select-multiple>\n </ng-container>\n\n <ng-container *ngIf=\"!item.multiple && !item.children\">\n <filter-item-select-simple\n [item]=\"simpleSelectItem\"\n #selectItem>\n </filter-item-select-simple>\n </ng-container>\n\n <ng-container *ngIf=\"item.children\">\n <filter-item-select-groups\n [item]=\"item\"\n #selectItem>\n </filter-item-select-groups>\n </ng-container>\n </ng-container>\n</ng-template>\n", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2.MatLabel, selector: "mat-label" }, { kind: "component", type: i3.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i4.SelectGroupsComponent, selector: "filter-item-select-groups", inputs: ["item"] }, { kind: "component", type: i5.SelectSimpleComponent, selector: "filter-item-select-simple", inputs: ["item"] }, { kind: "component", type: i6.SelectMultipleComponent, selector: "filter-item-select-multiple", inputs: ["item"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
47
|
+
}
|
|
48
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: SelectComponent, decorators: [{
|
|
49
|
+
type: Component,
|
|
50
|
+
args: [{ selector: 'filter-item-select', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngIf=\"(item.loading$ | async) else itemSelect\">\n <mat-form-field>\n <mat-label>{{item.label}}</mat-label>\n <mat-select disabled></mat-select>\n </mat-form-field>\n</ng-container>\n\n<ng-template #itemSelect>\n <ng-container *ngIf=\"(values$ | async)?.length\">\n <ng-container *ngIf=\"item.multiple && !item.children\">\n <filter-item-select-multiple\n [item]=\"multipleSelectItem\"\n #selectItem>\n </filter-item-select-multiple>\n </ng-container>\n\n <ng-container *ngIf=\"!item.multiple && !item.children\">\n <filter-item-select-simple\n [item]=\"simpleSelectItem\"\n #selectItem>\n </filter-item-select-simple>\n </ng-container>\n\n <ng-container *ngIf=\"item.children\">\n <filter-item-select-groups\n [item]=\"item\"\n #selectItem>\n </filter-item-select-groups>\n </ng-container>\n </ng-container>\n</ng-template>\n" }]
|
|
51
|
+
}], ctorParameters: () => [{ type: i0.KeyValueDiffers }, { type: i0.ChangeDetectorRef }], propDecorators: { selectedItem: [{
|
|
52
|
+
type: ViewChild,
|
|
53
|
+
args: ['selectItem']
|
|
54
|
+
}] } });
|
|
55
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29tcG9uZW50cy9maWx0ZXJzLWl0ZW0vc2VsZWN0L3NlbGVjdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2NvbXBvbmVudHMvZmlsdGVycy1pdGVtL3NlbGVjdC9zZWxlY3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsZUFBZSxFQUNmLFNBQVMsRUFDVCxTQUFTLEdBR1YsTUFBTSxlQUFlLENBQUM7QUFJdkIsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7Ozs7Ozs7O0FBWXJFLE1BQU0sT0FBTyxlQUFnQixTQUFRLGlCQUFpQztJQW1CeEQ7SUFDQTtJQWpCTCxZQUFZLENBQWtEO0lBQ3JFLDZEQUE2RDtJQUM3RCxpRUFBaUU7SUFDMUQsc0JBQXNCLEdBQUcsS0FBSyxDQUFDO0lBRXRDLElBQVcsa0JBQWtCO1FBQzNCLE9BQU8sSUFBSSxDQUFDLElBQTBCLENBQUM7SUFDekMsQ0FBQztJQUVELElBQVcsZ0JBQWdCO1FBQ3pCLE9BQU8sSUFBSSxDQUFDLElBQXdCLENBQUM7SUFDdkMsQ0FBQztJQUVNLE9BQU8sQ0FBd0I7SUFFdEMsWUFDWSxVQUEyQixFQUMzQixHQUFzQjtRQUVoQyxLQUFLLENBQUMsVUFBVSxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBSGIsZUFBVSxHQUFWLFVBQVUsQ0FBaUI7UUFDM0IsUUFBRyxHQUFILEdBQUcsQ0FBbUI7SUFHbEMsQ0FBQztJQUVNLFdBQVcsQ0FBQyxPQUFzQjtRQUN2QyxJQUFJLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUNqQixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBZ0MsQ0FBQztRQUM1RCxDQUFDO0lBQ0gsQ0FBQztJQUVNLFNBQVM7UUFDZCxJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNuQixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7WUFFL0MsSUFBSSxPQUFPLEVBQUUsQ0FBQztnQkFDWixJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxDQUFDO2dCQUV4QixJQUFJLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztvQkFDdEIsSUFBSSxDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUMsWUFBWSxFQUFFLENBQUM7Z0JBQ3RDLENBQUM7WUFDSCxDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUM7dUdBM0NVLGVBQWU7MkZBQWYsZUFBZSxrTkN4QjVCLGc3QkErQkE7OzJGRFBhLGVBQWU7a0JBTDNCLFNBQVM7K0JBQ0Usb0JBQW9CLG1CQUViLHVCQUF1QixDQUFDLE1BQU07b0hBS3hDLFlBQVk7c0JBRGxCLFNBQVM7dUJBQUMsWUFBWSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgS2V5VmFsdWVEaWZmZXJzLFxuICBDb21wb25lbnQsXG4gIFZpZXdDaGlsZCxcbiAgRG9DaGVjayxcbiAgU2ltcGxlQ2hhbmdlcyxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgQmFzZUl0ZW1Db21wb25lbnQgfSBmcm9tICcuLi9iYXNlLWl0ZW0vYmFzZS1pdGVtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTZWxlY3RTaW1wbGVDb21wb25lbnQgfSBmcm9tICcuL3NpbXBsZS9zaW1wbGUuY29tcG9uZW50JztcbmltcG9ydCB7IFNlbGVjdE11bHRpcGxlQ29tcG9uZW50IH0gZnJvbSAnLi9tdWx0aXBsZS9tdWx0aXBsZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgQmFzZVNlbGVjdEl0ZW0gfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvaXRlbXMvc2VsZWN0L2Jhc2Utc2VsZWN0LWl0ZW0nO1xuaW1wb3J0IHsgTXVsdGlwbGVTZWxlY3RJdGVtIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL2l0ZW1zL3NlbGVjdC9tdWx0aXBsZS1zZWxlY3QtaXRlbSc7XG5pbXBvcnQgeyBTaW1wbGVTZWxlY3RJdGVtIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL2l0ZW1zL3NlbGVjdC9zaW1wbGUtc2VsZWN0LWl0ZW0nO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdmaWx0ZXItaXRlbS1zZWxlY3QnLFxuICB0ZW1wbGF0ZVVybDogJy4vc2VsZWN0LmNvbXBvbmVudC5odG1sJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFNlbGVjdENvbXBvbmVudCBleHRlbmRzIEJhc2VJdGVtQ29tcG9uZW50PEJhc2VTZWxlY3RJdGVtPiBpbXBsZW1lbnRzIERvQ2hlY2sge1xuXG4gIEBWaWV3Q2hpbGQoJ3NlbGVjdEl0ZW0nKVxuICBwdWJsaWMgc2VsZWN0ZWRJdGVtOiBTZWxlY3RTaW1wbGVDb21wb25lbnQgfCBTZWxlY3RNdWx0aXBsZUNvbXBvbmVudDtcbiAgLy8gRm9yIGNhc2Ugd2hlbiB3ZSBoYXZlIG11bHRpcGxlIHNlbGVjdGlvbiB3aXRoIF9fYWxsIG9wdGlvblxuICAvLyBJZiBfYWxsIGhhcyBiZWVuIHNlbGVjdGVkIHRoYW4gd2UgbXVzdCBkaXNhYmxlIGFsbCBvdGhlciBpdGVtc1xuICBwdWJsaWMgYWxsSXRlbXNPcHRpb25TZWxlY3RlZCA9IGZhbHNlO1xuXG4gIHB1YmxpYyBnZXQgbXVsdGlwbGVTZWxlY3RJdGVtKCk6IE11bHRpcGxlU2VsZWN0SXRlbSB7XG4gICAgcmV0dXJuIHRoaXMuaXRlbSBhcyBNdWx0aXBsZVNlbGVjdEl0ZW07XG4gIH1cblxuICBwdWJsaWMgZ2V0IHNpbXBsZVNlbGVjdEl0ZW0oKTogU2ltcGxlU2VsZWN0SXRlbSB7XG4gICAgcmV0dXJuIHRoaXMuaXRlbSBhcyBTaW1wbGVTZWxlY3RJdGVtO1xuICB9XG5cbiAgcHVibGljIHZhbHVlcyQ6IE9ic2VydmFibGU8dW5rbm93bltdPjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcm90ZWN0ZWQgX2t2RGlmZmVyczogS2V5VmFsdWVEaWZmZXJzLFxuICAgIHByb3RlY3RlZCBfY2Q6IENoYW5nZURldGVjdG9yUmVmXG4gICkge1xuICAgIHN1cGVyKF9rdkRpZmZlcnMsIF9jZCk7XG4gIH1cbiAgXG4gIHB1YmxpYyBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgaWYgKGNoYW5nZXMuaXRlbSkge1xuICAgICAgdGhpcy52YWx1ZXMkID0gdGhpcy5pdGVtLnZhbHVlcyQgYXMgT2JzZXJ2YWJsZTx1bmtub3duW10+O1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBuZ0RvQ2hlY2soKSB7XG4gICAgaWYgKHRoaXMuX2t2RGlmZmVyKSB7XG4gICAgICBjb25zdCBjaGFuZ2VzID0gdGhpcy5fa3ZEaWZmZXIuZGlmZih0aGlzLml0ZW0pO1xuXG4gICAgICBpZiAoY2hhbmdlcykge1xuICAgICAgICB0aGlzLl9jZC5tYXJrRm9yQ2hlY2soKTtcblxuICAgICAgICBpZiAodGhpcy5zZWxlY3RlZEl0ZW0pIHtcbiAgICAgICAgICB0aGlzLnNlbGVjdGVkSXRlbS5jZC5tYXJrRm9yQ2hlY2soKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cIihpdGVtLmxvYWRpbmckIHwgYXN5bmMpIGVsc2UgaXRlbVNlbGVjdFwiPlxuICA8bWF0LWZvcm0tZmllbGQ+XG4gICAgPG1hdC1sYWJlbD57e2l0ZW0ubGFiZWx9fTwvbWF0LWxhYmVsPlxuICAgIDxtYXQtc2VsZWN0IGRpc2FibGVkPjwvbWF0LXNlbGVjdD5cbiAgPC9tYXQtZm9ybS1maWVsZD5cbjwvbmctY29udGFpbmVyPlxuXG48bmctdGVtcGxhdGUgI2l0ZW1TZWxlY3Q+XG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCIodmFsdWVzJCB8IGFzeW5jKT8ubGVuZ3RoXCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIml0ZW0ubXVsdGlwbGUgJiYgIWl0ZW0uY2hpbGRyZW5cIj5cbiAgICAgIDxmaWx0ZXItaXRlbS1zZWxlY3QtbXVsdGlwbGVcbiAgICAgICAgW2l0ZW1dPVwibXVsdGlwbGVTZWxlY3RJdGVtXCJcbiAgICAgICAgI3NlbGVjdEl0ZW0+XG4gICAgICA8L2ZpbHRlci1pdGVtLXNlbGVjdC1tdWx0aXBsZT5cbiAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhaXRlbS5tdWx0aXBsZSAmJiAhaXRlbS5jaGlsZHJlblwiPlxuICAgICAgPGZpbHRlci1pdGVtLXNlbGVjdC1zaW1wbGVcbiAgICAgICAgW2l0ZW1dPVwic2ltcGxlU2VsZWN0SXRlbVwiXG4gICAgICAgICNzZWxlY3RJdGVtPlxuICAgICAgPC9maWx0ZXItaXRlbS1zZWxlY3Qtc2ltcGxlPlxuICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIml0ZW0uY2hpbGRyZW5cIj5cbiAgICAgIDxmaWx0ZXItaXRlbS1zZWxlY3QtZ3JvdXBzXG4gICAgICAgIFtpdGVtXT1cIml0ZW1cIlxuICAgICAgICAjc2VsZWN0SXRlbT5cbiAgICAgIDwvZmlsdGVyLWl0ZW0tc2VsZWN0LWdyb3Vwcz5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC9uZy1jb250YWluZXI+XG48L25nLXRlbXBsYXRlPlxuIl19
|
|
@@ -1,46 +1,46 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Input, ViewChild, } from '@angular/core';
|
|
2
|
-
import { MatSelect } from '@angular/material/select';
|
|
3
|
-
import { SimpleSelectItem } from '../../../../models/items/select/simple-select-item';
|
|
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/form-field";
|
|
8
|
-
import * as i4 from "@angular/material/select";
|
|
9
|
-
import * as i5 from "@angular/material/core";
|
|
10
|
-
import * as i6 from "@angular/material/checkbox";
|
|
11
|
-
import * as i7 from "@firestitch/form";
|
|
12
|
-
import * as i8 from "../../../../directives/focus-to-item/focus-to-item.directive";
|
|
13
|
-
import * as i9 from "../../../../pipes/remove-isolate-value.pipe";
|
|
14
|
-
export class SelectSimpleComponent {
|
|
15
|
-
cd;
|
|
16
|
-
item;
|
|
17
|
-
select;
|
|
18
|
-
constructor(cd) {
|
|
19
|
-
this.cd = cd;
|
|
20
|
-
}
|
|
21
|
-
changed() {
|
|
22
|
-
if (this.item.isolate) {
|
|
23
|
-
this.item.isolate.enabled = false;
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
isolateChange(filter) {
|
|
27
|
-
if (filter.isolate.enabled) {
|
|
28
|
-
filter.model = filter.isolate.value;
|
|
29
|
-
}
|
|
30
|
-
else {
|
|
31
|
-
filter.model = null;
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
35
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
36
|
-
}
|
|
37
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
38
|
-
type: Component,
|
|
39
|
-
args: [{ selector: 'filter-item-select-simple', changeDetection: ChangeDetectionStrategy.OnPush, template: "<mat-form-field [ngClass]=\"{ isolate: item.isolate }\">\n <mat-label>{{item.label}}</mat-label>\n <mat-select\n #select\n [fsFilterFocusTrigger]=\"item\"\n [(ngModel)]=\"item.model\"\n (ngModelChange)=\"changed()\">\n <mat-option *ngFor=\"let item of item.values | fsFilterIsolateValues: item.isolate\"\n [value]=\"item.value\"\n >\n {{ item.name }}\n </mat-option>\n </mat-select>\n\n <mat-hint>\n <div *ngIf=\"item.isolate\">\n <mat-checkbox (change)=\"isolateChange(item)\" [(ngModel)]=\"item.isolate.enabled\">\n <span class=\"checkbox-label\">{{ item.isolate.label }}</span>\n </mat-checkbox>\n </div>\n </mat-hint>\n</mat-form-field>\n", styles: [".isolate{margin-bottom:25px}\n"] }]
|
|
40
|
-
}], ctorParameters:
|
|
41
|
-
type: Input
|
|
42
|
-
}], select: [{
|
|
43
|
-
type: ViewChild,
|
|
44
|
-
args: ['select', { static: true }]
|
|
45
|
-
}] } });
|
|
46
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Input, ViewChild, } from '@angular/core';
|
|
2
|
+
import { MatSelect } from '@angular/material/select';
|
|
3
|
+
import { SimpleSelectItem } from '../../../../models/items/select/simple-select-item';
|
|
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/form-field";
|
|
8
|
+
import * as i4 from "@angular/material/select";
|
|
9
|
+
import * as i5 from "@angular/material/core";
|
|
10
|
+
import * as i6 from "@angular/material/checkbox";
|
|
11
|
+
import * as i7 from "@firestitch/form";
|
|
12
|
+
import * as i8 from "../../../../directives/focus-to-item/focus-to-item.directive";
|
|
13
|
+
import * as i9 from "../../../../pipes/remove-isolate-value.pipe";
|
|
14
|
+
export class SelectSimpleComponent {
|
|
15
|
+
cd;
|
|
16
|
+
item;
|
|
17
|
+
select;
|
|
18
|
+
constructor(cd) {
|
|
19
|
+
this.cd = cd;
|
|
20
|
+
}
|
|
21
|
+
changed() {
|
|
22
|
+
if (this.item.isolate) {
|
|
23
|
+
this.item.isolate.enabled = false;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
isolateChange(filter) {
|
|
27
|
+
if (filter.isolate.enabled) {
|
|
28
|
+
filter.model = filter.isolate.value;
|
|
29
|
+
}
|
|
30
|
+
else {
|
|
31
|
+
filter.model = null;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: SelectSimpleComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
35
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.7", type: SelectSimpleComponent, selector: "filter-item-select-simple", inputs: { item: "item" }, viewQueries: [{ propertyName: "select", first: true, predicate: ["select"], descendants: true, static: true }], ngImport: i0, template: "<mat-form-field [ngClass]=\"{ isolate: item.isolate }\">\n <mat-label>{{item.label}}</mat-label>\n <mat-select\n #select\n [fsFilterFocusTrigger]=\"item\"\n [(ngModel)]=\"item.model\"\n (ngModelChange)=\"changed()\">\n <mat-option *ngFor=\"let item of item.values | fsFilterIsolateValues: item.isolate\"\n [value]=\"item.value\"\n >\n {{ item.name }}\n </mat-option>\n </mat-select>\n\n <mat-hint>\n <div *ngIf=\"item.isolate\">\n <mat-checkbox (change)=\"isolateChange(item)\" [(ngModel)]=\"item.isolate.enabled\">\n <span class=\"checkbox-label\">{{ item.isolate.label }}</span>\n </mat-checkbox>\n </div>\n </mat-hint>\n</mat-form-field>\n", styles: [".isolate{margin-bottom:25px}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3.MatLabel, selector: "mat-label" }, { kind: "directive", type: i3.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "component", type: i4.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i5.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "component", type: i6.MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "disabledInteractive", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { kind: "directive", type: i7.FsFormNoFsValidatorsDirective, selector: "[ngModel]:not([required]):not([fsFormRequired]):not([fsFormCompare]):not([fsFormDateRange]):not([fsFormEmail]):not([fsFormEmails]):not([fsFormFunction]):not([fsFormGreater]):not([fsFormGreaterEqual]):not([fsFormInteger]):not([fsFormLesser]):not([fsFormMax]):not([fsFormMaxLength]):not([fsFormMin]):not([fsFormMinLength]):not([fsFormNumeric]):not([fsFormPattern]):not([fsFormPhone]):not([fsFormUrl]):not([validate])" }, { kind: "directive", type: i8.FocusToItemDirective, selector: "[fsFilterFocusTrigger]", inputs: ["fsFilterFocusTrigger", "focusTargetType"] }, { kind: "pipe", type: i9.FsFilterIsolateValues, name: "fsFilterIsolateValues" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
36
|
+
}
|
|
37
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: SelectSimpleComponent, decorators: [{
|
|
38
|
+
type: Component,
|
|
39
|
+
args: [{ selector: 'filter-item-select-simple', changeDetection: ChangeDetectionStrategy.OnPush, template: "<mat-form-field [ngClass]=\"{ isolate: item.isolate }\">\n <mat-label>{{item.label}}</mat-label>\n <mat-select\n #select\n [fsFilterFocusTrigger]=\"item\"\n [(ngModel)]=\"item.model\"\n (ngModelChange)=\"changed()\">\n <mat-option *ngFor=\"let item of item.values | fsFilterIsolateValues: item.isolate\"\n [value]=\"item.value\"\n >\n {{ item.name }}\n </mat-option>\n </mat-select>\n\n <mat-hint>\n <div *ngIf=\"item.isolate\">\n <mat-checkbox (change)=\"isolateChange(item)\" [(ngModel)]=\"item.isolate.enabled\">\n <span class=\"checkbox-label\">{{ item.isolate.label }}</span>\n </mat-checkbox>\n </div>\n </mat-hint>\n</mat-form-field>\n", styles: [".isolate{margin-bottom:25px}\n"] }]
|
|
40
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }], propDecorators: { item: [{
|
|
41
|
+
type: Input
|
|
42
|
+
}], select: [{
|
|
43
|
+
type: ViewChild,
|
|
44
|
+
args: ['select', { static: true }]
|
|
45
|
+
}] } });
|
|
46
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2ltcGxlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29tcG9uZW50cy9maWx0ZXJzLWl0ZW0vc2VsZWN0L3NpbXBsZS9zaW1wbGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9jb21wb25lbnRzL2ZpbHRlcnMtaXRlbS9zZWxlY3Qvc2ltcGxlL3NpbXBsZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsS0FBSyxFQUNMLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDckQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sb0RBQW9ELENBQUM7Ozs7Ozs7Ozs7O0FBU3RGLE1BQU0sT0FBTyxxQkFBcUI7SUFNYjtJQUpILElBQUksQ0FBbUI7SUFFQSxNQUFNLENBQVk7SUFFekQsWUFBbUIsRUFBcUI7UUFBckIsT0FBRSxHQUFGLEVBQUUsQ0FBbUI7SUFBRyxDQUFDO0lBRXJDLE9BQU87UUFDWixJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDdEIsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztRQUNwQyxDQUFDO0lBQ0gsQ0FBQztJQUVNLGFBQWEsQ0FBQyxNQUFNO1FBRXpCLElBQUksTUFBTSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUMzQixNQUFNLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDO1FBQ3RDLENBQUM7YUFBTSxDQUFDO1lBQ04sTUFBTSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7UUFDdEIsQ0FBQztJQUNILENBQUM7dUdBckJVLHFCQUFxQjsyRkFBckIscUJBQXFCLDJNQ2pCbEMseXNCQXNCQTs7MkZETGEscUJBQXFCO2tCQU5qQyxTQUFTOytCQUNFLDJCQUEyQixtQkFHcEIsdUJBQXVCLENBQUMsTUFBTTtzRkFJL0IsSUFBSTtzQkFBbkIsS0FBSztnQkFFaUMsTUFBTTtzQkFBNUMsU0FBUzt1QkFBQyxRQUFRLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIElucHV0LFxuICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTWF0U2VsZWN0IH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc2VsZWN0JztcbmltcG9ydCB7IFNpbXBsZVNlbGVjdEl0ZW0gfSBmcm9tICcuLi8uLi8uLi8uLi9tb2RlbHMvaXRlbXMvc2VsZWN0L3NpbXBsZS1zZWxlY3QtaXRlbSc7XG5cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZmlsdGVyLWl0ZW0tc2VsZWN0LXNpbXBsZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9zaW1wbGUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9zaW1wbGUuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFNlbGVjdFNpbXBsZUNvbXBvbmVudCB7XG5cbiAgQElucHV0KCkgcHVibGljIGl0ZW06IFNpbXBsZVNlbGVjdEl0ZW07XG5cbiAgQFZpZXdDaGlsZCgnc2VsZWN0JywgeyBzdGF0aWM6IHRydWUgfSkgc2VsZWN0OiBNYXRTZWxlY3Q7XG5cbiAgY29uc3RydWN0b3IocHVibGljIGNkOiBDaGFuZ2VEZXRlY3RvclJlZikge31cblxuICBwdWJsaWMgY2hhbmdlZCgpIHtcbiAgICBpZiAodGhpcy5pdGVtLmlzb2xhdGUpIHtcbiAgICAgIHRoaXMuaXRlbS5pc29sYXRlLmVuYWJsZWQgPSBmYWxzZTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgaXNvbGF0ZUNoYW5nZShmaWx0ZXIpIHtcblxuICAgIGlmIChmaWx0ZXIuaXNvbGF0ZS5lbmFibGVkKSB7XG4gICAgICBmaWx0ZXIubW9kZWwgPSBmaWx0ZXIuaXNvbGF0ZS52YWx1ZTtcbiAgICB9IGVsc2Uge1xuICAgICAgZmlsdGVyLm1vZGVsID0gbnVsbDtcbiAgICB9XG4gIH1cbn1cbiIsIjxtYXQtZm9ybS1maWVsZCBbbmdDbGFzc109XCJ7IGlzb2xhdGU6IGl0ZW0uaXNvbGF0ZSB9XCI+XG4gIDxtYXQtbGFiZWw+e3tpdGVtLmxhYmVsfX08L21hdC1sYWJlbD5cbiAgPG1hdC1zZWxlY3RcbiAgICAjc2VsZWN0XG4gICAgW2ZzRmlsdGVyRm9jdXNUcmlnZ2VyXT1cIml0ZW1cIlxuICAgIFsobmdNb2RlbCldPVwiaXRlbS5tb2RlbFwiXG4gICAgKG5nTW9kZWxDaGFuZ2UpPVwiY2hhbmdlZCgpXCI+XG4gICAgPG1hdC1vcHRpb24gKm5nRm9yPVwibGV0IGl0ZW0gb2YgaXRlbS52YWx1ZXMgfCBmc0ZpbHRlcklzb2xhdGVWYWx1ZXM6IGl0ZW0uaXNvbGF0ZVwiXG4gICAgICAgICAgICAgICAgW3ZhbHVlXT1cIml0ZW0udmFsdWVcIlxuICAgID5cbiAgICAgIHt7IGl0ZW0ubmFtZSB9fVxuICAgIDwvbWF0LW9wdGlvbj5cbiAgPC9tYXQtc2VsZWN0PlxuXG4gIDxtYXQtaGludD5cbiAgICA8ZGl2ICpuZ0lmPVwiaXRlbS5pc29sYXRlXCI+XG4gICAgICA8bWF0LWNoZWNrYm94IChjaGFuZ2UpPVwiaXNvbGF0ZUNoYW5nZShpdGVtKVwiIFsobmdNb2RlbCldPVwiaXRlbS5pc29sYXRlLmVuYWJsZWRcIj5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJjaGVja2JveC1sYWJlbFwiPnt7IGl0ZW0uaXNvbGF0ZS5sYWJlbCB9fTwvc3Bhbj5cbiAgICAgIDwvbWF0LWNoZWNrYm94PlxuICAgIDwvZGl2PlxuICA8L21hdC1oaW50PlxuPC9tYXQtZm9ybS1maWVsZD5cbiJdfQ==
|
|
@@ -1,51 +1,51 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, ChangeDetectorRef, Component, KeyValueDiffers, } from '@angular/core';
|
|
2
|
-
import { UntypedFormControl } from '@angular/forms';
|
|
3
|
-
import { Subject } from 'rxjs';
|
|
4
|
-
import { distinctUntilChanged, takeUntil, debounceTime } from 'rxjs/operators';
|
|
5
|
-
import { BaseItemComponent } from '../base-item/base-item.component';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
import * as i1 from "@angular/common";
|
|
8
|
-
import * as i2 from "@angular/forms";
|
|
9
|
-
import * as i3 from "@angular/material/input";
|
|
10
|
-
import * as i4 from "@angular/material/form-field";
|
|
11
|
-
import * as i5 from "../../../directives/focus-to-item/focus-to-item.directive";
|
|
12
|
-
export class TextComponent extends BaseItemComponent {
|
|
13
|
-
_kvDiffers;
|
|
14
|
-
_cd;
|
|
15
|
-
textControl = new UntypedFormControl();
|
|
16
|
-
destroy$ = new Subject();
|
|
17
|
-
constructor(_kvDiffers, _cd) {
|
|
18
|
-
super(_kvDiffers, _cd);
|
|
19
|
-
this._kvDiffers = _kvDiffers;
|
|
20
|
-
this._cd = _cd;
|
|
21
|
-
}
|
|
22
|
-
ngOnInit() {
|
|
23
|
-
this._listenControlValueChanges();
|
|
24
|
-
this._listenModelChanges();
|
|
25
|
-
}
|
|
26
|
-
ngOnDestroy() {
|
|
27
|
-
this.destroy$.next();
|
|
28
|
-
this.destroy$.complete();
|
|
29
|
-
}
|
|
30
|
-
_listenControlValueChanges() {
|
|
31
|
-
this.textControl.valueChanges
|
|
32
|
-
.pipe(distinctUntilChanged(), debounceTime(200), takeUntil(this.destroy$))
|
|
33
|
-
.subscribe((value) => {
|
|
34
|
-
this.item.model = value;
|
|
35
|
-
});
|
|
36
|
-
}
|
|
37
|
-
_listenModelChanges() {
|
|
38
|
-
this._item.value$
|
|
39
|
-
.pipe(takeUntil(this.destroy$))
|
|
40
|
-
.subscribe(() => {
|
|
41
|
-
this.textControl.setValue(this.item.model, { emitEvent: false });
|
|
42
|
-
});
|
|
43
|
-
}
|
|
44
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
45
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
46
|
-
}
|
|
47
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
48
|
-
type: Component,
|
|
49
|
-
args: [{ selector: 'filter-item-text', changeDetection: ChangeDetectionStrategy.OnPush, template: "<mat-form-field>\n <mat-label>{{item.label}}</mat-label>\n <span matPrefix *ngIf=\"item.prefix\" [innerHtml]=\"item.prefix\"></span>\n <input matInput [formControl]=\"textControl\" [fsFilterFocusTrigger]=\"item\">\n <span matSuffix *ngIf=\"item.suffix\" [innerHtml]=\"item.suffix\"></span>\n</mat-form-field>\n" }]
|
|
50
|
-
}], ctorParameters:
|
|
51
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { ChangeDetectionStrategy, ChangeDetectorRef, Component, KeyValueDiffers, } from '@angular/core';
|
|
2
|
+
import { UntypedFormControl } from '@angular/forms';
|
|
3
|
+
import { Subject } from 'rxjs';
|
|
4
|
+
import { distinctUntilChanged, takeUntil, debounceTime } from 'rxjs/operators';
|
|
5
|
+
import { BaseItemComponent } from '../base-item/base-item.component';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "@angular/common";
|
|
8
|
+
import * as i2 from "@angular/forms";
|
|
9
|
+
import * as i3 from "@angular/material/input";
|
|
10
|
+
import * as i4 from "@angular/material/form-field";
|
|
11
|
+
import * as i5 from "../../../directives/focus-to-item/focus-to-item.directive";
|
|
12
|
+
export class TextComponent extends BaseItemComponent {
|
|
13
|
+
_kvDiffers;
|
|
14
|
+
_cd;
|
|
15
|
+
textControl = new UntypedFormControl();
|
|
16
|
+
destroy$ = new Subject();
|
|
17
|
+
constructor(_kvDiffers, _cd) {
|
|
18
|
+
super(_kvDiffers, _cd);
|
|
19
|
+
this._kvDiffers = _kvDiffers;
|
|
20
|
+
this._cd = _cd;
|
|
21
|
+
}
|
|
22
|
+
ngOnInit() {
|
|
23
|
+
this._listenControlValueChanges();
|
|
24
|
+
this._listenModelChanges();
|
|
25
|
+
}
|
|
26
|
+
ngOnDestroy() {
|
|
27
|
+
this.destroy$.next(null);
|
|
28
|
+
this.destroy$.complete();
|
|
29
|
+
}
|
|
30
|
+
_listenControlValueChanges() {
|
|
31
|
+
this.textControl.valueChanges
|
|
32
|
+
.pipe(distinctUntilChanged(), debounceTime(200), takeUntil(this.destroy$))
|
|
33
|
+
.subscribe((value) => {
|
|
34
|
+
this.item.model = value;
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
_listenModelChanges() {
|
|
38
|
+
this._item.value$
|
|
39
|
+
.pipe(takeUntil(this.destroy$))
|
|
40
|
+
.subscribe(() => {
|
|
41
|
+
this.textControl.setValue(this.item.model, { emitEvent: false });
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: TextComponent, deps: [{ token: i0.KeyValueDiffers }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
45
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.7", type: TextComponent, selector: "filter-item-text", usesInheritance: true, ngImport: i0, template: "<mat-form-field>\n <mat-label>{{item.label}}</mat-label>\n <span matPrefix *ngIf=\"item.prefix\" [innerHtml]=\"item.prefix\"></span>\n <input matInput [formControl]=\"textControl\" [fsFilterFocusTrigger]=\"item\">\n <span matSuffix *ngIf=\"item.suffix\" [innerHtml]=\"item.suffix\"></span>\n</mat-form-field>\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i4.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4.MatLabel, selector: "mat-label" }, { kind: "directive", type: i4.MatPrefix, selector: "[matPrefix], [matIconPrefix], [matTextPrefix]", inputs: ["matTextPrefix"] }, { kind: "directive", type: i4.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "directive", type: i5.FocusToItemDirective, selector: "[fsFilterFocusTrigger]", inputs: ["fsFilterFocusTrigger", "focusTargetType"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
46
|
+
}
|
|
47
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: TextComponent, decorators: [{
|
|
48
|
+
type: Component,
|
|
49
|
+
args: [{ selector: 'filter-item-text', changeDetection: ChangeDetectionStrategy.OnPush, template: "<mat-form-field>\n <mat-label>{{item.label}}</mat-label>\n <span matPrefix *ngIf=\"item.prefix\" [innerHtml]=\"item.prefix\"></span>\n <input matInput [formControl]=\"textControl\" [fsFilterFocusTrigger]=\"item\">\n <span matSuffix *ngIf=\"item.suffix\" [innerHtml]=\"item.suffix\"></span>\n</mat-form-field>\n" }]
|
|
50
|
+
}], ctorParameters: () => [{ type: i0.KeyValueDiffers }, { type: i0.ChangeDetectorRef }] });
|
|
51
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2NvbXBvbmVudHMvZmlsdGVycy1pdGVtL3RleHQvdGV4dC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2NvbXBvbmVudHMvZmlsdGVycy1pdGVtL3RleHQvdGV4dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsZUFBZSxHQUdoQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVwRCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFL0UsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7Ozs7Ozs7QUFVckUsTUFBTSxPQUFPLGFBQWMsU0FBUSxpQkFBMkI7SUFNaEQ7SUFDQTtJQUxMLFdBQVcsR0FBRyxJQUFJLGtCQUFrQixFQUFFLENBQUM7SUFDdkMsUUFBUSxHQUFHLElBQUksT0FBTyxFQUFFLENBQUM7SUFFaEMsWUFDWSxVQUEyQixFQUMzQixHQUFzQjtRQUVoQyxLQUFLLENBQUMsVUFBVSxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBSGIsZUFBVSxHQUFWLFVBQVUsQ0FBaUI7UUFDM0IsUUFBRyxHQUFILEdBQUcsQ0FBbUI7SUFHbEMsQ0FBQztJQUVNLFFBQVE7UUFDYixJQUFJLENBQUMsMEJBQTBCLEVBQUUsQ0FBQztRQUNsQyxJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztJQUM3QixDQUFDO0lBRU0sV0FBVztRQUNoQixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN6QixJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzNCLENBQUM7SUFFTywwQkFBMEI7UUFDaEMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxZQUFZO2FBQzFCLElBQUksQ0FDSCxvQkFBb0IsRUFBRSxFQUN0QixZQUFZLENBQUMsR0FBRyxDQUFDLEVBQ2pCLFNBQVMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQ3pCO2FBQ0EsU0FBUyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDbkIsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQzFCLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVPLG1CQUFtQjtRQUN6QixJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU07YUFDZCxJQUFJLENBQ0gsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FDekI7YUFDQSxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ2QsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUNuRSxDQUFDLENBQUMsQ0FBQTtJQUNOLENBQUM7dUdBMUNVLGFBQWE7MkZBQWIsYUFBYSwrRUN2QjFCLDRUQU1BOzsyRkRpQmEsYUFBYTtrQkFOekIsU0FBUzsrQkFDRSxrQkFBa0IsbUJBR1gsdUJBQXVCLENBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBLZXlWYWx1ZURpZmZlcnMsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFVudHlwZWRGb3JtQ29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZGlzdGluY3RVbnRpbENoYW5nZWQsIHRha2VVbnRpbCwgZGVib3VuY2VUaW1lIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBCYXNlSXRlbUNvbXBvbmVudCB9IGZyb20gJy4uL2Jhc2UtaXRlbS9iYXNlLWl0ZW0uY29tcG9uZW50JztcbmltcG9ydCB7IFRleHRJdGVtIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL2l0ZW1zL3RleHQtaXRlbSc7XG5cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZmlsdGVyLWl0ZW0tdGV4dCcsXG4gIHRlbXBsYXRlVXJsOiAnLi90ZXh0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vdGV4dC5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgVGV4dENvbXBvbmVudCBleHRlbmRzIEJhc2VJdGVtQ29tcG9uZW50PFRleHRJdGVtPiBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcblxuICBwdWJsaWMgdGV4dENvbnRyb2wgPSBuZXcgVW50eXBlZEZvcm1Db250cm9sKCk7XG4gIHB1YmxpYyBkZXN0cm95JCA9IG5ldyBTdWJqZWN0KCk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJvdGVjdGVkIF9rdkRpZmZlcnM6IEtleVZhbHVlRGlmZmVycyxcbiAgICBwcm90ZWN0ZWQgX2NkOiBDaGFuZ2VEZXRlY3RvclJlZlxuICApIHtcbiAgICBzdXBlcihfa3ZEaWZmZXJzLCBfY2QpO1xuICB9XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuX2xpc3RlbkNvbnRyb2xWYWx1ZUNoYW5nZXMoKTtcbiAgICB0aGlzLl9saXN0ZW5Nb2RlbENoYW5nZXMoKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLmRlc3Ryb3kkLm5leHQobnVsbCk7XG4gICAgdGhpcy5kZXN0cm95JC5jb21wbGV0ZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBfbGlzdGVuQ29udHJvbFZhbHVlQ2hhbmdlcygpOiB2b2lkIHtcbiAgICB0aGlzLnRleHRDb250cm9sLnZhbHVlQ2hhbmdlc1xuICAgICAgLnBpcGUoXG4gICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgICAgIGRlYm91bmNlVGltZSgyMDApLFxuICAgICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95JCksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCh2YWx1ZSkgPT4ge1xuICAgICAgICB0aGlzLml0ZW0ubW9kZWwgPSB2YWx1ZTtcbiAgICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfbGlzdGVuTW9kZWxDaGFuZ2VzKCk6IHZvaWQge1xuICAgIHRoaXMuX2l0ZW0udmFsdWUkXG4gICAgICAucGlwZShcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuZGVzdHJveSQpLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMudGV4dENvbnRyb2wuc2V0VmFsdWUodGhpcy5pdGVtLm1vZGVsLCB7IGVtaXRFdmVudDogZmFsc2UgfSk7XG4gICAgICB9KVxuICB9XG5cbn1cbiIsIjxtYXQtZm9ybS1maWVsZD5cbiAgPG1hdC1sYWJlbD57e2l0ZW0ubGFiZWx9fTwvbWF0LWxhYmVsPlxuICA8c3BhbiBtYXRQcmVmaXggKm5nSWY9XCJpdGVtLnByZWZpeFwiIFtpbm5lckh0bWxdPVwiaXRlbS5wcmVmaXhcIj48L3NwYW4+XG4gIDxpbnB1dCBtYXRJbnB1dCBbZm9ybUNvbnRyb2xdPVwidGV4dENvbnRyb2xcIiBbZnNGaWx0ZXJGb2N1c1RyaWdnZXJdPVwiaXRlbVwiPlxuICA8c3BhbiBtYXRTdWZmaXggKm5nSWY9XCJpdGVtLnN1ZmZpeFwiIFtpbm5lckh0bWxdPVwiaXRlbS5zdWZmaXhcIj48L3NwYW4+XG48L21hdC1mb3JtLWZpZWxkPlxuIl19
|