zek 17.3.15 → 17.3.22
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/components/core-ui.component.mjs +1 -1
- package/esm2022/lib/models/filter.model.mjs +1 -1
- package/esm2022/lib/models/index.mjs +2 -1
- package/esm2022/lib/models/modal-size.mjs +2 -0
- package/esm2022/lib/models/pager.model.mjs +4 -14
- package/esm2022/lib/models/valid-event-args.model.mjs +1 -1
- package/esm2022/lib/modules/alert/alert/alert.mjs +1 -1
- package/esm2022/lib/modules/bb/bb-modal-base.mjs +74 -0
- package/esm2022/lib/modules/bb/bb-modal-toolbar.mjs +1 -1
- package/esm2022/lib/modules/bb/bb.component.mjs +40 -19
- package/esm2022/lib/modules/bb/bb.module.mjs +6 -6
- package/esm2022/lib/modules/bb/index.mjs +2 -2
- package/esm2022/lib/modules/file-viewer/file-viewer.mjs +2 -2
- package/esm2022/lib/modules/google-login-button/google-login-button.mjs +1 -1
- package/esm2022/lib/modules/grid-toolbar/grid-toolbar/grid-toolbar.mjs +1 -1
- package/esm2022/lib/modules/list-toolbar/list-toolbar.mjs +1 -1
- package/esm2022/lib/modules/loading/loading.mjs +1 -1
- package/esm2022/lib/modules/modal/filter-modal/filter-modal.component.mjs +3 -3
- package/esm2022/lib/modules/modal/modal/modal.component.mjs +32 -19
- package/esm2022/lib/modules/modal/sum-modal/sum-modal.component.mjs +1 -1
- package/esm2022/lib/modules/numeric/numeric.directive.mjs +1 -1
- package/esm2022/lib/modules/page-title/page-title.component.mjs +1 -1
- package/esm2022/lib/modules/pager/pager/pager.mjs +1 -1
- package/esm2022/lib/modules/password/password.mjs +1 -1
- package/esm2022/lib/modules/progress/progress.mjs +1 -1
- package/esm2022/lib/modules/radio/radio.mjs +1 -1
- package/esm2022/lib/modules/recaptcha/recaptcha.service.mjs +1 -1
- package/esm2022/lib/modules/sort/sort-button-group/sort-button-group.mjs +1 -1
- package/esm2022/lib/modules/sort/sort.mjs +1 -1
- package/esm2022/lib/modules/time/timer-service.mjs +2 -2
- package/esm2022/lib/services/auth.service.mjs +1 -1
- package/esm2022/lib/utils/pager-helper.mjs +3 -3
- package/fesm2022/zek.mjs +89 -65
- package/fesm2022/zek.mjs.map +1 -1
- package/lib/models/index.d.ts +1 -0
- package/lib/models/modal-size.d.ts +1 -0
- package/lib/models/pager.model.d.ts +3 -7
- package/lib/modules/bb/{bb-modal-base.component.d.ts → bb-modal-base.d.ts} +4 -4
- package/lib/modules/bb/bb-modal-toolbar.d.ts +1 -1
- package/lib/modules/bb/bb.component.d.ts +15 -5
- package/lib/modules/bb/bb.module.d.ts +4 -4
- package/lib/modules/bb/index.d.ts +1 -1
- package/lib/modules/modal/modal/modal.component.d.ts +11 -3
- package/package.json +1 -1
- package/esm2022/lib/modules/bb/bb-modal-base.component.mjs +0 -74
package/lib/models/index.d.ts
CHANGED
|
@@ -10,6 +10,7 @@ export * from './gender.model';
|
|
|
10
10
|
export * from './key-pair.model';
|
|
11
11
|
export * from './list-base.model';
|
|
12
12
|
export * from './login.model';
|
|
13
|
+
export * from './modal-size';
|
|
13
14
|
export * from './month.model';
|
|
14
15
|
export * from './nav.model';
|
|
15
16
|
export * from './pager.model';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export type ModalSize = '' | 'sm' | 'md' | 'lg' | 'xl';
|
|
@@ -1,7 +1,5 @@
|
|
|
1
|
-
export declare class
|
|
1
|
+
export declare class Pager {
|
|
2
2
|
totalItemCount: number;
|
|
3
|
-
}
|
|
4
|
-
export declare class Pager extends PagerBase {
|
|
5
3
|
pageCount: number;
|
|
6
4
|
pageNumber: number;
|
|
7
5
|
pageSize: number;
|
|
@@ -13,15 +11,13 @@ export declare class Pager extends PagerBase {
|
|
|
13
11
|
lastItemOnPage: number;
|
|
14
12
|
pages: number[];
|
|
15
13
|
}
|
|
16
|
-
export declare class
|
|
14
|
+
export declare class PagedList<T = any> {
|
|
17
15
|
data: T[];
|
|
18
16
|
pager: Pager;
|
|
19
17
|
totalItemCount: number;
|
|
18
|
+
count: number;
|
|
20
19
|
pageNumber: number;
|
|
21
20
|
pageSize: number;
|
|
22
|
-
count: number;
|
|
23
|
-
}
|
|
24
|
-
export declare class PagedList<T = any> extends PagedListBase<T> {
|
|
25
21
|
pageCount: number;
|
|
26
22
|
hasPreviousPage: boolean;
|
|
27
23
|
hasNextPage: boolean;
|
|
@@ -2,12 +2,12 @@ import { EventEmitter } from "@angular/core";
|
|
|
2
2
|
import { BooleanInput, CoreComponent } from "../../components";
|
|
3
3
|
import { PagedList } from "../../models";
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
5
|
-
export declare class
|
|
5
|
+
export declare class ZekButtonBrowseModalBase extends CoreComponent {
|
|
6
6
|
type?: string | null;
|
|
7
7
|
filter: any;
|
|
8
8
|
data?: PagedList | null;
|
|
9
9
|
private _multiSelect;
|
|
10
|
-
get multiSelect():
|
|
10
|
+
get multiSelect(): boolean;
|
|
11
11
|
set multiSelect(v: BooleanInput);
|
|
12
12
|
value: any;
|
|
13
13
|
onChoose: EventEmitter<any>;
|
|
@@ -21,6 +21,6 @@ export declare class ButtonBrowseModalBaseComponent extends CoreComponent {
|
|
|
21
21
|
onPageSizeChange(pageSize: number): void;
|
|
22
22
|
search(): void;
|
|
23
23
|
reset(): void;
|
|
24
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<
|
|
25
|
-
static ɵdir: i0.ɵɵDirectiveDeclaration<
|
|
24
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<ZekButtonBrowseModalBase, never>;
|
|
25
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<ZekButtonBrowseModalBase, never, never, { "type": { "alias": "type"; "required": false; }; "filter": { "alias": "filter"; "required": false; }; "data": { "alias": "data"; "required": false; }; "multiSelect": { "alias": "multiSelect"; "required": false; }; "value": { "alias": "value"; "required": false; }; }, { "onChoose": "onChoose"; "onChooseAll": "onChooseAll"; }, never, never, false, never>;
|
|
26
26
|
}
|
|
@@ -7,7 +7,7 @@ export declare class ZekButtonBrowseModalToolbar {
|
|
|
7
7
|
onReset: EventEmitter<any>;
|
|
8
8
|
reset(): void;
|
|
9
9
|
private _multiSelect;
|
|
10
|
-
get multiSelect():
|
|
10
|
+
get multiSelect(): boolean;
|
|
11
11
|
set multiSelect(v: BooleanInput);
|
|
12
12
|
onChooseAll: EventEmitter<any>;
|
|
13
13
|
chooseAll(): void;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { EventEmitter } from '@angular/core';
|
|
2
2
|
import { BooleanInput } from '../../components';
|
|
3
3
|
import { CoreUiComponent } from '../../components/core-ui.component';
|
|
4
|
-
import { KeyPair, PagedList } from '../../models';
|
|
4
|
+
import { KeyPair, ModalSize, PagedList } from '../../models';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
6
|
export declare class ZekButtonBrowse extends CoreUiComponent {
|
|
7
7
|
destroy(): Promise<void>;
|
|
@@ -28,7 +28,7 @@ export declare class ZekButtonBrowse extends CoreUiComponent {
|
|
|
28
28
|
get showInput(): boolean;
|
|
29
29
|
set showInput(v: BooleanInput);
|
|
30
30
|
private _multiSelect;
|
|
31
|
-
get multiSelect():
|
|
31
|
+
get multiSelect(): boolean;
|
|
32
32
|
set multiSelect(v: BooleanInput);
|
|
33
33
|
onShowModal: EventEmitter<any>;
|
|
34
34
|
onChooseAll: EventEmitter<any>;
|
|
@@ -37,8 +37,18 @@ export declare class ZekButtonBrowse extends CoreUiComponent {
|
|
|
37
37
|
private _modal;
|
|
38
38
|
get modal(): any;
|
|
39
39
|
set modal(v: any);
|
|
40
|
-
|
|
41
|
-
get
|
|
40
|
+
private _size;
|
|
41
|
+
get size(): ModalSize;
|
|
42
|
+
set size(v: ModalSize);
|
|
43
|
+
private _scrollable;
|
|
44
|
+
get scrollable(): boolean;
|
|
45
|
+
set scrollable(v: BooleanInput);
|
|
46
|
+
private _fullscreen;
|
|
47
|
+
get fullscreen(): boolean;
|
|
48
|
+
set fullscreen(v: BooleanInput);
|
|
49
|
+
private _showHeader;
|
|
50
|
+
get showHeader(): boolean;
|
|
51
|
+
set showHeader(v: BooleanInput);
|
|
42
52
|
showModal(): void;
|
|
43
53
|
close(): void;
|
|
44
54
|
choose(value: any): void;
|
|
@@ -48,5 +58,5 @@ export declare class ZekButtonBrowse extends CoreUiComponent {
|
|
|
48
58
|
onValueChanged(): void;
|
|
49
59
|
bindText(): void;
|
|
50
60
|
static ɵfac: i0.ɵɵFactoryDeclaration<ZekButtonBrowse, never>;
|
|
51
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<ZekButtonBrowse, "zek-bb", never, { "id": { "alias": "id"; "required": false; }; "type": { "alias": "type"; "required": false; }; "text": { "alias": "text"; "required": false; }; "readOnly": { "alias": "readOnly"; "required": false; }; "hide": { "alias": "hide"; "required": false; }; "showInput": { "alias": "showInput"; "required": false; }; "multiSelect": { "alias": "multiSelect"; "required": false; }; }, { "onShowModal": "onShowModal"; "onChooseAll": "onChooseAll"; "onKeyPairChange": "onKeyPairChange"; "onBindText": "onBindText"; }, never, ["*"], false, never>;
|
|
61
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<ZekButtonBrowse, "zek-bb", never, { "id": { "alias": "id"; "required": false; }; "type": { "alias": "type"; "required": false; }; "text": { "alias": "text"; "required": false; }; "readOnly": { "alias": "readOnly"; "required": false; }; "hide": { "alias": "hide"; "required": false; }; "showInput": { "alias": "showInput"; "required": false; }; "multiSelect": { "alias": "multiSelect"; "required": false; }; "size": { "alias": "size"; "required": false; }; "scrollable": { "alias": "scrollable"; "required": false; }; "fullscreen": { "alias": "fullscreen"; "required": false; }; "showHeader": { "alias": "showHeader"; "required": false; }; }, { "onShowModal": "onShowModal"; "onChooseAll": "onChooseAll"; "onKeyPairChange": "onKeyPairChange"; "onBindText": "onBindText"; }, never, ["*"], false, never>;
|
|
52
62
|
}
|
|
@@ -4,8 +4,8 @@ import * as i2 from "./bb-modal-toolbar";
|
|
|
4
4
|
import * as i3 from "@angular/common";
|
|
5
5
|
import * as i4 from "@angular/forms";
|
|
6
6
|
import * as i5 from "@ngx-translate/core";
|
|
7
|
-
export declare class
|
|
8
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<
|
|
9
|
-
static ɵmod: i0.ɵɵNgModuleDeclaration<
|
|
10
|
-
static ɵinj: i0.ɵɵInjectorDeclaration<
|
|
7
|
+
export declare class ZekButtonBrowseModule {
|
|
8
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<ZekButtonBrowseModule, never>;
|
|
9
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<ZekButtonBrowseModule, [typeof i1.ZekButtonBrowse, typeof i2.ZekButtonBrowseModalToolbar], [typeof i3.CommonModule, typeof i4.FormsModule, typeof i5.TranslateModule], [typeof i1.ZekButtonBrowse, typeof i2.ZekButtonBrowseModalToolbar]>;
|
|
10
|
+
static ɵinj: i0.ɵɵInjectorDeclaration<ZekButtonBrowseModule>;
|
|
11
11
|
}
|
|
@@ -3,6 +3,7 @@ import { TranslateService } from '@ngx-translate/core';
|
|
|
3
3
|
import { BooleanInput, CoreComponent } from '../../../components';
|
|
4
4
|
import { ComponentType } from '../../../utils';
|
|
5
5
|
import { ValidEventArgs } from '../../../models/valid-event-args.model';
|
|
6
|
+
import { ModalSize } from '../../../models';
|
|
6
7
|
import * as i0 from "@angular/core";
|
|
7
8
|
export declare class ZekModal extends CoreComponent {
|
|
8
9
|
private readonly translate;
|
|
@@ -40,10 +41,17 @@ export declare class ZekModal extends CoreComponent {
|
|
|
40
41
|
onHidden: EventEmitter<any>;
|
|
41
42
|
onOk: EventEmitter<any>;
|
|
42
43
|
componentType: ComponentType;
|
|
43
|
-
private
|
|
44
|
+
private _size;
|
|
45
|
+
get size(): ModalSize;
|
|
46
|
+
set size(v: ModalSize);
|
|
47
|
+
/**
|
|
48
|
+
* @deprecated Please use size property
|
|
49
|
+
*/
|
|
44
50
|
get large(): boolean;
|
|
45
51
|
set large(v: BooleanInput);
|
|
46
|
-
|
|
52
|
+
/**
|
|
53
|
+
* @deprecated Please use size property
|
|
54
|
+
*/
|
|
47
55
|
get xl(): boolean;
|
|
48
56
|
set xl(v: BooleanInput);
|
|
49
57
|
private _scrollable;
|
|
@@ -68,7 +76,7 @@ export declare class ZekModal extends CoreComponent {
|
|
|
68
76
|
ok(): void;
|
|
69
77
|
keyDown(e: Event): void;
|
|
70
78
|
static ɵfac: i0.ɵɵFactoryDeclaration<ZekModal, never>;
|
|
71
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<ZekModal, "zek-modal", never, { "id": { "alias": "id"; "required": false; }; "model": { "alias": "model"; "required": false; }; "showOk": { "alias": "showOk"; "required": false; }; "disabledOk": { "alias": "disabledOk"; "required": false; }; "showCancel": { "alias": "showCancel"; "required": false; }; "autoHide": { "alias": "autoHide"; "required": false; }; "title": { "alias": "title"; "required": false; }; "text": { "alias": "text"; "required": false; }; "icon": { "alias": "icon"; "required": false; }; "okButtonText": { "alias": "okButtonText"; "required": false; }; "componentType": { "alias": "componentType"; "required": false; }; "large": { "alias": "large"; "required": false; }; "xl": { "alias": "xl"; "required": false; }; "scrollable": { "alias": "scrollable"; "required": false; }; "fullscreen": { "alias": "fullscreen"; "required": false; }; "showHeader": { "alias": "showHeader"; "required": false; }; "showFooter": { "alias": "showFooter"; "required": false; }; }, { "onShown": "onShown"; "onHidden": "onHidden"; "onOk": "onOk"; "onValidating": "onValidating"; }, never, ["header", "*", "footer"], false, never>;
|
|
79
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<ZekModal, "zek-modal", never, { "id": { "alias": "id"; "required": false; }; "model": { "alias": "model"; "required": false; }; "showOk": { "alias": "showOk"; "required": false; }; "disabledOk": { "alias": "disabledOk"; "required": false; }; "showCancel": { "alias": "showCancel"; "required": false; }; "autoHide": { "alias": "autoHide"; "required": false; }; "title": { "alias": "title"; "required": false; }; "text": { "alias": "text"; "required": false; }; "icon": { "alias": "icon"; "required": false; }; "okButtonText": { "alias": "okButtonText"; "required": false; }; "componentType": { "alias": "componentType"; "required": false; }; "size": { "alias": "size"; "required": false; }; "large": { "alias": "large"; "required": false; }; "xl": { "alias": "xl"; "required": false; }; "scrollable": { "alias": "scrollable"; "required": false; }; "fullscreen": { "alias": "fullscreen"; "required": false; }; "showHeader": { "alias": "showHeader"; "required": false; }; "showFooter": { "alias": "showFooter"; "required": false; }; }, { "onShown": "onShown"; "onHidden": "onHidden"; "onOk": "onOk"; "onValidating": "onValidating"; }, never, ["header", "*", "footer"], false, never>;
|
|
72
80
|
}
|
|
73
81
|
export declare class ZekDeleteModal extends ZekModal {
|
|
74
82
|
constructor(translate: TranslateService);
|
package/package.json
CHANGED
|
@@ -1,74 +0,0 @@
|
|
|
1
|
-
import { Directive, EventEmitter, Input, Output } from "@angular/core";
|
|
2
|
-
import { CoreComponent } from "../../components";
|
|
3
|
-
import { Convert } from "../../utils";
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
export class ButtonBrowseModalBaseComponent extends CoreComponent {
|
|
6
|
-
constructor() {
|
|
7
|
-
super(...arguments);
|
|
8
|
-
this.filter = {};
|
|
9
|
-
this._multiSelect = false;
|
|
10
|
-
this.onChoose = new EventEmitter();
|
|
11
|
-
this.onChooseAll = new EventEmitter();
|
|
12
|
-
}
|
|
13
|
-
get multiSelect() {
|
|
14
|
-
return this._multiSelect;
|
|
15
|
-
}
|
|
16
|
-
set multiSelect(v) {
|
|
17
|
-
this._multiSelect = Convert.toBooleanProperty(v);
|
|
18
|
-
}
|
|
19
|
-
choose(value) {
|
|
20
|
-
this.onChoose.emit(value);
|
|
21
|
-
}
|
|
22
|
-
chooseAll() {
|
|
23
|
-
this.onChooseAll.emit(this.filter);
|
|
24
|
-
}
|
|
25
|
-
onKeydown(e) {
|
|
26
|
-
e.preventDefault();
|
|
27
|
-
e.stopPropagation();
|
|
28
|
-
this.search();
|
|
29
|
-
}
|
|
30
|
-
bindData() { }
|
|
31
|
-
async refresh() {
|
|
32
|
-
try {
|
|
33
|
-
this.loading = true;
|
|
34
|
-
await this.bindData();
|
|
35
|
-
}
|
|
36
|
-
finally {
|
|
37
|
-
this.loading = false;
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
onPageChange(page) {
|
|
41
|
-
this.filter.page = page;
|
|
42
|
-
this.refresh();
|
|
43
|
-
}
|
|
44
|
-
onPageSizeChange(pageSize) {
|
|
45
|
-
this.filter.pageSize = pageSize;
|
|
46
|
-
this.onPageChange(1);
|
|
47
|
-
}
|
|
48
|
-
search() {
|
|
49
|
-
this.onPageChange(1);
|
|
50
|
-
}
|
|
51
|
-
reset() {
|
|
52
|
-
this.filter = {};
|
|
53
|
-
}
|
|
54
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ButtonBrowseModalBaseComponent, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
|
|
55
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.4", type: ButtonBrowseModalBaseComponent, inputs: { type: "type", filter: "filter", data: "data", multiSelect: "multiSelect", value: "value" }, outputs: { onChoose: "onChoose", onChooseAll: "onChooseAll" }, usesInheritance: true, ngImport: i0 }); }
|
|
56
|
-
}
|
|
57
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: ButtonBrowseModalBaseComponent, decorators: [{
|
|
58
|
-
type: Directive
|
|
59
|
-
}], propDecorators: { type: [{
|
|
60
|
-
type: Input
|
|
61
|
-
}], filter: [{
|
|
62
|
-
type: Input
|
|
63
|
-
}], data: [{
|
|
64
|
-
type: Input
|
|
65
|
-
}], multiSelect: [{
|
|
66
|
-
type: Input
|
|
67
|
-
}], value: [{
|
|
68
|
-
type: Input
|
|
69
|
-
}], onChoose: [{
|
|
70
|
-
type: Output
|
|
71
|
-
}], onChooseAll: [{
|
|
72
|
-
type: Output
|
|
73
|
-
}] } });
|
|
74
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmItbW9kYWwtYmFzZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy96ZWsvc3JjL2xpYi9tb2R1bGVzL2JiL2JiLW1vZGFsLWJhc2UuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkUsT0FBTyxFQUFnQixhQUFhLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUUvRCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sYUFBYSxDQUFDOztBQUd0QyxNQUFNLE9BQU8sOEJBQStCLFNBQVEsYUFBYTtJQURqRTs7UUFHYSxXQUFNLEdBQVEsRUFBRSxDQUFDO1FBR2xCLGlCQUFZLEdBQUcsS0FBSyxDQUFDO1FBVW5CLGFBQVEsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBSzlCLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztLQXNDOUM7SUFwREcsSUFBYyxXQUFXO1FBQ3JCLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQztJQUM3QixDQUFDO0lBQ0QsSUFBSSxXQUFXLENBQUMsQ0FBZTtRQUMzQixJQUFJLENBQUMsWUFBWSxHQUFHLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNyRCxDQUFDO0lBS0QsTUFBTSxDQUFDLEtBQVU7UUFDYixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM5QixDQUFDO0lBR0QsU0FBUztRQUNMLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBRUQsU0FBUyxDQUFDLENBQVE7UUFDZCxDQUFDLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDbkIsQ0FBQyxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ3BCLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUNsQixDQUFDO0lBRUQsUUFBUSxLQUFLLENBQUM7SUFDZCxLQUFLLENBQUMsT0FBTztRQUNULElBQUksQ0FBQztZQUNELElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO1lBQ3BCLE1BQU0sSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQzFCLENBQUM7Z0JBQ08sQ0FBQztZQUNMLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ3pCLENBQUM7SUFFTCxDQUFDO0lBQ0QsWUFBWSxDQUFDLElBQVk7UUFDckIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUNuQixDQUFDO0lBQ0QsZ0JBQWdCLENBQUMsUUFBZ0I7UUFDN0IsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO1FBQ2hDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDekIsQ0FBQztJQUVELE1BQU07UUFDRixJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3pCLENBQUM7SUFFRCxLQUFLO1FBQ0QsSUFBSSxDQUFDLE1BQU0sR0FBRyxFQUFFLENBQUM7SUFDckIsQ0FBQzs4R0F6RFEsOEJBQThCO2tHQUE5Qiw4QkFBOEI7OzJGQUE5Qiw4QkFBOEI7a0JBRDFDLFNBQVM7OEJBRUcsSUFBSTtzQkFBWixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBR1EsV0FBVztzQkFBeEIsS0FBSztnQkFPRyxLQUFLO3NCQUFiLEtBQUs7Z0JBRUksUUFBUTtzQkFBakIsTUFBTTtnQkFLRyxXQUFXO3NCQUFwQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBCb29sZWFuSW5wdXQsIENvcmVDb21wb25lbnQgfSBmcm9tIFwiLi4vLi4vY29tcG9uZW50c1wiO1xyXG5pbXBvcnQgeyBQYWdlZExpc3QgfSBmcm9tIFwiLi4vLi4vbW9kZWxzXCI7XHJcbmltcG9ydCB7IENvbnZlcnQgfSBmcm9tIFwiLi4vLi4vdXRpbHNcIjtcclxuXHJcbkBEaXJlY3RpdmUoKVxyXG5leHBvcnQgY2xhc3MgQnV0dG9uQnJvd3NlTW9kYWxCYXNlQ29tcG9uZW50IGV4dGVuZHMgQ29yZUNvbXBvbmVudCB7XHJcbiAgICBASW5wdXQoKSB0eXBlPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIEBJbnB1dCgpIGZpbHRlcjogYW55ID0ge307XHJcbiAgICBASW5wdXQoKSBkYXRhPzogUGFnZWRMaXN0IHwgbnVsbDtcclxuXHJcbiAgICBwcml2YXRlIF9tdWx0aVNlbGVjdCA9IGZhbHNlO1xyXG4gICAgQElucHV0KCkgIGdldCBtdWx0aVNlbGVjdCgpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fbXVsdGlTZWxlY3Q7XHJcbiAgICB9XHJcbiAgICBzZXQgbXVsdGlTZWxlY3QodjogQm9vbGVhbklucHV0KSB7XHJcbiAgICAgICAgdGhpcy5fbXVsdGlTZWxlY3QgPSBDb252ZXJ0LnRvQm9vbGVhblByb3BlcnR5KHYpO1xyXG4gICAgfVxyXG5cclxuICAgIEBJbnB1dCgpIHZhbHVlOiBhbnk7XHJcblxyXG4gICAgQE91dHB1dCgpIG9uQ2hvb3NlID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gICAgY2hvb3NlKHZhbHVlOiBhbnkpIHtcclxuICAgICAgICB0aGlzLm9uQ2hvb3NlLmVtaXQodmFsdWUpO1xyXG4gICAgfVxyXG5cclxuICAgIEBPdXRwdXQoKSBvbkNob29zZUFsbCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICAgIGNob29zZUFsbCgpIHtcclxuICAgICAgICB0aGlzLm9uQ2hvb3NlQWxsLmVtaXQodGhpcy5maWx0ZXIpO1xyXG4gICAgfVxyXG5cclxuICAgIG9uS2V5ZG93bihlOiBFdmVudCkge1xyXG4gICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcclxuICAgICAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gICAgICAgIHRoaXMuc2VhcmNoKCk7XHJcbiAgICB9XHJcblxyXG4gICAgYmluZERhdGEoKSB7IH1cclxuICAgIGFzeW5jIHJlZnJlc2goKSB7XHJcbiAgICAgICAgdHJ5IHtcclxuICAgICAgICAgICAgdGhpcy5sb2FkaW5nID0gdHJ1ZTtcclxuICAgICAgICAgICAgYXdhaXQgdGhpcy5iaW5kRGF0YSgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBmaW5hbGx5IHtcclxuICAgICAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgfVxyXG5cclxuICAgIH1cclxuICAgIG9uUGFnZUNoYW5nZShwYWdlOiBudW1iZXIpIHtcclxuICAgICAgICB0aGlzLmZpbHRlci5wYWdlID0gcGFnZTtcclxuICAgICAgICB0aGlzLnJlZnJlc2goKTtcclxuICAgIH1cclxuICAgIG9uUGFnZVNpemVDaGFuZ2UocGFnZVNpemU6IG51bWJlcikge1xyXG4gICAgICAgIHRoaXMuZmlsdGVyLnBhZ2VTaXplID0gcGFnZVNpemU7XHJcbiAgICAgICAgdGhpcy5vblBhZ2VDaGFuZ2UoMSk7XHJcbiAgICB9XHJcblxyXG4gICAgc2VhcmNoKCkge1xyXG4gICAgICAgIHRoaXMub25QYWdlQ2hhbmdlKDEpO1xyXG4gICAgfVxyXG5cclxuICAgIHJlc2V0KCkge1xyXG4gICAgICAgIHRoaXMuZmlsdGVyID0ge307XHJcbiAgICB9XHJcbn0iXX0=
|