@eui/ecl 18.0.0-next.14 → 18.0.0-next.16
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/docs/components/EclBreadcrumbSegmentComponent.html +1 -1
- package/docs/components/EclIconComponent.html +2 -4
- package/docs/components/EclSocialMediaFollowComponent.html +1 -1
- package/docs/components/EclSocialMediaFollowItemComponent.html +26 -2
- package/docs/components/EclTableSortButtonComponent.html +70 -25
- package/docs/dependencies.html +2 -2
- package/docs/directives/EclTableDirective.html +1 -1
- package/docs/directives/EclTableHeaderDirective.html +32 -1
- package/docs/js/menu-wc.js +6 -6
- package/docs/js/menu-wc_es5.js +1 -1
- package/docs/js/search/search_index.js +2 -2
- package/esm2022/lib/components/ecl-breadcrumb/ecl-breadcrumb-segment.component.mjs +3 -3
- package/esm2022/lib/components/ecl-icon/ecl-icon.component.mjs +3 -8
- package/esm2022/lib/components/ecl-link/ecl-link.directive.mjs +2 -2
- package/esm2022/lib/components/ecl-social-media-follow/ecl-social-media-follow-item.component.mjs +12 -8
- package/esm2022/lib/components/ecl-social-media-follow/ecl-social-media-follow.component.mjs +5 -10
- package/esm2022/lib/components/ecl-social-media-follow/ecl-social-media-follow.module.mjs +5 -4
- package/esm2022/lib/components/ecl-table/ecl-table-sort-button.component.mjs +8 -7
- package/esm2022/lib/components/ecl-table/ecl-table.directive.mjs +16 -15
- package/fesm2022/eui-ecl.mjs +205 -206
- package/fesm2022/eui-ecl.mjs.map +3 -3
- package/lib/components/ecl-icon/ecl-icon.component.d.ts +1 -1
- package/lib/components/ecl-icon/ecl-icon.component.d.ts.map +1 -1
- package/lib/components/ecl-link/ecl-link.directive.d.ts.map +1 -1
- package/lib/components/ecl-social-media-follow/ecl-social-media-follow-item.component.d.ts +2 -1
- package/lib/components/ecl-social-media-follow/ecl-social-media-follow-item.component.d.ts.map +1 -1
- package/lib/components/ecl-social-media-follow/ecl-social-media-follow.component.d.ts +2 -1
- package/lib/components/ecl-social-media-follow/ecl-social-media-follow.component.d.ts.map +1 -1
- package/lib/components/ecl-social-media-follow/ecl-social-media-follow.module.d.ts +4 -3
- package/lib/components/ecl-social-media-follow/ecl-social-media-follow.module.d.ts.map +1 -1
- package/lib/components/ecl-table/ecl-table-sort-button.component.d.ts +2 -2
- package/lib/components/ecl-table/ecl-table-sort-button.component.d.ts.map +1 -1
- package/lib/components/ecl-table/ecl-table.directive.d.ts +7 -4
- package/lib/components/ecl-table/ecl-table.directive.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -1,9 +1,7 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { ContentChildren, Directive, EventEmitter, forwardRef, HostBinding, HostListener, Input, Output, } from '@angular/core';
|
|
1
|
+
import { ContentChildren, Directive, EventEmitter, forwardRef, HostBinding, HostListener, Input, Output, booleanAttribute, } from '@angular/core';
|
|
3
2
|
import { Subject } from 'rxjs';
|
|
4
3
|
import { takeUntil } from 'rxjs/operators';
|
|
5
4
|
import { EclBaseEvent } from '../../model';
|
|
6
|
-
import { coerceBoolean } from '@eui/base';
|
|
7
5
|
import { ECLBaseDirective } from '../ecl-base.directive';
|
|
8
6
|
import { EclTableSortButtonComponent } from './ecl-table-sort-button.component';
|
|
9
7
|
import * as i0 from "@angular/core";
|
|
@@ -26,7 +24,6 @@ export class EclTableDirective extends ECLBaseDirective {
|
|
|
26
24
|
constructor(differs) {
|
|
27
25
|
super();
|
|
28
26
|
this.differs = differs;
|
|
29
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
30
27
|
this.isZebra = false;
|
|
31
28
|
this.sort = new EventEmitter();
|
|
32
29
|
this.destroy$ = new Subject();
|
|
@@ -47,18 +44,16 @@ export class EclTableDirective extends ECLBaseDirective {
|
|
|
47
44
|
this.destroy$.unsubscribe();
|
|
48
45
|
}
|
|
49
46
|
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-next.3", ngImport: i0, type: EclTableDirective, deps: [{ token: i0.IterableDiffers }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
50
|
-
/** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "
|
|
47
|
+
/** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "18.0.0-next.3", type: EclTableDirective, selector: "[eclTable]", inputs: { isZebra: ["isZebra", "isZebra", booleanAttribute] }, outputs: { sort: "sort" }, host: { properties: { "class.ecl-table--zebra": "this.isZebra", "class": "this.cssClasses" } }, queries: [{ propertyName: "eclTableHeaders", predicate: i0.forwardRef(() => EclTableHeaderDirective), descendants: true }], usesInheritance: true, ngImport: i0 }); }
|
|
51
48
|
}
|
|
52
|
-
__decorate([
|
|
53
|
-
coerceBoolean
|
|
54
|
-
], EclTableDirective.prototype, "isZebra", void 0);
|
|
55
49
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-next.3", ngImport: i0, type: EclTableDirective, decorators: [{
|
|
56
50
|
type: Directive,
|
|
57
51
|
args: [{
|
|
58
52
|
selector: '[eclTable]',
|
|
59
53
|
}]
|
|
60
54
|
}], ctorParameters: () => [{ type: i0.IterableDiffers }], propDecorators: { isZebra: [{
|
|
61
|
-
type: Input
|
|
55
|
+
type: Input,
|
|
56
|
+
args: [{ transform: booleanAttribute }]
|
|
62
57
|
}, {
|
|
63
58
|
type: HostBinding,
|
|
64
59
|
args: ['class.ecl-table--zebra']
|
|
@@ -116,10 +111,11 @@ export class EclTableHeaderDirective extends ECLBaseDirective {
|
|
|
116
111
|
get cssClasses() {
|
|
117
112
|
return [super.getCssClasses('ecl-table__header')].join(' ').trim();
|
|
118
113
|
}
|
|
119
|
-
constructor(el, viewContainerRef) {
|
|
114
|
+
constructor(el, viewContainerRef, renderer) {
|
|
120
115
|
super();
|
|
121
116
|
this.el = el;
|
|
122
117
|
this.viewContainerRef = viewContainerRef;
|
|
118
|
+
this.renderer = renderer;
|
|
123
119
|
this.sortOrder = null;
|
|
124
120
|
this.eclSortable = null;
|
|
125
121
|
this.sort = new EventEmitter();
|
|
@@ -155,19 +151,22 @@ export class EclTableHeaderDirective extends ECLBaseDirective {
|
|
|
155
151
|
if (this.eclSortable) {
|
|
156
152
|
setTimeout(() => {
|
|
157
153
|
const containerComponentRef = this.viewContainerRef.createComponent(EclTableSortButtonComponent);
|
|
158
|
-
this.el.nativeElement
|
|
154
|
+
this.renderer.appendChild(this.el.nativeElement, containerComponentRef.location.nativeElement);
|
|
155
|
+
if (this.sortButtonAriaLabel) {
|
|
156
|
+
containerComponentRef.instance.ariaLabel = this.sortButtonAriaLabel;
|
|
157
|
+
}
|
|
159
158
|
});
|
|
160
159
|
}
|
|
161
160
|
}
|
|
162
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-next.3", ngImport: i0, type: EclTableHeaderDirective, deps: [{ token: i0.ElementRef }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
163
|
-
/** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.0-next.3", type: EclTableHeaderDirective, selector: "[eclTableHeader]", inputs: { eclSortable: "eclSortable" }, outputs: { sort: "sort" }, host: { listeners: { "click": "onClick($event)" }, properties: { "attr.aria-sort": "this.sortOrder", "attr.data-ecl-table-sort-toggle": "this.eclSortable", "class": "this.cssClasses" } }, usesInheritance: true, ngImport: i0 }); }
|
|
161
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0-next.3", ngImport: i0, type: EclTableHeaderDirective, deps: [{ token: i0.ElementRef }, { token: i0.ViewContainerRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
162
|
+
/** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.0-next.3", type: EclTableHeaderDirective, selector: "[eclTableHeader]", inputs: { eclSortable: "eclSortable", sortButtonAriaLabel: "sortButtonAriaLabel" }, outputs: { sort: "sort" }, host: { listeners: { "click": "onClick($event)" }, properties: { "attr.aria-sort": "this.sortOrder", "attr.data-ecl-table-sort-toggle": "this.eclSortable", "class": "this.cssClasses" } }, usesInheritance: true, ngImport: i0 }); }
|
|
164
163
|
}
|
|
165
164
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-next.3", ngImport: i0, type: EclTableHeaderDirective, decorators: [{
|
|
166
165
|
type: Directive,
|
|
167
166
|
args: [{
|
|
168
167
|
selector: '[eclTableHeader]',
|
|
169
168
|
}]
|
|
170
|
-
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.ViewContainerRef }], propDecorators: { sortOrder: [{
|
|
169
|
+
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.ViewContainerRef }, { type: i0.Renderer2 }], propDecorators: { sortOrder: [{
|
|
171
170
|
type: HostBinding,
|
|
172
171
|
args: ['attr.aria-sort']
|
|
173
172
|
}], eclSortable: [{
|
|
@@ -175,6 +174,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-next.3",
|
|
|
175
174
|
}, {
|
|
176
175
|
type: HostBinding,
|
|
177
176
|
args: ['attr.data-ecl-table-sort-toggle']
|
|
177
|
+
}], sortButtonAriaLabel: [{
|
|
178
|
+
type: Input
|
|
178
179
|
}], cssClasses: [{
|
|
179
180
|
type: HostBinding,
|
|
180
181
|
args: ['class']
|
|
@@ -283,4 +284,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0-next.3",
|
|
|
283
284
|
type: HostBinding,
|
|
284
285
|
args: ['class']
|
|
285
286
|
}] } });
|
|
286
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNsLXRhYmxlLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9lY2wtdGFibGUvZWNsLXRhYmxlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUVILGVBQWUsRUFDZixTQUFTLEVBR1QsWUFBWSxFQUNaLFVBQVUsRUFDVixXQUFXLEVBQ1gsWUFBWSxFQUNaLEtBQUssRUFJTCxNQUFNLEdBR1QsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUMzQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQzFDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3pELE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDOztBQUVoRixNQUFNLENBQU4sSUFBWSxTQUdYO0FBSEQsV0FBWSxTQUFTO0lBQ2pCLHNDQUF5QixDQUFBO0lBQ3pCLG9DQUF1QixDQUFBO0FBQzNCLENBQUMsRUFIVyxTQUFTLEtBQVQsU0FBUyxRQUdwQjtBQUVELE1BQU0sT0FBTyxpQkFBa0IsU0FBUSxZQUFZO0lBQy9DLFlBQ1csU0FBb0IsRUFDcEIsUUFBZ0I7UUFFdkIsS0FBSyxFQUFFLENBQUM7UUFIRCxjQUFTLEdBQVQsU0FBUyxDQUFXO1FBQ3BCLGFBQVEsR0FBUixRQUFRLENBQVE7SUFHM0IsQ0FBQztDQUNKO0FBS0QsTUFBTSxPQUFPLGlCQUFrQixTQUFRLGdCQUFnQjtJQUluRCxJQUNJLFVBQVU7UUFDVixPQUFPLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxXQUFXLENBQUMsRUFBRSxJQUFJ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QjtJQUM3RCxJQUNJLFVBQVU7UUFDVixPQUFPLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQzFFLENBQUM7d0lBSlEsMkJBQTJCOzRIQUEzQiwyQkFBMkI7O2tHQUEzQiwyQkFBMkI7a0JBSHZDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLHNCQUFzQjtpQkFDbkM7OEJBR08sVUFBVTtzQkFEYixXQUFXO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIEFmdGVyQ29udGVudEluaXQsXG4gICAgQ29udGVudENoaWxkcmVuLFxuICAgIERpcmVjdGl2ZSxcbiAgICBEb0NoZWNrLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIGZvcndhcmRSZWYsXG4gICAgSG9zdEJpbmRpbmcsXG4gICAgSG9zdExpc3RlbmVyLFxuICAgIElucHV0LFxuICAgIEl0ZXJhYmxlRGlmZmVyLFxuICAgIEl0ZXJhYmxlRGlmZmVycyxcbiAgICBPbkRlc3Ryb3ksXG4gICAgT3V0cHV0LFxuICAgIFF1ZXJ5TGlzdCxcbiAgICBWaWV3Q29udGFpbmVyUmVmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEVjbEJhc2VFdmVudCB9IGZyb20gJy4uLy4uL21vZGVsJztcbmltcG9ydCB7IGNvZXJjZUJvb2xlYW4gfSBmcm9tICdAZXVpL2Jhc2UnO1xuaW1wb3J0IHsgRUNMQmFzZURpcmVjdGl2ZSB9IGZyb20gJy4uL2VjbC1iYXNlLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBFY2xUYWJsZVNvcnRCdXR0b25Db21wb25lbnQgfSBmcm9tICcuL2VjbC10YWJsZS1zb3J0LWJ1dHRvbi5jb21wb25lbnQnO1xuXG5leHBvcnQgZW51bSBTb3J0T3JkZXIge1xuICAgIERFU0NFTkRJTkcgPSAnZGVzY2VuZGluZycsXG4gICAgQVNDRU5ESU5HID0gJ2FzY2VuZGluZycsXG59XG5cbmV4cG9ydCBjbGFzcyBFY2xTb3J0VGFibGVFdmVudCBleHRlbmRzIEVjbEJhc2VFdmVudCB7XG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHB1YmxpYyBzb3J0T3JkZXI6IFNvcnRPcmRlcixcbiAgICAgICAgcHVibGljIGNvbHVtbklkOiBzdHJpbmcsXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgfVxufVxuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1tlY2xUYWJsZV0nLFxufSlcbmV4cG9ydCBjbGFzcyBFY2xUYWJsZURpcmVjdGl2ZSBleHRlbmRzIEVDTEJhc2VEaXJlY3RpdmUgaW1wbGVtZW50cyBEb0NoZWNrLCBPbkRlc3Ryb3kge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgQGNvZXJjZUJvb2xlYW4gQElucHV0KCkgQEhvc3RCaW5kaW5nKCdjbGFzcy5lY2wtdGFibGUtLXplYnJhJykgaXNaZWJyYTogYm9vbGVhbiB8IGFueSA9IGZhbHNlO1xuXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcycpXG4gICAgZ2V0IGNzc0NsYXNzZXMoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIFtzdXBlci5nZXRDc3NDbGFzc2VzKCdlY2wtdGFibGUnKSwgdGhpcy5pc1plYnJhID8gJ2VjbC10YWJsZS0temVicmEnIDogJyddLmpvaW4oJyAnKS50cmltKCk7XG4gICAgfVxuXG4gICAgQE91dHB1dCgpIHNvcnQgPSBuZXcgRXZlbnRFbWl0dGVyPEVjbFNvcnRUYWJsZUV2ZW50PigpO1xuXG4gICAgQENvbnRlbnRDaGlsZHJlbihmb3J3YXJkUmVmKCgpID0+IEVjbFRhYmxlSGVhZGVyRGlyZWN0aXZlKSwgeyBkZXNjZW5kYW50czogdHJ1ZSB9KVxuICAgIGVjbFRhYmxlSGVhZGVyczogUXVlcnlMaXN0PEVjbFRhYmxlSGVhZGVyRGlyZWN0aXZlPjtcblxuICAgIHByaXZhdGUgZGVzdHJveSQ6IFN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgU3ViamVjdDxib29sZWFuPigpO1xuICAgIHByaXZhdGUgZGlmZmVyOiBJdGVyYWJsZURpZmZlcjxFY2xUYWJsZUhlYWRlckRpcmVjdGl2ZT47XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIGRpZmZlcnM6IEl0ZXJhYmxlRGlmZmVycykge1xuICAgICAgICBzdXBlcigpO1xuICAgICAgICB0aGlzLmRpZmZlciA9IHRoaXMuZGlmZmVycy5maW5kKFtdKS5jcmVhdGUoKTtcbiAgICB9XG5cbiAgICBuZ0RvQ2hlY2soKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGRpZmYgPSB0aGlzLmRpZmZlci5kaWZmKHRoaXMuZWNsVGFibGVIZWFkZXJzKTtcbiAgICAgICAgaWYgKGRpZmYpIHtcbiAgICAgICAgICAgIGRpZmYuZm9yRWFjaEFkZGVkSXRlbSgoY2hhbmdlKSA9PiB7XG4gICAgICAgICAgICAgICAgY2hhbmdlLml0ZW0uc29ydC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSkuc3Vic2NyaWJlKChldnQpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zb3J0LmVtaXQoZXZ0KTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZGVzdHJveSQubmV4dCh0cnVlKTtcbiAgICAgICAgdGhpcy5kZXN0cm95JC51bnN1YnNjcmliZSgpO1xuICAgIH1cbn1cblxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdbZWNsVGFibGVIZWFkXScsXG59KVxuZXhwb3J0IGNsYXNzIEVjbFRhYmxlSGVhZERpcmVjdGl2ZSBleHRlbmRzIEVDTEJhc2VEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkRlc3Ryb3ksIERvQ2hlY2sge1xuICAgIEBIb3N0QmluZGluZygnY2xhc3MnKVxuICAgIGdldCBjc3NDbGFzc2VzKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBbc3VwZXIuZ2V0Q3NzQ2xhc3NlcygnZWNsLXRhYmxlX19oZWFkJyldLmpvaW4oJyAnKS50cmltKCk7XG4gICAgfVxuXG4gICAgQENvbnRlbnRDaGlsZHJlbihmb3J3YXJkUmVmKCgpID0+IEVjbFRhYmxlSGVhZGVyRGlyZWN0aXZlKSwgeyBkZXNjZW5kYW50czogdHJ1ZSB9KVxuICAgIGVjbFRhYmxlSGVhZGVyczogUXVlcnlMaXN0PEVjbFRhYmxlSGVhZGVyRGlyZWN0aXZlPjtcblxuICAgIHByaXZhdGUgZGVzdHJveSQ6IFN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgU3ViamVjdDxib29sZWFuPigpO1xuICAgIHByaXZhdGUgZGlmZmVyOiBJdGVyYWJsZURpZmZlcjxFY2xUYWJsZUhlYWRlckRpcmVjdGl2ZT47XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIGRpZmZlcnM6IEl0ZXJhYmxlRGlmZmVycykge1xuICAgICAgICBzdXBlcigpO1xuICAgICAgICB0aGlzLmRpZmZlciA9IHRoaXMuZGlmZmVycy5maW5kKFtdKS5jcmVhdGUoKTtcbiAgICB9XG5cbiAgICBuZ0RvQ2hlY2soKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGRpZmYgPSB0aGlzLmRpZmZlci5kaWZmKHRoaXMuZWNsVGFibGVIZWFkZXJzKTtcbiAgICAgICAgaWYgKGRpZmYpIHtcbiAgICAgICAgICAgIGRpZmYuZm9yRWFjaEFkZGVkSXRlbSgoY2hhbmdlKSA9PiB7XG4gICAgICAgICAgICAgICAgY2hhbmdlLml0ZW0uc29ydC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSkuc3Vic2NyaWJlKChldnQpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5lY2xUYWJsZUhlYWRlcnMuZm9yRWFjaCgodGgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoLnJlbW92ZUFyaWFTb3J0KCk7XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kZXN0cm95JC5uZXh0KHRydWUpO1xuICAgICAgICB0aGlzLmRlc3Ryb3kkLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxufVxuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1tlY2xUYWJsZUhlYWRlcl0nLFxufSlcbmV4cG9ydCBjbGFzcyBFY2xUYWJsZUhlYWRlckRpcmVjdGl2ZSBleHRlbmRzIEVDTEJhc2VEaXJlY3RpdmUgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0IHtcbiAgICBASG9zdEJpbmRpbmcoJ2F0dHIuYXJpYS1zb3J0Jykgc29ydE9yZGVyOiBTb3J0T3JkZXIgPSBudWxsO1xuICAgIEBJbnB1dCgpIEBIb3N0QmluZGluZygnYXR0ci5kYXRhLWVjbC10YWJsZS1zb3J0LXRvZ2dsZScpIGVjbFNvcnRhYmxlID0gbnVsbDtcblxuICAgIEBIb3N0QmluZGluZygnY2xhc3MnKVxuICAgIGdldCBjc3NDbGFzc2VzKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBbc3VwZXIuZ2V0Q3NzQ2xhc3NlcygnZWNsLXRhYmxlX19oZWFkZXInKV0uam9pbignICcpLnRyaW0oKTtcbiAgICB9XG5cbiAgICBAT3V0cHV0KCkgc29ydCA9IG5ldyBFdmVudEVtaXR0ZXI8RWNsU29ydFRhYmxlRXZlbnQ+KCk7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBlbDogRWxlbWVudFJlZixcbiAgICAgICAgcHJpdmF0ZSB2aWV3Q29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmLFxuICAgICkge1xuICAgICAgICBzdXBlcigpO1xuICAgIH1cblxuICAgIG5nQWZ0ZXJDb250ZW50SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5pbml0U29ydEJ1dHRvbnMoKTtcbiAgICB9XG5cbiAgICAvLyBSZW1vdmUgdGhlIGRhcmsgYXJyb3cgZm9yIGN1cnJlbnQgc29ydGluZyBmcm9tIHByZXYgc29ydGVkIGNvbHVtblxuICAgIHJlbW92ZUFyaWFTb3J0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQucmVtb3ZlQXR0cmlidXRlKCdhcmlhLXNvcnQnKTtcbiAgICB9XG5cbiAgICAvLyBDbGljayB0cmlnZ2VycyAxIC0+IGFzYyBzb3J0aW5nLCAyIC0+IGRlc2Mgc29ydGluZyB0aGVuIDMgLT4gaW5pdGlhbCBzb3J0aW5nXG4gICAgQEhvc3RMaXN0ZW5lcignY2xpY2snLCBbJyRldmVudCddKVxuICAgIG9uQ2xpY2soZXZ0OiBFdmVudCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5lY2xTb3J0YWJsZSkge1xuICAgICAgICAgICAgc3dpdGNoICh0aGlzLnNvcnRPcmRlcikge1xuICAgICAgICAgICAgICAgIGNhc2UgbnVsbDoge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnNvcnRPcmRlciA9IFNvcnRPcmRlci5BU0NFTkRJTkc7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBjYXNlIFNvcnRPcmRlci5BU0NFTkRJTkc6IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zb3J0T3JkZXIgPSBTb3J0T3JkZXIuREVTQ0VORElORztcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGNhc2UgU29ydE9yZGVyLkRFU0NFTkRJTkc6IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zb3J0T3JkZXIgPSBudWxsO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRoaXMuc29ydC5lbWl0KG5ldyBFY2xTb3J0VGFibGVFdmVudCh0aGlzLnNvcnRPcmRlciwgdGhpcy5lY2xTb3J0YWJsZSkpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBpbml0U29ydEJ1dHRvbnMoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmVjbFNvcnRhYmxlKSB7XG4gICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBjb250YWluZXJDb21wb25lbnRSZWYgPSB0aGlzLnZpZXdDb250YWluZXJSZWYuY3JlYXRlQ29tcG9uZW50KEVjbFRhYmxlU29ydEJ1dHRvbkNvbXBvbmVudCk7XG4gICAgICAgICAgICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LmFwcGVuZENoaWxkKGNvbnRhaW5lckNvbXBvbmVudFJlZi5sb2NhdGlvbi5uYXRpdmVFbGVtZW50KTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1tlY2xUYWJsZVJvd10nLFxufSlcbmV4cG9ydCBjbGFzcyBFY2xUYWJsZVJvd0RpcmVjdGl2ZSBleHRlbmRzIEVDTEJhc2VEaXJlY3RpdmUge1xuICAgIEBIb3N0QmluZGluZygnY2xhc3MnKVxuICAgIGdldCBjc3NDbGFzc2VzKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBbc3VwZXIuZ2V0Q3NzQ2xhc3NlcygnZWNsLXRhYmxlX19yb3cnKV0uam9pbignICcpLnRyaW0oKTtcbiAgICB9XG59XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW2VjbFRhYmxlQm9keV0nLFxufSlcbmV4cG9ydCBjbGFzcyBFY2xUYWJsZUJvZHlEaXJlY3RpdmUgZXh0ZW5kcyBFQ0xCYXNlRGlyZWN0aXZlIHtcbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzJylcbiAgICBnZXQgY3NzQ2xhc3NlcygpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gW3N1cGVyLmdldENzc0NsYXNzZXMoJ2VjbC10YWJsZV9fYm9keScpXS5qb2luKCcgJykudHJpbSgpO1xuICAgIH1cbn1cblxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdbZWNsVGFibGVDZWxsXScsXG59KVxuZXhwb3J0IGNsYXNzIEVjbFRhYmxlQ2VsbERpcmVjdGl2ZSBleHRlbmRzIEVDTEJhc2VEaXJlY3RpdmUge1xuICAgIEBJbnB1dCgpIEBIb3N0QmluZGluZygnYXR0ci5kYXRhLWVjbC10YWJsZS1oZWFkZXInKSBlY2xUYWJsZUNlbGxIZWFkZXI6IHN0cmluZztcbiAgICBASW5wdXQoKSBASG9zdEJpbmRpbmcoJ2NsYXNzLmVjbC10YWJsZV9fY2VsbC0tZ3JvdXAnKSBpc0dyb3VwID0gZmFsc2U7XG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcycpXG4gICAgZ2V0IGNzc0NsYXNzZXMoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIFtzdXBlci5nZXRDc3NDbGFzc2VzKCdlY2wtdGFibGVfX2NlbGwnKSwgdGhpcy5pc0dyb3VwID8gJ2VjbC10YWJsZV9fY2VsbC0tZ3JvdXAnIDogJyddLmpvaW4oJyAnKS50cmltKCk7XG4gICAgfVxufVxuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1tlY2xUYWJsZUNlbGxHcm91cF0nLFxufSlcbmV4cG9ydCBjbGFzcyBFY2xUYWJsZUNlbGxHcm91cERpcmVjdGl2ZSBleHRlbmRzIEVDTEJhc2VEaXJlY3RpdmUge1xuICAgIEBJbnB1dCgpIEBIb3N0QmluZGluZygnYXR0ci5kYXRhLWVjbC10YWJsZS1oZWFkZXItZ3JvdXAnKSBlY2xUYWJsZUNlbGxHcm91cDogc3RyaW5nO1xuICAgIEBIb3N0QmluZGluZygnY2xhc3MnKVxuICAgIGdldCBjc3NDbGFzc2VzKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBbc3VwZXIuZ2V0Q3NzQ2xhc3NlcygnZWNsLXRhYmxlX19jZWxsLS1ncm91cCcpXS5qb2luKCcgJykudHJpbSgpO1xuICAgIH1cbn1cblxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdbZWNsVGFibGVSZXNwb25zaXZlXScsXG59KVxuZXhwb3J0IGNsYXNzIEVjbFRhYmxlUmVzcG9uc2l2ZURpcmVjdGl2ZSBleHRlbmRzIEVDTEJhc2VEaXJlY3RpdmUge1xuICAgIEBIb3N0QmluZGluZygnY2xhc3MnKVxuICAgIGdldCBjc3NDbGFzc2VzKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBbc3VwZXIuZ2V0Q3NzQ2xhc3NlcygnZWNsLXRhYmxlLXJlc3BvbnNpdmUnKV0uam9pbignICcpLnRyaW0oKTtcbiAgICB9XG59XG4iXX0=
|
|
287
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNsLXRhYmxlLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9lY2wtdGFibGUvZWNsLXRhYmxlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUgsZUFBZSxFQUNmLFNBQVMsRUFHVCxZQUFZLEVBQ1osVUFBVSxFQUNWLFdBQVcsRUFDWCxZQUFZLEVBQ1osS0FBSyxFQUlMLE1BQU0sRUFHTixnQkFBZ0IsR0FFbkIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUMzQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQzs7QUFFaEYsTUFBTSxDQUFOLElBQVksU0FHWDtBQUhELFdBQVksU0FBUztJQUNqQixzQ0FBeUIsQ0FBQTtJQUN6QixvQ0FBdUIsQ0FBQTtBQUMzQixDQUFDLEVBSFcsU0FBUyxLQUFULFNBQVMsUUFHcEI7QUFFRCxNQUFNLE9BQU8saUJBQWtCLFNBQVEsWUFBWTtJQUMvQyxZQUNXLFNBQW9CLEVBQ3BCLFFBQWdCO1FBRXZCLEtBQUssRUFBRSxDQUFDO1FBSEQsY0FBUyxHQUFULFNBQVMsQ0FBVztRQUNwQixhQUFRLEdBQVIsUUFBUSxDQUFRO0lBRzNCLENBQUM7Q0FDSjtBQUtELE1BQU0sT0FBTyxpQkFBa0IsU0FBUSxnQkFBZ0I7SUFHbkQsSUFDSSxVQUFVO1FBQ1YsT0FBTyxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsV0FBVyxDQUFDLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsa0JB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MEJBQTBCO2tCQUh0QyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxxQkFBcUI7aUJBQ2xDOzhCQUU2RCxpQkFBaUI7c0JBQTFFLEtBQUs7O3NCQUFJLFdBQVc7dUJBQUMsa0NBQWtDO2dCQUVwRCxVQUFVO3NCQURiLFdBQVc7dUJBQUMsT0FBTzs7QUFTeEIsTUFBTSxPQUFPLDJCQUE0QixTQUFRLGdCQUFnQjtJQUM3RCxJQUNJLFVBQVU7UUFDVixPQUFPLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQzFFLENBQUM7d0lBSlEsMkJBQTJCOzRIQUEzQiwyQkFBMkI7O2tHQUEzQiwyQkFBMkI7a0JBSHZDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLHNCQUFzQjtpQkFDbkM7OEJBR08sVUFBVTtzQkFEYixXQUFXO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIEFmdGVyQ29udGVudEluaXQsXG4gICAgQ29udGVudENoaWxkcmVuLFxuICAgIERpcmVjdGl2ZSxcbiAgICBEb0NoZWNrLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIGZvcndhcmRSZWYsXG4gICAgSG9zdEJpbmRpbmcsXG4gICAgSG9zdExpc3RlbmVyLFxuICAgIElucHV0LFxuICAgIEl0ZXJhYmxlRGlmZmVyLFxuICAgIEl0ZXJhYmxlRGlmZmVycyxcbiAgICBPbkRlc3Ryb3ksXG4gICAgT3V0cHV0LFxuICAgIFF1ZXJ5TGlzdCxcbiAgICBWaWV3Q29udGFpbmVyUmVmLFxuICAgIGJvb2xlYW5BdHRyaWJ1dGUsXG4gICAgUmVuZGVyZXIyLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEVjbEJhc2VFdmVudCB9IGZyb20gJy4uLy4uL21vZGVsJztcbmltcG9ydCB7IEVDTEJhc2VEaXJlY3RpdmUgfSBmcm9tICcuLi9lY2wtYmFzZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRWNsVGFibGVTb3J0QnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi9lY2wtdGFibGUtc29ydC1idXR0b24uY29tcG9uZW50JztcblxuZXhwb3J0IGVudW0gU29ydE9yZGVyIHtcbiAgICBERVNDRU5ESU5HID0gJ2Rlc2NlbmRpbmcnLFxuICAgIEFTQ0VORElORyA9ICdhc2NlbmRpbmcnLFxufVxuXG5leHBvcnQgY2xhc3MgRWNsU29ydFRhYmxlRXZlbnQgZXh0ZW5kcyBFY2xCYXNlRXZlbnQge1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwdWJsaWMgc29ydE9yZGVyOiBTb3J0T3JkZXIsXG4gICAgICAgIHB1YmxpYyBjb2x1bW5JZDogc3RyaW5nLFxuICAgICkge1xuICAgICAgICBzdXBlcigpO1xuICAgIH1cbn1cblxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdbZWNsVGFibGVdJyxcbn0pXG5leHBvcnQgY2xhc3MgRWNsVGFibGVEaXJlY3RpdmUgZXh0ZW5kcyBFQ0xCYXNlRGlyZWN0aXZlIGltcGxlbWVudHMgRG9DaGVjaywgT25EZXN0cm95IHtcbiAgICBASW5wdXQoeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSkgQEhvc3RCaW5kaW5nKCdjbGFzcy5lY2wtdGFibGUtLXplYnJhJykgaXNaZWJyYSA9IGZhbHNlO1xuXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcycpXG4gICAgZ2V0IGNzc0NsYXNzZXMoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIFtzdXBlci5nZXRDc3NDbGFzc2VzKCdlY2wtdGFibGUnKSwgdGhpcy5pc1plYnJhID8gJ2VjbC10YWJsZS0temVicmEnIDogJyddLmpvaW4oJyAnKS50cmltKCk7XG4gICAgfVxuXG4gICAgQE91dHB1dCgpIHNvcnQgPSBuZXcgRXZlbnRFbWl0dGVyPEVjbFNvcnRUYWJsZUV2ZW50PigpO1xuXG4gICAgQENvbnRlbnRDaGlsZHJlbihmb3J3YXJkUmVmKCgpID0+IEVjbFRhYmxlSGVhZGVyRGlyZWN0aXZlKSwgeyBkZXNjZW5kYW50czogdHJ1ZSB9KVxuICAgIGVjbFRhYmxlSGVhZGVyczogUXVlcnlMaXN0PEVjbFRhYmxlSGVhZGVyRGlyZWN0aXZlPjtcblxuICAgIHByaXZhdGUgZGVzdHJveSQ6IFN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgU3ViamVjdDxib29sZWFuPigpO1xuICAgIHByaXZhdGUgZGlmZmVyOiBJdGVyYWJsZURpZmZlcjxFY2xUYWJsZUhlYWRlckRpcmVjdGl2ZT47XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIGRpZmZlcnM6IEl0ZXJhYmxlRGlmZmVycykge1xuICAgICAgICBzdXBlcigpO1xuICAgICAgICB0aGlzLmRpZmZlciA9IHRoaXMuZGlmZmVycy5maW5kKFtdKS5jcmVhdGUoKTtcbiAgICB9XG5cbiAgICBuZ0RvQ2hlY2soKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGRpZmYgPSB0aGlzLmRpZmZlci5kaWZmKHRoaXMuZWNsVGFibGVIZWFkZXJzKTtcbiAgICAgICAgaWYgKGRpZmYpIHtcbiAgICAgICAgICAgIGRpZmYuZm9yRWFjaEFkZGVkSXRlbSgoY2hhbmdlKSA9PiB7XG4gICAgICAgICAgICAgICAgY2hhbmdlLml0ZW0uc29ydC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSkuc3Vic2NyaWJlKChldnQpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zb3J0LmVtaXQoZXZ0KTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZGVzdHJveSQubmV4dCh0cnVlKTtcbiAgICAgICAgdGhpcy5kZXN0cm95JC51bnN1YnNjcmliZSgpO1xuICAgIH1cbn1cblxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdbZWNsVGFibGVIZWFkXScsXG59KVxuZXhwb3J0IGNsYXNzIEVjbFRhYmxlSGVhZERpcmVjdGl2ZSBleHRlbmRzIEVDTEJhc2VEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkRlc3Ryb3ksIERvQ2hlY2sge1xuICAgIEBIb3N0QmluZGluZygnY2xhc3MnKVxuICAgIGdldCBjc3NDbGFzc2VzKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBbc3VwZXIuZ2V0Q3NzQ2xhc3NlcygnZWNsLXRhYmxlX19oZWFkJyldLmpvaW4oJyAnKS50cmltKCk7XG4gICAgfVxuXG4gICAgQENvbnRlbnRDaGlsZHJlbihmb3J3YXJkUmVmKCgpID0+IEVjbFRhYmxlSGVhZGVyRGlyZWN0aXZlKSwgeyBkZXNjZW5kYW50czogdHJ1ZSB9KVxuICAgIGVjbFRhYmxlSGVhZGVyczogUXVlcnlMaXN0PEVjbFRhYmxlSGVhZGVyRGlyZWN0aXZlPjtcblxuICAgIHByaXZhdGUgZGVzdHJveSQ6IFN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgU3ViamVjdDxib29sZWFuPigpO1xuICAgIHByaXZhdGUgZGlmZmVyOiBJdGVyYWJsZURpZmZlcjxFY2xUYWJsZUhlYWRlckRpcmVjdGl2ZT47XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIGRpZmZlcnM6IEl0ZXJhYmxlRGlmZmVycykge1xuICAgICAgICBzdXBlcigpO1xuICAgICAgICB0aGlzLmRpZmZlciA9IHRoaXMuZGlmZmVycy5maW5kKFtdKS5jcmVhdGUoKTtcbiAgICB9XG5cbiAgICBuZ0RvQ2hlY2soKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGRpZmYgPSB0aGlzLmRpZmZlci5kaWZmKHRoaXMuZWNsVGFibGVIZWFkZXJzKTtcbiAgICAgICAgaWYgKGRpZmYpIHtcbiAgICAgICAgICAgIGRpZmYuZm9yRWFjaEFkZGVkSXRlbSgoY2hhbmdlKSA9PiB7XG4gICAgICAgICAgICAgICAgY2hhbmdlLml0ZW0uc29ydC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSkuc3Vic2NyaWJlKChldnQpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5lY2xUYWJsZUhlYWRlcnMuZm9yRWFjaCgodGgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoLnJlbW92ZUFyaWFTb3J0KCk7XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kZXN0cm95JC5uZXh0KHRydWUpO1xuICAgICAgICB0aGlzLmRlc3Ryb3kkLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxufVxuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1tlY2xUYWJsZUhlYWRlcl0nLFxufSlcbmV4cG9ydCBjbGFzcyBFY2xUYWJsZUhlYWRlckRpcmVjdGl2ZSBleHRlbmRzIEVDTEJhc2VEaXJlY3RpdmUgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0IHtcbiAgICBASG9zdEJpbmRpbmcoJ2F0dHIuYXJpYS1zb3J0Jykgc29ydE9yZGVyOiBTb3J0T3JkZXIgPSBudWxsO1xuICAgIEBJbnB1dCgpIEBIb3N0QmluZGluZygnYXR0ci5kYXRhLWVjbC10YWJsZS1zb3J0LXRvZ2dsZScpIGVjbFNvcnRhYmxlID0gbnVsbDtcbiAgICBASW5wdXQoKSBzb3J0QnV0dG9uQXJpYUxhYmVsOiBzdHJpbmc7XG5cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzJylcbiAgICBnZXQgY3NzQ2xhc3NlcygpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gW3N1cGVyLmdldENzc0NsYXNzZXMoJ2VjbC10YWJsZV9faGVhZGVyJyldLmpvaW4oJyAnKS50cmltKCk7XG4gICAgfVxuXG4gICAgQE91dHB1dCgpIHNvcnQgPSBuZXcgRXZlbnRFbWl0dGVyPEVjbFNvcnRUYWJsZUV2ZW50PigpO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgZWw6IEVsZW1lbnRSZWYsXG4gICAgICAgIHByaXZhdGUgdmlld0NvbnRhaW5lclJlZjogVmlld0NvbnRhaW5lclJlZixcbiAgICAgICAgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyLFxuICAgICkge1xuICAgICAgICBzdXBlcigpO1xuICAgIH1cblxuICAgIG5nQWZ0ZXJDb250ZW50SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5pbml0U29ydEJ1dHRvbnMoKTtcbiAgICB9XG5cbiAgICAvLyBSZW1vdmUgdGhlIGRhcmsgYXJyb3cgZm9yIGN1cnJlbnQgc29ydGluZyBmcm9tIHByZXYgc29ydGVkIGNvbHVtblxuICAgIHJlbW92ZUFyaWFTb3J0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQucmVtb3ZlQXR0cmlidXRlKCdhcmlhLXNvcnQnKTtcbiAgICB9XG5cbiAgICAvLyBDbGljayB0cmlnZ2VycyAxIC0+IGFzYyBzb3J0aW5nLCAyIC0+IGRlc2Mgc29ydGluZyB0aGVuIDMgLT4gaW5pdGlhbCBzb3J0aW5nXG4gICAgQEhvc3RMaXN0ZW5lcignY2xpY2snLCBbJyRldmVudCddKVxuICAgIG9uQ2xpY2soZXZ0OiBFdmVudCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5lY2xTb3J0YWJsZSkge1xuICAgICAgICAgICAgc3dpdGNoICh0aGlzLnNvcnRPcmRlcikge1xuICAgICAgICAgICAgICAgIGNhc2UgbnVsbDoge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnNvcnRPcmRlciA9IFNvcnRPcmRlci5BU0NFTkRJTkc7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBjYXNlIFNvcnRPcmRlci5BU0NFTkRJTkc6IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zb3J0T3JkZXIgPSBTb3J0T3JkZXIuREVTQ0VORElORztcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGNhc2UgU29ydE9yZGVyLkRFU0NFTkRJTkc6IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zb3J0T3JkZXIgPSBudWxsO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRoaXMuc29ydC5lbWl0KG5ldyBFY2xTb3J0VGFibGVFdmVudCh0aGlzLnNvcnRPcmRlciwgdGhpcy5lY2xTb3J0YWJsZSkpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBpbml0U29ydEJ1dHRvbnMoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmVjbFNvcnRhYmxlKSB7XG4gICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBjb250YWluZXJDb21wb25lbnRSZWYgPSB0aGlzLnZpZXdDb250YWluZXJSZWYuY3JlYXRlQ29tcG9uZW50KEVjbFRhYmxlU29ydEJ1dHRvbkNvbXBvbmVudCk7XG4gICAgICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5hcHBlbmRDaGlsZCh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQsIGNvbnRhaW5lckNvbXBvbmVudFJlZi5sb2NhdGlvbi5uYXRpdmVFbGVtZW50KTtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5zb3J0QnV0dG9uQXJpYUxhYmVsKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRhaW5lckNvbXBvbmVudFJlZi5pbnN0YW5jZS5hcmlhTGFiZWwgPSB0aGlzLnNvcnRCdXR0b25BcmlhTGFiZWw7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW2VjbFRhYmxlUm93XScsXG59KVxuZXhwb3J0IGNsYXNzIEVjbFRhYmxlUm93RGlyZWN0aXZlIGV4dGVuZHMgRUNMQmFzZURpcmVjdGl2ZSB7XG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcycpXG4gICAgZ2V0IGNzc0NsYXNzZXMoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIFtzdXBlci5nZXRDc3NDbGFzc2VzKCdlY2wtdGFibGVfX3JvdycpXS5qb2luKCcgJykudHJpbSgpO1xuICAgIH1cbn1cblxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdbZWNsVGFibGVCb2R5XScsXG59KVxuZXhwb3J0IGNsYXNzIEVjbFRhYmxlQm9keURpcmVjdGl2ZSBleHRlbmRzIEVDTEJhc2VEaXJlY3RpdmUge1xuICAgIEBIb3N0QmluZGluZygnY2xhc3MnKVxuICAgIGdldCBjc3NDbGFzc2VzKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBbc3VwZXIuZ2V0Q3NzQ2xhc3NlcygnZWNsLXRhYmxlX19ib2R5JyldLmpvaW4oJyAnKS50cmltKCk7XG4gICAgfVxufVxuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1tlY2xUYWJsZUNlbGxdJyxcbn0pXG5leHBvcnQgY2xhc3MgRWNsVGFibGVDZWxsRGlyZWN0aXZlIGV4dGVuZHMgRUNMQmFzZURpcmVjdGl2ZSB7XG4gICAgQElucHV0KCkgQEhvc3RCaW5kaW5nKCdhdHRyLmRhdGEtZWNsLXRhYmxlLWhlYWRlcicpIGVjbFRhYmxlQ2VsbEhlYWRlcjogc3RyaW5nO1xuICAgIEBJbnB1dCgpIEBIb3N0QmluZGluZygnY2xhc3MuZWNsLXRhYmxlX19jZWxsLS1ncm91cCcpIGlzR3JvdXAgPSBmYWxzZTtcbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzJylcbiAgICBnZXQgY3NzQ2xhc3NlcygpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gW3N1cGVyLmdldENzc0NsYXNzZXMoJ2VjbC10YWJsZV9fY2VsbCcpLCB0aGlzLmlzR3JvdXAgPyAnZWNsLXRhYmxlX19jZWxsLS1ncm91cCcgOiAnJ10uam9pbignICcpLnRyaW0oKTtcbiAgICB9XG59XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW2VjbFRhYmxlQ2VsbEdyb3VwXScsXG59KVxuZXhwb3J0IGNsYXNzIEVjbFRhYmxlQ2VsbEdyb3VwRGlyZWN0aXZlIGV4dGVuZHMgRUNMQmFzZURpcmVjdGl2ZSB7XG4gICAgQElucHV0KCkgQEhvc3RCaW5kaW5nKCdhdHRyLmRhdGEtZWNsLXRhYmxlLWhlYWRlci1ncm91cCcpIGVjbFRhYmxlQ2VsbEdyb3VwOiBzdHJpbmc7XG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcycpXG4gICAgZ2V0IGNzc0NsYXNzZXMoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIFtzdXBlci5nZXRDc3NDbGFzc2VzKCdlY2wtdGFibGVfX2NlbGwtLWdyb3VwJyldLmpvaW4oJyAnKS50cmltKCk7XG4gICAgfVxufVxuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1tlY2xUYWJsZVJlc3BvbnNpdmVdJyxcbn0pXG5leHBvcnQgY2xhc3MgRWNsVGFibGVSZXNwb25zaXZlRGlyZWN0aXZlIGV4dGVuZHMgRUNMQmFzZURpcmVjdGl2ZSB7XG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcycpXG4gICAgZ2V0IGNzc0NsYXNzZXMoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIFtzdXBlci5nZXRDc3NDbGFzc2VzKCdlY2wtdGFibGUtcmVzcG9uc2l2ZScpXS5qb2luKCcgJykudHJpbSgpO1xuICAgIH1cbn1cbiJdfQ==
|