@firestitch/filter 18.2.10 → 18.2.12
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 +1 -1
- package/app/components/filter/filter.component.d.ts +39 -68
- package/app/components/filter-chip/filter-chip.component.d.ts +16 -3
- package/app/components/filter-chips/filter-chips.component.d.ts +14 -2
- package/app/components/filter-drawer/filter-drawer.component.d.ts +2 -5
- package/app/components/filters-item/autocompletechips/autocompletechips.component.d.ts +8 -8
- package/app/components/filters-item/base-item/base-item.component.d.ts +3 -9
- package/app/components/filters-item/checkbox/checkbox.component.d.ts +6 -5
- package/app/components/filters-item/chips/chips.component.d.ts +6 -5
- package/app/components/filters-item/date/date.component.d.ts +4 -4
- package/app/components/filters-item/date-range/date-range.component.d.ts +7 -6
- package/app/components/filters-item/filter-item.component.d.ts +2 -2
- package/app/components/filters-item/range/range.component.d.ts +6 -7
- package/app/components/filters-item/select/select.component.d.ts +17 -20
- package/app/components/filters-item/text/text.component.d.ts +6 -7
- package/app/components/filters-item/week/week.component.d.ts +5 -5
- package/app/components/keyword-input/keyword-input.component.d.ts +29 -0
- package/app/components/saved-filter/saved-filter-autocomplete-chips/saved-filter-autocomplete-chips.component.d.ts +2 -3
- package/app/components/saved-filter/saved-filter-manage/components/saved-filter-chips/saved-filter-chips.component.d.ts +1 -1
- package/app/components/saved-filter/saved-filter-manage/saved-filter-manage.component.d.ts +1 -2
- package/app/fs-filter.module.d.ts +20 -24
- package/app/helpers/create-filter-item.d.ts +2 -1
- package/app/interfaces/items/date.interface.d.ts +1 -1
- package/app/models/filter-config.d.ts +2 -2
- package/app/models/items/autocomplete-chips-item.d.ts +11 -8
- package/app/models/items/autocomplete-item.d.ts +7 -5
- package/app/models/items/{autocomplete/base-autocomplete-item.d.ts → base-autocomplete-item.d.ts} +4 -5
- package/app/models/items/base-date-item.d.ts +13 -0
- package/app/models/items/base-date-range-item.d.ts +17 -0
- package/app/models/items/base-item.d.ts +32 -41
- package/app/models/items/checkbox-item.d.ts +10 -9
- package/app/models/items/chips-item.d.ts +11 -8
- package/app/models/items/date-item.d.ts +7 -3
- package/app/models/items/date-range-item.d.ts +1 -1
- package/app/models/items/date-time-item.d.ts +6 -3
- package/app/models/items/date-time-range-item.d.ts +1 -1
- package/app/models/items/index.d.ts +0 -4
- package/app/models/items/range-item.d.ts +19 -8
- package/app/models/items/select-item.d.ts +29 -6
- package/app/models/items/text-item.d.ts +7 -6
- package/app/models/items/week-item.d.ts +7 -6
- package/app/services/filter-controller.service.d.ts +47 -0
- package/app/services/filter-overlay.service.d.ts +1 -0
- package/app/services/focus-controller.service.d.ts +4 -4
- package/app/services/index.d.ts +4 -2
- package/app/services/keyword-controller.service.d.ts +20 -0
- package/app/services/persistance-controller.service.d.ts +10 -4
- package/app/services/query-param-controller.service.d.ts +10 -12
- package/app/services/root-filter-overlay.service.d.ts +6 -0
- package/app/services/saved-filter-controller.service.d.ts +4 -4
- package/app/services/sort-controller.service.d.ts +21 -0
- package/esm2022/app/classes/actions-controller.mjs +2 -2
- package/esm2022/app/components/filter/filter.component.mjs +162 -330
- package/esm2022/app/components/filter-chip/filter-chip.component.mjs +24 -32
- package/esm2022/app/components/filter-chip-content/filter-chip-content.component.mjs +2 -2
- package/esm2022/app/components/filter-chips/filter-chips.component.mjs +22 -8
- package/esm2022/app/components/filter-drawer/filter-drawer.component.mjs +8 -15
- package/esm2022/app/components/filters-item/autocomplete/autocomplete.component.mjs +6 -6
- package/esm2022/app/components/filters-item/autocompletechips/autocompletechips.component.mjs +26 -22
- package/esm2022/app/components/filters-item/base-item/base-item.component.mjs +2 -30
- package/esm2022/app/components/filters-item/checkbox/checkbox.component.mjs +22 -15
- package/esm2022/app/components/filters-item/chips/chips.component.mjs +22 -15
- package/esm2022/app/components/filters-item/date/date.component.mjs +24 -20
- package/esm2022/app/components/filters-item/date-range/date-range.component.mjs +29 -24
- package/esm2022/app/components/filters-item/filter-item.component.mjs +7 -5
- package/esm2022/app/components/filters-item/range/range.component.mjs +31 -35
- package/esm2022/app/components/filters-item/select/select.component.mjs +57 -45
- package/esm2022/app/components/filters-item/text/text.component.mjs +24 -24
- package/esm2022/app/components/filters-item/week/week.component.mjs +22 -16
- package/esm2022/app/components/keyword-input/keyword-input.component.mjs +104 -0
- package/esm2022/app/components/saved-filter/saved-filter-autocomplete-chips/saved-filter-autocomplete-chips.component.mjs +4 -6
- package/esm2022/app/components/saved-filter/saved-filter-manage/components/saved-filter-chips/saved-filter-chips.component.mjs +6 -6
- package/esm2022/app/components/saved-filter/saved-filter-manage/saved-filter-manage.component.mjs +5 -6
- package/esm2022/app/fs-filter.module.mjs +1 -16
- package/esm2022/app/helpers/parse-item-value-from-stored.mjs +17 -16
- package/esm2022/app/interfaces/items/date.interface.mjs +1 -1
- package/esm2022/app/models/action.model.mjs +2 -2
- package/esm2022/app/models/filter-config.mjs +2 -3
- package/esm2022/app/models/items/autocomplete-chips-item.mjs +32 -27
- package/esm2022/app/models/items/autocomplete-item.mjs +13 -15
- package/esm2022/app/models/items/base-autocomplete-item.mjs +16 -0
- package/esm2022/app/models/items/base-date-item.mjs +28 -0
- package/esm2022/app/models/items/base-date-range-item.mjs +101 -0
- package/esm2022/app/models/items/base-item.mjs +76 -140
- package/esm2022/app/models/items/checkbox-item.mjs +35 -26
- package/esm2022/app/models/items/chips-item.mjs +50 -42
- package/esm2022/app/models/items/date-item.mjs +21 -8
- package/esm2022/app/models/items/date-range-item.mjs +2 -2
- package/esm2022/app/models/items/date-time-item.mjs +4 -7
- package/esm2022/app/models/items/date-time-range-item.mjs +2 -2
- package/esm2022/app/models/items/index.mjs +1 -5
- package/esm2022/app/models/items/range-item.mjs +48 -44
- package/esm2022/app/models/items/select-item.mjs +104 -9
- package/esm2022/app/models/items/text-item.mjs +17 -15
- package/esm2022/app/models/items/week-item.mjs +23 -24
- package/esm2022/app/pipes/remove-isolate-value.pipe.mjs +1 -1
- package/esm2022/app/services/filter-controller.service.mjs +209 -0
- package/esm2022/app/services/filter-overlay.service.mjs +6 -3
- package/esm2022/app/services/focus-controller.service.mjs +3 -3
- package/esm2022/app/services/index.mjs +5 -3
- package/esm2022/app/services/keyword-controller.service.mjs +49 -0
- package/esm2022/app/services/persistance-controller.service.mjs +24 -6
- package/esm2022/app/services/query-param-controller.service.mjs +44 -34
- package/esm2022/app/services/root-filter-overlay.service.mjs +14 -0
- package/esm2022/app/services/saved-filter-controller.service.mjs +20 -18
- package/esm2022/app/services/sort-controller.service.mjs +60 -0
- package/esm2022/public_api.mjs +1 -2
- package/fesm2022/firestitch-filter.mjs +2776 -3423
- package/fesm2022/firestitch-filter.mjs.map +1 -1
- package/package.json +1 -1
- package/public_api.d.ts +0 -1
- package/app/components/filters-item/select/backdrop/backdrop.component.d.ts +0 -6
- package/app/components/filters-item/select/groups/groups.component.d.ts +0 -13
- package/app/components/filters-item/select/multiple/multiple.component.d.ts +0 -16
- package/app/components/filters-item/select/simple/simple.component.d.ts +0 -15
- package/app/helpers/build-query-params.d.ts +0 -4
- package/app/helpers/compare.d.ts +0 -2
- package/app/helpers/find-value.d.ts +0 -1
- package/app/models/items/autocomplete/index.d.ts +0 -1
- package/app/models/items/date/base-date-item.d.ts +0 -17
- package/app/models/items/date/index.d.ts +0 -1
- package/app/models/items/date-range/base-date-range-item.d.ts +0 -17
- package/app/models/items/date-range/index.d.ts +0 -1
- package/app/models/items/select/base-select-item.d.ts +0 -16
- package/app/models/items/select/index.d.ts +0 -3
- package/app/models/items/select/multiple-select-item.d.ts +0 -14
- package/app/models/items/select/simple-select-item.d.ts +0 -14
- package/app/providers/filter-meta.d.ts +0 -5
- package/app/services/item-store.service.d.ts +0 -70
- package/app/services/param-controller.service.d.ts +0 -30
- package/esm2022/app/components/filters-item/select/backdrop/backdrop.component.mjs +0 -12
- package/esm2022/app/components/filters-item/select/groups/groups.component.mjs +0 -47
- package/esm2022/app/components/filters-item/select/multiple/multiple.component.mjs +0 -76
- package/esm2022/app/components/filters-item/select/simple/simple.component.mjs +0 -56
- package/esm2022/app/helpers/build-query-params.mjs +0 -38
- package/esm2022/app/helpers/compare.mjs +0 -38
- package/esm2022/app/helpers/find-value.mjs +0 -13
- package/esm2022/app/models/items/autocomplete/base-autocomplete-item.mjs +0 -19
- package/esm2022/app/models/items/autocomplete/index.mjs +0 -2
- package/esm2022/app/models/items/date/base-date-item.mjs +0 -55
- package/esm2022/app/models/items/date/index.mjs +0 -2
- package/esm2022/app/models/items/date-range/base-date-range-item.mjs +0 -124
- package/esm2022/app/models/items/date-range/index.mjs +0 -2
- package/esm2022/app/models/items/select/base-select-item.mjs +0 -38
- package/esm2022/app/models/items/select/index.mjs +0 -4
- package/esm2022/app/models/items/select/multiple-select-item.mjs +0 -92
- package/esm2022/app/models/items/select/simple-select-item.mjs +0 -66
- package/esm2022/app/providers/filter-meta.mjs +0 -10
- package/esm2022/app/services/item-store.service.mjs +0 -356
- package/esm2022/app/services/param-controller.service.mjs +0 -151
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
import { format, iso8601 } from '@firestitch/date';
|
|
2
|
+
import { isDate, isValid, parseISO } from 'date-fns';
|
|
3
|
+
import { ItemType } from '../../enums/item-type.enum';
|
|
4
|
+
import { getRangeName } from '../../helpers/get-range-name';
|
|
5
|
+
import { BaseItem } from './base-item';
|
|
6
|
+
export class BaseDateRangeItem extends BaseItem {
|
|
7
|
+
get isTypeDateRange() {
|
|
8
|
+
return this.type === ItemType.DateRange;
|
|
9
|
+
}
|
|
10
|
+
get isTypeDateTimeRange() {
|
|
11
|
+
return this.type === ItemType.DateTimeRange;
|
|
12
|
+
}
|
|
13
|
+
get hasValue() {
|
|
14
|
+
return this.value?.from instanceof Date || this.value?.to instanceof Date;
|
|
15
|
+
}
|
|
16
|
+
get value() {
|
|
17
|
+
return super.value;
|
|
18
|
+
}
|
|
19
|
+
set value(value) {
|
|
20
|
+
let from = value?.from;
|
|
21
|
+
let to = value?.to;
|
|
22
|
+
if (value) {
|
|
23
|
+
if (from && (!isDate(from) || !isValid(from))) {
|
|
24
|
+
from = parseISO(from);
|
|
25
|
+
}
|
|
26
|
+
if (to && (!isDate(to) || !isValid(to))) {
|
|
27
|
+
to = parseISO(to);
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
super.value = { from, to };
|
|
31
|
+
}
|
|
32
|
+
get queryParam() {
|
|
33
|
+
if (!this.hasValue) {
|
|
34
|
+
return {};
|
|
35
|
+
}
|
|
36
|
+
const value = {};
|
|
37
|
+
const paramFromName = getRangeName(this.name, 'from');
|
|
38
|
+
const paramToName = getRangeName(this.name, 'to');
|
|
39
|
+
if (this.value.from) {
|
|
40
|
+
value[paramFromName] = iso8601(this.value.from);
|
|
41
|
+
}
|
|
42
|
+
if (this.value.to) {
|
|
43
|
+
value[paramToName] = iso8601(this.value.to);
|
|
44
|
+
}
|
|
45
|
+
return value;
|
|
46
|
+
}
|
|
47
|
+
get query() {
|
|
48
|
+
if (!this.hasValue) {
|
|
49
|
+
return {};
|
|
50
|
+
}
|
|
51
|
+
const value = {};
|
|
52
|
+
const paramFromName = getRangeName(this.name, 'from');
|
|
53
|
+
const paramToName = getRangeName(this.name, 'to');
|
|
54
|
+
if (this.value.from) {
|
|
55
|
+
value[paramFromName] = this.value.from;
|
|
56
|
+
}
|
|
57
|
+
if (this.value.to) {
|
|
58
|
+
value[paramToName] = this.value.to;
|
|
59
|
+
}
|
|
60
|
+
return value;
|
|
61
|
+
}
|
|
62
|
+
get chips() {
|
|
63
|
+
const dateFormat = this.type === ItemType.DateRange ? 'date' : 'date-time';
|
|
64
|
+
const chips = [];
|
|
65
|
+
if (this.value?.from) {
|
|
66
|
+
chips.push({
|
|
67
|
+
name: 'from',
|
|
68
|
+
value: format(this.value.from, dateFormat),
|
|
69
|
+
label: this.label[0],
|
|
70
|
+
});
|
|
71
|
+
}
|
|
72
|
+
if (this.value?.to) {
|
|
73
|
+
chips.push({
|
|
74
|
+
name: 'to',
|
|
75
|
+
value: format(this.value.to, dateFormat),
|
|
76
|
+
label: this.label[1],
|
|
77
|
+
});
|
|
78
|
+
}
|
|
79
|
+
return chips;
|
|
80
|
+
}
|
|
81
|
+
clear(name = null) {
|
|
82
|
+
if (name === 'from') {
|
|
83
|
+
delete this.value.from;
|
|
84
|
+
if (this.defaultValue?.from) {
|
|
85
|
+
this.value.from = this.defaultValue.from;
|
|
86
|
+
}
|
|
87
|
+
this.value = { ...this.value };
|
|
88
|
+
}
|
|
89
|
+
else if (name === 'to') {
|
|
90
|
+
delete this.value.to;
|
|
91
|
+
if (this.defaultValue?.to) {
|
|
92
|
+
this.value.to = this.defaultValue.to;
|
|
93
|
+
}
|
|
94
|
+
this.value = { ...this.value };
|
|
95
|
+
}
|
|
96
|
+
else {
|
|
97
|
+
this.value = this.defaultValue ? { ...this.defaultValue } : {};
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1kYXRlLXJhbmdlLWl0ZW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvYXBwL21vZGVscy9pdGVtcy9iYXNlLWRhdGUtcmFuZ2UtaXRlbS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBR25ELE9BQU8sRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUVyRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDdEQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBSzVELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFHdkMsTUFBTSxPQUFnQixpQkFBa0IsU0FBUSxRQUFvQztJQUVsRixJQUFXLGVBQWU7UUFDeEIsT0FBTyxJQUFJLENBQUMsSUFBSSxLQUFLLFFBQVEsQ0FBQyxTQUFTLENBQUM7SUFDMUMsQ0FBQztJQUVELElBQVcsbUJBQW1CO1FBQzVCLE9BQU8sSUFBSSxDQUFDLElBQUksS0FBSyxRQUFRLENBQUMsYUFBYSxDQUFDO0lBQzlDLENBQUM7SUFFRCxJQUFXLFFBQVE7UUFDakIsT0FBTyxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksWUFBWSxJQUFJLElBQUksSUFBSSxDQUFDLEtBQUssRUFBRSxFQUFFLFlBQVksSUFBSSxDQUFDO0lBQzVFLENBQUM7SUFFRCxJQUFXLEtBQUs7UUFDZCxPQUFPLEtBQUssQ0FBQyxLQUFLLENBQUM7SUFDckIsQ0FBQztJQUVELElBQVcsS0FBSyxDQUFDLEtBQUs7UUFDcEIsSUFBSSxJQUFJLEdBQUcsS0FBSyxFQUFFLElBQUksQ0FBQztRQUN2QixJQUFJLEVBQUUsR0FBRyxLQUFLLEVBQUUsRUFBRSxDQUFDO1FBRW5CLElBQUksS0FBSyxFQUFFLENBQUM7WUFD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RUFBRSxHQUFHLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQ2pFLENBQUM7SUFDSCxDQUFDO0NBRUYiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBmb3JtYXQsIGlzbzg2MDEgfSBmcm9tICdAZmlyZXN0aXRjaC9kYXRlJztcblxuXG5pbXBvcnQgeyBpc0RhdGUsIGlzVmFsaWQsIHBhcnNlSVNPIH0gZnJvbSAnZGF0ZS1mbnMnO1xuXG5pbXBvcnQgeyBJdGVtVHlwZSB9IGZyb20gJy4uLy4uL2VudW1zL2l0ZW0tdHlwZS5lbnVtJztcbmltcG9ydCB7IGdldFJhbmdlTmFtZSB9IGZyb20gJy4uLy4uL2hlbHBlcnMvZ2V0LXJhbmdlLW5hbWUnO1xuaW1wb3J0IHtcbiAgSUZpbHRlckNvbmZpZ0RhdGVSYW5nZUl0ZW0sXG59IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvaXRlbXMvZGF0ZS1yYW5nZS5pbnRlcmZhY2UnO1xuXG5pbXBvcnQgeyBCYXNlSXRlbSB9IGZyb20gJy4vYmFzZS1pdGVtJztcblxuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQmFzZURhdGVSYW5nZUl0ZW0gZXh0ZW5kcyBCYXNlSXRlbTxJRmlsdGVyQ29uZmlnRGF0ZVJhbmdlSXRlbT4ge1xuXG4gIHB1YmxpYyBnZXQgaXNUeXBlRGF0ZVJhbmdlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnR5cGUgPT09IEl0ZW1UeXBlLkRhdGVSYW5nZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaXNUeXBlRGF0ZVRpbWVSYW5nZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy50eXBlID09PSBJdGVtVHlwZS5EYXRlVGltZVJhbmdlO1xuICB9XG5cbiAgcHVibGljIGdldCBoYXNWYWx1ZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy52YWx1ZT8uZnJvbSBpbnN0YW5jZW9mIERhdGUgfHwgdGhpcy52YWx1ZT8udG8gaW5zdGFuY2VvZiBEYXRlO1xuICB9XG5cbiAgcHVibGljIGdldCB2YWx1ZSgpIHtcbiAgICByZXR1cm4gc3VwZXIudmFsdWU7XG4gIH1cblxuICBwdWJsaWMgc2V0IHZhbHVlKHZhbHVlKSB7XG4gICAgbGV0IGZyb20gPSB2YWx1ZT8uZnJvbTtcbiAgICBsZXQgdG8gPSB2YWx1ZT8udG87XG5cbiAgICBpZiAodmFsdWUpIHtcbiAgICAgIGlmIChmcm9tICYmICghaXNEYXRlKGZyb20pIHx8ICFpc1ZhbGlkKGZyb20pKSkge1xuICAgICAgICBmcm9tID0gcGFyc2VJU08oZnJvbSk7XG4gICAgICB9XG4gICAgICBpZiAodG8gJiYgKCFpc0RhdGUodG8pIHx8ICFpc1ZhbGlkKHRvKSkpIHtcbiAgICAgICAgdG8gPSBwYXJzZUlTTyh0byk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgc3VwZXIudmFsdWUgPSB7IGZyb20sIHRvIH07XG4gIH1cblxuICBwdWJsaWMgZ2V0IHF1ZXJ5UGFyYW0oKTogUmVjb3JkPHN0cmluZywgdW5rbm93bj4ge1xuICAgIGlmKCF0aGlzLmhhc1ZhbHVlKSB7XG4gICAgICByZXR1cm4ge307XG4gICAgfVxuICAgIFxuICAgIGNvbnN0IHZhbHVlOiB7IGZyb20/OiBEYXRlLCB0bz86IERhdGUgfSA9IHt9O1xuICAgIGNvbnN0IHBhcmFtRnJvbU5hbWUgPSBnZXRSYW5nZU5hbWUodGhpcy5uYW1lLCAnZnJvbScpO1xuICAgIGNvbnN0IHBhcmFtVG9OYW1lID0gZ2V0UmFuZ2VOYW1lKHRoaXMubmFtZSwgJ3RvJyk7XG5cbiAgICBpZih0aGlzLnZhbHVlLmZyb20pIHtcbiAgICAgIHZhbHVlW3BhcmFtRnJvbU5hbWVdID0gaXNvODYwMSh0aGlzLnZhbHVlLmZyb20pO1xuICAgIH1cblxuICAgIGlmKHRoaXMudmFsdWUudG8pIHtcbiAgICAgIHZhbHVlW3BhcmFtVG9OYW1lXSA9IGlzbzg2MDEodGhpcy52YWx1ZS50byk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHZhbHVlO1xuICB9XG5cbiAgcHVibGljIGdldCBxdWVyeSgpOiBSZWNvcmQ8c3RyaW5nLCBEYXRlPiB7XG4gICAgaWYoIXRoaXMuaGFzVmFsdWUpIHtcbiAgICAgIHJldHVybiB7fTtcbiAgICB9XG5cbiAgICBjb25zdCB2YWx1ZTogeyBmcm9tPzogRGF0ZSwgdG8/OiBEYXRlIH0gPSB7fTtcbiAgICBjb25zdCBwYXJhbUZyb21OYW1lID0gZ2V0UmFuZ2VOYW1lKHRoaXMubmFtZSwgJ2Zyb20nKTtcbiAgICBjb25zdCBwYXJhbVRvTmFtZSA9IGdldFJhbmdlTmFtZSh0aGlzLm5hbWUsICd0bycpO1xuXG4gICAgaWYodGhpcy52YWx1ZS5mcm9tKSB7XG4gICAgICB2YWx1ZVtwYXJhbUZyb21OYW1lXSA9IHRoaXMudmFsdWUuZnJvbTtcbiAgICB9XG5cbiAgICBpZih0aGlzLnZhbHVlLnRvKSB7XG4gICAgICB2YWx1ZVtwYXJhbVRvTmFtZV0gPSB0aGlzLnZhbHVlLnRvO1xuICAgIH1cblxuICAgIHJldHVybiB2YWx1ZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgY2hpcHMoKTogeyBuYW1lPzogc3RyaW5nLCB2YWx1ZTogc3RyaW5nLCBsYWJlbDogc3RyaW5nIH1bXSB7XG4gICAgY29uc3QgZGF0ZUZvcm1hdCA9IHRoaXMudHlwZSA9PT0gSXRlbVR5cGUuRGF0ZVJhbmdlID8gJ2RhdGUnIDogJ2RhdGUtdGltZSc7XG4gICAgY29uc3QgY2hpcHMgPSBbXTtcblxuICAgIGlmICh0aGlzLnZhbHVlPy5mcm9tKSB7XG4gICAgICBjaGlwcy5wdXNoKHtcbiAgICAgICAgbmFtZTogJ2Zyb20nLFxuICAgICAgICB2YWx1ZTogZm9ybWF0KHRoaXMudmFsdWUuZnJvbSwgZGF0ZUZvcm1hdCksXG4gICAgICAgIGxhYmVsOiB0aGlzLmxhYmVsWzBdLFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMudmFsdWU/LnRvKSB7XG4gICAgICBjaGlwcy5wdXNoKHtcbiAgICAgICAgbmFtZTogJ3RvJyxcbiAgICAgICAgdmFsdWU6IGZvcm1hdCh0aGlzLnZhbHVlLnRvLCBkYXRlRm9ybWF0KSxcbiAgICAgICAgbGFiZWw6IHRoaXMubGFiZWxbMV0sXG4gICAgICB9KTtcbiAgICB9XG5cbiAgICByZXR1cm4gY2hpcHM7XG4gIH1cblxuICBwdWJsaWMgY2xlYXIoXG4gICAgbmFtZTogc3RyaW5nID0gbnVsbCxcbiAgKSB7XG4gICAgaWYgKG5hbWUgPT09ICdmcm9tJykge1xuICAgICAgZGVsZXRlIHRoaXMudmFsdWUuZnJvbTtcblxuICAgICAgaWYgKHRoaXMuZGVmYXVsdFZhbHVlPy5mcm9tKSB7XG4gICAgICAgIHRoaXMudmFsdWUuZnJvbSA9IHRoaXMuZGVmYXVsdFZhbHVlLmZyb207XG4gICAgICB9XG5cbiAgICAgIHRoaXMudmFsdWUgPSB7IC4uLnRoaXMudmFsdWUgfTtcbiAgICB9IGVsc2UgaWYgKG5hbWUgPT09ICd0bycpIHtcbiAgICAgIGRlbGV0ZSB0aGlzLnZhbHVlLnRvO1xuXG4gICAgICBpZiAodGhpcy5kZWZhdWx0VmFsdWU/LnRvKSB7XG4gICAgICAgIHRoaXMudmFsdWUudG8gPSB0aGlzLmRlZmF1bHRWYWx1ZS50bztcbiAgICAgIH1cblxuICAgICAgdGhpcy52YWx1ZSA9IHsgLi4udGhpcy52YWx1ZSB9O1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnZhbHVlID0gdGhpcy5kZWZhdWx0VmFsdWUgPyB7IC4uLnRoaXMuZGVmYXVsdFZhbHVlIH0gOiB7fTtcbiAgICB9XG4gIH1cblxufVxuIl19
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { BehaviorSubject,
|
|
2
|
-
import {
|
|
1
|
+
import { BehaviorSubject, forkJoin, Observable, of, Subject } from 'rxjs';
|
|
2
|
+
import { map, switchMap, tap, } from 'rxjs/operators';
|
|
3
3
|
import { isFunction } from 'lodash-es';
|
|
4
4
|
import { ItemType } from '../../enums/item-type.enum';
|
|
5
5
|
export class BaseItem {
|
|
@@ -8,27 +8,19 @@ export class BaseItem {
|
|
|
8
8
|
name;
|
|
9
9
|
label;
|
|
10
10
|
chipLabel;
|
|
11
|
-
hide;
|
|
12
|
-
defaultValue;
|
|
13
11
|
defaultValueFn;
|
|
14
|
-
|
|
12
|
+
defaultValue;
|
|
15
13
|
showClear;
|
|
16
14
|
persistanceDisabled;
|
|
17
15
|
queryParamsDisabled;
|
|
18
|
-
|
|
19
|
-
|
|
16
|
+
changeCallback;
|
|
17
|
+
initCallback;
|
|
20
18
|
_type;
|
|
21
|
-
_model = undefined;
|
|
22
|
-
_pendingValues = false;
|
|
23
|
-
_pendingDefaultValue = false;
|
|
24
|
-
_initializedValues = false;
|
|
25
19
|
_valuesFn;
|
|
26
|
-
|
|
27
|
-
_value$ = new BehaviorSubject(
|
|
28
|
-
_valueChange$ = new Subject();
|
|
20
|
+
_hidden$ = new BehaviorSubject(false);
|
|
21
|
+
_value$ = new BehaviorSubject(undefined);
|
|
29
22
|
_values$ = new BehaviorSubject(null);
|
|
30
23
|
_destroy$ = new Subject();
|
|
31
|
-
_clear$ = new Subject();
|
|
32
24
|
constructor(itemConfig, _additionalConfig, _filter) {
|
|
33
25
|
this._additionalConfig = _additionalConfig;
|
|
34
26
|
this._filter = _filter;
|
|
@@ -38,6 +30,16 @@ export class BaseItem {
|
|
|
38
30
|
get filter() {
|
|
39
31
|
return this._filter;
|
|
40
32
|
}
|
|
33
|
+
get hidden$() {
|
|
34
|
+
return this._hidden$.asObservable();
|
|
35
|
+
}
|
|
36
|
+
get visible$() {
|
|
37
|
+
return this._hidden$
|
|
38
|
+
.pipe(map((hidden) => !hidden));
|
|
39
|
+
}
|
|
40
|
+
get hidden() {
|
|
41
|
+
return this._hidden$.getValue();
|
|
42
|
+
}
|
|
41
43
|
get isTypeAutocomplete() {
|
|
42
44
|
return this.type === ItemType.AutoComplete;
|
|
43
45
|
}
|
|
@@ -72,7 +74,7 @@ export class BaseItem {
|
|
|
72
74
|
return this.type === ItemType.Keyword;
|
|
73
75
|
}
|
|
74
76
|
get isChipVisible() {
|
|
75
|
-
return
|
|
77
|
+
return this.hasValue;
|
|
76
78
|
}
|
|
77
79
|
get destroy$() {
|
|
78
80
|
return this._destroy$.asObservable();
|
|
@@ -80,21 +82,16 @@ export class BaseItem {
|
|
|
80
82
|
get type() {
|
|
81
83
|
return this._type;
|
|
82
84
|
}
|
|
83
|
-
get hasPendingValues() {
|
|
84
|
-
return this._pendingValues;
|
|
85
|
-
}
|
|
86
|
-
get hasPendingDefaultValue() {
|
|
87
|
-
return this._pendingDefaultValue;
|
|
88
|
-
}
|
|
89
85
|
get hasValue() {
|
|
90
|
-
return this.value !== undefined;
|
|
86
|
+
return this.value !== null && this.value !== undefined;
|
|
91
87
|
}
|
|
92
|
-
get
|
|
93
|
-
return this.
|
|
88
|
+
get hasValue$() {
|
|
89
|
+
return this._value$.asObservable()
|
|
90
|
+
.pipe(map(() => this.hasValue));
|
|
94
91
|
}
|
|
95
|
-
|
|
96
|
-
this.
|
|
97
|
-
|
|
92
|
+
get chips$() {
|
|
93
|
+
return this._value$.asObservable()
|
|
94
|
+
.pipe(map(() => this.chips));
|
|
98
95
|
}
|
|
99
96
|
set values(values) {
|
|
100
97
|
this._values$.next(values);
|
|
@@ -105,148 +102,87 @@ export class BaseItem {
|
|
|
105
102
|
get values$() {
|
|
106
103
|
return this._values$.asObservable();
|
|
107
104
|
}
|
|
108
|
-
get valueChange$() {
|
|
109
|
-
return this._valueChange$.asObservable();
|
|
110
|
-
}
|
|
111
105
|
get value$() {
|
|
112
106
|
return this._value$.asObservable();
|
|
113
107
|
}
|
|
114
|
-
get
|
|
115
|
-
return this.
|
|
116
|
-
}
|
|
117
|
-
get initialized() {
|
|
118
|
-
return this._initialized;
|
|
108
|
+
get queryParam() {
|
|
109
|
+
return this.query;
|
|
119
110
|
}
|
|
120
|
-
|
|
121
|
-
|
|
111
|
+
hide() {
|
|
112
|
+
this._hidden$.next(true);
|
|
122
113
|
}
|
|
123
|
-
|
|
124
|
-
|
|
114
|
+
show() {
|
|
115
|
+
this._hidden$.next(false);
|
|
125
116
|
}
|
|
126
|
-
|
|
127
|
-
this.
|
|
128
|
-
|
|
129
|
-
get isQueryParamVisible() {
|
|
130
|
-
return true;
|
|
131
|
-
}
|
|
132
|
-
get queryObject() {
|
|
133
|
-
const value = this.value;
|
|
134
|
-
const name = this.name;
|
|
135
|
-
const params = {};
|
|
136
|
-
if (Array.isArray(value)) {
|
|
137
|
-
params[this.name] = value.join(',');
|
|
117
|
+
get query() {
|
|
118
|
+
if (!this.hasValue) {
|
|
119
|
+
return {};
|
|
138
120
|
}
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
}
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
121
|
+
return {
|
|
122
|
+
[this.name]: this.value,
|
|
123
|
+
};
|
|
124
|
+
}
|
|
125
|
+
init(value) {
|
|
126
|
+
return forkJoin([
|
|
127
|
+
this.loadDefault(),
|
|
128
|
+
this.loadValues(),
|
|
129
|
+
])
|
|
130
|
+
.pipe(tap(() => {
|
|
131
|
+
this.initValue(value);
|
|
132
|
+
}));
|
|
146
133
|
}
|
|
147
|
-
|
|
148
|
-
this._pendingDefaultValue = true;
|
|
134
|
+
loadDefault() {
|
|
149
135
|
return this.defaultValueFn()
|
|
150
136
|
.pipe(tap((value) => {
|
|
151
137
|
this.defaultValue = value;
|
|
152
|
-
this._initDefaultModel();
|
|
153
|
-
}), finalize(() => {
|
|
154
|
-
this._pendingDefaultValue = false;
|
|
155
138
|
}));
|
|
156
139
|
}
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
this.
|
|
161
|
-
|
|
162
|
-
if (this.initialized) {
|
|
163
|
-
this._valueChange$.next(null);
|
|
164
|
-
}
|
|
165
|
-
}
|
|
166
|
-
initValues(persistedValue) {
|
|
167
|
-
this._initializedValues = false;
|
|
168
|
-
this.persistedValue = persistedValue;
|
|
169
|
-
this._initDefaultModel();
|
|
170
|
-
const isAutocomplete = this.type === ItemType.AutoComplete ||
|
|
171
|
-
this.type === ItemType.AutoCompleteChips;
|
|
172
|
-
if (this._valuesFn && !isAutocomplete) {
|
|
173
|
-
const valuesResult = this._valuesFn(null, this._filter);
|
|
174
|
-
if (isObservable(valuesResult)) {
|
|
175
|
-
this._pendingValues = true;
|
|
140
|
+
loadValues() {
|
|
141
|
+
return of(null)
|
|
142
|
+
.pipe(switchMap(() => {
|
|
143
|
+
if ((this.type === ItemType.AutoComplete || this.type === ItemType.AutoCompleteChips)) {
|
|
144
|
+
return of([]);
|
|
176
145
|
}
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
this._initializedValues = true;
|
|
146
|
+
if (typeof this._valuesFn === 'function') {
|
|
147
|
+
const values = this._valuesFn();
|
|
148
|
+
return values instanceof Observable ? values : of(values);
|
|
181
149
|
}
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
this._init();
|
|
185
|
-
this._initializedValues = true;
|
|
186
|
-
}
|
|
150
|
+
return of(this.values);
|
|
151
|
+
}), tap((values) => this.values = values || []));
|
|
187
152
|
}
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
this.loading = true;
|
|
191
|
-
this._valuesFn(null, this._filter)
|
|
192
|
-
.pipe(take(1), takeUntil(this._destroy$))
|
|
193
|
-
.subscribe((values) => {
|
|
194
|
-
this.values = values;
|
|
195
|
-
this._pendingValues = false;
|
|
196
|
-
this.loading = false;
|
|
197
|
-
this._init();
|
|
198
|
-
this._validateModel();
|
|
199
|
-
this._initializedValues = true;
|
|
200
|
-
});
|
|
201
|
-
}
|
|
153
|
+
initValue(value) {
|
|
154
|
+
this.value = value === undefined ? this.defaultValue : value;
|
|
202
155
|
}
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
Filter ${this.name} can not be cleared with .clear() method!
|
|
207
|
-
Use special .clearRange() or clearDateRange() instead.
|
|
208
|
-
`);
|
|
209
|
-
}
|
|
210
|
-
this._clear$.next(defaultValue);
|
|
211
|
-
this._clearValue(defaultValue);
|
|
156
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
157
|
+
clear(name = null) {
|
|
158
|
+
this.value = this.defaultValue ?? undefined;
|
|
212
159
|
}
|
|
213
160
|
destroy() {
|
|
214
161
|
this._destroy$.next(null);
|
|
215
162
|
this._destroy$.complete();
|
|
216
163
|
}
|
|
217
|
-
|
|
218
|
-
this.
|
|
164
|
+
get value() {
|
|
165
|
+
return this._value$.getValue();
|
|
219
166
|
}
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
if (model !== undefined) {
|
|
223
|
-
this.setModel(model);
|
|
224
|
-
}
|
|
225
|
-
}
|
|
226
|
-
_clearValue(defaultValue = undefined) {
|
|
227
|
-
this.model = defaultValue ?? undefined;
|
|
228
|
-
}
|
|
229
|
-
get _initialized() {
|
|
230
|
-
return !this._pendingDefaultValue && !this._pendingValues && this._initializedValues;
|
|
167
|
+
set value(value) {
|
|
168
|
+
this._value$.next(value);
|
|
231
169
|
}
|
|
232
170
|
_initConfig(item) {
|
|
233
171
|
this.name = item.name;
|
|
234
172
|
this.label = item.label;
|
|
235
173
|
this.chipLabel = item.chipLabel;
|
|
236
|
-
|
|
237
|
-
this.defaultValueFn = item.default;
|
|
238
|
-
}
|
|
239
|
-
else {
|
|
240
|
-
this.defaultValue = item.default;
|
|
241
|
-
}
|
|
242
|
-
this.init = item.init || (() => {
|
|
243
|
-
//
|
|
244
|
-
});
|
|
245
|
-
this.change = item.change;
|
|
246
|
-
this.hide = item.hide;
|
|
174
|
+
this._hidden$.next(item.hide ?? false);
|
|
247
175
|
this.showClear = item.clear ?? true;
|
|
248
176
|
this.persistanceDisabled = item.disablePersist ?? false;
|
|
249
177
|
this.queryParamsDisabled = item.disableQueryParams ?? false;
|
|
178
|
+
this.defaultValueFn = typeof item.default === 'function' ?
|
|
179
|
+
item.default : () => of(item.default);
|
|
180
|
+
this.initCallback = item.init || (() => {
|
|
181
|
+
//
|
|
182
|
+
});
|
|
183
|
+
this.changeCallback = item.change || (() => {
|
|
184
|
+
//
|
|
185
|
+
});
|
|
250
186
|
if (isFunction(item.values)) {
|
|
251
187
|
this._valuesFn = item.values;
|
|
252
188
|
}
|
|
@@ -255,4 +191,4 @@ export class BaseItem {
|
|
|
255
191
|
}
|
|
256
192
|
}
|
|
257
193
|
}
|
|
258
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1pdGVtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9tb2RlbHMvaXRlbXMvYmFzZS1pdGVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxlQUFlLEVBQUUsWUFBWSxFQUFjLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMxRSxPQUFPLEVBQ0wsUUFBUSxFQUNSLElBQUksRUFDSixTQUFTLEVBQ1QsR0FBRyxHQUNKLE1BQU0sZ0JBQWdCLENBQUM7QUFFeEIsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUd2QyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFLdEQsTUFBTSxPQUFnQixRQUFRO0lBZ0NoQjtJQUNBO0lBL0JMLElBQUksQ0FBUztJQUNiLEtBQUssQ0FBTTtJQUNYLFNBQVMsQ0FBb0I7SUFDN0IsSUFBSSxDQUFVO0lBQ2QsWUFBWSxDQUFNO0lBQ2xCLGNBQWMsQ0FBbUI7SUFDakMsY0FBYyxDQUFVO0lBQ3hCLFNBQVMsQ0FBVTtJQUNuQixtQkFBbUIsQ0FBVTtJQUM3QixtQkFBbUIsQ0FBVTtJQUM3QixNQUFNLENBQXVEO0lBQzdELElBQUksQ0FBdUM7SUFFL0IsS0FBSyxDQUFZO0lBRTFCLE1BQU0sR0FBUSxTQUFTLENBQUM7SUFDeEIsY0FBYyxHQUFHLEtBQUssQ0FBQztJQUN2QixvQkFBb0IsR0FBRyxLQUFLLENBQUM7SUFDN0Isa0JBQWtCLEdBQUcsS0FBSyxDQUFDO0lBQzNCLFNBQVMsQ0FBMEU7SUFFckYsU0FBUyxHQUFHLElBQUksZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3ZDLE9BQU8sR0FBRyxJQUFJLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNwQyxhQUFhLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztJQUNwQyxRQUFRLEdBQUcsSUFBSSxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUM7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QUksS0FBSyxDQUFDO1FBRTVELElBQUksVUFBVSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO1lBQzVCLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQztRQUMvQixDQUFDO2FBQU0sQ0FBQztZQUNOLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQztRQUM1QixDQUFDO0lBQ0gsQ0FBQztDQVNGIiwic291cmNlc0NvbnRlbnQiOlsiXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGlzT2JzZXJ2YWJsZSwgT2JzZXJ2YWJsZSwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtcbiAgZmluYWxpemUsXG4gIHRha2UsXG4gIHRha2VVbnRpbCxcbiAgdGFwLFxufSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IGlzRnVuY3Rpb24gfSBmcm9tICdsb2Rhc2gtZXMnO1xuXG5pbXBvcnQgdHlwZSB7IEZpbHRlckNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMvZmlsdGVyL2ZpbHRlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgSXRlbVR5cGUgfSBmcm9tICcuLi8uLi9lbnVtcy9pdGVtLXR5cGUuZW51bSc7XG5pbXBvcnQgeyBJRmlsdGVyQ29uZmlnSXRlbSB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvY29uZmlnLmludGVyZmFjZSc7XG5pbXBvcnQgeyBJRmlsdGVyRGVmYXVsdEZuIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9pdGVtcy9iYXNlLmludGVyZmFjZSc7XG5cblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEJhc2VJdGVtPFQgZXh0ZW5kcyBJRmlsdGVyQ29uZmlnSXRlbT4ge1xuXG4gIHB1YmxpYyBuYW1lOiBzdHJpbmc7XG4gIHB1YmxpYyBsYWJlbDogYW55O1xuICBwdWJsaWMgY2hpcExhYmVsOiBzdHJpbmcgfCBzdHJpbmdbXTtcbiAgcHVibGljIGhpZGU6IGJvb2xlYW47XG4gIHB1YmxpYyBkZWZhdWx0VmFsdWU6IGFueTtcbiAgcHVibGljIGRlZmF1bHRWYWx1ZUZuOiBJRmlsdGVyRGVmYXVsdEZuO1xuICBwdWJsaWMgcGVyc2lzdGVkVmFsdWU6IHVua25vd247XG4gIHB1YmxpYyBzaG93Q2xlYXI6IGJvb2xlYW47XG4gIHB1YmxpYyBwZXJzaXN0YW5jZURpc2FibGVkOiBib29sZWFuO1xuICBwdWJsaWMgcXVlcnlQYXJhbXNEaXNhYmxlZDogYm9vbGVhbjtcbiAgcHVibGljIGNoYW5nZTogKGl0ZW06IEJhc2VJdGVtPFQ+LCBmaWx0ZXI6IEZpbHRlckNvbXBvbmVudCkgPT4gdm9pZDtcbiAgcHVibGljIGluaXQ6IChpdGVtOiBCYXNlSXRlbTxUPiwgZmlsdGVyPykgPT4gdm9pZDtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgX3R5cGU6IFRbJ3R5cGUnXTtcblxuICBwcm90ZWN0ZWQgX21vZGVsOiBhbnkgPSB1bmRlZmluZWQ7XG4gIHByb3RlY3RlZCBfcGVuZGluZ1ZhbHVlcyA9IGZhbHNlO1xuICBwcm90ZWN0ZWQgX3BlbmRpbmdEZWZhdWx0VmFsdWUgPSBmYWxzZTtcbiAgcHJvdGVjdGVkIF9pbml0aWFsaXplZFZhbHVlcyA9IGZhbHNlO1xuICBwcm90ZWN0ZWQgX3ZhbHVlc0ZuOiAoa2V5d29yZD86IHN0cmluZywgZmlsdGVyPzogRmlsdGVyQ29tcG9uZW50KSA9PiBPYnNlcnZhYmxlPGFueT4gfCBhbnlbXTtcblxuICBwcml2YXRlIF9sb2FkaW5nJCA9IG5ldyBCZWhhdmlvclN1YmplY3QoZmFsc2UpO1xuICBwcml2YXRlIF92YWx1ZSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0KG51bGwpO1xuICBwcml2YXRlIF92YWx1ZUNoYW5nZSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICBwcml2YXRlIF92YWx1ZXMkID0gbmV3IEJlaGF2aW9yU3ViamVjdChudWxsKTtcbiAgcHJpdmF0ZSBfZGVzdHJveSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICBwcml2YXRlIF9jbGVhciQgPSBuZXcgU3ViamVjdDx1bmtub3duPigpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIGl0ZW1Db25maWc6IFQsXG4gICAgcHJvdGVjdGVkIF9hZGRpdGlvbmFsQ29uZmlnOiB1bmtub3duLFxuICAgIHByb3RlY3RlZCBfZmlsdGVyOiBGaWx0ZXJDb21wb25lbnQsXG4gICkge1xuICAgIHRoaXMuX3R5cGUgPSBpdGVtQ29uZmlnLnR5cGU7XG4gICAgdGhpcy5faW5pdENvbmZpZyhpdGVtQ29uZmlnKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgZmlsdGVyKCk6IEZpbHRlckNvbXBvbmVudCB7XG4gICAgcmV0dXJuIHRoaXMuX2ZpbHRlcjtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaXNUeXBlQXV0b2NvbXBsZXRlKCkge1xuICAgIHJldHVybiB0aGlzLnR5cGUgPT09IEl0ZW1UeXBlLkF1dG9Db21wbGV0ZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaXNUeXBlQXV0b2NvbXBsZXRlQ2hpcHMoKSB7XG4gICAgcmV0dXJuIHRoaXMudHlwZSA9PT0gSXRlbVR5cGUuQXV0b0NvbXBsZXRlQ2hpcHM7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGlzVHlwZUNoaXBzKCkge1xuICAgIHJldHVybiB0aGlzLnR5cGUgPT09IEl0ZW1UeXBlLkNoaXBzO1xuICB9XG5cbiAgcHVibGljIGdldCBpc1R5cGVDaGVja2JveCgpIHtcbiAgICByZXR1cm4gdGhpcy50eXBlID09PSBJdGVtVHlwZS5DaGVja2JveDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaXNUeXBlU2VsZWN0KCkge1xuICAgIHJldHVybiB0aGlzLnR5cGUgPT09IEl0ZW1UeXBlLlNlbGVjdDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaXNUeXBlRGF0ZSgpIHtcbiAgICByZXR1cm4gdGhpcy50eXBlID09PSBJdGVtVHlwZS5EYXRlO1xuICB9XG5cbiAgcHVibGljIGdldCBpc1R5cGVEYXRlUmFuZ2UoKSB7XG4gICAgcmV0dXJuIHRoaXMudHlwZSA9PT0gSXRlbVR5cGUuRGF0ZVJhbmdlO1xuICB9XG5cbiAgcHVibGljIGdldCBpc1R5cGVSYW5nZSgpIHtcbiAgICByZXR1cm4gdGhpcy50eXBlID09PSBJdGVtVHlwZS5SYW5nZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaXNUeXBlRGF0ZVRpbWVSYW5nZSgpIHtcbiAgICByZXR1cm4gdGhpcy50eXBlID09PSBJdGVtVHlwZS5EYXRlVGltZVJhbmdlO1xuICB9XG5cbiAgcHVibGljIGdldCBpc1R5cGVEYXRlVGltZSgpIHtcbiAgICByZXR1cm4gdGhpcy50eXBlID09PSBJdGVtVHlwZS5EYXRlVGltZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaXNUeXBlS2V5d29yZCgpIHtcbiAgICByZXR1cm4gdGhpcy50eXBlID09PSBJdGVtVHlwZS5LZXl3b3JkO1xuICB9XG5cbiAgcHVibGljIGdldCBpc0NoaXBWaXNpYmxlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhIXRoaXMubW9kZWwgJiYgIXRoaXMuaXNUeXBlS2V5d29yZDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgZGVzdHJveSQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2Rlc3Ryb3kkLmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgcHVibGljIGdldCB0eXBlKCk6IFRbJ3R5cGUnXSB7XG4gICAgcmV0dXJuIHRoaXMuX3R5cGU7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGhhc1BlbmRpbmdWYWx1ZXMoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX3BlbmRpbmdWYWx1ZXM7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGhhc1BlbmRpbmdEZWZhdWx0VmFsdWUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX3BlbmRpbmdEZWZhdWx0VmFsdWU7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGhhc1ZhbHVlKCkge1xuICAgIHJldHVybiB0aGlzLnZhbHVlICE9PSB1bmRlZmluZWQ7XG4gIH1cblxuICBwdWJsaWMgZ2V0IG1vZGVsKCkge1xuICAgIHJldHVybiB0aGlzLl9tb2RlbDtcbiAgfVxuXG4gIHB1YmxpYyBzZXQgbW9kZWwodmFsdWUpIHtcbiAgICB0aGlzLnNldE1vZGVsKHZhbHVlKTtcbiAgICB0aGlzLnZhbHVlQ2hhbmdlZCgpO1xuICB9XG5cbiAgcHVibGljIHNldCB2YWx1ZXModmFsdWVzKSB7XG4gICAgdGhpcy5fdmFsdWVzJC5uZXh0KHZhbHVlcyk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHZhbHVlcygpIHtcbiAgICByZXR1cm4gdGhpcy5fdmFsdWVzJC5nZXRWYWx1ZSgpO1xuICB9XG5cbiAgcHVibGljIGdldCB2YWx1ZXMkKCk6IE9ic2VydmFibGU8dW5rbm93bj4ge1xuICAgIHJldHVybiB0aGlzLl92YWx1ZXMkLmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgcHVibGljIGdldCB2YWx1ZUNoYW5nZSQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3ZhbHVlQ2hhbmdlJC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgdmFsdWUkKCkge1xuICAgIHJldHVybiB0aGlzLl92YWx1ZSQuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGNsZWFyJCgpIHtcbiAgICByZXR1cm4gdGhpcy5fY2xlYXIkLmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgcHVibGljIGdldCBpbml0aWFsaXplZCgpIHtcbiAgICByZXR1cm4gdGhpcy5faW5pdGlhbGl6ZWQ7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGxvYWRpbmckKCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIHJldHVybiB0aGlzLl9sb2FkaW5nJC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgbG9hZGluZygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fbG9hZGluZyQuZ2V0VmFsdWUoKTtcbiAgfVxuXG4gIHB1YmxpYyBzZXQgbG9hZGluZyh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuX2xvYWRpbmckLm5leHQodmFsdWUpO1xuICB9XG5cbiAgcHVibGljIGdldCBpc1F1ZXJ5UGFyYW1WaXNpYmxlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgcHVibGljIGdldCBxdWVyeU9iamVjdCgpOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiB7XG4gICAgY29uc3QgdmFsdWUgPSB0aGlzLnZhbHVlO1xuICAgIGNvbnN0IG5hbWUgPSB0aGlzLm5hbWU7XG4gICAgY29uc3QgcGFyYW1zID0ge307XG5cbiAgICBpZiAoQXJyYXkuaXNBcnJheSh2YWx1ZSkpIHtcbiAgICAgIHBhcmFtc1t0aGlzLm5hbWVdID0gdmFsdWUuam9pbignLCcpO1xuICAgIH0gZWxzZSB7XG4gICAgICBwYXJhbXNbbmFtZV0gPSB2YWx1ZTtcbiAgICB9XG5cbiAgICByZXR1cm4gcGFyYW1zO1xuICB9XG5cbiAgcHVibGljIGdldCBwZXJzaXN0YW5jZU9iamVjdCgpOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiB7XG4gICAgcmV0dXJuIHRoaXMucXVlcnlPYmplY3Q7XG4gIH1cblxuICBwdWJsaWMgbG9hZERlZmF1bHRWYWx1ZSgpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIHRoaXMuX3BlbmRpbmdEZWZhdWx0VmFsdWUgPSB0cnVlO1xuXG4gICAgcmV0dXJuIHRoaXMuZGVmYXVsdFZhbHVlRm4oKVxuICAgICAgLnBpcGUoXG4gICAgICAgIHRhcCgodmFsdWUpID0+IHtcbiAgICAgICAgICB0aGlzLmRlZmF1bHRWYWx1ZSA9IHZhbHVlO1xuXG4gICAgICAgICAgdGhpcy5faW5pdERlZmF1bHRNb2RlbCgpO1xuICAgICAgICB9KSxcbiAgICAgICAgZmluYWxpemUoKCkgPT4ge1xuICAgICAgICAgIHRoaXMuX3BlbmRpbmdEZWZhdWx0VmFsdWUgPSBmYWxzZTtcbiAgICAgICAgfSksXG4gICAgICApO1xuICB9XG5cbiAgcHVibGljIHZhbHVlQ2hhbmdlZCgpIHtcbiAgICB0aGlzLl92YWx1ZSQubmV4dCh0aGlzLnZhbHVlKTtcblxuICAgIGlmICh0aGlzLmNoYW5nZSkge1xuICAgICAgdGhpcy5jaGFuZ2UodGhpcywgdGhpcy5fZmlsdGVyKTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5pbml0aWFsaXplZCkge1xuICAgICAgdGhpcy5fdmFsdWVDaGFuZ2UkLm5leHQobnVsbCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGluaXRWYWx1ZXMocGVyc2lzdGVkVmFsdWU6IHVua25vd24pIHtcbiAgICB0aGlzLl9pbml0aWFsaXplZFZhbHVlcyA9IGZhbHNlO1xuICAgIHRoaXMucGVyc2lzdGVkVmFsdWUgPSBwZXJzaXN0ZWRWYWx1ZTtcbiAgICB0aGlzLl9pbml0RGVmYXVsdE1vZGVsKCk7XG5cbiAgICBjb25zdCBpc0F1dG9jb21wbGV0ZSA9IHRoaXMudHlwZSA9PT0gSXRlbVR5cGUuQXV0b0NvbXBsZXRlIHx8IFxuICAgICAgdGhpcy50eXBlID09PSBJdGVtVHlwZS5BdXRvQ29tcGxldGVDaGlwcztcblxuICAgIGlmICh0aGlzLl92YWx1ZXNGbiAmJiAhaXNBdXRvY29tcGxldGUpIHtcbiAgICAgIGNvbnN0IHZhbHVlc1Jlc3VsdCA9IHRoaXMuX3ZhbHVlc0ZuKG51bGwsIHRoaXMuX2ZpbHRlcik7XG5cbiAgICAgIGlmIChpc09ic2VydmFibGUodmFsdWVzUmVzdWx0KSkge1xuICAgICAgICB0aGlzLl9wZW5kaW5nVmFsdWVzID0gdHJ1ZTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMudmFsdWVzID0gdmFsdWVzUmVzdWx0O1xuICAgICAgICB0aGlzLl9pbml0KCk7XG4gICAgICAgIHRoaXMuX2luaXRpYWxpemVkVmFsdWVzID0gdHJ1ZTtcbiAgICAgIH1cblxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLl9pbml0KCk7XG4gICAgICB0aGlzLl9pbml0aWFsaXplZFZhbHVlcyA9IHRydWU7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGxvYWRBc3luY1ZhbHVlcyhyZWxvYWQgPSB0cnVlKSB7XG4gICAgaWYgKHJlbG9hZCB8fCAoIXRoaXMubG9hZGluZyAmJiB0aGlzLmhhc1BlbmRpbmdWYWx1ZXMpKSB7XG4gICAgICB0aGlzLmxvYWRpbmcgPSB0cnVlO1xuXG4gICAgICAodGhpcy5fdmFsdWVzRm4obnVsbCwgdGhpcy5fZmlsdGVyKSBhcyBPYnNlcnZhYmxlPHVua25vd24+KVxuICAgICAgICAucGlwZShcbiAgICAgICAgICB0YWtlKDEpLFxuICAgICAgICAgIHRha2VVbnRpbCh0aGlzLl9kZXN0cm95JCksXG4gICAgICAgIClcbiAgICAgICAgLnN1YnNjcmliZSgodmFsdWVzKSA9PiB7XG4gICAgICAgICAgdGhpcy52YWx1ZXMgPSB2YWx1ZXM7XG4gICAgICAgICAgdGhpcy5fcGVuZGluZ1ZhbHVlcyA9IGZhbHNlO1xuICAgICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xuICAgICAgICAgIHRoaXMuX2luaXQoKTtcbiAgICAgICAgICB0aGlzLl92YWxpZGF0ZU1vZGVsKCk7XG4gICAgICAgICAgdGhpcy5faW5pdGlhbGl6ZWRWYWx1ZXMgPSB0cnVlO1xuICAgICAgICB9KTtcblxuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBjbGVhcihkZWZhdWx0VmFsdWU6IHVua25vd24gPSB1bmRlZmluZWQpIHtcbiAgICBpZiAodGhpcy5pc1R5cGVSYW5nZSB8fCB0aGlzLmlzVHlwZURhdGVSYW5nZSB8fCB0aGlzLmlzVHlwZURhdGVUaW1lUmFuZ2UpIHtcbiAgICAgIGNvbnNvbGUud2FybihgXG4gICAgICAgIEZpbHRlciAke3RoaXMubmFtZX0gY2FuIG5vdCBiZSBjbGVhcmVkIHdpdGggLmNsZWFyKCkgbWV0aG9kIVxuICAgICAgICBVc2Ugc3BlY2lhbCAuY2xlYXJSYW5nZSgpIG9yIGNsZWFyRGF0ZVJhbmdlKCkgaW5zdGVhZC5cbiAgICAgIGApO1xuICAgIH1cblxuICAgIHRoaXMuX2NsZWFyJC5uZXh0KGRlZmF1bHRWYWx1ZSk7XG4gICAgdGhpcy5fY2xlYXJWYWx1ZShkZWZhdWx0VmFsdWUpO1xuICB9XG5cbiAgcHVibGljIGRlc3Ryb3koKSB7XG4gICAgdGhpcy5fZGVzdHJveSQubmV4dChudWxsKTtcbiAgICB0aGlzLl9kZXN0cm95JC5jb21wbGV0ZSgpO1xuICB9XG5cbiAgcHVibGljIHNldE1vZGVsKHZhbHVlKSB7XG4gICAgdGhpcy5fbW9kZWwgPSB2YWx1ZTtcbiAgfVxuXG4gIHByb3RlY3RlZCBfaW5pdERlZmF1bHRNb2RlbCgpIHtcbiAgICBjb25zdCBtb2RlbCA9IHRoaXMucGVyc2lzdGVkVmFsdWUgPz8gdGhpcy5kZWZhdWx0VmFsdWU7XG5cbiAgICBpZiAobW9kZWwgIT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy5zZXRNb2RlbChtb2RlbCk7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIF9jbGVhclZhbHVlKGRlZmF1bHRWYWx1ZTogdW5rbm93biA9IHVuZGVmaW5lZCkge1xuICAgIHRoaXMubW9kZWwgPSBkZWZhdWx0VmFsdWUgPz8gdW5kZWZpbmVkO1xuICB9XG5cbiAgcHJvdGVjdGVkIGdldCBfaW5pdGlhbGl6ZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICF0aGlzLl9wZW5kaW5nRGVmYXVsdFZhbHVlICYmICF0aGlzLl9wZW5kaW5nVmFsdWVzICYmIHRoaXMuX2luaXRpYWxpemVkVmFsdWVzO1xuICB9XG5cbiAgcHJpdmF0ZSBfaW5pdENvbmZpZyhpdGVtOiBUKSB7XG4gICAgdGhpcy5uYW1lID0gaXRlbS5uYW1lO1xuICAgIHRoaXMubGFiZWwgPSBpdGVtLmxhYmVsO1xuICAgIHRoaXMuY2hpcExhYmVsID0gaXRlbS5jaGlwTGFiZWw7XG5cbiAgICBpZiAodHlwZW9mIGl0ZW0uZGVmYXVsdCA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgdGhpcy5kZWZhdWx0VmFsdWVGbiA9IGl0ZW0uZGVmYXVsdCBhcyBJRmlsdGVyRGVmYXVsdEZuO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmRlZmF1bHRWYWx1ZSA9IGl0ZW0uZGVmYXVsdDtcbiAgICB9XG5cbiAgICB0aGlzLmluaXQgPSBpdGVtLmluaXQgfHwgKCgpID0+IHtcbiAgICAgIC8vXG4gICAgfSk7XG4gICAgdGhpcy5jaGFuZ2UgPSBpdGVtLmNoYW5nZTtcbiAgICB0aGlzLmhpZGUgPSBpdGVtLmhpZGU7XG4gICAgdGhpcy5zaG93Q2xlYXIgPSBpdGVtLmNsZWFyID8/IHRydWU7XG4gICAgdGhpcy5wZXJzaXN0YW5jZURpc2FibGVkID0gaXRlbS5kaXNhYmxlUGVyc2lzdCA/PyBmYWxzZTtcbiAgICB0aGlzLnF1ZXJ5UGFyYW1zRGlzYWJsZWQgPSBpdGVtLmRpc2FibGVRdWVyeVBhcmFtcyA/PyBmYWxzZTtcblxuICAgIGlmIChpc0Z1bmN0aW9uKGl0ZW0udmFsdWVzKSkge1xuICAgICAgdGhpcy5fdmFsdWVzRm4gPSBpdGVtLnZhbHVlcztcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy52YWx1ZXMgPSBpdGVtLnZhbHVlcztcbiAgICB9XG4gIH1cblxuICBcbiAgcHVibGljIGFic3RyYWN0IGdldCB2YWx1ZSgpO1xuICBwdWJsaWMgYWJzdHJhY3QgZ2V0Q2hpcHNDb250ZW50KHR5cGUpOiBhbnk7XG5cbiAgcHJvdGVjdGVkIGFic3RyYWN0IF9pbml0KCk7XG4gIHByb3RlY3RlZCBhYnN0cmFjdCBfdmFsaWRhdGVNb2RlbCgpO1xuICBcbn1cbiJdfQ==
|
|
194
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1pdGVtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9tb2RlbHMvaXRlbXMvYmFzZS1pdGVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxlQUFlLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRSxFQUFFLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzFFLE9BQU8sRUFDTCxHQUFHLEVBQ0gsU0FBUyxFQUNULEdBQUcsR0FDSixNQUFNLGdCQUFnQixDQUFDO0FBRXhCLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFHdkMsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBS3RELE1BQU0sT0FBZ0IsUUFBUTtJQXdCaEI7SUFDQTtJQXZCTCxJQUFJLENBQVM7SUFDYixLQUFLLENBQU07SUFDWCxTQUFTLENBQW9CO0lBQzdCLGNBQWMsQ0FBbUI7SUFDakMsWUFBWSxDQUFNO0lBQ2xCLFNBQVMsQ0FBVTtJQUNuQixtQkFBbUIsQ0FBVTtJQUM3QixtQkFBbUIsQ0FBVTtJQUM3QixjQUFjLENBQXVEO0lBQ3JFLFlBQVksQ0FBdUM7SUFFdkMsS0FBSyxDQUFZO0lBRTFCLFNBQVMsQ0FBMEU7SUFFckYsUUFBUSxHQUFHLElBQUksZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3RDLE9BQU8sR0FBRyxJQUFJLGVBQWUsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUN6QyxRQUFRLEdBQUcsSUFBSSxlQUFlLENBQVEsSUFBSSxDQUFDLENBQUM7SUFDNUMsU0FBUyxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7SUFFeEMsWUFDRSxVQUFhLEVBQ0gsaUJBQTBCLEVBQzFCLE9BQXdCO1FBRHhCLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBUztRQUMxQixZQUFPLEdBQVAsT0FBTyxDQUFpQjtRQUVsQyxJQUFJLENBQUMsS0FBSyxHQUFHLFVBQVUs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LENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxJQUFJLElBQUksQ0FBQyxHQUFHLEVBQUU7WUFDckMsRUFBRTtRQUNKLENBQUMsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsTUFBTSxJQUFJLENBQUMsR0FBRyxFQUFFO1lBQ3pDLEVBQUU7UUFDSixDQUFDLENBQUMsQ0FBQztRQUVILElBQUksVUFBVSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO1lBQzVCLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQztRQUMvQixDQUFDO2FBQU0sQ0FBQztZQUNOLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQztRQUM1QixDQUFDO0lBQ0gsQ0FBQztDQUlGIiwic291cmNlc0NvbnRlbnQiOlsiXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGZvcmtKb2luLCBPYnNlcnZhYmxlLCBvZiwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtcbiAgbWFwLFxuICBzd2l0Y2hNYXAsXG4gIHRhcCxcbn0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBpc0Z1bmN0aW9uIH0gZnJvbSAnbG9kYXNoLWVzJztcblxuaW1wb3J0IHR5cGUgeyBGaWx0ZXJDb21wb25lbnQgfSBmcm9tICcuLi8uLi9jb21wb25lbnRzL2ZpbHRlci9maWx0ZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEl0ZW1UeXBlIH0gZnJvbSAnLi4vLi4vZW51bXMvaXRlbS10eXBlLmVudW0nO1xuaW1wb3J0IHsgSUZpbHRlckNvbmZpZ0l0ZW0gfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL2NvbmZpZy5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgSUZpbHRlckRlZmF1bHRGbiB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvaXRlbXMvYmFzZS5pbnRlcmZhY2UnO1xuXG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBCYXNlSXRlbTxUIGV4dGVuZHMgSUZpbHRlckNvbmZpZ0l0ZW0+IHtcblxuICBwdWJsaWMgbmFtZTogc3RyaW5nO1xuICBwdWJsaWMgbGFiZWw6IGFueTtcbiAgcHVibGljIGNoaXBMYWJlbDogc3RyaW5nIHwgc3RyaW5nW107XG4gIHB1YmxpYyBkZWZhdWx0VmFsdWVGbjogSUZpbHRlckRlZmF1bHRGbjtcbiAgcHVibGljIGRlZmF1bHRWYWx1ZTogYW55O1xuICBwdWJsaWMgc2hvd0NsZWFyOiBib29sZWFuO1xuICBwdWJsaWMgcGVyc2lzdGFuY2VEaXNhYmxlZDogYm9vbGVhbjtcbiAgcHVibGljIHF1ZXJ5UGFyYW1zRGlzYWJsZWQ6IGJvb2xlYW47XG4gIHB1YmxpYyBjaGFuZ2VDYWxsYmFjazogKGl0ZW06IEJhc2VJdGVtPFQ+LCBmaWx0ZXI6IEZpbHRlckNvbXBvbmVudCkgPT4gdm9pZDtcbiAgcHVibGljIGluaXRDYWxsYmFjazogKGl0ZW06IEJhc2VJdGVtPFQ+LCBmaWx0ZXI/KSA9PiB2b2lkO1xuXG4gIHByb3RlY3RlZCByZWFkb25seSBfdHlwZTogVFsndHlwZSddO1xuXG4gIHByb3RlY3RlZCBfdmFsdWVzRm46IChrZXl3b3JkPzogc3RyaW5nLCBmaWx0ZXI/OiBGaWx0ZXJDb21wb25lbnQpID0+IE9ic2VydmFibGU8YW55PiB8IGFueVtdO1xuXG4gIHByaXZhdGUgX2hpZGRlbiQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0KGZhbHNlKTtcbiAgcHJpdmF0ZSBfdmFsdWUkID0gbmV3IEJlaGF2aW9yU3ViamVjdCh1bmRlZmluZWQpO1xuICBwcml2YXRlIF92YWx1ZXMkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxhbnlbXT4obnVsbCk7XG4gIHByaXZhdGUgX2Rlc3Ryb3kkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBpdGVtQ29uZmlnOiBULFxuICAgIHByb3RlY3RlZCBfYWRkaXRpb25hbENvbmZpZzogdW5rbm93bixcbiAgICBwcm90ZWN0ZWQgX2ZpbHRlcjogRmlsdGVyQ29tcG9uZW50LFxuICApIHtcbiAgICB0aGlzLl90eXBlID0gaXRlbUNvbmZpZy50eXBlO1xuICAgIHRoaXMuX2luaXRDb25maWcoaXRlbUNvbmZpZyk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGZpbHRlcigpOiBGaWx0ZXJDb21wb25lbnQge1xuICAgIHJldHVybiB0aGlzLl9maWx0ZXI7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGhpZGRlbiQoKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIHRoaXMuX2hpZGRlbiQuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHZpc2libGUkKCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIHJldHVybiB0aGlzLl9oaWRkZW4kXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKChoaWRkZW4pID0+ICFoaWRkZW4pLFxuICAgICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaGlkZGVuKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9oaWRkZW4kLmdldFZhbHVlKCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGlzVHlwZUF1dG9jb21wbGV0ZSgpIHtcbiAgICByZXR1cm4gdGhpcy50eXBlID09PSBJdGVtVHlwZS5BdXRvQ29tcGxldGU7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGlzVHlwZUF1dG9jb21wbGV0ZUNoaXBzKCkge1xuICAgIHJldHVybiB0aGlzLnR5cGUgPT09IEl0ZW1UeXBlLkF1dG9Db21wbGV0ZUNoaXBzO1xuICB9XG5cbiAgcHVibGljIGdldCBpc1R5cGVDaGlwcygpIHtcbiAgICByZXR1cm4gdGhpcy50eXBlID09PSBJdGVtVHlwZS5DaGlwcztcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaXNUeXBlQ2hlY2tib3goKSB7XG4gICAgcmV0dXJuIHRoaXMudHlwZSA9PT0gSXRlbVR5cGUuQ2hlY2tib3g7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGlzVHlwZVNlbGVjdCgpIHtcbiAgICByZXR1cm4gdGhpcy50eXBlID09PSBJdGVtVHlwZS5TZWxlY3Q7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGlzVHlwZURhdGUoKSB7XG4gICAgcmV0dXJuIHRoaXMudHlwZSA9PT0gSXRlbVR5cGUuRGF0ZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaXNUeXBlRGF0ZVJhbmdlKCkge1xuICAgIHJldHVybiB0aGlzLnR5cGUgPT09IEl0ZW1UeXBlLkRhdGVSYW5nZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaXNUeXBlUmFuZ2UoKSB7XG4gICAgcmV0dXJuIHRoaXMudHlwZSA9PT0gSXRlbVR5cGUuUmFuZ2U7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGlzVHlwZURhdGVUaW1lUmFuZ2UoKSB7XG4gICAgcmV0dXJuIHRoaXMudHlwZSA9PT0gSXRlbVR5cGUuRGF0ZVRpbWVSYW5nZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaXNUeXBlRGF0ZVRpbWUoKSB7XG4gICAgcmV0dXJuIHRoaXMudHlwZSA9PT0gSXRlbVR5cGUuRGF0ZVRpbWU7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGlzVHlwZUtleXdvcmQoKSB7XG4gICAgcmV0dXJuIHRoaXMudHlwZSA9PT0gSXRlbVR5cGUuS2V5d29yZDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaXNDaGlwVmlzaWJsZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5oYXNWYWx1ZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgZGVzdHJveSQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2Rlc3Ryb3kkLmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgcHVibGljIGdldCB0eXBlKCk6IFRbJ3R5cGUnXSB7XG4gICAgcmV0dXJuIHRoaXMuX3R5cGU7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGhhc1ZhbHVlKCkge1xuICAgIHJldHVybiB0aGlzLnZhbHVlICE9PSBudWxsICYmIHRoaXMudmFsdWUgIT09IHVuZGVmaW5lZDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaGFzVmFsdWUkKCkge1xuICAgIHJldHVybiB0aGlzLl92YWx1ZSQuYXNPYnNlcnZhYmxlKClcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoKCkgPT4gdGhpcy5oYXNWYWx1ZSksXG4gICAgICApO1xuICB9XG5cbiAgcHVibGljIGdldCBjaGlwcyQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3ZhbHVlJC5hc09ic2VydmFibGUoKVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCgoKSA9PiB0aGlzLmNoaXBzKSxcbiAgICAgICk7XG4gIH1cblxuICBwdWJsaWMgc2V0IHZhbHVlcyh2YWx1ZXMpIHtcbiAgICB0aGlzLl92YWx1ZXMkLm5leHQodmFsdWVzKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgdmFsdWVzKCkge1xuICAgIHJldHVybiB0aGlzLl92YWx1ZXMkLmdldFZhbHVlKCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHZhbHVlcyQoKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5fdmFsdWVzJC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgdmFsdWUkKCkge1xuICAgIHJldHVybiB0aGlzLl92YWx1ZSQuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHF1ZXJ5UGFyYW0oKTogUmVjb3JkPHN0cmluZywgdW5rbm93bj4ge1xuICAgIHJldHVybiB0aGlzLnF1ZXJ5O1xuICB9XG5cbiAgcHVibGljIGhpZGUoKSB7XG4gICAgdGhpcy5faGlkZGVuJC5uZXh0KHRydWUpO1xuICB9XG5cbiAgcHVibGljIHNob3coKSB7XG4gICAgdGhpcy5faGlkZGVuJC5uZXh0KGZhbHNlKTtcbiAgfVxuXG4gIFxuICBwdWJsaWMgZ2V0IHF1ZXJ5KCk6IFJlY29yZDxzdHJpbmcsIGFueT4ge1xuICAgIGlmKCF0aGlzLmhhc1ZhbHVlKSB7XG4gICAgICByZXR1cm4ge307XG4gICAgfVxuXG4gICAgcmV0dXJuIHtcbiAgICAgIFt0aGlzLm5hbWVdOiB0aGlzLnZhbHVlLFxuICAgIH07XG4gIH1cblxuICBwdWJsaWMgaW5pdCh2YWx1ZTogdW5rbm93bik6IE9ic2VydmFibGU8YW55PiB7XG4gICAgcmV0dXJuIGZvcmtKb2luKFtcbiAgICAgIHRoaXMubG9hZERlZmF1bHQoKSxcbiAgICAgIHRoaXMubG9hZFZhbHVlcygpLFxuICAgIF0pXG4gICAgICAucGlwZShcbiAgICAgICAgdGFwKCgpID0+IHtcbiAgICAgICAgICB0aGlzLmluaXRWYWx1ZSh2YWx1ZSk7XG4gICAgICAgIH0pLFxuICAgICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBsb2FkRGVmYXVsdCgpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIHJldHVybiB0aGlzLmRlZmF1bHRWYWx1ZUZuKClcbiAgICAgIC5waXBlKFxuICAgICAgICB0YXAoKHZhbHVlKSA9PiB7XG4gICAgICAgICAgdGhpcy5kZWZhdWx0VmFsdWUgPSB2YWx1ZTtcbiAgICAgICAgfSksXG4gICAgICApO1xuICB9XG5cbiAgcHVibGljIGxvYWRWYWx1ZXMoKSB7XG4gICAgcmV0dXJuIG9mKG51bGwpXG4gICAgICAucGlwZShcbiAgICAgICAgc3dpdGNoTWFwKCgpID0+IHtcbiAgICAgICAgICBpZigodGhpcy50eXBlID09PSBJdGVtVHlwZS5BdXRvQ29tcGxldGUgfHwgdGhpcy50eXBlID09PSBJdGVtVHlwZS5BdXRvQ29tcGxldGVDaGlwcykpIHtcbiAgICAgICAgICAgIHJldHVybiBvZihbXSk7XG4gICAgICAgICAgfSBcblxuICAgICAgICAgIGlmICh0eXBlb2YgdGhpcy5fdmFsdWVzRm4gPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICAgIGNvbnN0IHZhbHVlcyA9IHRoaXMuX3ZhbHVlc0ZuKCk7XG5cbiAgICAgICAgICAgIHJldHVybiB2YWx1ZXMgaW5zdGFuY2VvZiBPYnNlcnZhYmxlID8gdmFsdWVzIDogb2YodmFsdWVzKTtcbiAgICAgICAgICB9XG4gXG4gICAgICAgICAgcmV0dXJuIG9mKHRoaXMudmFsdWVzKTtcbiAgICAgICAgfSksXG4gICAgICAgIHRhcCgodmFsdWVzKSA9PiB0aGlzLnZhbHVlcyA9IHZhbHVlcyB8fCBbXSksXG4gICAgICApO1xuICB9XG5cbiAgcHVibGljIGluaXRWYWx1ZSh2YWx1ZTogdW5rbm93bikge1xuICAgIHRoaXMudmFsdWUgPSB2YWx1ZSA9PT0gdW5kZWZpbmVkID8gdGhpcy5kZWZhdWx0VmFsdWUgOiB2YWx1ZTtcbiAgfVxuXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnNcbiAgcHVibGljIGNsZWFyKG5hbWU6IHN0cmluZyA9IG51bGwpIHtcbiAgICB0aGlzLnZhbHVlID0gdGhpcy5kZWZhdWx0VmFsdWUgPz8gdW5kZWZpbmVkO1xuICB9XG5cbiAgcHVibGljIGRlc3Ryb3koKSB7XG4gICAgdGhpcy5fZGVzdHJveSQubmV4dChudWxsKTtcbiAgICB0aGlzLl9kZXN0cm95JC5jb21wbGV0ZSgpO1xuICB9XG5cbiAgcHVibGljIGdldCB2YWx1ZSgpIHtcbiAgICByZXR1cm4gdGhpcy5fdmFsdWUkLmdldFZhbHVlKCk7XG4gIH1cbiAgXG4gIHB1YmxpYyBzZXQgdmFsdWUodmFsdWUpIHtcbiAgICB0aGlzLl92YWx1ZSQubmV4dCh2YWx1ZSk7XG4gIH1cblxuICBwcml2YXRlIF9pbml0Q29uZmlnKGl0ZW06IFQpIHtcbiAgICB0aGlzLm5hbWUgPSBpdGVtLm5hbWU7XG4gICAgdGhpcy5sYWJlbCA9IGl0ZW0ubGFiZWw7XG4gICAgdGhpcy5jaGlwTGFiZWwgPSBpdGVtLmNoaXBMYWJlbDtcbiAgICB0aGlzLl9oaWRkZW4kLm5leHQoaXRlbS5oaWRlID8/IGZhbHNlKTtcbiAgICB0aGlzLnNob3dDbGVhciA9IGl0ZW0uY2xlYXIgPz8gdHJ1ZTtcbiAgICB0aGlzLnBlcnNpc3RhbmNlRGlzYWJsZWQgPSBpdGVtLmRpc2FibGVQZXJzaXN0ID8/IGZhbHNlO1xuICAgIHRoaXMucXVlcnlQYXJhbXNEaXNhYmxlZCA9IGl0ZW0uZGlzYWJsZVF1ZXJ5UGFyYW1zID8/IGZhbHNlO1xuXG4gICAgdGhpcy5kZWZhdWx0VmFsdWVGbiA9IHR5cGVvZiBpdGVtLmRlZmF1bHQgPT09ICdmdW5jdGlvbicgP1xuICAgICAgaXRlbS5kZWZhdWx0IGFzIElGaWx0ZXJEZWZhdWx0Rm4gOiAoKSA9PiBvZihpdGVtLmRlZmF1bHQpO1xuXG4gICAgdGhpcy5pbml0Q2FsbGJhY2sgPSBpdGVtLmluaXQgfHwgKCgpID0+IHtcbiAgICAgIC8vXG4gICAgfSk7XG5cbiAgICB0aGlzLmNoYW5nZUNhbGxiYWNrID0gaXRlbS5jaGFuZ2UgfHwgKCgpID0+IHtcbiAgICAgIC8vXG4gICAgfSk7XG5cbiAgICBpZiAoaXNGdW5jdGlvbihpdGVtLnZhbHVlcykpIHtcbiAgICAgIHRoaXMuX3ZhbHVlc0ZuID0gaXRlbS52YWx1ZXM7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMudmFsdWVzID0gaXRlbS52YWx1ZXM7XG4gICAgfVxuICB9XG4gIFxuICBwdWJsaWMgYWJzdHJhY3QgZ2V0IGNoaXBzKCk6IHsgbmFtZT86IHN0cmluZywgdmFsdWU6IHN0cmluZywgbGFiZWw6IHN0cmluZyB9W107XG5cbn1cbiJdfQ==
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { tap } from 'rxjs/operators';
|
|
1
2
|
import { toString } from 'lodash-es';
|
|
2
3
|
import { BaseItem } from './base-item';
|
|
3
4
|
export class CheckboxItem extends BaseItem {
|
|
@@ -11,14 +12,11 @@ export class CheckboxItem extends BaseItem {
|
|
|
11
12
|
this._unchecked = itemConfig.unchecked ? toString(itemConfig.unchecked) : undefined;
|
|
12
13
|
this.defaultValue = itemConfig.default;
|
|
13
14
|
}
|
|
14
|
-
|
|
15
|
-
return
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
}
|
|
20
|
-
get value() {
|
|
21
|
-
return this.model;
|
|
15
|
+
init(value) {
|
|
16
|
+
return super.init(value)
|
|
17
|
+
.pipe(tap(() => {
|
|
18
|
+
this.value = value === 'true' || value === true;
|
|
19
|
+
}));
|
|
22
20
|
}
|
|
23
21
|
get checked() {
|
|
24
22
|
return this._checked;
|
|
@@ -26,27 +24,38 @@ export class CheckboxItem extends BaseItem {
|
|
|
26
24
|
get unchecked() {
|
|
27
25
|
return this._unchecked;
|
|
28
26
|
}
|
|
29
|
-
get
|
|
30
|
-
|
|
31
|
-
params[this.name] = this.model ? this.checked : this.unchecked;
|
|
32
|
-
return params;
|
|
33
|
-
}
|
|
34
|
-
getChipsContent() {
|
|
35
|
-
return this.label;
|
|
27
|
+
get hasValue() {
|
|
28
|
+
return !!this.value;
|
|
36
29
|
}
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
return
|
|
30
|
+
get query() {
|
|
31
|
+
if (!this.hasValue && this._unchecked === undefined) {
|
|
32
|
+
return {};
|
|
33
|
+
}
|
|
34
|
+
return {
|
|
35
|
+
[this.name]: this.value ? this.checked : this.unchecked,
|
|
36
|
+
};
|
|
42
37
|
}
|
|
43
|
-
|
|
44
|
-
if (this.
|
|
45
|
-
|
|
38
|
+
get chips() {
|
|
39
|
+
if (!this.value) {
|
|
40
|
+
return [];
|
|
41
|
+
}
|
|
42
|
+
return [
|
|
43
|
+
{
|
|
44
|
+
value: '',
|
|
45
|
+
label: this.label,
|
|
46
|
+
},
|
|
47
|
+
];
|
|
48
|
+
}
|
|
49
|
+
get queryParam() {
|
|
50
|
+
if (!this.hasValue) {
|
|
51
|
+
return {};
|
|
46
52
|
}
|
|
53
|
+
return {
|
|
54
|
+
[this.name]: this.checked,
|
|
55
|
+
};
|
|
47
56
|
}
|
|
48
|
-
|
|
49
|
-
this.
|
|
57
|
+
clear() {
|
|
58
|
+
this.value = false;
|
|
50
59
|
}
|
|
51
60
|
}
|
|
52
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
61
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tib3gtaXRlbS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvbW9kZWxzL2l0ZW1zL2NoZWNrYm94LWl0ZW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXJDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFLckMsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUd2QyxNQUFNLE9BQU8sWUFBYSxTQUFRLFFBQW1DO0lBT3ZEO0lBQ0E7SUFIWixZQUNFLFVBQXFDLEVBQzNCLGlCQUEwQixFQUMxQixPQUF3QjtRQUVsQyxLQUFLLENBQUMsVUFBVSxFQUFFLGlCQUFpQixFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBSHBDLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBUztRQUMxQixZQUFPLEdBQVAsT0FBTyxDQUFpQjtRQUdsQyxJQUFJLENBQUMsUUFBUSxHQUFHLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQztRQUMzRSxJQUFJLENBQUMsVUFBVSxHQUFHLFVBQVUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztRQUNwRixJQUFJLENBQUMsWUFBWSxHQUFHLFVBQVUsQ0FBQyxPQUFPLENBQUM7SUFDekMsQ0FBQztJQUVNLElBQUksQ0FBQyxLQUFLO1FBQ2YsT0FBTyxLQUFLLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQzthQUNyQixJQUFJLENBQ0gsR0FBRyxDQUFDLEdBQUcsRUFBRTtZQUNQLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxLQUFLLE1BQU0sSUFBSSxLQUFLLEtBQUssSUFBSSxDQUFDO1FBQ2xELENBQUMsQ0FBQyxDQUNILENBQUM7SUFDTixDQUFDO0lBRUQsSUFBVyxPQUFPO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN2QixDQUFDO0lBRUQsSUFBVyxTQUFTO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQztJQUN6QixDQUFDO0lBRUQsSUFBVyxRQUFRO1FBQ2pCLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDdEIsQ0FBQztJQUVELElBQVcsS0FBSztRQUNkLElBQUcsQ0FBQyxJQUFJLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxVQUFVLEtBQUssU0FBUyxFQUFFLENBQUM7WUFDbkQsT0FBTyxFQUFFLENBQUM7UUFDWixDQUFDO1FBRUQsT0FBTztZQUNMLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTO1NBQ3hELENBQUM7SUFDSixDQUFDO0lBRUQsSUFBVyxLQUFLO1FBQ2QsSUFBRyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNmLE9BQU8sRUFBRSxDQUFDO1FBQ1osQ0FBQztRQUVELE9BQU87WUFDTDtnQkFDRSxLQUFLLEVBQUUsRUFBRTtnQkFDVCxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUs7YUFDbEI7U0FDRixDQUFDO0lBQ0osQ0FBQztJQUVELElBQVcsVUFBVTtRQUNuQixJQUFHLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ2xCLE9BQU8sRUFBRSxDQUFDO1FBQ1osQ0FBQztRQUVELE9BQU87WUFDTCxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLENBQUMsT0FBTztTQUMxQixDQUFDO0lBQ0osQ0FBQztJQUVNLEtBQUs7UUFDVixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztJQUNyQixDQUFDO0NBRUYiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IHRvU3RyaW5nIH0gZnJvbSAnbG9kYXNoLWVzJztcblxuaW1wb3J0IHR5cGUgeyBGaWx0ZXJDb21wb25lbnQgfSBmcm9tICcuLi8uLi9jb21wb25lbnRzL2ZpbHRlci9maWx0ZXIuY29tcG9uZW50JztcbmltcG9ydCB7IElGaWx0ZXJDb25maWdDaGVja2JveEl0ZW0gfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL2l0ZW1zL2NoZWNrYm94LmludGVyZmFjZSc7XG5cbmltcG9ydCB7IEJhc2VJdGVtIH0gZnJvbSAnLi9iYXNlLWl0ZW0nO1xuXG5cbmV4cG9ydCBjbGFzcyBDaGVja2JveEl0ZW0gZXh0ZW5kcyBCYXNlSXRlbTxJRmlsdGVyQ29uZmlnQ2hlY2tib3hJdGVtPiB7XG5cbiAgcHJpdmF0ZSBkZWNsYXJlIF9jaGVja2VkO1xuICBwcml2YXRlIGRlY2xhcmUgX3VuY2hlY2tlZDtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBpdGVtQ29uZmlnOiBJRmlsdGVyQ29uZmlnQ2hlY2tib3hJdGVtLFxuICAgIHByb3RlY3RlZCBfYWRkaXRpb25hbENvbmZpZzogdW5rbm93bixcbiAgICBwcm90ZWN0ZWQgX2ZpbHRlcjogRmlsdGVyQ29tcG9uZW50LFxuICApIHtcbiAgICBzdXBlcihpdGVtQ29uZmlnLCBfYWRkaXRpb25hbENvbmZpZywgX2ZpbHRlcik7XG4gICAgdGhpcy5fY2hlY2tlZCA9IGl0ZW1Db25maWcuY2hlY2tlZCA/IHRvU3RyaW5nKGl0ZW1Db25maWcuY2hlY2tlZCkgOiAndHJ1ZSc7XG4gICAgdGhpcy5fdW5jaGVja2VkID0gaXRlbUNvbmZpZy51bmNoZWNrZWQgPyB0b1N0cmluZyhpdGVtQ29uZmlnLnVuY2hlY2tlZCkgOiB1bmRlZmluZWQ7XG4gICAgdGhpcy5kZWZhdWx0VmFsdWUgPSBpdGVtQ29uZmlnLmRlZmF1bHQ7XG4gIH1cblxuICBwdWJsaWMgaW5pdCh2YWx1ZSkge1xuICAgIHJldHVybiBzdXBlci5pbml0KHZhbHVlKVxuICAgICAgLnBpcGUoXG4gICAgICAgIHRhcCgoKSA9PiB7XG4gICAgICAgICAgdGhpcy52YWx1ZSA9IHZhbHVlID09PSAndHJ1ZScgfHwgdmFsdWUgPT09IHRydWU7XG4gICAgICAgIH0pLFxuICAgICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgY2hlY2tlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fY2hlY2tlZDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgdW5jaGVja2VkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl91bmNoZWNrZWQ7XG4gIH1cbiAgXG4gIHB1YmxpYyBnZXQgaGFzVmFsdWUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhdGhpcy52YWx1ZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgcXVlcnkoKTogUmVjb3JkPHN0cmluZywgdW5rbm93bj4ge1xuICAgIGlmKCF0aGlzLmhhc1ZhbHVlICYmIHRoaXMuX3VuY2hlY2tlZCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICByZXR1cm4ge307XG4gICAgfVxuXG4gICAgcmV0dXJuIHtcbiAgICAgIFt0aGlzLm5hbWVdOiB0aGlzLnZhbHVlID8gdGhpcy5jaGVja2VkIDogdGhpcy51bmNoZWNrZWQsXG4gICAgfTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgY2hpcHMoKTogeyBuYW1lPzogc3RyaW5nLCB2YWx1ZTogc3RyaW5nLCBsYWJlbDogc3RyaW5nIH1bXSB7XG4gICAgaWYoIXRoaXMudmFsdWUpIHtcbiAgICAgIHJldHVybiBbXTtcbiAgICB9XG5cbiAgICByZXR1cm4gW1xuICAgICAge1xuICAgICAgICB2YWx1ZTogJycsXG4gICAgICAgIGxhYmVsOiB0aGlzLmxhYmVsLFxuICAgICAgfSxcbiAgICBdO1xuICB9XG5cbiAgcHVibGljIGdldCBxdWVyeVBhcmFtKCk6IFJlY29yZDxzdHJpbmcsIHVua25vd24+IHtcbiAgICBpZighdGhpcy5oYXNWYWx1ZSkge1xuICAgICAgcmV0dXJuIHt9O1xuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICBbdGhpcy5uYW1lXTogdGhpcy5jaGVja2VkLFxuICAgIH07XG4gIH1cblxuICBwdWJsaWMgY2xlYXIoKSB7XG4gICAgdGhpcy52YWx1ZSA9IGZhbHNlO1xuICB9XG5cbn1cbiJdfQ==
|