@alauda-fe/common 1.2.1 → 1.3.0-beta.1
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/api/api-gateway.service.d.ts +1 -11
- package/api/public-api.d.ts +0 -1
- package/array-form-table/key-value-form/component.d.ts +3 -2
- package/async-data/async-data.module.d.ts +6 -0
- package/authorization/public-api.d.ts +1 -0
- package/authorization/state.service.d.ts +13 -20
- package/authorization/storage-token.d.ts +11 -0
- package/chart/common/tooltip/tooltip.component.d.ts +2 -1
- package/core/abstract/base-form-container.d.ts +1 -1
- package/core/constants/tokens.d.ts +0 -18
- package/core/module.d.ts +16 -15
- package/core/services/k8s-util.service.d.ts +0 -5
- package/core/types/k8s/crd.d.ts +2 -1
- package/core/utils/common.d.ts +2 -1
- package/esm2022/api/api-gateway.service.mjs +10 -20
- package/esm2022/api/product.service.mjs +4 -4
- package/esm2022/api/project-api.service.mjs +4 -4
- package/esm2022/api/public-api.mjs +1 -2
- package/esm2022/array-form-table/key-value-form/component.mjs +65 -43
- package/esm2022/async-data/async-data.module.mjs +17 -5
- package/esm2022/authorization/public-api.mjs +2 -1
- package/esm2022/authorization/state.service.mjs +86 -115
- package/esm2022/authorization/storage-token.mjs +82 -0
- package/esm2022/business/resource-select/exports/cluster-selector/component.mjs +2 -2
- package/esm2022/business/resource-select/exports/mesh-group-selector/component.mjs +2 -2
- package/esm2022/business/resource-select/exports/namespace-selector/component.mjs +2 -2
- package/esm2022/business/resource-select/exports/project-selector/component.mjs +2 -2
- package/esm2022/business/resource-select/module.mjs +9 -9
- package/esm2022/chart/chart.module.mjs +1 -1
- package/esm2022/chart/common/tooltip/tooltip.component.mjs +5 -2
- package/esm2022/core/abstract/base-form-container.mjs +1 -1
- package/esm2022/core/abstract/base-nested-form-control.mjs +2 -2
- package/esm2022/core/constants/tokens.mjs +1 -46
- package/esm2022/core/module.mjs +10 -3
- package/esm2022/core/pipes/page-env.pipe.mjs +6 -3
- package/esm2022/core/services/feature-gate.service.mjs +3 -3
- package/esm2022/core/services/k8s-util.service.mjs +1 -13
- package/esm2022/core/types/k8s/crd.mjs +1 -1
- package/esm2022/core/utils/common.mjs +11 -9
- package/esm2022/disabled-container/disabled-container.component.mjs +2 -2
- package/esm2022/form/validators/utils.mjs +37 -34
- package/esm2022/graph-canvas/graph-store.service.mjs +2 -2
- package/esm2022/help-document/service.mjs +3 -2
- package/esm2022/lazy-component/lazy-load-component.mjs +138 -0
- package/esm2022/lazy-component/public-api.mjs +14 -0
- package/esm2022/lazy-component/visibility.service.mjs +37 -0
- package/esm2022/list-display/component.mjs +159 -0
- package/esm2022/list-display/public-api.mjs +2 -0
- package/esm2022/metric-chart/metric-chart.component.mjs +2 -2
- package/esm2022/multi-search/action-input/component.mjs +2 -2
- package/esm2022/notification/feedback-notification/component.mjs +10 -4
- package/esm2022/notification/public-api.mjs +1 -2
- package/esm2022/page-scaffold/navigation/lottie-icons/animation-data.mjs +3 -1
- package/esm2022/page-scaffold/navigation/lottie-icons/animations/dashboard.json +1 -0
- package/esm2022/page-scaffold/navigation/nav-menu/nav-menu.types.mjs +1 -1
- package/esm2022/page-scaffold/page-header/common-layout/product-select/component.mjs +10 -13
- package/esm2022/page-scaffold/page-header/help-menu/component/component.mjs +3 -3
- package/esm2022/public-api.mjs +4 -4
- package/esm2022/table/component.mjs +5 -5
- package/esm2022/table/types.mjs +1 -1
- package/esm2022/translate/translate.service.mjs +7 -1
- package/esm2022/view-chart/view-chart.module.mjs +1 -1
- package/esm2022/view-zchart/custom-template/dropdown-legend.mjs +3 -3
- package/esm2022/view-zchart/legend/legend.component.mjs +8 -8
- package/esm2022/view-zchart/units.mjs +13 -1
- package/esm2022/view-zchart/view-zchart.component.mjs +2 -2
- package/esm2022/view-zchart/view-zchart.module.mjs +1 -1
- package/esm2022/widget/foldable-item-in-table/component.mjs +2 -2
- package/esm2022/widget/search-panel/component.mjs +4 -4
- package/esm2022/window-channel/plugin-window-channel.service.mjs +8 -3
- package/esm2022/xterm/xterm-terminal/xterm-terminal.component.mjs +66 -69
- package/esm2022/xterm/xterm.component.mjs +11 -3
- package/form/validators/utils.d.ts +7 -0
- package/lazy-component/lazy-load-component.d.ts +25 -0
- package/lazy-component/public-api.d.ts +9 -0
- package/lazy-component/visibility.service.d.ts +11 -0
- package/list-display/component.d.ts +15 -0
- package/list-display/public-api.d.ts +1 -0
- package/notification/feedback-notification/component.d.ts +1 -5
- package/notification/public-api.d.ts +0 -1
- package/package.json +1 -1
- package/page-scaffold/navigation/nav-menu/nav-menu.types.d.ts +1 -0
- package/page-scaffold/page-header/common-layout/product-select/component.d.ts +1 -2
- package/public-api.d.ts +3 -3
- package/styles/global.scss +6 -0
- package/styles/mixins.scss +20 -0
- package/styles/reset-browser.scss +4 -0
- package/styles/tailwind-preset.scss +1 -1
- package/table/types.d.ts +2 -0
- package/translate/translate.service.d.ts +2 -0
- package/view-zchart/custom-template/dropdown-legend.d.ts +1 -1
- package/view-zchart/units.d.ts +3 -0
- package/xterm/xterm-terminal/xterm-terminal.component.d.ts +4 -3
- package/xterm/xterm.component.d.ts +4 -2
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { Injectable, ElementRef } from '@angular/core';
|
|
2
|
+
import { Subject, filter, map } from 'rxjs';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class VisibilityService {
|
|
5
|
+
constructor() {
|
|
6
|
+
this.observer = new IntersectionObserver(entries => {
|
|
7
|
+
entries.forEach(entry => {
|
|
8
|
+
if (entry.isIntersecting) {
|
|
9
|
+
const target = entry.target;
|
|
10
|
+
this.visibilityChangeSubject.next({
|
|
11
|
+
element: new ElementRef(target),
|
|
12
|
+
isVisible: entry.isIntersecting,
|
|
13
|
+
});
|
|
14
|
+
}
|
|
15
|
+
});
|
|
16
|
+
}, {
|
|
17
|
+
threshold: 0.1,
|
|
18
|
+
});
|
|
19
|
+
this.visibilityChangeSubject = new Subject();
|
|
20
|
+
}
|
|
21
|
+
observe(element) {
|
|
22
|
+
this.observer.observe(element.nativeElement);
|
|
23
|
+
return this.visibilityChangeSubject.pipe(filter(({ element: el }) => el.nativeElement === element.nativeElement), map(({ isVisible }) => isVisible));
|
|
24
|
+
}
|
|
25
|
+
unobserve(element) {
|
|
26
|
+
this.observer.unobserve(element.nativeElement);
|
|
27
|
+
}
|
|
28
|
+
static { this.ɵfac = function VisibilityService_Factory(t) { return new (t || VisibilityService)(); }; }
|
|
29
|
+
static { this.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: VisibilityService, factory: VisibilityService.ɵfac, providedIn: 'root' }); }
|
|
30
|
+
}
|
|
31
|
+
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(VisibilityService, [{
|
|
32
|
+
type: Injectable,
|
|
33
|
+
args: [{
|
|
34
|
+
providedIn: 'root',
|
|
35
|
+
}]
|
|
36
|
+
}], null, null); })();
|
|
37
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlzaWJpbGl0eS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL2xhenktY29tcG9uZW50L3Zpc2liaWxpdHkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2RCxPQUFPLEVBQWMsT0FBTyxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7O0FBS3hELE1BQU0sT0FBTyxpQkFBaUI7SUFIOUI7UUFJbUIsYUFBUSxHQUFHLElBQUksb0JBQW9CLENBQ2xELE9BQU8sQ0FBQyxFQUFFO1lBQ1IsT0FBTyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRTtnQkFDdEIsSUFBSSxLQUFLLENBQUMsY0FBYyxFQUFFO29CQUN4QixNQUFNLE1BQU0sR0FBRyxLQUFLLENBQUMsTUFBcUIsQ0FBQztvQkFDM0MsSUFBSSxDQUFDLHVCQUF1QixDQUFDLElBQUksQ0FBQzt3QkFDaEMsT0FBTyxFQUFFLElBQUksVUFBVSxDQUFDLE1BQU0sQ0FBQzt3QkFDL0IsU0FBUyxFQUFFLEtBQUssQ0FBQyxjQUFjO3FCQUNoQyxDQUFDLENBQUM7aUJBQ0o7WUFDSCxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsRUFDRDtZQUNFLFNBQVMsRUFBRSxHQUFHO1NBQ2YsQ0FDRixDQUFDO1FBRWUsNEJBQXVCLEdBR25DLElBQUksT0FBTyxFQUFFLENBQUM7S0FhcEI7SUFYQyxPQUFPLENBQUMsT0FBbUI7UUFDekIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQzdDLE9BQU8sSUFBSSxDQUFDLHVCQUF1QixDQUFDLElBQUksQ0FDdEMsTUFBTSxDQUFDLENBQUMsRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxhQUFhLEtBQUssT0FBTyxDQUFDLGFBQWEsQ0FBQyxFQUN2RSxHQUFHLENBQUMsQ0FBQyxFQUFFLFNBQVMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxTQUFTLENBQUMsQ0FDbEMsQ0FBQztJQUNKLENBQUM7SUFFRCxTQUFTLENBQUMsT0FBbUI7UUFDM0IsSUFBSSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQ2pELENBQUM7a0ZBakNVLGlCQUFpQjt1RUFBakIsaUJBQWlCLFdBQWpCLGlCQUFpQixtQkFGaEIsTUFBTTs7dUZBRVAsaUJBQWlCO2NBSDdCLFVBQVU7ZUFBQztnQkFDVixVQUFVLEVBQUUsTUFBTTthQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIEVsZW1lbnRSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUsIFN1YmplY3QsIGZpbHRlciwgbWFwIH0gZnJvbSAncnhqcyc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBWaXNpYmlsaXR5U2VydmljZSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgb2JzZXJ2ZXIgPSBuZXcgSW50ZXJzZWN0aW9uT2JzZXJ2ZXIoXG4gICAgZW50cmllcyA9PiB7XG4gICAgICBlbnRyaWVzLmZvckVhY2goZW50cnkgPT4ge1xuICAgICAgICBpZiAoZW50cnkuaXNJbnRlcnNlY3RpbmcpIHtcbiAgICAgICAgICBjb25zdCB0YXJnZXQgPSBlbnRyeS50YXJnZXQgYXMgSFRNTEVsZW1lbnQ7XG4gICAgICAgICAgdGhpcy52aXNpYmlsaXR5Q2hhbmdlU3ViamVjdC5uZXh0KHtcbiAgICAgICAgICAgIGVsZW1lbnQ6IG5ldyBFbGVtZW50UmVmKHRhcmdldCksXG4gICAgICAgICAgICBpc1Zpc2libGU6IGVudHJ5LmlzSW50ZXJzZWN0aW5nLFxuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9LFxuICAgIHtcbiAgICAgIHRocmVzaG9sZDogMC4xLFxuICAgIH0sXG4gICk7XG5cbiAgcHJpdmF0ZSByZWFkb25seSB2aXNpYmlsaXR5Q2hhbmdlU3ViamVjdDogU3ViamVjdDx7XG4gICAgZWxlbWVudDogRWxlbWVudFJlZjtcbiAgICBpc1Zpc2libGU6IGJvb2xlYW47XG4gIH0+ID0gbmV3IFN1YmplY3QoKTtcblxuICBvYnNlcnZlKGVsZW1lbnQ6IEVsZW1lbnRSZWYpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICB0aGlzLm9ic2VydmVyLm9ic2VydmUoZWxlbWVudC5uYXRpdmVFbGVtZW50KTtcbiAgICByZXR1cm4gdGhpcy52aXNpYmlsaXR5Q2hhbmdlU3ViamVjdC5waXBlKFxuICAgICAgZmlsdGVyKCh7IGVsZW1lbnQ6IGVsIH0pID0+IGVsLm5hdGl2ZUVsZW1lbnQgPT09IGVsZW1lbnQubmF0aXZlRWxlbWVudCksXG4gICAgICBtYXAoKHsgaXNWaXNpYmxlIH0pID0+IGlzVmlzaWJsZSksXG4gICAgKTtcbiAgfVxuXG4gIHVub2JzZXJ2ZShlbGVtZW50OiBFbGVtZW50UmVmKSB7XG4gICAgdGhpcy5vYnNlcnZlci51bm9ic2VydmUoZWxlbWVudC5uYXRpdmVFbGVtZW50KTtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
import { TooltipModule } from '@alauda/ui';
|
|
2
|
+
import { NgFor, NgIf, NgTemplateOutlet } from '@angular/common';
|
|
3
|
+
import { ChangeDetectionStrategy, Component, ContentChild, Input, TemplateRef, } from '@angular/core';
|
|
4
|
+
import { PurePipe } from '../core/public-api';
|
|
5
|
+
import { EffectDirectiveModule } from '../effect-directive/module';
|
|
6
|
+
import { TRANSLATE_MODULE } from '../translate/translate.module';
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
import * as i1 from "../translate/translate.pipe";
|
|
9
|
+
import * as i2 from "@alauda/ui";
|
|
10
|
+
import * as i3 from "../effect-directive/e2e-attribute-binding.directive";
|
|
11
|
+
function ListDisplayComponent_li_2_ng_container_1_Template(rf, ctx) { if (rf & 1) {
|
|
12
|
+
i0.ɵɵelementContainer(0);
|
|
13
|
+
} }
|
|
14
|
+
function ListDisplayComponent_li_2_Template(rf, ctx) { if (rf & 1) {
|
|
15
|
+
i0.ɵɵelementStart(0, "li");
|
|
16
|
+
i0.ɵɵtemplate(1, ListDisplayComponent_li_2_ng_container_1_Template, 1, 0, "ng-container", 5);
|
|
17
|
+
i0.ɵɵpipe(2, "pure");
|
|
18
|
+
i0.ɵɵelementEnd();
|
|
19
|
+
} if (rf & 2) {
|
|
20
|
+
const item_r6 = ctx.$implicit;
|
|
21
|
+
const ctx_r0 = i0.ɵɵnextContext();
|
|
22
|
+
i0.ɵɵadvance(1);
|
|
23
|
+
i0.ɵɵproperty("ngTemplateOutlet", ctx_r0.childTemplate || ctx_r0.template)("ngTemplateOutletContext", i0.ɵɵpipeBind2(2, 2, item_r6, ctx_r0.templateContext));
|
|
24
|
+
} }
|
|
25
|
+
function ListDisplayComponent_div_3_ng_container_1_Template(rf, ctx) { if (rf & 1) {
|
|
26
|
+
i0.ɵɵelementContainerStart(0);
|
|
27
|
+
i0.ɵɵtext(1);
|
|
28
|
+
i0.ɵɵpipe(2, "translate");
|
|
29
|
+
i0.ɵɵelementStart(3, "a", 7);
|
|
30
|
+
i0.ɵɵtext(4);
|
|
31
|
+
i0.ɵɵelementEnd();
|
|
32
|
+
i0.ɵɵtext(5);
|
|
33
|
+
i0.ɵɵpipe(6, "translate");
|
|
34
|
+
i0.ɵɵelementContainerEnd();
|
|
35
|
+
} if (rf & 2) {
|
|
36
|
+
const ctx_r8 = i0.ɵɵnextContext(2);
|
|
37
|
+
const _r2 = i0.ɵɵreference(5);
|
|
38
|
+
i0.ɵɵadvance(1);
|
|
39
|
+
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(2, 4, "in_total"), " ");
|
|
40
|
+
i0.ɵɵadvance(2);
|
|
41
|
+
i0.ɵɵproperty("auiTooltip", _r2);
|
|
42
|
+
i0.ɵɵadvance(1);
|
|
43
|
+
i0.ɵɵtextInterpolate1(" ", ctx_r8.data.length, " ");
|
|
44
|
+
i0.ɵɵadvance(1);
|
|
45
|
+
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(6, 6, "ge"), " ");
|
|
46
|
+
} }
|
|
47
|
+
const _c0 = function (a0) { return { data: a0 }; };
|
|
48
|
+
function ListDisplayComponent_div_3_ng_container_2_Template(rf, ctx) { if (rf & 1) {
|
|
49
|
+
i0.ɵɵelementContainerStart(0);
|
|
50
|
+
i0.ɵɵtext(1);
|
|
51
|
+
i0.ɵɵpipe(2, "translate");
|
|
52
|
+
i0.ɵɵelementStart(3, "a", 8);
|
|
53
|
+
i0.ɵɵtext(4);
|
|
54
|
+
i0.ɵɵelementEnd();
|
|
55
|
+
i0.ɵɵtext(5);
|
|
56
|
+
i0.ɵɵpipe(6, "translate");
|
|
57
|
+
i0.ɵɵelementContainerEnd();
|
|
58
|
+
} if (rf & 2) {
|
|
59
|
+
const ctx_r9 = i0.ɵɵnextContext(2);
|
|
60
|
+
const _r4 = i0.ɵɵreference(7);
|
|
61
|
+
i0.ɵɵadvance(1);
|
|
62
|
+
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(2, 5, "more"), " ");
|
|
63
|
+
i0.ɵɵadvance(2);
|
|
64
|
+
i0.ɵɵproperty("auiTooltip", _r4)("auiTooltipContext", i0.ɵɵpureFunction1(9, _c0, ctx_r9.data.slice(ctx_r9.threshold)));
|
|
65
|
+
i0.ɵɵadvance(1);
|
|
66
|
+
i0.ɵɵtextInterpolate1(" ", ctx_r9.data.slice(ctx_r9.threshold).length, " ");
|
|
67
|
+
i0.ɵɵadvance(1);
|
|
68
|
+
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(6, 7, "tiao"), " ");
|
|
69
|
+
} }
|
|
70
|
+
const _c1 = function (a0) { return { "tw-ml-8": a0 }; };
|
|
71
|
+
function ListDisplayComponent_div_3_Template(rf, ctx) { if (rf & 1) {
|
|
72
|
+
i0.ɵɵelementStart(0, "div");
|
|
73
|
+
i0.ɵɵtemplate(1, ListDisplayComponent_div_3_ng_container_1_Template, 7, 8, "ng-container", 6);
|
|
74
|
+
i0.ɵɵtemplate(2, ListDisplayComponent_div_3_ng_container_2_Template, 7, 11, "ng-container", 6);
|
|
75
|
+
i0.ɵɵelementEnd();
|
|
76
|
+
} if (rf & 2) {
|
|
77
|
+
const ctx_r1 = i0.ɵɵnextContext();
|
|
78
|
+
i0.ɵɵclassMap(i0.ɵɵpureFunction1(4, _c1, ctx_r1.direction === "row"));
|
|
79
|
+
i0.ɵɵadvance(1);
|
|
80
|
+
i0.ɵɵproperty("ngIf", ctx_r1.mode === "total");
|
|
81
|
+
i0.ɵɵadvance(1);
|
|
82
|
+
i0.ɵɵproperty("ngIf", ctx_r1.mode === "more");
|
|
83
|
+
} }
|
|
84
|
+
function ListDisplayComponent_ng_template_4_Template(rf, ctx) { if (rf & 1) {
|
|
85
|
+
i0.ɵɵelement(0, "acl-list-display", 9);
|
|
86
|
+
} if (rf & 2) {
|
|
87
|
+
const ctx_r3 = i0.ɵɵnextContext();
|
|
88
|
+
i0.ɵɵproperty("data", ctx_r3.data)("template", ctx_r3.childTemplate || ctx_r3.template);
|
|
89
|
+
} }
|
|
90
|
+
function ListDisplayComponent_ng_template_6_Template(rf, ctx) { if (rf & 1) {
|
|
91
|
+
i0.ɵɵelement(0, "acl-list-display", 9);
|
|
92
|
+
} if (rf & 2) {
|
|
93
|
+
const data_r10 = ctx.data;
|
|
94
|
+
const ctx_r5 = i0.ɵɵnextContext();
|
|
95
|
+
i0.ɵɵproperty("data", data_r10)("template", ctx_r5.childTemplate || ctx_r5.template);
|
|
96
|
+
} }
|
|
97
|
+
const _c2 = function (a0) { return { "tw-flex-col": a0 }; };
|
|
98
|
+
export class ListDisplayComponent {
|
|
99
|
+
constructor() {
|
|
100
|
+
this.mode = 'total';
|
|
101
|
+
this.direction = 'column';
|
|
102
|
+
}
|
|
103
|
+
templateContext(item) {
|
|
104
|
+
return {
|
|
105
|
+
...item,
|
|
106
|
+
$implicit: item,
|
|
107
|
+
};
|
|
108
|
+
}
|
|
109
|
+
static { this.ɵfac = function ListDisplayComponent_Factory(t) { return new (t || ListDisplayComponent)(); }; }
|
|
110
|
+
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ListDisplayComponent, selectors: [["acl-list-display"]], contentQueries: function ListDisplayComponent_ContentQueries(rf, ctx, dirIndex) { if (rf & 1) {
|
|
111
|
+
i0.ɵɵcontentQuery(dirIndex, TemplateRef, 5);
|
|
112
|
+
} if (rf & 2) {
|
|
113
|
+
let _t;
|
|
114
|
+
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.childTemplate = _t.first);
|
|
115
|
+
} }, inputs: { data: "data", threshold: "threshold", mode: "mode", direction: "direction", template: "template" }, standalone: true, features: [i0.ɵɵStandaloneFeature], decls: 8, vars: 6, consts: [[1, "tw-flex"], [4, "ngFor", "ngForOf"], [3, "class", 4, "ngIf"], ["total", ""], ["more", ""], [4, "ngTemplateOutlet", "ngTemplateOutletContext"], [4, "ngIf"], ["auiTooltipType", "info", "auiTooltipPosition", "bottom center", 3, "auiTooltip"], ["auiTooltipType", "info", "auiTooltipPosition", "bottom center", 3, "auiTooltip", "auiTooltipContext"], [3, "data", "template"]], template: function ListDisplayComponent_Template(rf, ctx) { if (rf & 1) {
|
|
116
|
+
i0.ɵɵelementStart(0, "div", 0)(1, "ul");
|
|
117
|
+
i0.ɵɵtemplate(2, ListDisplayComponent_li_2_Template, 3, 5, "li", 1);
|
|
118
|
+
i0.ɵɵelementEnd();
|
|
119
|
+
i0.ɵɵtemplate(3, ListDisplayComponent_div_3_Template, 3, 6, "div", 2);
|
|
120
|
+
i0.ɵɵelementEnd();
|
|
121
|
+
i0.ɵɵtemplate(4, ListDisplayComponent_ng_template_4_Template, 1, 2, "ng-template", null, 3, i0.ɵɵtemplateRefExtractor);
|
|
122
|
+
i0.ɵɵtemplate(6, ListDisplayComponent_ng_template_6_Template, 1, 2, "ng-template", null, 4, i0.ɵɵtemplateRefExtractor);
|
|
123
|
+
} if (rf & 2) {
|
|
124
|
+
i0.ɵɵclassMap(i0.ɵɵpureFunction1(4, _c2, ctx.direction === "column"));
|
|
125
|
+
i0.ɵɵadvance(2);
|
|
126
|
+
i0.ɵɵproperty("ngForOf", ctx.threshold ? ctx.data.slice(0, ctx.threshold) : ctx.data);
|
|
127
|
+
i0.ɵɵadvance(1);
|
|
128
|
+
i0.ɵɵproperty("ngIf", ctx.threshold && ctx.data.length > ctx.threshold);
|
|
129
|
+
} }, dependencies: [ListDisplayComponent, NgFor,
|
|
130
|
+
NgIf,
|
|
131
|
+
NgTemplateOutlet,
|
|
132
|
+
PurePipe, i1.TranslatePipe, TooltipModule, i2.TooltipDirective, EffectDirectiveModule, i3.E2eAttributeBindingDirective], styles: ["li[_ngcontent-%COMP%]{line-height:20px}"], changeDetection: 0 }); }
|
|
133
|
+
}
|
|
134
|
+
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ListDisplayComponent, [{
|
|
135
|
+
type: Component,
|
|
136
|
+
args: [{ standalone: true, selector: 'acl-list-display', changeDetection: ChangeDetectionStrategy.OnPush, imports: [
|
|
137
|
+
NgFor,
|
|
138
|
+
NgIf,
|
|
139
|
+
NgTemplateOutlet,
|
|
140
|
+
PurePipe,
|
|
141
|
+
TRANSLATE_MODULE,
|
|
142
|
+
TooltipModule,
|
|
143
|
+
EffectDirectiveModule,
|
|
144
|
+
], template: "<div\n class=\"tw-flex\"\n [class]=\"{ 'tw-flex-col': direction === 'column' }\"\n>\n <ul>\n <li *ngFor=\"let item of threshold ? data.slice(0, threshold) : data\">\n <ng-container\n *ngTemplateOutlet=\"\n childTemplate || template;\n context: item | pure: templateContext\n \"\n ></ng-container>\n </li>\n </ul>\n <div\n [class]=\"{ 'tw-ml-8': direction === 'row' }\"\n *ngIf=\"threshold && data.length > threshold\"\n >\n <ng-container *ngIf=\"mode === 'total'\">\n {{ 'in_total' | translate }}\n <a\n [auiTooltip]=\"total\"\n auiTooltipType=\"info\"\n auiTooltipPosition=\"bottom center\"\n >\n {{ data.length }}\n </a>\n {{ 'ge' | translate }}\n </ng-container>\n\n <ng-container *ngIf=\"mode === 'more'\">\n {{ 'more' | translate }}\n <a\n [auiTooltip]=\"more\"\n [auiTooltipContext]=\"{ data: data.slice(threshold) }\"\n auiTooltipType=\"info\"\n auiTooltipPosition=\"bottom center\"\n >\n {{ data.slice(threshold).length }}\n </a>\n {{ 'tiao' | translate }}\n </ng-container>\n </div>\n</div>\n\n<ng-template #total>\n <acl-list-display\n [data]=\"data\"\n [template]=\"childTemplate || template\"\n ></acl-list-display>\n</ng-template>\n\n<ng-template\n #more\n let-data=\"data\"\n>\n <acl-list-display\n [data]=\"data\"\n [template]=\"childTemplate || template\"\n ></acl-list-display>\n</ng-template>\n", styles: ["li{line-height:20px}\n"] }]
|
|
145
|
+
}], null, { data: [{
|
|
146
|
+
type: Input
|
|
147
|
+
}], threshold: [{
|
|
148
|
+
type: Input
|
|
149
|
+
}], mode: [{
|
|
150
|
+
type: Input
|
|
151
|
+
}], direction: [{
|
|
152
|
+
type: Input
|
|
153
|
+
}], template: [{
|
|
154
|
+
type: Input
|
|
155
|
+
}], childTemplate: [{
|
|
156
|
+
type: ContentChild,
|
|
157
|
+
args: [TemplateRef]
|
|
158
|
+
}] }); })();
|
|
159
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL2xpc3QtZGlzcGxheS9jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9zcmMvbGlzdC1kaXNwbGF5L3RlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUMzQyxPQUFPLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2hFLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBQ0wsV0FBVyxHQUNaLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUM5QyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQzs7Ozs7O0lDTjNELHdCQUtnQjs7O0lBTmxCLDBCQUFxRTtJQUNuRSw0RkFLZ0I7O0lBQ2xCLGlCQUFLOzs7O0lBTEEsZUFFWTtJQUZaLDBFQUVZLGtGQUFBOzs7SUFTakIsNkJBQXVDO0lBQ3JDLFlBQ0E7O0lBQUEsNEJBSUM7SUFDQyxZQUNGO0lBQUEsaUJBQUk7SUFDSixZQUNGOztJQUFBLDBCQUFlOzs7O0lBVGIsZUFDQTtJQURBLGlFQUNBO0lBQ0UsZUFBb0I7SUFBcEIsZ0NBQW9CO0lBSXBCLGVBQ0Y7SUFERSxtREFDRjtJQUNBLGVBQ0Y7SUFERSwyREFDRjs7OztJQUVBLDZCQUFzQztJQUNwQyxZQUNBOztJQUFBLDRCQUtDO0lBQ0MsWUFDRjtJQUFBLGlCQUFJO0lBQ0osWUFDRjs7SUFBQSwwQkFBZTs7OztJQVZiLGVBQ0E7SUFEQSw2REFDQTtJQUNFLGVBQW1CO0lBQW5CLGdDQUFtQixzRkFBQTtJQUtuQixlQUNGO0lBREUsMkVBQ0Y7SUFDQSxlQUNGO0lBREUsNkRBQ0Y7Ozs7SUEzQkYsMkJBR0M7SUFDQyw2RkFVZTtJQUVmLDhGQVdlO0lBQ2pCLGlCQUFNOzs7SUEzQkoscUVBQTRDO0lBRzdCLGVBQXNCO0lBQXRCLDhDQUFzQjtJQVl0QixlQUFxQjtJQUFyQiw2Q0FBcUI7OztJQWdCdEMsc0NBR29COzs7SUFGbEIsa0NBQWEscURBQUE7OztJQVNmLHNDQUdvQjs7OztJQUZsQiwrQkFBYSxxREFBQTs7O0FEckJqQixNQUFNLE9BQU8sb0JBQW9CO0lBdEJqQztRQThCRSxTQUFJLEdBQXFCLE9BQU8sQ0FBQztRQUdqQyxjQUFTLEdBQXFCLFFBQVEsQ0FBQztLQWN4QztJQU5DLGVBQWUsQ0FBQyxJQUFPO1FBQ3JCLE9BQU87WUFDTCxHQUFHLElBQUk7WUFDUCxTQUFTLEVBQUUsSUFBSTtTQUNoQixDQUFDO0lBQ0osQ0FBQztxRkF4QlUsb0JBQW9CO29FQUFwQixvQkFBb0I7d0NBZ0JqQixXQUFXOzs7OztZQ3BEM0IsOEJBR0MsU0FBQTtZQUVHLG1FQU9LO1lBQ1AsaUJBQUs7WUFDTCxxRUE0Qk07WUFDUixpQkFBTTtZQUVOLHNIQUtjO1lBRWQsc0hBUWM7O1lBMURaLHFFQUFtRDtZQUc1QixlQUE4QztZQUE5QyxxRkFBOEM7WUFXbEUsZUFBMEM7WUFBMUMsdUVBQTBDOzRCRG9CbEMsb0JBQW9CLEVBVDdCLEtBQUs7WUFDTCxJQUFJO1lBQ0osZ0JBQWdCO1lBQ2hCLFFBQVEsb0JBRVIsYUFBYSx1QkFDYixxQkFBcUI7O3VGQUdaLG9CQUFvQjtjQXRCaEMsU0FBUzs2QkFDSSxJQUFJLFlBQ04sa0JBQWtCLG1CQVNYLHVCQUF1QixDQUFDLE1BQU0sV0FDdEM7b0JBQ1AsS0FBSztvQkFDTCxJQUFJO29CQUNKLGdCQUFnQjtvQkFDaEIsUUFBUTtvQkFDUixnQkFBZ0I7b0JBQ2hCLGFBQWE7b0JBQ2IscUJBQXFCO2lCQUN0QjtnQkFJRCxJQUFJO2tCQURILEtBQUs7WUFJTixTQUFTO2tCQURSLEtBQUs7WUFJTixJQUFJO2tCQURILEtBQUs7WUFJTixTQUFTO2tCQURSLEtBQUs7WUFJTixRQUFRO2tCQURQLEtBQUs7WUFJTixhQUFhO2tCQURaLFlBQVk7bUJBQUMsV0FBVyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRvb2x0aXBNb2R1bGUgfSBmcm9tICdAYWxhdWRhL3VpJztcbmltcG9ydCB7IE5nRm9yLCBOZ0lmLCBOZ1RlbXBsYXRlT3V0bGV0IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIENvbnRlbnRDaGlsZCxcbiAgSW5wdXQsXG4gIFRlbXBsYXRlUmVmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgUHVyZVBpcGUgfSBmcm9tICcuLi9jb3JlL3B1YmxpYy1hcGknO1xuaW1wb3J0IHsgRWZmZWN0RGlyZWN0aXZlTW9kdWxlIH0gZnJvbSAnLi4vZWZmZWN0LWRpcmVjdGl2ZS9tb2R1bGUnO1xuaW1wb3J0IHsgVFJBTlNMQVRFX01PRFVMRSB9IGZyb20gJy4uL3RyYW5zbGF0ZS90cmFuc2xhdGUubW9kdWxlJztcblxuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnYWNsLWxpc3QtZGlzcGxheScsXG4gIHRlbXBsYXRlVXJsOiAndGVtcGxhdGUuaHRtbCcsXG4gIHN0eWxlczogW1xuICAgIGBcbiAgICAgIGxpIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICB9XG4gICAgYCxcbiAgXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGltcG9ydHM6IFtcbiAgICBOZ0ZvcixcbiAgICBOZ0lmLFxuICAgIE5nVGVtcGxhdGVPdXRsZXQsXG4gICAgUHVyZVBpcGUsXG4gICAgVFJBTlNMQVRFX01PRFVMRSxcbiAgICBUb29sdGlwTW9kdWxlLFxuICAgIEVmZmVjdERpcmVjdGl2ZU1vZHVsZSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgTGlzdERpc3BsYXlDb21wb25lbnQ8VD4ge1xuICBASW5wdXQoKVxuICBkYXRhOiBUW107XG5cbiAgQElucHV0KClcbiAgdGhyZXNob2xkOiBudW1iZXI7XG5cbiAgQElucHV0KClcbiAgbW9kZTogJ3RvdGFsJyB8ICdtb3JlJyA9ICd0b3RhbCc7XG5cbiAgQElucHV0KClcbiAgZGlyZWN0aW9uOiAncm93JyB8ICdjb2x1bW4nID0gJ2NvbHVtbic7XG5cbiAgQElucHV0KClcbiAgdGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgQENvbnRlbnRDaGlsZChUZW1wbGF0ZVJlZilcbiAgY2hpbGRUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcblxuICB0ZW1wbGF0ZUNvbnRleHQoaXRlbTogVCkge1xuICAgIHJldHVybiB7XG4gICAgICAuLi5pdGVtLFxuICAgICAgJGltcGxpY2l0OiBpdGVtLFxuICAgIH07XG4gIH1cbn1cbiIsIjxkaXZcbiAgY2xhc3M9XCJ0dy1mbGV4XCJcbiAgW2NsYXNzXT1cInsgJ3R3LWZsZXgtY29sJzogZGlyZWN0aW9uID09PSAnY29sdW1uJyB9XCJcbj5cbiAgPHVsPlxuICAgIDxsaSAqbmdGb3I9XCJsZXQgaXRlbSBvZiB0aHJlc2hvbGQgPyBkYXRhLnNsaWNlKDAsIHRocmVzaG9sZCkgOiBkYXRhXCI+XG4gICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiXG4gICAgICAgICAgY2hpbGRUZW1wbGF0ZSB8fCB0ZW1wbGF0ZTtcbiAgICAgICAgICBjb250ZXh0OiBpdGVtIHwgcHVyZTogdGVtcGxhdGVDb250ZXh0XG4gICAgICAgIFwiXG4gICAgICA+PC9uZy1jb250YWluZXI+XG4gICAgPC9saT5cbiAgPC91bD5cbiAgPGRpdlxuICAgIFtjbGFzc109XCJ7ICd0dy1tbC04JzogZGlyZWN0aW9uID09PSAncm93JyB9XCJcbiAgICAqbmdJZj1cInRocmVzaG9sZCAmJiBkYXRhLmxlbmd0aCA+IHRocmVzaG9sZFwiXG4gID5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwibW9kZSA9PT0gJ3RvdGFsJ1wiPlxuICAgICAge3sgJ2luX3RvdGFsJyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgPGFcbiAgICAgICAgW2F1aVRvb2x0aXBdPVwidG90YWxcIlxuICAgICAgICBhdWlUb29sdGlwVHlwZT1cImluZm9cIlxuICAgICAgICBhdWlUb29sdGlwUG9zaXRpb249XCJib3R0b20gY2VudGVyXCJcbiAgICAgID5cbiAgICAgICAge3sgZGF0YS5sZW5ndGggfX1cbiAgICAgIDwvYT5cbiAgICAgIHt7ICdnZScgfCB0cmFuc2xhdGUgfX1cbiAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJtb2RlID09PSAnbW9yZSdcIj5cbiAgICAgIHt7ICdtb3JlJyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgPGFcbiAgICAgICAgW2F1aVRvb2x0aXBdPVwibW9yZVwiXG4gICAgICAgIFthdWlUb29sdGlwQ29udGV4dF09XCJ7IGRhdGE6IGRhdGEuc2xpY2UodGhyZXNob2xkKSB9XCJcbiAgICAgICAgYXVpVG9vbHRpcFR5cGU9XCJpbmZvXCJcbiAgICAgICAgYXVpVG9vbHRpcFBvc2l0aW9uPVwiYm90dG9tIGNlbnRlclwiXG4gICAgICA+XG4gICAgICAgIHt7IGRhdGEuc2xpY2UodGhyZXNob2xkKS5sZW5ndGggfX1cbiAgICAgIDwvYT5cbiAgICAgIHt7ICd0aWFvJyB8IHRyYW5zbGF0ZSB9fVxuICAgIDwvbmctY29udGFpbmVyPlxuICA8L2Rpdj5cbjwvZGl2PlxuXG48bmctdGVtcGxhdGUgI3RvdGFsPlxuICA8YWNsLWxpc3QtZGlzcGxheVxuICAgIFtkYXRhXT1cImRhdGFcIlxuICAgIFt0ZW1wbGF0ZV09XCJjaGlsZFRlbXBsYXRlIHx8IHRlbXBsYXRlXCJcbiAgPjwvYWNsLWxpc3QtZGlzcGxheT5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZVxuICAjbW9yZVxuICBsZXQtZGF0YT1cImRhdGFcIlxuPlxuICA8YWNsLWxpc3QtZGlzcGxheVxuICAgIFtkYXRhXT1cImRhdGFcIlxuICAgIFt0ZW1wbGF0ZV09XCJjaGlsZFRlbXBsYXRlIHx8IHRlbXBsYXRlXCJcbiAgPjwvYWNsLWxpc3QtZGlzcGxheT5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export * from './component';
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL3NyYy9saXN0LWRpc3BsYXkvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGFBQWEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY29tcG9uZW50JztcbiJdfQ==
|
|
@@ -46,7 +46,7 @@ export class MetricChartComponent {
|
|
|
46
46
|
}
|
|
47
47
|
}), map(percent => (d) => {
|
|
48
48
|
// prometheus 可能出现 Infinity情况,处理为 null
|
|
49
|
-
if (!Number.isFinite(d.y) || String(d.y)
|
|
49
|
+
if (!Number.isFinite(d.y) || String(d.y).includes('Inf')) {
|
|
50
50
|
return null;
|
|
51
51
|
}
|
|
52
52
|
return percent && d.y ? +d.y * 100 : d.y === null ? d.y : +d.y;
|
|
@@ -343,4 +343,4 @@ __decorate([
|
|
|
343
343
|
}], dataCompleted: [{
|
|
344
344
|
type: Output
|
|
345
345
|
}] }); })();
|
|
346
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWV0cmljLWNoYXJ0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL3NyYy9tZXRyaWMtY2hhcnQvbWV0cmljLWNoYXJ0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL3NyYy9tZXRyaWMtY2hhcnQvbWV0cmljLWNoYXJ0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFDQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsWUFBWSxFQUNaLFdBQVcsRUFDWCxLQUFLLEVBRUwsTUFBTSxFQUNOLFdBQVcsR0FDWixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQ0wsVUFBVSxFQUNWLE9BQU8sRUFDUCxhQUFhLEVBQ2IsS0FBSyxFQUNMLEVBQUUsRUFDRixJQUFJLEVBQ0osZUFBZSxFQUNmLFVBQVUsRUFDVixNQUFNLEVBQ04sR0FBRyxFQUNILFNBQVMsRUFDVCxHQUFHLEVBQ0gsY0FBYyxHQUNmLE1BQU0sTUFBTSxDQUFDO0FBR2QsT0FBTyxFQUdMLHVCQUF1QixHQUN4QixNQUFNLHFCQUFxQixDQUFDO0FBQzdCLE9BQU8sRUFBYSxlQUFlLEVBQUUsVUFBVSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFRNUUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDNUQsT0FBTyxFQUFtQixrQkFBa0IsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUVoRSxPQUFPLEVBQUUsYUFBYSxFQUFFLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxNQUFNLFNBQVMsQ0FBQzs7O0FBUXRFLE1BQU0sT0FBTyxvQkFBb0I7SUFxQi9CLElBQ0ksUUFBUTtRQUNWLE9BQU8sQ0FBQyxJQUFJLENBQUMsbUJBQW1CLElBQUksT0FBTyxDQUFDO0lBQzlDLENBQUM7SUE0SUQsSUFBSSxTQUFTO1FBQ1gsT0FBTyxDQUFDLENBQTBDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDO0lBQ3BFLENBQUM7SUF5QkQsWUFDbUIsT0FBMkIsRUFDM0IsR0FBc0I7UUFEdEIsWUFBTyxHQUFQLE9BQU8sQ0FBb0I7UUFDM0IsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUF0TGhDLGNBQVMsR0FBK0MsTUFBTSxDQUFDO1FBUS9ELHdCQUFtQixHQUFHLElBQUksQ0FBQztRQVkzQixrQkFBYSxHQUFHLENBQUMsQ0FBQztRQU1sQixZQUFPLEdBQTJCLFVBQVUsQ0FBQztRQWdCN0MsNkJBQXdCLEdBQUcsS0FBSyxDQUFDO1FBWWpDLGVBQVUsR0FBRyxLQUFLLENBQUM7UUFjbkIsU0FBSSxHQUF1QixTQUFTLENBQUM7UUFrQ3JDLHVCQUFrQixHQUFHLElBQUksQ0FBQztRQVkxQixtQkFBYyxHQUFHLEtBQUssQ0FBQztRQVl0QixpQkFBWSxHQUFHLElBQUksWUFBWSxFQUFnQixDQUFDO1FBRWhELG1CQUFjLEdBQUcsSUFBSSxZQUFZLEVBQWtCLENBQUM7UUFFcEQsaUJBQVksR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBRWxDLGtCQUFhLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUVuRCxZQUFPLEdBQUcsSUFBSSxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFcEMsbUJBQWMsR0FBRyxJQUFJLE9BQU8sRUFBZSxDQUFDO1FBQzVDLFlBQU8sR0FBZ0IsRUFBRSxDQUFDO1FBQzFCLFlBQU8sR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUMsSUFBSSxDQUMxRCxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQ2IsR0FBRyxJQUFJLENBQUMsT0FBTztZQUNmLEdBQUcsTUFBTTtTQUNWLENBQUMsQ0FBQyxFQUNILEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUMsQ0FBQyxFQUN0QyxVQUFVLEVBQUUsQ0FDYixDQUFDO1FBSUYseUJBQW9CLEdBQUcsdUJBQXVCLENBQUM7UUFFL0MsMEJBQXFCLEdBQUcsT0FBTyxDQUFDO1FBTWhDLGVBQVUsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FDN0IsR0FBRyxDQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ1osSUFBSSxPQUFPLEVBQUU7Z0JBQ1gsSUFBSSxDQUFDLElBQUksR0FBRyxHQUFHLENBQUM7YUFDakI7UUFDSCxDQUFDLENBQUMsRUFDRixHQUFHLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQTBDLEVBQUUsRUFBRTtZQUM1RCxzQ0FBc0M7WUFDdEMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssTUFBTSxFQUFFO2dCQUNuRCxPQUFPLElBQUksQ0FBQzthQUNiO1lBQ0QsT0FBTyxPQUFPLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNqRSxDQUFDLENBQUMsQ0FDSCxDQUFDO1FBRUYsZUFBVSxHQUFvQjtZQUM1QixLQUFLLEVBQUUsa0JBQWtCLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxFQUFFO1lBQ3hDLEdBQUcsRUFBRSxrQkFBa0IsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLEVBQUU7WUFDcEMsSUFBSSxFQUFFLGtCQUFrQixDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUk7U0FDakMsQ0FBQztRQW1CRixtQkFBYyxHQUErQixhQUFhLENBQUM7WUFDekQsSUFBSSxDQUFDLGdCQUFnQjtZQUNyQixJQUFJLENBQUMsVUFBVTtZQUNmLElBQUksQ0FBQyxPQUFPO1NBQ2IsQ0FBQyxDQUFDLElBQUksQ0FDTCxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsU0FBUyxDQUFDLEVBQUUsRUFBRTtZQUNwQixJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztZQUN4QixJQUFJLENBQUMsMEJBQTBCLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1lBQ2xELElBQUksQ0FBQyxpQkFBaUIsQ0FBQztnQkFDckIsT0FBTyxFQUFFLENBQUMsQ0FBQyxTQUFTLEVBQUUsTUFBTTtnQkFDNUIsTUFBTSxFQUFFLEtBQUs7Z0JBQ2IsTUFBTSxFQUFFLENBQUMsU0FBUyxFQUFFLE1BQU07YUFDM0IsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDLEVBQ0YsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsU0FBUyxDQUFDLEVBQUUsRUFBRSxDQUMzQixTQUFTLEVBQUUsTUFBTSxJQUFJLElBQUksQ0FBQyxXQUFXO1lBQ25DLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsU0FBUyxDQUFDLENBQUMsSUFBSSxDQUM3RCxVQUFVLENBQUMsR0FBRyxFQUFFO2dCQUNkLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7Z0JBQ3pELE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ2xCLENBQUMsQ0FBQyxDQUNIO1lBQ0gsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FDYixDQUNGLENBQUM7SUFwQ0MsQ0FBQztJQUVKLFFBQVE7UUFDTixJQUFJLElBQUksQ0FBQyxlQUFlLEVBQUU7WUFDeEIsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDO1NBQ3hDO1FBRUQsSUFBSSxDQUFDLE9BQU8sR0FBRyxDQUNiLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQy9ELENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxDQUFDLENBQUM7SUFDdEMsQ0FBQztJQTRCRCxnQkFBZ0I7UUFDZCxJQUFJLFVBQVUsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDO1FBQ3RDLElBQUksVUFBVSxFQUFFO1lBQ2QsSUFBSSxhQUFhLENBQUMsSUFBSSxDQUFDLGVBQWUsRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLEVBQUU7Z0JBQ3hELElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQzthQUN4QztpQkFBTTtnQkFDTCxVQUFVLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQzthQUM5QjtZQUNELElBQUksQ0FBQyxXQUFXLEdBQUc7Z0JBQ2pCLEdBQUcsSUFBSSxDQUFDLGVBQWU7Z0JBQ3ZCLEdBQUcsVUFBVTthQUNkLENBQUM7U0FDSDtJQUNILENBQUM7SUFFRCxvQkFBb0I7UUFDbEIsT0FBTyxJQUFJLENBQ1QsR0FBRyxDQUFDLEdBQUcsRUFBRTtZQUNQLElBQUksSUFBSSxDQUFDLGNBQWMsRUFBRTtnQkFDdkIsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7YUFDekI7UUFDSCxDQUFDLENBQUMsRUFDRixNQUFNLENBQ0osQ0FBQyxHQUFtQixFQUFFLEVBQUUsQ0FDdEIsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLElBQUksQ0FBQyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxNQUFNLENBQUMsQ0FDM0QsRUFDRCxHQUFHLENBQUMsQ0FBQyxHQUFtQixFQUFFLEVBQUU7WUFDMUIsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLFVBQVUsSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLGVBQWUsQ0FBQztZQUMvRCxvRkFBb0Y7WUFDcEYsd0NBQXdDO1lBQ3hDLE9BQU8sTUFBTSxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsU0FBUyxJQUFJLEVBQUUsRUFBRSxJQUFJLENBQUMsWUFBWSxDQUFDLEVBQUUsR0FBRyxDQUM5RCxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7Z0JBQ1AsR0FBRyxJQUFJO2dCQUNQLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSTtnQkFDZixNQUFNLEVBQUUsaUJBQWlCLENBQ3ZCLElBQUksQ0FBQyxXQUFXLEVBQ2hCLElBQUksQ0FBQyxNQUF3RCxFQUM3RCxJQUFJLENBQUMsUUFBUSxDQUNkO2FBQ0YsQ0FBQyxDQUNILENBQUM7UUFDSixDQUFDLENBQUMsRUFDRixHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDUixJQUFJLENBQUMsMEJBQTBCLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1lBQ2xELElBQUksQ0FBQyxpQkFBaUIsQ0FBQztnQkFDckIsT0FBTyxFQUFFLEtBQUs7Z0JBQ2QsTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUM7YUFDdkIsQ0FBQyxDQUFDO1lBQ0gsSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUMxQixDQUFDLENBQUMsRUFDRixHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FDUixHQUFHLEVBQUUsTUFBTTtZQUNULENBQUMsQ0FBQyxHQUFHO1lBQ0wsQ0FBQyxDQUFDO2dCQUNFO29CQUNFLE1BQU0sRUFBRSxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLEVBQUUsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDO2lCQUMvRDthQUNGLENBQ04sRUFDRCxjQUFjLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxFQUMvQixHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxVQUFVLENBQUMsRUFBRSxFQUFFO1lBQ3hCLElBQUksVUFBVSxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRTtnQkFDOUIsTUFBTSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQyxHQUFHLEVBQUUsVUFBVSxDQUFDLENBQUM7Z0JBQ3BFLElBQUksQ0FBQyxJQUFJLEdBQUcsUUFBUSxJQUFJLEVBQUUsQ0FBQztnQkFDM0IsSUFBSSxPQUFPLFVBQVUsS0FBSyxRQUFRLEVBQUU7b0JBQ2xDLE1BQU0sRUFBRSxhQUFhLEdBQUcsSUFBSSxFQUFFLE1BQU0sRUFBRSxHQUFHLFVBQVUsQ0FBQztvQkFDcEQsSUFBSSxDQUFDLElBQUksR0FBRyxhQUFhO3dCQUN2QixDQUFDLENBQUMsUUFBUSxJQUFJLEVBQUU7d0JBQ2hCLENBQUMsQ0FBQyxHQUFHLE1BQU0sSUFBSSxFQUFFLEdBQUcsSUFBSSxFQUFFLENBQUM7aUJBQzlCO2dCQUNELE9BQVEsR0FBbUIsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFlLEVBQUUsRUFBRSxDQUFDLENBQUM7b0JBQ3BELEdBQUcsSUFBSTtvQkFDUCxJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUk7b0JBQ2YsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQzt3QkFDNUIsR0FBRyxDQUFDO3dCQUNKLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7cUJBQzFCLENBQUMsQ0FBQztpQkFDSixDQUFDLENBQUMsQ0FBQzthQUNMO1lBQ0QsT0FBTyxHQUFHLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLEdBQUcsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBZ0IsQ0FBQztRQUN4RSxDQUFDLENBQUMsRUFDRixHQUFHLENBQUMsR0FBRyxFQUFFO1lBQ1AsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUM1QixDQUFDLENBQUMsRUFDRixVQUFVLEVBQUUsQ0FDYixDQUFDO0lBQ0osQ0FBQztJQUVELE9BQU87UUFDTCxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN4QixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMvQixDQUFDO0lBRU8saUJBQWlCLENBQUMsTUFBbUI7UUFDM0MsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUM7WUFDdkIsR0FBRyxNQUFNO1NBQ1YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLDBCQUEwQixDQUFDLE1BQXVCO1FBQ3hELElBQUksTUFBTSxFQUFFO1lBQ1YsTUFBTSxJQUFJLEdBQUcsTUFBTSxDQUFDLEdBQUcsR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDO1lBQ3ZDLE1BQU0sRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxDQUFDO1lBQ3hCLE1BQU0sRUFBRSxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUM7WUFDbEIsTUFBTSxFQUFFLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQztZQUNsQixNQUFNLFVBQVUsR0FBRyxPQUFPLENBQUM7WUFDM0IsTUFBTSxNQUFNLEdBQ1YsSUFBSSxJQUFJLEVBQUU7Z0JBQ1IsQ0FBQyxDQUFDLFVBQVU7Z0JBQ1osQ0FBQyxDQUFDLElBQUksR0FBRyxFQUFFLElBQUksQ0FBQyxJQUFJLElBQUksRUFBRSxJQUFJLElBQUksR0FBRyxFQUFFLENBQUM7b0JBQ3hDLENBQUMsQ0FBQyxHQUFHLFVBQVUsSUFBSSx1QkFBdUIsRUFBRTtvQkFDNUMsQ0FBQyxDQUFDLHVCQUF1QixDQUFDO1lBQzlCLElBQUksQ0FBQyxvQkFBb0IsR0FBRyxNQUFNLENBQUM7WUFDbkMsNkRBQTZEO1lBQzdELElBQUksQ0FBQyxxQkFBcUI7Z0JBQ3hCLElBQUksSUFBSSxFQUFFO29CQUNSLENBQUMsQ0FBQyxPQUFPO29CQUNULENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxJQUFJLENBQUMsSUFBSSxJQUFJLEVBQUUsSUFBSSxJQUFJLEdBQUcsRUFBRSxDQUFDO3dCQUN4QyxDQUFDLENBQUMsYUFBYTt3QkFDZixDQUFDLENBQUMsT0FBTyxDQUFDO1lBQ2QsSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLEVBQUUsQ0FBQztTQUMxQjtJQUNILENBQUM7cUZBbFdVLG9CQUFvQjtvRUFBcEIsb0JBQW9COzs7WUN0RGpDLDBDQWdEQztZQUhDLDhIQUFnQiw2QkFBeUIsSUFBQyxxSEFDeEIsK0JBQTJCLElBREgsMkdBRTFCLGFBQVMsSUFGaUI7Ozs7WUFJNUMsaUJBQWtCOztZQWhEaEIsNERBQStDO1lBQy9DLHFFQUFtRCxrQkFBQSw4QkFBQSw0Q0FBQSxtREFBQSx3Q0FBQSw4Q0FBQSw0QkFBQSxnREFBQSxrQkFBQSxvQ0FBQSxvQkFBQSw0QkFBQSw0QkFBQSxnQ0FBQSw0Q0FBQSwwQ0FBQSx3REFBQSxnRUFBQSxrREFBQSw4QkFBQSwwQkFBQSx3QkFBQSxzQ0FBQSxvQ0FBQSxrREFBQSxzQ0FBQSwwREFBQSxnREFBQSxxRUFBQSw0QkFBQSxrQ0FBQSx3Q0FBQSxrREFBQSx3Q0FBQSw4Q0FBQSwwREFBQSxrREFBQSxnRUFBQSw4QkFBQSw4QkFBQSxzQ0FBQSw4QkFBQTs7O0FEK0VuRDtJQURDLGVBQWUsRUFBRTs4QkFDVixVQUFVO21EQUFTO0FBYTNCO0lBREMsZUFBZSxFQUFFOzhCQUNMLFVBQVU7d0RBQWM7QUFLckM7SUFEQyxlQUFlLEVBQUU7OEJBQ0MsVUFBVTs4REFBa0I7QUF3Qy9DO0lBREMsZUFBZSxFQUFFOzhCQUNMLFVBQVU7d0RBQTRCO0FBTW5EO0lBREMsZUFBZSxFQUFFOzhCQUNQLFVBQVU7c0RBQVU7QUFZWjtJQUFsQixlQUFlLEVBQUU7OEJBQWlCLFVBQVU7MkRBQWlCO0FBUTlEO0lBREMsZUFBZSxFQUFFOzhCQUNILFVBQVU7MERBQWM7dUZBL0c1QixvQkFBb0I7Y0FOaEMsU0FBUzsyQkFDRSxrQkFBa0IsbUJBR1gsdUJBQXVCLENBQUMsTUFBTTtxR0FHdEMsdUJBQXVCO2tCQUEvQixLQUFLO1lBRUcsZUFBZTtrQkFBdkIsS0FBSztZQUVHLFVBQVU7a0JBQWxCLEtBQUs7WUFFRyxLQUFLO2tCQUFiLEtBQUs7WUFFRyxTQUFTO2tCQUFqQixLQUFLO1lBRUcsU0FBUztrQkFBakIsS0FBSztZQUVHLGdCQUFnQjtrQkFBeEIsS0FBSztZQUVHLHVCQUF1QjtrQkFBL0IsS0FBSztZQUVHLElBQUk7a0JBQVosS0FBSztZQUVHLG1CQUFtQjtrQkFBM0IsS0FBSztZQUdGLFFBQVE7a0JBRFgsV0FBVzttQkFBQyxnQkFBZ0I7WUFNN0IsS0FBSyxNQUVJLFNBQVM7a0JBQWpCLEtBQUs7WUFFRyxhQUFhO2tCQUFyQixLQUFLO1lBRUcsWUFBWTtrQkFBcEIsS0FBSztZQUVHLE9BQU87a0JBQWYsS0FBSztZQUVHLE9BQU87a0JBQWYsS0FBSztZQUdOLFVBQVUsTUFFRCxlQUFlO2tCQUF2QixLQUFLO1lBR04sZ0JBQWdCLE1BRVAsd0JBQXdCO2tCQUFoQyxLQUFLO1lBRUcsb0JBQW9CO2tCQUE1QixLQUFLO1lBRUcsY0FBYztrQkFBdEIsS0FBSztZQUVHLHdCQUF3QjtrQkFBaEMsS0FBSztZQUVHLG1CQUFtQjtrQkFBM0IsS0FBSztZQUVHLFdBQVc7a0JBQW5CLEtBQUs7WUFFRyxrQkFBa0I7a0JBQTFCLEtBQUs7WUFFRywyQkFBMkI7a0JBQW5DLEtBQUs7WUFFRyxtQkFBbUI7a0JBQTNCLEtBQUs7WUFFRyxVQUFVO2tCQUFsQixLQUFLO1lBRUcsZUFBZTtrQkFBdkIsS0FBSztZQUVHLGlCQUFpQjtrQkFBekIsS0FBSztZQUVHLGVBQWU7a0JBQXZCLEtBQUs7WUFFRyxhQUFhO2tCQUFyQixLQUFLO1lBRUcsb0JBQW9CO2tCQUE1QixLQUFLO1lBRUcsY0FBYztrQkFBdEIsS0FBSztZQUVHLElBQUk7a0JBQVosS0FBSztZQUdOLFNBQVM7a0JBRFIsS0FBSztZQUlOLFVBQVUsTUFHVixPQUFPO2tCQUROLEtBQUs7WUFJTixRQUFRLE1BRUMsWUFBWTtrQkFBcEIsS0FBSztZQUVHLGlCQUFpQjtrQkFBekIsS0FBSztZQUVHLFVBQVU7a0JBQWxCLEtBQUs7WUFLRyxZQUFZO2tCQUFwQixLQUFLO1lBQ2EsYUFBYSxNQUV2QixjQUFjO2tCQUF0QixLQUFLO1lBSUcsV0FBVztrQkFBbkIsS0FBSztZQUVOLFlBQVksTUFFSCxrQkFBa0I7a0JBQTFCLEtBQUs7WUFFRyxVQUFVO2tCQUFsQixLQUFLO1lBRUcsVUFBVTtrQkFBbEIsS0FBSztZQUVHLFVBQVU7a0JBQWxCLEtBQUs7WUFFRyxpQkFBaUI7a0JBQXpCLEtBQUs7WUFFRyx3QkFBd0I7a0JBQWhDLEtBQUs7WUFFRyxjQUFjO2tCQUF0QixLQUFLO1lBRUcsVUFBVTtrQkFBbEIsS0FBSztZQUVHLFFBQVE7a0JBQWhCLEtBQUs7WUFFRyxvQkFBb0I7a0JBQTVCLEtBQUs7WUFFRyxTQUFTO2tCQUFqQixLQUFLO1lBRUcsU0FBUztrQkFBakIsS0FBSztZQUVJLFlBQVk7a0JBQXJCLE1BQU07WUFFRyxjQUFjO2tCQUF2QixNQUFNO1lBRUcsWUFBWTtrQkFBckIsTUFBTTtZQUVHLGFBQWE7a0JBQXRCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUb29sdGlwQ29udGV4dCB9IGZyb20gJ0BhbGF1ZGEvY2hhcnQnO1xuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSG9zdEJpbmRpbmcsXG4gIElucHV0LFxuICBPbkluaXQsXG4gIE91dHB1dCxcbiAgVGVtcGxhdGVSZWYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ3VydmVGYWN0b3J5LCBDdXJ2ZUZhY3RvcnlMaW5lT25seSB9IGZyb20gJ2QzJztcbmltcG9ydCB7XG4gIE9ic2VydmFibGUsXG4gIFN1YmplY3QsXG4gIGNvbWJpbmVMYXRlc3QsXG4gIG1lcmdlLFxuICBvZixcbiAgcGlwZSxcbiAgQmVoYXZpb3JTdWJqZWN0LFxuICBjYXRjaEVycm9yLFxuICBmaWx0ZXIsXG4gIG1hcCxcbiAgc3dpdGNoTWFwLFxuICB0YXAsXG4gIHdpdGhMYXRlc3RGcm9tLFxufSBmcm9tICdyeGpzJztcbmltcG9ydCB7IENoYXJ0LCBUb29sdGlwVmFsdWUgfSBmcm9tICd6ei1jaGFydCc7XG5cbmltcG9ydCB7XG4gIEFyZWFQb3NpdGlvbixcbiAgQ29udGV4dEl0ZW0sXG4gIERBVEVfVElNRV9GT1JNQVRfWF9BWElTLFxufSBmcm9tICcuLi9jaGFydC9wdWJsaWMtYXBpJztcbmltcG9ydCB7IFN0cmluZ01hcCwgT2JzZXJ2YWJsZUlucHV0LCBwdWJsaXNoUmVmIH0gZnJvbSAnLi4vY29yZS9wdWJsaWMtYXBpJztcbmltcG9ydCB7XG4gIENoYXJ0RGF0YSxcbiAgQ2hhcnREYXRhSXRlbSxcbiAgQ2hhcnRTdGF0dXMsXG4gIFhQbG90TGluZXMsXG59IGZyb20gJy4uL3ZpZXctY2hhcnQvcHVibGljLWFwaSc7XG5cbmltcG9ydCB7IENvbW1vbkNoYXJ0U2VydmljZSB9IGZyb20gJy4vY29tbW9uLWNoYXJ0LnNlcnZpY2UnO1xuaW1wb3J0IHsgTWF0Y2hVbml0UGFyYW1zLCBQSUNLRVJfVElNRV9SQU5HRVMgfSBmcm9tICcuL2hlbHBlcnMnO1xuaW1wb3J0IHsgSW5kaWNhdG9yLCBNZXRyaWNBcGlQYXJhbXMsIE1ldHJpY1Jlc3VsdCB9IGZyb20gJy4vdHlwZXMnO1xuaW1wb3J0IHsgY2hlY2tJbnRlcnZhbCwgZmlsbE51bGxDaGFydERhdGEsIGhhc05vRGF0YSB9IGZyb20gJy4vdXRpbHMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhY2wtbWV0cmljLWNoYXJ0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL21ldHJpYy1jaGFydC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL21ldHJpYy1jaGFydC5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgTWV0cmljQ2hhcnRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBASW5wdXQoKSBjb250ZXh0Q2FsbGJhY2tGdW5jdGlvbjogKGNvbnRleHQ6IENoYXJ0KSA9PiB2b2lkO1xuXG4gIEBJbnB1dCgpIGJhY2tncm91bmRDb2xvcjogc3RyaW5nO1xuXG4gIEBJbnB1dCgpIGhpZGVIZWFkZXI6IGJvb2xlYW47XG5cbiAgQElucHV0KCkgdGl0bGU6IHN0cmluZyB8IFRlbXBsYXRlUmVmPHVua25vd24+O1xuXG4gIEBJbnB1dCgpIGhpZGVUaXRsZTogYm9vbGVhbjtcblxuICBASW5wdXQoKSBjaGFydFR5cGU6ICdsaW5lJyB8ICdhcmVhJyB8ICdiYXInIHwgJ3BvaW50JyB8ICdzdGF0JyA9ICdhcmVhJztcblxuICBASW5wdXQoKSB0aXRsZURlc2NyaXB0aW9uOiBzdHJpbmcgfCBUZW1wbGF0ZVJlZjx1bmtub3duPjtcblxuICBASW5wdXQoKSB0aXRsZURlc2NyaXB0aW9uQ29udGV4dDogU3RyaW5nTWFwO1xuXG4gIEBJbnB1dCgpIHVuaXQ6IHN0cmluZztcblxuICBASW5wdXQoKSB0b29sdGlwQXBwZW5kVG9Cb2R5ID0gdHJ1ZTtcblxuICBASG9zdEJpbmRpbmcoJ3N0eWxlLm92ZXJmbG93JylcbiAgZ2V0IG92ZXJmbG93KCkge1xuICAgIHJldHVybiAhdGhpcy50b29sdGlwQXBwZW5kVG9Cb2R5ICYmICd1bnNldCc7XG4gIH1cblxuICBAT2JzZXJ2YWJsZUlucHV0KClcbiAgdW5pdCQhOiBPYnNlcnZhYmxlPHN0cmluZz47XG5cbiAgQElucHV0KCkgaW5kaWNhdG9yOiBJbmRpY2F0b3JbXTtcblxuICBASW5wdXQoKSBncmlkT2Zmc2V0VG9wID0gMDtcblxuICBASW5wdXQoKSB5QXhpc01pblN0ZXA/OiBudW1iZXI7XG5cbiAgQElucHV0KCkgcm90YXRlZDogYm9vbGVhbjtcblxuICBASW5wdXQoKSBiYXJUeXBlOiAnc3RhbmRhcmQnIHwgJ3N0YWNrZWQnID0gJ3N0YW5kYXJkJztcblxuICBAT2JzZXJ2YWJsZUlucHV0KClcbiAgaW5kaWNhdG9yJCE6IE9ic2VydmFibGU8SW5kaWNhdG9yW10+O1xuXG4gIEBJbnB1dCgpIG1ldHJpY0FwaVBhcmFtczogTWV0cmljQXBpUGFyYW1zO1xuXG4gIEBPYnNlcnZhYmxlSW5wdXQoKVxuICBtZXRyaWNBcGlQYXJhbXMkITogT2JzZXJ2YWJsZTxNZXRyaWNBcGlQYXJhbXM+O1xuXG4gIEBJbnB1dCgpIHRvb2x0aXBQb2ludE5hbWVUZW1wbGF0ZTogVGVtcGxhdGVSZWY8dW5rbm93bj47XG5cbiAgQElucHV0KCkgdG9vbHRpcFBvaW50VGVtcGxhdGU6IFRlbXBsYXRlUmVmPHVua25vd24+O1xuXG4gIEBJbnB1dCgpIGxlZ2VuZFRlbXBsYXRlOiBUZW1wbGF0ZVJlZjx1bmtub3duPiB8IHN0cmluZztcblxuICBASW5wdXQoKSBsZWdlbmRTZWxlY3RBbGxPcGVyYXRpb24gPSBmYWxzZTtcblxuICBASW5wdXQoKSBsZWdlbmRTZWxlY3RBbGxOYW1lOiBzdHJpbmc7XG5cbiAgQElucHV0KCkgdG9vbHRpcEhpZGU6IGJvb2xlYW47XG5cbiAgQElucHV0KCkgdG9vbHRpcFBvaW50Rm9ybWF0OiAoZDogQ29udGV4dEl0ZW0pID0+IG51bWJlciB8IHN0cmluZztcblxuICBASW5wdXQoKSB0b29sdGlwUG9pbnRUZW1wbGF0ZUNvbnRleHQ6IHsgW2tleTogc3RyaW5nXTogYW55IH07XG5cbiAgQElucHV0KCkgdG9vbHRpcENvbHVtbkxheW91dDogYm9vbGVhbjtcblxuICBASW5wdXQoKSBoaWRlTGVnZW5kID0gZmFsc2U7XG5cbiAgQElucHV0KCkgdG9vbHRpcEF1dG9Tb3J0OiBib29sZWFuO1xuXG4gIEBJbnB1dCgpIHRvb2x0aXBTb3J0TWV0aG9kOiAoYTogVG9vbHRpcFZhbHVlLCBiOiBUb29sdGlwVmFsdWUpID0+IG51bWJlcjtcblxuICBASW5wdXQoKSBoaWRlVG9vbHRpcFVuaXQ6IGJvb2xlYW47XG5cbiAgQElucHV0KCkgbGVmdE9wZXJhdGlvbjogVGVtcGxhdGVSZWY8dW5rbm93bj47XG5cbiAgQElucHV0KCkgbGVmdE9wZXJhdGlvbkNvbnRleHQ6IFN0cmluZ01hcDtcblxuICBASW5wdXQoKSByaWdodE9wZXJhdGlvbjogVGVtcGxhdGVSZWY8dW5rbm93bj47XG5cbiAgQElucHV0KCkgbW9kZTogJ2NhcmQnIHwgJ2RlZmF1bHQnID0gJ2RlZmF1bHQnO1xuXG4gIEBJbnB1dCgpXG4gIGFkYXB0VW5pdDogYm9vbGVhbiB8IE1hdGNoVW5pdFBhcmFtcztcblxuICBAT2JzZXJ2YWJsZUlucHV0KClcbiAgYWRhcHRVbml0JCE6IE9ic2VydmFibGU8Ym9vbGVhbiB8IE1hdGNoVW5pdFBhcmFtcz47XG5cbiAgQElucHV0KClcbiAgcGVyY2VudDogYm9vbGVhbjtcblxuICBAT2JzZXJ2YWJsZUlucHV0KClcbiAgcGVyY2VudCQhOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuXG4gIEBJbnB1dCgpIGRlcGVuZE9uRGF0YTogYm9vbGVhbjtcblxuICBASW5wdXQoKSBjdXN0b21Ob0RhdGFUaXRsZTogVGVtcGxhdGVSZWY8dW5rbm93bj4gfCBzdHJpbmc7XG5cbiAgQElucHV0KCkgZGF0YUZvcm1hdDogKFxuICAgIGQ6IE1ldHJpY1Jlc3VsdFtdLFxuICAgIGluZGljYXRvcjogSW5kaWNhdG9yW10sXG4gICkgPT4gQ2hhcnREYXRhW107XG5cbiAgQElucHV0KCkgY3VzdG9tU2VyaWVzITogTWV0cmljUmVzdWx0W107XG4gIEBPYnNlcnZhYmxlSW5wdXQoKSBjdXN0b21TZXJpZXMkITogT2JzZXJ2YWJsZTxNZXRyaWNSZXN1bHRbXT47XG5cbiAgQElucHV0KCkgaXNDdXN0b21TZXJpZXM6IGJvb2xlYW47XG5cbiAgc2VyaWVzJDogT2JzZXJ2YWJsZTxDaGFydERhdGFbXT47XG5cbiAgQElucHV0KCkgY2hhcnRTdGF0dXM6IENoYXJ0U3RhdHVzO1xuICBAT2JzZXJ2YWJsZUlucHV0KClcbiAgY2hhcnRTdGF0dXMkITogT2JzZXJ2YWJsZTxDaGFydFN0YXR1cz47XG5cbiAgQElucHV0KCkgdG9vbHRpcFRyYW5zbGF0aW9uID0gdHJ1ZTtcblxuICBASW5wdXQoKSB4UGxvdExpbmVzOiBYUGxvdExpbmVzO1xuXG4gIEBJbnB1dCgpIHhQbG90RW1wdHk6IGJvb2xlYW47XG5cbiAgQElucHV0KCkgeVBsb3RMaW5lczogVG9vbHRpcENvbnRleHQ7XG5cbiAgQElucHV0KCkgeVBsb3RMaW5lc1Rvb2x0aXA6IFRlbXBsYXRlUmVmPHVua25vd24+O1xuXG4gIEBJbnB1dCgpIHlQbG90TGluZXNUb29sdGlwQ29udGV4dDogU3RyaW5nTWFwO1xuXG4gIEBJbnB1dCgpIHlQbG90TGluZXNIaWRlID0gZmFsc2U7XG5cbiAgQElucHV0KCkgZW5hYmxlWm9vbTogYm9vbGVhbjtcblxuICBASW5wdXQoKSBzdGVwTGluZTogYm9vbGVhbjtcblxuICBASW5wdXQoKSB0b29sdGlwVGl0bGVUZW1wbGF0ZTogVGVtcGxhdGVSZWY8dW5rbm93bj47XG5cbiAgQElucHV0KCkgeUFjY2Vzc29yOiAoZDogQ2hhcnREYXRhSXRlbSkgPT4gbnVtYmVyO1xuXG4gIEBJbnB1dCgpIGN1cnZlVHlwZTogQ3VydmVGYWN0b3J5IHwgQ3VydmVGYWN0b3J5TGluZU9ubHk7XG5cbiAgQE91dHB1dCgpIG1vdXNlVXBFdmVudCA9IG5ldyBFdmVudEVtaXR0ZXI8QXJlYVBvc2l0aW9uPigpO1xuXG4gIEBPdXRwdXQoKSBtYXJrQ2xpY2tFdmVudCA9IG5ldyBFdmVudEVtaXR0ZXI8VG9vbHRpcENvbnRleHQ+KCk7XG5cbiAgQE91dHB1dCgpIHJlZnJlc2hFdmVudCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBAT3V0cHV0KCkgZGF0YUNvbXBsZXRlZCA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICByZWxvYWQkID0gbmV3IEJlaGF2aW9yU3ViamVjdChudWxsKTtcblxuICBfY2hhcnRTdGF0dXMkJCA9IG5ldyBTdWJqZWN0PENoYXJ0U3RhdHVzPigpO1xuICBfc3RhdHVzOiBDaGFydFN0YXR1cyA9IHt9O1xuICBzdGF0dXMkID0gbWVyZ2UodGhpcy5jaGFydFN0YXR1cyQsIHRoaXMuX2NoYXJ0U3RhdHVzJCQpLnBpcGUoXG4gICAgbWFwKHN0YXR1cyA9PiAoe1xuICAgICAgLi4udGhpcy5fc3RhdHVzLFxuICAgICAgLi4uc3RhdHVzLFxuICAgIH0pKSxcbiAgICB0YXAoc3RhdHVzID0+ICh0aGlzLl9zdGF0dXMgPSBzdGF0dXMpKSxcbiAgICBwdWJsaXNoUmVmKCksXG4gICk7XG5cbiAgbm9EYXRhOiBib29sZWFuO1xuXG4gIGRhdGVBeGlzTGFiZWxGb3JtYXRzID0gREFURV9USU1FX0ZPUk1BVF9YX0FYSVM7XG5cbiAgZGF0ZVhBeGlzTGFiZWxGb3JtYXRzID0gJyVIOiVNJztcblxuICBnZXQgeEFjY2Vzc29yKCkge1xuICAgIHJldHVybiAoZDogQ2hhcnREYXRhSXRlbTx7IHg6IG51bWJlcjsgeTogbnVtYmVyIH0+KSA9PiBkLnggKiAxMDAwO1xuICB9XG5cbiAgeUFjY2Vzc29yJCA9IHRoaXMucGVyY2VudCQucGlwZShcbiAgICB0YXAocGVyY2VudCA9PiB7XG4gICAgICBpZiAocGVyY2VudCkge1xuICAgICAgICB0aGlzLnVuaXQgPSAnJSc7XG4gICAgICB9XG4gICAgfSksXG4gICAgbWFwKHBlcmNlbnQgPT4gKGQ6IENoYXJ0RGF0YUl0ZW08eyB4OiBudW1iZXI7IHk6IG51bWJlciB9PikgPT4ge1xuICAgICAgLy8gcHJvbWV0aGV1cyDlj6/og73lh7rnjrAgSW5maW5pdHnmg4XlhrXvvIzlpITnkIbkuLogbnVsbFxuICAgICAgaWYgKCFOdW1iZXIuaXNGaW5pdGUoZC55KSB8fCBTdHJpbmcoZC55KSA9PT0gJytJbmYnKSB7XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHBlcmNlbnQgJiYgZC55ID8gK2QueSAqIDEwMCA6IGQueSA9PT0gbnVsbCA/IGQueSA6ICtkLnk7XG4gICAgfSksXG4gICk7XG5cbiAgX2NhY2hlVGltZTogTWV0cmljQXBpUGFyYW1zID0ge1xuICAgIHN0YXJ0OiBQSUNLRVJfVElNRV9SQU5HRVNbMV0uc3RhcnRUaW1lKCksXG4gICAgZW5kOiBQSUNLRVJfVElNRV9SQU5HRVNbMV0uZW5kVGltZSgpLFxuICAgIHN0ZXA6IFBJQ0tFUl9USU1FX1JBTkdFU1sxXS5zdGVwLFxuICB9O1xuXG4gIHByaXZhdGUgY2hhcnRQYXJhbXM6IE1ldHJpY0FwaVBhcmFtcztcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IHNlcnZpY2U6IENvbW1vbkNoYXJ0U2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICkge31cblxuICBuZ09uSW5pdCgpIHtcbiAgICBpZiAodGhpcy5tZXRyaWNBcGlQYXJhbXMpIHtcbiAgICAgIHRoaXMuX2NhY2hlVGltZSA9IHRoaXMubWV0cmljQXBpUGFyYW1zO1xuICAgIH1cblxuICAgIHRoaXMuc2VyaWVzJCA9IChcbiAgICAgIHRoaXMuaXNDdXN0b21TZXJpZXMgPyB0aGlzLmN1c3RvbVNlcmllcyQgOiB0aGlzLmRlZmF1bHRTZXJpZXMkXG4gICAgKS5waXBlKHRoaXMuaGFuZGxlTWV0cmljRGF0YVBpcGUoKSk7XG4gIH1cblxuICBkZWZhdWx0U2VyaWVzJDogT2JzZXJ2YWJsZTxNZXRyaWNSZXN1bHRbXT4gPSBjb21iaW5lTGF0ZXN0KFtcbiAgICB0aGlzLm1ldHJpY0FwaVBhcmFtcyQsXG4gICAgdGhpcy5pbmRpY2F0b3IkLFxuICAgIHRoaXMucmVsb2FkJCxcbiAgXSkucGlwZShcbiAgICB0YXAoKFssIGluZGljYXRvcl0pID0+IHtcbiAgICAgIHRoaXMuaGFuZGxlVGltZVBhcmFtcygpO1xuICAgICAgdGhpcy5oYW5kbGVEYXRlQXhpc0xhYmVsRm9ybWF0cyh0aGlzLmNoYXJ0UGFyYW1zKTtcbiAgICAgIHRoaXMuaGFuZGVsQ2hhcnRTdGF0dXMoe1xuICAgICAgICBsb2FkaW5nOiAhIWluZGljYXRvcj8ubGVuZ3RoLFxuICAgICAgICBmYWlsZWQ6IGZhbHNlLFxuICAgICAgICBub0RhdGE6ICFpbmRpY2F0b3I/Lmxlbmd0aCxcbiAgICAgIH0pO1xuICAgIH0pLFxuICAgIHN3aXRjaE1hcCgoW18sIGluZGljYXRvcl0pID0+XG4gICAgICBpbmRpY2F0b3I/Lmxlbmd0aCAmJiB0aGlzLmNoYXJ0UGFyYW1zXG4gICAgICAgID8gdGhpcy5zZXJ2aWNlLnJlcXVlc3RDaGFydERhdGEodGhpcy5jaGFydFBhcmFtcywgaW5kaWNhdG9yKS5waXBlKFxuICAgICAgICAgICAgY2F0Y2hFcnJvcigoKSA9PiB7XG4gICAgICAgICAgICAgIHRoaXMuaGFuZGVsQ2hhcnRTdGF0dXMoeyBsb2FkaW5nOiBmYWxzZSwgZmFpbGVkOiB0cnVlIH0pO1xuICAgICAgICAgICAgICByZXR1cm4gb2YobnVsbCk7XG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICApXG4gICAgICAgIDogb2YobnVsbCksXG4gICAgKSxcbiAgKTtcblxuICBoYW5kbGVUaW1lUGFyYW1zKCkge1xuICAgIGxldCB0aW1lUGFyYW1zID0gdGhpcy5tZXRyaWNBcGlQYXJhbXM7XG4gICAgaWYgKHRpbWVQYXJhbXMpIHtcbiAgICAgIGlmIChjaGVja0ludGVydmFsKHRoaXMubWV0cmljQXBpUGFyYW1zLCB0aGlzLl9jYWNoZVRpbWUpKSB7XG4gICAgICAgIHRoaXMuX2NhY2hlVGltZSA9IHRoaXMubWV0cmljQXBpUGFyYW1zO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGltZVBhcmFtcyA9IHRoaXMuX2NhY2hlVGltZTtcbiAgICAgIH1cbiAgICAgIHRoaXMuY2hhcnRQYXJhbXMgPSB7XG4gICAgICAgIC4uLnRoaXMubWV0cmljQXBpUGFyYW1zLFxuICAgICAgICAuLi50aW1lUGFyYW1zLFxuICAgICAgfTtcbiAgICB9XG4gIH1cblxuICBoYW5kbGVNZXRyaWNEYXRhUGlwZSgpIHtcbiAgICByZXR1cm4gcGlwZShcbiAgICAgIHRhcCgoKSA9PiB7XG4gICAgICAgIGlmICh0aGlzLmlzQ3VzdG9tU2VyaWVzKSB7XG4gICAgICAgICAgdGhpcy5oYW5kbGVUaW1lUGFyYW1zKCk7XG4gICAgICAgIH1cbiAgICAgIH0pLFxuICAgICAgZmlsdGVyKFxuICAgICAgICAocmVzOiBNZXRyaWNSZXN1bHRbXSkgPT5cbiAgICAgICAgICAhIXRoaXMuY2hhcnRQYXJhbXMgJiYgKCEhcmVzIHx8ICF0aGlzLmluZGljYXRvcj8ubGVuZ3RoKSxcbiAgICAgICksXG4gICAgICBtYXAoKHJlczogTWV0cmljUmVzdWx0W10pID0+IHtcbiAgICAgICAgY29uc3QgZm9ybWF0ID0gdGhpcy5kYXRhRm9ybWF0IHx8IHRoaXMuc2VydmljZS5oYW5kZWxDaGFydERhdGE7XG4gICAgICAgIC8vIGBmaWxsTnVsbENoYXJ0RGF0YWAgcHJvbWV0aGV1cyDlrZjlnKjmn5DkuKrml7bpl7TngrnmnKrph4fpm4bliLDmlbDmja7nmoTmg4XlhrXvvIzov5nph4zkuLrljLrliIYg5pyq6YeH6ZuG5Yiw5pWw5o2u5Li6MOeahOaDheWGte+8jOi/memHjOWJjeerr+agueaNruaXtumXtOauteiHquWKqOWhq+WFheaVsOaNrlxuICAgICAgICAvLyDlkI7nq68g6ZyA6KaB5ZKMIFByb21ldGhldXMgQVBJIOS/neaMgeWFvOWuue+8jOi/mOaYr+WcqOWJjeerr+WBmuWkhOeQhuWhq+WFhVxuICAgICAgICByZXR1cm4gZm9ybWF0KHJlcywgdGhpcy5pbmRpY2F0b3IgfHwgW10sIHRoaXMuZGVwZW5kT25EYXRhKT8ubWFwKFxuICAgICAgICAgIGl0ZW0gPT4gKHtcbiAgICAgICAgICAgIC4uLml0ZW0sXG4gICAgICAgICAgICB1bml0OiB0aGlzLnVuaXQsXG4gICAgICAgICAgICB2YWx1ZXM6IGZpbGxOdWxsQ2hhcnREYXRhKFxuICAgICAgICAgICAgICB0aGlzLmNoYXJ0UGFyYW1zLFxuICAgICAgICAgICAgICBpdGVtLnZhbHVlcyBhcyBBcnJheTxDaGFydERhdGFJdGVtPHsgeDogbnVtYmVyOyB5OiBudW1iZXIgfT4+LFxuICAgICAgICAgICAgICB0aGlzLnN0ZXBMaW5lLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgICB9KSxcbiAgICAgICAgKTtcbiAgICAgIH0pLFxuICAgICAgdGFwKHJlcyA9PiB7XG4gICAgICAgIHRoaXMuaGFuZGxlRGF0ZUF4aXNMYWJlbEZvcm1hdHModGhpcy5jaGFydFBhcmFtcyk7XG4gICAgICAgIHRoaXMuaGFuZGVsQ2hhcnRTdGF0dXMoe1xuICAgICAgICAgIGxvYWRpbmc6IGZhbHNlLFxuICAgICAgICAgIG5vRGF0YTogaGFzTm9EYXRhKHJlcyksXG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgICAgIH0pLFxuICAgICAgbWFwKHJlcyA9PlxuICAgICAgICByZXM/Lmxlbmd0aFxuICAgICAgICAgID8gcmVzXG4gICAgICAgICAgOiBbXG4gICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICB2YWx1ZXM6IGZpbGxOdWxsQ2hhcnREYXRhKHRoaXMuY2hhcnRQYXJhbXMsIFtdLCB0aGlzLnN0ZXBMaW5lKSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIF0sXG4gICAgICApLFxuICAgICAgd2l0aExhdGVzdEZyb20odGhpcy5hZGFwdFVuaXQkKSxcbiAgICAgIG1hcCgoW3JlcywgX2FkYXB0VW5pdF0pID0+IHtcbiAgICAgICAgaWYgKF9hZGFwdFVuaXQgJiYgIXRoaXMubm9EYXRhKSB7XG4gICAgICAgICAgY29uc3QgeyBiYXNlLCB1bml0IH0gPSB0aGlzLnNlcnZpY2UuYWRhcHRDaGFydFVuaXQocmVzLCBfYWRhcHRVbml0KTtcbiAgICAgICAgICB0aGlzLnVuaXQgPSBgdW5pdF8ke3VuaXR9YDtcbiAgICAgICAgICBpZiAodHlwZW9mIF9hZGFwdFVuaXQgPT09ICdvYmplY3QnKSB7XG4gICAgICAgICAgICBjb25zdCB7IGRlZmF1bHRQcmVmaXggPSB0cnVlLCBwcmVmaXggfSA9IF9hZGFwdFVuaXQ7XG4gICAgICAgICAgICB0aGlzLnVuaXQgPSBkZWZhdWx0UHJlZml4XG4gICAgICAgICAgICAgID8gYHVuaXRfJHt1bml0fWBcbiAgICAgICAgICAgICAgOiBgJHtwcmVmaXggfHwgJyd9JHt1bml0fWA7XG4gICAgICAgICAgfVxuICAgICAgICAgIHJldHVybiAocmVzIGFzIENoYXJ0RGF0YVtdKS5tYXAoKGl0ZW06IENoYXJ0RGF0YSkgPT4gKHtcbiAgICAgICAgICAgIC4uLml0ZW0sXG4gICAgICAgICAgICB1bml0OiB0aGlzLnVuaXQsXG4gICAgICAgICAgICB2YWx1ZXM6IGl0ZW0udmFsdWVzLm1hcChkID0+ICh7XG4gICAgICAgICAgICAgIC4uLmQsXG4gICAgICAgICAgICAgIHk6IGQueSA/IGQueSAvIGJhc2UgOiBkLnksXG4gICAgICAgICAgICB9KSksXG4gICAgICAgICAgfSkpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiByZXMubWFwKGl0ZW0gPT4gKHsgLi4uaXRlbSwgdW5pdDogdGhpcy51bml0IH0pKSBhcyBDaGFydERhdGFbXTtcbiAgICAgIH0pLFxuICAgICAgdGFwKCgpID0+IHtcbiAgICAgICAgdGhpcy5kYXRhQ29tcGxldGVkLm5leHQoKTtcbiAgICAgIH0pLFxuICAgICAgcHVibGlzaFJlZigpLFxuICAgICk7XG4gIH1cblxuICByZWZyZXNoKCkge1xuICAgIHRoaXMucmVsb2FkJC5uZXh0KG51bGwpO1xuICAgIHRoaXMucmVmcmVzaEV2ZW50Lm5leHQobnVsbCk7XG4gIH1cblxuICBwcml2YXRlIGhhbmRlbENoYXJ0U3RhdHVzKHN0YXR1czogQ2hhcnRTdGF0dXMpIHtcbiAgICB0aGlzLl9jaGFydFN0YXR1cyQkLm5leHQoe1xuICAgICAgLi4uc3RhdHVzLFxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBoYW5kbGVEYXRlQXhpc0xhYmVsRm9ybWF0cyhwYXJhbXM6IE1ldHJpY0FwaVBhcmFtcykge1xuICAgIGlmIChwYXJhbXMpIHtcbiAgICAgIGNvbnN0IGRpZmYgPSBwYXJhbXMuZW5kIC0gcGFyYW1zLnN0YXJ0O1xuICAgICAgY29uc3QgbTEgPSAyNCAqIDYwICogNjA7XG4gICAgICBjb25zdCBtMyA9IDMgKiBtMTtcbiAgICAgIGNvbnN0IG03ID0gNyAqIG0xO1xuICAgICAgY29uc3QgTV9EX0ZPUk1BVCA9ICdNTS1ERCc7XG4gICAgICBjb25zdCBmb3JtYXQgPVxuICAgICAgICBkaWZmID49IG03XG4gICAgICAgICAgPyBNX0RfRk9STUFUXG4gICAgICAgICAgOiBkaWZmIDwgbTcgJiYgKGRpZmYgPj0gbTMgfHwgZGlmZiA+IG0xKVxuICAgICAgICAgID8gYCR7TV9EX0ZPUk1BVH0gJHtEQVRFX1RJTUVfRk9STUFUX1hfQVhJU31gXG4gICAgICAgICAgOiBEQVRFX1RJTUVfRk9STUFUX1hfQVhJUztcbiAgICAgIHRoaXMuZGF0ZUF4aXNMYWJlbEZvcm1hdHMgPSBmb3JtYXQ7XG4gICAgICAvLyBodHRwczovL2QzanMub3JnLmNuL2RvY3VtZW50L2QzLXRpbWUtZm9ybWF0LyNhcGktcmVmZXJlbmNlXG4gICAgICB0aGlzLmRhdGVYQXhpc0xhYmVsRm9ybWF0cyA9XG4gICAgICAgIGRpZmYgPj0gbTdcbiAgICAgICAgICA/ICclbS0lZCdcbiAgICAgICAgICA6IGRpZmYgPCBtNyAmJiAoZGlmZiA+PSBtMyB8fCBkaWZmID4gbTEpXG4gICAgICAgICAgPyBgJW0tJWQgJUg6JU1gXG4gICAgICAgICAgOiAnJUg6JU0nO1xuICAgICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cbiAgfVxufVxuIiwiPGFjbC12aWV3LXpjaGFydFxuICBbY2xhc3Mub3ZlcmZsb3ctZGlzcGxheV09XCIhdG9vbHRpcEFwcGVuZFRvQm9keVwiXG4gIFtjb250ZXh0Q2FsbGJhY2tGdW5jdGlvbl09XCJjb250ZXh0Q2FsbGJhY2tGdW5jdGlvblwiXG4gIFt1bml0XT1cInVuaXRcIlxuICBbaGlkZUhlYWRlcl09XCJoaWRlSGVhZGVyXCJcbiAgW2N1c3RvbU5vRGF0YVRpdGxlXT1cImN1c3RvbU5vRGF0YVRpdGxlXCJcbiAgW2NoYXJ0U3RhdHVzXT1cInN0YXR1cyQgfCBhc3luY1wiXG4gIFtiYWNrZ3JvdW5kQ29sb3JdPVwiYmFja2dyb3VuZENvbG9yXCJcbiAgW3Nlcmllc109XCJzZXJpZXMkIHwgYXN5bmNcIlxuICBbY3VydmVUeXBlXT1cImN1cnZlVHlwZVwiXG4gIFt0b29sdGlwQXBwZW5kVG9Cb2R5XT1cInRvb2x0aXBBcHBlbmRUb0JvZHlcIlxuICBbbW9kZV09XCJtb2RlXCJcbiAgW2dyaWRPZmZzZXRUb3BdPVwiZ3JpZE9mZnNldFRvcFwiXG4gIFt0aXRsZV09XCJ0aXRsZVwiXG4gIFtjaGFydFR5cGVdPVwiY2hhcnRUeXBlXCJcbiAgW2hpZGVUaXRsZV09XCJoaWRlVGl0bGVcIlxuICBbdG9vbHRpcEhpZGVdPVwidG9vbHRpcEhpZGVcIlxuICBbdG9vbHRpcFNvcnRNZXRob2RdPVwidG9vbHRpcFNvcnRNZXRob2RcIlxuICBbdGl0bGVEZXNjcmlwdGlvbl09XCJ0aXRsZURlc2NyaXB0aW9uXCJcbiAgW3RpdGxlRGVzY3JpcHRpb25Db250ZXh0XT1cInRpdGxlRGVzY3JpcHRpb25Db250ZXh0XCJcbiAgW2hpZGVMZWdlbmRdPVwiKGRlcGVuZE9uRGF0YSAmJiBub0RhdGEpIHx8IGhpZGVMZWdlbmRcIlxuICBbZGF0ZUF4aXNMYWJlbEZvcm1hdHNdPVwiZGF0ZUF4aXNMYWJlbEZvcm1hdHNcIlxuICBbZW5hYmxlWm9vbV09XCJlbmFibGVab29tXCJcbiAgW3N0ZXBMaW5lXT1cInN0ZXBMaW5lXCJcbiAgW3JvdGF0ZWRdPVwicm90YXRlZFwiXG4gIFtyaWdodE9wZXJhdGlvbl09XCJyaWdodE9wZXJhdGlvblwiXG4gIFtsZWZ0T3BlcmF0aW9uXT1cImxlZnRPcGVyYXRpb25cIlxuICBbbGVmdE9wZXJhdGlvbkNvbnRleHRdPVwibGVmdE9wZXJhdGlvbkNvbnRleHRcIlxuICBbbGVnZW5kVGVtcGxhdGVdPVwibGVnZW5kVGVtcGxhdGVcIlxuICBbbGVnZW5kU2VsZWN0QWxsT3BlcmF0aW9uXT1cImxlZ2VuZFNlbGVjdEFsbE9wZXJhdGlvblwiXG4gIFtsZWdlbmRTZWxlY3RBbGxOYW1lXT1cImxlZ2VuZFNlbGVjdEFsbE5hbWVcIlxuICBbeUFjY2Vzc29yXT1cInlBY2Nlc3NvciB8fCAoeUFjY2Vzc29yJCB8IGFzeW5jKVwiXG4gIFt4QWNjZXNzb3JdPVwieEFjY2Vzc29yXCJcbiAgW3lBeGlzTWluU3RlcF09XCJ5QXhpc01pblN0ZXBcIlxuICBbaGlkZVRvb2x0aXBVbml0XT1cImhpZGVUb29sdGlwVW5pdFwiXG4gIFt0b29sdGlwVGl0bGVUZW1wbGF0ZV09XCJ0b29sdGlwVGl0bGVUZW1wbGF0ZVwiXG4gIFt0b29sdGlwQXV0b1NvcnRdPVwidG9vbHRpcEF1dG9Tb3J0XCJcbiAgW3Rvb2x0aXBUcmFuc2xhdGlvbl09XCJ0b29sdGlwVHJhbnNsYXRpb25cIlxuICBbdG9vbHRpcFBvaW50TmFtZVRlbXBsYXRlXT1cInRvb2x0aXBQb2ludE5hbWVUZW1wbGF0ZVwiXG4gIFt0b29sdGlwUG9pbnRUZW1wbGF0ZV09XCJ0b29sdGlwUG9pbnRUZW1wbGF0ZVwiXG4gIFt0b29sdGlwUG9pbnRUZW1wbGF0ZUNvbnRleHRdPVwidG9vbHRpcFBvaW50VGVtcGxhdGVDb250ZXh0XCJcbiAgW3hQbG90TGluZXNdPVwieFBsb3RMaW5lc1wiXG4gIFt4UGxvdEVtcHR5XT1cInhQbG90RW1wdHlcIlxuICBbeVBsb3RMaW5lc0hpZGVdPVwieVBsb3RMaW5lc0hpZGVcIlxuICBbeVBsb3RMaW5lc109XCJ5UGxvdExpbmVzXCJcbiAgKG1vdXNlVXBFdmVudCk9XCJtb3VzZVVwRXZlbnQubmV4dCgkZXZlbnQpXCJcbiAgKG1hcmtDbGlja0V2ZW50KT1cIm1hcmtDbGlja0V2ZW50Lm5leHQoJGV2ZW50KVwiXG4gIChyZWZyZXNoRXZlbnQpPVwicmVmcmVzaCgpXCJcbj5cbjwvYWNsLXZpZXctemNoYXJ0PlxuPCEtLSBbdG9vbHRpcFBvaW50Rm9ybWF0XT1cInRvb2x0aXBQb2ludEZvcm1hdFwiIC0tPlxuIl19
|
|
346
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWV0cmljLWNoYXJ0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL3NyYy9tZXRyaWMtY2hhcnQvbWV0cmljLWNoYXJ0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL3NyYy9tZXRyaWMtY2hhcnQvbWV0cmljLWNoYXJ0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFDQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsWUFBWSxFQUNaLFdBQVcsRUFDWCxLQUFLLEVBRUwsTUFBTSxFQUNOLFdBQVcsR0FDWixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQ0wsVUFBVSxFQUNWLE9BQU8sRUFDUCxhQUFhLEVBQ2IsS0FBSyxFQUNMLEVBQUUsRUFDRixJQUFJLEVBQ0osZUFBZSxFQUNmLFVBQVUsRUFDVixNQUFNLEVBQ04sR0FBRyxFQUNILFNBQVMsRUFDVCxHQUFHLEVBQ0gsY0FBYyxHQUNmLE1BQU0sTUFBTSxDQUFDO0FBR2QsT0FBTyxFQUdMLHVCQUF1QixHQUN4QixNQUFNLHFCQUFxQixDQUFDO0FBQzdCLE9BQU8sRUFBYSxlQUFlLEVBQUUsVUFBVSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFRNUUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDNUQsT0FBTyxFQUFtQixrQkFBa0IsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUVoRSxPQUFPLEVBQUUsYUFBYSxFQUFFLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxNQUFNLFNBQVMsQ0FBQzs7O0FBUXRFLE1BQU0sT0FBTyxvQkFBb0I7SUFxQi9CLElBQ0ksUUFBUTtRQUNWLE9BQU8sQ0FBQyxJQUFJLENBQUMsbUJBQW1CLElBQUksT0FBTyxDQUFDO0lBQzlDLENBQUM7SUE0SUQsSUFBSSxTQUFTO1FBQ1gsT0FBTyxD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QixLQUFLO1lBQ2EsYUFBYSxNQUV2QixjQUFjO2tCQUF0QixLQUFLO1lBSUcsV0FBVztrQkFBbkIsS0FBSztZQUVOLFlBQVksTUFFSCxrQkFBa0I7a0JBQTFCLEtBQUs7WUFFRyxVQUFVO2tCQUFsQixLQUFLO1lBRUcsVUFBVTtrQkFBbEIsS0FBSztZQUVHLFVBQVU7a0JBQWxCLEtBQUs7WUFFRyxpQkFBaUI7a0JBQXpCLEtBQUs7WUFFRyx3QkFBd0I7a0JBQWhDLEtBQUs7WUFFRyxjQUFjO2tCQUF0QixLQUFLO1lBRUcsVUFBVTtrQkFBbEIsS0FBSztZQUVHLFFBQVE7a0JBQWhCLEtBQUs7WUFFRyxvQkFBb0I7a0JBQTVCLEtBQUs7WUFFRyxTQUFTO2tCQUFqQixLQUFLO1lBRUcsU0FBUztrQkFBakIsS0FBSztZQUVJLFlBQVk7a0JBQXJCLE1BQU07WUFFRyxjQUFjO2tCQUF2QixNQUFNO1lBRUcsWUFBWTtrQkFBckIsTUFBTTtZQUVHLGFBQWE7a0JBQXRCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUb29sdGlwQ29udGV4dCB9IGZyb20gJ0BhbGF1ZGEvY2hhcnQnO1xuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSG9zdEJpbmRpbmcsXG4gIElucHV0LFxuICBPbkluaXQsXG4gIE91dHB1dCxcbiAgVGVtcGxhdGVSZWYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ3VydmVGYWN0b3J5LCBDdXJ2ZUZhY3RvcnlMaW5lT25seSB9IGZyb20gJ2QzJztcbmltcG9ydCB7XG4gIE9ic2VydmFibGUsXG4gIFN1YmplY3QsXG4gIGNvbWJpbmVMYXRlc3QsXG4gIG1lcmdlLFxuICBvZixcbiAgcGlwZSxcbiAgQmVoYXZpb3JTdWJqZWN0LFxuICBjYXRjaEVycm9yLFxuICBmaWx0ZXIsXG4gIG1hcCxcbiAgc3dpdGNoTWFwLFxuICB0YXAsXG4gIHdpdGhMYXRlc3RGcm9tLFxufSBmcm9tICdyeGpzJztcbmltcG9ydCB7IENoYXJ0LCBUb29sdGlwVmFsdWUgfSBmcm9tICd6ei1jaGFydCc7XG5cbmltcG9ydCB7XG4gIEFyZWFQb3NpdGlvbixcbiAgQ29udGV4dEl0ZW0sXG4gIERBVEVfVElNRV9GT1JNQVRfWF9BWElTLFxufSBmcm9tICcuLi9jaGFydC9wdWJsaWMtYXBpJztcbmltcG9ydCB7IFN0cmluZ01hcCwgT2JzZXJ2YWJsZUlucHV0LCBwdWJsaXNoUmVmIH0gZnJvbSAnLi4vY29yZS9wdWJsaWMtYXBpJztcbmltcG9ydCB7XG4gIENoYXJ0RGF0YSxcbiAgQ2hhcnREYXRhSXRlbSxcbiAgQ2hhcnRTdGF0dXMsXG4gIFhQbG90TGluZXMsXG59IGZyb20gJy4uL3ZpZXctY2hhcnQvcHVibGljLWFwaSc7XG5cbmltcG9ydCB7IENvbW1vbkNoYXJ0U2VydmljZSB9IGZyb20gJy4vY29tbW9uLWNoYXJ0LnNlcnZpY2UnO1xuaW1wb3J0IHsgTWF0Y2hVbml0UGFyYW1zLCBQSUNLRVJfVElNRV9SQU5HRVMgfSBmcm9tICcuL2hlbHBlcnMnO1xuaW1wb3J0IHsgSW5kaWNhdG9yLCBNZXRyaWNBcGlQYXJhbXMsIE1ldHJpY1Jlc3VsdCB9IGZyb20gJy4vdHlwZXMnO1xuaW1wb3J0IHsgY2hlY2tJbnRlcnZhbCwgZmlsbE51bGxDaGFydERhdGEsIGhhc05vRGF0YSB9IGZyb20gJy4vdXRpbHMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhY2wtbWV0cmljLWNoYXJ0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL21ldHJpYy1jaGFydC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL21ldHJpYy1jaGFydC5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgTWV0cmljQ2hhcnRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBASW5wdXQoKSBjb250ZXh0Q2FsbGJhY2tGdW5jdGlvbjogKGNvbnRleHQ6IENoYXJ0KSA9PiB2b2lkO1xuXG4gIEBJbnB1dCgpIGJhY2tncm91bmRDb2xvcjogc3RyaW5nO1xuXG4gIEBJbnB1dCgpIGhpZGVIZWFkZXI6IGJvb2xlYW47XG5cbiAgQElucHV0KCkgdGl0bGU6IHN0cmluZyB8IFRlbXBsYXRlUmVmPHVua25vd24+O1xuXG4gIEBJbnB1dCgpIGhpZGVUaXRsZTogYm9vbGVhbjtcblxuICBASW5wdXQoKSBjaGFydFR5cGU6ICdsaW5lJyB8ICdhcmVhJyB8ICdiYXInIHwgJ3BvaW50JyB8ICdzdGF0JyA9ICdhcmVhJztcblxuICBASW5wdXQoKSB0aXRsZURlc2NyaXB0aW9uOiBzdHJpbmcgfCBUZW1wbGF0ZVJlZjx1bmtub3duPjtcblxuICBASW5wdXQoKSB0aXRsZURlc2NyaXB0aW9uQ29udGV4dDogU3RyaW5nTWFwO1xuXG4gIEBJbnB1dCgpIHVuaXQ6IHN0cmluZztcblxuICBASW5wdXQoKSB0b29sdGlwQXBwZW5kVG9Cb2R5ID0gdHJ1ZTtcblxuICBASG9zdEJpbmRpbmcoJ3N0eWxlLm92ZXJmbG93JylcbiAgZ2V0IG92ZXJmbG93KCkge1xuICAgIHJldHVybiAhdGhpcy50b29sdGlwQXBwZW5kVG9Cb2R5ICYmICd1bnNldCc7XG4gIH1cblxuICBAT2JzZXJ2YWJsZUlucHV0KClcbiAgdW5pdCQhOiBPYnNlcnZhYmxlPHN0cmluZz47XG5cbiAgQElucHV0KCkgaW5kaWNhdG9yOiBJbmRpY2F0b3JbXTtcblxuICBASW5wdXQoKSBncmlkT2Zmc2V0VG9wID0gMDtcblxuICBASW5wdXQoKSB5QXhpc01pblN0ZXA/OiBudW1iZXI7XG5cbiAgQElucHV0KCkgcm90YXRlZDogYm9vbGVhbjtcblxuICBASW5wdXQoKSBiYXJUeXBlOiAnc3RhbmRhcmQnIHwgJ3N0YWNrZWQnID0gJ3N0YW5kYXJkJztcblxuICBAT2JzZXJ2YWJsZUlucHV0KClcbiAgaW5kaWNhdG9yJCE6IE9ic2VydmFibGU8SW5kaWNhdG9yW10+O1xuXG4gIEBJbnB1dCgpIG1ldHJpY0FwaVBhcmFtczogTWV0cmljQXBpUGFyYW1zO1xuXG4gIEBPYnNlcnZhYmxlSW5wdXQoKVxuICBtZXRyaWNBcGlQYXJhbXMkITogT2JzZXJ2YWJsZTxNZXRyaWNBcGlQYXJhbXM+O1xuXG4gIEBJbnB1dCgpIHRvb2x0aXBQb2ludE5hbWVUZW1wbGF0ZTogVGVtcGxhdGVSZWY8dW5rbm93bj47XG5cbiAgQElucHV0KCkgdG9vbHRpcFBvaW50VGVtcGxhdGU6IFRlbXBsYXRlUmVmPHVua25vd24+O1xuXG4gIEBJbnB1dCgpIGxlZ2VuZFRlbXBsYXRlOiBUZW1wbGF0ZVJlZjx1bmtub3duPiB8IHN0cmluZztcblxuICBASW5wdXQoKSBsZWdlbmRTZWxlY3RBbGxPcGVyYXRpb24gPSBmYWxzZTtcblxuICBASW5wdXQoKSBsZWdlbmRTZWxlY3RBbGxOYW1lOiBzdHJpbmc7XG5cbiAgQElucHV0KCkgdG9vbHRpcEhpZGU6IGJvb2xlYW47XG5cbiAgQElucHV0KCkgdG9vbHRpcFBvaW50Rm9ybWF0OiAoZDogQ29udGV4dEl0ZW0pID0+IG51bWJlciB8IHN0cmluZztcblxuICBASW5wdXQoKSB0b29sdGlwUG9pbnRUZW1wbGF0ZUNvbnRleHQ6IHsgW2tleTogc3RyaW5nXTogYW55IH07XG5cbiAgQElucHV0KCkgdG9vbHRpcENvbHVtbkxheW91dDogYm9vbGVhbjtcblxuICBASW5wdXQoKSBoaWRlTGVnZW5kID0gZmFsc2U7XG5cbiAgQElucHV0KCkgdG9vbHRpcEF1dG9Tb3J0OiBib29sZWFuO1xuXG4gIEBJbnB1dCgpIHRvb2x0aXBTb3J0TWV0aG9kOiAoYTogVG9vbHRpcFZhbHVlLCBiOiBUb29sdGlwVmFsdWUpID0+IG51bWJlcjtcblxuICBASW5wdXQoKSBoaWRlVG9vbHRpcFVuaXQ6IGJvb2xlYW47XG5cbiAgQElucHV0KCkgbGVmdE9wZXJhdGlvbjogVGVtcGxhdGVSZWY8dW5rbm93bj47XG5cbiAgQElucHV0KCkgbGVmdE9wZXJhdGlvbkNvbnRleHQ6IFN0cmluZ01hcDtcblxuICBASW5wdXQoKSByaWdodE9wZXJhdGlvbjogVGVtcGxhdGVSZWY8dW5rbm93bj47XG5cbiAgQElucHV0KCkgbW9kZTogJ2NhcmQnIHwgJ2RlZmF1bHQnID0gJ2RlZmF1bHQnO1xuXG4gIEBJbnB1dCgpXG4gIGFkYXB0VW5pdDogYm9vbGVhbiB8IE1hdGNoVW5pdFBhcmFtcztcblxuICBAT2JzZXJ2YWJsZUlucHV0KClcbiAgYWRhcHRVbml0JCE6IE9ic2VydmFibGU8Ym9vbGVhbiB8IE1hdGNoVW5pdFBhcmFtcz47XG5cbiAgQElucHV0KClcbiAgcGVyY2VudDogYm9vbGVhbjtcblxuICBAT2JzZXJ2YWJsZUlucHV0KClcbiAgcGVyY2VudCQhOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuXG4gIEBJbnB1dCgpIGRlcGVuZE9uRGF0YTogYm9vbGVhbjtcblxuICBASW5wdXQoKSBjdXN0b21Ob0RhdGFUaXRsZTogVGVtcGxhdGVSZWY8dW5rbm93bj4gfCBzdHJpbmc7XG5cbiAgQElucHV0KCkgZGF0YUZvcm1hdDogKFxuICAgIGQ6IE1ldHJpY1Jlc3VsdFtdLFxuICAgIGluZGljYXRvcjogSW5kaWNhdG9yW10sXG4gICkgPT4gQ2hhcnREYXRhW107XG5cbiAgQElucHV0KCkgY3VzdG9tU2VyaWVzITogTWV0cmljUmVzdWx0W107XG4gIEBPYnNlcnZhYmxlSW5wdXQoKSBjdXN0b21TZXJpZXMkITogT2JzZXJ2YWJsZTxNZXRyaWNSZXN1bHRbXT47XG5cbiAgQElucHV0KCkgaXNDdXN0b21TZXJpZXM6IGJvb2xlYW47XG5cbiAgc2VyaWVzJDogT2JzZXJ2YWJsZTxDaGFydERhdGFbXT47XG5cbiAgQElucHV0KCkgY2hhcnRTdGF0dXM6IENoYXJ0U3RhdHVzO1xuICBAT2JzZXJ2YWJsZUlucHV0KClcbiAgY2hhcnRTdGF0dXMkITogT2JzZXJ2YWJsZTxDaGFydFN0YXR1cz47XG5cbiAgQElucHV0KCkgdG9vbHRpcFRyYW5zbGF0aW9uID0gdHJ1ZTtcblxuICBASW5wdXQoKSB4UGxvdExpbmVzOiBYUGxvdExpbmVzO1xuXG4gIEBJbnB1dCgpIHhQbG90RW1wdHk6IGJvb2xlYW47XG5cbiAgQElucHV0KCkgeVBsb3RMaW5lczogVG9vbHRpcENvbnRleHQ7XG5cbiAgQElucHV0KCkgeVBsb3RMaW5lc1Rvb2x0aXA6IFRlbXBsYXRlUmVmPHVua25vd24+O1xuXG4gIEBJbnB1dCgpIHlQbG90TGluZXNUb29sdGlwQ29udGV4dDogU3RyaW5nTWFwO1xuXG4gIEBJbnB1dCgpIHlQbG90TGluZXNIaWRlID0gZmFsc2U7XG5cbiAgQElucHV0KCkgZW5hYmxlWm9vbTogYm9vbGVhbjtcblxuICBASW5wdXQoKSBzdGVwTGluZTogYm9vbGVhbjtcblxuICBASW5wdXQoKSB0b29sdGlwVGl0bGVUZW1wbGF0ZTogVGVtcGxhdGVSZWY8dW5rbm93bj47XG5cbiAgQElucHV0KCkgeUFjY2Vzc29yOiAoZDogQ2hhcnREYXRhSXRlbSkgPT4gbnVtYmVyO1xuXG4gIEBJbnB1dCgpIGN1cnZlVHlwZTogQ3VydmVGYWN0b3J5IHwgQ3VydmVGYWN0b3J5TGluZU9ubHk7XG5cbiAgQE91dHB1dCgpIG1vdXNlVXBFdmVudCA9IG5ldyBFdmVudEVtaXR0ZXI8QXJlYVBvc2l0aW9uPigpO1xuXG4gIEBPdXRwdXQoKSBtYXJrQ2xpY2tFdmVudCA9IG5ldyBFdmVudEVtaXR0ZXI8VG9vbHRpcENvbnRleHQ+KCk7XG5cbiAgQE91dHB1dCgpIHJlZnJlc2hFdmVudCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBAT3V0cHV0KCkgZGF0YUNvbXBsZXRlZCA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICByZWxvYWQkID0gbmV3IEJlaGF2aW9yU3ViamVjdChudWxsKTtcblxuICBfY2hhcnRTdGF0dXMkJCA9IG5ldyBTdWJqZWN0PENoYXJ0U3RhdHVzPigpO1xuICBfc3RhdHVzOiBDaGFydFN0YXR1cyA9IHt9O1xuICBzdGF0dXMkID0gbWVyZ2UodGhpcy5jaGFydFN0YXR1cyQsIHRoaXMuX2NoYXJ0U3RhdHVzJCQpLnBpcGUoXG4gICAgbWFwKHN0YXR1cyA9PiAoe1xuICAgICAgLi4udGhpcy5fc3RhdHVzLFxuICAgICAgLi4uc3RhdHVzLFxuICAgIH0pKSxcbiAgICB0YXAoc3RhdHVzID0+ICh0aGlzLl9zdGF0dXMgPSBzdGF0dXMpKSxcbiAgICBwdWJsaXNoUmVmKCksXG4gICk7XG5cbiAgbm9EYXRhOiBib29sZWFuO1xuXG4gIGRhdGVBeGlzTGFiZWxGb3JtYXRzID0gREFURV9USU1FX0ZPUk1BVF9YX0FYSVM7XG5cbiAgZGF0ZVhBeGlzTGFiZWxGb3JtYXRzID0gJyVIOiVNJztcblxuICBnZXQgeEFjY2Vzc29yKCkge1xuICAgIHJldHVybiAoZDogQ2hhcnREYXRhSXRlbTx7IHg6IG51bWJlcjsgeTogbnVtYmVyIH0+KSA9PiBkLnggKiAxMDAwO1xuICB9XG5cbiAgeUFjY2Vzc29yJCA9IHRoaXMucGVyY2VudCQucGlwZShcbiAgICB0YXAocGVyY2VudCA9PiB7XG4gICAgICBpZiAocGVyY2VudCkge1xuICAgICAgICB0aGlzLnVuaXQgPSAnJSc7XG4gICAgICB9XG4gICAgfSksXG4gICAgbWFwKHBlcmNlbnQgPT4gKGQ6IENoYXJ0RGF0YUl0ZW08eyB4OiBudW1iZXI7IHk6IG51bWJlciB9PikgPT4ge1xuICAgICAgLy8gcHJvbWV0aGV1cyDlj6/og73lh7rnjrAgSW5maW5pdHnmg4XlhrXvvIzlpITnkIbkuLogbnVsbFxuICAgICAgaWYgKCFOdW1iZXIuaXNGaW5pdGUoZC55KSB8fCBTdHJpbmcoZC55KS5pbmNsdWRlcygnSW5mJykpIHtcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICB9XG4gICAgICByZXR1cm4gcGVyY2VudCAmJiBkLnkgPyArZC55ICogMTAwIDogZC55ID09PSBudWxsID8gZC55IDogK2QueTtcbiAgICB9KSxcbiAgKTtcblxuICBfY2FjaGVUaW1lOiBNZXRyaWNBcGlQYXJhbXMgPSB7XG4gICAgc3RhcnQ6IFBJQ0tFUl9USU1FX1JBTkdFU1sxXS5zdGFydFRpbWUoKSxcbiAgICBlbmQ6IFBJQ0tFUl9USU1FX1JBTkdFU1sxXS5lbmRUaW1lKCksXG4gICAgc3RlcDogUElDS0VSX1RJTUVfUkFOR0VTWzFdLnN0ZXAsXG4gIH07XG5cbiAgcHJpdmF0ZSBjaGFydFBhcmFtczogTWV0cmljQXBpUGFyYW1zO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgc2VydmljZTogQ29tbW9uQ2hhcnRTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgKSB7fVxuXG4gIG5nT25Jbml0KCkge1xuICAgIGlmICh0aGlzLm1ldHJpY0FwaVBhcmFtcykge1xuICAgICAgdGhpcy5fY2FjaGVUaW1lID0gdGhpcy5tZXRyaWNBcGlQYXJhbXM7XG4gICAgfVxuXG4gICAgdGhpcy5zZXJpZXMkID0gKFxuICAgICAgdGhpcy5pc0N1c3RvbVNlcmllcyA/IHRoaXMuY3VzdG9tU2VyaWVzJCA6IHRoaXMuZGVmYXVsdFNlcmllcyRcbiAgICApLnBpcGUodGhpcy5oYW5kbGVNZXRyaWNEYXRhUGlwZSgpKTtcbiAgfVxuXG4gIGRlZmF1bHRTZXJpZXMkOiBPYnNlcnZhYmxlPE1ldHJpY1Jlc3VsdFtdPiA9IGNvbWJpbmVMYXRlc3QoW1xuICAgIHRoaXMubWV0cmljQXBpUGFyYW1zJCxcbiAgICB0aGlzLmluZGljYXRvciQsXG4gICAgdGhpcy5yZWxvYWQkLFxuICBdKS5waXBlKFxuICAgIHRhcCgoWywgaW5kaWNhdG9yXSkgPT4ge1xuICAgICAgdGhpcy5oYW5kbGVUaW1lUGFyYW1zKCk7XG4gICAgICB0aGlzLmhhbmRsZURhdGVBeGlzTGFiZWxGb3JtYXRzKHRoaXMuY2hhcnRQYXJhbXMpO1xuICAgICAgdGhpcy5oYW5kZWxDaGFydFN0YXR1cyh7XG4gICAgICAgIGxvYWRpbmc6ICEhaW5kaWNhdG9yPy5sZW5ndGgsXG4gICAgICAgIGZhaWxlZDogZmFsc2UsXG4gICAgICAgIG5vRGF0YTogIWluZGljYXRvcj8ubGVuZ3RoLFxuICAgICAgfSk7XG4gICAgfSksXG4gICAgc3dpdGNoTWFwKChbXywgaW5kaWNhdG9yXSkgPT5cbiAgICAgIGluZGljYXRvcj8ubGVuZ3RoICYmIHRoaXMuY2hhcnRQYXJhbXNcbiAgICAgICAgPyB0aGlzLnNlcnZpY2UucmVxdWVzdENoYXJ0RGF0YSh0aGlzLmNoYXJ0UGFyYW1zLCBpbmRpY2F0b3IpLnBpcGUoXG4gICAgICAgICAgICBjYXRjaEVycm9yKCgpID0+IHtcbiAgICAgICAgICAgICAgdGhpcy5oYW5kZWxDaGFydFN0YXR1cyh7IGxvYWRpbmc6IGZhbHNlLCBmYWlsZWQ6IHRydWUgfSk7XG4gICAgICAgICAgICAgIHJldHVybiBvZihudWxsKTtcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgIClcbiAgICAgICAgOiBvZihudWxsKSxcbiAgICApLFxuICApO1xuXG4gIGhhbmRsZVRpbWVQYXJhbXMoKSB7XG4gICAgbGV0IHRpbWVQYXJhbXMgPSB0aGlzLm1ldHJpY0FwaVBhcmFtcztcbiAgICBpZiAodGltZVBhcmFtcykge1xuICAgICAgaWYgKGNoZWNrSW50ZXJ2YWwodGhpcy5tZXRyaWNBcGlQYXJhbXMsIHRoaXMuX2NhY2hlVGltZSkpIHtcbiAgICAgICAgdGhpcy5fY2FjaGVUaW1lID0gdGhpcy5tZXRyaWNBcGlQYXJhbXM7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aW1lUGFyYW1zID0gdGhpcy5fY2FjaGVUaW1lO1xuICAgICAgfVxuICAgICAgdGhpcy5jaGFydFBhcmFtcyA9IHtcbiAgICAgICAgLi4udGhpcy5tZXRyaWNBcGlQYXJhbXMsXG4gICAgICAgIC4uLnRpbWVQYXJhbXMsXG4gICAgICB9O1xuICAgIH1cbiAgfVxuXG4gIGhhbmRsZU1ldHJpY0RhdGFQaXBlKCkge1xuICAgIHJldHVybiBwaXBlKFxuICAgICAgdGFwKCgpID0+IHtcbiAgICAgICAgaWYgKHRoaXMuaXNDdXN0b21TZXJpZXMpIHtcbiAgICAgICAgICB0aGlzLmhhbmRsZVRpbWVQYXJhbXMoKTtcbiAgICAgICAgfVxuICAgICAgfSksXG4gICAgICBmaWx0ZXIoXG4gICAgICAgIChyZXM6IE1ldHJpY1Jlc3VsdFtdKSA9PlxuICAgICAgICAgICEhdGhpcy5jaGFydFBhcmFtcyAmJiAoISFyZXMgfHwgIXRoaXMuaW5kaWNhdG9yPy5sZW5ndGgpLFxuICAgICAgKSxcbiAgICAgIG1hcCgocmVzOiBNZXRyaWNSZXN1bHRbXSkgPT4ge1xuICAgICAgICBjb25zdCBmb3JtYXQgPSB0aGlzLmRhdGFGb3JtYXQgfHwgdGhpcy5zZXJ2aWNlLmhhbmRlbENoYXJ0RGF0YTtcbiAgICAgICAgLy8gYGZpbGxOdWxsQ2hhcnREYXRhYCBwcm9tZXRoZXVzIOWtmOWcqOafkOS4quaXtumXtOeCueacqumHh+mbhuWIsOaVsOaNrueahOaDheWGte+8jOi/memHjOS4uuWMuuWIhiDmnKrph4fpm4bliLDmlbDmja7kuLow55qE5oOF5Ya177yM6L+Z6YeM5YmN56uv5qC55o2u5pe26Ze05q616Ieq5Yqo5aGr5YWF5pWw5o2uXG4gICAgICAgIC8vIOWQjuerryDpnIDopoHlkowgUHJvbWV0aGV1cyBBUEkg5L+d5oyB5YW85a6577yM6L+Y5piv5Zyo5YmN56uv5YGa5aSE55CG5aGr5YWFXG4gICAgICAgIHJldHVybiBmb3JtYXQocmVzLCB0aGlzLmluZGljYXRvciB8fCBbXSwgdGhpcy5kZXBlbmRPbkRhdGEpPy5tYXAoXG4gICAgICAgICAgaXRlbSA9PiAoe1xuICAgICAgICAgICAgLi4uaXRlbSxcbiAgICAgICAgICAgIHVuaXQ6IHRoaXMudW5pdCxcbiAgICAgICAgICAgIHZhbHVlczogZmlsbE51bGxDaGFydERhdGEoXG4gICAgICAgICAgICAgIHRoaXMuY2hhcnRQYXJhbXMsXG4gICAgICAgICAgICAgIGl0ZW0udmFsdWVzIGFzIEFycmF5PENoYXJ0RGF0YUl0ZW08eyB4OiBudW1iZXI7IHk6IG51bWJlciB9Pj4sXG4gICAgICAgICAgICAgIHRoaXMuc3RlcExpbmUsXG4gICAgICAgICAgICApLFxuICAgICAgICAgIH0pLFxuICAgICAgICApO1xuICAgICAgfSksXG4gICAgICB0YXAocmVzID0+IHtcbiAgICAgICAgdGhpcy5oYW5kbGVEYXRlQXhpc0xhYmVsRm9ybWF0cyh0aGlzLmNoYXJ0UGFyYW1zKTtcbiAgICAgICAgdGhpcy5oYW5kZWxDaGFydFN0YXR1cyh7XG4gICAgICAgICAgbG9hZGluZzogZmFsc2UsXG4gICAgICAgICAgbm9EYXRhOiBoYXNOb0RhdGEocmVzKSxcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICAgICAgfSksXG4gICAgICBtYXAocmVzID0+XG4gICAgICAgIHJlcz8ubGVuZ3RoXG4gICAgICAgICAgPyByZXNcbiAgICAgICAgICA6IFtcbiAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIHZhbHVlczogZmlsbE51bGxDaGFydERhdGEodGhpcy5jaGFydFBhcmFtcywgW10sIHRoaXMuc3RlcExpbmUpLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgXSxcbiAgICAgICksXG4gICAgICB3aXRoTGF0ZXN0RnJvbSh0aGlzLmFkYXB0VW5pdCQpLFxuICAgICAgbWFwKChbcmVzLCBfYWRhcHRVbml0XSkgPT4ge1xuICAgICAgICBpZiAoX2FkYXB0VW5pdCAmJiAhdGhpcy5ub0RhdGEpIHtcbiAgICAgICAgICBjb25zdCB7IGJhc2UsIHVuaXQgfSA9IHRoaXMuc2VydmljZS5hZGFwdENoYXJ0VW5pdChyZXMsIF9hZGFwdFVuaXQpO1xuICAgICAgICAgIHRoaXMudW5pdCA9IGB1bml0XyR7dW5pdH1gO1xuICAgICAgICAgIGlmICh0eXBlb2YgX2FkYXB0VW5pdCA9PT0gJ29iamVjdCcpIHtcbiAgICAgICAgICAgIGNvbnN0IHsgZGVmYXVsdFByZWZpeCA9IHRydWUsIHByZWZpeCB9ID0gX2FkYXB0VW5pdDtcbiAgICAgICAgICAgIHRoaXMudW5pdCA9IGRlZmF1bHRQcmVmaXhcbiAgICAgICAgICAgICAgPyBgdW5pdF8ke3VuaXR9YFxuICAgICAgICAgICAgICA6IGAke3ByZWZpeCB8fCAnJ30ke3VuaXR9YDtcbiAgICAgICAgICB9XG4gICAgICAgICAgcmV0dXJuIChyZXMgYXMgQ2hhcnREYXRhW10pLm1hcCgoaXRlbTogQ2hhcnREYXRhKSA9PiAoe1xuICAgICAgICAgICAgLi4uaXRlbSxcbiAgICAgICAgICAgIHVuaXQ6IHRoaXMudW5pdCxcbiAgICAgICAgICAgIHZhbHVlczogaXRlbS52YWx1ZXMubWFwKGQgPT4gKHtcbiAgICAgICAgICAgICAgLi4uZCxcbiAgICAgICAgICAgICAgeTogZC55ID8gZC55IC8gYmFzZSA6IGQueSxcbiAgICAgICAgICAgIH0pKSxcbiAgICAgICAgICB9KSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHJlcy5tYXAoaXRlbSA9PiAoeyAuLi5pdGVtLCB1bml0OiB0aGlzLnVuaXQgfSkpIGFzIENoYXJ0RGF0YVtdO1xuICAgICAgfSksXG4gICAgICB0YXAoKCkgPT4ge1xuICAgICAgICB0aGlzLmRhdGFDb21wbGV0ZWQubmV4dCgpO1xuICAgICAgfSksXG4gICAgICBwdWJsaXNoUmVmKCksXG4gICAgKTtcbiAgfVxuXG4gIHJlZnJlc2goKSB7XG4gICAgdGhpcy5yZWxvYWQkLm5leHQobnVsbCk7XG4gICAgdGhpcy5yZWZyZXNoRXZlbnQubmV4dChudWxsKTtcbiAgfVxuXG4gIHByaXZhdGUgaGFuZGVsQ2hhcnRTdGF0dXMoc3RhdHVzOiBDaGFydFN0YXR1cykge1xuICAgIHRoaXMuX2NoYXJ0U3RhdHVzJCQubmV4dCh7XG4gICAgICAuLi5zdGF0dXMsXG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGhhbmRsZURhdGVBeGlzTGFiZWxGb3JtYXRzKHBhcmFtczogTWV0cmljQXBpUGFyYW1zKSB7XG4gICAgaWYgKHBhcmFtcykge1xuICAgICAgY29uc3QgZGlmZiA9IHBhcmFtcy5lbmQgLSBwYXJhbXMuc3RhcnQ7XG4gICAgICBjb25zdCBtMSA9IDI0ICogNjAgKiA2MDtcbiAgICAgIGNvbnN0IG0zID0gMyAqIG0xO1xuICAgICAgY29uc3QgbTcgPSA3ICogbTE7XG4gICAgICBjb25zdCBNX0RfRk9STUFUID0gJ01NLUREJztcbiAgICAgIGNvbnN0IGZvcm1hdCA9XG4gICAgICAgIGRpZmYgPj0gbTdcbiAgICAgICAgICA/IE1fRF9GT1JNQVRcbiAgICAgICAgICA6IGRpZmYgPCBtNyAmJiAoZGlmZiA+PSBtMyB8fCBkaWZmID4gbTEpXG4gICAgICAgICAgPyBgJHtNX0RfRk9STUFUfSAke0RBVEVfVElNRV9GT1JNQVRfWF9BWElTfWBcbiAgICAgICAgICA6IERBVEVfVElNRV9GT1JNQVRfWF9BWElTO1xuICAgICAgdGhpcy5kYXRlQXhpc0xhYmVsRm9ybWF0cyA9IGZvcm1hdDtcbiAgICAgIC8vIGh0dHBzOi8vZDNqcy5vcmcuY24vZG9jdW1lbnQvZDMtdGltZS1mb3JtYXQvI2FwaS1yZWZlcmVuY2VcbiAgICAgIHRoaXMuZGF0ZVhBeGlzTGFiZWxGb3JtYXRzID1cbiAgICAgICAgZGlmZiA+PSBtN1xuICAgICAgICAgID8gJyVtLSVkJ1xuICAgICAgICAgIDogZGlmZiA8IG03ICYmIChkaWZmID49IG0zIHx8IGRpZmYgPiBtMSlcbiAgICAgICAgICA/IGAlbS0lZCAlSDolTWBcbiAgICAgICAgICA6ICclSDolTSc7XG4gICAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxuICB9XG59XG4iLCI8YWNsLXZpZXctemNoYXJ0XG4gIFtjbGFzcy5vdmVyZmxvdy1kaXNwbGF5XT1cIiF0b29sdGlwQXBwZW5kVG9Cb2R5XCJcbiAgW2NvbnRleHRDYWxsYmFja0Z1bmN0aW9uXT1cImNvbnRleHRDYWxsYmFja0Z1bmN0aW9uXCJcbiAgW3VuaXRdPVwidW5pdFwiXG4gIFtoaWRlSGVhZGVyXT1cImhpZGVIZWFkZXJcIlxuICBbY3VzdG9tTm9EYXRhVGl0bGVdPVwiY3VzdG9tTm9EYXRhVGl0bGVcIlxuICBbY2hhcnRTdGF0dXNdPVwic3RhdHVzJCB8IGFzeW5jXCJcbiAgW2JhY2tncm91bmRDb2xvcl09XCJiYWNrZ3JvdW5kQ29sb3JcIlxuICBbc2VyaWVzXT1cInNlcmllcyQgfCBhc3luY1wiXG4gIFtjdXJ2ZVR5cGVdPVwiY3VydmVUeXBlXCJcbiAgW3Rvb2x0aXBBcHBlbmRUb0JvZHldPVwidG9vbHRpcEFwcGVuZFRvQm9keVwiXG4gIFttb2RlXT1cIm1vZGVcIlxuICBbZ3JpZE9mZnNldFRvcF09XCJncmlkT2Zmc2V0VG9wXCJcbiAgW3RpdGxlXT1cInRpdGxlXCJcbiAgW2NoYXJ0VHlwZV09XCJjaGFydFR5cGVcIlxuICBbaGlkZVRpdGxlXT1cImhpZGVUaXRsZVwiXG4gIFt0b29sdGlwSGlkZV09XCJ0b29sdGlwSGlkZVwiXG4gIFt0b29sdGlwU29ydE1ldGhvZF09XCJ0b29sdGlwU29ydE1ldGhvZFwiXG4gIFt0aXRsZURlc2NyaXB0aW9uXT1cInRpdGxlRGVzY3JpcHRpb25cIlxuICBbdGl0bGVEZXNjcmlwdGlvbkNvbnRleHRdPVwidGl0bGVEZXNjcmlwdGlvbkNvbnRleHRcIlxuICBbaGlkZUxlZ2VuZF09XCIoZGVwZW5kT25EYXRhICYmIG5vRGF0YSkgfHwgaGlkZUxlZ2VuZFwiXG4gIFtkYXRlQXhpc0xhYmVsRm9ybWF0c109XCJkYXRlQXhpc0xhYmVsRm9ybWF0c1wiXG4gIFtlbmFibGVab29tXT1cImVuYWJsZVpvb21cIlxuICBbc3RlcExpbmVdPVwic3RlcExpbmVcIlxuICBbcm90YXRlZF09XCJyb3RhdGVkXCJcbiAgW3JpZ2h0T3BlcmF0aW9uXT1cInJpZ2h0T3BlcmF0aW9uXCJcbiAgW2xlZnRPcGVyYXRpb25dPVwibGVmdE9wZXJhdGlvblwiXG4gIFtsZWZ0T3BlcmF0aW9uQ29udGV4dF09XCJsZWZ0T3BlcmF0aW9uQ29udGV4dFwiXG4gIFtsZWdlbmRUZW1wbGF0ZV09XCJsZWdlbmRUZW1wbGF0ZVwiXG4gIFtsZWdlbmRTZWxlY3RBbGxPcGVyYXRpb25dPVwibGVnZW5kU2VsZWN0QWxsT3BlcmF0aW9uXCJcbiAgW2xlZ2VuZFNlbGVjdEFsbE5hbWVdPVwibGVnZW5kU2VsZWN0QWxsTmFtZVwiXG4gIFt5QWNjZXNzb3JdPVwieUFjY2Vzc29yIHx8ICh5QWNjZXNzb3IkIHwgYXN5bmMpXCJcbiAgW3hBY2Nlc3Nvcl09XCJ4QWNjZXNzb3JcIlxuICBbeUF4aXNNaW5TdGVwXT1cInlBeGlzTWluU3RlcFwiXG4gIFtoaWRlVG9vbHRpcFVuaXRdPVwiaGlkZVRvb2x0aXBVbml0XCJcbiAgW3Rvb2x0aXBUaXRsZVRlbXBsYXRlXT1cInRvb2x0aXBUaXRsZVRlbXBsYXRlXCJcbiAgW3Rvb2x0aXBBdXRvU29ydF09XCJ0b29sdGlwQXV0b1NvcnRcIlxuICBbdG9vbHRpcFRyYW5zbGF0aW9uXT1cInRvb2x0aXBUcmFuc2xhdGlvblwiXG4gIFt0b29sdGlwUG9pbnROYW1lVGVtcGxhdGVdPVwidG9vbHRpcFBvaW50TmFtZVRlbXBsYXRlXCJcbiAgW3Rvb2x0aXBQb2ludFRlbXBsYXRlXT1cInRvb2x0aXBQb2ludFRlbXBsYXRlXCJcbiAgW3Rvb2x0aXBQb2ludFRlbXBsYXRlQ29udGV4dF09XCJ0b29sdGlwUG9pbnRUZW1wbGF0ZUNvbnRleHRcIlxuICBbeFBsb3RMaW5lc109XCJ4UGxvdExpbmVzXCJcbiAgW3hQbG90RW1wdHldPVwieFBsb3RFbXB0eVwiXG4gIFt5UGxvdExpbmVzSGlkZV09XCJ5UGxvdExpbmVzSGlkZVwiXG4gIFt5UGxvdExpbmVzXT1cInlQbG90TGluZXNcIlxuICAobW91c2VVcEV2ZW50KT1cIm1vdXNlVXBFdmVudC5uZXh0KCRldmVudClcIlxuICAobWFya0NsaWNrRXZlbnQpPVwibWFya0NsaWNrRXZlbnQubmV4dCgkZXZlbnQpXCJcbiAgKHJlZnJlc2hFdmVudCk9XCJyZWZyZXNoKClcIlxuPlxuPC9hY2wtdmlldy16Y2hhcnQ+XG48IS0tIFt0b29sdGlwUG9pbnRGb3JtYXRdPVwidG9vbHRpcFBvaW50Rm9ybWF0XCIgLS0+XG4iXX0=
|
|
@@ -989,7 +989,7 @@ export class MultiSearchActionInputComponent extends BaseResourceFormComponent {
|
|
|
989
989
|
AsyncPipe,
|
|
990
990
|
TranslateModule, i1.TranslatePipe, CheckboxComponent,
|
|
991
991
|
NgTemplateOutlet,
|
|
992
|
-
FormsModule, i2.DefaultValueAccessor, i2.NgControlStatus, i2.MaxLengthValidator, i2.NgModel], styles: ["[_nghost-%COMP%]{display:block;padding-top:5px}.search-input[_ngcontent-%COMP%]{border:none;box-shadow:none!important;height:22px}.mock-input[_ngcontent-%COMP%]{width:1px!important;flex-shrink:0;padding:0;margin-left:7px} .multi-search-dropdown{padding:0!important;margin-top:8px!important;cursor:pointer;max-height:284px;overflow-y:auto} .multi-search-dropdown ul .dropdown-content:first-child{border:none;padding-top:0;margin-top:0} .multi-search-dropdown .cursor-light{background-color:rgb(var(--aui-color-p-6))} .multi-search-dropdown .is-multi-value-select{background-color:rgb(var(--aui-color-p-6));color:rgb(var(--aui-color-p-2))} .multi-search-dropdown .search-dropdown-item{padding:0 8px} .multi-search-dropdown .search-dropdown-item:hover{background-color:rgb(var(--aui-color-p-6))} .multi-search-dropdown .search-dropdown-item .multi-item{display:flex;height:28px;align-items:center} .multi-search-dropdown .search-dropdown-item .multi-item aui-checkbox{width:24px} .multi-search-dropdown .search-dropdown-item-label{height:28px;line-height:28px;white-space:nowrap;word-break:break-all;overflow:hidden;text-overflow:ellipsis} .multi-search-dropdown .dropdown-group-label{font-size:12px;color:rgb(var(--aui-color-n-4));padding-bottom:8px;padding-top:12px;margin-top:12px;margin-left:8px;margin-right:8px;border-top:1px solid rgb(var(--aui-color-n-8));white-space:nowrap;word-break:break-all;overflow:hidden;text-overflow:ellipsis} .multi-search-dropdown .no-match-categories-tip{text-align:center;font-size:12px;color:rgb(var(--aui-color-n-4));border-bottom:1px solid rgb(var(--aui-color-n-8));margin-left:8px;margin-right:8px;margin-bottom:8px;padding-top:4px;padding-bottom:12px} .multi-search-dropdown .select-all{border-bottom:1px solid rgb(var(--aui-color-n-8))!important;margin-bottom:8px}"], changeDetection: 0 }); }
|
|
992
|
+
FormsModule, i2.DefaultValueAccessor, i2.NgControlStatus, i2.MaxLengthValidator, i2.NgModel], styles: ["[_nghost-%COMP%]{display:block;padding-top:5px}.search-input[_ngcontent-%COMP%]{border:none;box-shadow:none!important;height:22px}.mock-input[_ngcontent-%COMP%]{width:1px!important;flex-shrink:0;padding:0;margin-left:7px} .multi-search-dropdown{padding:0!important;margin-top:8px!important;cursor:pointer;max-height:284px;overflow-y:auto} .multi-search-dropdown ul .dropdown-content:first-child{border:none;padding-top:0;margin-top:0} .multi-search-dropdown .cursor-light{background-color:rgb(var(--aui-color-p-6))} .multi-search-dropdown .is-multi-value-select{background-color:rgb(var(--aui-color-p-6));color:rgb(var(--aui-color-p-2))} .multi-search-dropdown .search-dropdown-item{padding:0 8px} .multi-search-dropdown .search-dropdown-item:hover{background-color:rgb(var(--aui-color-p-6))} .multi-search-dropdown .search-dropdown-item .multi-item{display:flex;height:28px;align-items:center} .multi-search-dropdown .search-dropdown-item .multi-item aui-checkbox{width:24px} .multi-search-dropdown .search-dropdown-item-label{height:28px;line-height:28px;white-space:nowrap;word-break:break-all;overflow:hidden;text-overflow:ellipsis;font-size:var(--aui-font-size-m)} .multi-search-dropdown .dropdown-group-label{font-size:12px;color:rgb(var(--aui-color-n-4));padding-bottom:8px;padding-top:12px;margin-top:12px;margin-left:8px;margin-right:8px;border-top:1px solid rgb(var(--aui-color-n-8));white-space:nowrap;word-break:break-all;overflow:hidden;text-overflow:ellipsis} .multi-search-dropdown .no-match-categories-tip{text-align:center;font-size:12px;color:rgb(var(--aui-color-n-4));border-bottom:1px solid rgb(var(--aui-color-n-8));margin-left:8px;margin-right:8px;margin-bottom:8px;padding-top:4px;padding-bottom:12px} .multi-search-dropdown .select-all{border-bottom:1px solid rgb(var(--aui-color-n-8))!important;margin-bottom:8px}"], changeDetection: 0 }); }
|
|
993
993
|
}
|
|
994
994
|
__decorate([
|
|
995
995
|
ObservableInput(),
|
|
@@ -1017,7 +1017,7 @@ __decorate([
|
|
|
1017
1017
|
CheckboxComponent,
|
|
1018
1018
|
NgTemplateOutlet,
|
|
1019
1019
|
FormsModule,
|
|
1020
|
-
], template: "<div class=\"tw-flex tw-items-center tw-text-m\">\n <ng-container *ngIf=\"form.value as activeCondition\">\n <span\n class=\"tw-ml-6 tw-max-w-[45%] tw-flex-shrink-0 tw-text-ellipsis tw-overflow-hidden\"\n (click)=\"activeConditionClick(); $event.stopPropagation()\"\n >\n {{ activeCondition | pure: getConditionLabel }}\n </span>\n <span\n *ngIf=\"activeCondition.operator\"\n class=\"tw-ml-6\"\n (click)=\"activeOperatorClick(); $event.stopPropagation()\"\n >\n {{ activeCondition.operator }}\n </span>\n <span\n *ngIf=\"!isEditing\"\n class=\"tw-ml-6 tw-max-w-[45%] tw-flex-shrink-0 tw-text-ellipsis tw-overflow-hidden\"\n (click)=\"activeValueClick(); $event.stopPropagation()\"\n >\n {{ getValueContent(activeCondition) }}\n </span>\n </ng-container>\n <input\n class=\"search-input\"\n [ngClass]=\"{\n 'mock-input': (!isEditing && !isConditionSelecting) || isOperatorSelecting,\n }\"\n [maxlength]=\"isOperatorSelecting ? 0 : MAX_SAFE_INTEGER\"\n aui-input\n #inputRef\n #toolTipRef=\"auiTooltip\"\n [placeholder]=\"isConditionSelecting ? placeholder : ''\"\n [(ngModel)]=\"conditionsModel\"\n (ngModelChange)=\"conditionsModel$$.next($event)\"\n (keydown)=\"inputKeydown($event)\"\n (focus)=\"inputFocus()\"\n [auiTooltip]=\"templateRef\"\n auiTooltipAnimType=\"none\"\n auiTooltipTrigger=\"manual\"\n auiTooltipType=\"info\"\n auiTooltipClass=\"multi-search-dropdown\"\n auiTooltipPosition=\"bottom start\"\n />\n</div>\n\n<ng-template #templateRef>\n <div\n class=\"tw-py-8\"\n (mousedown)=\"$event.preventDefault()\"\n (click)=\"$event.stopPropagation()\"\n >\n <!-- \u7C7B\u76EE\u9009\u62E9 -->\n <ng-container\n *ngIf=\"isConditionSelecting && (conditionsShouldShow$ | async)\"\n >\n <ul\n *ngIf=\"hasFilteredConditions$ | async; else nonFilteredCategories\"\n class=\"tw-min-w-[260px] tw-max-w-[400px]\"\n >\n <ng-container\n [ngTemplateOutlet]=\"categoriesTemp\"\n [ngTemplateOutletContext]=\"{\n normal: (normalConditions$ | async),\n groups: groupConditions$ | async\n }\"\n ></ng-container>\n </ul>\n\n <ng-template #nonFilteredCategories>\n <ul class=\"tw-min-w-[260px] tw-max-w-[400px]\">\n <div class=\"no-match-categories-tip\">\n {{ 'no_match_categories_tip' | translate }}\n </div>\n <ng-container\n [ngTemplateOutlet]=\"categoriesTemp\"\n [ngTemplateOutletContext]=\"{\n normal: normalConditionsResource$ | async,\n groups: groupConditionsResource$ | async\n }\"\n ></ng-container>\n </ul>\n </ng-template>\n\n <ng-template\n #categoriesTemp\n let-normal=\"normal\"\n let-groups=\"groups\"\n >\n <ng-container\n [ngTemplateOutlet]=\"liConditionTemp\"\n [ngTemplateOutletContext]=\"{ conditions: normal }\"\n ></ng-container>\n\n <ng-container *ngFor=\"let group of groups\">\n <ng-container *ngIf=\"group.member?.length\">\n <div\n [title]=\"group.group\"\n class=\"dropdown-group-label dropdown-content\"\n >\n {{ group.group }}\n </div>\n\n <ng-container\n [ngTemplateOutlet]=\"liConditionTemp\"\n [ngTemplateOutletContext]=\"{ conditions: group.member }\"\n ></ng-container>\n </ng-container>\n </ng-container>\n </ng-template>\n </ng-container>\n\n <ng-container *ngIf=\"form.value as activeCondition\">\n <!-- operator\u9009\u62E9 -->\n <ng-container *ngIf=\"isOperatorSelecting\">\n <ul class=\"tw-min-w-[160px]\">\n <li\n (click)=\"selectActiveOperator($any(operator))\"\n *ngFor=\"\n let operator of activeCondition.operators || [DEFAULT_OPERATOR]\n \"\n >\n <ng-container\n [ngTemplateOutlet]=\"basicLiContentTemp\"\n [ngTemplateOutletContext]=\"{\n isSelect: operator === conditionsModel,\n label: operator\n }\"\n >\n </ng-container>\n </li>\n </ul>\n </ng-container>\n\n <!-- \u5177\u4F53\u6761\u4EF6\u9009\u62E9 -->\n <ng-container *ngIf=\"isValueSelecting\">\n <ul\n *ngIf=\"\n activeCondition\n | pure: hasFilteredValues:conditionsModel:activeCondition.isMulti\n \"\n class=\"tw-min-w-[260px] tw-max-w-[400px]\"\n >\n <li\n *ngIf=\"activeCondition.allowSelectAll && activeCondition.isMulti\"\n class=\"dropdown-content select-all\"\n >\n <div\n class=\"search-dropdown-item\"\n [ngClass]=\"{\n 'tw-text-p-2': isSelectAll,\n 'tw-bg-p-6': isSelectAll\n }\"\n (click)=\"selectAllClick()\"\n >\n <div class=\"multi-item\">\n <aui-checkbox\n [value]=\"isSelectAll\"\n [indeterminate]=\"isIndeterminate\"\n ></aui-checkbox>\n <div class=\"search-dropdown-item-label\">\n {{ 'all' | translate }}\n </div>\n </div>\n </div>\n </li>\n <ng-container\n [ngTemplateOutlet]=\"liValueTemp\"\n [ngTemplateOutletContext]=\"{\n values:\n activeCondition\n | pure: getNormalValues:conditionsModel:activeCondition.isMulti,\n activeCondition: activeCondition\n }\"\n >\n </ng-container>\n\n <ng-container\n *ngFor=\"\n let group of activeCondition\n | pure: getValuesGroup:conditionsModel:activeCondition.isMulti\n \"\n >\n <ng-container *ngIf=\"group.member?.length\">\n <div\n [title]=\"group.group\"\n class=\"dropdown-group-label dropdown-content\"\n >\n {{ group.group }}\n </div>\n\n <ng-container\n [ngTemplateOutlet]=\"liValueTemp\"\n [ngTemplateOutletContext]=\"{\n values: group.member,\n activeCondition: activeCondition\n }\"\n ></ng-container>\n </ng-container>\n </ng-container>\n </ul>\n </ng-container>\n </ng-container>\n </div>\n</ng-template>\n\n<ng-template\n #liConditionTemp\n let-conditions=\"conditions\"\n>\n <li\n class=\"dropdown-content\"\n *ngFor=\"let condition of conditions\"\n (click)=\"selectActiveCondition(condition)\"\n >\n <ng-container\n [ngTemplateOutlet]=\"basicLiContentTemp\"\n [ngTemplateOutletContext]=\"{\n isSelect:\n condition\n | pure: getConditionLabel\n | pure: isConditionSelected:conditionsModel,\n label: condition | pure: getConditionLabel\n }\"\n >\n </ng-container>\n </li>\n</ng-template>\n\n<ng-template\n #liValueTemp\n let-values=\"values\"\n let-activeCondition=\"activeCondition\"\n>\n <li\n class=\"dropdown-content\"\n *ngFor=\"let value of values\"\n (click)=\"\n selectValue(value, activeCondition.isMulti);\n $event.stopPropagation();\n $event.preventDefault()\n \"\n >\n <ng-container\n [ngTemplateOutlet]=\"basicLiContentTemp\"\n [ngTemplateOutletContext]=\"{\n isSelect:\n value\n | pure: getValueLabel\n | pure\n : isValueSelected\n : conditionsModel || (form.value | pure: getValueContent)\n : activeCondition,\n label: value | pure: getValueLabel,\n isMulti: activeCondition.isMulti\n }\"\n >\n </ng-container>\n </li>\n</ng-template>\n\n<ng-template\n #basicLiContentTemp\n let-isSelect=\"isSelect\"\n let-label=\"label\"\n let-isMulti=\"isMulti\"\n>\n <div\n [class]=\"DROPDOWN_ITEM_CLASS\"\n [ngClass]=\"{\n 'is-multi-value-select': isSelect,\n }\"\n >\n <div\n class=\"multi-item\"\n *ngIf=\"isMulti\"\n >\n <aui-checkbox [value]=\"isSelect\"></aui-checkbox>\n <div\n [title]=\"label\"\n class=\"search-dropdown-item-label\"\n >\n {{ label }}\n </div>\n </div>\n <div\n [title]=\"label\"\n class=\"search-dropdown-item-label\"\n *ngIf=\"!isMulti\"\n >\n {{ label }}\n </div>\n </div>\n</ng-template>\n", styles: [":host{display:block;padding-top:5px}.search-input{border:none;box-shadow:none!important;height:22px}.mock-input{width:1px!important;flex-shrink:0;padding:0;margin-left:7px}::ng-deep .multi-search-dropdown{padding:0!important;margin-top:8px!important;cursor:pointer;max-height:284px;overflow-y:auto}::ng-deep .multi-search-dropdown ul .dropdown-content:first-child{border:none;padding-top:0;margin-top:0}::ng-deep .multi-search-dropdown .cursor-light{background-color:rgb(var(--aui-color-p-6))}::ng-deep .multi-search-dropdown .is-multi-value-select{background-color:rgb(var(--aui-color-p-6));color:rgb(var(--aui-color-p-2))}::ng-deep .multi-search-dropdown .search-dropdown-item{padding:0 8px}::ng-deep .multi-search-dropdown .search-dropdown-item:hover{background-color:rgb(var(--aui-color-p-6))}::ng-deep .multi-search-dropdown .search-dropdown-item .multi-item{display:flex;height:28px;align-items:center}::ng-deep .multi-search-dropdown .search-dropdown-item .multi-item aui-checkbox{width:24px}::ng-deep .multi-search-dropdown .search-dropdown-item-label{height:28px;line-height:28px;white-space:nowrap;word-break:break-all;overflow:hidden;text-overflow:ellipsis}::ng-deep .multi-search-dropdown .dropdown-group-label{font-size:12px;color:rgb(var(--aui-color-n-4));padding-bottom:8px;padding-top:12px;margin-top:12px;margin-left:8px;margin-right:8px;border-top:1px solid rgb(var(--aui-color-n-8));white-space:nowrap;word-break:break-all;overflow:hidden;text-overflow:ellipsis}::ng-deep .multi-search-dropdown .no-match-categories-tip{text-align:center;font-size:12px;color:rgb(var(--aui-color-n-4));border-bottom:1px solid rgb(var(--aui-color-n-8));margin-left:8px;margin-right:8px;margin-bottom:8px;padding-top:4px;padding-bottom:12px}::ng-deep .multi-search-dropdown .select-all{border-bottom:1px solid rgb(var(--aui-color-n-8))!important;margin-bottom:8px}\n"] }]
|
|
1020
|
+
], template: "<div class=\"tw-flex tw-items-center tw-text-m\">\n <ng-container *ngIf=\"form.value as activeCondition\">\n <span\n class=\"tw-ml-6 tw-max-w-[45%] tw-flex-shrink-0 tw-text-ellipsis tw-overflow-hidden\"\n (click)=\"activeConditionClick(); $event.stopPropagation()\"\n >\n {{ activeCondition | pure: getConditionLabel }}\n </span>\n <span\n *ngIf=\"activeCondition.operator\"\n class=\"tw-ml-6\"\n (click)=\"activeOperatorClick(); $event.stopPropagation()\"\n >\n {{ activeCondition.operator }}\n </span>\n <span\n *ngIf=\"!isEditing\"\n class=\"tw-ml-6 tw-max-w-[45%] tw-flex-shrink-0 tw-text-ellipsis tw-overflow-hidden\"\n (click)=\"activeValueClick(); $event.stopPropagation()\"\n >\n {{ getValueContent(activeCondition) }}\n </span>\n </ng-container>\n <input\n class=\"search-input\"\n [ngClass]=\"{\n 'mock-input': (!isEditing && !isConditionSelecting) || isOperatorSelecting,\n }\"\n [maxlength]=\"isOperatorSelecting ? 0 : MAX_SAFE_INTEGER\"\n aui-input\n #inputRef\n #toolTipRef=\"auiTooltip\"\n [placeholder]=\"isConditionSelecting ? placeholder : ''\"\n [(ngModel)]=\"conditionsModel\"\n (ngModelChange)=\"conditionsModel$$.next($event)\"\n (keydown)=\"inputKeydown($event)\"\n (focus)=\"inputFocus()\"\n [auiTooltip]=\"templateRef\"\n auiTooltipAnimType=\"none\"\n auiTooltipTrigger=\"manual\"\n auiTooltipType=\"info\"\n auiTooltipClass=\"multi-search-dropdown\"\n auiTooltipPosition=\"bottom start\"\n />\n</div>\n\n<ng-template #templateRef>\n <div\n class=\"tw-py-8\"\n (mousedown)=\"$event.preventDefault()\"\n (click)=\"$event.stopPropagation()\"\n >\n <!-- \u7C7B\u76EE\u9009\u62E9 -->\n <ng-container\n *ngIf=\"isConditionSelecting && (conditionsShouldShow$ | async)\"\n >\n <ul\n *ngIf=\"hasFilteredConditions$ | async; else nonFilteredCategories\"\n class=\"tw-min-w-[260px] tw-max-w-[400px]\"\n >\n <ng-container\n [ngTemplateOutlet]=\"categoriesTemp\"\n [ngTemplateOutletContext]=\"{\n normal: (normalConditions$ | async),\n groups: groupConditions$ | async\n }\"\n ></ng-container>\n </ul>\n\n <ng-template #nonFilteredCategories>\n <ul class=\"tw-min-w-[260px] tw-max-w-[400px]\">\n <div class=\"no-match-categories-tip\">\n {{ 'no_match_categories_tip' | translate }}\n </div>\n <ng-container\n [ngTemplateOutlet]=\"categoriesTemp\"\n [ngTemplateOutletContext]=\"{\n normal: normalConditionsResource$ | async,\n groups: groupConditionsResource$ | async\n }\"\n ></ng-container>\n </ul>\n </ng-template>\n\n <ng-template\n #categoriesTemp\n let-normal=\"normal\"\n let-groups=\"groups\"\n >\n <ng-container\n [ngTemplateOutlet]=\"liConditionTemp\"\n [ngTemplateOutletContext]=\"{ conditions: normal }\"\n ></ng-container>\n\n <ng-container *ngFor=\"let group of groups\">\n <ng-container *ngIf=\"group.member?.length\">\n <div\n [title]=\"group.group\"\n class=\"dropdown-group-label dropdown-content\"\n >\n {{ group.group }}\n </div>\n\n <ng-container\n [ngTemplateOutlet]=\"liConditionTemp\"\n [ngTemplateOutletContext]=\"{ conditions: group.member }\"\n ></ng-container>\n </ng-container>\n </ng-container>\n </ng-template>\n </ng-container>\n\n <ng-container *ngIf=\"form.value as activeCondition\">\n <!-- operator\u9009\u62E9 -->\n <ng-container *ngIf=\"isOperatorSelecting\">\n <ul class=\"tw-min-w-[160px]\">\n <li\n (click)=\"selectActiveOperator($any(operator))\"\n *ngFor=\"\n let operator of activeCondition.operators || [DEFAULT_OPERATOR]\n \"\n >\n <ng-container\n [ngTemplateOutlet]=\"basicLiContentTemp\"\n [ngTemplateOutletContext]=\"{\n isSelect: operator === conditionsModel,\n label: operator\n }\"\n >\n </ng-container>\n </li>\n </ul>\n </ng-container>\n\n <!-- \u5177\u4F53\u6761\u4EF6\u9009\u62E9 -->\n <ng-container *ngIf=\"isValueSelecting\">\n <ul\n *ngIf=\"\n activeCondition\n | pure: hasFilteredValues:conditionsModel:activeCondition.isMulti\n \"\n class=\"tw-min-w-[260px] tw-max-w-[400px]\"\n >\n <li\n *ngIf=\"activeCondition.allowSelectAll && activeCondition.isMulti\"\n class=\"dropdown-content select-all\"\n >\n <div\n class=\"search-dropdown-item\"\n [ngClass]=\"{\n 'tw-text-p-2': isSelectAll,\n 'tw-bg-p-6': isSelectAll\n }\"\n (click)=\"selectAllClick()\"\n >\n <div class=\"multi-item\">\n <aui-checkbox\n [value]=\"isSelectAll\"\n [indeterminate]=\"isIndeterminate\"\n ></aui-checkbox>\n <div class=\"search-dropdown-item-label\">\n {{ 'all' | translate }}\n </div>\n </div>\n </div>\n </li>\n <ng-container\n [ngTemplateOutlet]=\"liValueTemp\"\n [ngTemplateOutletContext]=\"{\n values:\n activeCondition\n | pure: getNormalValues:conditionsModel:activeCondition.isMulti,\n activeCondition: activeCondition\n }\"\n >\n </ng-container>\n\n <ng-container\n *ngFor=\"\n let group of activeCondition\n | pure: getValuesGroup:conditionsModel:activeCondition.isMulti\n \"\n >\n <ng-container *ngIf=\"group.member?.length\">\n <div\n [title]=\"group.group\"\n class=\"dropdown-group-label dropdown-content\"\n >\n {{ group.group }}\n </div>\n\n <ng-container\n [ngTemplateOutlet]=\"liValueTemp\"\n [ngTemplateOutletContext]=\"{\n values: group.member,\n activeCondition: activeCondition\n }\"\n ></ng-container>\n </ng-container>\n </ng-container>\n </ul>\n </ng-container>\n </ng-container>\n </div>\n</ng-template>\n\n<ng-template\n #liConditionTemp\n let-conditions=\"conditions\"\n>\n <li\n class=\"dropdown-content\"\n *ngFor=\"let condition of conditions\"\n (click)=\"selectActiveCondition(condition)\"\n >\n <ng-container\n [ngTemplateOutlet]=\"basicLiContentTemp\"\n [ngTemplateOutletContext]=\"{\n isSelect:\n condition\n | pure: getConditionLabel\n | pure: isConditionSelected:conditionsModel,\n label: condition | pure: getConditionLabel\n }\"\n >\n </ng-container>\n </li>\n</ng-template>\n\n<ng-template\n #liValueTemp\n let-values=\"values\"\n let-activeCondition=\"activeCondition\"\n>\n <li\n class=\"dropdown-content\"\n *ngFor=\"let value of values\"\n (click)=\"\n selectValue(value, activeCondition.isMulti);\n $event.stopPropagation();\n $event.preventDefault()\n \"\n >\n <ng-container\n [ngTemplateOutlet]=\"basicLiContentTemp\"\n [ngTemplateOutletContext]=\"{\n isSelect:\n value\n | pure: getValueLabel\n | pure\n : isValueSelected\n : conditionsModel || (form.value | pure: getValueContent)\n : activeCondition,\n label: value | pure: getValueLabel,\n isMulti: activeCondition.isMulti\n }\"\n >\n </ng-container>\n </li>\n</ng-template>\n\n<ng-template\n #basicLiContentTemp\n let-isSelect=\"isSelect\"\n let-label=\"label\"\n let-isMulti=\"isMulti\"\n>\n <div\n [class]=\"DROPDOWN_ITEM_CLASS\"\n [ngClass]=\"{\n 'is-multi-value-select': isSelect,\n }\"\n >\n <div\n class=\"multi-item\"\n *ngIf=\"isMulti\"\n >\n <aui-checkbox [value]=\"isSelect\"></aui-checkbox>\n <div\n [title]=\"label\"\n class=\"search-dropdown-item-label\"\n >\n {{ label }}\n </div>\n </div>\n <div\n [title]=\"label\"\n class=\"search-dropdown-item-label\"\n *ngIf=\"!isMulti\"\n >\n {{ label }}\n </div>\n </div>\n</ng-template>\n", styles: [":host{display:block;padding-top:5px}.search-input{border:none;box-shadow:none!important;height:22px}.mock-input{width:1px!important;flex-shrink:0;padding:0;margin-left:7px}::ng-deep .multi-search-dropdown{padding:0!important;margin-top:8px!important;cursor:pointer;max-height:284px;overflow-y:auto}::ng-deep .multi-search-dropdown ul .dropdown-content:first-child{border:none;padding-top:0;margin-top:0}::ng-deep .multi-search-dropdown .cursor-light{background-color:rgb(var(--aui-color-p-6))}::ng-deep .multi-search-dropdown .is-multi-value-select{background-color:rgb(var(--aui-color-p-6));color:rgb(var(--aui-color-p-2))}::ng-deep .multi-search-dropdown .search-dropdown-item{padding:0 8px}::ng-deep .multi-search-dropdown .search-dropdown-item:hover{background-color:rgb(var(--aui-color-p-6))}::ng-deep .multi-search-dropdown .search-dropdown-item .multi-item{display:flex;height:28px;align-items:center}::ng-deep .multi-search-dropdown .search-dropdown-item .multi-item aui-checkbox{width:24px}::ng-deep .multi-search-dropdown .search-dropdown-item-label{height:28px;line-height:28px;white-space:nowrap;word-break:break-all;overflow:hidden;text-overflow:ellipsis;font-size:var(--aui-font-size-m)}::ng-deep .multi-search-dropdown .dropdown-group-label{font-size:12px;color:rgb(var(--aui-color-n-4));padding-bottom:8px;padding-top:12px;margin-top:12px;margin-left:8px;margin-right:8px;border-top:1px solid rgb(var(--aui-color-n-8));white-space:nowrap;word-break:break-all;overflow:hidden;text-overflow:ellipsis}::ng-deep .multi-search-dropdown .no-match-categories-tip{text-align:center;font-size:12px;color:rgb(var(--aui-color-n-4));border-bottom:1px solid rgb(var(--aui-color-n-8));margin-left:8px;margin-right:8px;margin-bottom:8px;padding-top:4px;padding-bottom:12px}::ng-deep .multi-search-dropdown .select-all{border-bottom:1px solid rgb(var(--aui-color-n-8))!important;margin-bottom:8px}\n"] }]
|
|
1021
1021
|
}], function () { return [{ type: i0.Injector }, { type: i3.MultiSearchComponent, decorators: [{
|
|
1022
1022
|
type: Inject,
|
|
1023
1023
|
args: [forwardRef(() => MultiSearchComponent)]
|
|
@@ -2,8 +2,14 @@
|
|
|
2
2
|
* @packageDocumentation
|
|
3
3
|
* @module notification
|
|
4
4
|
*/
|
|
5
|
+
import { ButtonModule } from '@alauda/ui';
|
|
6
|
+
import { NgIf } from '@angular/common';
|
|
5
7
|
import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, } from '@angular/core';
|
|
8
|
+
import { CodeModule } from '../../code/code.module';
|
|
9
|
+
import { TranslateModule } from '../../translate/translate.module';
|
|
6
10
|
import * as i0 from "@angular/core";
|
|
11
|
+
import * as i1 from "../../translate/translate.pipe";
|
|
12
|
+
import * as i2 from "@alauda/ui";
|
|
7
13
|
function FeedbackNotificationComponent_main_0_pre_1_Template(rf, ctx) { if (rf & 1) {
|
|
8
14
|
i0.ɵɵelement(0, "pre", 4);
|
|
9
15
|
} if (rf & 2) {
|
|
@@ -58,7 +64,7 @@ export class FeedbackNotificationComponent {
|
|
|
58
64
|
this.onSecondary = new EventEmitter();
|
|
59
65
|
}
|
|
60
66
|
static { this.ɵfac = function FeedbackNotificationComponent_Factory(t) { return new (t || FeedbackNotificationComponent)(); }; }
|
|
61
|
-
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: FeedbackNotificationComponent, selectors: [["ng-component"]], inputs: { primary: "primary", secondary: "secondary", content: "content", pre: "pre" }, outputs: { onPrimary: "onPrimary", onSecondary: "onSecondary" }, decls: 4, vars: 3, consts: [[4, "ngIf"], ["aui-button", "primary", "type", "button", "size", "mini", 3, "click", 4, "ngIf"], ["aui-button", "default", "type", "button", "size", "mini", 3, "click", 4, "ngIf"], [3, "innerHTML", 4, "ngIf"], [3, "innerHTML"], ["aui-button", "primary", "type", "button", "size", "mini", 3, "click"], ["aui-button", "default", "type", "button", "size", "mini", 3, "click"]], template: function FeedbackNotificationComponent_Template(rf, ctx) { if (rf & 1) {
|
|
67
|
+
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: FeedbackNotificationComponent, selectors: [["ng-component"]], inputs: { primary: "primary", secondary: "secondary", content: "content", pre: "pre" }, outputs: { onPrimary: "onPrimary", onSecondary: "onSecondary" }, standalone: true, features: [i0.ɵɵStandaloneFeature], decls: 4, vars: 3, consts: [[4, "ngIf"], ["aui-button", "primary", "type", "button", "size", "mini", 3, "click", 4, "ngIf"], ["aui-button", "default", "type", "button", "size", "mini", 3, "click", 4, "ngIf"], [3, "innerHTML", 4, "ngIf"], [3, "innerHTML"], ["aui-button", "primary", "type", "button", "size", "mini", 3, "click"], ["aui-button", "default", "type", "button", "size", "mini", 3, "click"]], template: function FeedbackNotificationComponent_Template(rf, ctx) { if (rf & 1) {
|
|
62
68
|
i0.ɵɵtemplate(0, FeedbackNotificationComponent_main_0_Template, 3, 2, "main", 0);
|
|
63
69
|
i0.ɵɵelementStart(1, "footer");
|
|
64
70
|
i0.ɵɵtemplate(2, FeedbackNotificationComponent_button_2_Template, 3, 3, "button", 1);
|
|
@@ -70,11 +76,11 @@ export class FeedbackNotificationComponent {
|
|
|
70
76
|
i0.ɵɵproperty("ngIf", ctx.primary);
|
|
71
77
|
i0.ɵɵadvance(1);
|
|
72
78
|
i0.ɵɵproperty("ngIf", ctx.secondary);
|
|
73
|
-
} }, styles: ["[_nghost-%COMP%]{display:flex;flex-direction:column;max-height:150px}main[_ngcontent-%COMP%]{display:flex;flex:1;overflow:hidden}main[_ngcontent-%COMP%] > *[_ngcontent-%COMP%]{flex:1;overflow:auto}footer[_ngcontent-%COMP%]{padding-top:12px}"], changeDetection: 0 }); }
|
|
79
|
+
} }, dependencies: [NgIf, TranslateModule, i1.TranslatePipe, ButtonModule, i2.ButtonComponent, CodeModule], styles: ["[_nghost-%COMP%]{display:flex;flex-direction:column;max-height:150px}main[_ngcontent-%COMP%]{display:flex;flex:1;overflow:hidden}main[_ngcontent-%COMP%] > *[_ngcontent-%COMP%]{flex:1;overflow:auto}footer[_ngcontent-%COMP%]{padding-top:12px}"], changeDetection: 0 }); }
|
|
74
80
|
}
|
|
75
81
|
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(FeedbackNotificationComponent, [{
|
|
76
82
|
type: Component,
|
|
77
|
-
args: [{ preserveWhitespaces: false, changeDetection: ChangeDetectionStrategy.OnPush, template: "<main *ngIf=\"content\">\n <pre\n *ngIf=\"pre\"\n [innerHTML]=\"content\"\n ></pre>\n <div\n *ngIf=\"!pre\"\n [innerHTML]=\"content\"\n ></div>\n</main>\n<footer>\n <button\n *ngIf=\"primary\"\n aui-button=\"primary\"\n type=\"button\"\n size=\"mini\"\n (click)=\"onPrimary.emit()\"\n >\n {{ primary | translate }}\n </button>\n <button\n *ngIf=\"secondary\"\n aui-button=\"default\"\n type=\"button\"\n size=\"mini\"\n (click)=\"onSecondary.emit()\"\n >\n {{ secondary | translate }}\n </button>\n</footer>\n", styles: [":host{display:flex;flex-direction:column;max-height:150px}main{display:flex;flex:1;overflow:hidden}main>*{flex:1;overflow:auto}footer{padding-top:12px}\n"] }]
|
|
83
|
+
args: [{ standalone: true, preserveWhitespaces: false, changeDetection: ChangeDetectionStrategy.OnPush, imports: [NgIf, TranslateModule, ButtonModule, CodeModule], template: "<main *ngIf=\"content\">\n <pre\n *ngIf=\"pre\"\n [innerHTML]=\"content\"\n ></pre>\n <div\n *ngIf=\"!pre\"\n [innerHTML]=\"content\"\n ></div>\n</main>\n<footer>\n <button\n *ngIf=\"primary\"\n aui-button=\"primary\"\n type=\"button\"\n size=\"mini\"\n (click)=\"onPrimary.emit()\"\n >\n {{ primary | translate }}\n </button>\n <button\n *ngIf=\"secondary\"\n aui-button=\"default\"\n type=\"button\"\n size=\"mini\"\n (click)=\"onSecondary.emit()\"\n >\n {{ secondary | translate }}\n </button>\n</footer>\n", styles: [":host{display:flex;flex-direction:column;max-height:150px}main{display:flex;flex:1;overflow:hidden}main>*{flex:1;overflow:auto}footer{padding-top:12px}\n"] }]
|
|
78
84
|
}], null, { primary: [{
|
|
79
85
|
type: Input
|
|
80
86
|
}], secondary: [{
|
|
@@ -92,4 +98,4 @@ export class FeedbackNotificationComponent {
|
|
|
92
98
|
onSecondary: [{
|
|
93
99
|
type: Output
|
|
94
100
|
}] }); })();
|
|
95
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
101
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL25vdGlmaWNhdGlvbi9mZWVkYmFjay1ub3RpZmljYXRpb24vY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL25vdGlmaWNhdGlvbi9mZWVkYmFjay1ub3RpZmljYXRpb24vdGVtcGxhdGUuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7O0dBR0c7QUFFSCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQzFDLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN2QyxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDcEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGtDQUFrQyxDQUFDOzs7OztJQ2ZqRSx5QkFHTzs7O0lBREwsNkRBQXFCOzs7SUFFdkIseUJBR087OztJQURMLDZEQUFxQjs7O0lBUHpCLDRCQUFzQjtJQUNwQixxRkFHTztJQUNQLHFGQUdPO0lBQ1QsaUJBQU87OztJQVBGLGVBQVM7SUFBVCxpQ0FBUztJQUlULGVBQVU7SUFBVixrQ0FBVTs7OztJQUtiLGlDQU1DO0lBREMsNktBQVMsZUFBQSx1QkFBZ0IsQ0FBQSxJQUFDO0lBRTFCLFlBQ0Y7O0lBQUEsaUJBQVM7OztJQURQLGVBQ0Y7SUFERSxxRUFDRjs7OztJQUNBLGlDQU1DO0lBREMsNktBQVMsZUFBQSx5QkFBa0IsQ0FBQSxJQUFDO0lBRTVCLFlBQ0Y7O0lBQUEsaUJBQVM7OztJQURQLGVBQ0Y7SUFERSx1RUFDRjs7QURGRixNQUFNLE9BQU8sNkJBQTZCO0lBUjFDO1FBdUJFLGNBQVMsR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO1FBSXJDLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztLQUN4Qzs4RkFwQlksNkJBQTZCO29FQUE3Qiw2QkFBNkI7WUMxQjFDLGdGQVNPO1lBQ1AsOEJBQVE7WUFDTixvRkFRUztZQUNULG9GQVFTO1lBQ1gsaUJBQVM7O1lBN0JGLGtDQUFhO1lBWWYsZUFBYTtZQUFiLGtDQUFhO1lBU2IsZUFBZTtZQUFmLG9DQUFlOzRCREdSLElBQUksRUFBRSxlQUFlLG9CQUFFLFlBQVksc0JBQUUsVUFBVTs7dUZBRTlDLDZCQUE2QjtjQVJ6QyxTQUFTOzZCQUdJLElBQUksdUJBQ0ssS0FBSyxtQkFDVCx1QkFBdUIsQ0FBQyxNQUFNLFdBQ3RDLENBQUMsSUFBSSxFQUFFLGVBQWUsRUFBRSxZQUFZLEVBQUUsVUFBVSxDQUFDO2dCQUkxRCxPQUFPO2tCQUROLEtBQUs7WUFJTixTQUFTO2tCQURSLEtBQUs7WUFJTixPQUFPO2tCQUROLEtBQUs7WUFJTixHQUFHO2tCQURGLEtBQUs7O0lBSU4sK0RBQStEO0lBQy9ELFNBQVM7a0JBRlIsTUFBTTs7SUFLUCwrREFBK0Q7SUFDL0QsV0FBVztrQkFGVixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAcGFja2FnZURvY3VtZW50YXRpb25cbiAqIEBtb2R1bGUgbm90aWZpY2F0aW9uXG4gKi9cblxuaW1wb3J0IHsgQnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFsYXVkYS91aSc7XG5pbXBvcnQgeyBOZ0lmIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE91dHB1dCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IENvZGVNb2R1bGUgfSBmcm9tICcuLi8uLi9jb2RlL2NvZGUubW9kdWxlJztcbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJy4uLy4uL3RyYW5zbGF0ZS90cmFuc2xhdGUubW9kdWxlJztcblxuQENvbXBvbmVudCh7XG4gIHRlbXBsYXRlVXJsOiAndGVtcGxhdGUuaHRtbCcsXG4gIHN0eWxlVXJsczogWydzdHlsZXMuc2NzcyddLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBwcmVzZXJ2ZVdoaXRlc3BhY2VzOiBmYWxzZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGltcG9ydHM6IFtOZ0lmLCBUcmFuc2xhdGVNb2R1bGUsIEJ1dHRvbk1vZHVsZSwgQ29kZU1vZHVsZV0sXG59KVxuZXhwb3J0IGNsYXNzIEZlZWRiYWNrTm90aWZpY2F0aW9uQ29tcG9uZW50IHtcbiAgQElucHV0KClcbiAgcHJpbWFyeTogc3RyaW5nO1xuXG4gIEBJbnB1dCgpXG4gIHNlY29uZGFyeTogc3RyaW5nO1xuXG4gIEBJbnB1dCgpXG4gIGNvbnRlbnQ/OiBzdHJpbmc7XG5cbiAgQElucHV0KClcbiAgcHJlOiBib29sZWFuO1xuXG4gIEBPdXRwdXQoKVxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLW91dHB1dC1vbi1wcmVmaXhcbiAgb25QcmltYXJ5ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gIEBPdXRwdXQoKVxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLW91dHB1dC1vbi1wcmVmaXhcbiAgb25TZWNvbmRhcnkgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG59XG5cbmV4cG9ydCB0eXBlIEZlZWRiYWNrTm90aWZpY2F0aW9uUHJvcHMgPSBQYXJ0aWFsPFxuICBQaWNrPFxuICAgIEZlZWRiYWNrTm90aWZpY2F0aW9uQ29tcG9uZW50LFxuICAgICdwcmltYXJ5JyB8ICdzZWNvbmRhcnknIHwgJ2NvbnRlbnQnIHwgJ3ByZSdcbiAgPlxuPjtcbiIsIjxtYWluICpuZ0lmPVwiY29udGVudFwiPlxuICA8cHJlXG4gICAgKm5nSWY9XCJwcmVcIlxuICAgIFtpbm5lckhUTUxdPVwiY29udGVudFwiXG4gID48L3ByZT5cbiAgPGRpdlxuICAgICpuZ0lmPVwiIXByZVwiXG4gICAgW2lubmVySFRNTF09XCJjb250ZW50XCJcbiAgPjwvZGl2PlxuPC9tYWluPlxuPGZvb3Rlcj5cbiAgPGJ1dHRvblxuICAgICpuZ0lmPVwicHJpbWFyeVwiXG4gICAgYXVpLWJ1dHRvbj1cInByaW1hcnlcIlxuICAgIHR5cGU9XCJidXR0b25cIlxuICAgIHNpemU9XCJtaW5pXCJcbiAgICAoY2xpY2spPVwib25QcmltYXJ5LmVtaXQoKVwiXG4gID5cbiAgICB7eyBwcmltYXJ5IHwgdHJhbnNsYXRlIH19XG4gIDwvYnV0dG9uPlxuICA8YnV0dG9uXG4gICAgKm5nSWY9XCJzZWNvbmRhcnlcIlxuICAgIGF1aS1idXR0b249XCJkZWZhdWx0XCJcbiAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICBzaXplPVwibWluaVwiXG4gICAgKGNsaWNrKT1cIm9uU2Vjb25kYXJ5LmVtaXQoKVwiXG4gID5cbiAgICB7eyBzZWNvbmRhcnkgfCB0cmFuc2xhdGUgfX1cbiAgPC9idXR0b24+XG48L2Zvb3Rlcj5cbiJdfQ==
|
|
@@ -7,7 +7,6 @@
|
|
|
7
7
|
export * from './errors-mapper';
|
|
8
8
|
export * from './feedback-notification/component';
|
|
9
9
|
export * from './helpers';
|
|
10
|
-
export * from './notification-util.module';
|
|
11
10
|
export * from './notification-util.service';
|
|
12
11
|
export * from './resource-error.interceptor';
|
|
13
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
12
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL3NyYy9ub3RpZmljYXRpb24vcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7OztHQUlHO0FBQ0gsY0FBYztBQUNkLGNBQWMsaUJBQWlCLENBQUM7QUFDaEMsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLFdBQVcsQ0FBQztBQUMxQixjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMsOEJBQThCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFtbaW5jbHVkZTpub3RpZmljYXRpb24vUkVBRE1FLm1kXV1cbiAqIEBtb2R1bGUgbm90aWZpY2F0aW9uXG4gKiBAcHJlZmVycmVkXG4gKi9cbi8qKiBpbXBvcnRzICovXG5leHBvcnQgKiBmcm9tICcuL2Vycm9ycy1tYXBwZXInO1xuZXhwb3J0ICogZnJvbSAnLi9mZWVkYmFjay1ub3RpZmljYXRpb24vY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vaGVscGVycyc7XG5leHBvcnQgKiBmcm9tICcuL25vdGlmaWNhdGlvbi11dGlsLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9yZXNvdXJjZS1lcnJvci5pbnRlcmNlcHRvcic7XG4iXX0=
|
|
@@ -11,6 +11,7 @@ import catalog from './animations/catalog.json';
|
|
|
11
11
|
import certificate from './animations/certificate.json';
|
|
12
12
|
import ci from './animations/ci.json';
|
|
13
13
|
import code from './animations/code.json';
|
|
14
|
+
import dashboard from './animations/dashboard.json';
|
|
14
15
|
import data_service from './animations/data_service.json';
|
|
15
16
|
import devops from './animations/devops.json';
|
|
16
17
|
import devops_tools from './animations/devops_tools.json';
|
|
@@ -109,5 +110,6 @@ export default {
|
|
|
109
110
|
params_template,
|
|
110
111
|
gitops,
|
|
111
112
|
events,
|
|
113
|
+
dashboard,
|
|
112
114
|
};
|
|
113
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
115
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5pbWF0aW9uLWRhdGEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9zcmMvcGFnZS1zY2FmZm9sZC9uYXZpZ2F0aW9uL2xvdHRpZS1pY29ucy9hbmltYXRpb24tZGF0YS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssTUFBTSx5QkFBeUIsQ0FBQztBQUM1QyxPQUFPLEdBQUcsTUFBTSx1QkFBdUIsQ0FBQztBQUN4QyxPQUFPLFdBQVcsTUFBTSwrQkFBK0IsQ0FBQztBQUN4RCxPQUFPLFdBQVcsTUFBTSwrQkFBK0IsQ0FBQztBQUN4RCxPQUFPLEtBQUssTUFBTSx5QkFBeUIsQ0FBQztBQUM1QyxPQUFPLGtCQUFrQixNQUFNLHNDQUFzQyxDQUFDO0FBQ3RFLE9BQU8sTUFBTSxNQUFNLDBCQUEwQixDQUFDO0FBQzlDLE9BQU8sU0FBUyxNQUFNLDZCQUE2QixDQUFDO0FBQ3BELE9BQU8sSUFBSSxNQUFNLHdCQUF3QixDQUFDO0FBQzFDLE9BQU8sT0FBTyxNQUFNLDJCQUEyQixDQUFDO0FBQ2hELE9BQU8sV0FBVyxNQUFNLCtCQUErQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3RDLE9BQU8sSUFBSSxNQUFNLHdCQUF3QixDQUFDO0FBQzFDLE9BQU8sU0FBUyxNQUFNLDZCQUE2QixDQUFDO0FBQ3BELE9BQU8sWUFBWSxNQUFNLGdDQUFnQyxDQUFDO0FBQzFELE9BQU8sTUFBTSxNQUFNLDBCQUEwQixDQUFDO0FBQzlDLE9BQU8sWUFBWSxNQUFNLGdDQUFnQyxDQUFDO0FBQzFELE9BQU8sTUFBTSxNQUFNLDBCQUEwQixDQUFDO0FBQzlDLE9BQU8sSUFBSSxNQUFNLHdCQUF3QixDQUFDO0FBQzFDLE9BQU8sT0FBTyxNQUFNLDJCQUEyQixDQUFDO0FBQ2hELE9BQU8sTUFBTSxNQUFNLDBCQUEwQixDQUFDO0FBQzlDLE9BQU8sVUFBVSxNQUFNLDhCQUE4QixDQUFDO0FBQ3RELE9BQU8sUUFBUSxNQUFNLDRCQUE0QixDQUFDO0FBQ2xELE9BQU8sS0FBSyxNQUFNLHlCQUF5QixDQUFDO0FBQzVDLE9BQU8sR0FBRyxNQUFNLHVCQUF1QixDQUFDO0FBQ3hDLE9BQU8sTUFBTSxNQUFNLDBCQUEwQixDQUFDO0FBQzlDLE9BQU8sT0FBTyxNQUFNLDJCQUEyQixDQUFDO0FBQ2hELE9BQU8sT0FBTyxNQUFNLDJCQUEyQixDQUFDO0FBQ2hELE9BQU8sS0FBSyxNQUFNLHlCQUF5QixDQUFDO0FBQzVDLE9BQU8sU0FBUyxNQUFNLDZCQUE2QixDQUFDO0FBQ3BELE9BQU8sTUFBTSxNQUFNLDBCQUEwQixDQUFDO0FBQzlDLE9BQU8sR0FBRyxNQUFNLHVCQUF1QixDQUFDO0FBQ3hDLE9BQU8sZ0JBQWdCLE1BQU0sb0NBQW9DLENBQUM7QUFDbEUsT0FBTyxlQUFlLE1BQU0sbUNBQW1DLENBQUM7QUFDaEUsT0FBTyxRQUFRLE1BQU0sNEJBQTRCLENBQUM7QUFDbEQsT0FBTyxpQkFBaUIsTUFBTSxxQ0FBcUMsQ0FBQztBQUNwRSxPQUFPLFVBQVUsTUFBTSw4QkFBOEIsQ0FBQztBQUN0RCxPQUFPLE9BQU8sTUFBTSwyQkFBMkIsQ0FBQztBQUNoRCxPQUFPLE9BQU8sTUFBTSx3QkFBd0IsQ0FBQztBQUM3QyxPQUFPLFFBQVEsTUFBTSw0QkFBNEIsQ0FBQztBQUNsRCxPQUFPLEtBQUssTUFBTSx5QkFBeUIsQ0FBQztBQUM1QyxPQUFPLGFBQWEsTUFBTSxpQ0FBaUMsQ0FBQztBQUM1RCxPQUFPLFFBQVEsTUFBTSw0QkFBNEIsQ0FBQztBQUNsRCxPQUFPLEtBQUssTUFBTSx5QkFBeUIsQ0FBQztBQUM1QyxPQUFPLE9BQU8sTUFBTSwyQkFBMkIsQ0FBQztBQUNoRCxPQUFPLFFBQVEsTUFBTSw0QkFBNEIsQ0FBQztBQUNsRCxPQUFPLE1BQU0sTUFBTSwwQkFBMEIsQ0FBQztBQUM5QyxPQUFPLFlBQVksTUFBTSxnQ0FBZ0MsQ0FBQztBQUMxRCxPQUFPLE9BQU8sTUFBTSwyQkFBMkIsQ0FBQztBQUNoRCxPQUFPLFVBQVUsTUFBTSw4QkFBOEIsQ0FBQztBQUN0RCxPQUFPLE9BQU8sTUFBTSwyQkFBMkIsQ0FBQztBQUNoRCxPQUFPLGVBQWUsTUFBTSxtQ0FBbUMsQ0FBQztBQUNoRSxPQUFPLFFBQVEsTUFBTSw0QkFBNEIsQ0FBQztBQUNsRCxPQUFPLFNBQVMsTUFBTSw2QkFBNkIsQ0FBQztBQUNwRCxPQUFPLFdBQVcsTUFBTSwrQkFBK0IsQ0FBQztBQUN4RCxPQUFPLGNBQWMsTUFBTSxrQ0FBa0MsQ0FBQztBQUU5RCxlQUFlO0lBQ2IsS0FBSztJQUNMLEdBQUc7SUFDSCxXQUFXO0lBQ1gsV0FBVztJQUNYLEtBQUs7SUFDTCxrQkFBa0I7SUFDbEIsTUFBTTtJQUNOLFNBQVM7SUFDVCxJQUFJO0lBQ0osT0FBTztJQUNQLFdBQVc7SUFDWCxFQUFFO0lBQ0YsSUFBSTtJQUNKLFlBQVk7SUFDWixZQUFZO0lBQ1osTUFBTTtJQUNOLElBQUk7SUFDSixPQUFPO0lBQ1AsVUFBVTtJQUNWLFFBQVE7SUFDUixHQUFHO0lBQ0gsTUFBTTtJQUNOLE9BQU87SUFDUCxTQUFTO0lBQ1QsTUFBTTtJQUNOLGdCQUFnQjtJQUNoQixRQUFRO0lBQ1IsaUJBQWlCO0lBQ2pCLE9BQU87SUFDUCxPQUFPO0lBQ1AsYUFBYTtJQUNiLFFBQVE7SUFDUixLQUFLO0lBQ0wsT0FBTztJQUNQLFFBQVE7SUFDUixNQUFNO0lBQ04sWUFBWTtJQUNaLE9BQU87SUFDUCxPQUFPO0lBQ1AsUUFBUTtJQUNSLFNBQVM7SUFDVCxXQUFXO0lBQ1gsY0FBYztJQUNkLEdBQUc7SUFDSCxLQUFLO0lBQ0wsS0FBSztJQUNMLEtBQUs7SUFDTCxPQUFPO0lBQ1AsUUFBUTtJQUNSLFVBQVU7SUFDVixVQUFVO0lBQ1YsZUFBZTtJQUNmLGVBQWU7SUFDZixNQUFNO0lBQ04sTUFBTTtJQUNOLFNBQVM7Q0FDYSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGFsYXJtIGZyb20gJy4vYW5pbWF0aW9ucy9hbGFybS5qc29uJztcbmltcG9ydCBhcHAgZnJvbSAnLi9hbmltYXRpb25zL2FwcC5qc29uJztcbmltcG9ydCBhcHBsaWNhdGlvbiBmcm9tICcuL2FuaW1hdGlvbnMvYXBwbGljYXRpb24uanNvbic7XG5pbXBvcnQgYXJ0aWZhY3RvcnkgZnJvbSAnLi9hbmltYXRpb25zL2FydGlmYWN0b3J5Lmpzb24nO1xuaW1wb3J0IGF1ZGl0IGZyb20gJy4vYW5pbWF0aW9ucy9hdWRpdC5qc29uJztcbmltcG9ydCBhdXhpbGlhcnlfZnVuY3Rpb24gZnJvbSAnLi9hbmltYXRpb25zL2F1eGlsaWFyeV9mdW5jdGlvbi5qc29uJztcbmltcG9ydCBiYWNrdXAgZnJvbSAnLi9hbmltYXRpb25zL2JhY2t1cC5qc29uJztcbmltcG9ydCBiYXJfY2hhcnQgZnJvbSAnLi9hbmltYXRpb25zL2Jhcl9jaGFydC5qc29uJztcbmltcG9ydCBiaWxsIGZyb20gJy4vYW5pbWF0aW9ucy9iaWxsLmpzb24nO1xuaW1wb3J0IGNhdGFsb2cgZnJvbSAnLi9hbmltYXRpb25zL2NhdGFsb2cuanNvbic7XG5pbXBvcnQgY2VydGlmaWNhdGUgZnJvbSAnLi9hbmltYXRpb25zL2NlcnRpZmljYXRlLmpzb24nO1xuaW1wb3J0IGNpIGZyb20gJy4vYW5pbWF0aW9ucy9jaS5qc29uJztcbmltcG9ydCBjb2RlIGZyb20gJy4vYW5pbWF0aW9ucy9jb2RlLmpzb24nO1xuaW1wb3J0IGRhc2hib2FyZCBmcm9tICcuL2FuaW1hdGlvbnMvZGFzaGJvYXJkLmpzb24nO1xuaW1wb3J0IGRhdGFfc2VydmljZSBmcm9tICcuL2FuaW1hdGlvbnMvZGF0YV9zZXJ2aWNlLmpzb24nO1xuaW1wb3J0IGRldm9wcyBmcm9tICcuL2FuaW1hdGlvbnMvZGV2b3BzLmpzb24nO1xuaW1wb3J0IGRldm9wc190b29scyBmcm9tICcuL2FuaW1hdGlvbnMvZGV2b3BzX3Rvb2xzLmpzb24nO1xuaW1wb3J0IGV2ZW50cyBmcm9tICcuL2FuaW1hdGlvbnMvZXZlbnRzLmpzb24nO1xuaW1wb3J0IGZpbGUgZnJvbSAnLi9hbmltYXRpb25zL2ZpbGUuanNvbic7XG5pbXBvcnQgZ2F0ZXdheSBmcm9tICcuL2FuaW1hdGlvbnMvZ2F0ZXdheS5qc29uJztcbmltcG9ydCBnaXRvcHMgZnJvbSAnLi9hbmltYXRpb25zL2dpdG9wcy5qc29uJztcbmltcG9ydCBpbnNwZWN0aW9uIGZyb20gJy4vYW5pbWF0aW9ucy9pbnNwZWN0aW9uLmpzb24nO1xuaW1wb3J0IGludGVybmV0IGZyb20gJy4vYW5pbWF0aW9ucy9pbnRlcm5ldC5qc29uJztcbmltcG9ydCBrYWZrYSBmcm9tICcuL2FuaW1hdGlvbnMva2Fma2EuanNvbic7XG5pbXBvcnQgbG9nIGZyb20gJy4vYW5pbWF0aW9ucy9sb2cuanNvbic7XG5pbXBvcnQgbWVtYmVyIGZyb20gJy4vYW5pbWF0aW9ucy9tZW1iZXIuanNvbic7XG5pbXBvcnQgbW9uZ29kYiBmcm9tICcuL2FuaW1hdGlvbnMvbW9uZ29kYi5qc29uJztcbmltcG9ydCBtb25pdG9yIGZyb20gJy4vYW5pbWF0aW9ucy9tb25pdG9yLmpzb24nO1xuaW1wb3J0IG15c3FsIGZyb20gJy4vYW5pbWF0aW9ucy9teXNxbC5qc29uJztcbmltcG9ydCBuYW1lc3BhY2UgZnJvbSAnLi9hbmltYXRpb25zL25hbWVzcGFjZS5qc29uJztcbmltcG9ydCBub3RpY2UgZnJvbSAnLi9hbmltYXRpb25zL25vdGljZS5qc29uJztcbmltcG9ydCBvYW0gZnJvbSAnLi9hbmltYXRpb25zL29hbS5qc29uJztcbmltcG9ydCBvcGVyYXRpb25fY2VudGVyIGZyb20gJy4vYW5pbWF0aW9ucy9vcGVyYXRpb25fY2VudGVyLmpzb24nO1xuaW1wb3J0IHBhcmFtc190ZW1wbGF0ZSBmcm9tICcuL2FuaW1hdGlvbnMvcGFyYW1zX3RlbXBsYXRlLmpzb24nO1xuaW1wb3J0IHBpcGVsaW5lIGZyb20gJy4vYW5pbWF0aW9ucy9waXBlbGluZS5qc29uJztcbmltcG9ydCBwbGF0Zm9ybV9zZXR0aW5ncyBmcm9tICcuL2FuaW1hdGlvbnMvcGxhdGZvcm1fc2V0dGluZ3MuanNvbic7XG5pbXBvcnQgcG9zdGdyZXNxbCBmcm9tICcuL2FuaW1hdGlvbnMvcG9zdGdyZXNxbC5qc29uJztcbmltcG9ydCBwcm9kdWN0IGZyb20gJy4vYW5pbWF0aW9ucy9wcm9kdWN0Lmpzb24nO1xuaW1wb3J0IHByb2plY3QgZnJvbSAnLi9hbmltYXRpb25zL3Byb2ouanNvbic7XG5pbXBvcnQgcmFiYml0bXEgZnJvbSAnLi9hbmltYXRpb25zL3JhYmJpdG1xLmpzb24nO1xuaW1wb3J0IHJlZGlzIGZyb20gJy4vYW5pbWF0aW9ucy9yZWRpcy5qc29uJztcbmltcG9ydCByZXNvdXJjZV9saXN0IGZyb20gJy4vYW5pbWF0aW9ucy9yZXNvdXJjZV9saXN0Lmpzb24nO1xuaW1wb3J0IHJvY2tldG1xIGZyb20gJy4vYW5pbWF0aW9ucy9yb2NrZXRtcS5qc29uJztcbmltcG9ydCBzY3J1bSBmcm9tICcuL2FuaW1hdGlvbnMvc2NydW0uanNvbic7XG5pbXBvcnQgc2VjcmV0cyBmcm9tICcuL2FuaW1hdGlvbnMvc2VjcmV0cy5qc29uJztcbmltcG9ydCBzZWN1cml0eSBmcm9tICcuL2FuaW1hdGlvbnMvc2VjdXJpdHkuanNvbic7XG5pbXBvcnQgc2VydmVyIGZyb20gJy4vYW5pbWF0aW9ucy9zZXJ2ZXIuanNvbic7XG5pbXBvcnQgc2VydmljZV9tZXNoIGZyb20gJy4vYW5pbWF0aW9ucy9zZXJ2aWNlX21lc2guanNvbic7XG5pbXBvcnQgc2l0ZW1hcCBmcm9tICcuL2FuaW1hdGlvbnMvc2l0ZW1hcC5qc29uJztcbmltcG9ydCBzbGlkZXJzX3VwIGZyb20gJy4vYW5pbWF0aW9ucy9zbGlkZXJzX3VwLmpzb24nO1xuaW1wb3J0IHN0b3JhZ2UgZnJvbSAnLi9hbmltYXRpb25zL3N0b3JhZ2UuanNvbic7XG5pbXBvcnQgdGVzdF9tYW5hZ2VtZW50IGZyb20gJy4vYW5pbWF0aW9ucy90ZXN0X21hbmFnZW1lbnQuanNvbic7XG5pbXBvcnQgdG9wb2xvZ3kgZnJvbSAnLi9hbmltYXRpb25zL3RvcG9sb2d5Lmpzb24nO1xuaW1wb3J0IHVzZXJfcm9sZSBmcm9tICcuL2FuaW1hdGlvbnMvdXNlcl9yb2xlLmpzb24nO1xuaW1wb3J0IHZpZXdfamFlZ2VyIGZyb20gJy4vYW5pbWF0aW9ucy92aWV3X2phZWdlci5qc29uJztcbmltcG9ydCB2aXJ0dWFsaXphdGlvbiBmcm9tICcuL2FuaW1hdGlvbnMvdmlydHVhbGl6YXRpb24uanNvbic7XG5cbmV4cG9ydCBkZWZhdWx0IHtcbiAgYWxhcm0sXG4gIGFwcCxcbiAgYXBwbGljYXRpb24sXG4gIGFydGlmYWN0b3J5LFxuICBhdWRpdCxcbiAgYXV4aWxpYXJ5X2Z1bmN0aW9uLFxuICBiYWNrdXAsXG4gIGJhcl9jaGFydCxcbiAgYmlsbCxcbiAgY2F0YWxvZyxcbiAgY2VydGlmaWNhdGUsXG4gIGNpLFxuICBjb2RlLFxuICBkYXRhX3NlcnZpY2UsXG4gIGRldm9wc190b29scyxcbiAgZGV2b3BzLFxuICBmaWxlLFxuICBnYXRld2F5LFxuICBzbGlkZXJzX3VwLFxuICBpbnRlcm5ldCxcbiAgbG9nLFxuICBtZW1iZXIsXG4gIG1vbml0b3IsXG4gIG5hbWVzcGFjZSxcbiAgbm90aWNlLFxuICBvcGVyYXRpb25fY2VudGVyLFxuICBwaXBlbGluZSxcbiAgcGxhdGZvcm1fc2V0dGluZ3MsXG4gIHByb2R1Y3QsXG4gIHByb2plY3QsXG4gIHJlc291cmNlX2xpc3QsXG4gIHJvY2tldG1xLFxuICBzY3J1bSxcbiAgc2VjcmV0cyxcbiAgc2VjdXJpdHksXG4gIHNlcnZlcixcbiAgc2VydmljZV9tZXNoLFxuICBzaXRlbWFwLFxuICBzdG9yYWdlLFxuICB0b3BvbG9neSxcbiAgdXNlcl9yb2xlLFxuICB2aWV3X2phZWdlcixcbiAgdmlydHVhbGl6YXRpb24sXG4gIG9hbSxcbiAga2Fma2EsXG4gIHJlZGlzLFxuICBteXNxbCxcbiAgbW9uZ29kYixcbiAgcmFiYml0bXEsXG4gIHBvc3RncmVzcWwsXG4gIGluc3BlY3Rpb24sXG4gIHRlc3RfbWFuYWdlbWVudCxcbiAgcGFyYW1zX3RlbXBsYXRlLFxuICBnaXRvcHMsXG4gIGV2ZW50cyxcbiAgZGFzaGJvYXJkLFxufSBhcyBSZWNvcmQ8c3RyaW5nLCBhbnk+O1xuIl19
|