@elderbyte/ngx-starter 17.11.0-beta4 → 17.11.0-beta6
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/esm2022/lib/components/forms/search/domain/input/search-input-state.mjs +6 -6
- package/esm2022/lib/components/forms/search/domain/input/search-input.mjs +1 -1
- package/esm2022/lib/components/forms/search/elder-search-context.directive.mjs +10 -10
- package/esm2022/lib/components/forms/search/elder-search-input.directive.mjs +14 -29
- package/esm2022/lib/components/forms/search/search-box/elder-search-box.component.mjs +4 -4
- package/esm2022/lib/components/select/elder-select.module.mjs +15 -15
- package/esm2022/lib/components/select/filter/elder-chip-filter-style-resolver.mjs +19 -15
- package/esm2022/lib/components/select/filter/elder-chips-include-exclude.directive.mjs +144 -0
- package/esm2022/lib/components/select/filter/elder-filter-chip-template/elder-filter-chip-template.component.mjs +24 -31
- package/esm2022/lib/components/select/filter/include-exclude-model-filter-adapter.mjs +63 -0
- package/esm2022/lib/components/select/filter/include-exclude-selection-model.mjs +76 -20
- package/esm2022/lib/components/select/multi/elder-multi-select-chips/elder-multi-select-chips.component.mjs +7 -2
- package/esm2022/lib/components/select/multi/elder-search-include-exclude.directive.mjs +117 -43
- package/fesm2022/elderbyte-ngx-starter.mjs +741 -649
- package/fesm2022/elderbyte-ngx-starter.mjs.map +1 -1
- package/lib/components/forms/search/domain/input/search-input-state.d.ts +3 -3
- package/lib/components/forms/search/domain/input/search-input.d.ts +2 -6
- package/lib/components/forms/search/elder-search-context.directive.d.ts +3 -3
- package/lib/components/forms/search/elder-search-input.directive.d.ts +7 -11
- package/lib/components/forms/search/search-box/elder-search-box.component.d.ts +2 -1
- package/lib/components/select/elder-select.module.d.ts +4 -4
- package/lib/components/select/filter/elder-chip-filter-style-resolver.d.ts +1 -1
- package/lib/components/select/filter/{elder-chips-filter.directive.d.ts → elder-chips-include-exclude.directive.d.ts} +20 -9
- package/lib/components/select/filter/elder-filter-chip-template/elder-filter-chip-template.component.d.ts +9 -14
- package/lib/components/select/filter/include-exclude-model-filter-adapter.d.ts +29 -0
- package/lib/components/select/filter/include-exclude-selection-model.d.ts +25 -7
- package/lib/components/select/multi/elder-multi-select-chips/elder-multi-select-chips.component.d.ts +2 -0
- package/lib/components/select/multi/elder-search-include-exclude.directive.d.ts +57 -17
- package/package.json +1 -1
- package/esm2022/lib/components/forms/search/filter/include-exclude-input-converter.mjs +0 -137
- package/esm2022/lib/components/select/filter/elder-chips-filter.directive.mjs +0 -93
- package/lib/components/forms/search/filter/include-exclude-input-converter.d.ts +0 -62
|
@@ -1,137 +0,0 @@
|
|
|
1
|
-
import FilterCommons from '../../../../common/data/filters/filter-commons';
|
|
2
|
-
import { Filter } from '../../../../common/data/filters/filter';
|
|
3
|
-
import { IncludeExcludeState, IncludeExcludeMode } from '../../../select/filter/include-exclude-selection-model';
|
|
4
|
-
export default class IncludeExcludeInputConverter {
|
|
5
|
-
/***************************************************************************
|
|
6
|
-
* *
|
|
7
|
-
* Constructors *
|
|
8
|
-
* *
|
|
9
|
-
**************************************************************************/
|
|
10
|
-
constructor(selectionModel, queryKey, includeSuffix, excludeSuffix) {
|
|
11
|
-
this.selectionModel = selectionModel;
|
|
12
|
-
this.queryKey = queryKey;
|
|
13
|
-
this.includeSuffix = includeSuffix;
|
|
14
|
-
this.excludeSuffix = excludeSuffix;
|
|
15
|
-
}
|
|
16
|
-
/***************************************************************************
|
|
17
|
-
* *
|
|
18
|
-
* Public API *
|
|
19
|
-
* *
|
|
20
|
-
**************************************************************************/
|
|
21
|
-
convertToValue(filters) {
|
|
22
|
-
const values = this.convertFiltersToMap(filters);
|
|
23
|
-
const includes = this.buildMergeIncludeValues(values);
|
|
24
|
-
const excludes = this.buildMergeExcludeValues(values);
|
|
25
|
-
this.updateSelectionModel(includes, excludes);
|
|
26
|
-
return this.mergeValues(includes, excludes);
|
|
27
|
-
}
|
|
28
|
-
convertToFilters(inputValue) {
|
|
29
|
-
return this.buildFilters(this.buildSplitIncludeValues(inputValue), this.buildSplitExcludeValues(inputValue));
|
|
30
|
-
}
|
|
31
|
-
/***************************************************************************
|
|
32
|
-
* *
|
|
33
|
-
* Private Properties *
|
|
34
|
-
* *
|
|
35
|
-
**************************************************************************/
|
|
36
|
-
get includeQueryKey() {
|
|
37
|
-
return this.queryKey + this.includeSuffix;
|
|
38
|
-
}
|
|
39
|
-
get excludeQueryKey() {
|
|
40
|
-
return this.queryKey + this.excludeSuffix;
|
|
41
|
-
}
|
|
42
|
-
/***************************************************************************
|
|
43
|
-
* *
|
|
44
|
-
* Private Methods *
|
|
45
|
-
* *
|
|
46
|
-
**************************************************************************/
|
|
47
|
-
findValueOrDefault(values, key) {
|
|
48
|
-
const value = values.get(key);
|
|
49
|
-
return value ? value : null;
|
|
50
|
-
}
|
|
51
|
-
convertFiltersToMap(filters) {
|
|
52
|
-
const map = new Map();
|
|
53
|
-
filters.forEach(filter => map.set(filter.key, filter.value));
|
|
54
|
-
return map;
|
|
55
|
-
}
|
|
56
|
-
flattenFilterValues(values) {
|
|
57
|
-
const nonNullValues = values.filter(value => !!value);
|
|
58
|
-
if (nonNullValues.length > 0) {
|
|
59
|
-
return nonNullValues.flatMap(value => value);
|
|
60
|
-
}
|
|
61
|
-
return null;
|
|
62
|
-
}
|
|
63
|
-
replaceEmptyArrayWithNull(value) {
|
|
64
|
-
return FilterCommons.isArrayAndNotEmpty(value) ? value : null;
|
|
65
|
-
}
|
|
66
|
-
validateArrayAndReturn(value) {
|
|
67
|
-
if (FilterCommons.isArrayAndNotEmpty(value)) {
|
|
68
|
-
return value;
|
|
69
|
-
}
|
|
70
|
-
return null;
|
|
71
|
-
}
|
|
72
|
-
/***************************************************************************
|
|
73
|
-
* *
|
|
74
|
-
* Split *
|
|
75
|
-
* *
|
|
76
|
-
**************************************************************************/
|
|
77
|
-
/**
|
|
78
|
-
* If the filter before split is an empty array, include will be set to empty and exclude to null
|
|
79
|
-
* Else, an empty array will always be set to null
|
|
80
|
-
*/
|
|
81
|
-
buildFilters(includeValue, excludeValue) {
|
|
82
|
-
let newIncludeValue = includeValue;
|
|
83
|
-
const newExcludeValue = this.replaceEmptyArrayWithNull(excludeValue);
|
|
84
|
-
if (FilterCommons.isArrayAndNotEmpty(newExcludeValue)) {
|
|
85
|
-
newIncludeValue = this.replaceEmptyArrayWithNull(includeValue);
|
|
86
|
-
}
|
|
87
|
-
return [
|
|
88
|
-
new Filter(this.includeQueryKey, newIncludeValue),
|
|
89
|
-
new Filter(this.excludeQueryKey, newExcludeValue),
|
|
90
|
-
];
|
|
91
|
-
}
|
|
92
|
-
buildSplitIncludeValues(value) {
|
|
93
|
-
let splitValues = null;
|
|
94
|
-
if (FilterCommons.isArrayAndNotEmpty(value)) {
|
|
95
|
-
const values = FilterCommons.getValuesIfArrayElseEmpty(value);
|
|
96
|
-
splitValues = values.filter(value => this.selectionModel.isInMode(value, IncludeExcludeMode.INCLUDE));
|
|
97
|
-
}
|
|
98
|
-
return this.validateArrayAndReturn(splitValues);
|
|
99
|
-
}
|
|
100
|
-
buildSplitExcludeValues(value) {
|
|
101
|
-
let splitValues = null;
|
|
102
|
-
if (FilterCommons.isArrayAndNotEmpty(value)) {
|
|
103
|
-
const values = FilterCommons.getValuesIfArrayElseEmpty(value);
|
|
104
|
-
splitValues = values
|
|
105
|
-
.filter(value => this.selectionModel.isInMode(value, IncludeExcludeMode.EXCLUDE));
|
|
106
|
-
}
|
|
107
|
-
return this.validateArrayAndReturn(splitValues);
|
|
108
|
-
}
|
|
109
|
-
/***************************************************************************
|
|
110
|
-
* *
|
|
111
|
-
* Merge *
|
|
112
|
-
* *
|
|
113
|
-
**************************************************************************/
|
|
114
|
-
mergeValues(includeValue, excludeValue) {
|
|
115
|
-
return this.flattenFilterValues([includeValue, excludeValue]);
|
|
116
|
-
}
|
|
117
|
-
updateSelectionModel(includeValue, excludeValue) {
|
|
118
|
-
const updates = [
|
|
119
|
-
...this.buildNewSelectionStates(includeValue, IncludeExcludeMode.INCLUDE),
|
|
120
|
-
...this.buildNewSelectionStates(excludeValue, IncludeExcludeMode.EXCLUDE),
|
|
121
|
-
];
|
|
122
|
-
this.selectionModel.updateStates(updates);
|
|
123
|
-
}
|
|
124
|
-
buildNewSelectionStates(values, selection) {
|
|
125
|
-
if (FilterCommons.isArray(values)) {
|
|
126
|
-
return values.map(value => new IncludeExcludeState(value, selection));
|
|
127
|
-
}
|
|
128
|
-
return [];
|
|
129
|
-
}
|
|
130
|
-
buildMergeIncludeValues(values) {
|
|
131
|
-
return this.validateArrayAndReturn(this.findValueOrDefault(values, this.includeQueryKey));
|
|
132
|
-
}
|
|
133
|
-
buildMergeExcludeValues(values) {
|
|
134
|
-
return this.validateArrayAndReturn(this.findValueOrDefault(values, this.excludeQueryKey));
|
|
135
|
-
}
|
|
136
|
-
}
|
|
137
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5jbHVkZS1leGNsdWRlLWlucHV0LWNvbnZlcnRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvZm9ybXMvc2VhcmNoL2ZpbHRlci9pbmNsdWRlLWV4Y2x1ZGUtaW5wdXQtY29udmVydGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sYUFBYSxNQUFNLGdEQUFnRCxDQUFDO0FBQzNFLE9BQU8sRUFBQyxNQUFNLEVBQUMsTUFBTSx3Q0FBd0MsQ0FBQztBQUc5RCxPQUFPLEVBQ0wsbUJBQW1CLEVBQ25CLGtCQUFrQixFQUVuQixNQUFNLHdEQUF3RCxDQUFDO0FBR2hFLE1BQU0sQ0FBQyxPQUFPLE9BQU8sNEJBQTRCO0lBRS9DOzs7O2dGQUk0RTtJQUU1RSxZQUNtQixjQUE0QyxFQUM1QyxRQUFnQixFQUNoQixhQUFxQixFQUNyQixhQUFxQjtRQUhyQixtQkFBYyxHQUFkLGNBQWMsQ0FBOEI7UUFDNUMsYUFBUSxHQUFSLFFBQVEsQ0FBUTtRQUNoQixrQkFBYSxHQUFiLGFBQWEsQ0FBUTtRQUNyQixrQkFBYSxHQUFiLGFBQWEsQ0FBUTtJQUV4QyxDQUFDO0lBRUQ7Ozs7Z0ZBSTRFO0lBRXJFLGNBQWMsQ0FBQyxPQUFpQjtRQUNyQyxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsbUJBQW1CLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDakQsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLHVCQUF1QixDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3RELE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUV0RCxJQUFJLENBQUMsb0JBQW9CLENBQUMsUUFBUSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBRTlDLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLEVB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QUFDLENBQUM7SUFDNUMsQ0FBQztJQUVPLHVCQUF1QixDQUM3QixNQUFrQixFQUNsQixTQUE2QjtRQUU3QixJQUFHLGFBQWEsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDaEMsT0FBa0IsTUFBTyxDQUFDLEdBQUcsQ0FDM0IsS0FBSyxDQUFDLEVBQUUsQ0FBQyxJQUFJLG1CQUFtQixDQUFDLEtBQUssRUFBRSxTQUFTLENBQUMsQ0FDbkQsQ0FBQTtTQUNGO1FBQ0QsT0FBTyxFQUFFLENBQUM7SUFDWixDQUFDO0lBRU8sdUJBQXVCLENBQUMsTUFBZ0M7UUFDOUQsT0FBTyxJQUFJLENBQUMsc0JBQXNCLENBQ2hDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUN0RCxDQUFDO0lBQ0osQ0FBQztJQUVPLHVCQUF1QixDQUFDLE1BQWdDO1FBQzlELE9BQU8sSUFBSSxDQUFDLHNCQUFzQixDQUNoQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FDdEQsQ0FBQztJQUNKLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW5wdXRGaWx0ZXJDb252ZXJ0ZXJ9IGZyb20gJy4vaW5wdXQtZmlsdGVyLWNvbnZlcnRlcic7XG5pbXBvcnQge0ZpbHRlclZhbHVlfSBmcm9tICcuLi8uLi8uLi8uLi9jb21tb24vZGF0YS9maWx0ZXJzL2ZpbHRlci12YWx1ZSc7XG5pbXBvcnQgRmlsdGVyQ29tbW9ucyBmcm9tICcuLi8uLi8uLi8uLi9jb21tb24vZGF0YS9maWx0ZXJzL2ZpbHRlci1jb21tb25zJztcbmltcG9ydCB7RmlsdGVyfSBmcm9tICcuLi8uLi8uLi8uLi9jb21tb24vZGF0YS9maWx0ZXJzL2ZpbHRlcic7XG5pbXBvcnQge0lucHV0VmFsdWV9IGZyb20gJy4uL2RvbWFpbi9pbnB1dC9pbnB1dC12YWx1ZSc7XG5pbXBvcnQge09ic2VydmFibGUsIFN1YmplY3R9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtcbiAgSW5jbHVkZUV4Y2x1ZGVTdGF0ZSxcbiAgSW5jbHVkZUV4Y2x1ZGVNb2RlLFxuICBJbmNsdWRlRXhjbHVkZVNlbGVjdGlvbk1vZGVsXG59IGZyb20gJy4uLy4uLy4uL3NlbGVjdC9maWx0ZXIvaW5jbHVkZS1leGNsdWRlLXNlbGVjdGlvbi1tb2RlbCc7XG5cblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgSW5jbHVkZUV4Y2x1ZGVJbnB1dENvbnZlcnRlciBpbXBsZW1lbnRzIElucHV0RmlsdGVyQ29udmVydGVyIHtcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogQ29uc3RydWN0b3JzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSBzZWxlY3Rpb25Nb2RlbDogSW5jbHVkZUV4Y2x1ZGVTZWxlY3Rpb25Nb2RlbCxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHF1ZXJ5S2V5OiBzdHJpbmcsXG4gICAgcHJpdmF0ZSByZWFkb25seSBpbmNsdWRlU3VmZml4OiBzdHJpbmcsXG4gICAgcHJpdmF0ZSByZWFkb25seSBleGNsdWRlU3VmZml4OiBzdHJpbmdcbiAgKSB7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHVibGljIEFQSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgY29udmVydFRvVmFsdWUoZmlsdGVyczogRmlsdGVyW10pOiBJbnB1dFZhbHVlIHtcbiAgICBjb25zdCB2YWx1ZXMgPSB0aGlzLmNvbnZlcnRGaWx0ZXJzVG9NYXAoZmlsdGVycyk7XG4gICAgY29uc3QgaW5jbHVkZXMgPSB0aGlzLmJ1aWxkTWVyZ2VJbmNsdWRlVmFsdWVzKHZhbHVlcyk7XG4gICAgY29uc3QgZXhjbHVkZXMgPSB0aGlzLmJ1aWxkTWVyZ2VFeGNsdWRlVmFsdWVzKHZhbHVlcyk7XG5cbiAgICB0aGlzLnVwZGF0ZVNlbGVjdGlvbk1vZGVsKGluY2x1ZGVzLCBleGNsdWRlcyk7XG5cbiAgICByZXR1cm4gdGhpcy5tZXJnZVZhbHVlcyhpbmNsdWRlcywgZXhjbHVkZXMpO1xuICB9XG5cbiAgcHVibGljIGNvbnZlcnRUb0ZpbHRlcnMoaW5wdXRWYWx1ZTogSW5wdXRWYWx1ZSk6IEZpbHRlcltdIHtcbiAgICByZXR1cm4gdGhpcy5idWlsZEZpbHRlcnMoXG4gICAgICB0aGlzLmJ1aWxkU3BsaXRJbmNsdWRlVmFsdWVzKGlucHV0VmFsdWUpLFxuICAgICAgdGhpcy5idWlsZFNwbGl0RXhjbHVkZVZhbHVlcyhpbnB1dFZhbHVlKVxuICAgICk7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJpdmF0ZSBQcm9wZXJ0aWVzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcml2YXRlIGdldCBpbmNsdWRlUXVlcnlLZXkoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5xdWVyeUtleSArIHRoaXMuaW5jbHVkZVN1ZmZpeDtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0IGV4Y2x1ZGVRdWVyeUtleSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLnF1ZXJ5S2V5ICsgdGhpcy5leGNsdWRlU3VmZml4O1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByaXZhdGUgTWV0aG9kcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSBmaW5kVmFsdWVPckRlZmF1bHQodmFsdWVzOiBNYXA8c3RyaW5nLCBGaWx0ZXJWYWx1ZT4sIGtleTogc3RyaW5nKTogRmlsdGVyVmFsdWUge1xuICAgIGNvbnN0IHZhbHVlID0gdmFsdWVzLmdldChrZXkpO1xuICAgIHJldHVybiB2YWx1ZSA/IHZhbHVlIDogbnVsbDtcbiAgfVxuXG4gIHByaXZhdGUgY29udmVydEZpbHRlcnNUb01hcChmaWx0ZXJzOiBGaWx0ZXJbXSk6IE1hcDxzdHJpbmcsIEZpbHRlclZhbHVlPiB7XG4gICAgY29uc3QgbWFwID0gbmV3IE1hcDxzdHJpbmcsIEZpbHRlclZhbHVlPigpO1xuICAgIGZpbHRlcnMuZm9yRWFjaChmaWx0ZXIgPT4gbWFwLnNldChmaWx0ZXIua2V5LCBmaWx0ZXIudmFsdWUpKTtcbiAgICByZXR1cm4gbWFwO1xuICB9XG5cbiAgcHJpdmF0ZSBmbGF0dGVuRmlsdGVyVmFsdWVzKHZhbHVlczogRmlsdGVyVmFsdWVbXSk6IHN0cmluZ1tdIHwgbnVsbCB7XG4gICAgY29uc3Qgbm9uTnVsbFZhbHVlcyA9IHZhbHVlcy5maWx0ZXIodmFsdWUgPT4gISF2YWx1ZSk7XG4gICAgaWYgKG5vbk51bGxWYWx1ZXMubGVuZ3RoID4gMCkge1xuICAgICAgcmV0dXJuIG5vbk51bGxWYWx1ZXMuZmxhdE1hcCh2YWx1ZSA9PiB2YWx1ZSk7XG4gICAgfVxuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgcHJpdmF0ZSByZXBsYWNlRW1wdHlBcnJheVdpdGhOdWxsKHZhbHVlOiBGaWx0ZXJWYWx1ZSk6IHN0cmluZ1tdIHwgbnVsbCB7XG4gICAgcmV0dXJuIEZpbHRlckNvbW1vbnMuaXNBcnJheUFuZE5vdEVtcHR5KHZhbHVlKSA/IDxzdHJpbmdbXT52YWx1ZSA6IG51bGw7XG4gIH1cblxuICBwcml2YXRlIHZhbGlkYXRlQXJyYXlBbmRSZXR1cm4odmFsdWU6IEZpbHRlclZhbHVlKTogSW5wdXRWYWx1ZSB7XG4gICAgaWYgKEZpbHRlckNvbW1vbnMuaXNBcnJheUFuZE5vdEVtcHR5KHZhbHVlKSkge1xuICAgICAgcmV0dXJuIHZhbHVlO1xuICAgIH1cbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBTcGxpdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIC8qKlxuICAgKiBJZiB0aGUgZmlsdGVyIGJlZm9yZSBzcGxpdCBpcyBhbiBlbXB0eSBhcnJheSwgaW5jbHVkZSB3aWxsIGJlIHNldCB0byBlbXB0eSBhbmQgZXhjbHVkZSB0byBudWxsXG4gICAqIEVsc2UsIGFuIGVtcHR5IGFycmF5IHdpbGwgYWx3YXlzIGJlIHNldCB0byBudWxsXG4gICAqL1xuICBwcml2YXRlIGJ1aWxkRmlsdGVycyhcbiAgICBpbmNsdWRlVmFsdWU6IEZpbHRlclZhbHVlLFxuICAgIGV4Y2x1ZGVWYWx1ZTogRmlsdGVyVmFsdWVcbiAgKTogRmlsdGVyW10ge1xuICAgIGxldCBuZXdJbmNsdWRlVmFsdWUgPSBpbmNsdWRlVmFsdWU7XG4gICAgY29uc3QgbmV3RXhjbHVkZVZhbHVlID0gdGhpcy5yZXBsYWNlRW1wdHlBcnJheVdpdGhOdWxsKGV4Y2x1ZGVWYWx1ZSk7XG5cbiAgICBpZiAoRmlsdGVyQ29tbW9ucy5pc0FycmF5QW5kTm90RW1wdHkobmV3RXhjbHVkZVZhbHVlKSkge1xuICAgICAgbmV3SW5jbHVkZVZhbHVlID0gdGhpcy5yZXBsYWNlRW1wdHlBcnJheVdpdGhOdWxsKGluY2x1ZGVWYWx1ZSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIFtcbiAgICAgIG5ldyBGaWx0ZXIodGhpcy5pbmNsdWRlUXVlcnlLZXksIG5ld0luY2x1ZGVWYWx1ZSksXG4gICAgICBuZXcgRmlsdGVyKHRoaXMuZXhjbHVkZVF1ZXJ5S2V5LCBuZXdFeGNsdWRlVmFsdWUpLFxuICAgIF07XG4gIH1cblxuICBwcml2YXRlIGJ1aWxkU3BsaXRJbmNsdWRlVmFsdWVzKHZhbHVlOiBJbnB1dFZhbHVlKTogSW5wdXRWYWx1ZSB7XG4gICAgbGV0IHNwbGl0VmFsdWVzOiBGaWx0ZXJWYWx1ZSA9IG51bGw7XG4gICAgaWYgKEZpbHRlckNvbW1vbnMuaXNBcnJheUFuZE5vdEVtcHR5KHZhbHVlKSkge1xuICAgICAgY29uc3QgdmFsdWVzID0gRmlsdGVyQ29tbW9ucy5nZXRWYWx1ZXNJZkFycmF5RWxzZUVtcHR5KHZhbHVlKTtcbiAgICAgIHNwbGl0VmFsdWVzID0gdmFsdWVzLmZpbHRlcih2YWx1ZSA9PiB0aGlzLnNlbGVjdGlvbk1vZGVsLmlzSW5Nb2RlKHZhbHVlLCBJbmNsdWRlRXhjbHVkZU1vZGUuSU5DTFVERSkpO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy52YWxpZGF0ZUFycmF5QW5kUmV0dXJuKHNwbGl0VmFsdWVzKTtcbiAgfVxuXG4gIHByaXZhdGUgYnVpbGRTcGxpdEV4Y2x1ZGVWYWx1ZXModmFsdWU6IElucHV0VmFsdWUpOiBJbnB1dFZhbHVlIHtcbiAgICBsZXQgc3BsaXRWYWx1ZXM6IEZpbHRlclZhbHVlID0gbnVsbDtcbiAgICBpZiAoRmlsdGVyQ29tbW9ucy5pc0FycmF5QW5kTm90RW1wdHkodmFsdWUpKSB7XG4gICAgICBjb25zdCB2YWx1ZXMgPSBGaWx0ZXJDb21tb25zLmdldFZhbHVlc0lmQXJyYXlFbHNlRW1wdHkodmFsdWUpO1xuICAgICAgc3BsaXRWYWx1ZXMgPSB2YWx1ZXNcbiAgICAgICAgLmZpbHRlcih2YWx1ZSA9PiB0aGlzLnNlbGVjdGlvbk1vZGVsLmlzSW5Nb2RlKHZhbHVlLCBJbmNsdWRlRXhjbHVkZU1vZGUuRVhDTFVERSkpO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy52YWxpZGF0ZUFycmF5QW5kUmV0dXJuKHNwbGl0VmFsdWVzKTtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBNZXJnZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByaXZhdGUgbWVyZ2VWYWx1ZXMoXG4gICAgaW5jbHVkZVZhbHVlOiBJbnB1dFZhbHVlLFxuICAgIGV4Y2x1ZGVWYWx1ZTogSW5wdXRWYWx1ZVxuICApOiBJbnB1dFZhbHVlIHtcbiAgICByZXR1cm4gdGhpcy5mbGF0dGVuRmlsdGVyVmFsdWVzKFtpbmNsdWRlVmFsdWUsIGV4Y2x1ZGVWYWx1ZV0pXG4gIH1cblxuICBwcml2YXRlIHVwZGF0ZVNlbGVjdGlvbk1vZGVsKFxuICAgIGluY2x1ZGVWYWx1ZTogSW5wdXRWYWx1ZSxcbiAgICBleGNsdWRlVmFsdWU6IElucHV0VmFsdWVcbiAgKTogdm9pZCB7XG4gICAgY29uc3QgdXBkYXRlcyA9IFtcbiAgICAgICAgLi4uIHRoaXMuYnVpbGROZXdTZWxlY3Rpb25TdGF0ZXMoaW5jbHVkZVZhbHVlLCBJbmNsdWRlRXhjbHVkZU1vZGUuSU5DTFVERSksXG4gICAgICAgIC4uLiB0aGlzLmJ1aWxkTmV3U2VsZWN0aW9uU3RhdGVzKGV4Y2x1ZGVWYWx1ZSwgSW5jbHVkZUV4Y2x1ZGVNb2RlLkVYQ0xVREUpLFxuICAgIF07XG4gICAgdGhpcy5zZWxlY3Rpb25Nb2RlbC51cGRhdGVTdGF0ZXModXBkYXRlcyk7XG4gIH1cblxuICBwcml2YXRlIGJ1aWxkTmV3U2VsZWN0aW9uU3RhdGVzKFxuICAgIHZhbHVlczogSW5wdXRWYWx1ZSxcbiAgICBzZWxlY3Rpb246IEluY2x1ZGVFeGNsdWRlTW9kZVxuICApOiBJbmNsdWRlRXhjbHVkZVN0YXRlW10ge1xuICAgIGlmKEZpbHRlckNvbW1vbnMuaXNBcnJheSh2YWx1ZXMpKSB7XG4gICAgICByZXR1cm4gKDxzdHJpbmdbXT52YWx1ZXMpLm1hcChcbiAgICAgICAgdmFsdWUgPT4gbmV3IEluY2x1ZGVFeGNsdWRlU3RhdGUodmFsdWUsIHNlbGVjdGlvbilcbiAgICAgIClcbiAgICB9XG4gICAgcmV0dXJuIFtdO1xuICB9XG5cbiAgcHJpdmF0ZSBidWlsZE1lcmdlSW5jbHVkZVZhbHVlcyh2YWx1ZXM6IE1hcDxzdHJpbmcsIEZpbHRlclZhbHVlPik6IElucHV0VmFsdWUge1xuICAgIHJldHVybiB0aGlzLnZhbGlkYXRlQXJyYXlBbmRSZXR1cm4oXG4gICAgICB0aGlzLmZpbmRWYWx1ZU9yRGVmYXVsdCh2YWx1ZXMsIHRoaXMuaW5jbHVkZVF1ZXJ5S2V5KVxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIGJ1aWxkTWVyZ2VFeGNsdWRlVmFsdWVzKHZhbHVlczogTWFwPHN0cmluZywgRmlsdGVyVmFsdWU+KTogSW5wdXRWYWx1ZSB7XG4gICAgcmV0dXJuIHRoaXMudmFsaWRhdGVBcnJheUFuZFJldHVybihcbiAgICAgIHRoaXMuZmluZFZhbHVlT3JEZWZhdWx0KHZhbHVlcywgdGhpcy5leGNsdWRlUXVlcnlLZXkpXG4gICAgKTtcbiAgfVxufVxuIl19
|
|
@@ -1,93 +0,0 @@
|
|
|
1
|
-
import { Directive } from '@angular/core';
|
|
2
|
-
import { combineLatest, skipUntil } from 'rxjs';
|
|
3
|
-
import { ElderFilterChipTemplate } from './elder-filter-chip-template/elder-filter-chip-template.component';
|
|
4
|
-
import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
|
|
5
|
-
import { filter, startWith } from 'rxjs/operators';
|
|
6
|
-
import ElderChipFilterStyleResolver from './elder-chip-filter-style-resolver';
|
|
7
|
-
import { LoggerFactory } from '@elderbyte/ts-logger';
|
|
8
|
-
import { IncludeExcludeSelectionModel } from './include-exclude-selection-model';
|
|
9
|
-
import * as i0 from "@angular/core";
|
|
10
|
-
import * as i1 from "../multi/elder-multi-select-chips/elder-multi-select-chips.component";
|
|
11
|
-
import * as i2 from "../../forms/search/elder-search-input.directive";
|
|
12
|
-
export class ElderChipsFilterDirective {
|
|
13
|
-
/***************************************************************************
|
|
14
|
-
* *
|
|
15
|
-
* Constructor *
|
|
16
|
-
* *
|
|
17
|
-
**************************************************************************/
|
|
18
|
-
constructor(elderMultiSelectChips, elderSearchInput, vcr, destroyRef) {
|
|
19
|
-
this.elderMultiSelectChips = elderMultiSelectChips;
|
|
20
|
-
this.elderSearchInput = elderSearchInput;
|
|
21
|
-
this.vcr = vcr;
|
|
22
|
-
this.destroyRef = destroyRef;
|
|
23
|
-
/***************************************************************************
|
|
24
|
-
* *
|
|
25
|
-
* Fields *
|
|
26
|
-
* *
|
|
27
|
-
**************************************************************************/
|
|
28
|
-
this.log = LoggerFactory.getLogger(this.constructor.name);
|
|
29
|
-
this.selectionModel = new IncludeExcludeSelectionModel();
|
|
30
|
-
this.chipStyleResolver = new ElderChipFilterStyleResolver();
|
|
31
|
-
this.setupFilterChips();
|
|
32
|
-
this.setupElderMultiSelectChipsListeners();
|
|
33
|
-
}
|
|
34
|
-
/***************************************************************************
|
|
35
|
-
* *
|
|
36
|
-
* Private methods *
|
|
37
|
-
* *
|
|
38
|
-
**************************************************************************/
|
|
39
|
-
setupFilterChips() {
|
|
40
|
-
const ref = this.vcr.createComponent(ElderFilterChipTemplate);
|
|
41
|
-
ref.instance.resolveAvatar = (id) => this.resolveAvatar(id);
|
|
42
|
-
combineLatest([
|
|
43
|
-
ref.instance.resolveAvatar$,
|
|
44
|
-
ref.instance.avatarRef$
|
|
45
|
-
])
|
|
46
|
-
.pipe(takeUntilDestroyed(this.destroyRef), filter(([resolveAvatar, avatarRef]) => !!resolveAvatar && !!avatarRef))
|
|
47
|
-
.subscribe(([resolveAvatar, avatarRef]) => {
|
|
48
|
-
this.elderMultiSelectChips.chipAvatarTemplate = avatarRef;
|
|
49
|
-
this.elderMultiSelectChips.chipSpecFn = (entity) => this.resolveChipSpec(entity);
|
|
50
|
-
});
|
|
51
|
-
}
|
|
52
|
-
setupElderMultiSelectChipsListeners() {
|
|
53
|
-
this.elderMultiSelectChips.currentClicked
|
|
54
|
-
.pipe(takeUntilDestroyed(this.destroyRef))
|
|
55
|
-
.subscribe((entity) => this.handleChipClick(entity));
|
|
56
|
-
this.elderMultiSelectChips.entityIds$.pipe(takeUntilDestroyed(this.destroyRef), skipUntil(this.elderSearchInput.initialDone$), startWith(this.elderMultiSelectChips.entityIds), filter(entityIds => !!entityIds)).subscribe(entityIds => {
|
|
57
|
-
this.selectionModel.initTo(entityIds);
|
|
58
|
-
});
|
|
59
|
-
}
|
|
60
|
-
resolveChipSpec(entity) {
|
|
61
|
-
return this.chipStyleResolver.resolveChipSpec(this.findFilterEntityByEntity(entity));
|
|
62
|
-
}
|
|
63
|
-
resolveAvatar(id) {
|
|
64
|
-
return this.chipStyleResolver.resolveAvatar(this.findFilterEntityById(id));
|
|
65
|
-
}
|
|
66
|
-
handleChipClick(entity) {
|
|
67
|
-
const entityId = this.elderMultiSelectChips.getEntityId(entity);
|
|
68
|
-
const newState = this.selectionModel.cycleExisting(entityId);
|
|
69
|
-
if (newState) {
|
|
70
|
-
this.elderMultiSelectChips.appendEntities([]); // TODO Why??
|
|
71
|
-
}
|
|
72
|
-
else {
|
|
73
|
-
this.log.warn('The entity id "' + entityId + '" is not in the selection');
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
findFilterEntityByEntity(entity) {
|
|
77
|
-
const searchedId = this.elderMultiSelectChips.getEntityId(entity);
|
|
78
|
-
return this.findFilterEntityById(searchedId);
|
|
79
|
-
}
|
|
80
|
-
findFilterEntityById(id) {
|
|
81
|
-
return this.selectionModel.findStateById(id);
|
|
82
|
-
}
|
|
83
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: ElderChipsFilterDirective, deps: [{ token: i1.ElderMultiSelectChipsComponent }, { token: i2.ElderSearchInputDirective }, { token: i0.ViewContainerRef }, { token: i0.DestroyRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
84
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.11", type: ElderChipsFilterDirective, isStandalone: true, selector: "[elderChipsFilter]", ngImport: i0 }); }
|
|
85
|
-
}
|
|
86
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: ElderChipsFilterDirective, decorators: [{
|
|
87
|
-
type: Directive,
|
|
88
|
-
args: [{
|
|
89
|
-
selector: '[elderChipsFilter]',
|
|
90
|
-
standalone: true
|
|
91
|
-
}]
|
|
92
|
-
}], ctorParameters: () => [{ type: i1.ElderMultiSelectChipsComponent }, { type: i2.ElderSearchInputDirective }, { type: i0.ViewContainerRef }, { type: i0.DestroyRef }] });
|
|
93
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItY2hpcHMtZmlsdGVyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvc2VsZWN0L2ZpbHRlci9lbGRlci1jaGlwcy1maWx0ZXIuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBYSxTQUFTLEVBQW1CLE1BQU0sZUFBZSxDQUFDO0FBRXRFLE9BQU8sRUFBQyxhQUFhLEVBQUUsU0FBUyxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBRTlDLE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLG1FQUFtRSxDQUFDO0FBQzFHLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBQzlELE9BQU8sRUFBQyxNQUFNLEVBQUUsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFFakQsT0FBTyw0QkFBNEIsTUFBTSxvQ0FBb0MsQ0FBQztBQUM5RSxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDbkQsT0FBTyxFQUFzQiw0QkFBNEIsRUFBQyxNQUFNLG1DQUFtQyxDQUFDOzs7O0FBTXBHLE1BQU0sT0FBTyx5QkFBeUI7SUFjcEM7Ozs7Z0ZBSTRFO0lBRTVFLFlBQ2tCLHFCQUFxRCxFQUNyRCxnQkFBMkMsRUFDM0MsR0FBcUIsRUFDcEIsVUFBc0I7UUFIdkIsMEJBQXFCLEdBQXJCLHFCQUFxQixDQUFnQztRQUNyRCxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQTJCO1FBQzNDLFFBQUcsR0FBSCxHQUFHLENBQWtCO1FBQ3BCLGVBQVUsR0FBVixVQUFVLENBQVk7UUF0QnpDOzs7O29GQUk0RTtRQUUzRCxRQUFHLEdBQUcsYUFBYSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRXRELG1CQUFj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QUFDLENBQUMsYUFBYTtTQUM3RDthQUFNO1lBQ0wsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLEdBQUcsUUFBUSxHQUFHLDJCQUEyQixDQUFDLENBQUM7U0FDM0U7SUFDSCxDQUFDO0lBRU8sd0JBQXdCLENBQUMsTUFBUztRQUN4QyxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMscUJBQXFCLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ2xFLE9BQU8sSUFBSSxDQUFDLG9CQUFvQixDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFFTyxvQkFBb0IsQ0FBQyxFQUFVO1FBQ3JDLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxhQUFhLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDL0MsQ0FBQzsrR0FwR1UseUJBQXlCO21HQUF6Qix5QkFBeUI7OzRGQUF6Qix5QkFBeUI7a0JBSnJDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLG9CQUFvQjtvQkFDOUIsVUFBVSxFQUFFLElBQUk7aUJBQ2pCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtEZXN0cm95UmVmLCBEaXJlY3RpdmUsIFZpZXdDb250YWluZXJSZWZ9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtFbGRlck11bHRpU2VsZWN0Q2hpcHNDb21wb25lbnR9IGZyb20gJy4uL211bHRpL2VsZGVyLW11bHRpLXNlbGVjdC1jaGlwcy9lbGRlci1tdWx0aS1zZWxlY3QtY2hpcHMuY29tcG9uZW50JztcbmltcG9ydCB7Y29tYmluZUxhdGVzdCwgc2tpcFVudGlsfSBmcm9tICdyeGpzJztcbmltcG9ydCB7U2VsZWN0Q2hpcFNwZWN9IGZyb20gJy4uL211bHRpL2VsZGVyLW11bHRpLXNlbGVjdC1jaGlwcy9zZWxlY3QtY2hpcC1zcGVjJztcbmltcG9ydCB7RWxkZXJGaWx0ZXJDaGlwVGVtcGxhdGV9IGZyb20gJy4vZWxkZXItZmlsdGVyLWNoaXAtdGVtcGxhdGUvZWxkZXItZmlsdGVyLWNoaXAtdGVtcGxhdGUuY29tcG9uZW50JztcbmltcG9ydCB7dGFrZVVudGlsRGVzdHJveWVkfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQge2ZpbHRlciwgc3RhcnRXaXRofSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge0VsZGVyU2VhcmNoSW5wdXREaXJlY3RpdmV9IGZyb20gJy4uLy4uL2Zvcm1zL3NlYXJjaC9lbGRlci1zZWFyY2gtaW5wdXQuZGlyZWN0aXZlJztcbmltcG9ydCBFbGRlckNoaXBGaWx0ZXJTdHlsZVJlc29sdmVyIGZyb20gJy4vZWxkZXItY2hpcC1maWx0ZXItc3R5bGUtcmVzb2x2ZXInO1xuaW1wb3J0IHtMb2dnZXJGYWN0b3J5fSBmcm9tICdAZWxkZXJieXRlL3RzLWxvZ2dlcic7XG5pbXBvcnQge0luY2x1ZGVFeGNsdWRlU3RhdGUsIEluY2x1ZGVFeGNsdWRlU2VsZWN0aW9uTW9kZWx9IGZyb20gJy4vaW5jbHVkZS1leGNsdWRlLXNlbGVjdGlvbi1tb2RlbCc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tlbGRlckNoaXBzRmlsdGVyXScsXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgRWxkZXJDaGlwc0ZpbHRlckRpcmVjdGl2ZTxUID0gYW55PiB7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIEZpZWxkcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSByZWFkb25seSBsb2cgPSBMb2dnZXJGYWN0b3J5LmdldExvZ2dlcih0aGlzLmNvbnN0cnVjdG9yLm5hbWUpO1xuXG4gIHB1YmxpYyByZWFkb25seSBzZWxlY3Rpb25Nb2RlbCA9IG5ldyBJbmNsdWRlRXhjbHVkZVNlbGVjdGlvbk1vZGVsKCk7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBjaGlwU3R5bGVSZXNvbHZlciA9IG5ldyBFbGRlckNoaXBGaWx0ZXJTdHlsZVJlc29sdmVyKCk7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIENvbnN0cnVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIHJlYWRvbmx5IGVsZGVyTXVsdGlTZWxlY3RDaGlwczogRWxkZXJNdWx0aVNlbGVjdENoaXBzQ29tcG9uZW50LFxuICAgIHB1YmxpYyByZWFkb25seSBlbGRlclNlYXJjaElucHV0OiBFbGRlclNlYXJjaElucHV0RGlyZWN0aXZlLFxuICAgIHB1YmxpYyByZWFkb25seSB2Y3I6IFZpZXdDb250YWluZXJSZWYsXG4gICAgcHJpdmF0ZSByZWFkb25seSBkZXN0cm95UmVmOiBEZXN0cm95UmVmXG4gICkge1xuICAgIHRoaXMuc2V0dXBGaWx0ZXJDaGlwcygpO1xuICAgIHRoaXMuc2V0dXBFbGRlck11bHRpU2VsZWN0Q2hpcHNMaXN0ZW5lcnMoKTtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQcml2YXRlIG1ldGhvZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByaXZhdGUgc2V0dXBGaWx0ZXJDaGlwcygpIHtcbiAgICBjb25zdCByZWYgPSB0aGlzLnZjci5jcmVhdGVDb21wb25lbnQoRWxkZXJGaWx0ZXJDaGlwVGVtcGxhdGUpO1xuICAgIHJlZi5pbnN0YW5jZS5yZXNvbHZlQXZhdGFyID0gKGlkOiBzdHJpbmcpID0+IHRoaXMucmVzb2x2ZUF2YXRhcihpZCk7XG5cbiAgICBjb21iaW5lTGF0ZXN0KFtcbiAgICAgIHJlZi5pbnN0YW5jZS5yZXNvbHZlQXZhdGFyJCxcbiAgICAgIHJlZi5pbnN0YW5jZS5hdmF0YXJSZWYkXG4gICAgXSlcbiAgICAgIC5waXBlKFxuICAgICAgICB0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5kZXN0cm95UmVmKSxcbiAgICAgICAgZmlsdGVyKChbcmVzb2x2ZUF2YXRhciwgYXZhdGFyUmVmXSkgPT4gISFyZXNvbHZlQXZhdGFyICYmICEhYXZhdGFyUmVmKVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgoW3Jlc29sdmVBdmF0YXIsIGF2YXRhclJlZl0pID0+IHtcbiAgICAgICAgdGhpcy5lbGRlck11bHRpU2VsZWN0Q2hpcHMuY2hpcEF2YXRhclRlbXBsYXRlID0gYXZhdGFyUmVmO1xuICAgICAgICB0aGlzLmVsZGVyTXVsdGlTZWxlY3RDaGlwcy5jaGlwU3BlY0ZuID0gKGVudGl0eTogVCkgPT4gdGhpcy5yZXNvbHZlQ2hpcFNwZWMoZW50aXR5KTtcbiAgICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXR1cEVsZGVyTXVsdGlTZWxlY3RDaGlwc0xpc3RlbmVycygpIHtcbiAgICB0aGlzLmVsZGVyTXVsdGlTZWxlY3RDaGlwcy5jdXJyZW50Q2xpY2tlZFxuICAgICAgLnBpcGUoXG4gICAgICAgIHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLmRlc3Ryb3lSZWYpXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKChlbnRpdHkpID0+IHRoaXMuaGFuZGxlQ2hpcENsaWNrKGVudGl0eSkpO1xuXG4gICAgdGhpcy5lbGRlck11bHRpU2VsZWN0Q2hpcHMuZW50aXR5SWRzJC5waXBlKFxuICAgICAgdGFrZVVudGlsRGVzdHJveWVkKHRoaXMuZGVzdHJveVJlZiksXG4gICAgICBza2lwVW50aWwodGhpcy5lbGRlclNlYXJjaElucHV0LmluaXRpYWxEb25lJCksXG4gICAgICBzdGFydFdpdGgodGhpcy5lbGRlck11bHRpU2VsZWN0Q2hpcHMuZW50aXR5SWRzKSxcbiAgICAgIGZpbHRlcihlbnRpdHlJZHMgPT4gISFlbnRpdHlJZHMpXG4gICAgKS5zdWJzY3JpYmUoZW50aXR5SWRzID0+IHtcbiAgICAgIHRoaXMuc2VsZWN0aW9uTW9kZWwuaW5pdFRvKGVudGl0eUlkcyk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIHJlc29sdmVDaGlwU3BlYyhlbnRpdHk6IFQpOiBTZWxlY3RDaGlwU3BlYyB7XG4gICAgcmV0dXJuIHRoaXMuY2hpcFN0eWxlUmVzb2x2ZXIucmVzb2x2ZUNoaXBTcGVjKFxuICAgICAgdGhpcy5maW5kRmlsdGVyRW50aXR5QnlFbnRpdHkoZW50aXR5KVxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIHJlc29sdmVBdmF0YXIoaWQ6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuY2hpcFN0eWxlUmVzb2x2ZXIucmVzb2x2ZUF2YXRhcihcbiAgICAgIHRoaXMuZmluZEZpbHRlckVudGl0eUJ5SWQoaWQpXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgaGFuZGxlQ2hpcENsaWNrKGVudGl0eTogVCkge1xuICAgIGNvbnN0IGVudGl0eUlkID0gdGhpcy5lbGRlck11bHRpU2VsZWN0Q2hpcHMuZ2V0RW50aXR5SWQoZW50aXR5KTtcbiAgICBjb25zdCBuZXdTdGF0ZSA9IHRoaXMuc2VsZWN0aW9uTW9kZWwuY3ljbGVFeGlzdGluZyhlbnRpdHlJZCk7XG4gICAgaWYgKG5ld1N0YXRlKSB7XG4gICAgICB0aGlzLmVsZGVyTXVsdGlTZWxlY3RDaGlwcy5hcHBlbmRFbnRpdGllcyhbXSk7IC8vIFRPRE8gV2h5Pz9cbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5sb2cud2FybignVGhlIGVudGl0eSBpZCBcIicgKyBlbnRpdHlJZCArICdcIiBpcyBub3QgaW4gdGhlIHNlbGVjdGlvbicpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZmluZEZpbHRlckVudGl0eUJ5RW50aXR5KGVudGl0eTogVCk6IEluY2x1ZGVFeGNsdWRlU3RhdGUge1xuICAgIGNvbnN0IHNlYXJjaGVkSWQgPSB0aGlzLmVsZGVyTXVsdGlTZWxlY3RDaGlwcy5nZXRFbnRpdHlJZChlbnRpdHkpO1xuICAgIHJldHVybiB0aGlzLmZpbmRGaWx0ZXJFbnRpdHlCeUlkKHNlYXJjaGVkSWQpO1xuICB9XG5cbiAgcHJpdmF0ZSBmaW5kRmlsdGVyRW50aXR5QnlJZChpZDogc3RyaW5nKTogSW5jbHVkZUV4Y2x1ZGVTdGF0ZSB7XG4gICAgcmV0dXJuIHRoaXMuc2VsZWN0aW9uTW9kZWwuZmluZFN0YXRlQnlJZChpZCk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
import { InputFilterConverter } from './input-filter-converter';
|
|
2
|
-
import { Filter } from '../../../../common/data/filters/filter';
|
|
3
|
-
import { InputValue } from '../domain/input/input-value';
|
|
4
|
-
import { IncludeExcludeSelectionModel } from '../../../select/filter/include-exclude-selection-model';
|
|
5
|
-
export default class IncludeExcludeInputConverter implements InputFilterConverter {
|
|
6
|
-
private readonly selectionModel;
|
|
7
|
-
private readonly queryKey;
|
|
8
|
-
private readonly includeSuffix;
|
|
9
|
-
private readonly excludeSuffix;
|
|
10
|
-
/***************************************************************************
|
|
11
|
-
* *
|
|
12
|
-
* Constructors *
|
|
13
|
-
* *
|
|
14
|
-
**************************************************************************/
|
|
15
|
-
constructor(selectionModel: IncludeExcludeSelectionModel, queryKey: string, includeSuffix: string, excludeSuffix: string);
|
|
16
|
-
/***************************************************************************
|
|
17
|
-
* *
|
|
18
|
-
* Public API *
|
|
19
|
-
* *
|
|
20
|
-
**************************************************************************/
|
|
21
|
-
convertToValue(filters: Filter[]): InputValue;
|
|
22
|
-
convertToFilters(inputValue: InputValue): Filter[];
|
|
23
|
-
/***************************************************************************
|
|
24
|
-
* *
|
|
25
|
-
* Private Properties *
|
|
26
|
-
* *
|
|
27
|
-
**************************************************************************/
|
|
28
|
-
private get includeQueryKey();
|
|
29
|
-
private get excludeQueryKey();
|
|
30
|
-
/***************************************************************************
|
|
31
|
-
* *
|
|
32
|
-
* Private Methods *
|
|
33
|
-
* *
|
|
34
|
-
**************************************************************************/
|
|
35
|
-
private findValueOrDefault;
|
|
36
|
-
private convertFiltersToMap;
|
|
37
|
-
private flattenFilterValues;
|
|
38
|
-
private replaceEmptyArrayWithNull;
|
|
39
|
-
private validateArrayAndReturn;
|
|
40
|
-
/***************************************************************************
|
|
41
|
-
* *
|
|
42
|
-
* Split *
|
|
43
|
-
* *
|
|
44
|
-
**************************************************************************/
|
|
45
|
-
/**
|
|
46
|
-
* If the filter before split is an empty array, include will be set to empty and exclude to null
|
|
47
|
-
* Else, an empty array will always be set to null
|
|
48
|
-
*/
|
|
49
|
-
private buildFilters;
|
|
50
|
-
private buildSplitIncludeValues;
|
|
51
|
-
private buildSplitExcludeValues;
|
|
52
|
-
/***************************************************************************
|
|
53
|
-
* *
|
|
54
|
-
* Merge *
|
|
55
|
-
* *
|
|
56
|
-
**************************************************************************/
|
|
57
|
-
private mergeValues;
|
|
58
|
-
private updateSelectionModel;
|
|
59
|
-
private buildNewSelectionStates;
|
|
60
|
-
private buildMergeIncludeValues;
|
|
61
|
-
private buildMergeExcludeValues;
|
|
62
|
-
}
|