@alauda/ui 7.2.1-beta.9 → 7.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/drawer/component/drawer.component.d.ts +12 -10
- package/drawer/component/internal/internal.component.d.ts +12 -13
- package/drawer/drawer-ref.d.ts +5 -4
- package/drawer/drawer.service.d.ts +9 -12
- package/drawer/types.d.ts +12 -10
- package/esm2022/drawer/component/drawer.component.mjs +15 -11
- package/esm2022/drawer/component/internal/internal.component.mjs +100 -84
- package/esm2022/drawer/drawer-ref.mjs +5 -2
- package/esm2022/drawer/drawer.service.mjs +26 -54
- package/esm2022/drawer/types.mjs +6 -7
- package/esm2022/form/form-item/form-item.component.mjs +3 -3
- package/fesm2022/alauda-ui.mjs +144 -150
- package/fesm2022/alauda-ui.mjs.map +1 -1
- package/package.json +1 -1
|
@@ -1,30 +1,32 @@
|
|
|
1
1
|
import { ComponentType } from '@angular/cdk/overlay';
|
|
2
2
|
import { AfterViewInit, EventEmitter, OnChanges, SimpleChanges, TemplateRef } from '@angular/core';
|
|
3
3
|
import { DrawerService } from '../drawer.service';
|
|
4
|
-
import { DrawerSize } from '../types';
|
|
4
|
+
import { DrawerOptions, DrawerSize } from '../types';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
|
-
export declare class DrawerComponent implements AfterViewInit, OnChanges {
|
|
6
|
+
export declare class DrawerComponent<T = unknown, C extends object = object, R = unknown> implements AfterViewInit, OnChanges, Required<DrawerOptions<T, C>> {
|
|
7
7
|
private readonly drawerService;
|
|
8
|
-
title: string | TemplateRef<
|
|
9
|
-
footer: string | TemplateRef<
|
|
8
|
+
title: string | TemplateRef<C>;
|
|
9
|
+
footer: string | TemplateRef<C>;
|
|
10
10
|
size: DrawerSize;
|
|
11
11
|
offsetY: string;
|
|
12
12
|
visible: boolean;
|
|
13
|
-
content: TemplateRef<
|
|
13
|
+
content: TemplateRef<C> | ComponentType<T>;
|
|
14
14
|
hideOnClickOutside: boolean;
|
|
15
15
|
showClose: boolean;
|
|
16
16
|
drawerClass: string;
|
|
17
17
|
mask: boolean;
|
|
18
18
|
maskClosable: boolean;
|
|
19
19
|
divider: boolean;
|
|
20
|
-
|
|
20
|
+
width: number;
|
|
21
|
+
contentParams: C;
|
|
22
|
+
readonly close: EventEmitter<R>;
|
|
21
23
|
private readonly titleTemplate;
|
|
22
24
|
private readonly contentTemplateOrComponent;
|
|
23
25
|
private readonly footerTemplate;
|
|
24
|
-
|
|
26
|
+
private drawerRef;
|
|
27
|
+
constructor(drawerService: DrawerService<T, C, R>);
|
|
25
28
|
ngOnChanges(changes: SimpleChanges): void;
|
|
26
29
|
ngAfterViewInit(): void;
|
|
27
|
-
|
|
28
|
-
static
|
|
29
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<DrawerComponent, "aui-drawer", never, { "title": { "alias": "title"; "required": false; }; "footer": { "alias": "footer"; "required": false; }; "size": { "alias": "size"; "required": false; }; "offsetY": { "alias": "offsetY"; "required": false; }; "visible": { "alias": "visible"; "required": false; }; "content": { "alias": "content"; "required": false; }; "hideOnClickOutside": { "alias": "hideOnClickOutside"; "required": false; }; "showClose": { "alias": "showClose"; "required": false; }; "drawerClass": { "alias": "drawerClass"; "required": false; }; "mask": { "alias": "mask"; "required": false; }; "maskClosable": { "alias": "maskClosable"; "required": false; }; "divider": { "alias": "divider"; "required": false; }; }, { "close": "close"; }, ["titleTemplate", "contentTemplateOrComponent", "footerTemplate"], never, true, never>;
|
|
30
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<DrawerComponent<any, any, any>, never>;
|
|
31
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<DrawerComponent<any, any, any>, "aui-drawer", never, { "title": { "alias": "title"; "required": false; }; "footer": { "alias": "footer"; "required": false; }; "size": { "alias": "size"; "required": false; }; "offsetY": { "alias": "offsetY"; "required": false; }; "visible": { "alias": "visible"; "required": false; }; "content": { "alias": "content"; "required": false; }; "hideOnClickOutside": { "alias": "hideOnClickOutside"; "required": false; }; "showClose": { "alias": "showClose"; "required": false; }; "drawerClass": { "alias": "drawerClass"; "required": false; }; "mask": { "alias": "mask"; "required": false; }; "maskClosable": { "alias": "maskClosable"; "required": false; }; "divider": { "alias": "divider"; "required": false; }; "width": { "alias": "width"; "required": false; }; "contentParams": { "alias": "contentParams"; "required": false; }; }, { "close": "close"; }, ["titleTemplate", "contentTemplateOrComponent", "footerTemplate"], ["*"], true, never>;
|
|
30
32
|
}
|
|
@@ -1,32 +1,31 @@
|
|
|
1
1
|
import { AnimationEvent } from '@angular/animations';
|
|
2
|
-
import { ComponentType } from '@angular/cdk/overlay';
|
|
3
2
|
import { CdkPortalOutlet } from '@angular/cdk/portal';
|
|
4
|
-
import {
|
|
5
|
-
import { Subject } from 'rxjs';
|
|
3
|
+
import { ElementRef, InjectionToken, Injector } from '@angular/core';
|
|
4
|
+
import { BehaviorSubject, Subject } from 'rxjs';
|
|
6
5
|
import { DrawerOptions } from '../../types';
|
|
7
6
|
import * as i0 from "@angular/core";
|
|
8
7
|
export declare const DATA: InjectionToken<unknown>;
|
|
9
8
|
export declare const duration = "300ms";
|
|
10
9
|
type Step = 'showStart' | 'showDone' | 'hideStart' | 'hideDone';
|
|
11
|
-
export declare class DrawerInternalComponent<T =
|
|
12
|
-
private readonly cdr;
|
|
10
|
+
export declare class DrawerInternalComponent<T = unknown, C extends object = object> {
|
|
13
11
|
private readonly injector;
|
|
14
|
-
maskClick: EventEmitter<MouseEvent>;
|
|
15
|
-
closeClick: EventEmitter<any>;
|
|
16
12
|
bodyPortalOutlet: CdkPortalOutlet;
|
|
13
|
+
mask: ElementRef<HTMLDivElement>;
|
|
17
14
|
animationStep$: Subject<Step>;
|
|
18
|
-
options: DrawerOptions
|
|
19
|
-
showHide
|
|
15
|
+
options: DrawerOptions<T, C>;
|
|
16
|
+
showHide$$: BehaviorSubject<"show" | "hide">;
|
|
17
|
+
maskVisible$: Subject<boolean>;
|
|
20
18
|
get drawerClasses(): Record<string, boolean>;
|
|
21
|
-
get width():
|
|
19
|
+
get width(): string;
|
|
22
20
|
isTemplateRef: (label: any) => label is import("@angular/core").TemplateRef<unknown>;
|
|
23
|
-
constructor(
|
|
21
|
+
constructor(injector: Injector);
|
|
24
22
|
ngAfterViewInit(): void;
|
|
25
23
|
private attachBodyContent;
|
|
26
24
|
onAnimation(event: AnimationEvent): void;
|
|
27
25
|
show(): void;
|
|
28
26
|
hide(): void;
|
|
29
|
-
|
|
30
|
-
static
|
|
27
|
+
maskClick(): void;
|
|
28
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<DrawerInternalComponent<any, any>, never>;
|
|
29
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<DrawerInternalComponent<any, any>, "ng-component", never, {}, {}, never, never, true, never>;
|
|
31
30
|
}
|
|
32
31
|
export {};
|
package/drawer/drawer-ref.d.ts
CHANGED
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import { Observable } from 'rxjs';
|
|
2
2
|
import { DrawerInternalComponent } from './component/internal/internal.component';
|
|
3
|
-
export declare class DrawerRef<R =
|
|
4
|
-
drawerInstance: DrawerInternalComponent
|
|
3
|
+
export declare class DrawerRef<T = unknown, C extends object = object, R = unknown> {
|
|
4
|
+
drawerInstance: DrawerInternalComponent<T, C>;
|
|
5
5
|
private result;
|
|
6
6
|
private readonly afterOpen$;
|
|
7
7
|
private readonly afterClosed$;
|
|
8
8
|
get afterOpen(): Observable<void>;
|
|
9
9
|
get afterClosed(): Observable<R>;
|
|
10
|
-
constructor(drawerInstance: DrawerInternalComponent);
|
|
11
|
-
|
|
10
|
+
constructor(drawerInstance: DrawerInternalComponent<T, C>);
|
|
11
|
+
open(): void;
|
|
12
|
+
close(result?: R): void;
|
|
12
13
|
}
|
|
@@ -1,25 +1,22 @@
|
|
|
1
1
|
import { Overlay } from '@angular/cdk/overlay';
|
|
2
|
-
import { ComponentRef } from '@angular/core';
|
|
3
2
|
import { Subject } from 'rxjs';
|
|
4
|
-
import { DrawerInternalComponent } from './component/internal/internal.component';
|
|
5
3
|
import { DrawerRef } from './drawer-ref';
|
|
6
4
|
import { DrawerOptions } from './types';
|
|
7
5
|
import * as i0 from "@angular/core";
|
|
8
|
-
export declare class DrawerService {
|
|
6
|
+
export declare class DrawerService<T = unknown, C extends object = object, R = unknown> {
|
|
9
7
|
private readonly overlay;
|
|
10
8
|
private overlayRef;
|
|
11
|
-
options: DrawerOptions
|
|
12
|
-
|
|
13
|
-
|
|
9
|
+
options: DrawerOptions<T, C>;
|
|
10
|
+
drawerRef: DrawerRef<T, C, R>;
|
|
11
|
+
invisible$: Subject<void>;
|
|
12
|
+
private drawerInternalComponentRef;
|
|
14
13
|
constructor(overlay: Overlay);
|
|
15
|
-
open(options: DrawerOptions): DrawerRef<
|
|
16
|
-
|
|
17
|
-
updateOptions(options: DrawerOptions): void;
|
|
14
|
+
open(options: DrawerOptions<T, C>): DrawerRef<T, C, R>;
|
|
15
|
+
updateOptions(options: DrawerOptions<T, C>): void;
|
|
18
16
|
private createOverlay;
|
|
19
17
|
private createDrawer;
|
|
20
18
|
private getOverlayConfig;
|
|
21
|
-
private disposeOverlay;
|
|
22
19
|
ngOnDestroy(): void;
|
|
23
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<DrawerService, never>;
|
|
24
|
-
static ɵprov: i0.ɵɵInjectableDeclaration<DrawerService
|
|
20
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<DrawerService<any, any, any>, never>;
|
|
21
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<DrawerService<any, any, any>>;
|
|
25
22
|
}
|
package/drawer/types.d.ts
CHANGED
|
@@ -1,15 +1,17 @@
|
|
|
1
1
|
import { ComponentType } from '@angular/cdk/portal';
|
|
2
2
|
import { TemplateRef } from '@angular/core';
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
3
|
+
import { ValueOf } from '../types';
|
|
4
|
+
export declare const DrawerSize: {
|
|
5
|
+
readonly Small: "small";
|
|
6
|
+
readonly Medium: "medium";
|
|
7
|
+
readonly Big: "big";
|
|
8
|
+
};
|
|
9
|
+
export type DrawerSize = ValueOf<typeof DrawerSize>;
|
|
10
|
+
export interface DrawerOptions<T = unknown, C extends object = object> {
|
|
11
|
+
title?: string | TemplateRef<C>;
|
|
12
|
+
content?: ComponentType<T> | TemplateRef<C>;
|
|
13
|
+
footer?: string | TemplateRef<C>;
|
|
14
|
+
contentParams?: C;
|
|
13
15
|
width?: number;
|
|
14
16
|
size?: DrawerSize;
|
|
15
17
|
offsetY?: string;
|
|
@@ -19,10 +19,13 @@ export class DrawerComponent {
|
|
|
19
19
|
mask;
|
|
20
20
|
maskClosable;
|
|
21
21
|
divider = true;
|
|
22
|
+
width;
|
|
23
|
+
contentParams;
|
|
22
24
|
close = new EventEmitter();
|
|
23
25
|
titleTemplate;
|
|
24
26
|
contentTemplateOrComponent;
|
|
25
27
|
footerTemplate;
|
|
28
|
+
drawerRef;
|
|
26
29
|
constructor(drawerService) {
|
|
27
30
|
this.drawerService = drawerService;
|
|
28
31
|
}
|
|
@@ -31,10 +34,13 @@ export class DrawerComponent {
|
|
|
31
34
|
if (visible) {
|
|
32
35
|
const value = visible.currentValue;
|
|
33
36
|
if (value) {
|
|
34
|
-
this.open();
|
|
37
|
+
this.drawerRef = this.drawerService.open(this);
|
|
38
|
+
this.drawerRef.afterClosed.pipe(first()).subscribe(res => {
|
|
39
|
+
this.close.emit(res);
|
|
40
|
+
});
|
|
35
41
|
}
|
|
36
42
|
else if (!visible.firstChange) {
|
|
37
|
-
this.
|
|
43
|
+
this.drawerRef.close();
|
|
38
44
|
}
|
|
39
45
|
}
|
|
40
46
|
}
|
|
@@ -43,20 +49,14 @@ export class DrawerComponent {
|
|
|
43
49
|
this.content = this.content || this.contentTemplateOrComponent;
|
|
44
50
|
this.footer = this.footer || this.footerTemplate;
|
|
45
51
|
}
|
|
46
|
-
open() {
|
|
47
|
-
const ref = this.drawerService.open(this);
|
|
48
|
-
ref.afterClosed.pipe(first()).subscribe(res => {
|
|
49
|
-
this.close.emit(res);
|
|
50
|
-
});
|
|
51
|
-
}
|
|
52
52
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.3", ngImport: i0, type: DrawerComponent, deps: [{ token: i1.DrawerService }], target: i0.ɵɵFactoryTarget.Component });
|
|
53
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.3", type: DrawerComponent, isStandalone: true, selector: "aui-drawer", inputs: { title: "title", footer: "footer", size: "size", offsetY: "offsetY", visible: "visible", content: "content", hideOnClickOutside: "hideOnClickOutside", showClose: "showClose", drawerClass: "drawerClass", mask: "mask", maskClosable: "maskClosable", divider: "divider" }, outputs: { close: "close" }, providers: [DrawerService], queries: [{ propertyName: "titleTemplate", first: true, predicate: DrawerHeaderDirective, descendants: true, read: TemplateRef }, { propertyName: "contentTemplateOrComponent", first: true, predicate: DrawerContentDirective, descendants: true, read: TemplateRef }, { propertyName: "footerTemplate", first: true, predicate: DrawerFooterDirective, descendants: true, read: TemplateRef }], usesOnChanges: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
53
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.3", type: DrawerComponent, isStandalone: true, selector: "aui-drawer", inputs: { title: "title", footer: "footer", size: "size", offsetY: "offsetY", visible: "visible", content: "content", hideOnClickOutside: "hideOnClickOutside", showClose: "showClose", drawerClass: "drawerClass", mask: "mask", maskClosable: "maskClosable", divider: "divider", width: "width", contentParams: "contentParams" }, outputs: { close: "close" }, providers: [DrawerService], queries: [{ propertyName: "titleTemplate", first: true, predicate: DrawerHeaderDirective, descendants: true, read: TemplateRef }, { propertyName: "contentTemplateOrComponent", first: true, predicate: DrawerContentDirective, descendants: true, read: TemplateRef }, { propertyName: "footerTemplate", first: true, predicate: DrawerFooterDirective, descendants: true, read: TemplateRef }], usesOnChanges: true, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
54
54
|
}
|
|
55
55
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.3", ngImport: i0, type: DrawerComponent, decorators: [{
|
|
56
56
|
type: Component,
|
|
57
57
|
args: [{
|
|
58
58
|
selector: 'aui-drawer',
|
|
59
|
-
template: '',
|
|
59
|
+
template: '<ng-content></ng-content>',
|
|
60
60
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
61
61
|
standalone: true,
|
|
62
62
|
providers: [DrawerService],
|
|
@@ -85,6 +85,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.3", ngImpor
|
|
|
85
85
|
type: Input
|
|
86
86
|
}], divider: [{
|
|
87
87
|
type: Input
|
|
88
|
+
}], width: [{
|
|
89
|
+
type: Input
|
|
90
|
+
}], contentParams: [{
|
|
91
|
+
type: Input
|
|
88
92
|
}], close: [{
|
|
89
93
|
type: Output
|
|
90
94
|
}], titleTemplate: [{
|
|
@@ -97,4 +101,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.3", ngImpor
|
|
|
97
101
|
type: ContentChild,
|
|
98
102
|
args: [DrawerFooterDirective, { read: TemplateRef }]
|
|
99
103
|
}] } });
|
|
100
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
104
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhd2VyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9kcmF3ZXIvY29tcG9uZW50L2RyYXdlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUVMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLFlBQVksRUFDWixLQUFLLEVBRUwsTUFBTSxFQUVOLFdBQVcsR0FDWixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRzdCLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNsRCxPQUFPLEVBQ0wsc0JBQXNCLEVBQ3RCLHFCQUFxQixFQUNyQixxQkFBcUIsR0FDdEIsTUFBTSxzQkFBc0IsQ0FBQztBQUM5QixPQUFPLEVBQWlCLFVBQVUsRUFBRSxNQUFNLFVBQVUsQ0FBQzs7O0FBU3JELE1BQU0sT0FBTyxlQUFlO0lBZ0VHO0lBekQ3QixLQUFLLENBQTBCO0lBRy9CLE1BQU0sQ0FBMEI7SUFHaEMsSUFBSSxHQUFlLFVBQVUsQ0FBQyxNQUFNLENBQUM7SUFHckMsT0FBTyxHQUFHLEtBQUssQ0FBQztJQUdoQixPQUFPLENBQVU7SUFHakIsT0FBTyxDQUFvQztJQUczQyxrQkFBa0IsR0FBRyxLQUFLLENBQUM7SUFHM0IsU0FBUyxHQUFHLElBQUksQ0FBQztJQUdqQixXQUFXLENBQVM7SUFHcEIsSUFBSSxDQUFVO0lBR2QsWUFBWSxDQUFVO0lBR3RCLE9BQU8sR0FBRyxJQUFJLENBQUM7SUFHZixLQUFLLENBQVM7SUFHZCxhQUFhLENBQUk7SUFHUixLQUFLLEdBQUcsSUFBSSxZQUFZLEVBQUssQ0FBQztJQUd0QixhQUFhLENBQWlCO0lBRzlCLDBCQUEwQixDQUV0QjtJQUdKLGNBQWMsQ0FBaUI7SUFFeEMsU0FBUyxDQUFxQjtJQUV0QyxZQUE2QixhQUFxQztRQUFyQyxrQkFBYSxHQUFiLGFBQWEsQ0FBd0I7SUFBRyxDQUFDO0lBRXRFLFdBQVcsQ0FBQyxPQUFzQjtRQUNoQyxNQUFNLEVBQUUsT0FBTyxFQUFFLEdBQUcsT0FBTyxDQUFDO1FBQzVCLElBQUksT0FBTyxFQUFFO1lBQ1gsTUFBTSxLQUFLLEdBQUcsT0FBTyxDQUFDLFlBQVksQ0FBQztZQUNuQyxJQUFJLEtBQUssRUFBRTtnQkFDVCxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUMvQyxJQUFJLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUU7b0JBQ3ZELElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO2dCQUN2QixDQUFDLENBQUMsQ0FBQzthQUNKO2lCQUFNLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxFQUFFO2dCQUUvQixJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxDQUFDO2FBQ3hCO1NBQ0Y7SUFDSCxDQUFDO0lBRUQsZUFBZTtRQUNiLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsYUFBYSxDQUFDO1FBQzlDLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sSUFBSSxJQUFJLENBQUMsMEJBQTBCLENBQUM7UUFDL0QsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxjQUFjLENBQUM7SUFDbkQsQ0FBQzt1R0F0RlUsZUFBZTsyRkFBZixlQUFlLDRaQUZmLENBQUMsYUFBYSxDQUFDLHFFQXFEWixxQkFBcUIsMkJBQVUsV0FBVywwRUFHMUMsc0JBQXNCLDJCQUFVLFdBQVcsOERBSzNDLHFCQUFxQiwyQkFBVSxXQUFXLGtEQWhFOUMsMkJBQTJCOzsyRkFLMUIsZUFBZTtrQkFQM0IsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsWUFBWTtvQkFDdEIsUUFBUSxFQUFFLDJCQUEyQjtvQkFDckMsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07b0JBQy9DLFVBQVUsRUFBRSxJQUFJO29CQUNoQixTQUFTLEVBQUUsQ0FBQyxhQUFhLENBQUM7aUJBQzNCO29HQVFDLEtBQUs7c0JBREosS0FBSztnQkFJTixNQUFNO3NCQURMLEtBQUs7Z0JBSU4sSUFBSTtzQkFESCxLQUFLO2dCQUlOLE9BQU87c0JBRE4sS0FBSztnQkFJTixPQUFPO3NCQUROLEtBQUs7Z0JBSU4sT0FBTztzQkFETixLQUFLO2dCQUlOLGtCQUFrQjtzQkFEakIsS0FBSztnQkFJTixTQUFTO3NCQURSLEtBQUs7Z0JBSU4sV0FBVztzQkFEVixLQUFLO2dCQUlOLElBQUk7c0JBREgsS0FBSztnQkFJTixZQUFZO3NCQURYLEtBQUs7Z0JBSU4sT0FBTztzQkFETixLQUFLO2dCQUlOLEtBQUs7c0JBREosS0FBSztnQkFJTixhQUFhO3NCQURaLEtBQUs7Z0JBSUcsS0FBSztzQkFEYixNQUFNO2dCQUlVLGFBQWE7c0JBRDdCLFlBQVk7dUJBQUMscUJBQXFCLEVBQUUsRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFO2dCQUl6QywwQkFBMEI7c0JBRDFDLFlBQVk7dUJBQUMsc0JBQXNCLEVBQUUsRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFO2dCQU0xQyxjQUFjO3NCQUQ5QixZQUFZO3VCQUFDLHFCQUFxQixFQUFFLEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudFR5cGUgfSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XG5pbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBDb250ZW50Q2hpbGQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT3V0cHV0LFxuICBTaW1wbGVDaGFuZ2VzLFxuICBUZW1wbGF0ZVJlZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBmaXJzdCB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBEcmF3ZXJSZWYgfSBmcm9tICcuLi9kcmF3ZXItcmVmJztcbmltcG9ydCB7IERyYXdlclNlcnZpY2UgfSBmcm9tICcuLi9kcmF3ZXIuc2VydmljZSc7XG5pbXBvcnQge1xuICBEcmF3ZXJDb250ZW50RGlyZWN0aXZlLFxuICBEcmF3ZXJGb290ZXJEaXJlY3RpdmUsXG4gIERyYXdlckhlYWRlckRpcmVjdGl2ZSxcbn0gZnJvbSAnLi4vaGVscGVyLWRpcmVjdGl2ZXMnO1xuaW1wb3J0IHsgRHJhd2VyT3B0aW9ucywgRHJhd2VyU2l6ZSB9IGZyb20gJy4uL3R5cGVzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXVpLWRyYXdlcicsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBwcm92aWRlcnM6IFtEcmF3ZXJTZXJ2aWNlXSxcbn0pXG5leHBvcnQgY2xhc3MgRHJhd2VyQ29tcG9uZW50PFxuICBUID0gdW5rbm93bixcbiAgQyBleHRlbmRzIG9iamVjdCA9IG9iamVjdCxcbiAgUiA9IHVua25vd24sXG4+IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25DaGFuZ2VzLCBSZXF1aXJlZDxEcmF3ZXJPcHRpb25zPFQsIEM+Plxue1xuICBASW5wdXQoKVxuICB0aXRsZTogc3RyaW5nIHwgVGVtcGxhdGVSZWY8Qz47XG5cbiAgQElucHV0KClcbiAgZm9vdGVyOiBzdHJpbmcgfCBUZW1wbGF0ZVJlZjxDPjtcblxuICBASW5wdXQoKVxuICBzaXplOiBEcmF3ZXJTaXplID0gRHJhd2VyU2l6ZS5NZWRpdW07XG5cbiAgQElucHV0KClcbiAgb2Zmc2V0WSA9ICcwcHgnO1xuXG4gIEBJbnB1dCgpXG4gIHZpc2libGU6IGJvb2xlYW47XG5cbiAgQElucHV0KClcbiAgY29udGVudDogVGVtcGxhdGVSZWY8Qz4gfCBDb21wb25lbnRUeXBlPFQ+O1xuXG4gIEBJbnB1dCgpXG4gIGhpZGVPbkNsaWNrT3V0c2lkZSA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpXG4gIHNob3dDbG9zZSA9IHRydWU7XG5cbiAgQElucHV0KClcbiAgZHJhd2VyQ2xhc3M6IHN0cmluZztcblxuICBASW5wdXQoKVxuICBtYXNrOiBib29sZWFuO1xuXG4gIEBJbnB1dCgpXG4gIG1hc2tDbG9zYWJsZTogYm9vbGVhbjtcblxuICBASW5wdXQoKVxuICBkaXZpZGVyID0gdHJ1ZTtcblxuICBASW5wdXQoKVxuICB3aWR0aDogbnVtYmVyO1xuXG4gIEBJbnB1dCgpXG4gIGNvbnRlbnRQYXJhbXM6IEM7XG5cbiAgQE91dHB1dCgpXG4gIHJlYWRvbmx5IGNsb3NlID0gbmV3IEV2ZW50RW1pdHRlcjxSPigpO1xuXG4gIEBDb250ZW50Q2hpbGQoRHJhd2VySGVhZGVyRGlyZWN0aXZlLCB7IHJlYWQ6IFRlbXBsYXRlUmVmIH0pXG4gIHByaXZhdGUgcmVhZG9ubHkgdGl0bGVUZW1wbGF0ZTogVGVtcGxhdGVSZWY8Qz47XG5cbiAgQENvbnRlbnRDaGlsZChEcmF3ZXJDb250ZW50RGlyZWN0aXZlLCB7IHJlYWQ6IFRlbXBsYXRlUmVmIH0pXG4gIHByaXZhdGUgcmVhZG9ubHkgY29udGVudFRlbXBsYXRlT3JDb21wb25lbnQ6XG4gICAgfCBUZW1wbGF0ZVJlZjxDPlxuICAgIHwgQ29tcG9uZW50VHlwZTxUPjtcblxuICBAQ29udGVudENoaWxkKERyYXdlckZvb3RlckRpcmVjdGl2ZSwgeyByZWFkOiBUZW1wbGF0ZVJlZiB9KVxuICBwcml2YXRlIHJlYWRvbmx5IGZvb3RlclRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxDPjtcblxuICBwcml2YXRlIGRyYXdlclJlZjogRHJhd2VyUmVmPFQsIEMsIFI+O1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgZHJhd2VyU2VydmljZTogRHJhd2VyU2VydmljZTxULCBDLCBSPikge31cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgY29uc3QgeyB2aXNpYmxlIH0gPSBjaGFuZ2VzO1xuICAgIGlmICh2aXNpYmxlKSB7XG4gICAgICBjb25zdCB2YWx1ZSA9IHZpc2libGUuY3VycmVudFZhbHVlO1xuICAgICAgaWYgKHZhbHVlKSB7XG4gICAgICAgIHRoaXMuZHJhd2VyUmVmID0gdGhpcy5kcmF3ZXJTZXJ2aWNlLm9wZW4odGhpcyk7XG4gICAgICAgIHRoaXMuZHJhd2VyUmVmLmFmdGVyQ2xvc2VkLnBpcGUoZmlyc3QoKSkuc3Vic2NyaWJlKHJlcyA9PiB7XG4gICAgICAgICAgdGhpcy5jbG9zZS5lbWl0KHJlcyk7XG4gICAgICAgIH0pO1xuICAgICAgfSBlbHNlIGlmICghdmlzaWJsZS5maXJzdENoYW5nZSkge1xuICAgICAgICAvLyDkuI3luIzmnJvpu5jorqTlhbPpl63ml7bvvIxkcmF3ZXIg5riy5p+T5ZCO5bCx6Kem5Y+RIGNsb3NlIOS6i+S7tlxuICAgICAgICB0aGlzLmRyYXdlclJlZi5jbG9zZSgpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICB0aGlzLnRpdGxlID0gdGhpcy50aXRsZSB8fCB0aGlzLnRpdGxlVGVtcGxhdGU7XG4gICAgdGhpcy5jb250ZW50ID0gdGhpcy5jb250ZW50IHx8IHRoaXMuY29udGVudFRlbXBsYXRlT3JDb21wb25lbnQ7XG4gICAgdGhpcy5mb290ZXIgPSB0aGlzLmZvb3RlciB8fCB0aGlzLmZvb3RlclRlbXBsYXRlO1xuICB9XG59XG4iXX0=
|