primeng 16.9.8-lts → 16.9.9-lts
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/autofocus/autofocus.d.ts +8 -4
- package/calendar/calendar.d.ts +5 -2
- package/dom/domhandler.d.ts +5 -1
- package/dropdown/dropdown.d.ts +1 -0
- package/esm2022/autofocus/autofocus.mjs +35 -18
- package/esm2022/calendar/calendar.mjs +84 -15
- package/esm2022/dom/domhandler.mjs +65 -2
- package/esm2022/dropdown/dropdown.mjs +16 -5
- package/esm2022/focustrap/focustrap.mjs +49 -25
- package/esm2022/inputnumber/inputnumber.mjs +15 -6
- package/esm2022/table/table.mjs +6 -3
- package/esm2022/tooltip/tooltip.mjs +18 -8
- package/fesm2022/primeng-autofocus.mjs +34 -17
- package/fesm2022/primeng-autofocus.mjs.map +1 -1
- package/fesm2022/primeng-calendar.mjs +83 -14
- package/fesm2022/primeng-calendar.mjs.map +1 -1
- package/fesm2022/primeng-dom.mjs +64 -1
- package/fesm2022/primeng-dom.mjs.map +1 -1
- package/fesm2022/primeng-dropdown.mjs +15 -4
- package/fesm2022/primeng-dropdown.mjs.map +1 -1
- package/fesm2022/primeng-focustrap.mjs +48 -24
- package/fesm2022/primeng-focustrap.mjs.map +1 -1
- package/fesm2022/primeng-inputnumber.mjs +14 -5
- package/fesm2022/primeng-inputnumber.mjs.map +1 -1
- package/fesm2022/primeng-table.mjs +5 -2
- package/fesm2022/primeng-table.mjs.map +1 -1
- package/fesm2022/primeng-tooltip.mjs +17 -7
- package/fesm2022/primeng-tooltip.mjs.map +1 -1
- package/focustrap/focustrap.d.ts +11 -3
- package/package.json +191 -191
- package/resources/components/dropdown/dropdown.css +4 -0
package/autofocus/autofocus.d.ts
CHANGED
@@ -6,18 +6,22 @@ import * as i1 from "@angular/common";
|
|
6
6
|
* @group Components
|
7
7
|
*/
|
8
8
|
export declare class AutoFocus {
|
9
|
-
private host;
|
10
|
-
constructor(host: ElementRef);
|
11
9
|
/**
|
12
10
|
* When present, it specifies that the component should automatically get focus on load.
|
13
11
|
* @group Props
|
14
12
|
*/
|
15
|
-
autofocus: boolean
|
13
|
+
autofocus: boolean;
|
16
14
|
focused: boolean;
|
17
|
-
|
15
|
+
platformId: Object;
|
16
|
+
document: Document;
|
17
|
+
host: ElementRef;
|
18
18
|
ngAfterViewInit(): void;
|
19
|
+
ngAfterContentChecked(): void;
|
20
|
+
ngAfterViewChecked(): void;
|
21
|
+
autoFocus(): void;
|
19
22
|
static ɵfac: i0.ɵɵFactoryDeclaration<AutoFocus, never>;
|
20
23
|
static ɵdir: i0.ɵɵDirectiveDeclaration<AutoFocus, "[pAutoFocus]", never, { "autofocus": { "alias": "autofocus"; "required": false; }; }, {}, never, never, false, never>;
|
24
|
+
static ngAcceptInputType_autofocus: unknown;
|
21
25
|
}
|
22
26
|
export declare class AutoFocusModule {
|
23
27
|
static ɵfac: i0.ɵɵFactoryDeclaration<AutoFocusModule, never>;
|
package/calendar/calendar.d.ts
CHANGED
@@ -507,6 +507,7 @@ export declare class Calendar implements OnInit, OnDestroy, ControlValueAccessor
|
|
507
507
|
_view: CalendarTypeView;
|
508
508
|
preventFocus: Nullable<boolean>;
|
509
509
|
_defaultDate: Date;
|
510
|
+
_focusKey: Nullable<string>;
|
510
511
|
private window;
|
511
512
|
get locale(): LocaleSettings;
|
512
513
|
get iconButtonAriaLabel(): any;
|
@@ -539,6 +540,8 @@ export declare class Calendar implements OnInit, OnDestroy, ControlValueAccessor
|
|
539
540
|
onYearSelect(event: Event, year: number): void;
|
540
541
|
updateInputfield(): void;
|
541
542
|
formatDateTime(date: any): any;
|
543
|
+
formatDateMetaToDate(dateMeta: any): Date;
|
544
|
+
formatDateKey(date: Date): string;
|
542
545
|
setCurrentHourPM(hours: number): void;
|
543
546
|
setCurrentView(currentView: CalendarTypeView): void;
|
544
547
|
selectDate(dateMeta: any): void;
|
@@ -583,10 +586,10 @@ export declare class Calendar implements OnInit, OnDestroy, ControlValueAccessor
|
|
583
586
|
onNextButtonClick(event: Event): void;
|
584
587
|
onContainerButtonKeydown(event: KeyboardEvent): void;
|
585
588
|
onInputKeydown(event: any): void;
|
586
|
-
onDateCellKeydown(event: any,
|
589
|
+
onDateCellKeydown(event: any, dateMeta: any, groupIndex: number): void;
|
587
590
|
onMonthCellKeydown(event: any, index: number): void;
|
588
591
|
onYearCellKeydown(event: any, index: number): void;
|
589
|
-
navigateToMonth(prev:
|
592
|
+
navigateToMonth(prev: boolean, groupIndex: number, focusKey?: string): void;
|
590
593
|
updateFocus(): void;
|
591
594
|
initFocusableCell(): void;
|
592
595
|
trapFocus(event: any): void;
|
package/dom/domhandler.d.ts
CHANGED
@@ -75,9 +75,13 @@ export declare class DomHandler {
|
|
75
75
|
static isExist(element: HTMLElement): ParentNode;
|
76
76
|
static focus(element: HTMLElement, options?: FocusOptions): void;
|
77
77
|
static getFocusableElements(element: any, selector?: string): any[];
|
78
|
-
static getFirstFocusableElement(element: any, selector
|
78
|
+
static getFirstFocusableElement(element: any, selector?: string): any;
|
79
79
|
static getLastFocusableElement(element: any, selector: any): any;
|
80
80
|
static getNextFocusableElement(element: HTMLElement, reverse?: boolean): any;
|
81
|
+
static createElement(type: any, attributes?: {}, ...children: any[]): any;
|
82
|
+
static setAttribute(element: any, attribute: string, value: any): void;
|
83
|
+
static setAttributes(element: any, attributes?: {}): void;
|
84
|
+
static isFocusableElement(element: any, selector?: string): any;
|
81
85
|
static generateZIndex(): number;
|
82
86
|
static getSelection(): any;
|
83
87
|
static getTargetElement(target: any, el?: HTMLElement): any;
|
package/dropdown/dropdown.d.ts
CHANGED
@@ -507,6 +507,7 @@ export declare class Dropdown implements OnInit, AfterViewInit, AfterContentInit
|
|
507
507
|
allowModelChange(): number;
|
508
508
|
isSelected(option: any): boolean;
|
509
509
|
ngAfterViewInit(): void;
|
510
|
+
updatePlaceHolderForFloatingLabel(): void;
|
510
511
|
updateEditableLabel(): void;
|
511
512
|
getOptionIndex(index: any, scrollerOptions: any): any;
|
512
513
|
getOptionLabel(option: any): any;
|
@@ -1,5 +1,5 @@
|
|
1
|
-
import { CommonModule } from '@angular/common';
|
2
|
-
import { Directive, Input, NgModule } from '@angular/core';
|
1
|
+
import { CommonModule, DOCUMENT, isPlatformBrowser } from '@angular/common';
|
2
|
+
import { Directive, ElementRef, Input, NgModule, PLATFORM_ID, booleanAttribute, inject } from '@angular/core';
|
3
3
|
import { DomHandler } from 'primeng/dom';
|
4
4
|
import { LicenseManager } from 'primeng/api';
|
5
5
|
import * as i0 from "@angular/core";
|
@@ -8,20 +8,39 @@ import * as i0 from "@angular/core";
|
|
8
8
|
* @group Components
|
9
9
|
*/
|
10
10
|
class AutoFocus {
|
11
|
-
host;
|
12
|
-
constructor(host) {
|
13
|
-
this.host = host;
|
14
|
-
}
|
15
11
|
/**
|
16
12
|
* When present, it specifies that the component should automatically get focus on load.
|
17
13
|
* @group Props
|
18
14
|
*/
|
19
|
-
autofocus;
|
15
|
+
autofocus = false;
|
20
16
|
focused = false;
|
17
|
+
platformId = inject(PLATFORM_ID);
|
18
|
+
document = inject(DOCUMENT);
|
19
|
+
host = inject(ElementRef);
|
20
|
+
ngAfterViewInit() {
|
21
|
+
LicenseManager.check();
|
22
|
+
}
|
21
23
|
ngAfterContentChecked() {
|
24
|
+
// This sets the `attr.autofocus` which is different than the Input `autofocus` attribute.
|
25
|
+
if (this.autofocus === false) {
|
26
|
+
this.host.nativeElement.removeAttribute('autofocus');
|
27
|
+
}
|
28
|
+
else {
|
29
|
+
this.host.nativeElement.setAttribute('autofocus', true);
|
30
|
+
}
|
31
|
+
if (!this.focused) {
|
32
|
+
this.autoFocus();
|
33
|
+
}
|
34
|
+
}
|
35
|
+
ngAfterViewChecked() {
|
22
36
|
if (!this.focused) {
|
23
|
-
|
24
|
-
|
37
|
+
this.autoFocus();
|
38
|
+
}
|
39
|
+
}
|
40
|
+
autoFocus() {
|
41
|
+
if (isPlatformBrowser(this.platformId) && this.autofocus) {
|
42
|
+
setTimeout(() => {
|
43
|
+
const focusableElements = DomHandler.getFocusableElements(this.host?.nativeElement);
|
25
44
|
if (focusableElements.length === 0) {
|
26
45
|
this.host.nativeElement.focus();
|
27
46
|
}
|
@@ -29,14 +48,11 @@ class AutoFocus {
|
|
29
48
|
focusableElements[0].focus();
|
30
49
|
}
|
31
50
|
this.focused = true;
|
32
|
-
}
|
51
|
+
});
|
33
52
|
}
|
34
53
|
}
|
35
|
-
|
36
|
-
|
37
|
-
}
|
38
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: AutoFocus, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
|
39
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.0", type: AutoFocus, selector: "[pAutoFocus]", inputs: { autofocus: "autofocus" }, host: { classAttribute: "p-element" }, ngImport: i0 });
|
54
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: AutoFocus, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
55
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.0", type: AutoFocus, selector: "[pAutoFocus]", inputs: { autofocus: ["autofocus", "autofocus", booleanAttribute] }, host: { classAttribute: "p-element" }, ngImport: i0 });
|
40
56
|
}
|
41
57
|
export { AutoFocus };
|
42
58
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: AutoFocus, decorators: [{
|
@@ -47,8 +63,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.0", ngImpor
|
|
47
63
|
class: 'p-element'
|
48
64
|
}
|
49
65
|
}]
|
50
|
-
}],
|
51
|
-
type: Input
|
66
|
+
}], propDecorators: { autofocus: [{
|
67
|
+
type: Input,
|
68
|
+
args: [{ transform: booleanAttribute }]
|
52
69
|
}] } });
|
53
70
|
class AutoFocusModule {
|
54
71
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: AutoFocusModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
@@ -64,4 +81,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.0", ngImpor
|
|
64
81
|
declarations: [AutoFocus]
|
65
82
|
}]
|
66
83
|
}] });
|
67
|
-
//# sourceMappingURL=data:application/json;base64,
|
84
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b2ZvY3VzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2FwcC9jb21wb25lbnRzL2F1dG9mb2N1cy9hdXRvZm9jdXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM1RSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDOUcsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUN6QyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sYUFBYSxDQUFDOztBQUM3Qzs7O0dBR0c7QUFDSCxNQU1hLFNBQVM7SUFDbEI7OztPQUdHO0lBQ3FDLFNBQVMsR0FBWSxLQUFLLENBQUM7SUFFbkUsT0FBTyxHQUFZLEtBQUssQ0FBQztJQUV6QixVQUFVLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBRWpDLFFBQVEsR0FBYSxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7SUFFdEMsSUFBSSxHQUFlLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUV0QyxlQUFlO1FBQ1gsY0FBYyxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQzNCLENBQUM7SUFFRCxxQkFBcUI7UUFDakIsMEZBQTBGO1FBQzFGLElBQUksSUFBSSxDQUFDLFNBQVMsS0FBSyxLQUFLLEVBQUU7WUFDMUIsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsZUFBZSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1NBQ3hEO2FBQU07WUFDSCxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxZQUFZLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxDQUFDO1NBQzNEO1FBRUQsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDZixJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7U0FDcEI7SUFDTCxDQUFDO0lBRUQsa0JBQWtCO1FBQ2QsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDZixJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7U0FDcEI7SUFDTCxDQUFDO0lBRUQsU0FBUztRQUNMLElBQUksaUJBQWlCLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUU7WUFDdEQsVUFBVSxDQUFDLEdBQUcsRUFBRTtnQkFDWixNQUFNLGlCQUFpQixHQUFHLFVBQVUsQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLGFBQWEsQ0FBQyxDQUFDO2dCQUVwRixJQUFJLGlCQUFpQixDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7b0JBQ2hDLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssRUFBRSxDQUFDO2lCQUNuQztnQkFDRCxJQUFJLGlCQUFpQixDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7b0JBQzlCLGlCQUFpQixDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDO2lCQUNoQztnQkFFRCxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztZQUN4QixDQUFDLENBQUMsQ0FBQztTQUNOO0lBQ0wsQ0FBQzt1R0FyRFEsU0FBUzsyRkFBVCxTQUFTLDRFQUtFLGdCQUFnQjs7U0FMM0IsU0FBUzsyRkFBVCxTQUFTO2tCQU5yQixTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxjQUFjO29CQUN4QixJQUFJLEVBQUU7d0JBQ0YsS0FBSyxFQUFFLFdBQVc7cUJBQ3JCO2lCQUNKOzhCQU0yQyxTQUFTO3NCQUFoRCxLQUFLO3VCQUFDLEVBQUUsU0FBUyxFQUFFLGdCQUFnQixFQUFFOztBQW1EMUMsTUFLYSxlQUFlO3VHQUFmLGVBQWU7d0dBQWYsZUFBZSxpQkE3RGYsU0FBUyxhQXlEUixZQUFZLGFBekRiLFNBQVM7d0dBNkRULGVBQWUsWUFKZCxZQUFZOztTQUliLGVBQWU7MkZBQWYsZUFBZTtrQkFMM0IsUUFBUTttQkFBQztvQkFDTixPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUM7b0JBQ3ZCLE9BQU8sRUFBRSxDQUFDLFNBQVMsQ0FBQztvQkFDcEIsWUFBWSxFQUFFLENBQUMsU0FBUyxDQUFDO2lCQUM1QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSwgRE9DVU1FTlQsIGlzUGxhdGZvcm1Ccm93c2VyIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSW5wdXQsIE5nTW9kdWxlLCBQTEFURk9STV9JRCwgYm9vbGVhbkF0dHJpYnV0ZSwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEb21IYW5kbGVyIH0gZnJvbSAncHJpbWVuZy9kb20nO1xuaW1wb3J0IHsgTGljZW5zZU1hbmFnZXIgfSBmcm9tICdwcmltZW5nL2FwaSc7XG4vKipcbiAqIEF1dG9Gb2N1cyBtYW5hZ2VzIGZvY3VzIG9uIGZvY3VzYWJsZSBlbGVtZW50IG9uIGxvYWQuXG4gKiBAZ3JvdXAgQ29tcG9uZW50c1xuICovXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1twQXV0b0ZvY3VzXScsXG4gICAgaG9zdDoge1xuICAgICAgICBjbGFzczogJ3AtZWxlbWVudCdcbiAgICB9XG59KVxuZXhwb3J0IGNsYXNzIEF1dG9Gb2N1cyB7XG4gICAgLyoqXG4gICAgICogV2hlbiBwcmVzZW50LCBpdCBzcGVjaWZpZXMgdGhhdCB0aGUgY29tcG9uZW50IHNob3VsZCBhdXRvbWF0aWNhbGx5IGdldCBmb2N1cyBvbiBsb2FkLlxuICAgICAqIEBncm91cCBQcm9wc1xuICAgICAqL1xuICAgIEBJbnB1dCh7IHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9KSBhdXRvZm9jdXM6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIGZvY3VzZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIHBsYXRmb3JtSWQgPSBpbmplY3QoUExBVEZPUk1fSUQpO1xuXG4gICAgZG9jdW1lbnQ6IERvY3VtZW50ID0gaW5qZWN0KERPQ1VNRU5UKTtcblxuICAgIGhvc3Q6IEVsZW1lbnRSZWYgPSBpbmplY3QoRWxlbWVudFJlZik7XG5cbiAgICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgICAgIExpY2Vuc2VNYW5hZ2VyLmNoZWNrKCk7XG4gICAgfVxuXG4gICAgbmdBZnRlckNvbnRlbnRDaGVja2VkKCkge1xuICAgICAgICAvLyBUaGlzIHNldHMgdGhlIGBhdHRyLmF1dG9mb2N1c2Agd2hpY2ggaXMgZGlmZmVyZW50IHRoYW4gdGhlIElucHV0IGBhdXRvZm9jdXNgIGF0dHJpYnV0ZS5cbiAgICAgICAgaWYgKHRoaXMuYXV0b2ZvY3VzID09PSBmYWxzZSkge1xuICAgICAgICAgICAgdGhpcy5ob3N0Lm5hdGl2ZUVsZW1lbnQucmVtb3ZlQXR0cmlidXRlKCdhdXRvZm9jdXMnKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuaG9zdC5uYXRpdmVFbGVtZW50LnNldEF0dHJpYnV0ZSgnYXV0b2ZvY3VzJywgdHJ1ZSk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoIXRoaXMuZm9jdXNlZCkge1xuICAgICAgICAgICAgdGhpcy5hdXRvRm9jdXMoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG5nQWZ0ZXJWaWV3Q2hlY2tlZCgpIHtcbiAgICAgICAgaWYgKCF0aGlzLmZvY3VzZWQpIHtcbiAgICAgICAgICAgIHRoaXMuYXV0b0ZvY3VzKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBhdXRvRm9jdXMoKSB7XG4gICAgICAgIGlmIChpc1BsYXRmb3JtQnJvd3Nlcih0aGlzLnBsYXRmb3JtSWQpICYmIHRoaXMuYXV0b2ZvY3VzKSB7XG4gICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBmb2N1c2FibGVFbGVtZW50cyA9IERvbUhhbmRsZXIuZ2V0Rm9jdXNhYmxlRWxlbWVudHModGhpcy5ob3N0Py5uYXRpdmVFbGVtZW50KTtcblxuICAgICAgICAgICAgICAgIGlmIChmb2N1c2FibGVFbGVtZW50cy5sZW5ndGggPT09IDApIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5ob3N0Lm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKGZvY3VzYWJsZUVsZW1lbnRzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgICAgICAgICAgZm9jdXNhYmxlRWxlbWVudHNbMF0uZm9jdXMoKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICB0aGlzLmZvY3VzZWQgPSB0cnVlO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBOZ01vZHVsZSh7XG4gICAgaW1wb3J0czogW0NvbW1vbk1vZHVsZV0sXG4gICAgZXhwb3J0czogW0F1dG9Gb2N1c10sXG4gICAgZGVjbGFyYXRpb25zOiBbQXV0b0ZvY3VzXVxufSlcbmV4cG9ydCBjbGFzcyBBdXRvRm9jdXNNb2R1bGUge31cbiJdfQ==
|