@ngutil/data 0.0.68 → 0.0.70
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/model/meta.mjs +2 -2
- package/esm2022/query/executor.mjs +2 -2
- package/esm2022/query/filter.mjs +2 -2
- package/esm2022/query/path.mjs +2 -2
- package/esm2022/query/query-property.mjs +2 -2
- package/esm2022/query/sorter.mjs +2 -2
- package/esm2022/source/source.mjs +16 -10
- package/fesm2022/ngutil-data.mjs +15 -9
- package/fesm2022/ngutil-data.mjs.map +1 -1
- package/package.json +3 -3
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { DataSource as CdkDataSource } from "@angular/cdk/collections";
|
|
2
|
-
import { BehaviorSubject, combineLatest, distinctUntilChanged, map, merge, Observable, of, ReplaySubject, shareReplay, Subject, switchMap, take, takeUntil, tap, timer } from "rxjs";
|
|
3
|
-
import { isEqual } from "lodash";
|
|
2
|
+
import { BehaviorSubject, catchError, combineLatest, distinctUntilChanged, filter, map, merge, Observable, of, ReplaySubject, shareReplay, Subject, switchMap, take, takeUntil, tap, timer } from "rxjs";
|
|
3
|
+
import { isEqual } from "lodash-es";
|
|
4
4
|
import { deepClone, deepFreeze, isFalsy } from "@ngutil/common";
|
|
5
5
|
import { querySubject } from "../query";
|
|
6
6
|
import { MemoryStore } from "../store";
|
|
@@ -22,26 +22,32 @@ export class DataSource extends CdkDataSource {
|
|
|
22
22
|
this.#query = combineLatest({
|
|
23
23
|
query: this.query$,
|
|
24
24
|
reload: merge(this.#reload, this.provider.changed$)
|
|
25
|
-
}).pipe(
|
|
25
|
+
}).pipe(
|
|
26
|
+
// tap(() => this.#setBusy(true)),
|
|
26
27
|
// TODO: maybe silent reset or prevent items$ chenges
|
|
27
28
|
// TODO: alternative solution use cacheId, and query item from store with this cacheId
|
|
28
|
-
switchMap(({ query }) => this.store.clear().pipe(map(() => query))), switchMap(query => this.slice$.pipe(
|
|
29
|
+
switchMap(({ query }) => this.store.clear().pipe(map(() => query))), switchMap(query => this.slice$.pipe(map(slice => {
|
|
30
|
+
// this.#setBusy(true)
|
|
29
31
|
return { ...query, slice };
|
|
30
32
|
}))), shareReplay({ bufferSize: 1, refCount: true }));
|
|
31
|
-
this.items$ = this.#query.pipe(
|
|
33
|
+
this.items$ = this.#query.pipe(switchMap(v => (this.provider.isAsync ? timer(DEBOUNCE_TIME).pipe(map(() => v)) : of(v))), switchMap(query => this.store.hasSlice(query.slice).pipe(take(1), switchMap(hasSlice => {
|
|
32
34
|
if (hasSlice) {
|
|
33
35
|
return this.store.getSlice(query.slice).pipe(take(1));
|
|
34
36
|
}
|
|
35
37
|
else {
|
|
36
|
-
|
|
38
|
+
this.#setBusy(true);
|
|
39
|
+
return this.provider.queryList(query).pipe(take(1), catchError(() => {
|
|
40
|
+
this.#setBusy(false);
|
|
41
|
+
return of({ items: [], total: undefined });
|
|
42
|
+
}), tap(() => this.#setBusy(false)), switchMap(result => {
|
|
37
43
|
if (result.total != null) {
|
|
38
44
|
this.total$.next(result.total);
|
|
39
45
|
}
|
|
40
46
|
return this.store.insertSlice(query.slice, result.items);
|
|
41
47
|
}), take(1));
|
|
42
48
|
}
|
|
43
|
-
}))),
|
|
44
|
-
this.isEmpty$ = combineLatest({ busy: this.isBusy$, items: this.items$ }).pipe(
|
|
49
|
+
}))), shareReplay({ bufferSize: 1, refCount: true }));
|
|
50
|
+
this.isEmpty$ = combineLatest({ busy: this.isBusy$, items: this.items$ }).pipe(filter(({ busy }) => !busy), map(({ items }) => items.every(isFalsy)), shareReplay({ bufferSize: 1, refCount: true }));
|
|
45
51
|
this.#cvSubs = new Map();
|
|
46
52
|
}
|
|
47
53
|
setSlice(slice) {
|
|
@@ -84,7 +90,7 @@ export class DataSource extends CdkDataSource {
|
|
|
84
90
|
#setBusy(busy) {
|
|
85
91
|
if (this.isBusy$.value !== busy) {
|
|
86
92
|
// dont set true when not async provider, but false is also set
|
|
87
|
-
if (busy && this.provider.isAsync) {
|
|
93
|
+
if (busy && !this.provider.isAsync) {
|
|
88
94
|
return;
|
|
89
95
|
}
|
|
90
96
|
this.isBusy$.next(busy);
|
|
@@ -112,4 +118,4 @@ export class DataSource extends CdkDataSource {
|
|
|
112
118
|
this.#cvSubs.delete(collectionViewer);
|
|
113
119
|
}
|
|
114
120
|
}
|
|
115
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic291cmNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGF0YS9zcmMvc291cmNlL3NvdXJjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxJQUFJLGFBQWEsRUFBb0IsTUFBTSwwQkFBMEIsQ0FBQTtBQUV4RixPQUFPLEVBQ0gsZUFBZSxFQUNmLGFBQWEsRUFDYixvQkFBb0IsRUFDcEIsR0FBRyxFQUNILEtBQUssRUFDTCxVQUFVLEVBQ1YsRUFBRSxFQUNGLGFBQWEsRUFDYixXQUFXLEVBQ1gsT0FBTyxFQUVQLFNBQVMsRUFDVCxJQUFJLEVBQ0osU0FBUyxFQUNULEdBQUcsRUFDSCxLQUFLLEVBQ1IsTUFBTSxNQUFNLENBQUE7QUFFYixPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sUUFBUSxDQUFBO0FBRWhDLE9BQU8sRUFBbUIsU0FBUyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUtoRixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sVUFBVSxDQUFBO0FBQ3ZDLE9BQU8sRUFBd0IsV0FBVyxFQUEwQixNQUFNLFVBQVUsQ0FBQTtBQUVwRixNQUFNLGFBQWEsR0FBRyxFQUFFLENBQUE7QUFFeEIsTUFBTSxPQUFPLFVBQTRCLFNBQVEsYUFBNEI7SUFJaEUsTUFBTSxDQUE4QjtJQVFwQyxPQUFPLENBQXVDO0lBRTlDLE1BQU0sQ0FpQmQ7SUFrQ0QsWUFDb0IsUUFBeUIsRUFDekIsUUFBNEIsSUFBSSxXQUFXLEVBQUUsRUFDN0MsU0FBUyxZQUFZLENBQUMsUUFBUSxFQUFFLFFBQVEsQ0FBQztRQUV6RCxLQUFLLEVBQUUsQ0FBQTtRQUpTLGFBQVEsR0FBUixRQUFRLENBQWlCO1FBQ3pCLFVBQUssR0FBTCxLQUFLLENBQXdDO1FBQzdDLFdBQU0sR0FBTixNQUFNLENBQW1DO1FBbkVwRCxZQUFPLEdBQUcsSUFBSSxlQUFlLENBQVUsS0FBSyxD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LE9BQU8sQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLEVBQUUsS0FBSyxDQUFDLENBQUE7UUFFekMsT0FBTyxJQUFJLFVBQVUsQ0FBQyxDQUFDLFVBQWtELEVBQUUsRUFBRTtZQUN6RSxNQUFNLElBQUksR0FBRyxnQkFBZ0IsQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQTtZQUMvRCxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsQ0FBQTtZQUU5QyxPQUFPLEdBQUcsRUFBRTtnQkFDUixJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLGdCQUFnQixDQUFDLEtBQUssS0FBSyxFQUFFLENBQUM7b0JBQy9DLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUE7Z0JBQ3pDLENBQUM7Z0JBQ0QsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFBO2dCQUNsQixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUE7WUFDdEIsQ0FBQyxDQUFBO1FBQ0wsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFBO0lBQzdCLENBQUM7SUFFUSxVQUFVLENBQUMsZ0JBQWtDO1FBQ2xELElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLGdCQUFnQixDQUFDLEVBQUUsSUFBSSxFQUFFLENBQUE7UUFDMUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQTtJQUN6QyxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEYXRhU291cmNlIGFzIENka0RhdGFTb3VyY2UsIENvbGxlY3Rpb25WaWV3ZXIgfSBmcm9tIFwiQGFuZ3VsYXIvY2RrL2NvbGxlY3Rpb25zXCJcblxuaW1wb3J0IHtcbiAgICBCZWhhdmlvclN1YmplY3QsXG4gICAgY29tYmluZUxhdGVzdCxcbiAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCxcbiAgICBtYXAsXG4gICAgbWVyZ2UsXG4gICAgT2JzZXJ2YWJsZSxcbiAgICBvZixcbiAgICBSZXBsYXlTdWJqZWN0LFxuICAgIHNoYXJlUmVwbGF5LFxuICAgIFN1YmplY3QsXG4gICAgU3Vic2NyaWJlcixcbiAgICBzd2l0Y2hNYXAsXG4gICAgdGFrZSxcbiAgICB0YWtlVW50aWwsXG4gICAgdGFwLFxuICAgIHRpbWVyXG59IGZyb20gXCJyeGpzXCJcblxuaW1wb3J0IHsgaXNFcXVhbCB9IGZyb20gXCJsb2Rhc2hcIlxuXG5pbXBvcnQgeyBDb25uZWN0UHJvdG9jb2wsIGRlZXBDbG9uZSwgZGVlcEZyZWV6ZSwgaXNGYWxzeSB9IGZyb20gXCJAbmd1dGlsL2NvbW1vblwiXG5cbmltcG9ydCB0eXBlIHsgTW9kZWwsIE1vZGVsUmVmIH0gZnJvbSBcIi4uL21vZGVsXCJcbmltcG9ydCB0eXBlIHsgRGF0YVByb3ZpZGVyIH0gZnJvbSBcIi4uL3Byb3ZpZGVyL3Byb3ZpZGVyXCJcbmltcG9ydCB0eXBlIHsgUXVlcnlXaXRoU2xpY2UsIFNsaWNlIH0gZnJvbSBcIi4uL3F1ZXJ5XCJcbmltcG9ydCB7IHF1ZXJ5U3ViamVjdCB9IGZyb20gXCIuLi9xdWVyeVwiXG5pbXBvcnQgeyB0eXBlIENvbGxlY3Rpb25TdG9yZSwgTWVtb3J5U3RvcmUsIHR5cGUgUGFydGlhbENvbGxlY3Rpb24gfSBmcm9tIFwiLi4vc3RvcmVcIlxuXG5jb25zdCBERUJPVU5DRV9USU1FID0gNTBcblxuZXhwb3J0IGNsYXNzIERhdGFTb3VyY2U8VCBleHRlbmRzIE1vZGVsPiBleHRlbmRzIENka0RhdGFTb3VyY2U8VCB8IHVuZGVmaW5lZD4gaW1wbGVtZW50cyBDb25uZWN0UHJvdG9jb2wge1xuICAgIHJlYWRvbmx5IGlzQnVzeSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKVxuICAgIHJlYWRvbmx5IHRvdGFsJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8bnVtYmVyIHwgdW5kZWZpbmVkPih1bmRlZmluZWQpXG5cbiAgICByZWFkb25seSAjc2xpY2UgPSBuZXcgUmVwbGF5U3ViamVjdDxTbGljZT4oMSlcbiAgICByZWFkb25seSBzbGljZSQ6IE9ic2VydmFibGU8U2xpY2U+ID0gdGhpcy4jc2xpY2UucGlwZShcbiAgICAgICAgc3dpdGNoTWFwKHNsaWNlID0+IHRoaXMucHJvdmlkZXIuY2xhbXBTbGljZShzbGljZSkpLFxuICAgICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZChpc0VxdWFsKSxcbiAgICAgICAgbWFwKHNsaWNlID0+IGRlZXBGcmVlemUoZGVlcENsb25lKHNsaWNlKSkpLFxuICAgICAgICBzaGFyZVJlcGxheSh7IGJ1ZmZlclNpemU6IDEsIHJlZkNvdW50OiB0cnVlIH0pXG4gICAgKVxuXG4gICAgcmVhZG9ubHkgI3JlbG9hZCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8dm9pZD4odW5kZWZpbmVkKVxuXG4gICAgcmVhZG9ubHkgI3F1ZXJ5OiBPYnNlcnZhYmxlPFF1ZXJ5V2l0aFNsaWNlPFQ+PiA9IGNvbWJpbmVMYXRlc3Qoe1xuICAgICAgICBxdWVyeTogdGhpcy5xdWVyeSQsXG4gICAgICAgIHJlbG9hZDogbWVyZ2UodGhpcy4jcmVsb2FkLCB0aGlzLnByb3ZpZGVyLmNoYW5nZWQkKVxuICAgIH0pLnBpcGUoXG4gICAgICAgIHRhcCgoKSA9PiB0aGlzLiNzZXRCdXN5KHRydWUpKSxcbiAgICAgICAgLy8gVE9ETzogbWF5YmUgc2lsZW50IHJlc2V0IG9yIHByZXZlbnQgaXRlbXMkIGNoZW5nZXNcbiAgICAgICAgLy8gVE9ETzogYWx0ZXJuYXRpdmUgc29sdXRpb24gdXNlIGNhY2hlSWQsIGFuZCBxdWVyeSBpdGVtIGZyb20gc3RvcmUgd2l0aCB0aGlzIGNhY2hlSWRcbiAgICAgICAgc3dpdGNoTWFwKCh7IHF1ZXJ5IH0pID0+IHRoaXMuc3RvcmUuY2xlYXIoKS5waXBlKG1hcCgoKSA9PiBxdWVyeSkpKSxcbiAgICAgICAgc3dpdGNoTWFwKHF1ZXJ5ID0+XG4gICAgICAgICAgICB0aGlzLnNsaWNlJC5waXBlKFxuICAgICAgICAgICAgICAgIHRhcCgoKSA9PiB0aGlzLiNzZXRCdXN5KHRydWUpKSxcbiAgICAgICAgICAgICAgICBtYXAoc2xpY2UgPT4ge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4geyAuLi5xdWVyeSwgc2xpY2UgfVxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICApXG4gICAgICAgICksXG4gICAgICAgIHNoYXJlUmVwbGF5KHsgYnVmZmVyU2l6ZTogMSwgcmVmQ291bnQ6IHRydWUgfSlcbiAgICApXG5cbiAgICByZWFkb25seSBpdGVtcyQ6IE9ic2VydmFibGU8UGFydGlhbENvbGxlY3Rpb248VD4+ID0gdGhpcy4jcXVlcnkucGlwZShcbiAgICAgICAgdGFwKCgpID0+IHRoaXMuI3NldEJ1c3kodHJ1ZSkpLFxuICAgICAgICBzd2l0Y2hNYXAodiA9PiAodGhpcy5wcm92aWRlci5pc0FzeW5jID8gdGltZXIoREVCT1VOQ0VfVElNRSkucGlwZShtYXAoKCkgPT4gdikpIDogb2YodikpKSxcbiAgICAgICAgc3dpdGNoTWFwKHF1ZXJ5ID0+XG4gICAgICAgICAgICB0aGlzLnN0b3JlLmhhc1NsaWNlKHF1ZXJ5LnNsaWNlKS5waXBlKFxuICAgICAgICAgICAgICAgIHRha2UoMSksXG4gICAgICAgICAgICAgICAgc3dpdGNoTWFwKGhhc1NsaWNlID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGhhc1NsaWNlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5zdG9yZS5nZXRTbGljZShxdWVyeS5zbGljZSkucGlwZSh0YWtlKDEpKVxuICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMucHJvdmlkZXIucXVlcnlMaXN0KHF1ZXJ5KS5waXBlKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN3aXRjaE1hcChyZXN1bHQgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAocmVzdWx0LnRvdGFsICE9IG51bGwpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMudG90YWwkLm5leHQocmVzdWx0LnRvdGFsKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLnN0b3JlLmluc2VydFNsaWNlKHF1ZXJ5LnNsaWNlLCByZXN1bHQuaXRlbXMpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGFrZSgxKVxuICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIClcbiAgICAgICAgKSxcbiAgICAgICAgdGFwKCgpID0+IHRoaXMuI3NldEJ1c3koZmFsc2UpKSxcbiAgICAgICAgc2hhcmVSZXBsYXkoeyBidWZmZXJTaXplOiAxLCByZWZDb3VudDogdHJ1ZSB9KVxuICAgIClcblxuICAgIHJlYWRvbmx5IGlzRW1wdHkkID0gY29tYmluZUxhdGVzdCh7IGJ1c3k6IHRoaXMuaXNCdXN5JCwgaXRlbXM6IHRoaXMuaXRlbXMkIH0pLnBpcGUoXG4gICAgICAgIG1hcCgoeyBidXN5LCBpdGVtcyB9KSA9PiAhYnVzeSAmJiBpdGVtcy5ldmVyeShpc0ZhbHN5KSksXG4gICAgICAgIHNoYXJlUmVwbGF5KHsgYnVmZmVyU2l6ZTogMSwgcmVmQ291bnQ6IHRydWUgfSlcbiAgICApXG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHVibGljIHJlYWRvbmx5IHByb3ZpZGVyOiBEYXRhUHJvdmlkZXI8VD4sXG4gICAgICAgIHB1YmxpYyByZWFkb25seSBzdG9yZTogQ29sbGVjdGlvblN0b3JlPFQ+ID0gbmV3IE1lbW9yeVN0b3JlKCksXG4gICAgICAgIHB1YmxpYyByZWFkb25seSBxdWVyeSQgPSBxdWVyeVN1YmplY3QoXCJub3JtYWxcIiwgXCJmb3JjZWRcIilcbiAgICApIHtcbiAgICAgICAgc3VwZXIoKVxuICAgIH1cblxuICAgIHNldFNsaWNlKHNsaWNlOiBTbGljZSkge1xuICAgICAgICB0aGlzLiNzbGljZS5uZXh0KHNsaWNlKVxuICAgICAgICByZXR1cm4gdGhpc1xuICAgIH1cblxuICAgIGFsbCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc2V0U2xpY2UoeyBzdGFydDogMCwgZW5kOiBJbmZpbml0eSB9KVxuICAgIH1cblxuICAgIHJlYWxvZCgpIHtcbiAgICAgICAgdGhpcy4jcmVsb2FkLm5leHQoKVxuICAgIH1cblxuICAgIGdldEl0ZW0ocmVmOiBNb2RlbFJlZik6IE9ic2VydmFibGU8VCB8IHVuZGVmaW5lZD4ge1xuICAgICAgICBjb25zdCByZWZuID0gdGhpcy5wcm92aWRlci5tZXRhLm5vcm1hbGl6ZVJlZihyZWYpXG4gICAgICAgIHJldHVybiB0aGlzLnN0b3JlLmdldChyZWZuKS5waXBlKFxuICAgICAgICAgICAgdGFrZSgxKSxcbiAgICAgICAgICAgIHN3aXRjaE1hcChyZXN1bHQgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChyZXN1bHQgPT0gbnVsbCkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5wcm92aWRlci5xdWVyeUl0ZW0ocmVmbikucGlwZSh0YWtlKDEpKVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICByZXR1cm4gb2YocmVzdWx0KVxuICAgICAgICAgICAgfSlcbiAgICAgICAgKVxuICAgIH1cblxuICAgIHdhdGNoSXRlbShyZWY6IE1vZGVsUmVmKTogT2JzZXJ2YWJsZTxUIHwgdW5kZWZpbmVkPiB7XG4gICAgICAgIGNvbnN0IHJlZm4gPSB0aGlzLnByb3ZpZGVyLm1ldGEubm9ybWFsaXplUmVmKHJlZilcbiAgICAgICAgcmV0dXJuIHRoaXMuI3N0b3JlRmlyc3QoXG4gICAgICAgICAgICBxdWVyeSA9PiB0aGlzLnN0b3JlLmdldChyZWZuKSxcbiAgICAgICAgICAgIHF1ZXJ5ID0+IHRoaXMucHJvdmlkZXIucXVlcnlJdGVtKHJlZm4sIHF1ZXJ5KVxuICAgICAgICApXG4gICAgfVxuXG4gICAgZ2V0SXRlbVBvc2l0aW9uKHJlZjogTW9kZWxSZWYpOiBPYnNlcnZhYmxlPG51bWJlciB8IHVuZGVmaW5lZD4ge1xuICAgICAgICByZXR1cm4gdGhpcy53YXRjaEl0ZW1Qb3NpdGlvbihyZWYpLnBpcGUodGFrZSgxKSlcbiAgICB9XG5cbiAgICB3YXRjaEl0ZW1Qb3NpdGlvbihyZWY6IE1vZGVsUmVmKTogT2JzZXJ2YWJsZTxudW1iZXIgfCB1bmRlZmluZWQ+IHtcbiAgICAgICAgY29uc3QgcmVmbiA9IHRoaXMucHJvdmlkZXIubWV0YS5ub3JtYWxpemVSZWYocmVmKVxuICAgICAgICByZXR1cm4gdGhpcy4jc3RvcmVGaXJzdChcbiAgICAgICAgICAgIHF1ZXJ5ID0+IHRoaXMuc3RvcmUuaW5kZXhPZihyZWZuKS5waXBlKG1hcChpID0+IChpIDwgMCA/IHVuZGVmaW5lZCA6IGkpKSksXG4gICAgICAgICAgICBxdWVyeSA9PiB0aGlzLnByb3ZpZGVyLnF1ZXJ5UG9zaXRpb24ocmVmbiwgcXVlcnkpXG4gICAgICAgIClcbiAgICB9XG5cbiAgICByZWFsb2RJdGVtKHJlZjogTW9kZWxSZWYsIGluc2VydFBvc2l0aW9uPzogbnVtYmVyKTogT2JzZXJ2YWJsZTxUIHwgdW5kZWZpbmVkPiB7XG4gICAgICAgIGNvbnN0IHJlZm4gPSB0aGlzLnByb3ZpZGVyLm1ldGEubm9ybWFsaXplUmVmKHJlZilcbiAgICAgICAgcmV0dXJuIHRoaXMuI3F1ZXJ5LnBpcGUoXG4gICAgICAgICAgICB0YWtlKDEpLFxuICAgICAgICAgICAgc3dpdGNoTWFwKHF1ZXJ5ID0+IHRoaXMucHJvdmlkZXIucXVlcnlJdGVtKHJlZm4sIHF1ZXJ5KS5waXBlKHRha2UoMSkpKSxcbiAgICAgICAgICAgIHN3aXRjaE1hcChpdGVtID0+XG4gICAgICAgICAgICAgICAgaXRlbSAhPSBudWxsID8gdGhpcy5zdG9yZS51cGRhdGVPckluc2VydChyZWZuLCBpdGVtLCBpbnNlcnRQb3NpdGlvbikucGlwZShtYXAoKCkgPT4gaXRlbSkpIDogb2YoaXRlbSlcbiAgICAgICAgICAgIClcbiAgICAgICAgKVxuICAgIH1cblxuICAgICNzdG9yZUZpcnN0PFg+KFxuICAgICAgICBzdG9yZUZuOiAocXVlcnk6IFF1ZXJ5V2l0aFNsaWNlPFQ+KSA9PiBPYnNlcnZhYmxlPFg+LFxuICAgICAgICBzZWxmRm46IChxdWVyeTogUXVlcnlXaXRoU2xpY2U8VD4pID0+IE9ic2VydmFibGU8WD5cbiAgICApOiBPYnNlcnZhYmxlPFg+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuI3F1ZXJ5LnBpcGUoXG4gICAgICAgICAgICB0YWtlKDEpLFxuICAgICAgICAgICAgc3dpdGNoTWFwKHF1ZXJ5ID0+IHN0b3JlRm4ocXVlcnkpLnBpcGUoc3dpdGNoTWFwKHJlc3VsdCA9PiAocmVzdWx0ID09IG51bGwgPyBzZWxmRm4ocXVlcnkpIDogb2YocmVzdWx0KSkpKSlcbiAgICAgICAgKVxuICAgIH1cblxuICAgICNzZXRCdXN5KGJ1c3k6IGJvb2xlYW4pIHtcbiAgICAgICAgaWYgKHRoaXMuaXNCdXN5JC52YWx1ZSAhPT0gYnVzeSkge1xuICAgICAgICAgICAgLy8gZG9udCBzZXQgdHJ1ZSB3aGVuIG5vdCBhc3luYyBwcm92aWRlciwgYnV0IGZhbHNlIGlzIGFsc28gc2V0XG4gICAgICAgICAgICBpZiAoYnVzeSAmJiB0aGlzLnByb3ZpZGVyLmlzQXN5bmMpIHtcbiAgICAgICAgICAgICAgICByZXR1cm5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMuaXNCdXN5JC5uZXh0KGJ1c3kpXG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAjY3ZTdWJzID0gbmV3IE1hcDxDb2xsZWN0aW9uVmlld2VyLCBTdWJqZWN0PHZvaWQ+PigpXG5cbiAgICBvdmVycmlkZSBjb25uZWN0KGNvbGxlY3Rpb25WaWV3ZXI6IENvbGxlY3Rpb25WaWV3ZXIpOiBPYnNlcnZhYmxlPHJlYWRvbmx5IChUIHwgdW5kZWZpbmVkKVtdPiB7XG4gICAgICAgIGNvbnN0IHVudGlsID0gbmV3IFN1YmplY3Q8dm9pZD4oKVxuXG4gICAgICAgIHRoaXMuI2N2U3Vicy5nZXQoY29sbGVjdGlvblZpZXdlcik/Lm5leHQoKVxuICAgICAgICB0aGlzLiNjdlN1YnMuc2V0KGNvbGxlY3Rpb25WaWV3ZXIsIHVudGlsKVxuXG4gICAgICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZSgoc3Vic2NyaWJlcjogU3Vic2NyaWJlcjxyZWFkb25seSAoVCB8IHVuZGVmaW5lZClbXT4pID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHN1YjEgPSBjb2xsZWN0aW9uVmlld2VyLnZpZXdDaGFuZ2Uuc3Vic2NyaWJlKHRoaXMuI3NsaWNlKVxuICAgICAgICAgICAgY29uc3Qgc3ViMiA9IHRoaXMuaXRlbXMkLnN1YnNjcmliZShzdWJzY3JpYmVyKVxuXG4gICAgICAgICAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgICAgICAgICAgIGlmICh0aGlzLiNjdlN1YnMuZ2V0KGNvbGxlY3Rpb25WaWV3ZXIpID09PSB1bnRpbCkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLiNjdlN1YnMuZGVsZXRlKGNvbGxlY3Rpb25WaWV3ZXIpXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHN1YjEudW5zdWJzY3JpYmUoKVxuICAgICAgICAgICAgICAgIHN1YjIudW5zdWJzY3JpYmUoKVxuICAgICAgICAgICAgfVxuICAgICAgICB9KS5waXBlKHRha2VVbnRpbCh1bnRpbCkpXG4gICAgfVxuXG4gICAgb3ZlcnJpZGUgZGlzY29ubmVjdChjb2xsZWN0aW9uVmlld2VyOiBDb2xsZWN0aW9uVmlld2VyKTogdm9pZCB7XG4gICAgICAgIHRoaXMuI2N2U3Vicy5nZXQoY29sbGVjdGlvblZpZXdlcik/Lm5leHQoKVxuICAgICAgICB0aGlzLiNjdlN1YnMuZGVsZXRlKGNvbGxlY3Rpb25WaWV3ZXIpXG4gICAgfVxufVxuIl19
|
|
121
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic291cmNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGF0YS9zcmMvc291cmNlL3NvdXJjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxJQUFJLGFBQWEsRUFBb0IsTUFBTSwwQkFBMEIsQ0FBQTtBQUV4RixPQUFPLEVBQ0gsZUFBZSxFQUNmLFVBQVUsRUFDVixhQUFhLEVBQ2Isb0JBQW9CLEVBQ3BCLE1BQU0sRUFDTixHQUFHLEVBQ0gsS0FBSyxFQUNMLFVBQVUsRUFDVixFQUFFLEVBQ0YsYUFBYSxFQUNiLFdBQVcsRUFDWCxPQUFPLEVBRVAsU0FBUyxFQUNULElBQUksRUFDSixTQUFTLEVBQ1QsR0FBRyxFQUNILEtBQUssRUFDUixNQUFNLE1BQU0sQ0FBQTtBQUViLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxXQUFXLENBQUE7QUFFbkMsT0FBTyxFQUFtQixTQUFTLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBS2hGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxVQUFVLENBQUE7QUFDdkMsT0FBTyxFQUF3QixXQUFXLEVBQTBCLE1BQU0sVUFBVSxDQUFBO0FBRXBGLE1BQU0sYUFBYSxHQUFHLEVBQUUsQ0FBQTtBQUV4QixNQUFNLE9BQU8sVUFBNEIsU0FBUSxhQUE0QjtJQUloRSxNQUFNLENBQThCO0lBUXBDLE9BQU8sQ0FBdUM7SUFFOUMsTUFBTSxDQWlCZDtJQXdDRCxZQUNvQixRQUF5QixFQUN6QixRQUE0QixJQUFJLFdBQVcsRUFBRSxFQUM3QyxTQUFTLFlBQVksQ0FBQyxRQUFRLEVBQUUsUUFBUSxDQUFDO1FBRXpELEtBQUssRUFBRSxDQUFBO1FBSlMsYUFBUSxHQUFSLFFBQVEsQ0FBaUI7UUFDekIsVUFBSyxHQUFMLEtBQUssQ0FBd0M7UUFDN0MsV0FBTSxHQUFOLE1BQU0sQ0FBbUM7UUF6RXBELFlBQU8sR0FBRyxJ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Qy9DLE1BQU0sS0FBSyxHQUFHLElBQUksT0FBTyxFQUFRLENBQUE7UUFFakMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLENBQUMsRUFBRSxJQUFJLEVBQUUsQ0FBQTtRQUMxQyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsRUFBRSxLQUFLLENBQUMsQ0FBQTtRQUV6QyxPQUFPLElBQUksVUFBVSxDQUFDLENBQUMsVUFBa0QsRUFBRSxFQUFFO1lBQ3pFLE1BQU0sSUFBSSxHQUFHLGdCQUFnQixDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFBO1lBQy9ELE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxDQUFBO1lBRTlDLE9BQU8sR0FBRyxFQUFFO2dCQUNSLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxLQUFLLEVBQUUsQ0FBQztvQkFDL0MsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQTtnQkFDekMsQ0FBQztnQkFDRCxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUE7Z0JBQ2xCLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQTtZQUN0QixDQUFDLENBQUE7UUFDTCxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUE7SUFDN0IsQ0FBQztJQUVRLFVBQVUsQ0FBQyxnQkFBa0M7UUFDbEQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLENBQUMsRUFBRSxJQUFJLEVBQUUsQ0FBQTtRQUMxQyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFBO0lBQ3pDLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERhdGFTb3VyY2UgYXMgQ2RrRGF0YVNvdXJjZSwgQ29sbGVjdGlvblZpZXdlciB9IGZyb20gXCJAYW5ndWxhci9jZGsvY29sbGVjdGlvbnNcIlxuXG5pbXBvcnQge1xuICAgIEJlaGF2aW9yU3ViamVjdCxcbiAgICBjYXRjaEVycm9yLFxuICAgIGNvbWJpbmVMYXRlc3QsXG4gICAgZGlzdGluY3RVbnRpbENoYW5nZWQsXG4gICAgZmlsdGVyLFxuICAgIG1hcCxcbiAgICBtZXJnZSxcbiAgICBPYnNlcnZhYmxlLFxuICAgIG9mLFxuICAgIFJlcGxheVN1YmplY3QsXG4gICAgc2hhcmVSZXBsYXksXG4gICAgU3ViamVjdCxcbiAgICBTdWJzY3JpYmVyLFxuICAgIHN3aXRjaE1hcCxcbiAgICB0YWtlLFxuICAgIHRha2VVbnRpbCxcbiAgICB0YXAsXG4gICAgdGltZXJcbn0gZnJvbSBcInJ4anNcIlxuXG5pbXBvcnQgeyBpc0VxdWFsIH0gZnJvbSBcImxvZGFzaC1lc1wiXG5cbmltcG9ydCB7IENvbm5lY3RQcm90b2NvbCwgZGVlcENsb25lLCBkZWVwRnJlZXplLCBpc0ZhbHN5IH0gZnJvbSBcIkBuZ3V0aWwvY29tbW9uXCJcblxuaW1wb3J0IHR5cGUgeyBNb2RlbCwgTW9kZWxSZWYgfSBmcm9tIFwiLi4vbW9kZWxcIlxuaW1wb3J0IHR5cGUgeyBEYXRhUHJvdmlkZXIgfSBmcm9tIFwiLi4vcHJvdmlkZXIvcHJvdmlkZXJcIlxuaW1wb3J0IHR5cGUgeyBRdWVyeVJlc3VsdCwgUXVlcnlXaXRoU2xpY2UsIFNsaWNlIH0gZnJvbSBcIi4uL3F1ZXJ5XCJcbmltcG9ydCB7IHF1ZXJ5U3ViamVjdCB9IGZyb20gXCIuLi9xdWVyeVwiXG5pbXBvcnQgeyB0eXBlIENvbGxlY3Rpb25TdG9yZSwgTWVtb3J5U3RvcmUsIHR5cGUgUGFydGlhbENvbGxlY3Rpb24gfSBmcm9tIFwiLi4vc3RvcmVcIlxuXG5jb25zdCBERUJPVU5DRV9USU1FID0gNTBcblxuZXhwb3J0IGNsYXNzIERhdGFTb3VyY2U8VCBleHRlbmRzIE1vZGVsPiBleHRlbmRzIENka0RhdGFTb3VyY2U8VCB8IHVuZGVmaW5lZD4gaW1wbGVtZW50cyBDb25uZWN0UHJvdG9jb2wge1xuICAgIHJlYWRvbmx5IGlzQnVzeSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKVxuICAgIHJlYWRvbmx5IHRvdGFsJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8bnVtYmVyIHwgdW5kZWZpbmVkPih1bmRlZmluZWQpXG5cbiAgICByZWFkb25seSAjc2xpY2UgPSBuZXcgUmVwbGF5U3ViamVjdDxTbGljZT4oMSlcbiAgICByZWFkb25seSBzbGljZSQ6IE9ic2VydmFibGU8U2xpY2U+ID0gdGhpcy4jc2xpY2UucGlwZShcbiAgICAgICAgc3dpdGNoTWFwKHNsaWNlID0+IHRoaXMucHJvdmlkZXIuY2xhbXBTbGljZShzbGljZSkpLFxuICAgICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZChpc0VxdWFsKSxcbiAgICAgICAgbWFwKHNsaWNlID0+IGRlZXBGcmVlemUoZGVlcENsb25lKHNsaWNlKSkpLFxuICAgICAgICBzaGFyZVJlcGxheSh7IGJ1ZmZlclNpemU6IDEsIHJlZkNvdW50OiB0cnVlIH0pXG4gICAgKVxuXG4gICAgcmVhZG9ubHkgI3JlbG9hZCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8dm9pZD4odW5kZWZpbmVkKVxuXG4gICAgcmVhZG9ubHkgI3F1ZXJ5OiBPYnNlcnZhYmxlPFF1ZXJ5V2l0aFNsaWNlPFQ+PiA9IGNvbWJpbmVMYXRlc3Qoe1xuICAgICAgICBxdWVyeTogdGhpcy5xdWVyeSQsXG4gICAgICAgIHJlbG9hZDogbWVyZ2UodGhpcy4jcmVsb2FkLCB0aGlzLnByb3ZpZGVyLmNoYW5nZWQkKVxuICAgIH0pLnBpcGUoXG4gICAgICAgIC8vIHRhcCgoKSA9PiB0aGlzLiNzZXRCdXN5KHRydWUpKSxcbiAgICAgICAgLy8gVE9ETzogbWF5YmUgc2lsZW50IHJlc2V0IG9yIHByZXZlbnQgaXRlbXMkIGNoZW5nZXNcbiAgICAgICAgLy8gVE9ETzogYWx0ZXJuYXRpdmUgc29sdXRpb24gdXNlIGNhY2hlSWQsIGFuZCBxdWVyeSBpdGVtIGZyb20gc3RvcmUgd2l0aCB0aGlzIGNhY2hlSWRcbiAgICAgICAgc3dpdGNoTWFwKCh7IHF1ZXJ5IH0pID0+IHRoaXMuc3RvcmUuY2xlYXIoKS5waXBlKG1hcCgoKSA9PiBxdWVyeSkpKSxcbiAgICAgICAgc3dpdGNoTWFwKHF1ZXJ5ID0+XG4gICAgICAgICAgICB0aGlzLnNsaWNlJC5waXBlKFxuICAgICAgICAgICAgICAgIG1hcChzbGljZSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIC8vIHRoaXMuI3NldEJ1c3kodHJ1ZSlcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHsgLi4ucXVlcnksIHNsaWNlIH1cbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgKVxuICAgICAgICApLFxuICAgICAgICBzaGFyZVJlcGxheSh7IGJ1ZmZlclNpemU6IDEsIHJlZkNvdW50OiB0cnVlIH0pXG4gICAgKVxuXG4gICAgcmVhZG9ubHkgaXRlbXMkOiBPYnNlcnZhYmxlPFBhcnRpYWxDb2xsZWN0aW9uPFQ+PiA9IHRoaXMuI3F1ZXJ5LnBpcGUoXG4gICAgICAgIHN3aXRjaE1hcCh2ID0+ICh0aGlzLnByb3ZpZGVyLmlzQXN5bmMgPyB0aW1lcihERUJPVU5DRV9USU1FKS5waXBlKG1hcCgoKSA9PiB2KSkgOiBvZih2KSkpLFxuICAgICAgICBzd2l0Y2hNYXAocXVlcnkgPT5cbiAgICAgICAgICAgIHRoaXMuc3RvcmUuaGFzU2xpY2UocXVlcnkuc2xpY2UpLnBpcGUoXG4gICAgICAgICAgICAgICAgdGFrZSgxKSxcbiAgICAgICAgICAgICAgICBzd2l0Y2hNYXAoaGFzU2xpY2UgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAoaGFzU2xpY2UpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLnN0b3JlLmdldFNsaWNlKHF1ZXJ5LnNsaWNlKS5waXBlKHRha2UoMSkpXG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLiNzZXRCdXN5KHRydWUpXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5wcm92aWRlci5xdWVyeUxpc3QocXVlcnkpLnBpcGUoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGFrZSgxKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYXRjaEVycm9yKCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy4jc2V0QnVzeShmYWxzZSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG9mKHsgaXRlbXM6IFtdLCB0b3RhbDogdW5kZWZpbmVkIH0gc2F0aXNmaWVzIFF1ZXJ5UmVzdWx0PFQ+KVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRhcCgoKSA9PiB0aGlzLiNzZXRCdXN5KGZhbHNlKSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3dpdGNoTWFwKHJlc3VsdCA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChyZXN1bHQudG90YWwgIT0gbnVsbCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy50b3RhbCQubmV4dChyZXN1bHQudG90YWwpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuc3RvcmUuaW5zZXJ0U2xpY2UocXVlcnkuc2xpY2UsIHJlc3VsdC5pdGVtcylcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0YWtlKDEpXG4gICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgKVxuICAgICAgICApLFxuICAgICAgICBzaGFyZVJlcGxheSh7IGJ1ZmZlclNpemU6IDEsIHJlZkNvdW50OiB0cnVlIH0pXG4gICAgKVxuXG4gICAgcmVhZG9ubHkgaXNFbXB0eSQgPSBjb21iaW5lTGF0ZXN0KHsgYnVzeTogdGhpcy5pc0J1c3kkLCBpdGVtczogdGhpcy5pdGVtcyQgfSkucGlwZShcbiAgICAgICAgZmlsdGVyKCh7IGJ1c3kgfSkgPT4gIWJ1c3kpLFxuICAgICAgICBtYXAoKHsgaXRlbXMgfSkgPT4gaXRlbXMuZXZlcnkoaXNGYWxzeSkpLFxuICAgICAgICBzaGFyZVJlcGxheSh7IGJ1ZmZlclNpemU6IDEsIHJlZkNvdW50OiB0cnVlIH0pXG4gICAgKVxuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHB1YmxpYyByZWFkb25seSBwcm92aWRlcjogRGF0YVByb3ZpZGVyPFQ+LFxuICAgICAgICBwdWJsaWMgcmVhZG9ubHkgc3RvcmU6IENvbGxlY3Rpb25TdG9yZTxUPiA9IG5ldyBNZW1vcnlTdG9yZSgpLFxuICAgICAgICBwdWJsaWMgcmVhZG9ubHkgcXVlcnkkID0gcXVlcnlTdWJqZWN0KFwibm9ybWFsXCIsIFwiZm9yY2VkXCIpXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKClcbiAgICB9XG5cbiAgICBzZXRTbGljZShzbGljZTogU2xpY2UpIHtcbiAgICAgICAgdGhpcy4jc2xpY2UubmV4dChzbGljZSlcbiAgICAgICAgcmV0dXJuIHRoaXNcbiAgICB9XG5cbiAgICBhbGwoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLnNldFNsaWNlKHsgc3RhcnQ6IDAsIGVuZDogSW5maW5pdHkgfSlcbiAgICB9XG5cbiAgICByZWFsb2QoKSB7XG4gICAgICAgIHRoaXMuI3JlbG9hZC5uZXh0KClcbiAgICB9XG5cbiAgICBnZXRJdGVtKHJlZjogTW9kZWxSZWYpOiBPYnNlcnZhYmxlPFQgfCB1bmRlZmluZWQ+IHtcbiAgICAgICAgY29uc3QgcmVmbiA9IHRoaXMucHJvdmlkZXIubWV0YS5ub3JtYWxpemVSZWYocmVmKVxuICAgICAgICByZXR1cm4gdGhpcy5zdG9yZS5nZXQocmVmbikucGlwZShcbiAgICAgICAgICAgIHRha2UoMSksXG4gICAgICAgICAgICBzd2l0Y2hNYXAocmVzdWx0ID0+IHtcbiAgICAgICAgICAgICAgICBpZiAocmVzdWx0ID09IG51bGwpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMucHJvdmlkZXIucXVlcnlJdGVtKHJlZm4pLnBpcGUodGFrZSgxKSlcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcmV0dXJuIG9mKHJlc3VsdClcbiAgICAgICAgICAgIH0pXG4gICAgICAgIClcbiAgICB9XG5cbiAgICB3YXRjaEl0ZW0ocmVmOiBNb2RlbFJlZik6IE9ic2VydmFibGU8VCB8IHVuZGVmaW5lZD4ge1xuICAgICAgICBjb25zdCByZWZuID0gdGhpcy5wcm92aWRlci5tZXRhLm5vcm1hbGl6ZVJlZihyZWYpXG4gICAgICAgIHJldHVybiB0aGlzLiNzdG9yZUZpcnN0KFxuICAgICAgICAgICAgcXVlcnkgPT4gdGhpcy5zdG9yZS5nZXQocmVmbiksXG4gICAgICAgICAgICBxdWVyeSA9PiB0aGlzLnByb3ZpZGVyLnF1ZXJ5SXRlbShyZWZuLCBxdWVyeSlcbiAgICAgICAgKVxuICAgIH1cblxuICAgIGdldEl0ZW1Qb3NpdGlvbihyZWY6IE1vZGVsUmVmKTogT2JzZXJ2YWJsZTxudW1iZXIgfCB1bmRlZmluZWQ+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMud2F0Y2hJdGVtUG9zaXRpb24ocmVmKS5waXBlKHRha2UoMSkpXG4gICAgfVxuXG4gICAgd2F0Y2hJdGVtUG9zaXRpb24ocmVmOiBNb2RlbFJlZik6IE9ic2VydmFibGU8bnVtYmVyIHwgdW5kZWZpbmVkPiB7XG4gICAgICAgIGNvbnN0IHJlZm4gPSB0aGlzLnByb3ZpZGVyLm1ldGEubm9ybWFsaXplUmVmKHJlZilcbiAgICAgICAgcmV0dXJuIHRoaXMuI3N0b3JlRmlyc3QoXG4gICAgICAgICAgICBxdWVyeSA9PiB0aGlzLnN0b3JlLmluZGV4T2YocmVmbikucGlwZShtYXAoaSA9PiAoaSA8IDAgPyB1bmRlZmluZWQgOiBpKSkpLFxuICAgICAgICAgICAgcXVlcnkgPT4gdGhpcy5wcm92aWRlci5xdWVyeVBvc2l0aW9uKHJlZm4sIHF1ZXJ5KVxuICAgICAgICApXG4gICAgfVxuXG4gICAgcmVhbG9kSXRlbShyZWY6IE1vZGVsUmVmLCBpbnNlcnRQb3NpdGlvbj86IG51bWJlcik6IE9ic2VydmFibGU8VCB8IHVuZGVmaW5lZD4ge1xuICAgICAgICBjb25zdCByZWZuID0gdGhpcy5wcm92aWRlci5tZXRhLm5vcm1hbGl6ZVJlZihyZWYpXG4gICAgICAgIHJldHVybiB0aGlzLiNxdWVyeS5waXBlKFxuICAgICAgICAgICAgdGFrZSgxKSxcbiAgICAgICAgICAgIHN3aXRjaE1hcChxdWVyeSA9PiB0aGlzLnByb3ZpZGVyLnF1ZXJ5SXRlbShyZWZuLCBxdWVyeSkucGlwZSh0YWtlKDEpKSksXG4gICAgICAgICAgICBzd2l0Y2hNYXAoaXRlbSA9PlxuICAgICAgICAgICAgICAgIGl0ZW0gIT0gbnVsbCA/IHRoaXMuc3RvcmUudXBkYXRlT3JJbnNlcnQocmVmbiwgaXRlbSwgaW5zZXJ0UG9zaXRpb24pLnBpcGUobWFwKCgpID0+IGl0ZW0pKSA6IG9mKGl0ZW0pXG4gICAgICAgICAgICApXG4gICAgICAgIClcbiAgICB9XG5cbiAgICAjc3RvcmVGaXJzdDxYPihcbiAgICAgICAgc3RvcmVGbjogKHF1ZXJ5OiBRdWVyeVdpdGhTbGljZTxUPikgPT4gT2JzZXJ2YWJsZTxYPixcbiAgICAgICAgc2VsZkZuOiAocXVlcnk6IFF1ZXJ5V2l0aFNsaWNlPFQ+KSA9PiBPYnNlcnZhYmxlPFg+XG4gICAgKTogT2JzZXJ2YWJsZTxYPiB7XG4gICAgICAgIHJldHVybiB0aGlzLiNxdWVyeS5waXBlKFxuICAgICAgICAgICAgdGFrZSgxKSxcbiAgICAgICAgICAgIHN3aXRjaE1hcChxdWVyeSA9PiBzdG9yZUZuKHF1ZXJ5KS5waXBlKHN3aXRjaE1hcChyZXN1bHQgPT4gKHJlc3VsdCA9PSBudWxsID8gc2VsZkZuKHF1ZXJ5KSA6IG9mKHJlc3VsdCkpKSkpXG4gICAgICAgIClcbiAgICB9XG5cbiAgICAjc2V0QnVzeShidXN5OiBib29sZWFuKSB7XG4gICAgICAgIGlmICh0aGlzLmlzQnVzeSQudmFsdWUgIT09IGJ1c3kpIHtcbiAgICAgICAgICAgIC8vIGRvbnQgc2V0IHRydWUgd2hlbiBub3QgYXN5bmMgcHJvdmlkZXIsIGJ1dCBmYWxzZSBpcyBhbHNvIHNldFxuICAgICAgICAgICAgaWYgKGJ1c3kgJiYgIXRoaXMucHJvdmlkZXIuaXNBc3luYykge1xuICAgICAgICAgICAgICAgIHJldHVyblxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGhpcy5pc0J1c3kkLm5leHQoYnVzeSlcbiAgICAgICAgfVxuICAgIH1cblxuICAgICNjdlN1YnMgPSBuZXcgTWFwPENvbGxlY3Rpb25WaWV3ZXIsIFN1YmplY3Q8dm9pZD4+KClcblxuICAgIG92ZXJyaWRlIGNvbm5lY3QoY29sbGVjdGlvblZpZXdlcjogQ29sbGVjdGlvblZpZXdlcik6IE9ic2VydmFibGU8cmVhZG9ubHkgKFQgfCB1bmRlZmluZWQpW10+IHtcbiAgICAgICAgY29uc3QgdW50aWwgPSBuZXcgU3ViamVjdDx2b2lkPigpXG5cbiAgICAgICAgdGhpcy4jY3ZTdWJzLmdldChjb2xsZWN0aW9uVmlld2VyKT8ubmV4dCgpXG4gICAgICAgIHRoaXMuI2N2U3Vicy5zZXQoY29sbGVjdGlvblZpZXdlciwgdW50aWwpXG5cbiAgICAgICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlKChzdWJzY3JpYmVyOiBTdWJzY3JpYmVyPHJlYWRvbmx5IChUIHwgdW5kZWZpbmVkKVtdPikgPT4ge1xuICAgICAgICAgICAgY29uc3Qgc3ViMSA9IGNvbGxlY3Rpb25WaWV3ZXIudmlld0NoYW5nZS5zdWJzY3JpYmUodGhpcy4jc2xpY2UpXG4gICAgICAgICAgICBjb25zdCBzdWIyID0gdGhpcy5pdGVtcyQuc3Vic2NyaWJlKHN1YnNjcmliZXIpXG5cbiAgICAgICAgICAgIHJldHVybiAoKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuI2N2U3Vicy5nZXQoY29sbGVjdGlvblZpZXdlcikgPT09IHVudGlsKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuI2N2U3Vicy5kZWxldGUoY29sbGVjdGlvblZpZXdlcilcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgc3ViMS51bnN1YnNjcmliZSgpXG4gICAgICAgICAgICAgICAgc3ViMi51bnN1YnNjcmliZSgpXG4gICAgICAgICAgICB9XG4gICAgICAgIH0pLnBpcGUodGFrZVVudGlsKHVudGlsKSlcbiAgICB9XG5cbiAgICBvdmVycmlkZSBkaXNjb25uZWN0KGNvbGxlY3Rpb25WaWV3ZXI6IENvbGxlY3Rpb25WaWV3ZXIpOiB2b2lkIHtcbiAgICAgICAgdGhpcy4jY3ZTdWJzLmdldChjb2xsZWN0aW9uVmlld2VyKT8ubmV4dCgpXG4gICAgICAgIHRoaXMuI2N2U3Vicy5kZWxldGUoY29sbGVjdGlvblZpZXdlcilcbiAgICB9XG59XG4iXX0=
|
package/fesm2022/ngutil-data.mjs
CHANGED
|
@@ -2,9 +2,9 @@ import * as i0 from '@angular/core';
|
|
|
2
2
|
import { Directive, Input, inject, input, NgModule } from '@angular/core';
|
|
3
3
|
import { DataSource as DataSource$1 } from '@angular/cdk/collections';
|
|
4
4
|
import { takeUntilDestroyed, toObservable } from '@angular/core/rxjs-interop';
|
|
5
|
-
import { BehaviorSubject, Observable, combineLatest, map, shareReplay, take, of, ReplaySubject, switchMap, distinctUntilChanged, merge, tap,
|
|
5
|
+
import { BehaviorSubject, Observable, combineLatest, map, shareReplay, take, of, ReplaySubject, switchMap, distinctUntilChanged, merge, timer, catchError, tap, filter, Subject, takeUntil, NEVER, finalize, throwError } from 'rxjs';
|
|
6
6
|
import { BusyDirective } from '@ngutil/aria';
|
|
7
|
-
import { flattenDepth, isEqual, intersection, flattenDeep } from 'lodash';
|
|
7
|
+
import { flattenDepth, isEqual, intersection, flattenDeep } from 'lodash-es';
|
|
8
8
|
import { deepClone, deepFreeze, isPlainObject, isTruthy, isFalsy, toSorted } from '@ngutil/common';
|
|
9
9
|
|
|
10
10
|
function pathGetterCompile(path) {
|
|
@@ -981,26 +981,32 @@ class DataSource extends DataSource$1 {
|
|
|
981
981
|
this.#query = combineLatest({
|
|
982
982
|
query: this.query$,
|
|
983
983
|
reload: merge(this.#reload, this.provider.changed$)
|
|
984
|
-
}).pipe(
|
|
984
|
+
}).pipe(
|
|
985
|
+
// tap(() => this.#setBusy(true)),
|
|
985
986
|
// TODO: maybe silent reset or prevent items$ chenges
|
|
986
987
|
// TODO: alternative solution use cacheId, and query item from store with this cacheId
|
|
987
|
-
switchMap(({ query }) => this.store.clear().pipe(map(() => query))), switchMap(query => this.slice$.pipe(
|
|
988
|
+
switchMap(({ query }) => this.store.clear().pipe(map(() => query))), switchMap(query => this.slice$.pipe(map(slice => {
|
|
989
|
+
// this.#setBusy(true)
|
|
988
990
|
return { ...query, slice };
|
|
989
991
|
}))), shareReplay({ bufferSize: 1, refCount: true }));
|
|
990
|
-
this.items$ = this.#query.pipe(
|
|
992
|
+
this.items$ = this.#query.pipe(switchMap(v => (this.provider.isAsync ? timer(DEBOUNCE_TIME).pipe(map(() => v)) : of(v))), switchMap(query => this.store.hasSlice(query.slice).pipe(take(1), switchMap(hasSlice => {
|
|
991
993
|
if (hasSlice) {
|
|
992
994
|
return this.store.getSlice(query.slice).pipe(take(1));
|
|
993
995
|
}
|
|
994
996
|
else {
|
|
995
|
-
|
|
997
|
+
this.#setBusy(true);
|
|
998
|
+
return this.provider.queryList(query).pipe(take(1), catchError(() => {
|
|
999
|
+
this.#setBusy(false);
|
|
1000
|
+
return of({ items: [], total: undefined });
|
|
1001
|
+
}), tap(() => this.#setBusy(false)), switchMap(result => {
|
|
996
1002
|
if (result.total != null) {
|
|
997
1003
|
this.total$.next(result.total);
|
|
998
1004
|
}
|
|
999
1005
|
return this.store.insertSlice(query.slice, result.items);
|
|
1000
1006
|
}), take(1));
|
|
1001
1007
|
}
|
|
1002
|
-
}))),
|
|
1003
|
-
this.isEmpty$ = combineLatest({ busy: this.isBusy$, items: this.items$ }).pipe(
|
|
1008
|
+
}))), shareReplay({ bufferSize: 1, refCount: true }));
|
|
1009
|
+
this.isEmpty$ = combineLatest({ busy: this.isBusy$, items: this.items$ }).pipe(filter(({ busy }) => !busy), map(({ items }) => items.every(isFalsy)), shareReplay({ bufferSize: 1, refCount: true }));
|
|
1004
1010
|
this.#cvSubs = new Map();
|
|
1005
1011
|
}
|
|
1006
1012
|
setSlice(slice) {
|
|
@@ -1043,7 +1049,7 @@ class DataSource extends DataSource$1 {
|
|
|
1043
1049
|
#setBusy(busy) {
|
|
1044
1050
|
if (this.isBusy$.value !== busy) {
|
|
1045
1051
|
// dont set true when not async provider, but false is also set
|
|
1046
|
-
if (busy && this.provider.isAsync) {
|
|
1052
|
+
if (busy && !this.provider.isAsync) {
|
|
1047
1053
|
return;
|
|
1048
1054
|
}
|
|
1049
1055
|
this.isBusy$.next(busy);
|