@alauda-fe/dynamic-plugin-shared 0.0.1-alpha.13 → 0.0.1-alpha.15
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/components/index.d.ts +0 -2
- package/components/resource-multi-select/component.d.ts +2 -2
- package/esm2022/array-form-table/form/component.mjs +2 -2
- package/esm2022/array-form-table/key-value-form/component.mjs +2 -2
- package/esm2022/array-form-table/key-value-table/component.mjs +2 -2
- package/esm2022/async-data/async-data-loader.mjs +2 -2
- package/esm2022/async-data/page-state/component.mjs +2 -3
- package/esm2022/code-editor/resource-yaml-display/component.mjs +2 -2
- package/esm2022/components/current-time/component.mjs +2 -2
- package/esm2022/components/date-range-picker/component.mjs +2 -2
- package/esm2022/components/disabled-container/disabled-container.component.mjs +2 -2
- package/esm2022/components/foldable-item-in-table/component.mjs +2 -2
- package/esm2022/components/help-document/component.mjs +2 -2
- package/esm2022/components/index.mjs +1 -3
- package/esm2022/components/list-display/component.mjs +2 -2
- package/esm2022/components/multi-search/action-input/component.mjs +3 -3
- package/esm2022/components/multi-search/form/component.mjs +2 -2
- package/esm2022/components/multi-search/multi-search-tags/component.mjs +2 -2
- package/esm2022/components/mutable/mosaic/component.mjs +2 -2
- package/esm2022/components/page-guard/component/component.mjs +2 -3
- package/esm2022/components/password-input/component.mjs +2 -2
- package/esm2022/components/pod-status/component.mjs +2 -2
- package/esm2022/components/relative-time/component.mjs +2 -2
- package/esm2022/components/resource-label/component.mjs +2 -2
- package/esm2022/components/resource-multi-select/component.mjs +3 -3
- package/esm2022/components/select-prefix-label/directive.mjs +2 -2
- package/esm2022/components/status-icon/status-icon.component.mjs +2 -2
- package/esm2022/components/table/component.mjs +4 -3
- package/esm2022/components/tags-label/component.mjs +3 -3
- package/esm2022/components/text-with-url/component.mjs +2 -2
- package/esm2022/components/workload-status/component.mjs +2 -2
- package/esm2022/components/zero-state/zero-state.component.mjs +2 -3
- package/esm2022/directives/disabled.directive.mjs +2 -2
- package/esm2022/directives/effect-directive/event.directive.mjs +2 -2
- package/esm2022/directives/readonly-field.directive.mjs +3 -3
- package/esm2022/directives/value-trace.directive.mjs +2 -2
- package/esm2022/form/base-form-container.mjs +2 -3
- package/esm2022/form/errors-mapper/errors-mapper-component/component.mjs +2 -2
- package/esm2022/form/errors-mapper/errors-mapper.directive.mjs +2 -2
- package/esm2022/form/validators/async-function-validator.directive.mjs +2 -2
- package/esm2022/form/validators/function-validator.directive.mjs +2 -2
- package/esm2022/form/validators/not-be-validator.directive.mjs +2 -2
- package/esm2022/form/validators/one-of-validator.directive.mjs +2 -2
- package/esm2022/form/validators/utils.mjs +3 -2
- package/esm2022/k8s-resource-list/footer/component.mjs +2 -2
- package/esm2022/k8s-resource-list/k8s-resource-list.mjs +2 -2
- package/esm2022/k8s-resource-list/k8s-resource-paged-list.mjs +2 -2
- package/esm2022/page-deactivate/deactivate.directive.mjs +2 -2
- package/esm2022/page-deactivate/deactivate.service.mjs +2 -2
- package/esm2022/pipes/index.mjs +1 -10
- package/esm2022/services/form-row-duplicate/form-row-duplicate.service.mjs +2 -2
- package/esm2022/services/yaml-util.service.mjs +3 -2
- package/esm2022/types/common.mjs +1 -1
- package/esm2022/utils/common.mjs +3 -60
- package/esm2022/utils/disabled-state.mjs +2 -2
- package/esm2022/utils/index.mjs +1 -7
- package/esm2022/utils/unit.mjs +3 -2
- package/esm2022/utils/workspace.mjs +1 -1
- package/esm2022/utils/yaml.mjs +1 -16
- package/fesm2022/alauda-fe-dynamic-plugin-shared.mjs +66 -1080
- package/fesm2022/alauda-fe-dynamic-plugin-shared.mjs.map +1 -1
- package/package.json +1 -1
- package/pipes/index.d.ts +0 -9
- package/styles/lib.scss +1 -1
- package/styles/mixins.scss +2 -2
- package/styles/var.scss +1 -1
- package/types/common.d.ts +1 -5
- package/utils/common.d.ts +1 -13
- package/utils/index.d.ts +0 -6
- package/utils/workspace.d.ts +1 -1
- package/utils/yaml.d.ts +0 -5
- package/components/loading-mask/loading-mask.component.d.ts +0 -13
- package/components/namespace-selector/component.d.ts +0 -28
- package/components/namespace-selector/constants.d.ts +0 -2
- package/components/namespace-selector/index.d.ts +0 -3
- package/components/namespace-selector/namespace-list/component.d.ts +0 -46
- package/components/namespace-selector/types.d.ts +0 -5
- package/esm2022/components/loading-mask/loading-mask.component.mjs +0 -35
- package/esm2022/components/namespace-selector/component.mjs +0 -126
- package/esm2022/components/namespace-selector/constants.mjs +0 -3
- package/esm2022/components/namespace-selector/index.mjs +0 -4
- package/esm2022/components/namespace-selector/namespace-list/component.mjs +0 -191
- package/esm2022/components/namespace-selector/types.mjs +0 -2
- package/esm2022/pipes/field-not-available.pipe.mjs +0 -25
- package/esm2022/pipes/img-header.pipe.mjs +0 -18
- package/esm2022/pipes/img-theme.pipe.mjs +0 -38
- package/esm2022/pipes/keyvalue.pipe.mjs +0 -20
- package/esm2022/pipes/parse-json.pipe.mjs +0 -22
- package/esm2022/pipes/pure.pipe.mjs +0 -26
- package/esm2022/pipes/safe.pipe.mjs +0 -49
- package/esm2022/pipes/sanitize.pipe.mjs +0 -31
- package/esm2022/pipes/time.pipe.mjs +0 -113
- package/esm2022/utils/browser.mjs +0 -21
- package/esm2022/utils/cache-store.mjs +0 -83
- package/esm2022/utils/decorators.mjs +0 -137
- package/esm2022/utils/observable.mjs +0 -32
- package/esm2022/utils/operators.mjs +0 -38
- package/esm2022/utils/router.mjs +0 -20
- package/pipes/field-not-available.pipe.d.ts +0 -13
- package/pipes/img-header.pipe.d.ts +0 -7
- package/pipes/img-theme.pipe.d.ts +0 -13
- package/pipes/keyvalue.pipe.d.ts +0 -9
- package/pipes/parse-json.pipe.d.ts +0 -7
- package/pipes/pure.pipe.d.ts +0 -17
- package/pipes/safe.pipe.d.ts +0 -10
- package/pipes/sanitize.pipe.d.ts +0 -10
- package/pipes/time.pipe.d.ts +0 -40
- package/utils/browser.d.ts +0 -4
- package/utils/cache-store.d.ts +0 -35
- package/utils/decorators.d.ts +0 -14
- package/utils/observable.d.ts +0 -5
- package/utils/operators.d.ts +0 -22
- package/utils/router.d.ts +0 -3
|
@@ -1,113 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @packageDocumentation
|
|
3
|
-
* @module utils
|
|
4
|
-
*/
|
|
5
|
-
import { TimeService, TranslateService } from '@alauda-fe/dynamic-plugin-sdk';
|
|
6
|
-
import { ChangeDetectorRef, Injectable, Pipe, } from '@angular/core';
|
|
7
|
-
import dayjs from 'dayjs';
|
|
8
|
-
import { Subject, takeUntil } from 'rxjs';
|
|
9
|
-
import { DATE_FORMAT, DATE_TIME_FORMAT } from '../constants';
|
|
10
|
-
import { FIELD_NOT_AVAILABLE_PLACEHOLDER, isFieldNotAvailable, } from './field-not-available.pipe';
|
|
11
|
-
import * as i0 from "@angular/core";
|
|
12
|
-
import * as i1 from "@alauda-fe/dynamic-plugin-sdk";
|
|
13
|
-
const MILLISECONDS_SECOND = 1000;
|
|
14
|
-
const MILLISECONDS_MINUTE = MILLISECONDS_SECOND * 60;
|
|
15
|
-
const MILLISECONDS_HOUR = MILLISECONDS_MINUTE * 60;
|
|
16
|
-
const MILLISECONDS_DAY = MILLISECONDS_HOUR * 24;
|
|
17
|
-
const MILLISECONDS_WEEK = MILLISECONDS_DAY * 7;
|
|
18
|
-
export class RelativeTimePipe {
|
|
19
|
-
constructor(cdr, time, translate) {
|
|
20
|
-
this.cdr = cdr;
|
|
21
|
-
this.time = time;
|
|
22
|
-
this.translate = translate;
|
|
23
|
-
this.destroy$$ = new Subject();
|
|
24
|
-
this.translate.locale$
|
|
25
|
-
.pipe(takeUntil(this.destroy$$))
|
|
26
|
-
.subscribe(() => this.cdr.markForCheck());
|
|
27
|
-
}
|
|
28
|
-
ngOnDestroy() {
|
|
29
|
-
this.destroy$$.next();
|
|
30
|
-
this.destroy$$.complete();
|
|
31
|
-
if (this.timerId) {
|
|
32
|
-
clearTimeout(this.timerId);
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
transform(value) {
|
|
36
|
-
if (isFieldNotAvailable(value)) {
|
|
37
|
-
return FIELD_NOT_AVAILABLE_PLACEHOLDER;
|
|
38
|
-
}
|
|
39
|
-
const currentTime = Date.now();
|
|
40
|
-
const givenTime = dayjs(value).valueOf();
|
|
41
|
-
const distance = currentTime - givenTime;
|
|
42
|
-
if (distance >= MILLISECONDS_WEEK) {
|
|
43
|
-
return this.time.format(value, DATE_FORMAT);
|
|
44
|
-
}
|
|
45
|
-
this.checkDistance(distance);
|
|
46
|
-
return distance < MILLISECONDS_MINUTE
|
|
47
|
-
? this.translate.get('just_now')
|
|
48
|
-
: this.time.distance(givenTime, currentTime);
|
|
49
|
-
}
|
|
50
|
-
checkDistance(distance) {
|
|
51
|
-
if (distance < MILLISECONDS_MINUTE) {
|
|
52
|
-
return this.startTimer(MILLISECONDS_SECOND);
|
|
53
|
-
}
|
|
54
|
-
if (distance < MILLISECONDS_HOUR) {
|
|
55
|
-
return this.startTimer(MILLISECONDS_MINUTE);
|
|
56
|
-
}
|
|
57
|
-
if (distance < MILLISECONDS_DAY) {
|
|
58
|
-
return this.startTimer(MILLISECONDS_HOUR);
|
|
59
|
-
}
|
|
60
|
-
return this.startTimer(MILLISECONDS_DAY);
|
|
61
|
-
}
|
|
62
|
-
startTimer(timeout) {
|
|
63
|
-
clearTimeout(this.timerId);
|
|
64
|
-
this.timerId = window.setTimeout(() => this.cdr.markForCheck(), timeout);
|
|
65
|
-
}
|
|
66
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: RelativeTimePipe, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.TimeService }, { token: i1.TranslateService }], target: i0.ɵɵFactoryTarget.Pipe }); }
|
|
67
|
-
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.1.1", ngImport: i0, type: RelativeTimePipe, isStandalone: true, name: "aclRelativeTime", pure: false }); }
|
|
68
|
-
}
|
|
69
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: RelativeTimePipe, decorators: [{
|
|
70
|
-
type: Pipe,
|
|
71
|
-
args: [{ name: 'aclRelativeTime', pure: false, standalone: true }]
|
|
72
|
-
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i1.TimeService }, { type: i1.TranslateService }] });
|
|
73
|
-
export class DateTimePipe {
|
|
74
|
-
constructor(time) {
|
|
75
|
-
this.time = time;
|
|
76
|
-
}
|
|
77
|
-
transform(value, utc = false) {
|
|
78
|
-
if (!value?.toString().trim()) {
|
|
79
|
-
return FIELD_NOT_AVAILABLE_PLACEHOLDER;
|
|
80
|
-
}
|
|
81
|
-
return this.time.format(utc ? dayjs.utc(value) : value, this.format);
|
|
82
|
-
}
|
|
83
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: DateTimePipe, deps: [{ token: i1.TimeService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
84
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: DateTimePipe }); }
|
|
85
|
-
}
|
|
86
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: DateTimePipe, decorators: [{
|
|
87
|
-
type: Injectable
|
|
88
|
-
}], ctorParameters: () => [{ type: i1.TimeService }] });
|
|
89
|
-
export class StandardTimePipe extends DateTimePipe {
|
|
90
|
-
constructor() {
|
|
91
|
-
super(...arguments);
|
|
92
|
-
this.format = DATE_TIME_FORMAT;
|
|
93
|
-
}
|
|
94
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: StandardTimePipe, deps: null, target: i0.ɵɵFactoryTarget.Pipe }); }
|
|
95
|
-
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.1.1", ngImport: i0, type: StandardTimePipe, isStandalone: true, name: "aclStandardTime" }); }
|
|
96
|
-
}
|
|
97
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: StandardTimePipe, decorators: [{
|
|
98
|
-
type: Pipe,
|
|
99
|
-
args: [{ name: 'aclStandardTime', standalone: true }]
|
|
100
|
-
}] });
|
|
101
|
-
export class StandardDatePipe extends DateTimePipe {
|
|
102
|
-
constructor() {
|
|
103
|
-
super(...arguments);
|
|
104
|
-
this.format = DATE_FORMAT;
|
|
105
|
-
}
|
|
106
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: StandardDatePipe, deps: null, target: i0.ɵɵFactoryTarget.Pipe }); }
|
|
107
|
-
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.1.1", ngImport: i0, type: StandardDatePipe, isStandalone: true, name: "aclStandardDate" }); }
|
|
108
|
-
}
|
|
109
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: StandardDatePipe, decorators: [{
|
|
110
|
-
type: Pipe,
|
|
111
|
-
args: [{ name: 'aclStandardDate', standalone: true }]
|
|
112
|
-
}] });
|
|
113
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZS5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9keW5hbWljLXBsdWdpbi1zaGFyZWQvc3JjL3BpcGVzL3RpbWUucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7O0dBR0c7QUFFSCxPQUFPLEVBQUUsV0FBVyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDOUUsT0FBTyxFQUNMLGlCQUFpQixFQUNqQixVQUFVLEVBRVYsSUFBSSxHQUVMLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sS0FBcUIsTUFBTSxPQUFPLENBQUM7QUFDMUMsT0FBTyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFMUMsT0FBTyxFQUFFLFdBQVcsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUU3RCxPQUFPLEVBQ0wsK0JBQStCLEVBQy9CLG1CQUFtQixHQUNwQixNQUFNLDRCQUE0QixDQUFDOzs7QUFFcEMsTUFBTSxtQkFBbUIsR0FBRyxJQUFJLENBQUM7QUFDakMsTUFBTSxtQkFBbUIsR0FBRyxtQkFBbUIsR0FBRyxFQUFFLENBQUM7QUFDckQsTUFBTSxpQkFBaUIsR0FBRyxtQkFBbUIsR0FBRyxFQUFFLENBQUM7QUFDbkQsTUFBTSxnQkFBZ0IsR0FBRyxpQkFBaUIsR0FBRyxFQUFFLENBQUM7QUFDaEQsTUFBTSxpQkFBaUIsR0FBRyxnQkFBZ0IsR0FBRyxDQUFDLENBQUM7QUFHL0MsTUFBTSxPQUFPLGdCQUFnQjtJQUszQixZQUNtQixHQUFzQixFQUN0QixJQUFpQixFQUNqQixTQUEyQjtRQUYzQixRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQUN0QixTQUFJLEdBQUosSUFBSSxDQUFhO1FBQ2pCLGNBQVMsR0FBVCxTQUFTLENBQWtCO1FBUDdCLGNBQVMsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO1FBUy9DLElBQUksQ0FBQyxTQUFTLENBQUMs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SSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3ZFLENBQUM7OEdBWG1CLFlBQVk7a0hBQVosWUFBWTs7MkZBQVosWUFBWTtrQkFEakMsVUFBVTs7QUFnQlgsTUFBTSxPQUFPLGdCQUFpQixTQUFRLFlBQVk7SUFEbEQ7O1FBRVcsV0FBTSxHQUFHLGdCQUFnQixDQUFDO0tBQ3BDOzhHQUZZLGdCQUFnQjs0R0FBaEIsZ0JBQWdCOzsyRkFBaEIsZ0JBQWdCO2tCQUQ1QixJQUFJO21CQUFDLEVBQUUsSUFBSSxFQUFFLGlCQUFpQixFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUU7O0FBTW5ELE1BQU0sT0FBTyxnQkFBaUIsU0FBUSxZQUFZO0lBRGxEOztRQUVXLFdBQU0sR0FBRyxXQUFXLENBQUM7S0FDL0I7OEdBRlksZ0JBQWdCOzRHQUFoQixnQkFBZ0I7OzJGQUFoQixnQkFBZ0I7a0JBRDVCLElBQUk7bUJBQUMsRUFBRSxJQUFJLEVBQUUsaUJBQWlCLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRSIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQHBhY2thZ2VEb2N1bWVudGF0aW9uXG4gKiBAbW9kdWxlIHV0aWxzXG4gKi9cblxuaW1wb3J0IHsgVGltZVNlcnZpY2UsIFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICdAYWxhdWRhLWZlL2R5bmFtaWMtcGx1Z2luLXNkayc7XG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgSW5qZWN0YWJsZSxcbiAgT25EZXN0cm95LFxuICBQaXBlLFxuICBQaXBlVHJhbnNmb3JtLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCBkYXlqcywgeyBDb25maWdUeXBlIH0gZnJvbSAnZGF5anMnO1xuaW1wb3J0IHsgU3ViamVjdCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IERBVEVfRk9STUFULCBEQVRFX1RJTUVfRk9STUFUIH0gZnJvbSAnLi4vY29uc3RhbnRzJztcblxuaW1wb3J0IHtcbiAgRklFTERfTk9UX0FWQUlMQUJMRV9QTEFDRUhPTERFUixcbiAgaXNGaWVsZE5vdEF2YWlsYWJsZSxcbn0gZnJvbSAnLi9maWVsZC1ub3QtYXZhaWxhYmxlLnBpcGUnO1xuXG5jb25zdCBNSUxMSVNFQ09ORFNfU0VDT05EID0gMTAwMDtcbmNvbnN0IE1JTExJU0VDT05EU19NSU5VVEUgPSBNSUxMSVNFQ09ORFNfU0VDT05EICogNjA7XG5jb25zdCBNSUxMSVNFQ09ORFNfSE9VUiA9IE1JTExJU0VDT05EU19NSU5VVEUgKiA2MDtcbmNvbnN0IE1JTExJU0VDT05EU19EQVkgPSBNSUxMSVNFQ09ORFNfSE9VUiAqIDI0O1xuY29uc3QgTUlMTElTRUNPTkRTX1dFRUsgPSBNSUxMSVNFQ09ORFNfREFZICogNztcblxuQFBpcGUoeyBuYW1lOiAnYWNsUmVsYXRpdmVUaW1lJywgcHVyZTogZmFsc2UsIHN0YW5kYWxvbmU6IHRydWUgfSlcbmV4cG9ydCBjbGFzcyBSZWxhdGl2ZVRpbWVQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSwgT25EZXN0cm95IHtcbiAgcHJpdmF0ZSByZWFkb25seSBkZXN0cm95JCQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIHByaXZhdGUgdGltZXJJZDogbnVtYmVyO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBwcml2YXRlIHJlYWRvbmx5IHRpbWU6IFRpbWVTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLFxuICApIHtcbiAgICB0aGlzLnRyYW5zbGF0ZS5sb2NhbGUkXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCQpKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLmRlc3Ryb3kkJC5uZXh0KCk7XG4gICAgdGhpcy5kZXN0cm95JCQuY29tcGxldGUoKTtcblxuICAgIGlmICh0aGlzLnRpbWVySWQpIHtcbiAgICAgIGNsZWFyVGltZW91dCh0aGlzLnRpbWVySWQpO1xuICAgIH1cbiAgfVxuXG4gIHRyYW5zZm9ybSh2YWx1ZTogQ29uZmlnVHlwZSkge1xuICAgIGlmIChpc0ZpZWxkTm90QXZhaWxhYmxlKHZhbHVlKSkge1xuICAgICAgcmV0dXJuIEZJRUxEX05PVF9BVkFJTEFCTEVfUExBQ0VIT0xERVI7XG4gICAgfVxuXG4gICAgY29uc3QgY3VycmVudFRpbWUgPSBEYXRlLm5vdygpO1xuICAgIGNvbnN0IGdpdmVuVGltZSA9IGRheWpzKHZhbHVlKS52YWx1ZU9mKCk7XG5cbiAgICBjb25zdCBkaXN0YW5jZSA9IGN1cnJlbnRUaW1lIC0gZ2l2ZW5UaW1lO1xuXG4gICAgaWYgKGRpc3RhbmNlID49IE1JTExJU0VDT05EU19XRUVLKSB7XG4gICAgICByZXR1cm4gdGhpcy50aW1lLmZvcm1hdCh2YWx1ZSwgREFURV9GT1JNQVQpO1xuICAgIH1cblxuICAgIHRoaXMuY2hlY2tEaXN0YW5jZShkaXN0YW5jZSk7XG5cbiAgICByZXR1cm4gZGlzdGFuY2UgPCBNSUxMSVNFQ09ORFNfTUlOVVRFXG4gICAgICA/IHRoaXMudHJhbnNsYXRlLmdldCgnanVzdF9ub3cnKVxuICAgICAgOiB0aGlzLnRpbWUuZGlzdGFuY2UoZ2l2ZW5UaW1lLCBjdXJyZW50VGltZSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgY2hlY2tEaXN0YW5jZShkaXN0YW5jZTogbnVtYmVyKSB7XG4gICAgaWYgKGRpc3RhbmNlIDwgTUlMTElTRUNPTkRTX01JTlVURSkge1xuICAgICAgcmV0dXJuIHRoaXMuc3RhcnRUaW1lcihNSUxMSVNFQ09ORFNfU0VDT05EKTtcbiAgICB9XG5cbiAgICBpZiAoZGlzdGFuY2UgPCBNSUxMSVNFQ09ORFNfSE9VUikge1xuICAgICAgcmV0dXJuIHRoaXMuc3RhcnRUaW1lcihNSUxMSVNFQ09ORFNfTUlOVVRFKTtcbiAgICB9XG5cbiAgICBpZiAoZGlzdGFuY2UgPCBNSUxMSVNFQ09ORFNfREFZKSB7XG4gICAgICByZXR1cm4gdGhpcy5zdGFydFRpbWVyKE1JTExJU0VDT05EU19IT1VSKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5zdGFydFRpbWVyKE1JTExJU0VDT05EU19EQVkpO1xuICB9XG5cbiAgcHJpdmF0ZSBzdGFydFRpbWVyKHRpbWVvdXQ6IG51bWJlcikge1xuICAgIGNsZWFyVGltZW91dCh0aGlzLnRpbWVySWQpO1xuICAgIHRoaXMudGltZXJJZCA9IHdpbmRvdy5zZXRUaW1lb3V0KCgpID0+IHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpLCB0aW1lb3V0KTtcbiAgfVxufVxuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgRGF0ZVRpbWVQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gIGFic3RyYWN0IGZvcm1hdDogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgdGltZTogVGltZVNlcnZpY2UpIHt9XG5cbiAgdHJhbnNmb3JtKHZhbHVlOiBDb25maWdUeXBlLCB1dGMgPSBmYWxzZSkge1xuICAgIGlmICghdmFsdWU/LnRvU3RyaW5nKCkudHJpbSgpKSB7XG4gICAgICByZXR1cm4gRklFTERfTk9UX0FWQUlMQUJMRV9QTEFDRUhPTERFUjtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy50aW1lLmZvcm1hdCh1dGMgPyBkYXlqcy51dGModmFsdWUpIDogdmFsdWUsIHRoaXMuZm9ybWF0KTtcbiAgfVxufVxuXG5AUGlwZSh7IG5hbWU6ICdhY2xTdGFuZGFyZFRpbWUnLCBzdGFuZGFsb25lOiB0cnVlIH0pXG5leHBvcnQgY2xhc3MgU3RhbmRhcmRUaW1lUGlwZSBleHRlbmRzIERhdGVUaW1lUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICBvdmVycmlkZSBmb3JtYXQgPSBEQVRFX1RJTUVfRk9STUFUO1xufVxuXG5AUGlwZSh7IG5hbWU6ICdhY2xTdGFuZGFyZERhdGUnLCBzdGFuZGFsb25lOiB0cnVlIH0pXG5leHBvcnQgY2xhc3MgU3RhbmRhcmREYXRlUGlwZSBleHRlbmRzIERhdGVUaW1lUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICBvdmVycmlkZSBmb3JtYXQgPSBEQVRFX0ZPUk1BVDtcbn1cbiJdfQ==
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
export const saveAs = (data, filename) => {
|
|
2
|
-
const anchor = document.createElement('a');
|
|
3
|
-
anchor.href = typeof data === 'string' ? data : URL.createObjectURL(data);
|
|
4
|
-
anchor.download = filename;
|
|
5
|
-
anchor.rel = 'noopener';
|
|
6
|
-
anchor.click();
|
|
7
|
-
anchor.remove();
|
|
8
|
-
};
|
|
9
|
-
export function isMac() {
|
|
10
|
-
return /macintosh|mac os x/i.test(navigator.userAgent);
|
|
11
|
-
}
|
|
12
|
-
export function isWindows() {
|
|
13
|
-
return /windows|win32/i.test(navigator.userAgent);
|
|
14
|
-
}
|
|
15
|
-
export const getTopWindow = () => {
|
|
16
|
-
const isInCypress = 'Cypress' in window;
|
|
17
|
-
return isInCypress
|
|
18
|
-
? window.top.document.querySelector('iframe').contentWindow
|
|
19
|
-
: window.top;
|
|
20
|
-
};
|
|
21
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJvd3Nlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvZHluYW1pYy1wbHVnaW4tc2hhcmVkL3NyYy91dGlscy9icm93c2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxNQUFNLE1BQU0sR0FBRyxDQUFDLElBQTBCLEVBQUUsUUFBZ0IsRUFBRSxFQUFFO0lBQ3JFLE1BQU0sTUFBTSxHQUFHLFFBQVEsQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDM0MsTUFBTSxDQUFDLElBQUksR0FBRyxPQUFPLElBQUksS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMxRSxNQUFNLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztJQUMzQixNQUFNLENBQUMsR0FBRyxHQUFHLFVBQVUsQ0FBQztJQUN4QixNQUFNLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDZixNQUFNLENBQUMsTUFBTSxFQUFFLENBQUM7QUFDbEIsQ0FBQyxDQUFDO0FBRUYsTUFBTSxVQUFVLEtBQUs7SUFDbkIsT0FBTyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxDQUFDO0FBQ3pELENBQUM7QUFFRCxNQUFNLFVBQVUsU0FBUztJQUN2QixPQUFPLGdCQUFnQixDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLENBQUM7QUFDcEQsQ0FBQztBQUVELE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBRyxHQUFHLEVBQUU7SUFDL0IsTUFBTSxXQUFXLEdBQUcsU0FBUyxJQUFJLE1BQU0sQ0FBQztJQUN4QyxPQUFPLFdBQVc7UUFDaEIsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQyxhQUFhO1FBQzNELENBQUMsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDO0FBQ2pCLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBzYXZlQXMgPSAoZGF0YTogQmxvYiB8IEZpbGUgfCBzdHJpbmcsIGZpbGVuYW1lOiBzdHJpbmcpID0+IHtcbiAgY29uc3QgYW5jaG9yID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnYScpO1xuICBhbmNob3IuaHJlZiA9IHR5cGVvZiBkYXRhID09PSAnc3RyaW5nJyA/IGRhdGEgOiBVUkwuY3JlYXRlT2JqZWN0VVJMKGRhdGEpO1xuICBhbmNob3IuZG93bmxvYWQgPSBmaWxlbmFtZTtcbiAgYW5jaG9yLnJlbCA9ICdub29wZW5lcic7XG4gIGFuY2hvci5jbGljaygpO1xuICBhbmNob3IucmVtb3ZlKCk7XG59O1xuXG5leHBvcnQgZnVuY3Rpb24gaXNNYWMoKSB7XG4gIHJldHVybiAvbWFjaW50b3NofG1hYyBvcyB4L2kudGVzdChuYXZpZ2F0b3IudXNlckFnZW50KTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzV2luZG93cygpIHtcbiAgcmV0dXJuIC93aW5kb3dzfHdpbjMyL2kudGVzdChuYXZpZ2F0b3IudXNlckFnZW50KTtcbn1cblxuZXhwb3J0IGNvbnN0IGdldFRvcFdpbmRvdyA9ICgpID0+IHtcbiAgY29uc3QgaXNJbkN5cHJlc3MgPSAnQ3lwcmVzcycgaW4gd2luZG93O1xuICByZXR1cm4gaXNJbkN5cHJlc3NcbiAgICA/IHdpbmRvdy50b3AuZG9jdW1lbnQucXVlcnlTZWxlY3RvcignaWZyYW1lJykuY29udGVudFdpbmRvd1xuICAgIDogd2luZG93LnRvcDtcbn07XG4iXX0=
|
|
@@ -1,83 +0,0 @@
|
|
|
1
|
-
import { BehaviorSubject, catchError, filter, map, of, startWith, Subject, switchMap, takeUntil, tap, } from 'rxjs';
|
|
2
|
-
import { isEqual } from './common';
|
|
3
|
-
import { publishRef } from './operators';
|
|
4
|
-
export class CacheStore {
|
|
5
|
-
constructor({ fetcher, share, validator }) {
|
|
6
|
-
this.store = new Map();
|
|
7
|
-
this.forEach = this.store.forEach.bind(this.store);
|
|
8
|
-
this.entries = this.store.entries.bind(this.store);
|
|
9
|
-
this.values = this.store.values.bind(this.store);
|
|
10
|
-
this.keys = this.store.keys.bind(this.store);
|
|
11
|
-
this.fetcher = fetcher;
|
|
12
|
-
this.share = share ?? publishRef;
|
|
13
|
-
this.validator = validator ?? (() => true);
|
|
14
|
-
}
|
|
15
|
-
fetchState(params) {
|
|
16
|
-
let cache = this.get(params);
|
|
17
|
-
if (!cache) {
|
|
18
|
-
const refetch$$ = new BehaviorSubject(null);
|
|
19
|
-
const finish$$ = new Subject();
|
|
20
|
-
cache = {
|
|
21
|
-
refetch: () => {
|
|
22
|
-
refetch$$.next();
|
|
23
|
-
},
|
|
24
|
-
finish: () => {
|
|
25
|
-
finish$$.next();
|
|
26
|
-
finish$$.complete();
|
|
27
|
-
},
|
|
28
|
-
loadState: refetch$$.pipe(switchMap(() => this.fetcher(params).pipe(map(result => ({ state: 'loaded', result })), catchError(error => of({ state: 'loadFailed', error })), startWith({ state: 'loading' }))), tap(loadState => {
|
|
29
|
-
if (loadState.state !== 'loading' && !this.validator(loadState)) {
|
|
30
|
-
for (const [key, value] of this.store.entries()) {
|
|
31
|
-
if (isEqual(key, params)) {
|
|
32
|
-
this.store.delete(key);
|
|
33
|
-
setTimeout(() => {
|
|
34
|
-
value.finish();
|
|
35
|
-
});
|
|
36
|
-
return;
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
}), takeUntil(finish$$), this.share()),
|
|
41
|
-
};
|
|
42
|
-
this.store.set(params, cache);
|
|
43
|
-
}
|
|
44
|
-
return cache.loadState;
|
|
45
|
-
}
|
|
46
|
-
fetch(params) {
|
|
47
|
-
return this.fetchState(params).pipe(filter(loadState => loadState.state === 'loaded'), map(loadState => loadState.result));
|
|
48
|
-
}
|
|
49
|
-
refetch(params) {
|
|
50
|
-
this.get(params)?.refetch();
|
|
51
|
-
}
|
|
52
|
-
refetchAll() {
|
|
53
|
-
this.forEach(cache => {
|
|
54
|
-
cache.refetch();
|
|
55
|
-
});
|
|
56
|
-
}
|
|
57
|
-
get(params) {
|
|
58
|
-
for (const [key, value] of this.store.entries()) {
|
|
59
|
-
if (isEqual(key, params)) {
|
|
60
|
-
return value;
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
has(params) {
|
|
65
|
-
return !!this.get(params);
|
|
66
|
-
}
|
|
67
|
-
delete(params) {
|
|
68
|
-
for (const [key, value] of this.store.entries()) {
|
|
69
|
-
if (isEqual(key, params)) {
|
|
70
|
-
this.store.delete(key);
|
|
71
|
-
value.finish();
|
|
72
|
-
return;
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
clear() {
|
|
77
|
-
this.store.forEach(value => {
|
|
78
|
-
value.finish();
|
|
79
|
-
});
|
|
80
|
-
this.store.clear();
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FjaGUtc3RvcmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2R5bmFtaWMtcGx1Z2luLXNoYXJlZC9zcmMvdXRpbHMvY2FjaGUtc3RvcmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLGVBQWUsRUFDZixVQUFVLEVBQ1YsTUFBTSxFQUNOLEdBQUcsRUFHSCxFQUFFLEVBQ0YsU0FBUyxFQUNULE9BQU8sRUFDUCxTQUFTLEVBQ1QsU0FBUyxFQUNULEdBQUcsR0FDSixNQUFNLE1BQU0sQ0FBQztBQUVkLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDbkMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUV6QyxNQUFNLE9BQU8sVUFBVTtJQU9yQixZQUFZLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQTJCO1FBRmpELFVBQUssR0FBRyxJQUFJLEdBQUcsRUFBZSxDQUFDO1FBcUdoRCxZQUFPLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUU5QyxZQUFPLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUU5QyxXQUFNLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUU1QyxTQUFJLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQXhHdEMsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7UUFDdkIsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLElBQUksVUFBVSxDQUFDO1FBQ2pDLElBQUksQ0FBQyxTQUFT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LENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxHQUFHLENBQUMsTUFBUztRQUNYLEtBQUssTUFBTSxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUM7WUFDaEQsSUFBSSxPQUFPLENBQUMsR0FBRyxFQUFFLE1BQU0sQ0FBQyxFQUFFLENBQUM7Z0JBQ3pCLE9BQU8sS0FBSyxDQUFDO1lBQ2YsQ0FBQztRQUNILENBQUM7SUFDSCxDQUFDO0lBRUQsR0FBRyxDQUFDLE1BQVM7UUFDWCxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzVCLENBQUM7SUFFRCxNQUFNLENBQUMsTUFBUztRQUNkLEtBQUssTUFBTSxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUM7WUFDaEQsSUFBSSxPQUFPLENBQUMsR0FBRyxFQUFFLE1BQU0sQ0FBQyxFQUFFLENBQUM7Z0JBQ3pCLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO2dCQUN2QixLQUFLLENBQUMsTUFBTSxFQUFFLENBQUM7Z0JBQ2YsT0FBTztZQUNULENBQUM7UUFDSCxDQUFDO0lBQ0gsQ0FBQztJQUVELEtBQUs7UUFDSCxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUN6QixLQUFLLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDakIsQ0FBQyxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ3JCLENBQUM7Q0FTRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEJlaGF2aW9yU3ViamVjdCxcbiAgY2F0Y2hFcnJvcixcbiAgZmlsdGVyLFxuICBtYXAsXG4gIE1vbm9UeXBlT3BlcmF0b3JGdW5jdGlvbixcbiAgT2JzZXJ2YWJsZSxcbiAgb2YsXG4gIHN0YXJ0V2l0aCxcbiAgU3ViamVjdCxcbiAgc3dpdGNoTWFwLFxuICB0YWtlVW50aWwsXG4gIHRhcCxcbn0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IGlzRXF1YWwgfSBmcm9tICcuL2NvbW1vbic7XG5pbXBvcnQgeyBwdWJsaXNoUmVmIH0gZnJvbSAnLi9vcGVyYXRvcnMnO1xuXG5leHBvcnQgY2xhc3MgQ2FjaGVTdG9yZTxQLCBWPiB7XG4gIHByaXZhdGUgcmVhZG9ubHkgZmV0Y2hlcjogKHBhcmFtczogUCkgPT4gT2JzZXJ2YWJsZTxWPjtcbiAgcHJpdmF0ZSByZWFkb25seSBzaGFyZTogPFQ+KCkgPT4gTW9ub1R5cGVPcGVyYXRvckZ1bmN0aW9uPFQ+O1xuICBwcml2YXRlIHJlYWRvbmx5IHZhbGlkYXRvcjogKGxvYWRTdGF0ZTogQ2FjaGVMb2FkU3RhdGU8Vj4pID0+IGJvb2xlYW47XG5cbiAgcHJpdmF0ZSByZWFkb25seSBzdG9yZSA9IG5ldyBNYXA8UCwgQ2FjaGU8Vj4+KCk7XG5cbiAgY29uc3RydWN0b3IoeyBmZXRjaGVyLCBzaGFyZSwgdmFsaWRhdG9yIH06IENhY2hlU3RvcmVPcHRpb25zPFAsIFY+KSB7XG4gICAgdGhpcy5mZXRjaGVyID0gZmV0Y2hlcjtcbiAgICB0aGlzLnNoYXJlID0gc2hhcmUgPz8gcHVibGlzaFJlZjtcbiAgICB0aGlzLnZhbGlkYXRvciA9IHZhbGlkYXRvciA/PyAoKCkgPT4gdHJ1ZSk7XG4gIH1cblxuICBmZXRjaFN0YXRlKHBhcmFtczogUCkge1xuICAgIGxldCBjYWNoZSA9IHRoaXMuZ2V0KHBhcmFtcyk7XG5cbiAgICBpZiAoIWNhY2hlKSB7XG4gICAgICBjb25zdCByZWZldGNoJCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHZvaWQ+KG51bGwpO1xuICAgICAgY29uc3QgZmluaXNoJCQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gICAgICBjYWNoZSA9IHtcbiAgICAgICAgcmVmZXRjaDogKCkgPT4ge1xuICAgICAgICAgIHJlZmV0Y2gkJC5uZXh0KCk7XG4gICAgICAgIH0sXG4gICAgICAgIGZpbmlzaDogKCkgPT4ge1xuICAgICAgICAgIGZpbmlzaCQkLm5leHQoKTtcbiAgICAgICAgICBmaW5pc2gkJC5jb21wbGV0ZSgpO1xuICAgICAgICB9LFxuICAgICAgICBsb2FkU3RhdGU6IHJlZmV0Y2gkJC5waXBlKFxuICAgICAgICAgIHN3aXRjaE1hcCgoKSA9PlxuICAgICAgICAgICAgdGhpcy5mZXRjaGVyKHBhcmFtcykucGlwZShcbiAgICAgICAgICAgICAgbWFwKHJlc3VsdCA9PiAoeyBzdGF0ZTogJ2xvYWRlZCcgYXMgY29uc3QsIHJlc3VsdCB9KSksXG4gICAgICAgICAgICAgIGNhdGNoRXJyb3IoZXJyb3IgPT4gb2YoeyBzdGF0ZTogJ2xvYWRGYWlsZWQnIGFzIGNvbnN0LCBlcnJvciB9KSksXG4gICAgICAgICAgICAgIHN0YXJ0V2l0aCh7IHN0YXRlOiAnbG9hZGluZycgYXMgY29uc3QgfSksXG4gICAgICAgICAgICApLFxuICAgICAgICAgICksXG4gICAgICAgICAgdGFwKGxvYWRTdGF0ZSA9PiB7XG4gICAgICAgICAgICBpZiAobG9hZFN0YXRlLnN0YXRlICE9PSAnbG9hZGluZycgJiYgIXRoaXMudmFsaWRhdG9yKGxvYWRTdGF0ZSkpIHtcbiAgICAgICAgICAgICAgZm9yIChjb25zdCBba2V5LCB2YWx1ZV0gb2YgdGhpcy5zdG9yZS5lbnRyaWVzKCkpIHtcbiAgICAgICAgICAgICAgICBpZiAoaXNFcXVhbChrZXksIHBhcmFtcykpIHtcbiAgICAgICAgICAgICAgICAgIHRoaXMuc3RvcmUuZGVsZXRlKGtleSk7XG4gICAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdmFsdWUuZmluaXNoKCk7XG4gICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9KSxcbiAgICAgICAgICB0YWtlVW50aWwoZmluaXNoJCQpLFxuICAgICAgICAgIHRoaXMuc2hhcmUoKSxcbiAgICAgICAgKSxcbiAgICAgIH07XG5cbiAgICAgIHRoaXMuc3RvcmUuc2V0KHBhcmFtcywgY2FjaGUpO1xuICAgIH1cblxuICAgIHJldHVybiBjYWNoZS5sb2FkU3RhdGU7XG4gIH1cblxuICBmZXRjaChwYXJhbXM6IFApIHtcbiAgICByZXR1cm4gdGhpcy5mZXRjaFN0YXRlKHBhcmFtcykucGlwZShcbiAgICAgIGZpbHRlcihsb2FkU3RhdGUgPT4gbG9hZFN0YXRlLnN0YXRlID09PSAnbG9hZGVkJyksXG4gICAgICBtYXAobG9hZFN0YXRlID0+IGxvYWRTdGF0ZS5yZXN1bHQpLFxuICAgICk7XG4gIH1cblxuICByZWZldGNoKHBhcmFtczogUCkge1xuICAgIHRoaXMuZ2V0KHBhcmFtcyk/LnJlZmV0Y2goKTtcbiAgfVxuXG4gIHJlZmV0Y2hBbGwoKSB7XG4gICAgdGhpcy5mb3JFYWNoKGNhY2hlID0+IHtcbiAgICAgIGNhY2hlLnJlZmV0Y2goKTtcbiAgICB9KTtcbiAgfVxuXG4gIGdldChwYXJhbXM6IFApIHtcbiAgICBmb3IgKGNvbnN0IFtrZXksIHZhbHVlXSBvZiB0aGlzLnN0b3JlLmVudHJpZXMoKSkge1xuICAgICAgaWYgKGlzRXF1YWwoa2V5LCBwYXJhbXMpKSB7XG4gICAgICAgIHJldHVybiB2YWx1ZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBoYXMocGFyYW1zOiBQKSB7XG4gICAgcmV0dXJuICEhdGhpcy5nZXQocGFyYW1zKTtcbiAgfVxuXG4gIGRlbGV0ZShwYXJhbXM6IFApIHtcbiAgICBmb3IgKGNvbnN0IFtrZXksIHZhbHVlXSBvZiB0aGlzLnN0b3JlLmVudHJpZXMoKSkge1xuICAgICAgaWYgKGlzRXF1YWwoa2V5LCBwYXJhbXMpKSB7XG4gICAgICAgIHRoaXMuc3RvcmUuZGVsZXRlKGtleSk7XG4gICAgICAgIHZhbHVlLmZpbmlzaCgpO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgY2xlYXIoKSB7XG4gICAgdGhpcy5zdG9yZS5mb3JFYWNoKHZhbHVlID0+IHtcbiAgICAgIHZhbHVlLmZpbmlzaCgpO1xuICAgIH0pO1xuICAgIHRoaXMuc3RvcmUuY2xlYXIoKTtcbiAgfVxuXG4gIGZvckVhY2ggPSB0aGlzLnN0b3JlLmZvckVhY2guYmluZCh0aGlzLnN0b3JlKTtcblxuICBlbnRyaWVzID0gdGhpcy5zdG9yZS5lbnRyaWVzLmJpbmQodGhpcy5zdG9yZSk7XG5cbiAgdmFsdWVzID0gdGhpcy5zdG9yZS52YWx1ZXMuYmluZCh0aGlzLnN0b3JlKTtcblxuICBrZXlzID0gdGhpcy5zdG9yZS5rZXlzLmJpbmQodGhpcy5zdG9yZSk7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ2FjaGVTdG9yZU9wdGlvbnM8UCwgVj4ge1xuICBmZXRjaGVyOiAocGFyYW1zOiBQKSA9PiBPYnNlcnZhYmxlPFY+O1xuICBzaGFyZT86IDxUPigpID0+IE1vbm9UeXBlT3BlcmF0b3JGdW5jdGlvbjxUPjtcbiAgdmFsaWRhdG9yPzogKGxvYWRTdGF0ZTogQ2FjaGVMb2FkU3RhdGU8Vj4pID0+IGJvb2xlYW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ2FjaGVMb2FkU3RhdGU8Vj4ge1xuICBzdGF0ZTogJ2xvYWRpbmcnIHwgJ2xvYWRlZCcgfCAnbG9hZEZhaWxlZCc7XG4gIHJlc3VsdD86IFY7XG4gIGVycm9yPzogdW5rbm93bjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDYWNoZTxWPiB7XG4gIGxvYWRTdGF0ZTogT2JzZXJ2YWJsZTxDYWNoZUxvYWRTdGF0ZTxWPj47XG4gIHJlZmV0Y2g6ICgpID0+IHZvaWQ7XG4gIGZpbmlzaDogKCkgPT4gdm9pZDtcbn1cbiJdfQ==
|
|
@@ -1,137 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @packageDocumentation
|
|
3
|
-
* @module utils
|
|
4
|
-
*/
|
|
5
|
-
import { debounce } from 'lodash-es';
|
|
6
|
-
import { BehaviorSubject } from 'rxjs';
|
|
7
|
-
const checkDescriptor = (target, propertyKey) => {
|
|
8
|
-
const oDescriptor = Object.getOwnPropertyDescriptor(target, propertyKey);
|
|
9
|
-
if (oDescriptor && !oDescriptor.configurable) {
|
|
10
|
-
throw new TypeError(`property ${String(propertyKey)} is not configurable`);
|
|
11
|
-
}
|
|
12
|
-
return {
|
|
13
|
-
oGetter: oDescriptor?.get,
|
|
14
|
-
oSetter: oDescriptor?.set,
|
|
15
|
-
oDescriptor,
|
|
16
|
-
};
|
|
17
|
-
};
|
|
18
|
-
const strictCheckDescriptor = (target, propertyKey) => {
|
|
19
|
-
const { oGetter, oSetter, oDescriptor } = checkDescriptor(target, propertyKey);
|
|
20
|
-
if (oGetter || oSetter) {
|
|
21
|
-
throw new TypeError(`property ${String(propertyKey)} should not define getter or setter`);
|
|
22
|
-
}
|
|
23
|
-
return oDescriptor;
|
|
24
|
-
};
|
|
25
|
-
export function ValueHook(setter, getter, afterSetter) {
|
|
26
|
-
return (target, propertyKey) => {
|
|
27
|
-
const { oGetter, oSetter } = checkDescriptor(target, propertyKey);
|
|
28
|
-
const symbol = Symbol(propertyKey);
|
|
29
|
-
Object.defineProperty(target, propertyKey, {
|
|
30
|
-
enumerable: true,
|
|
31
|
-
configurable: true,
|
|
32
|
-
get() {
|
|
33
|
-
return getter
|
|
34
|
-
? getter.call(this, this[symbol])
|
|
35
|
-
: oGetter
|
|
36
|
-
? oGetter.call(this)
|
|
37
|
-
: this[symbol];
|
|
38
|
-
},
|
|
39
|
-
set(value) {
|
|
40
|
-
if (value === this[propertyKey] ||
|
|
41
|
-
setter?.call(this, value) === false) {
|
|
42
|
-
return;
|
|
43
|
-
}
|
|
44
|
-
if (oSetter) {
|
|
45
|
-
oSetter.call(this, value);
|
|
46
|
-
}
|
|
47
|
-
this[symbol] = value;
|
|
48
|
-
afterSetter?.call(this, value);
|
|
49
|
-
},
|
|
50
|
-
});
|
|
51
|
-
};
|
|
52
|
-
}
|
|
53
|
-
export function ObservableInput(propertyKey = true, initialValue) {
|
|
54
|
-
return (target, oPropertyKey) => {
|
|
55
|
-
if (!oPropertyKey.endsWith('$')) {
|
|
56
|
-
throw new TypeError(`property ${oPropertyKey} should be an Observable and its name should end with $`);
|
|
57
|
-
}
|
|
58
|
-
strictCheckDescriptor(target, oPropertyKey);
|
|
59
|
-
const symbol = Symbol(oPropertyKey);
|
|
60
|
-
// eslint-disable-next-line prefer-const
|
|
61
|
-
let oPropertyValue;
|
|
62
|
-
Object.defineProperty(target, oPropertyKey, {
|
|
63
|
-
enumerable: true,
|
|
64
|
-
configurable: true,
|
|
65
|
-
get() {
|
|
66
|
-
return (this[symbol] ||
|
|
67
|
-
(this[symbol] = new BehaviorSubject(
|
|
68
|
-
// when no initialValue passed in, use the original property val
|
|
69
|
-
initialValue === undefined ? oPropertyValue : initialValue)));
|
|
70
|
-
},
|
|
71
|
-
set(value) {
|
|
72
|
-
this[oPropertyKey].next(value);
|
|
73
|
-
},
|
|
74
|
-
});
|
|
75
|
-
if (!propertyKey) {
|
|
76
|
-
return;
|
|
77
|
-
}
|
|
78
|
-
if (propertyKey === true) {
|
|
79
|
-
propertyKey = oPropertyKey.replace(/\$+$/, '');
|
|
80
|
-
}
|
|
81
|
-
const oDescriptor = strictCheckDescriptor(target, propertyKey);
|
|
82
|
-
oPropertyValue = oDescriptor ? oDescriptor.value : target[propertyKey];
|
|
83
|
-
Object.defineProperty(target, propertyKey, {
|
|
84
|
-
enumerable: true,
|
|
85
|
-
configurable: true,
|
|
86
|
-
get() {
|
|
87
|
-
return this[oPropertyKey].getValue();
|
|
88
|
-
},
|
|
89
|
-
set(value) {
|
|
90
|
-
this[oPropertyKey].next(value);
|
|
91
|
-
},
|
|
92
|
-
});
|
|
93
|
-
};
|
|
94
|
-
}
|
|
95
|
-
/**
|
|
96
|
-
* @see https://github.com/NoHomey/bind-decorator
|
|
97
|
-
*/
|
|
98
|
-
// eslint-disable-next-line @typescript-eslint/ban-types -- intended
|
|
99
|
-
export function bind(_target, propertyKey, descriptor) {
|
|
100
|
-
if (typeof descriptor.value !== 'function') {
|
|
101
|
-
throw new TypeError(`Only methods can be decorated with @bind. <${propertyKey}> is not a method!`);
|
|
102
|
-
}
|
|
103
|
-
return {
|
|
104
|
-
configurable: true,
|
|
105
|
-
get() {
|
|
106
|
-
const bound = descriptor.value.bind(this);
|
|
107
|
-
// Credits to https://github.com/andreypopp/autobind-decorator for memoizing the result of bind against a symbol on the instance.
|
|
108
|
-
Object.defineProperty(this, propertyKey, {
|
|
109
|
-
value: bound,
|
|
110
|
-
configurable: true,
|
|
111
|
-
writable: true,
|
|
112
|
-
});
|
|
113
|
-
return bound;
|
|
114
|
-
},
|
|
115
|
-
};
|
|
116
|
-
}
|
|
117
|
-
// lodash 的 debounce 类型约束要求 (...args: any) => any
|
|
118
|
-
export function debounceFn(delay = 200, options) {
|
|
119
|
-
return function (_target, propertyKey, descriptor) {
|
|
120
|
-
if (typeof descriptor.value !== 'function') {
|
|
121
|
-
throw new TypeError(`Only methods can be decorated with @bind. <${propertyKey}> is not a method!`);
|
|
122
|
-
}
|
|
123
|
-
return {
|
|
124
|
-
configurable: true,
|
|
125
|
-
get() {
|
|
126
|
-
const bound = debounce(descriptor.value, delay, options);
|
|
127
|
-
Object.defineProperty(this, propertyKey, {
|
|
128
|
-
value: bound,
|
|
129
|
-
configurable: true,
|
|
130
|
-
writable: true,
|
|
131
|
-
});
|
|
132
|
-
return bound;
|
|
133
|
-
},
|
|
134
|
-
};
|
|
135
|
-
};
|
|
136
|
-
}
|
|
137
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVjb3JhdG9ycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvZHluYW1pYy1wbHVnaW4tc2hhcmVkL3NyYy91dGlscy9kZWNvcmF0b3JzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7R0FHRztBQUVILE9BQU8sRUFBbUMsUUFBUSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFJdkMsTUFBTSxlQUFlLEdBQUcsQ0FBdUIsTUFBUyxFQUFFLFdBQWMsRUFBRSxFQUFFO0lBQzFFLE1BQU0sV0FBVyxHQUFHLE1BQU0sQ0FBQyx3QkFBd0IsQ0FBQyxNQUFNLEVBQUUsV0FBVyxDQUFDLENBQUM7SUFFekUsSUFBSSxXQUFXLElBQUksQ0FBQyxXQUFXLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDN0MsTUFBTSxJQUFJLFNBQVMsQ0FBQyxZQUFZLE1BQU0sQ0FBQyxXQUFXLENBQUMsc0JBQXNCLENBQUMsQ0FBQztJQUM3RSxDQUFDO0lBRUQsT0FBTztRQUNMLE9BQU8sRUFBRSxXQUFXLEVBQUUsR0FBRztRQUN6QixPQUFPLEVBQUUsV0FBVyxFQUFFLEdBQUc7UUFDekIsV0FBVztLQUNaLENBQUM7QUFDSixDQUFDLENBQUM7QUFFRixNQUFNLHFCQUFxQixHQUFHLENBQzVCLE1BQVMsRUFDVCxXQUFjLEVBQ2QsRUFBRTtJQUNGLE1BQU0sRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLFdBQVcsRUFBRSxHQUFHLGVBQWUsQ0FDdkQsTUFBTSxFQUNOLFdBQVcsQ0FDWixDQUFDO0lBRUYsSUFBSSxPQUFPLElBQUksT0FBTyxFQUFFLENBQUM7UUFDdkIsTUFBTSxJQUFJLFNBQVMsQ0FDakIsWUFBWSxNQUFNLENBQUMsV0FBVyxDQUFDLHFDQUFxQyxDQUNyRSxDQUFDO0lBQ0osQ0FBQztJQUVELE9BQU8sV0FBVyxDQUFDO0FBQ3JCLENBQUMsQ0FBQztBQUVG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QztLQUNGLENBQUM7QUFDSixDQUFDO0FBRUQsaURBQWlEO0FBQ2pELE1BQU0sVUFBVSxVQUFVLENBQ3hCLEtBQUssR0FBRyxHQUFHLEVBQ1gsT0FBMEI7SUFFMUIsT0FBTyxVQUNMLE9BQWUsRUFDZixXQUFtQixFQUNuQixVQUFzQztRQUV0QyxJQUFJLE9BQU8sVUFBVSxDQUFDLEtBQUssS0FBSyxVQUFVLEVBQUUsQ0FBQztZQUMzQyxNQUFNLElBQUksU0FBUyxDQUNqQiw4Q0FBOEMsV0FBVyxvQkFBb0IsQ0FDOUUsQ0FBQztRQUNKLENBQUM7UUFFRCxPQUFPO1lBQ0wsWUFBWSxFQUFFLElBQUk7WUFDbEIsR0FBRztnQkFDRCxNQUFNLEtBQUssR0FBRyxRQUFRLENBQUMsVUFBVSxDQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsT0FBTyxDQUFDLENBQUM7Z0JBQ3pELE1BQU0sQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLFdBQVcsRUFBRTtvQkFDdkMsS0FBSyxFQUFFLEtBQUs7b0JBQ1osWUFBWSxFQUFFLElBQUk7b0JBQ2xCLFFBQVEsRUFBRSxJQUFJO2lCQUNmLENBQUMsQ0FBQztnQkFDSCxPQUFPLEtBQUssQ0FBQztZQUNmLENBQUM7U0FDRixDQUFDO0lBQ0osQ0FBQyxDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQHBhY2thZ2VEb2N1bWVudGF0aW9uXG4gKiBAbW9kdWxlIHV0aWxzXG4gKi9cblxuaW1wb3J0IHsgRGVib3VuY2VTZXR0aW5ncywgRGVib3VuY2VkRnVuYywgZGVib3VuY2UgfSBmcm9tICdsb2Rhc2gtZXMnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IE9ic2VydmFibGVUeXBlIH0gZnJvbSAnLi4vdHlwZXMnO1xuXG5jb25zdCBjaGVja0Rlc2NyaXB0b3IgPSA8VCwgSyBleHRlbmRzIGtleW9mIFQ+KHRhcmdldDogVCwgcHJvcGVydHlLZXk6IEspID0+IHtcbiAgY29uc3Qgb0Rlc2NyaXB0b3IgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHRhcmdldCwgcHJvcGVydHlLZXkpO1xuXG4gIGlmIChvRGVzY3JpcHRvciAmJiAhb0Rlc2NyaXB0b3IuY29uZmlndXJhYmxlKSB7XG4gICAgdGhyb3cgbmV3IFR5cGVFcnJvcihgcHJvcGVydHkgJHtTdHJpbmcocHJvcGVydHlLZXkpfSBpcyBub3QgY29uZmlndXJhYmxlYCk7XG4gIH1cblxuICByZXR1cm4ge1xuICAgIG9HZXR0ZXI6IG9EZXNjcmlwdG9yPy5nZXQsXG4gICAgb1NldHRlcjogb0Rlc2NyaXB0b3I/LnNldCxcbiAgICBvRGVzY3JpcHRvcixcbiAgfTtcbn07XG5cbmNvbnN0IHN0cmljdENoZWNrRGVzY3JpcHRvciA9IDxULCBLIGV4dGVuZHMga2V5b2YgVD4oXG4gIHRhcmdldDogVCxcbiAgcHJvcGVydHlLZXk6IEssXG4pID0+IHtcbiAgY29uc3QgeyBvR2V0dGVyLCBvU2V0dGVyLCBvRGVzY3JpcHRvciB9ID0gY2hlY2tEZXNjcmlwdG9yKFxuICAgIHRhcmdldCxcbiAgICBwcm9wZXJ0eUtleSxcbiAgKTtcblxuICBpZiAob0dldHRlciB8fCBvU2V0dGVyKSB7XG4gICAgdGhyb3cgbmV3IFR5cGVFcnJvcihcbiAgICAgIGBwcm9wZXJ0eSAke1N0cmluZyhwcm9wZXJ0eUtleSl9IHNob3VsZCBub3QgZGVmaW5lIGdldHRlciBvciBzZXR0ZXJgLFxuICAgICk7XG4gIH1cblxuICByZXR1cm4gb0Rlc2NyaXB0b3I7XG59O1xuXG5leHBvcnQgZnVuY3Rpb24gVmFsdWVIb29rPFQgPSBhbnksIEsgZXh0ZW5kcyBrZXlvZiBUID0gYW55PihcbiAgc2V0dGVyPzogKHRoaXM6IFQsIHZhbHVlPzogVFtLXSkgPT4gYm9vbGVhbiB8IHZvaWQsXG4gIGdldHRlcj86ICh0aGlzOiBULCB2YWx1ZT86IFRbS10pID0+IFRbS10sXG4gIGFmdGVyU2V0dGVyPzogKHRoaXM6IFQsIHZhbHVlPzogVFtLXSkgPT4gdm9pZCxcbikge1xuICByZXR1cm4gKHRhcmdldDogVCwgcHJvcGVydHlLZXk6IEspID0+IHtcbiAgICBjb25zdCB7IG9HZXR0ZXIsIG9TZXR0ZXIgfSA9IGNoZWNrRGVzY3JpcHRvcih0YXJnZXQsIHByb3BlcnR5S2V5KTtcblxuICAgIGNvbnN0IHN5bWJvbCA9IFN5bWJvbChwcm9wZXJ0eUtleSBhcyBzdHJpbmcpO1xuXG4gICAgdHlwZSBNaXhlZCA9IFQgJiB7XG4gICAgICBbc3ltYm9sXTogVFtLXTtcbiAgICB9O1xuXG4gICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRhcmdldCwgcHJvcGVydHlLZXksIHtcbiAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICBnZXQodGhpczogTWl4ZWQpIHtcbiAgICAgICAgcmV0dXJuIGdldHRlclxuICAgICAgICAgID8gZ2V0dGVyLmNhbGwodGhpcywgdGhpc1tzeW1ib2xdKVxuICAgICAgICAgIDogb0dldHRlclxuICAgICAgICAgICAgPyBvR2V0dGVyLmNhbGwodGhpcylcbiAgICAgICAgICAgIDogdGhpc1tzeW1ib2xdO1xuICAgICAgfSxcbiAgICAgIHNldCh0aGlzOiBNaXhlZCwgdmFsdWU6IFRbS10pIHtcbiAgICAgICAgaWYgKFxuICAgICAgICAgIHZhbHVlID09PSB0aGlzW3Byb3BlcnR5S2V5XSB8fFxuICAgICAgICAgIHNldHRlcj8uY2FsbCh0aGlzLCB2YWx1ZSkgPT09IGZhbHNlXG4gICAgICAgICkge1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBpZiAob1NldHRlcikge1xuICAgICAgICAgIG9TZXR0ZXIuY2FsbCh0aGlzLCB2YWx1ZSk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpc1tzeW1ib2xdID0gdmFsdWU7XG4gICAgICAgIGFmdGVyU2V0dGVyPy5jYWxsKHRoaXMsIHZhbHVlKTtcbiAgICAgIH0sXG4gICAgfSk7XG4gIH07XG59XG5cbmV4cG9ydCB0eXBlIE9ic2VydmFibGVJbnB1dFByb3BlcnR5S2V5PFQ+ID0gVCBleHRlbmRzIGAke2luZmVyIFJ9JGBcbiAgPyBPYnNlcnZhYmxlSW5wdXRQcm9wZXJ0eUtleTxSPlxuICA6IFQ7XG5cbmV4cG9ydCBmdW5jdGlvbiBPYnNlcnZhYmxlSW5wdXQ8XG4gIFQgPSBhbnksXG4gIE9LIGV4dGVuZHMga2V5b2YgVCA9IGFueSxcbiAgSyBleHRlbmRzIGtleW9mIFQgPSBPYnNlcnZhYmxlSW5wdXRQcm9wZXJ0eUtleTxPSz4gJiBrZXlvZiBULFxuPihwcm9wZXJ0eUtleTogSyB8IGJvb2xlYW4gPSB0cnVlLCBpbml0aWFsVmFsdWU/OiBPYnNlcnZhYmxlVHlwZTxUW09LXT4pIHtcbiAgcmV0dXJuICh0YXJnZXQ6IFQsIG9Qcm9wZXJ0eUtleTogT0spID0+IHtcbiAgICBpZiAoIShvUHJvcGVydHlLZXkgYXMgc3RyaW5nKS5lbmRzV2l0aCgnJCcpKSB7XG4gICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKFxuICAgICAgICBgcHJvcGVydHkgJHtcbiAgICAgICAgICBvUHJvcGVydHlLZXkgYXMgc3RyaW5nXG4gICAgICAgIH0gc2hvdWxkIGJlIGFuIE9ic2VydmFibGUgYW5kIGl0cyBuYW1lIHNob3VsZCBlbmQgd2l0aCAkYCxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgc3RyaWN0Q2hlY2tEZXNjcmlwdG9yKHRhcmdldCwgb1Byb3BlcnR5S2V5KTtcblxuICAgIGNvbnN0IHN5bWJvbCA9IFN5bWJvbChvUHJvcGVydHlLZXkgYXMgc3RyaW5nKTtcblxuICAgIHR5cGUgT1QgPSBPYnNlcnZhYmxlVHlwZTxUW09LXT47XG5cbiAgICB0eXBlIE1peGVkID0gVCAmIHtcbiAgICAgIFtzeW1ib2xdOiBCZWhhdmlvclN1YmplY3Q8T1Q+O1xuICAgIH0gJiBSZWNvcmQ8T0ssIEJlaGF2aW9yU3ViamVjdDxPVD4+O1xuXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHByZWZlci1jb25zdFxuICAgIGxldCBvUHJvcGVydHlWYWx1ZTogT1Q7XG5cbiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGFyZ2V0LCBvUHJvcGVydHlLZXksIHtcbiAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICBnZXQodGhpczogTWl4ZWQpIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICB0aGlzW3N5bWJvbF0gfHxcbiAgICAgICAgICAodGhpc1tzeW1ib2xdID0gbmV3IEJlaGF2aW9yU3ViamVjdChcbiAgICAgICAgICAgIC8vIHdoZW4gbm8gaW5pdGlhbFZhbHVlIHBhc3NlZCBpbiwgdXNlIHRoZSBvcmlnaW5hbCBwcm9wZXJ0eSB2YWxcbiAgICAgICAgICAgIGluaXRpYWxWYWx1ZSA9PT0gdW5kZWZpbmVkID8gb1Byb3BlcnR5VmFsdWUgOiBpbml0aWFsVmFsdWUsXG4gICAgICAgICAgKSlcbiAgICAgICAgKTtcbiAgICAgIH0sXG4gICAgICBzZXQodGhpczogTWl4ZWQsIHZhbHVlOiBPVCkge1xuICAgICAgICB0aGlzW29Qcm9wZXJ0eUtleV0ubmV4dCh2YWx1ZSk7XG4gICAgICB9LFxuICAgIH0pO1xuXG4gICAgaWYgKCFwcm9wZXJ0eUtleSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmIChwcm9wZXJ0eUtleSA9PT0gdHJ1ZSkge1xuICAgICAgcHJvcGVydHlLZXkgPSAob1Byb3BlcnR5S2V5IGFzIHN0cmluZykucmVwbGFjZSgvXFwkKyQvLCAnJykgYXMgSztcbiAgICB9XG5cbiAgICBjb25zdCBvRGVzY3JpcHRvciA9IHN0cmljdENoZWNrRGVzY3JpcHRvcih0YXJnZXQsIHByb3BlcnR5S2V5KTtcbiAgICBvUHJvcGVydHlWYWx1ZSA9IG9EZXNjcmlwdG9yID8gb0Rlc2NyaXB0b3IudmFsdWUgOiB0YXJnZXRbcHJvcGVydHlLZXldO1xuXG4gICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRhcmdldCwgcHJvcGVydHlLZXksIHtcbiAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICBnZXQodGhpczogTWl4ZWQpIHtcbiAgICAgICAgcmV0dXJuIHRoaXNbb1Byb3BlcnR5S2V5XS5nZXRWYWx1ZSgpO1xuICAgICAgfSxcbiAgICAgIHNldCh0aGlzOiBNaXhlZCwgdmFsdWU6IE9UKSB7XG4gICAgICAgIHRoaXNbb1Byb3BlcnR5S2V5XS5uZXh0KHZhbHVlKTtcbiAgICAgIH0sXG4gICAgfSk7XG4gIH07XG59XG5cbi8qKlxuICogQHNlZSBodHRwczovL2dpdGh1Yi5jb20vTm9Ib21leS9iaW5kLWRlY29yYXRvclxuICovXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L2Jhbi10eXBlcyAtLSBpbnRlbmRlZFxuZXhwb3J0IGZ1bmN0aW9uIGJpbmQ8VCBleHRlbmRzIEZ1bmN0aW9uPihcbiAgX3RhcmdldDogb2JqZWN0LFxuICBwcm9wZXJ0eUtleTogc3RyaW5nLFxuICBkZXNjcmlwdG9yOiBUeXBlZFByb3BlcnR5RGVzY3JpcHRvcjxUPixcbik6IFR5cGVkUHJvcGVydHlEZXNjcmlwdG9yPFQ+IHwgdm9pZCB7XG4gIGlmICh0eXBlb2YgZGVzY3JpcHRvci52YWx1ZSAhPT0gJ2Z1bmN0aW9uJykge1xuICAgIHRocm93IG5ldyBUeXBlRXJyb3IoXG4gICAgICBgT25seSBtZXRob2RzIGNhbiBiZSBkZWNvcmF0ZWQgd2l0aCBAYmluZC4gPCR7cHJvcGVydHlLZXl9PiBpcyBub3QgYSBtZXRob2QhYCxcbiAgICApO1xuICB9XG5cbiAgcmV0dXJuIHtcbiAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgZ2V0KHRoaXM6IFQpOiBUIHtcbiAgICAgIGNvbnN0IGJvdW5kOiBUID0gZGVzY3JpcHRvci52YWx1ZS5iaW5kKHRoaXMpO1xuICAgICAgLy8gQ3JlZGl0cyB0byBodHRwczovL2dpdGh1Yi5jb20vYW5kcmV5cG9wcC9hdXRvYmluZC1kZWNvcmF0b3IgZm9yIG1lbW9pemluZyB0aGUgcmVzdWx0IG9mIGJpbmQgYWdhaW5zdCBhIHN5bWJvbCBvbiB0aGUgaW5zdGFuY2UuXG4gICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgcHJvcGVydHlLZXksIHtcbiAgICAgICAgdmFsdWU6IGJvdW5kLFxuICAgICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgICAgfSk7XG4gICAgICByZXR1cm4gYm91bmQ7XG4gICAgfSxcbiAgfTtcbn1cblxuLy8gbG9kYXNoIOeahCBkZWJvdW5jZSDnsbvlnovnuqbmnZ/opoHmsYIgKC4uLmFyZ3M6IGFueSkgPT4gYW55XG5leHBvcnQgZnVuY3Rpb24gZGVib3VuY2VGbjxUIGV4dGVuZHMgKC4uLmFyZ3M6IGFueSkgPT4gYW55PihcbiAgZGVsYXkgPSAyMDAsXG4gIG9wdGlvbnM/OiBEZWJvdW5jZVNldHRpbmdzLFxuKSB7XG4gIHJldHVybiBmdW5jdGlvbiAoXG4gICAgX3RhcmdldDogb2JqZWN0LFxuICAgIHByb3BlcnR5S2V5OiBzdHJpbmcsXG4gICAgZGVzY3JpcHRvcjogVHlwZWRQcm9wZXJ0eURlc2NyaXB0b3I8VD4sXG4gICk6IFR5cGVkUHJvcGVydHlEZXNjcmlwdG9yPERlYm91bmNlZEZ1bmM8VD4+IHwgdm9pZCB7XG4gICAgaWYgKHR5cGVvZiBkZXNjcmlwdG9yLnZhbHVlICE9PSAnZnVuY3Rpb24nKSB7XG4gICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKFxuICAgICAgICBgT25seSBtZXRob2RzIGNhbiBiZSBkZWNvcmF0ZWQgd2l0aCBAYmluZC4gPCR7cHJvcGVydHlLZXl9PiBpcyBub3QgYSBtZXRob2QhYCxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHtcbiAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgIGdldCh0aGlzOiBUKTogRGVib3VuY2VkRnVuYzxUPiB7XG4gICAgICAgIGNvbnN0IGJvdW5kID0gZGVib3VuY2UoZGVzY3JpcHRvci52YWx1ZSwgZGVsYXksIG9wdGlvbnMpO1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgcHJvcGVydHlLZXksIHtcbiAgICAgICAgICB2YWx1ZTogYm91bmQsXG4gICAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIGJvdW5kO1xuICAgICAgfSxcbiAgICB9O1xuICB9O1xufVxuIl19
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import { DestroyRef, assertInInjectionContext, inject } from '@angular/core';
|
|
2
|
-
import { isNumber } from 'lodash-es';
|
|
3
|
-
import { EMPTY, Observable, Subject, of, catchError, delay, startWith, switchMap, tap, defer, } from 'rxjs';
|
|
4
|
-
import { publishRef } from './operators';
|
|
5
|
-
export const createPollObservable = (fetch$, pollIn) => {
|
|
6
|
-
const INIT_VALUE = 'Initialize';
|
|
7
|
-
const subject = new Subject();
|
|
8
|
-
const createDelayObservable = () => (isNumber(pollIn) ? of(pollIn) : pollIn).pipe(switchMap(pi => (pi === 0 ? EMPTY : of(null).pipe(delay(pi)))));
|
|
9
|
-
return subject.pipe(startWith(INIT_VALUE), switchMap(value => value === INIT_VALUE ? of(null) : createDelayObservable()), switchMap(() => fetch$.pipe(catchError((_) => of(null)))), tap(() => {
|
|
10
|
-
subject.next();
|
|
11
|
-
}), publishRef());
|
|
12
|
-
};
|
|
13
|
-
// https://github.com/angular/angular/blob/6fefbe8fca6e96549416a27c14e02957da1291e7/packages/core/rxjs-interop/src/take_until_destroyed.ts#L23
|
|
14
|
-
export function onDestroy(destroyRef) {
|
|
15
|
-
if (!destroyRef) {
|
|
16
|
-
assertInInjectionContext(onDestroy);
|
|
17
|
-
destroyRef = inject(DestroyRef);
|
|
18
|
-
}
|
|
19
|
-
return new Observable(observer => {
|
|
20
|
-
return destroyRef.onDestroy(observer.next.bind(observer));
|
|
21
|
-
});
|
|
22
|
-
}
|
|
23
|
-
export const tapSkip = (nEmissions, callback) => (source$) => defer(() => {
|
|
24
|
-
let counter = 0;
|
|
25
|
-
return source$.pipe(tap(item => {
|
|
26
|
-
if (counter >= nEmissions) {
|
|
27
|
-
callback(item);
|
|
28
|
-
}
|
|
29
|
-
counter++;
|
|
30
|
-
}));
|
|
31
|
-
});
|
|
32
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2JzZXJ2YWJsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvZHluYW1pYy1wbHVnaW4tc2hhcmVkL3NyYy91dGlscy9vYnNlcnZhYmxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzdFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDckMsT0FBTyxFQUNMLEtBQUssRUFDTCxVQUFVLEVBQ1YsT0FBTyxFQUNQLEVBQUUsRUFDRixVQUFVLEVBQ1YsS0FBSyxFQUNMLFNBQVMsRUFDVCxTQUFTLEVBQ1QsR0FBRyxFQUNILEtBQUssR0FDTixNQUFNLE1BQU0sQ0FBQztBQUVkLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFekMsTUFBTSxDQUFDLE1BQU0sb0JBQW9CLEdBQUcsQ0FDbEMsTUFBMkIsRUFDM0IsTUFBbUMsRUFDZCxFQUFFO0lBQ3ZCLE1BQU0sVUFBVSxHQUFHLFlBQVksQ0FBQztJQUNoQyxNQUFNLE9BQU8sR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO0lBRXBDLE1BQU0scUJBQXFCLEdBQUcsR0FBRyxFQUFFLENBQ2pDLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQUksQ0FDM0MsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUMvRCxDQUFDO0lBRUosT0FBTyxPQUFPLENBQUMsSUFBSSxDQUNqQixTQUFTLENBQUMsVUFBVSxDQUFDLEVBQ3JCLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUNoQixLQUFLLEtBQUssVUFBVSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLHFCQUFxQixFQUFFLENBQzFELEVBQ0QsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBVSxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQ2xFLEdBQUcsQ0FBQyxHQUFHLEVBQUU7UUFDUCxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDakIsQ0FBQyxDQUFDLEVBQ0YsVUFBVSxFQUFFLENBQ2IsQ0FBQztBQUNKLENBQUMsQ0FBQztBQUVGLDhJQUE4STtBQUM5SSxNQUFNLFVBQVUsU0FBUyxDQUFDLFVBQXVCO0lBQy9DLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUNoQix3QkFBd0IsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUNwQyxVQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFFRCxPQUFPLElBQUksVUFBVSxDQUFDLFFBQVEsQ0FBQyxFQUFFO1FBQy9CLE9BQU8sVUFBVSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO0lBQzVELENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQztBQUVELE1BQU0sQ0FBQyxNQUFNLE9BQU8sR0FDbEIsQ0FBSSxVQUFrQixFQUFFLFFBQTJCLEVBQUUsRUFBRSxDQUN2RCxDQUFDLE9BQXNCLEVBQWlCLEVBQUUsQ0FDeEMsS0FBSyxDQUFDLEdBQUcsRUFBRTtJQUNULElBQUksT0FBTyxHQUFHLENBQUMsQ0FBQztJQUNoQixPQUFPLE9BQU8sQ0FBQyxJQUFJLENBQ2pCLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRTtRQUNULElBQUksT0FBTyxJQUFJLFVBQVUsRUFBRSxDQUFDO1lBQzFCLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNqQixDQUFDO1FBQ0QsT0FBTyxFQUFFLENBQUM7SUFDWixDQUFDLENBQUMsQ0FDSCxDQUFDO0FBQ0osQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEZXN0cm95UmVmLCBhc3NlcnRJbkluamVjdGlvbkNvbnRleHQsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgaXNOdW1iZXIgfSBmcm9tICdsb2Rhc2gtZXMnO1xuaW1wb3J0IHtcbiAgRU1QVFksXG4gIE9ic2VydmFibGUsXG4gIFN1YmplY3QsXG4gIG9mLFxuICBjYXRjaEVycm9yLFxuICBkZWxheSxcbiAgc3RhcnRXaXRoLFxuICBzd2l0Y2hNYXAsXG4gIHRhcCxcbiAgZGVmZXIsXG59IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBwdWJsaXNoUmVmIH0gZnJvbSAnLi9vcGVyYXRvcnMnO1xuXG5leHBvcnQgY29uc3QgY3JlYXRlUG9sbE9ic2VydmFibGUgPSA8VFJlc3VsdD4oXG4gIGZldGNoJDogT2JzZXJ2YWJsZTxUUmVzdWx0PixcbiAgcG9sbEluOiBudW1iZXIgfCBPYnNlcnZhYmxlPG51bWJlcj4sXG4pOiBPYnNlcnZhYmxlPFRSZXN1bHQ+ID0+IHtcbiAgY29uc3QgSU5JVF9WQUxVRSA9ICdJbml0aWFsaXplJztcbiAgY29uc3Qgc3ViamVjdCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgY29uc3QgY3JlYXRlRGVsYXlPYnNlcnZhYmxlID0gKCkgPT5cbiAgICAoaXNOdW1iZXIocG9sbEluKSA/IG9mKHBvbGxJbikgOiBwb2xsSW4pLnBpcGUoXG4gICAgICBzd2l0Y2hNYXAocGkgPT4gKHBpID09PSAwID8gRU1QVFkgOiBvZihudWxsKS5waXBlKGRlbGF5KHBpKSkpKSxcbiAgICApO1xuXG4gIHJldHVybiBzdWJqZWN0LnBpcGUoXG4gICAgc3RhcnRXaXRoKElOSVRfVkFMVUUpLFxuICAgIHN3aXRjaE1hcCh2YWx1ZSA9PlxuICAgICAgdmFsdWUgPT09IElOSVRfVkFMVUUgPyBvZihudWxsKSA6IGNyZWF0ZURlbGF5T2JzZXJ2YWJsZSgpLFxuICAgICksXG4gICAgc3dpdGNoTWFwKCgpID0+IGZldGNoJC5waXBlKGNhdGNoRXJyb3IoKF86IHVua25vd24pID0+IG9mKG51bGwpKSkpLFxuICAgIHRhcCgoKSA9PiB7XG4gICAgICBzdWJqZWN0Lm5leHQoKTtcbiAgICB9KSxcbiAgICBwdWJsaXNoUmVmKCksXG4gICk7XG59O1xuXG4vLyBodHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci9hbmd1bGFyL2Jsb2IvNmZlZmJlOGZjYTZlOTY1NDk0MTZhMjdjMTRlMDI5NTdkYTEyOTFlNy9wYWNrYWdlcy9jb3JlL3J4anMtaW50ZXJvcC9zcmMvdGFrZV91bnRpbF9kZXN0cm95ZWQudHMjTDIzXG5leHBvcnQgZnVuY3Rpb24gb25EZXN0cm95KGRlc3Ryb3lSZWY/OiBEZXN0cm95UmVmKTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gIGlmICghZGVzdHJveVJlZikge1xuICAgIGFzc2VydEluSW5qZWN0aW9uQ29udGV4dChvbkRlc3Ryb3kpO1xuICAgIGRlc3Ryb3lSZWYgPSBpbmplY3QoRGVzdHJveVJlZik7XG4gIH1cblxuICByZXR1cm4gbmV3IE9ic2VydmFibGUob2JzZXJ2ZXIgPT4ge1xuICAgIHJldHVybiBkZXN0cm95UmVmLm9uRGVzdHJveShvYnNlcnZlci5uZXh0LmJpbmQob2JzZXJ2ZXIpKTtcbiAgfSk7XG59XG5cbmV4cG9ydCBjb25zdCB0YXBTa2lwID1cbiAgPFQ+KG5FbWlzc2lvbnM6IG51bWJlciwgY2FsbGJhY2s6IChhcmdzOiBUKSA9PiB2b2lkKSA9PlxuICAoc291cmNlJDogT2JzZXJ2YWJsZTxUPik6IE9ic2VydmFibGU8VD4gPT5cbiAgICBkZWZlcigoKSA9PiB7XG4gICAgICBsZXQgY291bnRlciA9IDA7XG4gICAgICByZXR1cm4gc291cmNlJC5waXBlKFxuICAgICAgICB0YXAoaXRlbSA9PiB7XG4gICAgICAgICAgaWYgKGNvdW50ZXIgPj0gbkVtaXNzaW9ucykge1xuICAgICAgICAgICAgY2FsbGJhY2soaXRlbSk7XG4gICAgICAgICAgfVxuICAgICAgICAgIGNvdW50ZXIrKztcbiAgICAgICAgfSksXG4gICAgICApO1xuICAgIH0pO1xuIl19
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @packageDocumentation
|
|
3
|
-
* @module utils
|
|
4
|
-
*/
|
|
5
|
-
import { isDevMode } from '@angular/core';
|
|
6
|
-
import { get } from 'lodash-es';
|
|
7
|
-
import { EMPTY, Observable, ReplaySubject, catchError, concatWith, filter, from, ignoreElements, map, of, pipe, share, shareReplay, startWith, switchMap, takeUntil, } from 'rxjs';
|
|
8
|
-
import { onDestroy } from './observable';
|
|
9
|
-
export const publishRef = (bufferSizeOrConfig = {}) => {
|
|
10
|
-
const { bufferSize = 1, windowTime, timestampProvider, connector = () => new ReplaySubject(bufferSize, windowTime, timestampProvider), resetOnError = false, resetOnComplete = false, resetOnRefCountZero = true, } = typeof bufferSizeOrConfig === 'number'
|
|
11
|
-
? {
|
|
12
|
-
bufferSize: bufferSizeOrConfig,
|
|
13
|
-
}
|
|
14
|
-
: bufferSizeOrConfig;
|
|
15
|
-
return share({
|
|
16
|
-
connector,
|
|
17
|
-
resetOnError,
|
|
18
|
-
resetOnComplete,
|
|
19
|
-
resetOnRefCountZero,
|
|
20
|
-
});
|
|
21
|
-
};
|
|
22
|
-
export const shareUntil = (destroy$, bufferSize = 1, windowTime, scheduler) => pipe(takeUntil(destroy$), shareReplay(bufferSize, windowTime, scheduler));
|
|
23
|
-
export const skipError = (mapped = EMPTY, debug = false) => catchError(err => {
|
|
24
|
-
if (isDevMode() && debug) {
|
|
25
|
-
console.error(err);
|
|
26
|
-
}
|
|
27
|
-
return mapped instanceof Observable ? mapped : of(mapped);
|
|
28
|
-
});
|
|
29
|
-
export const catchPromise = (promise, mapped) => from(promise).pipe(skipError(mapped));
|
|
30
|
-
const NULL = Symbol('null');
|
|
31
|
-
export const startWithCondition = (condition, value) => (source) => source.pipe(startWith(condition ? value : NULL), filter(value => value !== NULL));
|
|
32
|
-
export const shareUntilDestroyed = (destroyRef, bufferSize, windowTime, scheduler) => shareUntil(onDestroy(destroyRef), bufferSize, windowTime, scheduler);
|
|
33
|
-
export const safePluck = (...properties) => pipe(map(source => get(source, properties)));
|
|
34
|
-
export function switchTap(arg) {
|
|
35
|
-
const next = typeof arg === 'function' ? arg : (_x) => arg;
|
|
36
|
-
return switchMap(value => next(value).pipe(ignoreElements(), concatWith(of(value))));
|
|
37
|
-
}
|
|
38
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3BlcmF0b3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9keW5hbWljLXBsdWdpbi1zaGFyZWQvc3JjL3V0aWxzL29wZXJhdG9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7O0dBR0c7QUFFSCxPQUFPLEVBQWMsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3RELE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDaEMsT0FBTyxFQUNMLEtBQUssRUFFTCxVQUFVLEVBQ1YsYUFBYSxFQUdiLFVBQVUsRUFDVixVQUFVLEVBQ1YsTUFBTSxFQUNOLElBQUksRUFDSixjQUFjLEVBQ2QsR0FBRyxFQUNILEVBQUUsRUFDRixJQUFJLEVBQ0osS0FBSyxFQUNMLFdBQVcsRUFDWCxTQUFTLEVBQ1QsU0FBUyxFQUNULFNBQVMsR0FDVixNQUFNLE1BQU0sQ0FBQztBQUVkLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFVekMsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHLENBQUkscUJBQTBDLEVBQUUsRUFBRSxFQUFFO0lBQzVFLE1BQU0sRUFDSixVQUFVLEdBQUcsQ0FBQyxFQUNkLFVBQVUsRUFDVixpQkFBaUIsRUFDakIsU0FBUyxHQUFHLEdBQUcsRUFBRSxDQUNmLElBQUksYUFBYSxDQUFDLFVBQVUsRUFBRSxVQUFVLEVBQUUsaUJBQWlCLENBQUMsRUFDOUQsWUFBWSxHQUFHLEtBQUssRUFDcEIsZUFBZSxHQUFHLEtBQUssRUFDdkIsbUJBQW1CLEdBQUcsSUFBSSxHQUMzQixHQUFHLE9BQU8sa0JBQWtCLEtBQUssUUFBUTtRQUN4QyxDQUFDLENBQUU7WUFDQyxVQUFVLEVBQUUsa0JBQWtCO1NBQ1U7UUFDNUMsQ0FBQyxDQUFDLGtCQUFrQixDQUFDO0lBQ3ZCLE9BQU8sS0FBSyxDQUFJO1FBQ2QsU0FBUztRQUNULFlBQVk7UUFDWixlQUFlO1FBQ2YsbUJBQW1CO0tBQ3BCLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBRyxDQUN4QixRQUE2QixFQUM3QixVQUFVLEdBQUcsQ0FBQyxFQUNkLFVBQW1CLEVBQ25CLFNBQXlCLEVBQ3pCLEVBQUUsQ0FDRixJQUFJLENBQUMsU0FBUyxDQUFJLFFBQVEsQ0FBQyxFQUFFLFdBQVcsQ0FBQyxVQUFVLEVBQUUsVUFBVSxFQUFFLFNBQVMsQ0FBQyxDQUFDLENBQUM7QUFFL0UsTUFBTSxDQUFDLE1BQU0sU0FBUyxHQUFHLENBQ3ZCLFNBQTRCLEtBQUssRUFDakMsS0FBSyxHQUFHLEtBQUssRUFDYixFQUFFLENBQ0YsVUFBVSxDQUFtQixHQUFHLENBQUMsRUFBRTtJQUNqQyxJQUFJLFNBQVMsRUFBRSxJQUFJLEtBQUssRUFBRSxDQUFDO1FBQ3pCLE9BQU8sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDckIsQ0FBQztJQUNELE9BQU8sTUFBTSxZQUFZLFVBQVUsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLENBQUM7QUFDNUQsQ0FBQyxDQUFDLENBQUM7QUFFTCxNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUcsQ0FDMUIsT0FBbUIsRUFDbkIsTUFBMEIsRUFDMUIsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7QUFFM0MsTUFBTSxJQUFJLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0FBRTVCLE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUM3QixDQUFJLFNBQWtCLEVBQUUsS0FBUSxFQUFFLEVBQUUsQ0FDcEMsQ0FBQyxNQUFxQixFQUFFLEVBQUUsQ0FDeEIsTUFBTSxDQUFDLElBQUksQ0FDVCxTQUFTLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUNuQyxNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLENBQ2hDLENBQUM7QUFFTixNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBRyxDQUNqQyxVQUF1QixFQUN2QixVQUFtQixFQUNuQixVQUFtQixFQUNuQixTQUF5QixFQUN6QixFQUFFLENBQUMsVUFBVSxDQUFJLFNBQVMsQ0FBQyxVQUFVLENBQUMsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFNBQVMsQ0FBQyxDQUFDO0FBRTdFLE1BQU0sQ0FBQyxNQUFNLFNBQVMsR0FBRyxDQUFDLEdBQUcsVUFBa0MsRUFBRSxFQUFFLENBQ2pFLElBQUksQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsTUFBTSxFQUFFLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQVMvQyxNQUFNLFVBQVUsU0FBUyxDQUN2QixHQUE4QztJQUU5QyxNQUFNLElBQUksR0FDUixPQUFPLEdBQUcsS0FBSyxVQUFVLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFPLEVBQWlCLEVBQUUsQ0FBQyxHQUFHLENBQUM7SUFDcEUsT0FBTyxTQUFTLENBQW1CLEtBQUssQ0FBQyxFQUFFLENBQ3pDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFLEVBQUUsVUFBVSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQzFELENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAcGFja2FnZURvY3VtZW50YXRpb25cbiAqIEBtb2R1bGUgdXRpbHNcbiAqL1xuXG5pbXBvcnQgeyBEZXN0cm95UmVmLCBpc0Rldk1vZGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGdldCB9IGZyb20gJ2xvZGFzaC1lcyc7XG5pbXBvcnQge1xuICBFTVBUWSxcbiAgTW9ub1R5cGVPcGVyYXRvckZ1bmN0aW9uLFxuICBPYnNlcnZhYmxlLFxuICBSZXBsYXlTdWJqZWN0LFxuICBTY2hlZHVsZXJMaWtlLFxuICBUaW1lc3RhbXBQcm92aWRlcixcbiAgY2F0Y2hFcnJvcixcbiAgY29uY2F0V2l0aCxcbiAgZmlsdGVyLFxuICBmcm9tLFxuICBpZ25vcmVFbGVtZW50cyxcbiAgbWFwLFxuICBvZixcbiAgcGlwZSxcbiAgc2hhcmUsXG4gIHNoYXJlUmVwbGF5LFxuICBzdGFydFdpdGgsXG4gIHN3aXRjaE1hcCxcbiAgdGFrZVVudGlsLFxufSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgb25EZXN0cm95IH0gZnJvbSAnLi9vYnNlcnZhYmxlJztcblxuZXhwb3J0IHR5cGUgUHVibGlzaFJlZkNvbmZpZzxUPiA9XG4gIHwgbnVtYmVyXG4gIHwgKGltcG9ydCgncnhqcy9pbnRlcm5hbC9vcGVyYXRvcnMvc2hhcmUnKS5TaGFyZUNvbmZpZzxUPiAmIHtcbiAgICAgIGJ1ZmZlclNpemU/OiBudW1iZXI7XG4gICAgICB3aW5kb3dUaW1lPzogbnVtYmVyO1xuICAgICAgdGltZXN0YW1wUHJvdmlkZXI/OiBUaW1lc3RhbXBQcm92aWRlcjtcbiAgICB9KTtcblxuZXhwb3J0IGNvbnN0IHB1Ymxpc2hSZWYgPSA8VD4oYnVmZmVyU2l6ZU9yQ29uZmlnOiBQdWJsaXNoUmVmQ29uZmlnPFQ+ID0ge30pID0+IHtcbiAgY29uc3Qge1xuICAgIGJ1ZmZlclNpemUgPSAxLFxuICAgIHdpbmRvd1RpbWUsXG4gICAgdGltZXN0YW1wUHJvdmlkZXIsXG4gICAgY29ubmVjdG9yID0gKCkgPT5cbiAgICAgIG5ldyBSZXBsYXlTdWJqZWN0KGJ1ZmZlclNpemUsIHdpbmRvd1RpbWUsIHRpbWVzdGFtcFByb3ZpZGVyKSxcbiAgICByZXNldE9uRXJyb3IgPSBmYWxzZSxcbiAgICByZXNldE9uQ29tcGxldGUgPSBmYWxzZSxcbiAgICByZXNldE9uUmVmQ291bnRaZXJvID0gdHJ1ZSxcbiAgfSA9IHR5cGVvZiBidWZmZXJTaXplT3JDb25maWcgPT09ICdudW1iZXInXG4gICAgPyAoe1xuICAgICAgICBidWZmZXJTaXplOiBidWZmZXJTaXplT3JDb25maWcsXG4gICAgICB9IGFzIEV4Y2x1ZGU8UHVibGlzaFJlZkNvbmZpZzxUPiwgbnVtYmVyPilcbiAgICA6IGJ1ZmZlclNpemVPckNvbmZpZztcbiAgcmV0dXJuIHNoYXJlPFQ+KHtcbiAgICBjb25uZWN0b3IsXG4gICAgcmVzZXRPbkVycm9yLFxuICAgIHJlc2V0T25Db21wbGV0ZSxcbiAgICByZXNldE9uUmVmQ291bnRaZXJvLFxuICB9KTtcbn07XG5cbmV4cG9ydCBjb25zdCBzaGFyZVVudGlsID0gPFQ+KFxuICBkZXN0cm95JDogT2JzZXJ2YWJsZTx1bmtub3duPixcbiAgYnVmZmVyU2l6ZSA9IDEsXG4gIHdpbmRvd1RpbWU/OiBudW1iZXIsXG4gIHNjaGVkdWxlcj86IFNjaGVkdWxlckxpa2UsXG4pID0+XG4gIHBpcGUodGFrZVVudGlsPFQ+KGRlc3Ryb3kkKSwgc2hhcmVSZXBsYXkoYnVmZmVyU2l6ZSwgd2luZG93VGltZSwgc2NoZWR1bGVyKSk7XG5cbmV4cG9ydCBjb25zdCBza2lwRXJyb3IgPSA8VCwgUiA9IG5ldmVyPihcbiAgbWFwcGVkOiBSIHwgT2JzZXJ2YWJsZTxSPiA9IEVNUFRZLFxuICBkZWJ1ZyA9IGZhbHNlLFxuKSA9PlxuICBjYXRjaEVycm9yPFQsIE9ic2VydmFibGU8Uj4+KGVyciA9PiB7XG4gICAgaWYgKGlzRGV2TW9kZSgpICYmIGRlYnVnKSB7XG4gICAgICBjb25zb2xlLmVycm9yKGVycik7XG4gICAgfVxuICAgIHJldHVybiBtYXBwZWQgaW5zdGFuY2VvZiBPYnNlcnZhYmxlID8gbWFwcGVkIDogb2YobWFwcGVkKTtcbiAgfSk7XG5cbmV4cG9ydCBjb25zdCBjYXRjaFByb21pc2UgPSA8VCwgUiA9IG5ldmVyPihcbiAgcHJvbWlzZTogUHJvbWlzZTxUPixcbiAgbWFwcGVkPzogUiB8IE9ic2VydmFibGU8Uj4sXG4pID0+IGZyb20ocHJvbWlzZSkucGlwZShza2lwRXJyb3IobWFwcGVkKSk7XG5cbmNvbnN0IE5VTEwgPSBTeW1ib2woJ251bGwnKTtcblxuZXhwb3J0IGNvbnN0IHN0YXJ0V2l0aENvbmRpdGlvbiA9XG4gIDxUPihjb25kaXRpb246IGJvb2xlYW4sIHZhbHVlOiBUKSA9PlxuICAoc291cmNlOiBPYnNlcnZhYmxlPFQ+KSA9PlxuICAgIHNvdXJjZS5waXBlKFxuICAgICAgc3RhcnRXaXRoKGNvbmRpdGlvbiA/IHZhbHVlIDogTlVMTCksXG4gICAgICBmaWx0ZXIodmFsdWUgPT4gdmFsdWUgIT09IE5VTEwpLFxuICAgICk7XG5cbmV4cG9ydCBjb25zdCBzaGFyZVVudGlsRGVzdHJveWVkID0gPFQ+KFxuICBkZXN0cm95UmVmPzogRGVzdHJveVJlZixcbiAgYnVmZmVyU2l6ZT86IG51bWJlcixcbiAgd2luZG93VGltZT86IG51bWJlcixcbiAgc2NoZWR1bGVyPzogU2NoZWR1bGVyTGlrZSxcbikgPT4gc2hhcmVVbnRpbDxUPihvbkRlc3Ryb3koZGVzdHJveVJlZiksIGJ1ZmZlclNpemUsIHdpbmRvd1RpbWUsIHNjaGVkdWxlcik7XG5cbmV4cG9ydCBjb25zdCBzYWZlUGx1Y2sgPSAoLi4ucHJvcGVydGllczogQXJyYXk8c3RyaW5nIHwgbnVtYmVyPikgPT5cbiAgcGlwZShtYXAoc291cmNlID0+IGdldChzb3VyY2UsIHByb3BlcnRpZXMpKSk7XG5cbi8vIHJlZmVyZW5jZSBodHRwczovL2dpdGh1Yi5jb20vUmVhY3RpdmVYL3J4anMvaXNzdWVzLzMzNTNcbmV4cG9ydCBmdW5jdGlvbiBzd2l0Y2hUYXA8VCwgUj4oXG4gIG5leHQ6ICh4OiBUKSA9PiBPYnNlcnZhYmxlPFI+LFxuKTogTW9ub1R5cGVPcGVyYXRvckZ1bmN0aW9uPFQ+O1xuZXhwb3J0IGZ1bmN0aW9uIHN3aXRjaFRhcDxSPihcbiAgb2JzZXJ2YWJsZTogT2JzZXJ2YWJsZTxSPixcbik6IE1vbm9UeXBlT3BlcmF0b3JGdW5jdGlvbjxSPjtcbmV4cG9ydCBmdW5jdGlvbiBzd2l0Y2hUYXA8VCwgUj4oXG4gIGFyZzogT2JzZXJ2YWJsZTxUPiB8ICgoeDogVCkgPT4gT2JzZXJ2YWJsZTxSPiksXG4pOiBNb25vVHlwZU9wZXJhdG9yRnVuY3Rpb248VD4ge1xuICBjb25zdCBuZXh0OiAoeDogVCkgPT4gT2JzZXJ2YWJsZTxUIHwgUj4gPVxuICAgIHR5cGVvZiBhcmcgPT09ICdmdW5jdGlvbicgPyBhcmcgOiAoX3g6IGFueSk6IE9ic2VydmFibGU8VD4gPT4gYXJnO1xuICByZXR1cm4gc3dpdGNoTWFwPFQsIE9ic2VydmFibGU8VD4+KHZhbHVlID0+XG4gICAgbmV4dCh2YWx1ZSkucGlwZShpZ25vcmVFbGVtZW50cygpLCBjb25jYXRXaXRoKG9mKHZhbHVlKSkpLFxuICApO1xufVxuIl19
|
package/esm2022/utils/router.mjs
DELETED
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { inject } from '@angular/core';
|
|
2
|
-
import { ActivatedRoute, NavigationEnd, Router, } from '@angular/router';
|
|
3
|
-
import { distinctUntilChanged, filter, map, startWith } from 'rxjs';
|
|
4
|
-
import { publishRef } from './operators';
|
|
5
|
-
export function getParamFromParent(key, snapshot) {
|
|
6
|
-
const value = snapshot.paramMap.get(key);
|
|
7
|
-
if (value) {
|
|
8
|
-
return value;
|
|
9
|
-
}
|
|
10
|
-
if (snapshot.parent) {
|
|
11
|
-
return getParamFromParent(key, snapshot.parent);
|
|
12
|
-
}
|
|
13
|
-
return '';
|
|
14
|
-
}
|
|
15
|
-
export function initParamFromParent$(key) {
|
|
16
|
-
const router = inject(Router);
|
|
17
|
-
const route = inject(ActivatedRoute);
|
|
18
|
-
return router.events.pipe(filter(e => e instanceof NavigationEnd), map(({ url }) => url), startWith(route.url), distinctUntilChanged(), map(() => getParamFromParent(key, route.snapshot)), publishRef());
|
|
19
|
-
}
|
|
20
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9keW5hbWljLXBsdWdpbi1zaGFyZWQvc3JjL3V0aWxzL3JvdXRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFDTCxjQUFjLEVBRWQsYUFBYSxFQUNiLE1BQU0sR0FDUCxNQUFNLGlCQUFpQixDQUFDO0FBQ3pCLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUVwRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRXpDLE1BQU0sVUFBVSxrQkFBa0IsQ0FDaEMsR0FBVyxFQUNYLFFBQWdDO0lBRWhDLE1BQU0sS0FBSyxHQUFHLFFBQVEsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3pDLElBQUksS0FBSyxFQUFFLENBQUM7UUFDVixPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFDRCxJQUFJLFFBQVEsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNwQixPQUFPLGtCQUFrQixDQUFDLEdBQUcsRUFBRSxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDbEQsQ0FBQztJQUNELE9BQU8sRUFBRSxDQUFDO0FBQ1osQ0FBQztBQUVELE1BQU0sVUFBVSxvQkFBb0IsQ0FBQyxHQUFXO0lBQzlDLE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUM5QixNQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDckMsT0FBTyxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FDdkIsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxZQUFZLGFBQWEsQ0FBQyxFQUN2QyxHQUFHLENBQUMsQ0FBQyxFQUFFLEdBQUcsRUFBaUIsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLEVBQ3BDLFNBQVMsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEVBQ3BCLG9CQUFvQixFQUFFLEVBQ3RCLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQ2xELFVBQVUsRUFBRSxDQUNiLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBBY3RpdmF0ZWRSb3V0ZSxcbiAgQWN0aXZhdGVkUm91dGVTbmFwc2hvdCxcbiAgTmF2aWdhdGlvbkVuZCxcbiAgUm91dGVyLFxufSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgZGlzdGluY3RVbnRpbENoYW5nZWQsIGZpbHRlciwgbWFwLCBzdGFydFdpdGggfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgcHVibGlzaFJlZiB9IGZyb20gJy4vb3BlcmF0b3JzJztcblxuZXhwb3J0IGZ1bmN0aW9uIGdldFBhcmFtRnJvbVBhcmVudChcbiAga2V5OiBzdHJpbmcsXG4gIHNuYXBzaG90OiBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90LFxuKTogc3RyaW5nIHtcbiAgY29uc3QgdmFsdWUgPSBzbmFwc2hvdC5wYXJhbU1hcC5nZXQoa2V5KTtcbiAgaWYgKHZhbHVlKSB7XG4gICAgcmV0dXJuIHZhbHVlO1xuICB9XG4gIGlmIChzbmFwc2hvdC5wYXJlbnQpIHtcbiAgICByZXR1cm4gZ2V0UGFyYW1Gcm9tUGFyZW50KGtleSwgc25hcHNob3QucGFyZW50KTtcbiAgfVxuICByZXR1cm4gJyc7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpbml0UGFyYW1Gcm9tUGFyZW50JChrZXk6IHN0cmluZykge1xuICBjb25zdCByb3V0ZXIgPSBpbmplY3QoUm91dGVyKTtcbiAgY29uc3Qgcm91dGUgPSBpbmplY3QoQWN0aXZhdGVkUm91dGUpO1xuICByZXR1cm4gcm91dGVyLmV2ZW50cy5waXBlKFxuICAgIGZpbHRlcihlID0+IGUgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uRW5kKSxcbiAgICBtYXAoKHsgdXJsIH06IE5hdmlnYXRpb25FbmQpID0+IHVybCksXG4gICAgc3RhcnRXaXRoKHJvdXRlLnVybCksXG4gICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICBtYXAoKCkgPT4gZ2V0UGFyYW1Gcm9tUGFyZW50KGtleSwgcm91dGUuc25hcHNob3QpKSxcbiAgICBwdWJsaXNoUmVmKCksXG4gICk7XG59XG4iXX0=
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @packageDocumentation
|
|
3
|
-
* @module utils
|
|
4
|
-
*/
|
|
5
|
-
import { PipeTransform } from '@angular/core';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
export declare const FIELD_NOT_AVAILABLE_PLACEHOLDER = "-";
|
|
8
|
-
export declare const isFieldNotAvailable: (field: unknown) => boolean;
|
|
9
|
-
export declare class FieldNotAvailablePipe implements PipeTransform {
|
|
10
|
-
transform(field: unknown): string;
|
|
11
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<FieldNotAvailablePipe, never>;
|
|
12
|
-
static ɵpipe: i0.ɵɵPipeDeclaration<FieldNotAvailablePipe, "aclFieldNotAvailable", true>;
|
|
13
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { PipeTransform } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
export declare class ImgHeaderPipe implements PipeTransform {
|
|
4
|
-
transform(value: string, prefix?: string): string;
|
|
5
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<ImgHeaderPipe, never>;
|
|
6
|
-
static ɵpipe: i0.ɵɵPipeDeclaration<ImgHeaderPipe, "aclImageHeader", true>;
|
|
7
|
-
}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { ThemeService } from '@alauda/ui';
|
|
2
|
-
import { ChangeDetectorRef, OnDestroy, PipeTransform } from '@angular/core';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
export declare class ImgThemePipe implements PipeTransform, OnDestroy {
|
|
5
|
-
private readonly theme;
|
|
6
|
-
private readonly cdr;
|
|
7
|
-
private readonly destroy$$;
|
|
8
|
-
constructor(theme: ThemeService, cdr: ChangeDetectorRef);
|
|
9
|
-
transform(value: string): string;
|
|
10
|
-
ngOnDestroy(): void;
|
|
11
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<ImgThemePipe, never>;
|
|
12
|
-
static ɵpipe: i0.ɵɵPipeDeclaration<ImgThemePipe, "aclImageTheme", true>;
|
|
13
|
-
}
|
package/pipes/keyvalue.pipe.d.ts
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { KeyValuePipe as _KeyValuePipe } from '@angular/common';
|
|
2
|
-
import { PipeTransform } from '@angular/core';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
export declare const asIsComparator: (_a: unknown, _b: unknown) => number;
|
|
5
|
-
export declare class KeyValuePipe extends _KeyValuePipe implements PipeTransform {
|
|
6
|
-
transform<K extends keyof any, V>(input: Record<K, V>): import("@angular/common").KeyValue<string, V>[];
|
|
7
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<KeyValuePipe, never>;
|
|
8
|
-
static ɵpipe: i0.ɵɵPipeDeclaration<KeyValuePipe, "aclKeyvalue", true>;
|
|
9
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { PipeTransform } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
export declare class ParseJsonPipe implements PipeTransform {
|
|
4
|
-
transform(value: string): any;
|
|
5
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<ParseJsonPipe, never>;
|
|
6
|
-
static ɵpipe: i0.ɵɵPipeDeclaration<ParseJsonPipe, "aclParseJson", true>;
|
|
7
|
-
}
|
package/pipes/pure.pipe.d.ts
DELETED
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @packageDocumentation
|
|
3
|
-
* @module utils
|
|
4
|
-
*/
|
|
5
|
-
import { PipeTransform } from '@angular/core';
|
|
6
|
-
import { IfEqual } from '../types';
|
|
7
|
-
import * as i0 from "@angular/core";
|
|
8
|
-
export type OmitFirst<T extends unknown[]> = T extends [unknown, ...infer R] ? R : [];
|
|
9
|
-
export declare class PurePipe implements PipeTransform {
|
|
10
|
-
/**
|
|
11
|
-
* ! Notice: function overload is not supported for `mapper`,
|
|
12
|
-
* you may have to use `$any` to workaround in template.
|
|
13
|
-
*/
|
|
14
|
-
transform<T extends (...args: unknown[]) => unknown>(value: Parameters<T>[0], mapper: T, ...args: IfEqual<T, any, unknown[], OmitFirst<Parameters<T>>>): ReturnType<T>;
|
|
15
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<PurePipe, never>;
|
|
16
|
-
static ɵpipe: i0.ɵɵPipeDeclaration<PurePipe, "pure", true>;
|
|
17
|
-
}
|
package/pipes/safe.pipe.d.ts
DELETED
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { PipeTransform } from '@angular/core';
|
|
2
|
-
import { DomSanitizer, SafeHtml, SafeResourceUrl, SafeScript, SafeStyle, SafeUrl } from '@angular/platform-browser';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
export declare class SafePipe implements PipeTransform {
|
|
5
|
-
private readonly sanitizer;
|
|
6
|
-
constructor(sanitizer: DomSanitizer);
|
|
7
|
-
transform(value: string, type: string): SafeHtml | SafeStyle | SafeScript | SafeUrl | SafeResourceUrl;
|
|
8
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<SafePipe, never>;
|
|
9
|
-
static ɵpipe: i0.ɵɵPipeDeclaration<SafePipe, "aclSafe", true>;
|
|
10
|
-
}
|