@recursyve/nice-data-filter-kit 14.1.6 → 14.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2020/lib/components/nice-filter-view/store/nice-filter-view.query.mjs +4 -1
- package/esm2020/lib/components/nice-filter-view/store/nice-filter-view.service.mjs +4 -18
- package/esm2020/lib/components/nice-filter-view/store/nice-filter-view.store.mjs +15 -1
- package/esm2020/lib/directive/public-api.mjs +2 -0
- package/esm2020/lib/directive/selectable-list/model/load-all-entities-options.model.mjs +2 -0
- package/esm2020/lib/directive/selectable-list/model/selectable-list-options.model.mjs +2 -0
- package/esm2020/lib/directive/selectable-list/providers/preload-selected-entities.provider.mjs +10 -0
- package/esm2020/lib/directive/selectable-list/public-api.mjs +10 -0
- package/esm2020/lib/directive/selectable-list/selectable-list-checkbox.directive.mjs +122 -0
- package/esm2020/lib/directive/selectable-list/selectable-list-select-all.directive.mjs +48 -0
- package/esm2020/lib/directive/selectable-list/selectable-list.constant.mjs +3 -0
- package/esm2020/lib/directive/selectable-list/selectable-list.directive.mjs +38 -0
- package/esm2020/lib/directive/selectable-list/selectable-list.module.mjs +32 -0
- package/esm2020/lib/directive/selectable-list/store/selectable-list-state.service.mjs +181 -0
- package/esm2020/lib/directive/selectable-list/store/selectable-list.service.mjs +49 -0
- package/esm2020/lib/directive/selectable-list/store/selectable-list.state.mjs +2 -0
- package/esm2020/public-api.mjs +2 -1
- package/fesm2015/recursyve-nice-data-filter-kit.mjs +492 -16
- package/fesm2015/recursyve-nice-data-filter-kit.mjs.map +1 -1
- package/fesm2020/recursyve-nice-data-filter-kit.mjs +467 -19
- package/fesm2020/recursyve-nice-data-filter-kit.mjs.map +1 -1
- package/lib/components/nice-filter-view/store/nice-filter-view.query.d.ts +1 -0
- package/lib/components/nice-filter-view/store/nice-filter-view.service.d.ts +0 -1
- package/lib/components/nice-filter-view/store/nice-filter-view.store.d.ts +1 -0
- package/lib/directive/public-api.d.ts +1 -0
- package/lib/directive/selectable-list/model/load-all-entities-options.model.d.ts +4 -0
- package/lib/directive/selectable-list/model/selectable-list-options.model.d.ts +4 -0
- package/lib/directive/selectable-list/providers/preload-selected-entities.provider.d.ts +12 -0
- package/lib/directive/selectable-list/public-api.d.ts +9 -0
- package/lib/directive/selectable-list/selectable-list-checkbox.directive.d.ts +24 -0
- package/lib/directive/selectable-list/selectable-list-select-all.directive.d.ts +18 -0
- package/lib/directive/selectable-list/selectable-list.constant.d.ts +2 -0
- package/lib/directive/selectable-list/selectable-list.directive.d.ts +14 -0
- package/lib/directive/selectable-list/selectable-list.module.d.ts +12 -0
- package/lib/directive/selectable-list/store/selectable-list-state.service.d.ts +32 -0
- package/lib/directive/selectable-list/store/selectable-list.service.d.ts +23 -0
- package/lib/directive/selectable-list/store/selectable-list.state.d.ts +8 -0
- package/package.json +1 -1
- package/public-api.d.ts +1 -0
|
@@ -0,0 +1,181 @@
|
|
|
1
|
+
import { arrayAdd, arrayRemove } from "@datorama/akita";
|
|
2
|
+
export class SelectableListStateService {
|
|
3
|
+
constructor(store, preloadService, options) {
|
|
4
|
+
this.store = store;
|
|
5
|
+
this.preloadService = preloadService;
|
|
6
|
+
this.options = options;
|
|
7
|
+
}
|
|
8
|
+
get idKey() {
|
|
9
|
+
return this.options?.idKey ?? "id";
|
|
10
|
+
}
|
|
11
|
+
get preloadedWindow() {
|
|
12
|
+
return this.options?.preloadWindow ?? 2;
|
|
13
|
+
}
|
|
14
|
+
setActive(entity) {
|
|
15
|
+
this.store.setActive(entity[this.idKey]);
|
|
16
|
+
}
|
|
17
|
+
getIndex(identifier) {
|
|
18
|
+
const { ids } = this.store.getValue();
|
|
19
|
+
const index = ids.indexOf(identifier);
|
|
20
|
+
return index + 1;
|
|
21
|
+
}
|
|
22
|
+
async selectAll(options) {
|
|
23
|
+
if (!this.preloadService) {
|
|
24
|
+
return this.store.update({
|
|
25
|
+
allSelected: true
|
|
26
|
+
});
|
|
27
|
+
}
|
|
28
|
+
const ids = await this.preloadService.loadAllEntities(options);
|
|
29
|
+
this.store.set(ids.map((id) => ({
|
|
30
|
+
[this.idKey]: id,
|
|
31
|
+
loaded: false
|
|
32
|
+
})));
|
|
33
|
+
return this.store.update({
|
|
34
|
+
allSelected: true
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
async select(id) {
|
|
38
|
+
this.store.update((state) => ({
|
|
39
|
+
unselectedEntity: arrayRemove(state.unselectedEntity, id)
|
|
40
|
+
}));
|
|
41
|
+
if (!this.preloadService) {
|
|
42
|
+
this.store.add({
|
|
43
|
+
[this.idKey]: id,
|
|
44
|
+
loaded: false
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
const entity = await this.preloadService.loadEntityById(id);
|
|
48
|
+
return this.store.add({
|
|
49
|
+
...entity,
|
|
50
|
+
loaded: true
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
async selectEntity(entity) {
|
|
54
|
+
this.store.update((state) => ({
|
|
55
|
+
unselectedEntity: arrayRemove(state.unselectedEntity, entity[this.idKey])
|
|
56
|
+
}));
|
|
57
|
+
if (!this.preloadService) {
|
|
58
|
+
return this.store.upsert(entity[this.idKey], { ...entity, loaded: true });
|
|
59
|
+
}
|
|
60
|
+
const preloadedEntity = await this.preloadService.reloadEntity(entity);
|
|
61
|
+
return this.store.upsert(preloadedEntity[this.idKey], { ...preloadedEntity, loaded: true });
|
|
62
|
+
}
|
|
63
|
+
async selectManyEntities(entities) {
|
|
64
|
+
if (!this.preloadService) {
|
|
65
|
+
return this.store.upsertMany(entities.map((entity) => ({ ...entity, loaded: true })));
|
|
66
|
+
}
|
|
67
|
+
const preloadedEntities = await this.preloadService.reloadEntities(entities);
|
|
68
|
+
return this.store.upsertMany(preloadedEntities.map((preloadedEntity) => ({ ...preloadedEntity, loaded: true })));
|
|
69
|
+
}
|
|
70
|
+
unselectAll() {
|
|
71
|
+
this.store.set([]);
|
|
72
|
+
return this.store.update({
|
|
73
|
+
allSelected: false,
|
|
74
|
+
unselectedEntity: []
|
|
75
|
+
});
|
|
76
|
+
}
|
|
77
|
+
unselect(id) {
|
|
78
|
+
this.store.update((state) => ({
|
|
79
|
+
unselectedEntity: arrayAdd(state.unselectedEntity, id)
|
|
80
|
+
}));
|
|
81
|
+
this.store.remove(id);
|
|
82
|
+
}
|
|
83
|
+
unselectEntity(entity) {
|
|
84
|
+
this.store.update((state) => ({
|
|
85
|
+
unselectedEntity: arrayAdd(state.unselectedEntity, entity[this.idKey])
|
|
86
|
+
}));
|
|
87
|
+
this.store.remove(entity[this.idKey]);
|
|
88
|
+
}
|
|
89
|
+
unselectManyEntities(entities) {
|
|
90
|
+
this.store.remove(entities.map((entity) => entity[this.idKey]));
|
|
91
|
+
}
|
|
92
|
+
async setEntities(ids, activeId) {
|
|
93
|
+
this.store.update({
|
|
94
|
+
unselectedEntity: [],
|
|
95
|
+
allSelected: false
|
|
96
|
+
});
|
|
97
|
+
this.store.set(ids.map((id) => ({
|
|
98
|
+
[this.idKey]: id,
|
|
99
|
+
loaded: false
|
|
100
|
+
})));
|
|
101
|
+
if (activeId) {
|
|
102
|
+
this.store.setActive(activeId);
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
async next() {
|
|
106
|
+
const { ids, active } = this.store.getValue();
|
|
107
|
+
const index = ids.indexOf(active);
|
|
108
|
+
await this.loadActiveEntity(ids[index + 1], 1);
|
|
109
|
+
}
|
|
110
|
+
async previous() {
|
|
111
|
+
const { ids, active } = this.store.getValue();
|
|
112
|
+
const index = ids.indexOf(active);
|
|
113
|
+
await this.loadActiveEntity(ids[index - 1], -1);
|
|
114
|
+
}
|
|
115
|
+
async first() {
|
|
116
|
+
const { ids } = this.store.getValue();
|
|
117
|
+
await this.loadActiveEntity(ids[0], 1);
|
|
118
|
+
}
|
|
119
|
+
async last() {
|
|
120
|
+
const { ids } = this.store.getValue();
|
|
121
|
+
await this.loadActiveEntity(ids[ids.length - 1], -1);
|
|
122
|
+
}
|
|
123
|
+
async removeActive() {
|
|
124
|
+
const { active, ids } = this.store.getValue();
|
|
125
|
+
const index = ids.indexOf(active);
|
|
126
|
+
this.store.remove(active);
|
|
127
|
+
if (index === (ids.length - 1)) {
|
|
128
|
+
await this.loadActiveEntity(ids[index - 1], -1);
|
|
129
|
+
}
|
|
130
|
+
else {
|
|
131
|
+
await this.loadActiveEntity(ids[index + 1], 1);
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
async loadActiveEntity(id, direction) {
|
|
135
|
+
try {
|
|
136
|
+
this.store.setActive(id);
|
|
137
|
+
const { entities } = this.store.getValue();
|
|
138
|
+
if (!entities[+id + direction * this.preloadedWindow]?.loaded) {
|
|
139
|
+
await this.loadEntities(false);
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
catch (e) {
|
|
143
|
+
this.store.setError(e);
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
async loadEntities(loadExtremity) {
|
|
147
|
+
if (!this.preloadService) {
|
|
148
|
+
return;
|
|
149
|
+
}
|
|
150
|
+
const toLoad = this.getListIdToLoad(loadExtremity);
|
|
151
|
+
if (!toLoad.length) {
|
|
152
|
+
return;
|
|
153
|
+
}
|
|
154
|
+
const entities = await this.preloadService.loadEntitiesById(toLoad);
|
|
155
|
+
this.store.upsertMany(entities.map((entity) => ({ ...entity, loaded: true })));
|
|
156
|
+
}
|
|
157
|
+
getListIdToLoad(loadExtremity) {
|
|
158
|
+
const { active, ids, entities } = this.store.getValue();
|
|
159
|
+
const from = ids.indexOf(active) - this.preloadedWindow > 0 ? ids.indexOf(active) - this.preloadedWindow : 0;
|
|
160
|
+
const to = ids.indexOf(active) + this.preloadedWindow < ids.length - 1
|
|
161
|
+
? ids.indexOf(active) + this.preloadedWindow
|
|
162
|
+
: ids.length - 1;
|
|
163
|
+
const toLoad = [];
|
|
164
|
+
if (loadExtremity) {
|
|
165
|
+
if (ids.length <= 2) {
|
|
166
|
+
return ids;
|
|
167
|
+
}
|
|
168
|
+
toLoad.push(ids[0], ids[ids.length - 1]);
|
|
169
|
+
}
|
|
170
|
+
for (let i = from; i <= to; i++) {
|
|
171
|
+
if (ids[i] === null || ids[0] === undefined) {
|
|
172
|
+
continue;
|
|
173
|
+
}
|
|
174
|
+
if (!toLoad.includes(ids[i]) && !entities[ids[i]]?.loaded) {
|
|
175
|
+
toLoad.push(ids[i]);
|
|
176
|
+
}
|
|
177
|
+
}
|
|
178
|
+
return toLoad;
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0YWJsZS1saXN0LXN0YXRlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uaWNlLWRhdGEtZmlsdGVyLWtpdC9zcmMvbGliL2RpcmVjdGl2ZS9zZWxlY3RhYmxlLWxpc3Qvc3RvcmUvc2VsZWN0YWJsZS1saXN0LXN0YXRlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxXQUFXLEVBQWUsTUFBTSxpQkFBaUIsQ0FBQztBQU1yRSxNQUFNLE9BQU8sMEJBQTBCO0lBU25DLFlBQ1ksS0FBNEMsRUFDNUMsY0FBdUQsRUFDdkQsT0FBbUM7UUFGbkMsVUFBSyxHQUFMLEtBQUssQ0FBdUM7UUFDNUMsbUJBQWMsR0FBZCxjQUFjLENBQXlDO1FBQ3ZELFlBQU8sR0FBUCxPQUFPLENBQTRCO0lBQzVDLENBQUM7SUFaSixJQUFXLEtBQUs7UUFDWixPQUFPLElBQUksQ0FBQyxPQUFPLEVBQUUsS0FBSyxJQUFJLElBQUksQ0FBQztJQUN2QyxDQUFDO0lBRUQsSUFBVyxlQUFlO1FBQ3RCLE9BQU8sSUFBSSxDQUFDLE9BQU8sRUFBRSxhQUFhLElBQUksQ0FBQyxDQUFDO0lBQzVDLENBQUM7SUFRTSxTQUFTLENBQUMsTUFBUztRQUN0QixJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVNLFFBQVEsQ0FBQyxVQUFrQjtRQUM5QixNQUFNLEVBQUUsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUN0QyxNQUFNLEtBQUssR0FBRyxHQUFHLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ3RDLE9BQU8sS0FBSyxHQUFHLENBQUMsQ0FBQztJQUNyQixDQUFDO0lBRU0sS0FBSyxDQUFD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LENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxNQUFNLEVBQUU7Z0JBQ3ZELE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDdkI7U0FDSjtRQUVELE9BQU8sTUFBTSxDQUFDO0lBQ2xCLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGFycmF5QWRkLCBhcnJheVJlbW92ZSwgRW50aXR5U3RvcmUgfSBmcm9tIFwiQGRhdG9yYW1hL2FraXRhXCI7XG5pbXBvcnQgeyBOaWNlU2VsZWN0YWJsZUxpc3RMb2FkQWxsRW50aXRpZXNPcHRpb25zIH0gZnJvbSBcIi4uL21vZGVsL2xvYWQtYWxsLWVudGl0aWVzLW9wdGlvbnMubW9kZWxcIjtcbmltcG9ydCB7IE5pY2VTZWxlY3RhYmxlTGlzdE9wdGlvbnMgfSBmcm9tIFwiLi4vbW9kZWwvc2VsZWN0YWJsZS1saXN0LW9wdGlvbnMubW9kZWxcIjtcbmltcG9ydCB7IE5pY2VQcmVsb2FkU2VsZWN0ZWRFbnRpdGllc1Byb3ZpZGVyIH0gZnJvbSBcIi4uL3Byb3ZpZGVycy9wcmVsb2FkLXNlbGVjdGVkLWVudGl0aWVzLnByb3ZpZGVyXCI7XG5pbXBvcnQgeyBTZWxlY3RhYmxlTGlzdFN0YXRlIH0gZnJvbSBcIi4vc2VsZWN0YWJsZS1saXN0LnN0YXRlXCI7XG5cbmV4cG9ydCBjbGFzcyBTZWxlY3RhYmxlTGlzdFN0YXRlU2VydmljZTxULCBJRCA9IGFueT4ge1xuICAgIHB1YmxpYyBnZXQgaWRLZXkoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMub3B0aW9ucz8uaWRLZXkgPz8gXCJpZFwiO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgcHJlbG9hZGVkV2luZG93KCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiB0aGlzLm9wdGlvbnM/LnByZWxvYWRXaW5kb3cgPz8gMjtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBzdG9yZTogRW50aXR5U3RvcmU8U2VsZWN0YWJsZUxpc3RTdGF0ZTxhbnk+PixcbiAgICAgICAgcHJpdmF0ZSBwcmVsb2FkU2VydmljZT86IE5pY2VQcmVsb2FkU2VsZWN0ZWRFbnRpdGllc1Byb3ZpZGVyPFQ+LFxuICAgICAgICBwcml2YXRlIG9wdGlvbnM/OiBOaWNlU2VsZWN0YWJsZUxpc3RPcHRpb25zXG4gICAgKSB7fVxuXG4gICAgcHVibGljIHNldEFjdGl2ZShlbnRpdHk6IFQpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zdG9yZS5zZXRBY3RpdmUoZW50aXR5W3RoaXMuaWRLZXldKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0SW5kZXgoaWRlbnRpZmllcjogbnVtYmVyKTogbnVtYmVyIHtcbiAgICAgICAgY29uc3QgeyBpZHMgfSA9IHRoaXMuc3RvcmUuZ2V0VmFsdWUoKTtcbiAgICAgICAgY29uc3QgaW5kZXggPSBpZHMuaW5kZXhPZihpZGVudGlmaWVyKTtcbiAgICAgICAgcmV0dXJuIGluZGV4ICsgMTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMgc2VsZWN0QWxsKG9wdGlvbnM/OiBOaWNlU2VsZWN0YWJsZUxpc3RMb2FkQWxsRW50aXRpZXNPcHRpb25zKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIGlmICghdGhpcy5wcmVsb2FkU2VydmljZSkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuc3RvcmUudXBkYXRlKHtcbiAgICAgICAgICAgICAgICBhbGxTZWxlY3RlZDogdHJ1ZVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBpZHMgPSBhd2FpdCB0aGlzLnByZWxvYWRTZXJ2aWNlLmxvYWRBbGxFbnRpdGllcyhvcHRpb25zKTtcbiAgICAgICAgdGhpcy5zdG9yZS5zZXQoaWRzLm1hcCgoaWQpID0+ICh7XG4gICAgICAgICAgICBbdGhpcy5pZEtleV06IGlkLFxuICAgICAgICAgICAgbG9hZGVkOiBmYWxzZVxuICAgICAgICB9KSkpO1xuXG4gICAgICAgIHJldHVybiB0aGlzLnN0b3JlLnVwZGF0ZSh7XG4gICAgICAgICAgICBhbGxTZWxlY3RlZDogdHJ1ZVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMgc2VsZWN0KGlkOiBJRCk6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICB0aGlzLnN0b3JlLnVwZGF0ZSgoc3RhdGUpID0+ICh7XG4gICAgICAgICAgICB1bnNlbGVjdGVkRW50aXR5OiBhcnJheVJlbW92ZShzdGF0ZS51bnNlbGVjdGVkRW50aXR5LCBpZCBhcyBhbnkpXG4gICAgICAgIH0pKTtcblxuICAgICAgICBpZiAoIXRoaXMucHJlbG9hZFNlcnZpY2UpIHtcbiAgICAgICAgICAgIHRoaXMuc3RvcmUuYWRkKHtcbiAgICAgICAgICAgICAgICBbdGhpcy5pZEtleV06IGlkLFxuICAgICAgICAgICAgICAgIGxvYWRlZDogZmFsc2VcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgZW50aXR5ID0gYXdhaXQgdGhpcy5wcmVsb2FkU2VydmljZS5sb2FkRW50aXR5QnlJZChpZCBhcyBhbnkpO1xuICAgICAgICByZXR1cm4gdGhpcy5zdG9yZS5hZGQoe1xuICAgICAgICAgICAgLi4uZW50aXR5LFxuICAgICAgICAgICAgbG9hZGVkOiB0cnVlXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBzZWxlY3RFbnRpdHkoZW50aXR5OiBUKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIHRoaXMuc3RvcmUudXBkYXRlKChzdGF0ZSkgPT4gKHtcbiAgICAgICAgICAgIHVuc2VsZWN0ZWRFbnRpdHk6IGFycmF5UmVtb3ZlKHN0YXRlLnVuc2VsZWN0ZWRFbnRpdHksIGVudGl0eVt0aGlzLmlkS2V5XSlcbiAgICAgICAgfSkpO1xuXG4gICAgICAgIGlmICghdGhpcy5wcmVsb2FkU2VydmljZSkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuc3RvcmUudXBzZXJ0KGVudGl0eVt0aGlzLmlkS2V5XSwgeyAuLi5lbnRpdHksIGxvYWRlZDogdHJ1ZSB9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHByZWxvYWRlZEVudGl0eSA9IGF3YWl0IHRoaXMucHJlbG9hZFNlcnZpY2UucmVsb2FkRW50aXR5KGVudGl0eSk7XG4gICAgICAgIHJldHVybiB0aGlzLnN0b3JlLnVwc2VydChwcmVsb2FkZWRFbnRpdHlbdGhpcy5pZEtleV0sIHsgLi4ucHJlbG9hZGVkRW50aXR5LCBsb2FkZWQ6IHRydWUgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIGFzeW5jIHNlbGVjdE1hbnlFbnRpdGllcyhlbnRpdGllczogVFtdKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIGlmICghdGhpcy5wcmVsb2FkU2VydmljZSkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuc3RvcmUudXBzZXJ0TWFueShlbnRpdGllcy5tYXAoKGVudGl0eSkgPT4gKHsgLi4uZW50aXR5LCBsb2FkZWQ6IHRydWUgfSkpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHByZWxvYWRlZEVudGl0aWVzID0gYXdhaXQgdGhpcy5wcmVsb2FkU2VydmljZS5yZWxvYWRFbnRpdGllcyhlbnRpdGllcyk7XG4gICAgICAgIHJldHVybiB0aGlzLnN0b3JlLnVwc2VydE1hbnkocHJlbG9hZGVkRW50aXRpZXMubWFwKChwcmVsb2FkZWRFbnRpdHkpID0+ICh7IC4uLnByZWxvYWRlZEVudGl0eSwgbG9hZGVkOiB0cnVlIH0pKSk7XG4gICAgfVxuXG4gICAgcHVibGljIHVuc2VsZWN0QWxsKCk6IHZvaWQge1xuICAgICAgICB0aGlzLnN0b3JlLnNldChbXSk7XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuc3RvcmUudXBkYXRlKHtcbiAgICAgICAgICAgIGFsbFNlbGVjdGVkOiBmYWxzZSxcbiAgICAgICAgICAgIHVuc2VsZWN0ZWRFbnRpdHk6IFtdXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyB1bnNlbGVjdChpZDogSUQpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zdG9yZS51cGRhdGUoKHN0YXRlKSA9PiAoe1xuICAgICAgICAgICAgdW5zZWxlY3RlZEVudGl0eTogYXJyYXlBZGQoc3RhdGUudW5zZWxlY3RlZEVudGl0eSwgaWQpXG4gICAgICAgIH0pKTtcblxuICAgICAgICB0aGlzLnN0b3JlLnJlbW92ZShpZCBhcyBhbnkpO1xuICAgIH1cblxuICAgIHB1YmxpYyB1bnNlbGVjdEVudGl0eShlbnRpdHk6IFQpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zdG9yZS51cGRhdGUoKHN0YXRlKSA9PiAoe1xuICAgICAgICAgICAgdW5zZWxlY3RlZEVudGl0eTogYXJyYXlBZGQoc3RhdGUudW5zZWxlY3RlZEVudGl0eSwgZW50aXR5W3RoaXMuaWRLZXldKVxuICAgICAgICB9KSk7XG5cbiAgICAgICAgdGhpcy5zdG9yZS5yZW1vdmUoZW50aXR5W3RoaXMuaWRLZXldKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgdW5zZWxlY3RNYW55RW50aXRpZXMoZW50aXRpZXM6IFRbXSk6IHZvaWQge1xuICAgICAgICB0aGlzLnN0b3JlLnJlbW92ZShlbnRpdGllcy5tYXAoKGVudGl0eSkgPT4gZW50aXR5W3RoaXMuaWRLZXldKSk7XG4gICAgfVxuXG4gICAgcHVibGljIGFzeW5jIHNldEVudGl0aWVzKGlkczogSURbXSwgYWN0aXZlSWQ6IElEKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIHRoaXMuc3RvcmUudXBkYXRlKHtcbiAgICAgICAgICAgIHVuc2VsZWN0ZWRFbnRpdHk6IFtdLFxuICAgICAgICAgICAgYWxsU2VsZWN0ZWQ6IGZhbHNlXG4gICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMuc3RvcmUuc2V0KGlkcy5tYXAoKGlkKSA9PiAoe1xuICAgICAgICAgICAgW3RoaXMuaWRLZXldOiBpZCxcbiAgICAgICAgICAgIGxvYWRlZDogZmFsc2VcbiAgICAgICAgfSkpKTtcblxuICAgICAgICBpZiAoYWN0aXZlSWQpIHtcbiAgICAgICAgICAgIHRoaXMuc3RvcmUuc2V0QWN0aXZlKGFjdGl2ZUlkKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBuZXh0KCk6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICBjb25zdCB7IGlkcywgYWN0aXZlIH0gPSB0aGlzLnN0b3JlLmdldFZhbHVlKCk7XG4gICAgICAgIGNvbnN0IGluZGV4ID0gaWRzLmluZGV4T2YoYWN0aXZlKTtcbiAgICAgICAgYXdhaXQgdGhpcy5sb2FkQWN0aXZlRW50aXR5KGlkc1tpbmRleCArIDFdLCAxKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMgcHJldmlvdXMoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIGNvbnN0IHsgaWRzLCBhY3RpdmUgfSA9IHRoaXMuc3RvcmUuZ2V0VmFsdWUoKTtcbiAgICAgICAgY29uc3QgaW5kZXggPSBpZHMuaW5kZXhPZihhY3RpdmUpO1xuICAgICAgICBhd2FpdCB0aGlzLmxvYWRBY3RpdmVFbnRpdHkoaWRzW2luZGV4IC0gMV0sIC0xKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMgZmlyc3QoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIGNvbnN0IHsgaWRzIH0gPSB0aGlzLnN0b3JlLmdldFZhbHVlKCk7XG4gICAgICAgIGF3YWl0IHRoaXMubG9hZEFjdGl2ZUVudGl0eShpZHNbMF0sIDEpO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBsYXN0KCk6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICBjb25zdCB7IGlkcyB9ID0gdGhpcy5zdG9yZS5nZXRWYWx1ZSgpO1xuICAgICAgICBhd2FpdCB0aGlzLmxvYWRBY3RpdmVFbnRpdHkoaWRzW2lkcy5sZW5ndGggLSAxXSwgLTEpO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyByZW1vdmVBY3RpdmUoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIGNvbnN0IHsgYWN0aXZlLCBpZHMgfSA9IHRoaXMuc3RvcmUuZ2V0VmFsdWUoKTtcbiAgICAgICAgY29uc3QgaW5kZXggPSBpZHMuaW5kZXhPZihhY3RpdmUpO1xuXG4gICAgICAgIHRoaXMuc3RvcmUucmVtb3ZlKGFjdGl2ZSk7XG5cbiAgICAgICAgaWYgKGluZGV4ID09PSAoaWRzLmxlbmd0aCAtIDEpKSB7XG4gICAgICAgICAgICBhd2FpdCB0aGlzLmxvYWRBY3RpdmVFbnRpdHkoaWRzW2luZGV4IC0gMV0sIC0xKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGF3YWl0IHRoaXMubG9hZEFjdGl2ZUVudGl0eShpZHNbaW5kZXggKyAxXSwgMSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMgbG9hZEFjdGl2ZUVudGl0eShpZDogbnVtYmVyLCBkaXJlY3Rpb246IG51bWJlcikge1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgdGhpcy5zdG9yZS5zZXRBY3RpdmUoaWQpO1xuXG4gICAgICAgICAgICBjb25zdCB7IGVudGl0aWVzIH0gPSB0aGlzLnN0b3JlLmdldFZhbHVlKCk7XG4gICAgICAgICAgICBpZiAoIWVudGl0aWVzWytpZCArIGRpcmVjdGlvbiAqIHRoaXMucHJlbG9hZGVkV2luZG93XT8ubG9hZGVkKSB7XG4gICAgICAgICAgICAgICAgYXdhaXQgdGhpcy5sb2FkRW50aXRpZXMoZmFsc2UpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICB0aGlzLnN0b3JlLnNldEVycm9yKGUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIGFzeW5jIGxvYWRFbnRpdGllcyhsb2FkRXh0cmVtaXR5KTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIGlmICghdGhpcy5wcmVsb2FkU2VydmljZSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgdG9Mb2FkID0gdGhpcy5nZXRMaXN0SWRUb0xvYWQobG9hZEV4dHJlbWl0eSk7XG4gICAgICAgIGlmICghdG9Mb2FkLmxlbmd0aCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgZW50aXRpZXMgPSBhd2FpdCB0aGlzLnByZWxvYWRTZXJ2aWNlLmxvYWRFbnRpdGllc0J5SWQodG9Mb2FkKTtcbiAgICAgICAgdGhpcy5zdG9yZS51cHNlcnRNYW55KGVudGl0aWVzLm1hcCgoZW50aXR5KSA9PiAoeyAuLi5lbnRpdHksIGxvYWRlZDogdHJ1ZSB9KSkpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRMaXN0SWRUb0xvYWQobG9hZEV4dHJlbWl0eTogYm9vbGVhbik6IG51bWJlcltdIHtcbiAgICAgICAgY29uc3QgeyBhY3RpdmUsIGlkcywgZW50aXRpZXMgfSA9IHRoaXMuc3RvcmUuZ2V0VmFsdWUoKTtcbiAgICAgICAgY29uc3QgZnJvbSA9IGlkcy5pbmRleE9mKGFjdGl2ZSkgLSB0aGlzLnByZWxvYWRlZFdpbmRvdyA+IDAgPyBpZHMuaW5kZXhPZihhY3RpdmUpIC0gdGhpcy5wcmVsb2FkZWRXaW5kb3cgOiAwO1xuICAgICAgICBjb25zdCB0byA9IGlkcy5pbmRleE9mKGFjdGl2ZSkgKyB0aGlzLnByZWxvYWRlZFdpbmRvdyA8IGlkcy5sZW5ndGggLSAxXG4gICAgICAgICAgICA/IGlkcy5pbmRleE9mKGFjdGl2ZSkgKyB0aGlzLnByZWxvYWRlZFdpbmRvd1xuICAgICAgICAgICAgOiBpZHMubGVuZ3RoIC0gMTtcblxuICAgICAgICBjb25zdCB0b0xvYWQgPSBbXTtcbiAgICAgICAgaWYgKGxvYWRFeHRyZW1pdHkpIHtcbiAgICAgICAgICAgIGlmIChpZHMubGVuZ3RoIDw9IDIpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gaWRzO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB0b0xvYWQucHVzaChpZHNbMF0sIGlkc1tpZHMubGVuZ3RoIC0gMV0pO1xuICAgICAgICB9XG5cbiAgICAgICAgZm9yIChsZXQgaSA9IGZyb207IGkgPD0gdG87IGkrKykge1xuICAgICAgICAgICAgaWYgKGlkc1tpXSA9PT0gbnVsbCB8fCBpZHNbMF0gPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAoIXRvTG9hZC5pbmNsdWRlcyhpZHNbaV0pICYmICFlbnRpdGllc1tpZHNbaV1dPy5sb2FkZWQpIHtcbiAgICAgICAgICAgICAgICB0b0xvYWQucHVzaChpZHNbaV0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRvTG9hZDtcbiAgICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { Inject, Injectable, Optional } from "@angular/core";
|
|
2
|
+
import { EntityStore, QueryEntity } from "@datorama/akita";
|
|
3
|
+
import { NICE_PRELOAD_SELECTED_ENTITIES_PROVIDER } from "../selectable-list.constant";
|
|
4
|
+
import { SelectableListStateService } from "./selectable-list-state.service";
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
export class SelectableListService {
|
|
7
|
+
constructor(providers) {
|
|
8
|
+
this.providers = providers;
|
|
9
|
+
this.stores = new Map();
|
|
10
|
+
}
|
|
11
|
+
createState(name, options) {
|
|
12
|
+
const store = new EntityStore({ allSelected: false, unselectedEntity: [] }, { name, idKey: options?.idKey });
|
|
13
|
+
const query = new QueryEntity(store);
|
|
14
|
+
const state = { store, query };
|
|
15
|
+
this.stores.set(name, state);
|
|
16
|
+
return state;
|
|
17
|
+
}
|
|
18
|
+
getState(name) {
|
|
19
|
+
return this.stores.get(name);
|
|
20
|
+
}
|
|
21
|
+
withState(stateName, options) {
|
|
22
|
+
const provider = this.providers?.find((p) => p.state === stateName);
|
|
23
|
+
const state = this.getState(stateName);
|
|
24
|
+
if (state) {
|
|
25
|
+
return new SelectableListStateService(state.store, provider, options);
|
|
26
|
+
}
|
|
27
|
+
const newState = this.createState(stateName, options);
|
|
28
|
+
return new SelectableListStateService(newState.store, provider, options);
|
|
29
|
+
}
|
|
30
|
+
query(stateName) {
|
|
31
|
+
const state = this.getState(stateName);
|
|
32
|
+
if (!state) {
|
|
33
|
+
throw new Error("No state found");
|
|
34
|
+
}
|
|
35
|
+
return state.query;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
SelectableListService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: SelectableListService, deps: [{ token: NICE_PRELOAD_SELECTED_ENTITIES_PROVIDER, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
39
|
+
SelectableListService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: SelectableListService, providedIn: "root" });
|
|
40
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: SelectableListService, decorators: [{
|
|
41
|
+
type: Injectable,
|
|
42
|
+
args: [{ providedIn: "root" }]
|
|
43
|
+
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
44
|
+
type: Optional
|
|
45
|
+
}, {
|
|
46
|
+
type: Inject,
|
|
47
|
+
args: [NICE_PRELOAD_SELECTED_ENTITIES_PROVIDER]
|
|
48
|
+
}] }]; } });
|
|
49
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0YWJsZS1saXN0LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uaWNlLWRhdGEtZmlsdGVyLWtpdC9zcmMvbGliL2RpcmVjdGl2ZS9zZWxlY3RhYmxlLWxpc3Qvc3RvcmUvc2VsZWN0YWJsZS1saXN0LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzdELE9BQU8sRUFBRSxXQUFXLEVBQUUsV0FBVyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFHM0QsT0FBTyxFQUFFLHVDQUF1QyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDdEYsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0saUNBQWlDLENBQUM7O0FBSTdFLE1BQU0sT0FBTyxxQkFBcUI7SUFHOUIsWUFFWSxTQUFxRDtRQUFyRCxjQUFTLEdBQVQsU0FBUyxDQUE0QztRQUp6RCxXQUFNLEdBQUcsSUFBSSxHQUFHLEVBQTBHLENBQUM7SUFLaEksQ0FBQztJQUVHLFdBQVcsQ0FBQyxJQUFZLEVBQUUsT0FBbUM7UUFDaEUsTUFBTSxLQUFLLEdBQUcsSUFBSSxXQUFXLENBQ3pCLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxnQkFBZ0IsRUFBRSxFQUFFLEVBQUUsRUFDNUMsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsQ0FDbEMsQ0FBQztRQUNGLE1BQU0sS0FBSyxHQUFHLElBQUksV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRXJDLE1BQU0sS0FBSyxHQUFHLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxDQUFDO1FBQy9CLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQztRQUU3QixPQUFPLEtBQUssQ0FBQztJQUNqQixDQUFDO0lBRU0sUUFBUSxDQUFDLElBQVk7UUFDeEIsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNqQyxDQUFDO0lBRU0sU0FBUyxDQUFjLFNBQWlCLEVBQUUsT0FBbUM7UUFDaEYsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLEtBQUssU0FBUyxDQUFDLENBQUM7UUFDcEUsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUN2QyxJQUFJLEtBQUssRUFBRTtZQUNQLE9BQU8sSUFBSSwwQkFBMEIsQ0FBSSxLQUFLLENBQUMsS0FBSyxFQUFFLFFBQVEsRUFBRSxPQUFPLENBQUMsQ0FBQztTQUM1RTtRQUVELE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQ3RELE9BQU8sSUFBSSwwQkFBMEIsQ0FBSSxRQUFRLENBQUMsS0FBSyxFQUFFLFFBQVEsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUNoRixDQUFDO0lBRU0sS0FBSyxDQUFJLFNBQWlCO1FBQzdCLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDdkMsSUFBSSxDQUFDLEtBQUssRUFBRTtZQUNSLE1BQU0sSUFBSSxLQUFLLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztTQUNyQztRQUVELE9BQU8sS0FBSyxDQUFDLEtBQTRDLENBQUM7SUFDOUQsQ0FBQzs7a0hBM0NRLHFCQUFxQixrQkFJTix1Q0FBdUM7c0hBSnRELHFCQUFxQixjQURSLE1BQU07MkZBQ25CLHFCQUFxQjtrQkFEakMsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUU7OzBCQUt6QixRQUFROzswQkFBSSxNQUFNOzJCQUFDLHVDQUF1QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSwgT3B0aW9uYWwgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgRW50aXR5U3RvcmUsIFF1ZXJ5RW50aXR5IH0gZnJvbSBcIkBkYXRvcmFtYS9ha2l0YVwiO1xuaW1wb3J0IHsgTmljZVNlbGVjdGFibGVMaXN0T3B0aW9ucyB9IGZyb20gXCIuLi9tb2RlbC9zZWxlY3RhYmxlLWxpc3Qtb3B0aW9ucy5tb2RlbFwiO1xuaW1wb3J0IHsgTmljZVByZWxvYWRTZWxlY3RlZEVudGl0aWVzUHJvdmlkZXIgfSBmcm9tIFwiLi4vcHJvdmlkZXJzL3ByZWxvYWQtc2VsZWN0ZWQtZW50aXRpZXMucHJvdmlkZXJcIjtcbmltcG9ydCB7IE5JQ0VfUFJFTE9BRF9TRUxFQ1RFRF9FTlRJVElFU19QUk9WSURFUiB9IGZyb20gXCIuLi9zZWxlY3RhYmxlLWxpc3QuY29uc3RhbnRcIjtcbmltcG9ydCB7IFNlbGVjdGFibGVMaXN0U3RhdGVTZXJ2aWNlIH0gZnJvbSBcIi4vc2VsZWN0YWJsZS1saXN0LXN0YXRlLnNlcnZpY2VcIjtcbmltcG9ydCB7IFNlbGVjdGFibGVMaXN0U3RhdGUgfSBmcm9tIFwiLi9zZWxlY3RhYmxlLWxpc3Quc3RhdGVcIjtcblxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiBcInJvb3RcIiB9KVxuZXhwb3J0IGNsYXNzIFNlbGVjdGFibGVMaXN0U2VydmljZSB7XG4gICAgcHJpdmF0ZSBzdG9yZXMgPSBuZXcgTWFwPHN0cmluZywgeyBzdG9yZTogRW50aXR5U3RvcmU8U2VsZWN0YWJsZUxpc3RTdGF0ZTxhbnk+PiwgcXVlcnk6IFF1ZXJ5RW50aXR5PFNlbGVjdGFibGVMaXN0U3RhdGU8YW55Pj4gfT4oKTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBAT3B0aW9uYWwoKSBASW5qZWN0KE5JQ0VfUFJFTE9BRF9TRUxFQ1RFRF9FTlRJVElFU19QUk9WSURFUilcbiAgICAgICAgcHJpdmF0ZSBwcm92aWRlcnM6IE5pY2VQcmVsb2FkU2VsZWN0ZWRFbnRpdGllc1Byb3ZpZGVyPGFueT5bXVxuICAgICkge31cblxuICAgIHB1YmxpYyBjcmVhdGVTdGF0ZShuYW1lOiBzdHJpbmcsIG9wdGlvbnM/OiBOaWNlU2VsZWN0YWJsZUxpc3RPcHRpb25zKSB7XG4gICAgICAgIGNvbnN0IHN0b3JlID0gbmV3IEVudGl0eVN0b3JlPFNlbGVjdGFibGVMaXN0U3RhdGU8YW55Pj4oXG4gICAgICAgICAgICB7IGFsbFNlbGVjdGVkOiBmYWxzZSwgdW5zZWxlY3RlZEVudGl0eTogW10gfSxcbiAgICAgICAgICAgIHsgbmFtZSwgaWRLZXk6IG9wdGlvbnM/LmlkS2V5IH1cbiAgICAgICAgKTtcbiAgICAgICAgY29uc3QgcXVlcnkgPSBuZXcgUXVlcnlFbnRpdHkoc3RvcmUpO1xuXG4gICAgICAgIGNvbnN0IHN0YXRlID0geyBzdG9yZSwgcXVlcnkgfTtcbiAgICAgICAgdGhpcy5zdG9yZXMuc2V0KG5hbWUsIHN0YXRlKTtcblxuICAgICAgICByZXR1cm4gc3RhdGU7XG4gICAgfVxuXG4gICAgcHVibGljIGdldFN0YXRlKG5hbWU6IHN0cmluZykge1xuICAgICAgICByZXR1cm4gdGhpcy5zdG9yZXMuZ2V0KG5hbWUpO1xuICAgIH1cblxuICAgIHB1YmxpYyB3aXRoU3RhdGU8VCwgSUQgPSBhbnk+KHN0YXRlTmFtZTogc3RyaW5nLCBvcHRpb25zPzogTmljZVNlbGVjdGFibGVMaXN0T3B0aW9ucyk6IFNlbGVjdGFibGVMaXN0U3RhdGVTZXJ2aWNlPFQsIElEPiB7XG4gICAgICAgIGNvbnN0IHByb3ZpZGVyID0gdGhpcy5wcm92aWRlcnM/LmZpbmQoKHApID0+IHAuc3RhdGUgPT09IHN0YXRlTmFtZSk7XG4gICAgICAgIGNvbnN0IHN0YXRlID0gdGhpcy5nZXRTdGF0ZShzdGF0ZU5hbWUpO1xuICAgICAgICBpZiAoc3RhdGUpIHtcbiAgICAgICAgICAgIHJldHVybiBuZXcgU2VsZWN0YWJsZUxpc3RTdGF0ZVNlcnZpY2U8VD4oc3RhdGUuc3RvcmUsIHByb3ZpZGVyLCBvcHRpb25zKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IG5ld1N0YXRlID0gdGhpcy5jcmVhdGVTdGF0ZShzdGF0ZU5hbWUsIG9wdGlvbnMpO1xuICAgICAgICByZXR1cm4gbmV3IFNlbGVjdGFibGVMaXN0U3RhdGVTZXJ2aWNlPFQ+KG5ld1N0YXRlLnN0b3JlLCBwcm92aWRlciwgb3B0aW9ucyk7XG4gICAgfVxuXG4gICAgcHVibGljIHF1ZXJ5PFQ+KHN0YXRlTmFtZTogc3RyaW5nKTogUXVlcnlFbnRpdHk8U2VsZWN0YWJsZUxpc3RTdGF0ZTxUPj4ge1xuICAgICAgICBjb25zdCBzdGF0ZSA9IHRoaXMuZ2V0U3RhdGUoc3RhdGVOYW1lKTtcbiAgICAgICAgaWYgKCFzdGF0ZSkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiTm8gc3RhdGUgZm91bmRcIik7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gc3RhdGUucXVlcnkgYXMgUXVlcnlFbnRpdHk8U2VsZWN0YWJsZUxpc3RTdGF0ZTxUPj47XG4gICAgfVxufVxuIl19
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0YWJsZS1saXN0LnN0YXRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmljZS1kYXRhLWZpbHRlci1raXQvc3JjL2xpYi9kaXJlY3RpdmUvc2VsZWN0YWJsZS1saXN0L3N0b3JlL3NlbGVjdGFibGUtbGlzdC5zdGF0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWN0aXZlU3RhdGUsIEVudGl0eVN0YXRlIH0gZnJvbSBcIkBkYXRvcmFtYS9ha2l0YVwiO1xuXG5leHBvcnQgdHlwZSBTZWxlY3RhYmxlTGlzdEVudGl0eTxUPiA9IFQgJiB7IGxvYWRlZD86IGJvb2xlYW4gfTtcblxuZXhwb3J0IGludGVyZmFjZSBTZWxlY3RhYmxlTGlzdFN0YXRlPFQ+IGV4dGVuZHMgRW50aXR5U3RhdGU8U2VsZWN0YWJsZUxpc3RFbnRpdHk8VD4sIG51bWJlcj4sIEFjdGl2ZVN0YXRlPGFueT4ge1xuICAgIGFsbFNlbGVjdGVkOiBib29sZWFuO1xuICAgIHVuc2VsZWN0ZWRFbnRpdHk6IGFueVtdO1xufVxuIl19
|
package/esm2020/public-api.mjs
CHANGED
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
*/
|
|
4
4
|
export * from "./lib/api/public-api";
|
|
5
5
|
export * from "./lib/components/public-api";
|
|
6
|
+
export * from "./lib/directive/public-api";
|
|
6
7
|
export * from "./lib/models/public-api";
|
|
7
8
|
export * from "./lib/utils/public-api";
|
|
8
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
9
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL25pY2UtZGF0YS1maWx0ZXIta2l0L3NyYy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxzQkFBc0IsQ0FBQztBQUNyQyxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLHdCQUF3QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBuaWNlLWRhdGEtZmlsdGVyLWtpdFxuICovXG5cbmV4cG9ydCAqIGZyb20gXCIuL2xpYi9hcGkvcHVibGljLWFwaVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vbGliL2NvbXBvbmVudHMvcHVibGljLWFwaVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vbGliL2RpcmVjdGl2ZS9wdWJsaWMtYXBpXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9saWIvbW9kZWxzL3B1YmxpYy1hcGlcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2xpYi91dGlscy9wdWJsaWMtYXBpXCI7XG4iXX0=
|