@firestitch/filter 12.9.2 → 12.10.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 +38 -38
- package/app/components/action-button/action-button.component.d.ts +7 -7
- package/app/components/action-kebab-actions/action-kebab-actions.component.d.ts +7 -7
- package/app/components/actions/actions.component.d.ts +8 -8
- package/app/components/filter/filter.component.d.ts +192 -192
- 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 +8 -8
- package/app/components/filter-drawer/filter-drawer.component.d.ts +30 -30
- package/app/components/filter-drawer-actions/filter-drawer-actions.component.d.ts +15 -15
- package/app/components/filters-item/autocomplete/autocomplete.component.d.ts +13 -13
- package/app/components/filters-item/autocompletechips/autocompletechips.component.d.ts +20 -20
- package/app/components/filters-item/base-item/base-item.component.d.ts +23 -23
- 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 +19 -19
- package/app/components/filters-item/date-range/date-range.component.d.ts +14 -14
- package/app/components/filters-item/filter-item.component.d.ts +15 -15
- 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 +16 -16
- 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-edit/saved-filter-edit.component.d.ts +18 -18
- package/app/components/saved-filters-menu/saved-filters-menu.component.d.ts +23 -23
- 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 +5 -5
- package/app/enums/action-mode.enum.d.ts +5 -5
- package/app/enums/action-type.enum.d.ts +7 -7
- package/app/enums/item-date-mode.enum.d.ts +5 -5
- package/app/enums/item-type.enum.d.ts +15 -15
- package/app/fs-filter.module.d.ts +64 -64
- 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 +13 -13
- 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/helpers/try-convert-to-number.d.ts +1 -1
- 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 +69 -69
- package/app/interfaces/config.interface.d.ts +61 -61
- package/app/interfaces/external-params.interface.d.ts +3 -3
- package/app/interfaces/filter.interface.d.ts +4 -4
- package/app/interfaces/items/autocomplete-chips.interface.d.ts +12 -12
- package/app/interfaces/items/autocomplete.interface.d.ts +6 -6
- package/app/interfaces/items/base.interface.d.ts +27 -27
- 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 +45 -45
- package/app/models/filter-config.d.ts +30 -30
- package/app/models/items/autocomplete/base-autocomplete-item.d.ts +12 -12
- package/app/models/items/autocomplete-chips-item.d.ts +19 -19
- package/app/models/items/autocomplete-item.d.ts +10 -10
- package/app/models/items/base-item.d.ts +75 -75
- package/app/models/items/checkbox-item.d.ts +16 -16
- package/app/models/items/chips-item.d.ts +17 -17
- package/app/models/items/date/base-date-item.d.ts +14 -14
- package/app/models/items/date-item.d.ts +7 -7
- package/app/models/items/date-range/base-date-range-item.d.ts +21 -21
- package/app/models/items/date-range-item.d.ts +5 -5
- package/app/models/items/date-time-item.d.ts +6 -6
- package/app/models/items/date-time-range-item.d.ts +5 -5
- package/app/models/items/range-item.d.ts +22 -22
- package/app/models/items/select/base-select-item.d.ts +13 -13
- package/app/models/items/select/multiple-select-item.d.ts +13 -13
- package/app/models/items/select/simple-select-item.d.ts +12 -12
- package/app/models/items/select-item.d.ts +7 -7
- package/app/models/items/text-item.d.ts +14 -14
- package/app/models/items/week-item.d.ts +17 -17
- 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 +22 -22
- package/app/services/external-params/query-params-controller.service.d.ts +24 -24
- 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 +34 -34
- package/app/services/focus-controller.service.d.ts +18 -18
- package/app/services/items-store.service.d.ts +65 -65
- package/bundles/firestitch-filter.umd.js +5375 -5375
- package/bundles/firestitch-filter.umd.js.map +1 -1
- package/esm2015/app/classes/actions-controller.js +122 -122
- package/esm2015/app/components/action-button/action-button.component.js +23 -23
- package/esm2015/app/components/action-kebab-actions/action-kebab-actions.component.js +21 -21
- package/esm2015/app/components/actions/actions.component.js +29 -29
- package/esm2015/app/components/filter/filter.component.js +617 -617
- package/esm2015/app/components/filter-chip/filter-chip.component.js +90 -90
- package/esm2015/app/components/filter-chip-content/filter-chip-content.component.js +83 -83
- package/esm2015/app/components/filter-chips/filter-chips.component.js +24 -24
- package/esm2015/app/components/filter-drawer/filter-drawer.component.js +75 -75
- package/esm2015/app/components/filter-drawer-actions/filter-drawer-actions.component.js +42 -42
- package/esm2015/app/components/filters-item/autocomplete/autocomplete.component.js +29 -29
- package/esm2015/app/components/filters-item/autocompletechips/autocompletechips.component.js +51 -51
- package/esm2015/app/components/filters-item/base-item/base-item.component.js +58 -58
- package/esm2015/app/components/filters-item/checkbox/checkbox.component.js +24 -24
- package/esm2015/app/components/filters-item/chips/chips.component.js +31 -31
- package/esm2015/app/components/filters-item/date/date.component.js +44 -44
- package/esm2015/app/components/filters-item/date-range/date-range.component.js +35 -35
- package/esm2015/app/components/filters-item/filter-item.component.js +47 -47
- package/esm2015/app/components/filters-item/range/range.component.js +48 -48
- package/esm2015/app/components/filters-item/select/backdrop/backdrop.component.js +16 -16
- package/esm2015/app/components/filters-item/select/groups/groups.component.js +32 -32
- package/esm2015/app/components/filters-item/select/multiple/multiple.component.js +60 -60
- package/esm2015/app/components/filters-item/select/select.component.js +43 -43
- package/esm2015/app/components/filters-item/select/simple/simple.component.js +46 -46
- package/esm2015/app/components/filters-item/text/text.component.js +53 -53
- package/esm2015/app/components/filters-item/week/week.component.js +27 -27
- package/esm2015/app/components/saved-filter-edit/saved-filter-edit.component.js +54 -54
- package/esm2015/app/components/saved-filters-menu/saved-filters-menu.component.js +57 -57
- package/esm2015/app/consts/query-param-delimiter.js +1 -1
- package/esm2015/app/directives/focus-to-item/focus-to-item.directive.js +129 -129
- package/esm2015/app/directives/status-bar/status-bar.directive.js +12 -12
- package/esm2015/app/enums/action-mode.enum.js +6 -6
- package/esm2015/app/enums/action-type.enum.js +8 -8
- package/esm2015/app/enums/item-date-mode.enum.js +6 -6
- package/esm2015/app/enums/item-type.enum.js +16 -16
- package/esm2015/app/fs-filter.module.js +234 -234
- package/esm2015/app/helpers/build-query-params.js +31 -31
- package/esm2015/app/helpers/compare.js +37 -37
- package/esm2015/app/helpers/create-filter-item.js +54 -54
- package/esm2015/app/helpers/find-value.js +12 -12
- package/esm2015/app/helpers/get-range-name.js +8 -8
- package/esm2015/app/helpers/parse-date.js +7 -7
- package/esm2015/app/helpers/parse-item-value-from-stored.js +81 -81
- package/esm2015/app/helpers/query-param-transformers.js +8 -8
- package/esm2015/app/helpers/restore-items.js +48 -48
- package/esm2015/app/helpers/try-convert-to-number.js +5 -5
- package/esm2015/app/injectors/filter-config.js +2 -2
- package/esm2015/app/injectors/filter-drawer-data.js +2 -2
- package/esm2015/app/injectors/filter-drawer-overlay.js +2 -2
- package/esm2015/app/interfaces/action.interface.js +1 -1
- package/esm2015/app/interfaces/config.interface.js +1 -1
- package/esm2015/app/interfaces/external-params.interface.js +1 -1
- package/esm2015/app/interfaces/filter.interface.js +1 -1
- package/esm2015/app/interfaces/items/autocomplete-chips.interface.js +1 -1
- package/esm2015/app/interfaces/items/autocomplete.interface.js +1 -1
- package/esm2015/app/interfaces/items/base.interface.js +1 -1
- package/esm2015/app/interfaces/items/checkbox.interface.js +1 -1
- package/esm2015/app/interfaces/items/chips.interface.js +1 -1
- package/esm2015/app/interfaces/items/date-range.interface.js +1 -1
- package/esm2015/app/interfaces/items/date.interface.js +1 -1
- package/esm2015/app/interfaces/items/range.interface.js +1 -1
- package/esm2015/app/interfaces/items/select.interface.js +1 -1
- package/esm2015/app/interfaces/items/text.interface.js +1 -1
- package/esm2015/app/interfaces/items/week.interface.js +1 -1
- package/esm2015/app/interfaces/saved-filters.interface.js +1 -1
- package/esm2015/app/interfaces/update-filter-item.interface.js +1 -1
- package/esm2015/app/models/action-menu-item.model.js +66 -66
- package/esm2015/app/models/action.model.js +102 -102
- package/esm2015/app/models/filter-config.js +65 -65
- package/esm2015/app/models/items/autocomplete/base-autocomplete-item.js +13 -13
- package/esm2015/app/models/items/autocomplete-chips-item.js +61 -61
- package/esm2015/app/models/items/autocomplete-item.js +30 -30
- package/esm2015/app/models/items/base-item.js +233 -233
- package/esm2015/app/models/items/checkbox-item.js +47 -47
- package/esm2015/app/models/items/chips-item.js +83 -83
- package/esm2015/app/models/items/date/base-date-item.js +47 -47
- package/esm2015/app/models/items/date-item.js +18 -18
- package/esm2015/app/models/items/date-range/base-date-range-item.js +136 -136
- package/esm2015/app/models/items/date-range-item.js +6 -6
- package/esm2015/app/models/items/date-time-item.js +9 -9
- package/esm2015/app/models/items/date-time-range-item.js +6 -6
- package/esm2015/app/models/items/range-item.js +88 -88
- package/esm2015/app/models/items/select/base-select-item.js +33 -33
- package/esm2015/app/models/items/select/multiple-select-item.js +90 -90
- package/esm2015/app/models/items/select/simple-select-item.js +62 -62
- package/esm2015/app/models/items/select-item.js +12 -12
- package/esm2015/app/models/items/text-item.js +29 -29
- package/esm2015/app/models/items/week-item.js +98 -98
- package/esm2015/app/pipes/remove-isolate-value.pipe.js +22 -22
- package/esm2015/app/providers/filter-meta.js +9 -9
- package/esm2015/app/services/external-params/persistance-params-controller.service.js +57 -57
- package/esm2015/app/services/external-params/query-params-controller.service.js +66 -66
- package/esm2015/app/services/external-params/saved-filters-controller.service.js +164 -164
- package/esm2015/app/services/external-params-controller.service.js +162 -162
- package/esm2015/app/services/filter-overlay.service.js +115 -115
- package/esm2015/app/services/focus-controller.service.js +29 -29
- package/esm2015/app/services/items-store.service.js +340 -340
- package/esm2015/firestitch-filter.js +4 -4
- package/esm2015/public_api.js +36 -36
- package/fesm2015/firestitch-filter.js +4290 -4290
- package/fesm2015/firestitch-filter.js.map +1 -1
- package/firestitch-filter.d.ts +5 -5
- package/package.json +1 -1
- package/public_api.d.ts +40 -40
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { BaseDateItem } from './date/base-date-item';
|
|
2
|
-
export class DateTimeItem extends BaseDateItem {
|
|
3
|
-
static create(config) {
|
|
4
|
-
return new DateTimeItem(config, null);
|
|
5
|
-
}
|
|
6
|
-
_clearValue(defaultValue = undefined) {
|
|
7
|
-
this.model = defaultValue !== null && defaultValue !== void 0 ? defaultValue : undefined;
|
|
8
|
-
}
|
|
9
|
-
}
|
|
1
|
+
import { BaseDateItem } from './date/base-date-item';
|
|
2
|
+
export class DateTimeItem extends BaseDateItem {
|
|
3
|
+
static create(config) {
|
|
4
|
+
return new DateTimeItem(config, null);
|
|
5
|
+
}
|
|
6
|
+
_clearValue(defaultValue = undefined) {
|
|
7
|
+
this.model = defaultValue !== null && defaultValue !== void 0 ? defaultValue : undefined;
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
10
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS10aW1lLWl0ZW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvYXBwL21vZGVscy9pdGVtcy9kYXRlLXRpbWUtaXRlbS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFLQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFHckQsTUFBTSxPQUFPLFlBQWEsU0FBUSxZQUFZO0lBRXJDLE1BQU0sQ0FBQyxNQUFNLENBQUMsTUFBNkI7UUFDaEQsT0FBTyxJQUFJLFlBQVksQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDeEMsQ0FBQztJQUVTLFdBQVcsQ0FBQyxlQUF3QixTQUFTO1FBQ3JELElBQUksQ0FBQyxLQUFLLEdBQUcsWUFBWSxhQUFaLFlBQVksY0FBWixZQUFZLEdBQUksU0FBUyxDQUFDO0lBQ3pDLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIElGaWx0ZXJDb25maWdEYXRlSXRlbSxcbn0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9pdGVtcy9kYXRlLmludGVyZmFjZSc7XG5pbXBvcnQgeyBJdGVtVHlwZSB9IGZyb20gJy4uLy4uL2VudW1zL2l0ZW0tdHlwZS5lbnVtJztcblxuaW1wb3J0IHsgQmFzZURhdGVJdGVtIH0gZnJvbSAnLi9kYXRlL2Jhc2UtZGF0ZS1pdGVtJztcblxuXG5leHBvcnQgY2xhc3MgRGF0ZVRpbWVJdGVtIGV4dGVuZHMgQmFzZURhdGVJdGVtIHtcblxuICBwdWJsaWMgc3RhdGljIGNyZWF0ZShjb25maWc6IElGaWx0ZXJDb25maWdEYXRlSXRlbSkge1xuICAgIHJldHVybiBuZXcgRGF0ZVRpbWVJdGVtKGNvbmZpZywgbnVsbCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgX2NsZWFyVmFsdWUoZGVmYXVsdFZhbHVlOiB1bmtub3duID0gdW5kZWZpbmVkKSB7XG4gICAgdGhpcy5tb2RlbCA9IGRlZmF1bHRWYWx1ZSA/PyB1bmRlZmluZWQ7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { BaseDateRangeItem } from './date-range/base-date-range-item';
|
|
2
|
-
export class DateTimeRangeItem extends BaseDateRangeItem {
|
|
3
|
-
static create(config) {
|
|
4
|
-
return new DateTimeRangeItem(config, null);
|
|
5
|
-
}
|
|
6
|
-
}
|
|
1
|
+
import { BaseDateRangeItem } from './date-range/base-date-range-item';
|
|
2
|
+
export class DateTimeRangeItem extends BaseDateRangeItem {
|
|
3
|
+
static create(config) {
|
|
4
|
+
return new DateTimeRangeItem(config, null);
|
|
5
|
+
}
|
|
6
|
+
}
|
|
7
7
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS10aW1lLXJhbmdlLWl0ZW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvYXBwL21vZGVscy9pdGVtcy9kYXRlLXRpbWUtcmFuZ2UtaXRlbS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUd0RSxNQUFNLE9BQU8saUJBQWtCLFNBQVEsaUJBQWlCO0lBRS9DLE1BQU0sQ0FBQyxNQUFNLENBQUMsTUFBa0M7UUFDckQsT0FBTyxJQUFJLGlCQUFpQixDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQztJQUM3QyxDQUFDO0NBRUYiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJRmlsdGVyQ29uZmlnRGF0ZVJhbmdlSXRlbSB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvaXRlbXMvZGF0ZS1yYW5nZS5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgSXRlbVR5cGUgfSBmcm9tICcuLi8uLi9lbnVtcy9pdGVtLXR5cGUuZW51bSc7XG5cbmltcG9ydCB7IEJhc2VEYXRlUmFuZ2VJdGVtIH0gZnJvbSAnLi9kYXRlLXJhbmdlL2Jhc2UtZGF0ZS1yYW5nZS1pdGVtJztcblxuXG5leHBvcnQgY2xhc3MgRGF0ZVRpbWVSYW5nZUl0ZW0gZXh0ZW5kcyBCYXNlRGF0ZVJhbmdlSXRlbSB7XG5cbiAgcHVibGljIHN0YXRpYyBjcmVhdGUoY29uZmlnOiBJRmlsdGVyQ29uZmlnRGF0ZVJhbmdlSXRlbSkge1xuICAgIHJldHVybiBuZXcgRGF0ZVRpbWVSYW5nZUl0ZW0oY29uZmlnLCBudWxsKTtcbiAgfVxuXG59XG4iXX0=
|
|
@@ -1,89 +1,89 @@
|
|
|
1
|
-
import { clone, isObject } from 'lodash-es';
|
|
2
|
-
import { isEmpty } from '@firestitch/common';
|
|
3
|
-
import { getRangeName } from '../../helpers/get-range-name';
|
|
4
|
-
import { BaseItem } from './base-item';
|
|
5
|
-
export class RangeItem extends BaseItem {
|
|
6
|
-
static create(config, additionalConfig) {
|
|
7
|
-
return new RangeItem(config, additionalConfig);
|
|
8
|
-
}
|
|
9
|
-
get value() {
|
|
10
|
-
let value = clone(this.model);
|
|
11
|
-
if (!isObject(this.model) ||
|
|
12
|
-
(isEmpty(this.model.max, { zero: true }) && isEmpty(this.model.min, { zero: true }))) {
|
|
13
|
-
value = undefined;
|
|
14
|
-
}
|
|
15
|
-
return value;
|
|
16
|
-
}
|
|
17
|
-
get queryObject() {
|
|
18
|
-
const value = this.value;
|
|
19
|
-
const name = this.name;
|
|
20
|
-
const params = {};
|
|
21
|
-
const paramMinName = getRangeName(this.case, name, 'min');
|
|
22
|
-
const paramMaxName = getRangeName(this.case, name, 'max');
|
|
23
|
-
if (isObject(value)) {
|
|
24
|
-
params[paramMinName] = value.min || undefined;
|
|
25
|
-
params[paramMaxName] = value.max || undefined;
|
|
26
|
-
}
|
|
27
|
-
else {
|
|
28
|
-
params[paramMinName] = undefined;
|
|
29
|
-
params[paramMaxName] = undefined;
|
|
30
|
-
}
|
|
31
|
-
return params;
|
|
32
|
-
}
|
|
33
|
-
get isChipVisible() {
|
|
34
|
-
return this.model && (this.model.min !== undefined || this.model.max !== undefined);
|
|
35
|
-
}
|
|
36
|
-
getChipsContent(type) {
|
|
37
|
-
if (type === 'from') {
|
|
38
|
-
const min = this.model.min;
|
|
39
|
-
return `${min}`;
|
|
40
|
-
}
|
|
41
|
-
else if (type === 'to') {
|
|
42
|
-
const max = this.model.max;
|
|
43
|
-
return `${max}`;
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
clearRange(type = null, defaultValue = undefined) {
|
|
47
|
-
if (type === 'from') {
|
|
48
|
-
delete this.model.min;
|
|
49
|
-
if (defaultValue === null || defaultValue === void 0 ? void 0 : defaultValue.min) {
|
|
50
|
-
this.model.min = defaultValue.min;
|
|
51
|
-
}
|
|
52
|
-
this.model = Object.assign({}, this.model);
|
|
53
|
-
}
|
|
54
|
-
else if (type === 'to') {
|
|
55
|
-
delete this.model.max;
|
|
56
|
-
if (defaultValue === null || defaultValue === void 0 ? void 0 : defaultValue.max) {
|
|
57
|
-
this.model.max = defaultValue.max;
|
|
58
|
-
}
|
|
59
|
-
this.model = Object.assign({}, this.model);
|
|
60
|
-
}
|
|
61
|
-
else {
|
|
62
|
-
if (defaultValue) {
|
|
63
|
-
this.model = Object.assign({}, defaultValue);
|
|
64
|
-
}
|
|
65
|
-
else {
|
|
66
|
-
this.model = {};
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
_validateModel() {
|
|
71
|
-
}
|
|
72
|
-
_parseConfig(item) {
|
|
73
|
-
var _a, _b;
|
|
74
|
-
this.options = item.options;
|
|
75
|
-
this.prefix = item.prefix;
|
|
76
|
-
this.suffix = item.suffix;
|
|
77
|
-
this.case = (_b = (_a = this._additionalConfig) === null || _a === void 0 ? void 0 : _a.case) !== null && _b !== void 0 ? _b : 'camel';
|
|
78
|
-
super._parseConfig(item);
|
|
79
|
-
}
|
|
80
|
-
_init() {
|
|
81
|
-
if (!this.label) {
|
|
82
|
-
this.label = ['Min', 'Max'];
|
|
83
|
-
}
|
|
84
|
-
if (!this.model) {
|
|
85
|
-
this.model = this.defaultValue || {};
|
|
86
|
-
}
|
|
87
|
-
}
|
|
88
|
-
}
|
|
1
|
+
import { clone, isObject } from 'lodash-es';
|
|
2
|
+
import { isEmpty } from '@firestitch/common';
|
|
3
|
+
import { getRangeName } from '../../helpers/get-range-name';
|
|
4
|
+
import { BaseItem } from './base-item';
|
|
5
|
+
export class RangeItem extends BaseItem {
|
|
6
|
+
static create(config, additionalConfig) {
|
|
7
|
+
return new RangeItem(config, additionalConfig);
|
|
8
|
+
}
|
|
9
|
+
get value() {
|
|
10
|
+
let value = clone(this.model);
|
|
11
|
+
if (!isObject(this.model) ||
|
|
12
|
+
(isEmpty(this.model.max, { zero: true }) && isEmpty(this.model.min, { zero: true }))) {
|
|
13
|
+
value = undefined;
|
|
14
|
+
}
|
|
15
|
+
return value;
|
|
16
|
+
}
|
|
17
|
+
get queryObject() {
|
|
18
|
+
const value = this.value;
|
|
19
|
+
const name = this.name;
|
|
20
|
+
const params = {};
|
|
21
|
+
const paramMinName = getRangeName(this.case, name, 'min');
|
|
22
|
+
const paramMaxName = getRangeName(this.case, name, 'max');
|
|
23
|
+
if (isObject(value)) {
|
|
24
|
+
params[paramMinName] = value.min || undefined;
|
|
25
|
+
params[paramMaxName] = value.max || undefined;
|
|
26
|
+
}
|
|
27
|
+
else {
|
|
28
|
+
params[paramMinName] = undefined;
|
|
29
|
+
params[paramMaxName] = undefined;
|
|
30
|
+
}
|
|
31
|
+
return params;
|
|
32
|
+
}
|
|
33
|
+
get isChipVisible() {
|
|
34
|
+
return this.model && (this.model.min !== undefined || this.model.max !== undefined);
|
|
35
|
+
}
|
|
36
|
+
getChipsContent(type) {
|
|
37
|
+
if (type === 'from') {
|
|
38
|
+
const min = this.model.min;
|
|
39
|
+
return `${min}`;
|
|
40
|
+
}
|
|
41
|
+
else if (type === 'to') {
|
|
42
|
+
const max = this.model.max;
|
|
43
|
+
return `${max}`;
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
clearRange(type = null, defaultValue = undefined) {
|
|
47
|
+
if (type === 'from') {
|
|
48
|
+
delete this.model.min;
|
|
49
|
+
if (defaultValue === null || defaultValue === void 0 ? void 0 : defaultValue.min) {
|
|
50
|
+
this.model.min = defaultValue.min;
|
|
51
|
+
}
|
|
52
|
+
this.model = Object.assign({}, this.model);
|
|
53
|
+
}
|
|
54
|
+
else if (type === 'to') {
|
|
55
|
+
delete this.model.max;
|
|
56
|
+
if (defaultValue === null || defaultValue === void 0 ? void 0 : defaultValue.max) {
|
|
57
|
+
this.model.max = defaultValue.max;
|
|
58
|
+
}
|
|
59
|
+
this.model = Object.assign({}, this.model);
|
|
60
|
+
}
|
|
61
|
+
else {
|
|
62
|
+
if (defaultValue) {
|
|
63
|
+
this.model = Object.assign({}, defaultValue);
|
|
64
|
+
}
|
|
65
|
+
else {
|
|
66
|
+
this.model = {};
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
_validateModel() {
|
|
71
|
+
}
|
|
72
|
+
_parseConfig(item) {
|
|
73
|
+
var _a, _b;
|
|
74
|
+
this.options = item.options;
|
|
75
|
+
this.prefix = item.prefix;
|
|
76
|
+
this.suffix = item.suffix;
|
|
77
|
+
this.case = (_b = (_a = this._additionalConfig) === null || _a === void 0 ? void 0 : _a.case) !== null && _b !== void 0 ? _b : 'camel';
|
|
78
|
+
super._parseConfig(item);
|
|
79
|
+
}
|
|
80
|
+
_init() {
|
|
81
|
+
if (!this.label) {
|
|
82
|
+
this.label = ['Min', 'Max'];
|
|
83
|
+
}
|
|
84
|
+
if (!this.model) {
|
|
85
|
+
this.model = this.defaultValue || {};
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
89
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFuZ2UtaXRlbS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvbW9kZWxzL2l0ZW1zL3JhbmdlLWl0ZW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDNUMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRTdDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQU01RCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBR3ZDLE1BQU0sT0FBTyxTQUFVLFNBQVEsUUFBZ0M7SUFFdEQsTUFBTSxDQUFDLE1BQU0sQ0FBQyxNQUE4QixFQUFFLGdCQUF5QjtRQUM1RSxPQUFPLElBQUksU0FBUyxDQUFDLE1BQU0sRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO0lBQ2pELENBQUM7SUFTRCxJQUFXLEtBQUs7UUFDZCxJQUFJLEtBQUssR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRTlCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQztZQUN2QixDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsRUFBRSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxJQUFJLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsRUFBRSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLEVBQUU7WUFDdEYsS0FBSyxHQUFHLFNBQVMsQ0FBQztTQUNuQjtRQUVELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUVELElBQVcsV0FBVztRQUNwQixNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDO1FBQ3pCLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUM7UUFD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QU8sQ0FBQztRQUVwRCxLQUFLLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzNCLENBQUM7SUFFUyxLQUFLO1FBQ2IsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDZixJQUFJLENBQUMsS0FBSyxHQUFHLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQyxDQUFDO1NBQzdCO1FBRUQsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDZixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxZQUFZLElBQUksRUFBRSxDQUFDO1NBQ3RDO0lBQ0gsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY2xvbmUsIGlzT2JqZWN0IH0gZnJvbSAnbG9kYXNoLWVzJztcbmltcG9ydCB7IGlzRW1wdHkgfSBmcm9tICdAZmlyZXN0aXRjaC9jb21tb24nO1xuXG5pbXBvcnQgeyBnZXRSYW5nZU5hbWUgfSBmcm9tICcuLi8uLi9oZWxwZXJzL2dldC1yYW5nZS1uYW1lJztcbmltcG9ydCB7XG4gIElGaWx0ZXJDb25maWdSYW5nZUl0ZW0sXG4gIElGaWx0ZXJJdGVtRGVmYXVsdFJhbmdlLFxufSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL2l0ZW1zL3JhbmdlLmludGVyZmFjZSc7XG5cbmltcG9ydCB7IEJhc2VJdGVtIH0gZnJvbSAnLi9iYXNlLWl0ZW0nO1xuXG5cbmV4cG9ydCBjbGFzcyBSYW5nZUl0ZW0gZXh0ZW5kcyBCYXNlSXRlbTxJRmlsdGVyQ29uZmlnUmFuZ2VJdGVtPiB7XG5cbiAgcHVibGljIHN0YXRpYyBjcmVhdGUoY29uZmlnOiBJRmlsdGVyQ29uZmlnUmFuZ2VJdGVtLCBhZGRpdGlvbmFsQ29uZmlnOiB1bmtub3duKSB7XG4gICAgcmV0dXJuIG5ldyBSYW5nZUl0ZW0oY29uZmlnLCBhZGRpdGlvbmFsQ29uZmlnKTtcbiAgfVxuXG4gIHB1YmxpYyBjYXNlOiAnc25ha2UnIHwgJ2NhbWVsJztcbiAgcHVibGljIG9wdGlvbnM6IHsgc2NhbGU/OiBudW1iZXIgfVxuICBwdWJsaWMgcHJlZml4OiBzdHJpbmc7XG4gIHB1YmxpYyBzdWZmaXg6IHN0cmluZztcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgX2FkZGl0aW9uYWxDb25maWc6IHsgY2FzZTogJ2NhbWVsJyB8ICdzbmFrZScgfVxuXG4gIHB1YmxpYyBnZXQgdmFsdWUoKSB7XG4gICAgbGV0IHZhbHVlID0gY2xvbmUodGhpcy5tb2RlbCk7XG5cbiAgICBpZiAoIWlzT2JqZWN0KHRoaXMubW9kZWwpIHx8XG4gICAgICAoaXNFbXB0eSh0aGlzLm1vZGVsLm1heCwgeyB6ZXJvOiB0cnVlIH0pICYmIGlzRW1wdHkodGhpcy5tb2RlbC5taW4sIHsgemVybzogdHJ1ZSB9KSkpIHtcbiAgICAgIHZhbHVlID0gdW5kZWZpbmVkO1xuICAgIH1cblxuICAgIHJldHVybiB2YWx1ZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgcXVlcnlPYmplY3QoKSB7XG4gICAgY29uc3QgdmFsdWUgPSB0aGlzLnZhbHVlO1xuICAgIGNvbnN0IG5hbWUgPSB0aGlzLm5hbWU7XG4gICAgY29uc3QgcGFyYW1zID0ge307XG4gICAgY29uc3QgcGFyYW1NaW5OYW1lID0gZ2V0UmFuZ2VOYW1lKHRoaXMuY2FzZSwgbmFtZSwgJ21pbicpO1xuICAgIGNvbnN0IHBhcmFtTWF4TmFtZSA9IGdldFJhbmdlTmFtZSh0aGlzLmNhc2UsIG5hbWUsICdtYXgnKTtcblxuICAgIGlmIChpc09iamVjdCh2YWx1ZSkpIHtcbiAgICAgIHBhcmFtc1twYXJhbU1pbk5hbWVdID0gdmFsdWUubWluIHx8IHVuZGVmaW5lZDtcbiAgICAgIHBhcmFtc1twYXJhbU1heE5hbWVdID0gdmFsdWUubWF4IHx8IHVuZGVmaW5lZDtcbiAgICB9IGVsc2Uge1xuICAgICAgcGFyYW1zW3BhcmFtTWluTmFtZV0gPSB1bmRlZmluZWQ7XG4gICAgICBwYXJhbXNbcGFyYW1NYXhOYW1lXSA9IHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICByZXR1cm4gcGFyYW1zO1xuICB9XG5cbiAgcHVibGljIGdldCBpc0NoaXBWaXNpYmxlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLm1vZGVsICYmICh0aGlzLm1vZGVsLm1pbiAhPT0gdW5kZWZpbmVkIHx8IHRoaXMubW9kZWwubWF4ICE9PSB1bmRlZmluZWQpO1xuICB9XG5cbiAgcHVibGljIGdldENoaXBzQ29udGVudCh0eXBlKTogc3RyaW5nIHtcbiAgICBpZiAodHlwZSA9PT0gJ2Zyb20nKSB7XG4gICAgICBjb25zdCBtaW4gPSB0aGlzLm1vZGVsLm1pbjtcbiAgICAgIHJldHVybiBgJHttaW59YDtcbiAgICB9IGVsc2UgaWYgKHR5cGUgPT09ICd0bycpIHtcbiAgICAgIGNvbnN0IG1heCA9IHRoaXMubW9kZWwubWF4O1xuICAgICAgcmV0dXJuIGAke21heH1gO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBjbGVhclJhbmdlKHR5cGU6ICdmcm9tJyB8ICd0bycgPSBudWxsLCBkZWZhdWx0VmFsdWU6IElGaWx0ZXJJdGVtRGVmYXVsdFJhbmdlID0gdW5kZWZpbmVkKSB7XG4gICAgaWYgKHR5cGUgPT09ICdmcm9tJykge1xuICAgICAgZGVsZXRlIHRoaXMubW9kZWwubWluO1xuXG4gICAgICBpZiAoZGVmYXVsdFZhbHVlPy5taW4pIHtcbiAgICAgICAgdGhpcy5tb2RlbC5taW4gPSBkZWZhdWx0VmFsdWUubWluO1xuICAgICAgfVxuXG4gICAgICB0aGlzLm1vZGVsID0geyAuLi50aGlzLm1vZGVsIH07XG4gICAgfSBlbHNlIGlmICh0eXBlID09PSAndG8nKSB7XG4gICAgICBkZWxldGUgdGhpcy5tb2RlbC5tYXg7XG5cbiAgICAgIGlmIChkZWZhdWx0VmFsdWU/Lm1heCkge1xuICAgICAgICB0aGlzLm1vZGVsLm1heCA9IGRlZmF1bHRWYWx1ZS5tYXg7XG4gICAgICB9XG5cbiAgICAgIHRoaXMubW9kZWwgPSB7IC4uLnRoaXMubW9kZWwgfTtcbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKGRlZmF1bHRWYWx1ZSkge1xuICAgICAgICB0aGlzLm1vZGVsID0geyAuLi5kZWZhdWx0VmFsdWUgfTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMubW9kZWwgPSB7fTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgX3ZhbGlkYXRlTW9kZWwoKSB7XG4gIH1cblxuICBwcm90ZWN0ZWQgX3BhcnNlQ29uZmlnKGl0ZW06IElGaWx0ZXJDb25maWdSYW5nZUl0ZW0pIHtcbiAgICB0aGlzLm9wdGlvbnMgPSBpdGVtLm9wdGlvbnM7XG4gICAgdGhpcy5wcmVmaXggPSBpdGVtLnByZWZpeDtcbiAgICB0aGlzLnN1ZmZpeCA9IGl0ZW0uc3VmZml4O1xuICAgIHRoaXMuY2FzZSA9IHRoaXMuX2FkZGl0aW9uYWxDb25maWc/LmNhc2UgPz8gJ2NhbWVsJztcblxuICAgIHN1cGVyLl9wYXJzZUNvbmZpZyhpdGVtKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBfaW5pdCgpIHtcbiAgICBpZiAoIXRoaXMubGFiZWwpIHtcbiAgICAgIHRoaXMubGFiZWwgPSBbJ01pbicsICdNYXgnXTtcbiAgICB9XG5cbiAgICBpZiAoIXRoaXMubW9kZWwpIHtcbiAgICAgIHRoaXMubW9kZWwgPSB0aGlzLmRlZmF1bHRWYWx1ZSB8fCB7fTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,34 +1,34 @@
|
|
|
1
|
-
import { BaseItem } from '../base-item';
|
|
2
|
-
export class BaseSelectItem extends BaseItem {
|
|
3
|
-
_parseConfig(item) {
|
|
4
|
-
this.multiple = item.multiple;
|
|
5
|
-
this.children = item.children;
|
|
6
|
-
// TODO nullish
|
|
7
|
-
if (item.isolate) {
|
|
8
|
-
this.isolate = Object.assign(Object.assign({}, item.isolate), { enabled: false });
|
|
9
|
-
}
|
|
10
|
-
super._parseConfig(item);
|
|
11
|
-
}
|
|
12
|
-
_init() {
|
|
13
|
-
if (!Array.isArray(this.values)) {
|
|
14
|
-
this.values = [];
|
|
15
|
-
}
|
|
16
|
-
// TODO Refactor
|
|
17
|
-
if (this.isolate) {
|
|
18
|
-
this.values = this.values.filter((item) => {
|
|
19
|
-
if (Array.isArray(this.isolate.value)) {
|
|
20
|
-
return this.isolate.value.indexOf(item.value) === -1;
|
|
21
|
-
}
|
|
22
|
-
else {
|
|
23
|
-
return item.value !== this.isolate.value;
|
|
24
|
-
}
|
|
25
|
-
});
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
_clearValue(defaultValue = undefined) {
|
|
29
|
-
if (this.isolate) {
|
|
30
|
-
this.isolate.enabled = false;
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
}
|
|
1
|
+
import { BaseItem } from '../base-item';
|
|
2
|
+
export class BaseSelectItem extends BaseItem {
|
|
3
|
+
_parseConfig(item) {
|
|
4
|
+
this.multiple = item.multiple;
|
|
5
|
+
this.children = item.children;
|
|
6
|
+
// TODO nullish
|
|
7
|
+
if (item.isolate) {
|
|
8
|
+
this.isolate = Object.assign(Object.assign({}, item.isolate), { enabled: false });
|
|
9
|
+
}
|
|
10
|
+
super._parseConfig(item);
|
|
11
|
+
}
|
|
12
|
+
_init() {
|
|
13
|
+
if (!Array.isArray(this.values)) {
|
|
14
|
+
this.values = [];
|
|
15
|
+
}
|
|
16
|
+
// TODO Refactor
|
|
17
|
+
if (this.isolate) {
|
|
18
|
+
this.values = this.values.filter((item) => {
|
|
19
|
+
if (Array.isArray(this.isolate.value)) {
|
|
20
|
+
return this.isolate.value.indexOf(item.value) === -1;
|
|
21
|
+
}
|
|
22
|
+
else {
|
|
23
|
+
return item.value !== this.isolate.value;
|
|
24
|
+
}
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
_clearValue(defaultValue = undefined) {
|
|
29
|
+
if (this.isolate) {
|
|
30
|
+
this.isolate.enabled = false;
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
34
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1zZWxlY3QtaXRlbS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvbW9kZWxzL2l0ZW1zL3NlbGVjdC9iYXNlLXNlbGVjdC1pdGVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFVeEMsTUFBTSxPQUFnQixjQUFlLFNBQVEsUUFBaUM7SUFNbEUsWUFBWSxDQUFDLElBQTZCO1FBQ2xELElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQztRQUM5QixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUM7UUFFOUIsZUFBZTtRQUNmLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUNoQixJQUFJLENBQUMsT0FBTyxtQ0FDUCxJQUFJLENBQUMsT0FBTyxLQUNmLE9BQU8sRUFBRSxLQUFLLEdBQ2YsQ0FBQztTQUNIO1FBRUQsS0FBSyxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMzQixDQUFDO0lBRVMsS0FBSztRQUNiLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsRUFBRTtZQUMvQixJQUFJLENBQUMsTUFBTSxHQUFHLEVBQUUsQ0FBQztTQUNsQjtRQUVELGdCQUFnQjtRQUNmLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUNqQixJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7Z0JBQ3hDLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFO29CQUNyQyxPQUFRLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBbUIsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO2lCQUNyRTtxQkFBTTtvQkFDTCxPQUFPLElBQUksQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUM7aUJBQzFDO1lBQ0gsQ0FBQyxDQUFDLENBQUM7U0FDSjtJQUNILENBQUM7SUFFUyxXQUFXLENBQUMsZUFBd0IsU0FBUztRQUNyRCxJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDaEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1NBQzlCO0lBQ0gsQ0FBQztDQUVGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQmFzZUl0ZW0gfSBmcm9tICcuLi9iYXNlLWl0ZW0nO1xuaW1wb3J0IHtcbiAgSUZpbHRlckNvbmZpZ1NlbGVjdElzb2xhdGUsXG4gIElGaWx0ZXJDb25maWdTZWxlY3RJdGVtXG59IGZyb20gJy4uLy4uLy4uL2ludGVyZmFjZXMvaXRlbXMvc2VsZWN0LmludGVyZmFjZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUZpbHRlcklzb2xhdGUgZXh0ZW5kcyBJRmlsdGVyQ29uZmlnU2VsZWN0SXNvbGF0ZSB7XG4gIGVuYWJsZWQ6IGJvb2xlYW47XG59XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBCYXNlU2VsZWN0SXRlbSBleHRlbmRzIEJhc2VJdGVtPElGaWx0ZXJDb25maWdTZWxlY3RJdGVtPiB7XG5cbiAgcHVibGljIGNoaWxkcmVuOiBzdHJpbmc7XG4gIHB1YmxpYyBtdWx0aXBsZTogYm9vbGVhbjtcbiAgcHVibGljIGlzb2xhdGU6IElGaWx0ZXJJc29sYXRlO1xuXG4gIHByb3RlY3RlZCBfcGFyc2VDb25maWcoaXRlbTogSUZpbHRlckNvbmZpZ1NlbGVjdEl0ZW0pIHtcbiAgICB0aGlzLm11bHRpcGxlID0gaXRlbS5tdWx0aXBsZTtcbiAgICB0aGlzLmNoaWxkcmVuID0gaXRlbS5jaGlsZHJlbjtcblxuICAgIC8vIFRPRE8gbnVsbGlzaFxuICAgIGlmIChpdGVtLmlzb2xhdGUpIHtcbiAgICAgIHRoaXMuaXNvbGF0ZSA9IHtcbiAgICAgICAgLi4uaXRlbS5pc29sYXRlLFxuICAgICAgICBlbmFibGVkOiBmYWxzZSxcbiAgICAgIH07XG4gICAgfVxuXG4gICAgc3VwZXIuX3BhcnNlQ29uZmlnKGl0ZW0pO1xuICB9XG5cbiAgcHJvdGVjdGVkIF9pbml0KCkge1xuICAgIGlmICghQXJyYXkuaXNBcnJheSh0aGlzLnZhbHVlcykpIHtcbiAgICAgIHRoaXMudmFsdWVzID0gW107XG4gICAgfVxuXG4gICAgLy8gVE9ETyBSZWZhY3RvclxuICAgICBpZiAodGhpcy5pc29sYXRlKSB7XG4gICAgICB0aGlzLnZhbHVlcyA9IHRoaXMudmFsdWVzLmZpbHRlcigoaXRlbSkgPT4ge1xuICAgICAgICBpZiAoQXJyYXkuaXNBcnJheSh0aGlzLmlzb2xhdGUudmFsdWUpKSB7XG4gICAgICAgICAgcmV0dXJuICh0aGlzLmlzb2xhdGUudmFsdWUgYXMgdW5rbm93bltdKS5pbmRleE9mKGl0ZW0udmFsdWUpID09PSAtMTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICByZXR1cm4gaXRlbS52YWx1ZSAhPT0gdGhpcy5pc29sYXRlLnZhbHVlO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgX2NsZWFyVmFsdWUoZGVmYXVsdFZhbHVlOiB1bmtub3duID0gdW5kZWZpbmVkKSB7XG4gICAgaWYgKHRoaXMuaXNvbGF0ZSkge1xuICAgICAgdGhpcy5pc29sYXRlLmVuYWJsZWQgPSBmYWxzZTtcbiAgICB9XG4gIH1cblxufVxuIl19
|
|
@@ -1,91 +1,91 @@
|
|
|
1
|
-
import { filter, isArrayEqual } from '@firestitch/common';
|
|
2
|
-
import { clone } from 'lodash-es';
|
|
3
|
-
import { BaseSelectItem } from './base-select-item';
|
|
4
|
-
import { arraysAreEquals } from '../../../helpers/compare';
|
|
5
|
-
export class MultipleSelectItem extends BaseSelectItem {
|
|
6
|
-
constructor(itemConfig, _persistedValues) {
|
|
7
|
-
super(itemConfig, _persistedValues);
|
|
8
|
-
}
|
|
9
|
-
get value() {
|
|
10
|
-
var _a;
|
|
11
|
-
let value = clone(this.model);
|
|
12
|
-
if (this.isolateOptionNotSelected) {
|
|
13
|
-
value = (_a = this.values) === null || _a === void 0 ? void 0 : _a.map((v) => v.value);
|
|
14
|
-
}
|
|
15
|
-
else if (!Array.isArray(value) || value.length === 0 || value.indexOf('__all') > -1) {
|
|
16
|
-
value = undefined;
|
|
17
|
-
}
|
|
18
|
-
return value;
|
|
19
|
-
}
|
|
20
|
-
get isChipVisible() {
|
|
21
|
-
return Array.isArray(this.model) && this.model.length > 0;
|
|
22
|
-
}
|
|
23
|
-
get isolateOptionNotSelected() {
|
|
24
|
-
const modelValue = this.model;
|
|
25
|
-
const isolate = this.isolate;
|
|
26
|
-
return isolate && !isolate.enabled && (modelValue === null || modelValue === void 0 ? void 0 : modelValue.length) === 0;
|
|
27
|
-
}
|
|
28
|
-
getChipsContent(type = null) {
|
|
29
|
-
const options = this.model.reduce((acc, key) => {
|
|
30
|
-
const itemValue = this.values.find((val) => val.value === key);
|
|
31
|
-
let itemLabel;
|
|
32
|
-
if (itemValue) {
|
|
33
|
-
itemLabel = itemValue.name;
|
|
34
|
-
}
|
|
35
|
-
else if (this.isolate && this.isolate.enabled) {
|
|
36
|
-
itemLabel = this.isolate.label;
|
|
37
|
-
}
|
|
38
|
-
if (!acc.includes(itemLabel)) {
|
|
39
|
-
acc.push(itemLabel);
|
|
40
|
-
}
|
|
41
|
-
return acc;
|
|
42
|
-
}, []);
|
|
43
|
-
return options.join(', ');
|
|
44
|
-
}
|
|
45
|
-
_init() {
|
|
46
|
-
super._init();
|
|
47
|
-
const values = this.values.map((itemv) => itemv.value);
|
|
48
|
-
const wrongDefaultValue = !this.model && !Array.isArray(this.defaultValue);
|
|
49
|
-
/**
|
|
50
|
-
* When multiple select is in isolate mode and have no options selected
|
|
51
|
-
* it should send to the server all it's possible values,
|
|
52
|
-
* but should not show them as selected in interfaces as well as in query params & persistance
|
|
53
|
-
*
|
|
54
|
-
* Code below prevents filling model with values from query params if query params contain all possible values
|
|
55
|
-
*/
|
|
56
|
-
const isolate = !wrongDefaultValue
|
|
57
|
-
&& !this.isolateOptionNotSelected
|
|
58
|
-
&& arraysAreEquals(this.model, values);
|
|
59
|
-
if (wrongDefaultValue || isolate) {
|
|
60
|
-
this.model = [];
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
_setModel(value) {
|
|
64
|
-
if (Array.isArray(value)) {
|
|
65
|
-
value = value.map((val) => {
|
|
66
|
-
if (isNaN(val)) {
|
|
67
|
-
return val;
|
|
68
|
-
}
|
|
69
|
-
else {
|
|
70
|
-
return +val;
|
|
71
|
-
}
|
|
72
|
-
});
|
|
73
|
-
}
|
|
74
|
-
super._setModel(value);
|
|
75
|
-
}
|
|
76
|
-
_validateModel() {
|
|
77
|
-
const possibleValues = filter(this.model || [], (item) => {
|
|
78
|
-
return this.values.find(value => {
|
|
79
|
-
return value.value == item;
|
|
80
|
-
});
|
|
81
|
-
});
|
|
82
|
-
if (!isArrayEqual(this.model, possibleValues)) {
|
|
83
|
-
this.model = possibleValues;
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
_clearValue(defaultValue = undefined) {
|
|
87
|
-
super._clearValue(defaultValue);
|
|
88
|
-
this.model = defaultValue !== null && defaultValue !== void 0 ? defaultValue : [];
|
|
89
|
-
}
|
|
90
|
-
}
|
|
1
|
+
import { filter, isArrayEqual } from '@firestitch/common';
|
|
2
|
+
import { clone } from 'lodash-es';
|
|
3
|
+
import { BaseSelectItem } from './base-select-item';
|
|
4
|
+
import { arraysAreEquals } from '../../../helpers/compare';
|
|
5
|
+
export class MultipleSelectItem extends BaseSelectItem {
|
|
6
|
+
constructor(itemConfig, _persistedValues) {
|
|
7
|
+
super(itemConfig, _persistedValues);
|
|
8
|
+
}
|
|
9
|
+
get value() {
|
|
10
|
+
var _a;
|
|
11
|
+
let value = clone(this.model);
|
|
12
|
+
if (this.isolateOptionNotSelected) {
|
|
13
|
+
value = (_a = this.values) === null || _a === void 0 ? void 0 : _a.map((v) => v.value);
|
|
14
|
+
}
|
|
15
|
+
else if (!Array.isArray(value) || value.length === 0 || value.indexOf('__all') > -1) {
|
|
16
|
+
value = undefined;
|
|
17
|
+
}
|
|
18
|
+
return value;
|
|
19
|
+
}
|
|
20
|
+
get isChipVisible() {
|
|
21
|
+
return Array.isArray(this.model) && this.model.length > 0;
|
|
22
|
+
}
|
|
23
|
+
get isolateOptionNotSelected() {
|
|
24
|
+
const modelValue = this.model;
|
|
25
|
+
const isolate = this.isolate;
|
|
26
|
+
return isolate && !isolate.enabled && (modelValue === null || modelValue === void 0 ? void 0 : modelValue.length) === 0;
|
|
27
|
+
}
|
|
28
|
+
getChipsContent(type = null) {
|
|
29
|
+
const options = this.model.reduce((acc, key) => {
|
|
30
|
+
const itemValue = this.values.find((val) => val.value === key);
|
|
31
|
+
let itemLabel;
|
|
32
|
+
if (itemValue) {
|
|
33
|
+
itemLabel = itemValue.name;
|
|
34
|
+
}
|
|
35
|
+
else if (this.isolate && this.isolate.enabled) {
|
|
36
|
+
itemLabel = this.isolate.label;
|
|
37
|
+
}
|
|
38
|
+
if (!acc.includes(itemLabel)) {
|
|
39
|
+
acc.push(itemLabel);
|
|
40
|
+
}
|
|
41
|
+
return acc;
|
|
42
|
+
}, []);
|
|
43
|
+
return options.join(', ');
|
|
44
|
+
}
|
|
45
|
+
_init() {
|
|
46
|
+
super._init();
|
|
47
|
+
const values = this.values.map((itemv) => itemv.value);
|
|
48
|
+
const wrongDefaultValue = !this.model && !Array.isArray(this.defaultValue);
|
|
49
|
+
/**
|
|
50
|
+
* When multiple select is in isolate mode and have no options selected
|
|
51
|
+
* it should send to the server all it's possible values,
|
|
52
|
+
* but should not show them as selected in interfaces as well as in query params & persistance
|
|
53
|
+
*
|
|
54
|
+
* Code below prevents filling model with values from query params if query params contain all possible values
|
|
55
|
+
*/
|
|
56
|
+
const isolate = !wrongDefaultValue
|
|
57
|
+
&& !this.isolateOptionNotSelected
|
|
58
|
+
&& arraysAreEquals(this.model, values);
|
|
59
|
+
if (wrongDefaultValue || isolate) {
|
|
60
|
+
this.model = [];
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
_setModel(value) {
|
|
64
|
+
if (Array.isArray(value)) {
|
|
65
|
+
value = value.map((val) => {
|
|
66
|
+
if (isNaN(val)) {
|
|
67
|
+
return val;
|
|
68
|
+
}
|
|
69
|
+
else {
|
|
70
|
+
return +val;
|
|
71
|
+
}
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
super._setModel(value);
|
|
75
|
+
}
|
|
76
|
+
_validateModel() {
|
|
77
|
+
const possibleValues = filter(this.model || [], (item) => {
|
|
78
|
+
return this.values.find(value => {
|
|
79
|
+
return value.value == item;
|
|
80
|
+
});
|
|
81
|
+
});
|
|
82
|
+
if (!isArrayEqual(this.model, possibleValues)) {
|
|
83
|
+
this.model = possibleValues;
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
_clearValue(defaultValue = undefined) {
|
|
87
|
+
super._clearValue(defaultValue);
|
|
88
|
+
this.model = defaultValue !== null && defaultValue !== void 0 ? defaultValue : [];
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
91
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVsdGlwbGUtc2VsZWN0LWl0ZW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL21vZGVscy9pdGVtcy9zZWxlY3QvbXVsdGlwbGUtc2VsZWN0LWl0ZW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUUxRCxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBR2xDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNwRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFHM0QsTUFBTSxPQUFPLGtCQUFtQixTQUFRLGNBQWM7SUFFcEQsWUFDRSxVQUFtQyxFQUNuQyxnQkFBcUI7UUFFckIsS0FBSyxDQUFDLFVBQVUsRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFRCxJQUFXLEtBQUs7O1FBQ2QsSUFBSSxLQUFLLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUU5QixJQUFJLElBQUksQ0FBQyx3QkFBd0IsRUFBRTtZQUNqQyxLQUFLLEdBQUcsTUFBQSxJQUFJLENBQUMsTUFBTSwwQ0FBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUMxQzthQUFNLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxJQUFJLEtBQUssQ0FBQyxNQUFNLEtBQUssQ0FBQyxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUU7WUFDckYsS0FBSyxHQUFHLFNBQVMsQ0FBQztTQUNuQjtRQUVELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUVELElBQVcsYUFBYTtRQUN0QixPQUFPLEtBQUss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SUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFO2dCQUM5QixPQUFPLEtBQUssQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDO1lBQzdCLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsY0FBYyxDQUFDLEVBQUU7WUFDN0MsSUFBSSxDQUFDLEtBQUssR0FBRyxjQUFjLENBQUM7U0FDN0I7SUFDSCxDQUFDO0lBRVMsV0FBVyxDQUFDLGVBQXdCLFNBQVM7UUFDckQsS0FBSyxDQUFDLFdBQVcsQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUVoQyxJQUFJLENBQUMsS0FBSyxHQUFHLFlBQVksYUFBWixZQUFZLGNBQVosWUFBWSxHQUFJLEVBQUUsQ0FBQztJQUNsQyxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBmaWx0ZXIsIGlzQXJyYXlFcXVhbCB9IGZyb20gJ0BmaXJlc3RpdGNoL2NvbW1vbic7XG5cbmltcG9ydCB7IGNsb25lIH0gZnJvbSAnbG9kYXNoLWVzJztcblxuaW1wb3J0IHsgSUZpbHRlckNvbmZpZ1NlbGVjdEl0ZW0gfSBmcm9tICcuLi8uLi8uLi9pbnRlcmZhY2VzL2l0ZW1zL3NlbGVjdC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgQmFzZVNlbGVjdEl0ZW0gfSBmcm9tICcuL2Jhc2Utc2VsZWN0LWl0ZW0nO1xuaW1wb3J0IHsgYXJyYXlzQXJlRXF1YWxzIH0gZnJvbSAnLi4vLi4vLi4vaGVscGVycy9jb21wYXJlJztcblxuXG5leHBvcnQgY2xhc3MgTXVsdGlwbGVTZWxlY3RJdGVtIGV4dGVuZHMgQmFzZVNlbGVjdEl0ZW0ge1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIGl0ZW1Db25maWc6IElGaWx0ZXJDb25maWdTZWxlY3RJdGVtLFxuICAgIF9wZXJzaXN0ZWRWYWx1ZXM6IGFueVxuICApIHtcbiAgICBzdXBlcihpdGVtQ29uZmlnLCBfcGVyc2lzdGVkVmFsdWVzKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgdmFsdWUoKSB7XG4gICAgbGV0IHZhbHVlID0gY2xvbmUodGhpcy5tb2RlbCk7XG5cbiAgICBpZiAodGhpcy5pc29sYXRlT3B0aW9uTm90U2VsZWN0ZWQpIHtcbiAgICAgIHZhbHVlID0gdGhpcy52YWx1ZXM/Lm1hcCgodikgPT4gdi52YWx1ZSk7XG4gICAgfSBlbHNlIGlmICghQXJyYXkuaXNBcnJheSh2YWx1ZSkgfHwgdmFsdWUubGVuZ3RoID09PSAwIHx8IHZhbHVlLmluZGV4T2YoJ19fYWxsJykgPiAtMSkge1xuICAgICAgdmFsdWUgPSB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgcmV0dXJuIHZhbHVlO1xuICB9XG5cbiAgcHVibGljIGdldCBpc0NoaXBWaXNpYmxlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBBcnJheS5pc0FycmF5KHRoaXMubW9kZWwpICYmIHRoaXMubW9kZWwubGVuZ3RoID4gMDtcbiAgfVxuXG4gIHByb3RlY3RlZCBnZXQgaXNvbGF0ZU9wdGlvbk5vdFNlbGVjdGVkKCkge1xuICAgIGNvbnN0IG1vZGVsVmFsdWUgPSB0aGlzLm1vZGVsO1xuICAgIGNvbnN0IGlzb2xhdGUgPSB0aGlzLmlzb2xhdGU7XG5cbiAgICByZXR1cm4gaXNvbGF0ZSAmJiAhaXNvbGF0ZS5lbmFibGVkICYmIG1vZGVsVmFsdWU/Lmxlbmd0aCA9PT0gMDtcbiAgfVxuXG4gIHB1YmxpYyBnZXRDaGlwc0NvbnRlbnQodHlwZSA9IG51bGwpOiBzdHJpbmcge1xuICAgIGNvbnN0IG9wdGlvbnMgPSB0aGlzLm1vZGVsLnJlZHVjZSgoYWNjLCBrZXkpID0+IHtcbiAgICAgIGNvbnN0IGl0ZW1WYWx1ZSA9IHRoaXMudmFsdWVzLmZpbmQoKHZhbCkgPT4gdmFsLnZhbHVlID09PSBrZXkpO1xuICAgICAgbGV0IGl0ZW1MYWJlbDogc3RyaW5nO1xuXG4gICAgICBpZiAoaXRlbVZhbHVlKSB7XG4gICAgICAgIGl0ZW1MYWJlbCA9IGl0ZW1WYWx1ZS5uYW1lO1xuICAgICAgfSBlbHNlIGlmICh0aGlzLmlzb2xhdGUgJiYgdGhpcy5pc29sYXRlLmVuYWJsZWQpIHtcbiAgICAgICAgaXRlbUxhYmVsID0gdGhpcy5pc29sYXRlLmxhYmVsO1xuICAgICAgfVxuXG4gICAgICBpZiAoIWFjYy5pbmNsdWRlcyhpdGVtTGFiZWwpKSB7XG4gICAgICAgIGFjYy5wdXNoKGl0ZW1MYWJlbClcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGFjYztcbiAgICB9LCBbXSk7XG5cbiAgICByZXR1cm4gb3B0aW9ucy5qb2luKCcsICcpO1xuICB9XG5cbiAgcHJvdGVjdGVkIF9pbml0KCkge1xuICAgIHN1cGVyLl9pbml0KCk7XG5cbiAgICBjb25zdCB2YWx1ZXMgPSB0aGlzLnZhbHVlcy5tYXAoKGl0ZW12KSA9PiBpdGVtdi52YWx1ZSk7XG4gICAgY29uc3Qgd3JvbmdEZWZhdWx0VmFsdWUgPSAhdGhpcy5tb2RlbCAmJiAhQXJyYXkuaXNBcnJheSh0aGlzLmRlZmF1bHRWYWx1ZSk7XG5cbiAgICAvKipcbiAgICAgKiBXaGVuIG11bHRpcGxlIHNlbGVjdCBpcyBpbiBpc29sYXRlIG1vZGUgYW5kIGhhdmUgbm8gb3B0aW9ucyBzZWxlY3RlZFxuICAgICAqIGl0IHNob3VsZCBzZW5kIHRvIHRoZSBzZXJ2ZXIgYWxsIGl0J3MgcG9zc2libGUgdmFsdWVzLFxuICAgICAqIGJ1dCBzaG91bGQgbm90IHNob3cgdGhlbSBhcyBzZWxlY3RlZCBpbiBpbnRlcmZhY2VzIGFzIHdlbGwgYXMgaW4gcXVlcnkgcGFyYW1zICYgcGVyc2lzdGFuY2VcbiAgICAgKlxuICAgICAqIENvZGUgYmVsb3cgcHJldmVudHMgZmlsbGluZyBtb2RlbCB3aXRoIHZhbHVlcyBmcm9tIHF1ZXJ5IHBhcmFtcyBpZiBxdWVyeSBwYXJhbXMgY29udGFpbiBhbGwgcG9zc2libGUgdmFsdWVzXG4gICAgICovXG4gICAgY29uc3QgaXNvbGF0ZSA9ICF3cm9uZ0RlZmF1bHRWYWx1ZVxuICAgICAgJiYgIXRoaXMuaXNvbGF0ZU9wdGlvbk5vdFNlbGVjdGVkXG4gICAgICAmJiBhcnJheXNBcmVFcXVhbHModGhpcy5tb2RlbCwgdmFsdWVzKTtcblxuICAgIGlmICh3cm9uZ0RlZmF1bHRWYWx1ZSB8fCBpc29sYXRlKSB7XG4gICAgICB0aGlzLm1vZGVsID0gW107XG4gICAgfVxuICB9XG4gIHByb3RlY3RlZCBfc2V0TW9kZWwodmFsdWUpIHtcbiAgICBpZiAoQXJyYXkuaXNBcnJheSh2YWx1ZSkpIHtcbiAgICAgIHZhbHVlID0gdmFsdWUubWFwKCh2YWwpID0+IHtcbiAgICAgICAgaWYgKGlzTmFOKHZhbCkpIHtcbiAgICAgICAgICByZXR1cm4gdmFsO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHJldHVybiArdmFsO1xuICAgICAgICB9XG4gICAgICB9KVxuICAgIH1cblxuICAgIHN1cGVyLl9zZXRNb2RlbCh2YWx1ZSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgX3ZhbGlkYXRlTW9kZWwoKSB7XG4gICAgY29uc3QgcG9zc2libGVWYWx1ZXMgPSBmaWx0ZXIodGhpcy5tb2RlbCB8fCBbXSwgKGl0ZW0pID0+IHtcbiAgICAgIHJldHVybiB0aGlzLnZhbHVlcy5maW5kKHZhbHVlID0+IHtcbiAgICAgICAgcmV0dXJuIHZhbHVlLnZhbHVlID09IGl0ZW07XG4gICAgICB9KTtcbiAgICB9KTtcblxuICAgIGlmICghaXNBcnJheUVxdWFsKHRoaXMubW9kZWwsIHBvc3NpYmxlVmFsdWVzKSkge1xuICAgICAgdGhpcy5tb2RlbCA9IHBvc3NpYmxlVmFsdWVzO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBfY2xlYXJWYWx1ZShkZWZhdWx0VmFsdWU6IHVua25vd24gPSB1bmRlZmluZWQpIHtcbiAgICBzdXBlci5fY2xlYXJWYWx1ZShkZWZhdWx0VmFsdWUpO1xuXG4gICAgdGhpcy5tb2RlbCA9IGRlZmF1bHRWYWx1ZSA/PyBbXTtcbiAgfVxufVxuIl19
|
|
@@ -1,63 +1,63 @@
|
|
|
1
|
-
import { findValue } from '../../../helpers/find-value';
|
|
2
|
-
import { BaseSelectItem } from './base-select-item';
|
|
3
|
-
export class SimpleSelectItem extends BaseSelectItem {
|
|
4
|
-
constructor(itemConfig, _persistedValues) {
|
|
5
|
-
super(itemConfig, _persistedValues);
|
|
6
|
-
}
|
|
7
|
-
get value() {
|
|
8
|
-
let value = this.model;
|
|
9
|
-
if (value == '__all' || value === undefined) {
|
|
10
|
-
value = undefined;
|
|
11
|
-
}
|
|
12
|
-
return value;
|
|
13
|
-
}
|
|
14
|
-
getChipsContent(type = null) {
|
|
15
|
-
if (this.children) {
|
|
16
|
-
const itemValue = findValue(this.values, this.model, this.children);
|
|
17
|
-
return itemValue && itemValue.name;
|
|
18
|
-
}
|
|
19
|
-
else {
|
|
20
|
-
const itemValue = this.values.find((val) => val.value === this.model);
|
|
21
|
-
if (itemValue) {
|
|
22
|
-
return itemValue.name;
|
|
23
|
-
}
|
|
24
|
-
else if (this.isolate) {
|
|
25
|
-
return this.isolate.label;
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
get isChipVisible() {
|
|
30
|
-
return this.model !== '__all' && this.model !== undefined;
|
|
31
|
-
}
|
|
32
|
-
_init() {
|
|
33
|
-
super._init();
|
|
34
|
-
if (this.model === undefined && this.defaultValue === undefined) {
|
|
35
|
-
this._model = '__all';
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
_setModel(value) {
|
|
39
|
-
if (value) {
|
|
40
|
-
if (!isNaN(value)) {
|
|
41
|
-
value = +value;
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
super._setModel(value);
|
|
45
|
-
}
|
|
46
|
-
_validateModel() {
|
|
47
|
-
const item = this.values.find(value => {
|
|
48
|
-
return value.value == this.model;
|
|
49
|
-
});
|
|
50
|
-
const value = item ? item.value : '__all';
|
|
51
|
-
if (this._model !== value) {
|
|
52
|
-
this.model = value;
|
|
53
|
-
}
|
|
54
|
-
}
|
|
55
|
-
_clearValue(defaultValue = undefined) {
|
|
56
|
-
super._clearValue(defaultValue);
|
|
57
|
-
const value = Array.isArray(this.values) && this.values.some((val) => val.value === '__all')
|
|
58
|
-
? '__all'
|
|
59
|
-
: undefined;
|
|
60
|
-
this.model = defaultValue !== null && defaultValue !== void 0 ? defaultValue : value;
|
|
61
|
-
}
|
|
62
|
-
}
|
|
1
|
+
import { findValue } from '../../../helpers/find-value';
|
|
2
|
+
import { BaseSelectItem } from './base-select-item';
|
|
3
|
+
export class SimpleSelectItem extends BaseSelectItem {
|
|
4
|
+
constructor(itemConfig, _persistedValues) {
|
|
5
|
+
super(itemConfig, _persistedValues);
|
|
6
|
+
}
|
|
7
|
+
get value() {
|
|
8
|
+
let value = this.model;
|
|
9
|
+
if (value == '__all' || value === undefined) {
|
|
10
|
+
value = undefined;
|
|
11
|
+
}
|
|
12
|
+
return value;
|
|
13
|
+
}
|
|
14
|
+
getChipsContent(type = null) {
|
|
15
|
+
if (this.children) {
|
|
16
|
+
const itemValue = findValue(this.values, this.model, this.children);
|
|
17
|
+
return itemValue && itemValue.name;
|
|
18
|
+
}
|
|
19
|
+
else {
|
|
20
|
+
const itemValue = this.values.find((val) => val.value === this.model);
|
|
21
|
+
if (itemValue) {
|
|
22
|
+
return itemValue.name;
|
|
23
|
+
}
|
|
24
|
+
else if (this.isolate) {
|
|
25
|
+
return this.isolate.label;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
get isChipVisible() {
|
|
30
|
+
return this.model !== '__all' && this.model !== undefined;
|
|
31
|
+
}
|
|
32
|
+
_init() {
|
|
33
|
+
super._init();
|
|
34
|
+
if (this.model === undefined && this.defaultValue === undefined) {
|
|
35
|
+
this._model = '__all';
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
_setModel(value) {
|
|
39
|
+
if (value) {
|
|
40
|
+
if (!isNaN(value)) {
|
|
41
|
+
value = +value;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
super._setModel(value);
|
|
45
|
+
}
|
|
46
|
+
_validateModel() {
|
|
47
|
+
const item = this.values.find(value => {
|
|
48
|
+
return value.value == this.model;
|
|
49
|
+
});
|
|
50
|
+
const value = item ? item.value : '__all';
|
|
51
|
+
if (this._model !== value) {
|
|
52
|
+
this.model = value;
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
_clearValue(defaultValue = undefined) {
|
|
56
|
+
super._clearValue(defaultValue);
|
|
57
|
+
const value = Array.isArray(this.values) && this.values.some((val) => val.value === '__all')
|
|
58
|
+
? '__all'
|
|
59
|
+
: undefined;
|
|
60
|
+
this.model = defaultValue !== null && defaultValue !== void 0 ? defaultValue : value;
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
63
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2ltcGxlLXNlbGVjdC1pdGVtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9tb2RlbHMvaXRlbXMvc2VsZWN0L3NpbXBsZS1zZWxlY3QtaXRlbS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBR3BELE1BQU0sT0FBTyxnQkFBaUIsU0FBUSxjQUFjO0lBRWxELFlBQ0UsVUFBbUMsRUFDbkMsZ0JBQXFCO1FBRXJCLEtBQUssQ0FBQyxVQUFVLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBRUQsSUFBVyxLQUFLO1FBQ2QsSUFBSSxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQztRQUV2QixJQUFJLEtBQUssSUFBSSxPQUFPLElBQUksS0FBSyxLQUFLLFNBQVMsRUFBRTtZQUMzQyxLQUFLLEdBQUcsU0FBUyxDQUFDO1NBQ25CO1FBRUQsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBRU0sZUFBZSxDQUFDLElBQUksR0FBRyxJQUFJO1FBQ2hDLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNqQixNQUFNLFNBQVMsR0FBRyxTQUFTLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUVwRSxPQUFPLFNBQVMsSUFBSSxTQUFTLENBQUMsSUFBSSxDQUFBO1NBQ25DO2FBQU07WUFDTCxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7WUFFdEUsSUFBSSxTQUFTLEVBQUU7Z0JBQ2IsT0FBTyxTQUFTLENBQUMsSUFBSSxDQUFBO2FBQ3RCO2lCQUFNLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRTtnQkFDdkIsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQTthQUMxQjtTQUNGO0lBQ0gsQ0FBQztJQUVELElBQVcsYUFBYTtRQUN0QixPQUFPLElBQUksQ0FBQyxLQUFLLEtBQUssT0FBTyxJQUFJLElBQUksQ0FBQyxLQUFLLEtBQUssU0FBUyxDQUFDO0lBQzVELENBQUM7SUFFUyxLQUFLO1FBQ2IsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBRWQsSUFBSSxJQUFJLENBQUMsS0FBSyxLQUFLLFNBQVMsSUFBSSxJQUFJLENBQUMsWUFBWSxLQUFLLFNBQVMsRUFBRTtZQUMvRCxJQUFJLENBQUMsTUFBTSxHQUFHLE9BQU8sQ0FBQztTQUN2QjtJQUNILENBQUM7SUFFUyxTQUFTLENBQUMsS0FBSztRQUN2QixJQUFJLEtBQUssRUFBRTtZQUNULElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLEVBQUU7Z0JBQ2pCLEtBQUssR0FBRyxDQUFDLEtBQUssQ0FBQzthQUNoQjtTQUNGO1FBRUQsS0FBSyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN6QixDQUFDO0lBRVMsY0FBYztRQUN0QixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUNwQyxPQUFPLEtBQUssQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQztRQUNuQyxDQUFDLENBQUMsQ0FBQztRQUVILE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDO1FBRTFDLElBQUksSUFBSSxDQUFDLE1BQU0sS0FBSyxLQUFLLEVBQUU7WUFDekIsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUE7U0FDbkI7SUFDSCxDQUFDO0lBRVMsV0FBVyxDQUFDLGVBQXdCLFNBQVM7UUFDckQsS0FBSyxDQUFDLFdBQVcsQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUVoQyxNQUFNLEtBQUssR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLEtBQUssS0FBSyxPQUFPLENBQUM7WUFDMUYsQ0FBQyxDQUFDLE9BQU87WUFDVCxDQUFDLENBQUMsU0FBUyxDQUFDO1FBRWQsSUFBSSxDQUFDLEtBQUssR0FBRyxZQUFZLGFBQVosWUFBWSxjQUFaLFlBQVksR0FBSSxLQUFLLENBQUM7SUFDckMsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSUZpbHRlckNvbmZpZ1NlbGVjdEl0ZW0gfSBmcm9tICcuLi8uLi8uLi9pbnRlcmZhY2VzL2l0ZW1zL3NlbGVjdC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgZmluZFZhbHVlIH0gZnJvbSAnLi4vLi4vLi4vaGVscGVycy9maW5kLXZhbHVlJztcbmltcG9ydCB7IEJhc2VTZWxlY3RJdGVtIH0gZnJvbSAnLi9iYXNlLXNlbGVjdC1pdGVtJztcblxuXG5leHBvcnQgY2xhc3MgU2ltcGxlU2VsZWN0SXRlbSBleHRlbmRzIEJhc2VTZWxlY3RJdGVtIHtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBpdGVtQ29uZmlnOiBJRmlsdGVyQ29uZmlnU2VsZWN0SXRlbSxcbiAgICBfcGVyc2lzdGVkVmFsdWVzOiBhbnlcbiAgKSB7XG4gICAgc3VwZXIoaXRlbUNvbmZpZywgX3BlcnNpc3RlZFZhbHVlcyk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHZhbHVlKCkge1xuICAgIGxldCB2YWx1ZSA9IHRoaXMubW9kZWw7XG5cbiAgICBpZiAodmFsdWUgPT0gJ19fYWxsJyB8fCB2YWx1ZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICB2YWx1ZSA9IHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICByZXR1cm4gdmFsdWU7XG4gIH1cblxuICBwdWJsaWMgZ2V0Q2hpcHNDb250ZW50KHR5cGUgPSBudWxsKTogc3RyaW5nIHtcbiAgICBpZiAodGhpcy5jaGlsZHJlbikge1xuICAgICAgY29uc3QgaXRlbVZhbHVlID0gZmluZFZhbHVlKHRoaXMudmFsdWVzLCB0aGlzLm1vZGVsLCB0aGlzLmNoaWxkcmVuKTtcblxuICAgICAgcmV0dXJuIGl0ZW1WYWx1ZSAmJiBpdGVtVmFsdWUubmFtZVxuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBpdGVtVmFsdWUgPSB0aGlzLnZhbHVlcy5maW5kKCh2YWwpID0+IHZhbC52YWx1ZSA9PT0gdGhpcy5tb2RlbCk7XG5cbiAgICAgIGlmIChpdGVtVmFsdWUpIHtcbiAgICAgICAgcmV0dXJuIGl0ZW1WYWx1ZS5uYW1lXG4gICAgICB9IGVsc2UgaWYgKHRoaXMuaXNvbGF0ZSkge1xuICAgICAgICByZXR1cm4gdGhpcy5pc29sYXRlLmxhYmVsXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGdldCBpc0NoaXBWaXNpYmxlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLm1vZGVsICE9PSAnX19hbGwnICYmIHRoaXMubW9kZWwgIT09IHVuZGVmaW5lZDtcbiAgfVxuXG4gIHByb3RlY3RlZCBfaW5pdCgpIHtcbiAgICBzdXBlci5faW5pdCgpO1xuXG4gICAgaWYgKHRoaXMubW9kZWwgPT09IHVuZGVmaW5lZCAmJiB0aGlzLmRlZmF1bHRWYWx1ZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aGlzLl9tb2RlbCA9ICdfX2FsbCc7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIF9zZXRNb2RlbCh2YWx1ZSk6IHZvaWQge1xuICAgIGlmICh2YWx1ZSkge1xuICAgICAgaWYgKCFpc05hTih2YWx1ZSkpIHtcbiAgICAgICAgdmFsdWUgPSArdmFsdWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgc3VwZXIuX3NldE1vZGVsKHZhbHVlKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBfdmFsaWRhdGVNb2RlbCgpIHtcbiAgICBjb25zdCBpdGVtID0gdGhpcy52YWx1ZXMuZmluZCh2YWx1ZSA9PiB7XG4gICAgICByZXR1cm4gdmFsdWUudmFsdWUgPT0gdGhpcy5tb2RlbDtcbiAgICB9KTtcblxuICAgIGNvbnN0IHZhbHVlID0gaXRlbSA/IGl0ZW0udmFsdWUgOiAnX19hbGwnO1xuXG4gICAgaWYgKHRoaXMuX21vZGVsICE9PSB2YWx1ZSkge1xuICAgICAgdGhpcy5tb2RlbCA9IHZhbHVlXG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIF9jbGVhclZhbHVlKGRlZmF1bHRWYWx1ZTogdW5rbm93biA9IHVuZGVmaW5lZCkge1xuICAgIHN1cGVyLl9jbGVhclZhbHVlKGRlZmF1bHRWYWx1ZSk7XG5cbiAgICBjb25zdCB2YWx1ZSA9IEFycmF5LmlzQXJyYXkodGhpcy52YWx1ZXMpICYmIHRoaXMudmFsdWVzLnNvbWUoKHZhbCkgPT4gdmFsLnZhbHVlID09PSAnX19hbGwnKVxuICAgICAgPyAnX19hbGwnXG4gICAgICA6IHVuZGVmaW5lZDtcblxuICAgIHRoaXMubW9kZWwgPSBkZWZhdWx0VmFsdWUgPz8gdmFsdWU7XG4gIH1cbn1cbiJdfQ==
|