@eui/ecl 18.0.0-rc.13 → 18.0.0-rc.15
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/EclSiteHeaderEnvironmentComponent.html +1 -1
- package/docs/dependencies.html +1 -1
- package/docs/js/search/search_index.js +2 -2
- package/esm2022/lib/components/ecl-accordion/ecl-accordion-item.component.mjs +3 -4
- package/esm2022/lib/components/ecl-category-filter/ecl-category-filter/ecl-category-filter.component.mjs +2 -3
- package/esm2022/lib/components/ecl-multiselect/ecl-multiselect-dropdown/ecl-multiselect-dropdown.component.mjs +4 -5
- package/esm2022/lib/components/ecl-multiselect/ecl-multiselect-option/ecl-multiselect-option.component.mjs +2 -3
- package/esm2022/lib/components/ecl-site-header/ecl-site-header-environment/ecl-site-header-environment.component.mjs +12 -10
- package/fesm2022/eui-ecl.mjs +17 -16
- package/fesm2022/eui-ecl.mjs.map +1 -1
- package/lib/components/ecl-accordion/ecl-accordion-item.component.d.ts.map +1 -1
- package/lib/components/ecl-category-filter/ecl-category-filter/ecl-category-filter.component.d.ts.map +1 -1
- package/lib/components/ecl-multiselect/ecl-multiselect-dropdown/ecl-multiselect-dropdown.component.d.ts.map +1 -1
- package/lib/components/ecl-multiselect/ecl-multiselect-option/ecl-multiselect-option.component.d.ts.map +1 -1
- package/lib/components/ecl-site-header/ecl-site-header-environment/ecl-site-header-environment.component.d.ts +4 -4
- package/lib/components/ecl-site-header/ecl-site-header-environment/ecl-site-header-environment.component.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { ChangeDetectionStrategy, Component, EventEmitter, HostBinding, Input, Output, booleanAttribute, } from '@angular/core';
|
|
2
|
-
import { v4 as uuidgen } from 'uuid';
|
|
3
2
|
import { EclBaseEvent } from '../../model/ecl-base.event';
|
|
4
3
|
import { ECLBaseDirective } from '../ecl-base.directive';
|
|
5
4
|
import * as i0 from "@angular/core";
|
|
@@ -25,8 +24,8 @@ export class EclAccordionItemComponent {
|
|
|
25
24
|
this.titleId = '';
|
|
26
25
|
}
|
|
27
26
|
ngOnInit() {
|
|
28
|
-
this.titleId =
|
|
29
|
-
this.contentId =
|
|
27
|
+
this.titleId = crypto.randomUUID();
|
|
28
|
+
this.contentId = crypto.randomUUID();
|
|
30
29
|
}
|
|
31
30
|
onItemClick(evt) {
|
|
32
31
|
const nextExpandedState = !this.isExpanded;
|
|
@@ -62,4 +61,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImpor
|
|
|
62
61
|
}], toggle: [{
|
|
63
62
|
type: Output
|
|
64
63
|
}] } });
|
|
65
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
64
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNsLWFjY29yZGlvbi1pdGVtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9lY2wtYWNjb3JkaW9uL2VjbC1hY2NvcmRpb24taXRlbS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvZWNsLWFjY29yZGlvbi9lY2wtYWNjb3JkaW9uLWl0ZW0uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILHVCQUF1QixFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsZ0JBQWdCLEdBRXpHLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQzs7OztBQUV6RCxNQUFNLE9BQU8sdUJBQXdCLFNBQVEsWUFBWTtJQUNyRCxZQUFtQixVQUFtQjtRQUNsQyxLQUFLLEVBQUUsQ0FBQztRQURPLGVBQVUsR0FBVixVQUFVLENBQVM7SUFFdEMsQ0FBQztDQUNKO0FBbUJELE1BQU0sT0FBTyx5QkFBeUI7SUFFbEMsSUFDSSxVQUFVO1FBQ1YsT0FBTyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLHFCQUFxQixDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDdEYsQ0FBQztJQVdELFlBQW1CLGFBQStCLEVBQVUsRUFBcUI7UUFBOUQsa0JBQWEsR0FBYixhQUFhLENBQWtCO1FBQVUsT0FBRSxHQUFGLEVBQUUsQ0FBbUI7UUFSekMsZUFBVSxHQUFHLEtBQUssQ0FBQztRQUVqRCxXQUFNLEdBQUcsSUFBSSxZQUFZLEVBQTJCLENBQUM7UUFFL0QsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUNqQixjQUFTLEdBQUcsRUFBRSxDQUFDO1FBQ2YsWUFBTyxHQUFHLEVBQUUsQ0FBQztJQUV1RSxDQUFDO0lBRXJGLFFBQVE7UUFDSixJQUFJLENBQUMsT0FBTyxHQUFHLE1BQU0sQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUNuQyxJQUFJLENBQUMsU0FBUyxHQUFHLE1BQU0sQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUN6QyxDQUFDO0lBRUQsV0FBVyxDQUFDLEdBQWU7UUFDdkIsTUFBTSxpQkFBaUIsR0FBRyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUM7UUFDM0MsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7UUFDckIsTUFBTSxLQUFLLEdBQUcsSUFBSSx1QkFBdUIsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBRTdELElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRXhCLElBQUksQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztZQUMxQixJQUFJLENBQUMsVUFBVSxHQUFHLGlCQUFpQixDQUFDO1FBQ3hDLENBQUM7SUFDTCxDQUFDO0lBRUQsa0JBQWtCO1FBQ2QsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUM7UUFDdEIsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUM1QixDQUFDOzhHQXRDUSx5QkFBeUI7a0dBQXpCLHlCQUF5QixxR0FRZCxnQkFBZ0Isd0tDdEN4QyxxbkNBeUJBOzsyRkRLYSx5QkFBeUI7a0JBakJyQyxTQUFTOytCQUNJLG9CQUFvQixtQkFFYix1QkFBdUIsQ0FBQyxNQUFNLGtCQVEvQjt3QkFDWjs0QkFDSSxTQUFTLEVBQUUsZ0JBQWdCO3lCQUM5QjtxQkFDSjtxSEFLRyxVQUFVO3NCQURiLFdBQVc7dUJBQUMsT0FBTztnQkFLWCxLQUFLO3NCQUFiLEtBQUs7Z0JBQ2tDLFVBQVU7c0JBQWpELEtBQUs7dUJBQUMsRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUU7Z0JBRTVCLE1BQU07c0JBQWYsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZywgSW5wdXQsIE9uSW5pdCwgT3V0cHV0LCBib29sZWFuQXR0cmlidXRlLFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEVjbEJhc2VFdmVudCB9IGZyb20gJy4uLy4uL21vZGVsL2VjbC1iYXNlLmV2ZW50JztcbmltcG9ydCB7IEVDTEJhc2VEaXJlY3RpdmUgfSBmcm9tICcuLi9lY2wtYmFzZS5kaXJlY3RpdmUnO1xuXG5leHBvcnQgY2xhc3MgRWNsQWNjb3JkaW9uVG9nZ2xlRXZlbnQgZXh0ZW5kcyBFY2xCYXNlRXZlbnQge1xuICAgIGNvbnN0cnVjdG9yKHB1YmxpYyBpc0V4cGFuZGVkOiBib29sZWFuKSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgfVxufVxuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2VjbC1hY2NvcmRpb24taXRlbScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2VjbC1hY2NvcmRpb24taXRlbS5jb21wb25lbnQuaHRtbCcsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgc3R5bGVzOiBbXG4gICAgICAgIGBcbiAgICAgICAgICAgIDpob3N0IHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgYCxcbiAgICBdLFxuICAgIGhvc3REaXJlY3RpdmVzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIGRpcmVjdGl2ZTogRUNMQmFzZURpcmVjdGl2ZSxcbiAgICAgICAgfSxcbiAgICBdLFxufSlcbmV4cG9ydCBjbGFzcyBFY2xBY2NvcmRpb25JdGVtQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcblxuICAgIEBIb3N0QmluZGluZygnY2xhc3MnKVxuICAgIGdldCBjc3NDbGFzc2VzKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBbdGhpcy5iYXNlRGlyZWN0aXZlLmdldENzc0NsYXNzZXMoJ2VjbC1hY2NvcmRpb25fX2l0ZW0nKV0uam9pbignICcpLnRyaW0oKTtcbiAgICB9XG5cbiAgICBASW5wdXQoKSBsYWJlbDogc3RyaW5nO1xuICAgIEBJbnB1dCh7IHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9KSBpc0V4cGFuZGVkID0gZmFsc2U7XG5cbiAgICBAT3V0cHV0KCkgdG9nZ2xlID0gbmV3IEV2ZW50RW1pdHRlcjxFY2xBY2NvcmRpb25Ub2dnbGVFdmVudD4oKTtcblxuICAgIGlzQWN0aXZlID0gZmFsc2U7XG4gICAgY29udGVudElkID0gJyc7XG4gICAgdGl0bGVJZCA9ICcnO1xuXG4gICAgY29uc3RydWN0b3IocHVibGljIGJhc2VEaXJlY3RpdmU6IEVDTEJhc2VEaXJlY3RpdmUsIHByaXZhdGUgY2Q6IENoYW5nZURldGVjdG9yUmVmKSB7fVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMudGl0bGVJZCA9IGNyeXB0by5yYW5kb21VVUlEKCk7XG4gICAgICAgIHRoaXMuY29udGVudElkID0gY3J5cHRvLnJhbmRvbVVVSUQoKTtcbiAgICB9XG5cbiAgICBvbkl0ZW1DbGljayhldnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgbmV4dEV4cGFuZGVkU3RhdGUgPSAhdGhpcy5pc0V4cGFuZGVkO1xuICAgICAgICB0aGlzLmlzQWN0aXZlID0gdHJ1ZTtcbiAgICAgICAgY29uc3QgZXZlbnQgPSBuZXcgRWNsQWNjb3JkaW9uVG9nZ2xlRXZlbnQobmV4dEV4cGFuZGVkU3RhdGUpO1xuXG4gICAgICAgIHRoaXMudG9nZ2xlLm5leHQoZXZlbnQpO1xuXG4gICAgICAgIGlmICghZXZlbnQuZGVmYXVsdFByZXZlbnRlZCkge1xuICAgICAgICAgICAgdGhpcy5pc0V4cGFuZGVkID0gbmV4dEV4cGFuZGVkU3RhdGU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICByZW1vdmVBY3RpdmVTdGF0dXMoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuaXNBY3RpdmUgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxufVxuIiwiPGgzIGNsYXNzPVwiZWNsLWFjY29yZGlvbl9fdGl0bGVcIiBbaWRdPVwidGl0bGVJZFwiPlxuICAgIDxidXR0b25cbiAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgIChjbGljayk9XCJvbkl0ZW1DbGljaygkZXZlbnQpXCJcbiAgICAgICAgW2F0dHIuYXJpYS1leHBhbmRlZF09XCJpc0V4cGFuZGVkXCJcbiAgICAgICAgY2xhc3M9XCJlY2wtYWNjb3JkaW9uX190b2dnbGVcIlxuICAgICAgICBbY2xhc3MuZWNsLWFjY29yZGlvbl9fdG9nZ2xlLS1hY3RpdmVdPVwiaXNBY3RpdmVcIlxuICAgICAgICBbYXR0ci5hcmlhLWNvbnRyb2xzXT1cImNvbnRlbnRJZFwiPlxuICAgICAgICA8c3BhbiBjbGFzcz1cImVjbC1hY2NvcmRpb25fX3RvZ2dsZS1mbGV4XCI+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cImVjbC1hY2NvcmRpb25fX3RvZ2dsZS10aXRsZVwiPnt7IGxhYmVsIH19PC9zcGFuPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJlY2wtYWNjb3JkaW9uX190b2dnbGUtaW5kaWNhdG9yXCI+XG4gICAgICAgICAgICAgICAgQGlmKCFpc0V4cGFuZGVkKSB7XG4gICAgICAgICAgICAgICAgPGVjbC1pY29uIGljb249XCJwbHVzXCIgc2l6ZT1cInNcIiBjbGFzcz1cImVjbC1hY2NvcmRpb25fX3RvZ2dsZS1pY29uXCIgW2F0dHIuYXJpYS1oaWRkZW5dPVwiIWlzRXhwYW5kZWRcIj5cbiAgICAgICAgICAgICAgICA8L2VjbC1pY29uPlxuICAgICAgICAgICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgICAgICAgIDxlY2wtaWNvbiBpY29uPVwibWludXNcIiBzaXplPVwic1wiIGNsYXNzPVwiZWNsLWFjY29yZGlvbl9fdG9nZ2xlLWljb25cIiBbYXR0ci5hcmlhLWhpZGRlbl09XCJpc0V4cGFuZGVkXCI+XG4gICAgICAgICAgICAgICAgPC9lY2wtaWNvbj5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgIDwvc3Bhbj5cbiAgICA8L2J1dHRvbj5cbjwvaDM+XG48ZGl2IGNsYXNzPVwiZWNsLWFjY29yZGlvbl9fY29udGVudFwiIFtoaWRkZW5dPVwiIWlzRXhwYW5kZWRcIiByb2xlPVwicmVnaW9uXCIgW2F0dHIuYXJpYS1sYWJlbGxlZGJ5XT1cInRpdGxlSWRcIiBbaWRdPVwiY29udGVudElkXCI+XG4gICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuPC9kaXY+XG4iXX0=
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { Component, ContentChild, ContentChildren, forwardRef, HostBinding, Input, } from '@angular/core';
|
|
2
2
|
import { Subject, takeUntil } from 'rxjs';
|
|
3
|
-
import { v4 as uuidgen } from 'uuid';
|
|
4
3
|
import { ECLBaseDirective } from '../../ecl-base.directive';
|
|
5
4
|
import { EclCategoryFilterItemComponent } from '../ecl-category-filter-list/ecl-category-filter-item.component';
|
|
6
5
|
import { EclCategoryFilterListComponent } from '../ecl-category-filter-list/ecl-category-filter-list.component';
|
|
@@ -36,7 +35,7 @@ export class EclCategoryFilterComponent extends ECLBaseDirective {
|
|
|
36
35
|
if (subList) {
|
|
37
36
|
subList.forEach((item) => {
|
|
38
37
|
if (!item.id) {
|
|
39
|
-
item.id =
|
|
38
|
+
item.id = crypto.randomUUID();
|
|
40
39
|
}
|
|
41
40
|
if (item.eclCategoryList) {
|
|
42
41
|
item.eclCategoryList.controls = item.id;
|
|
@@ -120,4 +119,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImpor
|
|
|
120
119
|
type: ContentChildren,
|
|
121
120
|
args: [forwardRef(() => EclCategoryFilterItemComponent), { descendants: true }]
|
|
122
121
|
}] } });
|
|
123
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNsLWNhdGVnb3J5LWZpbHRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvZWNsLWNhdGVnb3J5LWZpbHRlci9lY2wtY2F0ZWdvcnktZmlsdGVyL2VjbC1jYXRlZ29yeS1maWx0ZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb21wb25lbnRzL2VjbC1jYXRlZ29yeS1maWx0ZXIvZWNsLWNhdGVnb3J5LWZpbHRlci9lY2wtY2F0ZWdvcnktZmlsdGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCxTQUFTLEVBQ1QsWUFBWSxFQUNaLGVBQWUsRUFDZixVQUFVLEVBQ1YsV0FBVyxFQUlYLEtBQUssR0FHUixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMxQyxPQUFPLEVBQUUsRUFBRSxJQUFJLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUlyQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxnRUFBZ0UsQ0FBQztBQUNoSCxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxnRUFBZ0UsQ0FBQzs7QUFhaEgsTUFBTSxPQUFPLDBCQUEyQixTQUFRLGdCQUFnQjtJQWM1RCxZQUFvQixPQUF3QjtRQUN4QyxLQUFLLEVBQUUsQ0FBQztRQURRLFlBQU8sR0FBUCxPQUFPLENBQWlCO1FBWEYsY0FBUyxHQUFHLElBQUksQ0FBQztRQUNqQyxTQUFJLEdBQUcsWUFBWSxDQUFDO1FBQ08sY0FBUyxHQUFrQixpQkFBaUIsQ0FBQztRQU0xRixhQUFRLEdBQXFCLElBQUksT0FBTyxFQUFXLENBQUM7UUFLeEQsSUFBSSxDQUFDLE1BQU0sR0FB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QkFBMEI7a0JBWHRDLFNBQVM7K0JBQ0kscUJBQXFCO29GQVd0QixhQUFhO3NCQUFyQixLQUFLO2dCQUVvQyxTQUFTO3NCQUFsRCxXQUFXO3VCQUFDLDJCQUEyQjtnQkFDZCxJQUFJO3NCQUE3QixXQUFXO3VCQUFDLFdBQVc7Z0JBQzZCLFNBQVM7c0JBQTdELFdBQVc7dUJBQUMsaUJBQWlCOztzQkFBRyxLQUFLO3VCQUFDLFlBQVk7Z0JBRWEsZUFBZTtzQkFBOUUsWUFBWTt1QkFBQyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsOEJBQThCLENBQUM7Z0JBRTlELHlCQUF5QjtzQkFEeEIsZUFBZTt1QkFBQyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsOEJBQThCLENBQUMsRUFBRSxFQUFFLFdBQVcsRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENvbXBvbmVudCxcbiAgICBDb250ZW50Q2hpbGQsXG4gICAgQ29udGVudENoaWxkcmVuLFxuICAgIGZvcndhcmRSZWYsXG4gICAgSG9zdEJpbmRpbmcsXG4gICAgSXRlcmFibGVEaWZmZXIsXG4gICAgSXRlcmFibGVEaWZmZXJzLFxuICAgIFF1ZXJ5TGlzdCxcbiAgICBJbnB1dCxcbiAgICBEb0NoZWNrLFxuICAgIEFmdGVyQ29udGVudEluaXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3ViamVjdCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB2NCBhcyB1dWlkZ2VuIH0gZnJvbSAndXVpZCc7XG5cbmltcG9ydCB7IEVjbENhdGVnb3J5RmlsdGVySXRlbVNlbGVjdEV2ZW50IH0gZnJvbSAnLi4vY29tbW9uL2VjbC1jYXRlZ29yeS1maWx0ZXItaXRlbS5ldmVudCc7XG5pbXBvcnQgeyBFY2xDYXRlZ29yeUZpbHRlckl0ZW0gfSBmcm9tICcuLi8uLi8uLi9tb2RlbC9lY2wtY2F0ZWdvcnktZmlsdGVyLWl0ZW0ubW9kZWwnO1xuaW1wb3J0IHsgRUNMQmFzZURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2VjbC1iYXNlLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBFY2xDYXRlZ29yeUZpbHRlckl0ZW1Db21wb25lbnQgfSBmcm9tICcuLi9lY2wtY2F0ZWdvcnktZmlsdGVyLWxpc3QvZWNsLWNhdGVnb3J5LWZpbHRlci1pdGVtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBFY2xDYXRlZ29yeUZpbHRlckxpc3RDb21wb25lbnQgfSBmcm9tICcuLi9lY2wtY2F0ZWdvcnktZmlsdGVyLWxpc3QvZWNsLWNhdGVnb3J5LWZpbHRlci1saXN0LmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZWNsLWNhdGVnb3J5LWZpbHRlcicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2VjbC1jYXRlZ29yeS1maWx0ZXIuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlczogW1xuICAgICAgICBgXG4gICAgICAgICAgICA6aG9zdCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgIGAsXG4gICAgXSxcbn0pXG5leHBvcnQgY2xhc3MgRWNsQ2F0ZWdvcnlGaWx0ZXJDb21wb25lbnQgZXh0ZW5kcyBFQ0xCYXNlRGlyZWN0aXZlIGltcGxlbWVudHMgRG9DaGVjaywgQWZ0ZXJDb250ZW50SW5pdCB7XG4gICAgQElucHV0KCkgY3VycmVudEl0ZW1JZDogc3RyaW5nO1xuXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5lY2wtY2F0ZWdvcnktZmlsdGVyJykgY2xhc3NOYW1lID0gdHJ1ZTtcbiAgICBASG9zdEJpbmRpbmcoJ2F0dHIucm9sZScpIHJvbGUgPSAnbmF2aWdhdGlvbic7XG4gICAgQEhvc3RCaW5kaW5nKCdhdHRyLmFyaWEtbGFiZWwnKSBASW5wdXQoJ2FyaWEtbGFiZWwnKSBhcmlhTGFiZWw6IHN0cmluZyB8IG51bGwgPSAnQ2F0ZWdvcnkgZmlsdGVyJztcblxuICAgIEBDb250ZW50Q2hpbGQoZm9yd2FyZFJlZigoKSA9PiBFY2xDYXRlZ29yeUZpbHRlckxpc3RDb21wb25lbnQpKSBlY2xDYXRlZ29yeUxpc3Q6IEVjbENhdGVnb3J5RmlsdGVyTGlzdENvbXBvbmVudDtcbiAgICBAQ29udGVudENoaWxkcmVuKGZvcndhcmRSZWYoKCkgPT4gRWNsQ2F0ZWdvcnlGaWx0ZXJJdGVtQ29tcG9uZW50KSwgeyBkZXNjZW5kYW50czogdHJ1ZSB9KVxuICAgIGVjbENhdGVnb3J5RmlsdGVySXRlbXNBbGw6IFF1ZXJ5TGlzdDxFY2xDYXRlZ29yeUZpbHRlckl0ZW1Db21wb25lbnQ+O1xuXG4gICAgcHJpdmF0ZSBkZXN0cm95JDogU3ViamVjdDxib29sZWFuPiA9IG5ldyBTdWJqZWN0PGJvb2xlYW4+KCk7XG4gICAgcHJpdmF0ZSBkaWZmZXI6IEl0ZXJhYmxlRGlmZmVyPEVjbENhdGVnb3J5RmlsdGVySXRlbUNvbXBvbmVudD47XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIGRpZmZlcnM6IEl0ZXJhYmxlRGlmZmVycykge1xuICAgICAgICBzdXBlcigpO1xuICAgICAgICB0aGlzLmRpZmZlciA9IHRoaXMuZGlmZmVycy5maW5kKFtdKS5jcmVhdGUoKTtcbiAgICB9XG5cbiAgICBuZ0RvQ2hlY2soKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGRpZmYgPSB0aGlzLmRpZmZlci5kaWZmKHRoaXMuZWNsQ2F0ZWdvcnlGaWx0ZXJJdGVtc0FsbCk7XG4gICAgICAgIGlmIChkaWZmKSB7XG4gICAgICAgICAgICBkaWZmLmZvckVhY2hJdGVtKChpdGVtKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5jb25uZWN0Q2F0ZWdvcnlmaWx0ZXJJdGVtRXZlbnRzKGl0ZW0uaXRlbSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuZWNsQ2F0ZWdvcnlMaXN0LnVwZGF0ZUNoaWxkcmVuSXRlbXNMZXZlbCgwKTtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5jdXJyZW50SXRlbUlkICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zZXRQcmVzZWxlY3RlZEN1cnJlbnRJdGVtKCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBuZ0FmdGVyQ29udGVudEluaXQgKCk6IHZvaWQge1xuICAgICAgICB0aGlzLnNldElkKHRoaXMuZWNsQ2F0ZWdvcnlMaXN0LmVjbENhdGVnb3J5RmlsdGVySXRlbXMpO1xuXG4gICAgfVxuXG4gICBwcml2YXRlIHNldElkKHN1Ykxpc3Q6IFF1ZXJ5TGlzdDxFY2xDYXRlZ29yeUZpbHRlckl0ZW1Db21wb25lbnQ+KTogdm9pZCB7XG4gICAgICAgIGlmIChzdWJMaXN0KSB7XG4gICAgICAgICAgICBzdWJMaXN0LmZvckVhY2goKGl0ZW0pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKCFpdGVtLmlkKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpdGVtLmlkID0gdXVpZGdlbigpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGlmKGl0ZW0uZWNsQ2F0ZWdvcnlMaXN0KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpdGVtLmVjbENhdGVnb3J5TGlzdC5jb250cm9scyA9IGl0ZW0uaWQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnNldElkKGl0ZW0uZWNsQ2F0ZWdvcnlMaXN0LmVjbENhdGVnb3J5RmlsdGVySXRlbXMpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgY29ubmVjdENhdGVnb3J5ZmlsdGVySXRlbUV2ZW50cyhpdGVtOiBFY2xDYXRlZ29yeUZpbHRlckl0ZW1Db21wb25lbnQpOiB2b2lkIHtcbiAgICAgICAgaXRlbS5pdGVtU2VsZWN0LnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKS5zdWJzY3JpYmUoKGV2dCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5vbkl0ZW1TZWxlY3RlZChldnQpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIG9uSXRlbVNlbGVjdGVkKGV2dDogRWNsQ2F0ZWdvcnlGaWx0ZXJJdGVtU2VsZWN0RXZlbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKGV2dC5pdGVtLmlzUm9vdEl0ZW0pIHtcbiAgICAgICAgICAgIHRoaXMuY2xvc2VBbGxJdGVtc0J1dE9uZShldnQuaXRlbSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmRlc2VsZWN0QWxsSXRlbXNCdXRPbmUoZXZ0Lml0ZW0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzZXRQcmVzZWxlY3RlZEN1cnJlbnRJdGVtKCk6IHZvaWQge1xuICAgICAgICBjb25zdCBjdXJySXRlbSA9IHRoaXMuZWNsQ2F0ZWdvcnlGaWx0ZXJJdGVtc0FsbC50b0FycmF5KCkuZmluZCgoaXRlbSkgPT4gaXRlbS5pZCA9PT0gdGhpcy5jdXJyZW50SXRlbUlkKTtcbiAgICAgICAgaWYoY3Vyckl0ZW0pIHtcbiAgICAgICAgICAgIGN1cnJJdGVtLmlzQ3VycmVudCA9IHRydWU7XG4gICAgICAgICAgICBpZiAoY3Vyckl0ZW0uaGFzQ2hpbGRyZW4pIHtcbiAgICAgICAgICAgICAgICBjdXJySXRlbS5pc0V4cGFuZGVkID0gdHJ1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMuZXhwYW5kUGFyZW50cyhjdXJySXRlbSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIGV4cGFuZFBhcmVudHMoY3Vyckl0ZW06IEVjbENhdGVnb3J5RmlsdGVySXRlbSk6IHZvaWQge1xuICAgICAgICBpZiAoY3Vyckl0ZW0uaXNSb290SXRlbSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY29uc3QgcGFyZW50ID0gdGhpcy5lY2xDYXRlZ29yeUZpbHRlckl0ZW1zQWxsLmZpbmQoXG4gICAgICAgICAgICAgICAgKGl0ZW0pID0+IGl0ZW0uaGFzQ2hpbGRyZW4gJiYgaXRlbS5jaGlsZHJlbi5maW5kKChjaGlsZCkgPT4gY2hpbGQuaWQgPT09IGN1cnJJdGVtLmlkKSAhPT0gdW5kZWZpbmVkLFxuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIHBhcmVudC5pc0V4cGFuZGVkID0gdHJ1ZTtcbiAgICAgICAgICAgIHRoaXMuZXhwYW5kUGFyZW50cyhwYXJlbnQpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjbG9zZUFsbEl0ZW1zQnV0T25lKGl0ZW06IEVjbENhdGVnb3J5RmlsdGVySXRlbSk6IHZvaWQge1xuICAgICAgICB0aGlzLmVjbENhdGVnb3J5RmlsdGVySXRlbXNBbGxcbiAgICAgICAgICAgIC5maWx0ZXIoKGl0KSA9PiBpdCAhPT0gaXRlbSlcbiAgICAgICAgICAgIC5mb3JFYWNoKChpdCkgPT4ge1xuICAgICAgICAgICAgICAgIGl0LmlzRXhwYW5kZWQgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICBpdC5pc0N1cnJlbnQgPSBmYWxzZTtcbiAgICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgZGVzZWxlY3RBbGxJdGVtc0J1dE9uZShpdGVtOiBFY2xDYXRlZ29yeUZpbHRlckl0ZW0pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5lY2xDYXRlZ29yeUZpbHRlckl0ZW1zQWxsXG4gICAgICAgICAgICAuZmlsdGVyKChpdCkgPT4gaXQgIT09IGl0ZW0pXG4gICAgICAgICAgICAuZm9yRWFjaCgoaXQpID0+IHtcbiAgICAgICAgICAgICAgICBpdC5pc0N1cnJlbnQgPSBmYWxzZTtcbiAgICAgICAgICAgIH0pO1xuICAgIH1cbn1cbiIsIjxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiJdfQ==
|
|
122
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNsLWNhdGVnb3J5LWZpbHRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvZWNsLWNhdGVnb3J5LWZpbHRlci9lY2wtY2F0ZWdvcnktZmlsdGVyL2VjbC1jYXRlZ29yeS1maWx0ZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb21wb25lbnRzL2VjbC1jYXRlZ29yeS1maWx0ZXIvZWNsLWNhdGVnb3J5LWZpbHRlci9lY2wtY2F0ZWdvcnktZmlsdGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCxTQUFTLEVBQ1QsWUFBWSxFQUNaLGVBQWUsRUFDZixVQUFVLEVBQ1YsV0FBVyxFQUlYLEtBQUssR0FHUixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUkxQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxnRUFBZ0UsQ0FBQztBQUNoSCxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxnRUFBZ0UsQ0FBQzs7QUFhaEgsTUFBTSxPQUFPLDBCQUEyQixTQUFRLGdCQUFnQjtJQWM1RCxZQUFvQixPQUF3QjtRQUN4QyxLQUFLLEVBQUUsQ0FBQztRQURRLFlBQU8sR0FBUCxPQUFPLENBQWlCO1FBWEYsY0FBUyxHQUFHLElBQUksQ0FBQztRQUNqQyxTQUFJLEdBQUcsWUFBWSxDQUFDO1FBQ08sY0FBUyxHQUFrQixpQkFBaUIsQ0FBQztRQU0xRixhQUFRLEdBQXFCLElBQUksT0FBTyxFQUFXLENBQUM7UUFLeEQsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFN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YTtzQkFBckIsS0FBSztnQkFFb0MsU0FBUztzQkFBbEQsV0FBVzt1QkFBQywyQkFBMkI7Z0JBQ2QsSUFBSTtzQkFBN0IsV0FBVzt1QkFBQyxXQUFXO2dCQUM2QixTQUFTO3NCQUE3RCxXQUFXO3VCQUFDLGlCQUFpQjs7c0JBQUcsS0FBSzt1QkFBQyxZQUFZO2dCQUVhLGVBQWU7c0JBQTlFLFlBQVk7dUJBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLDhCQUE4QixDQUFDO2dCQUU5RCx5QkFBeUI7c0JBRHhCLGVBQWU7dUJBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLDhCQUE4QixDQUFDLEVBQUUsRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDb21wb25lbnQsXG4gICAgQ29udGVudENoaWxkLFxuICAgIENvbnRlbnRDaGlsZHJlbixcbiAgICBmb3J3YXJkUmVmLFxuICAgIEhvc3RCaW5kaW5nLFxuICAgIEl0ZXJhYmxlRGlmZmVyLFxuICAgIEl0ZXJhYmxlRGlmZmVycyxcbiAgICBRdWVyeUxpc3QsXG4gICAgSW5wdXQsXG4gICAgRG9DaGVjayxcbiAgICBBZnRlckNvbnRlbnRJbml0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN1YmplY3QsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBFY2xDYXRlZ29yeUZpbHRlckl0ZW1TZWxlY3RFdmVudCB9IGZyb20gJy4uL2NvbW1vbi9lY2wtY2F0ZWdvcnktZmlsdGVyLWl0ZW0uZXZlbnQnO1xuaW1wb3J0IHsgRWNsQ2F0ZWdvcnlGaWx0ZXJJdGVtIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWwvZWNsLWNhdGVnb3J5LWZpbHRlci1pdGVtLm1vZGVsJztcbmltcG9ydCB7IEVDTEJhc2VEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9lY2wtYmFzZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRWNsQ2F0ZWdvcnlGaWx0ZXJJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi4vZWNsLWNhdGVnb3J5LWZpbHRlci1saXN0L2VjbC1jYXRlZ29yeS1maWx0ZXItaXRlbS5jb21wb25lbnQnO1xuaW1wb3J0IHsgRWNsQ2F0ZWdvcnlGaWx0ZXJMaXN0Q29tcG9uZW50IH0gZnJvbSAnLi4vZWNsLWNhdGVnb3J5LWZpbHRlci1saXN0L2VjbC1jYXRlZ29yeS1maWx0ZXItbGlzdC5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2VjbC1jYXRlZ29yeS1maWx0ZXInLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9lY2wtY2F0ZWdvcnktZmlsdGVyLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZXM6IFtcbiAgICAgICAgYFxuICAgICAgICAgICAgOmhvc3Qge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgfVxuICAgICAgICBgLFxuICAgIF0sXG59KVxuZXhwb3J0IGNsYXNzIEVjbENhdGVnb3J5RmlsdGVyQ29tcG9uZW50IGV4dGVuZHMgRUNMQmFzZURpcmVjdGl2ZSBpbXBsZW1lbnRzIERvQ2hlY2ssIEFmdGVyQ29udGVudEluaXQge1xuICAgIEBJbnB1dCgpIGN1cnJlbnRJdGVtSWQ6IHN0cmluZztcblxuICAgIEBIb3N0QmluZGluZygnY2xhc3MuZWNsLWNhdGVnb3J5LWZpbHRlcicpIGNsYXNzTmFtZSA9IHRydWU7XG4gICAgQEhvc3RCaW5kaW5nKCdhdHRyLnJvbGUnKSByb2xlID0gJ25hdmlnYXRpb24nO1xuICAgIEBIb3N0QmluZGluZygnYXR0ci5hcmlhLWxhYmVsJykgQElucHV0KCdhcmlhLWxhYmVsJykgYXJpYUxhYmVsOiBzdHJpbmcgfCBudWxsID0gJ0NhdGVnb3J5IGZpbHRlcic7XG5cbiAgICBAQ29udGVudENoaWxkKGZvcndhcmRSZWYoKCkgPT4gRWNsQ2F0ZWdvcnlGaWx0ZXJMaXN0Q29tcG9uZW50KSkgZWNsQ2F0ZWdvcnlMaXN0OiBFY2xDYXRlZ29yeUZpbHRlckxpc3RDb21wb25lbnQ7XG4gICAgQENvbnRlbnRDaGlsZHJlbihmb3J3YXJkUmVmKCgpID0+IEVjbENhdGVnb3J5RmlsdGVySXRlbUNvbXBvbmVudCksIHsgZGVzY2VuZGFudHM6IHRydWUgfSlcbiAgICBlY2xDYXRlZ29yeUZpbHRlckl0ZW1zQWxsOiBRdWVyeUxpc3Q8RWNsQ2F0ZWdvcnlGaWx0ZXJJdGVtQ29tcG9uZW50PjtcblxuICAgIHByaXZhdGUgZGVzdHJveSQ6IFN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgU3ViamVjdDxib29sZWFuPigpO1xuICAgIHByaXZhdGUgZGlmZmVyOiBJdGVyYWJsZURpZmZlcjxFY2xDYXRlZ29yeUZpbHRlckl0ZW1Db21wb25lbnQ+O1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBkaWZmZXJzOiBJdGVyYWJsZURpZmZlcnMpIHtcbiAgICAgICAgc3VwZXIoKTtcbiAgICAgICAgdGhpcy5kaWZmZXIgPSB0aGlzLmRpZmZlcnMuZmluZChbXSkuY3JlYXRlKCk7XG4gICAgfVxuXG4gICAgbmdEb0NoZWNrKCk6IHZvaWQge1xuICAgICAgICBjb25zdCBkaWZmID0gdGhpcy5kaWZmZXIuZGlmZih0aGlzLmVjbENhdGVnb3J5RmlsdGVySXRlbXNBbGwpO1xuICAgICAgICBpZiAoZGlmZikge1xuICAgICAgICAgICAgZGlmZi5mb3JFYWNoSXRlbSgoaXRlbSkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuY29ubmVjdENhdGVnb3J5ZmlsdGVySXRlbUV2ZW50cyhpdGVtLml0ZW0pO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmVjbENhdGVnb3J5TGlzdC51cGRhdGVDaGlsZHJlbkl0ZW1zTGV2ZWwoMCk7XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuY3VycmVudEl0ZW1JZCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2V0UHJlc2VsZWN0ZWRDdXJyZW50SXRlbSgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbmdBZnRlckNvbnRlbnRJbml0ICgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zZXRJZCh0aGlzLmVjbENhdGVnb3J5TGlzdC5lY2xDYXRlZ29yeUZpbHRlckl0ZW1zKTtcblxuICAgIH1cblxuICAgcHJpdmF0ZSBzZXRJZChzdWJMaXN0OiBRdWVyeUxpc3Q8RWNsQ2F0ZWdvcnlGaWx0ZXJJdGVtQ29tcG9uZW50Pik6IHZvaWQge1xuICAgICAgICBpZiAoc3ViTGlzdCkge1xuICAgICAgICAgICAgc3ViTGlzdC5mb3JFYWNoKChpdGVtKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmICghaXRlbS5pZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgaXRlbS5pZCA9IGNyeXB0by5yYW5kb21VVUlEKCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgaWYoaXRlbS5lY2xDYXRlZ29yeUxpc3QpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW0uZWNsQ2F0ZWdvcnlMaXN0LmNvbnRyb2xzID0gaXRlbS5pZDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuc2V0SWQoaXRlbS5lY2xDYXRlZ29yeUxpc3QuZWNsQ2F0ZWdvcnlGaWx0ZXJJdGVtcyk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjb25uZWN0Q2F0ZWdvcnlmaWx0ZXJJdGVtRXZlbnRzKGl0ZW06IEVjbENhdGVnb3J5RmlsdGVySXRlbUNvbXBvbmVudCk6IHZvaWQge1xuICAgICAgICBpdGVtLml0ZW1TZWxlY3QucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZSgoZXZ0KSA9PiB7XG4gICAgICAgICAgICB0aGlzLm9uSXRlbVNlbGVjdGVkKGV2dCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgb25JdGVtU2VsZWN0ZWQoZXZ0OiBFY2xDYXRlZ29yeUZpbHRlckl0ZW1TZWxlY3RFdmVudCk6IHZvaWQge1xuICAgICAgICBpZiAoZXZ0Lml0ZW0uaXNSb290SXRlbSkge1xuICAgICAgICAgICAgdGhpcy5jbG9zZUFsbEl0ZW1zQnV0T25lKGV2dC5pdGVtKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuZGVzZWxlY3RBbGxJdGVtc0J1dE9uZShldnQuaXRlbSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIHNldFByZXNlbGVjdGVkQ3VycmVudEl0ZW0oKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGN1cnJJdGVtID0gdGhpcy5lY2xDYXRlZ29yeUZpbHRlckl0ZW1zQWxsLnRvQXJyYXkoKS5maW5kKChpdGVtKSA9PiBpdGVtLmlkID09PSB0aGlzLmN1cnJlbnRJdGVtSWQpO1xuICAgICAgICBpZihjdXJySXRlbSkge1xuICAgICAgICAgICAgY3Vyckl0ZW0uaXNDdXJyZW50ID0gdHJ1ZTtcbiAgICAgICAgICAgIGlmIChjdXJySXRlbS5oYXNDaGlsZHJlbikge1xuICAgICAgICAgICAgICAgIGN1cnJJdGVtLmlzRXhwYW5kZWQgPSB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGhpcy5leHBhbmRQYXJlbnRzKGN1cnJJdGVtKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgZXhwYW5kUGFyZW50cyhjdXJySXRlbTogRWNsQ2F0ZWdvcnlGaWx0ZXJJdGVtKTogdm9pZCB7XG4gICAgICAgIGlmIChjdXJySXRlbS5pc1Jvb3RJdGVtKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjb25zdCBwYXJlbnQgPSB0aGlzLmVjbENhdGVnb3J5RmlsdGVySXRlbXNBbGwuZmluZChcbiAgICAgICAgICAgICAgICAoaXRlbSkgPT4gaXRlbS5oYXNDaGlsZHJlbiAmJiBpdGVtLmNoaWxkcmVuLmZpbmQoKGNoaWxkKSA9PiBjaGlsZC5pZCA9PT0gY3Vyckl0ZW0uaWQpICE9PSB1bmRlZmluZWQsXG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgcGFyZW50LmlzRXhwYW5kZWQgPSB0cnVlO1xuICAgICAgICAgICAgdGhpcy5leHBhbmRQYXJlbnRzKHBhcmVudCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIGNsb3NlQWxsSXRlbXNCdXRPbmUoaXRlbTogRWNsQ2F0ZWdvcnlGaWx0ZXJJdGVtKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZWNsQ2F0ZWdvcnlGaWx0ZXJJdGVtc0FsbFxuICAgICAgICAgICAgLmZpbHRlcigoaXQpID0+IGl0ICE9PSBpdGVtKVxuICAgICAgICAgICAgLmZvckVhY2goKGl0KSA9PiB7XG4gICAgICAgICAgICAgICAgaXQuaXNFeHBhbmRlZCA9IGZhbHNlO1xuICAgICAgICAgICAgICAgIGl0LmlzQ3VycmVudCA9IGZhbHNlO1xuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBkZXNlbGVjdEFsbEl0ZW1zQnV0T25lKGl0ZW06IEVjbENhdGVnb3J5RmlsdGVySXRlbSk6IHZvaWQge1xuICAgICAgICB0aGlzLmVjbENhdGVnb3J5RmlsdGVySXRlbXNBbGxcbiAgICAgICAgICAgIC5maWx0ZXIoKGl0KSA9PiBpdCAhPT0gaXRlbSlcbiAgICAgICAgICAgIC5mb3JFYWNoKChpdCkgPT4ge1xuICAgICAgICAgICAgICAgIGl0LmlzQ3VycmVudCA9IGZhbHNlO1xuICAgICAgICAgICAgfSk7XG4gICAgfVxufVxuIiwiPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuIl19
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { booleanAttribute, Component, ElementRef, EventEmitter, forwardRef, HostBinding, HostListener, Input, Output, ViewChild, ViewChildren, } from '@angular/core';
|
|
2
2
|
import { NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
3
3
|
import { Subject } from 'rxjs';
|
|
4
|
-
import { v4 as uuidgen } from 'uuid';
|
|
5
4
|
import { KeyCode } from '../../../utils';
|
|
6
5
|
import { ECLBaseDirective } from '../../ecl-base.directive';
|
|
7
6
|
import { EclMultiselectOptionComponent, } from '../ecl-multiselect-option/ecl-multiselect-option.component';
|
|
@@ -393,13 +392,13 @@ export class EclMultiselectDropdownComponent extends ECLBaseDirective {
|
|
|
393
392
|
return this.getActiveOptions().findIndex((option) => option.id === id);
|
|
394
393
|
}
|
|
395
394
|
getSelectAllId() {
|
|
396
|
-
return
|
|
395
|
+
return crypto.randomUUID();
|
|
397
396
|
}
|
|
398
397
|
getDropdownId() {
|
|
399
|
-
return this.id !== '' ? `${this.id}-dropdown` :
|
|
398
|
+
return this.id !== '' ? `${this.id}-dropdown` : crypto.randomUUID();
|
|
400
399
|
}
|
|
401
400
|
getToggleId() {
|
|
402
|
-
return this.id !== '' ? `${this.id}-toggle` :
|
|
401
|
+
return this.id !== '' ? `${this.id}-toggle` : crypto.randomUUID();
|
|
403
402
|
}
|
|
404
403
|
modifyParentLabelForAttribute() {
|
|
405
404
|
const form = this.renderer.parentNode(this.elRef.nativeElement);
|
|
@@ -474,4 +473,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImpor
|
|
|
474
473
|
type: HostListener,
|
|
475
474
|
args: ['document:click', ['$event']]
|
|
476
475
|
}] } });
|
|
477
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNsLW11bHRpc2VsZWN0LWRyb3Bkb3duLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9lY2wtbXVsdGlzZWxlY3QvZWNsLW11bHRpc2VsZWN0LWRyb3Bkb3duL2VjbC1tdWx0aXNlbGVjdC1kcm9wZG93bi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvZWNsLW11bHRpc2VsZWN0L2VjbC1tdWx0aXNlbGVjdC1kcm9wZG93bi9lY2wtbXVsdGlzZWxlY3QtZHJvcGRvd24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILGdCQUFnQixFQUNoQixTQUFTLEVBRVQsVUFBVSxFQUNWLFlBQVksRUFDWixVQUFVLEVBQ1YsV0FBVyxFQUNYLFlBQVksRUFDWixLQUFLLEVBS0wsTUFBTSxFQUdOLFNBQVMsRUFDVCxZQUFZLEdBQ2YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFtQyxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3BGLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLEVBQUUsSUFBSSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDckMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXpDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBSTVELE9BQU8sRUFFSCw2QkFBNkIsR0FFaEMsTUFBTSw0REFBNEQsQ0FBQzs7Ozs7Ozs7OztBQWNwRSxNQUFNLE9BQU8sK0JBQWdDLFNBQVEsZ0JBQWdCO0lBVWpFLElBQ0ksU0FBUztRQUNULE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQztJQUMzQixDQUFDO0lBQ0QsSUFBSSxTQUFTLENBQUMsS0FBMEI7UUFDcEMsSUFB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biAgICBib29sZWFuQXR0cmlidXRlLFxuICAgIENvbXBvbmVudCxcbiAgICBEb0NoZWNrLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIGZvcndhcmRSZWYsXG4gICAgSG9zdEJpbmRpbmcsXG4gICAgSG9zdExpc3RlbmVyLFxuICAgIElucHV0LFxuICAgIEl0ZXJhYmxlRGlmZmVyLFxuICAgIEl0ZXJhYmxlRGlmZmVycyxcbiAgICBPbkRlc3Ryb3ksXG4gICAgT25Jbml0LFxuICAgIE91dHB1dCxcbiAgICBRdWVyeUxpc3QsXG4gICAgUmVuZGVyZXIyLFxuICAgIFZpZXdDaGlsZCxcbiAgICBWaWV3Q2hpbGRyZW4sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIEZvcm1Hcm91cCwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB2NCBhcyB1dWlkZ2VuIH0gZnJvbSAndXVpZCc7XG5pbXBvcnQgeyBLZXlDb2RlIH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMnO1xuaW1wb3J0IHsgRWNsTXVsdGlzZWxlY3RPcHRpb24gfSBmcm9tICcuLi8uLi8uLi9tb2RlbC9lY2wtbXVsdGlzZWxlY3Qtb3B0aW9uLm1vZGVsJztcbmltcG9ydCB7IEVDTEJhc2VEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9lY2wtYmFzZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRWNsQ2hlY2tib3hEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9lY2wtY2hlY2tib3gnO1xuaW1wb3J0IHsgRWNsTXVsdGlzZWxlY3RJbnB1dENvbXBvbmVudCwgRWNsTXVsdGlzZWxlY3RNYWluSW5wdXRDbGlja0V2ZW50IH0gZnJvbSAnLi4vZWNsLW11bHRpc2VsZWN0LWlucHV0L2VjbC1tdWx0aXNlbGVjdC1pbnB1dC5jb21wb25lbnQnO1xuaW1wb3J0IHsgRWNsTXVsdGlzZWxlY3RPcHRpb25EaXJlY3RpdmUgfSBmcm9tICcuLi9lY2wtbXVsdGlzZWxlY3Qtb3B0aW9uLmRpcmVjdGl2ZSc7XG5pbXBvcnQge1xuICAgIEVjbE11bHRpc2VsZWN0T3B0aW9uQ2xpY2tFdmVudCxcbiAgICBFY2xNdWx0aXNlbGVjdE9wdGlvbkNvbXBvbmVudCxcbiAgICBFY2xNdWx0aXNlbGVjdE9wdGlvbktleWRvd25FdmVudCxcbn0gZnJvbSAnLi4vZWNsLW11bHRpc2VsZWN0LW9wdGlvbi9lY2wtbXVsdGlzZWxlY3Qtb3B0aW9uLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvY29tcG9uZW50LXNlbGVjdG9yXG4gICAgc2VsZWN0b3I6ICdkaXZbZWNsTXVsdGlzZWxlY3REcm9wZG93bl0nLFxuICAgIHRlbXBsYXRlVXJsOiAnZWNsLW11bHRpc2VsZWN0LWRyb3Bkb3duLmNvbXBvbmVudC5odG1sJyxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICAgICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBFY2xNdWx0aXNlbGVjdERyb3Bkb3duQ29tcG9uZW50KSxcbiAgICAgICAgICAgIG11bHRpOiB0cnVlLFxuICAgICAgICB9LFxuICAgIF0sXG59KVxuZXhwb3J0IGNsYXNzIEVjbE11bHRpc2VsZWN0RHJvcGRvd25Db21wb25lbnQgZXh0ZW5kcyBFQ0xCYXNlRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0LCBDb250cm9sVmFsdWVBY2Nlc3NvciwgRG9DaGVjaywgT25EZXN0cm95IHtcbiAgICBAVmlld0NoaWxkKCdzZWFyY2hJbnB1dCcpIHNlYXJjaElucHV0OiBFbGVtZW50UmVmO1xuICAgIEBWaWV3Q2hpbGQoJ2VjbE11bHRpc2VsZWN0SW5wdXQnKSBlY2xNdWx0aXNlbGVjdElucHV0OiBFY2xNdWx0aXNlbGVjdElucHV0Q29tcG9uZW50O1xuICAgIEBWaWV3Q2hpbGQoJ3NlbGVjdEFsbENoZWNrYm94Jykgc2VsZWN0QWxsQ2hlY2tib3g6IEVsZW1lbnRSZWY7XG4gICAgQFZpZXdDaGlsZCgnc2VsZWN0QWxsJykgc2VsZWN0QWxsOiBFY2xDaGVja2JveERpcmVjdGl2ZTtcbiAgICBAVmlld0NoaWxkKCdjbG9zZUJ0bicsIHsgcmVhZDogRWxlbWVudFJlZiB9KSBjbG9zZUJ0bjogRWxlbWVudFJlZjtcbiAgICBAVmlld0NoaWxkKCdjbGVhckFsbEJ0bicsIHsgcmVhZDogRWxlbWVudFJlZiB9KSBjbGVhckFsbEJ0bjogRWxlbWVudFJlZjtcbiAgICBAVmlld0NoaWxkcmVuKEVjbE11bHRpc2VsZWN0T3B0aW9uQ29tcG9uZW50KSBtdWx0aU9wdGlvbkNvbXBvbmVudHM6IFF1ZXJ5TGlzdDxFY2xNdWx0aXNlbGVjdE9wdGlvbkNvbXBvbmVudD47XG4gICAgQE91dHB1dCgpIGVjbENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nW10+KCk7XG5cbiAgICBASW5wdXQoeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSlcbiAgICBnZXQgaXNJbnZhbGlkKCk6IGJvb2xlYW4gfCB1bmRlZmluZWQge1xuICAgICAgICByZXR1cm4gdGhpcy5faXNJbnZhbGlkO1xuICAgIH1cbiAgICBzZXQgaXNJbnZhbGlkKHZhbHVlOiBib29sZWFuIHwgdW5kZWZpbmVkKSB7XG4gICAgICAgIHRoaXMuX2lzSW52YWxpZCA9IHZhbHVlO1xuICAgIH1cblxuICAgIEBIb3N0QmluZGluZygnY2xhc3MnKVxuICAgIGdldCBjc3NDbGFzc2VzKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBbc3VwZXIuZ2V0Q3NzQ2xhc3NlcygnZWNsLXNlbGVjdF9fbXVsdGlwbGUnKV0uam9pbignICcpLnRyaW0oKTtcbiAgICB9XG4gICAgQElucHV0KCkgbWFpbklucHV0UGxhY2Vob2xkZXIgPSAnU2VsZWN0IGFuIGl0ZW0nO1xuICAgIEBJbnB1dCgpIHNlYXJjaEZpZWxkUGxhY2Vob2xkZXIgPSAnRW50ZXIga2V5d29yZCc7XG4gICAgQElucHV0KCkgZWNsU2l6ZSA9ICdtJztcbiAgICBASW5wdXQoeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSlcbiAgICBASG9zdEJpbmRpbmcoJ2F0dHIuZGlzYWJsZWQnKVxuICAgIGdldCBkaXNhYmxlZCgpOiBib29sZWFuIHwgdW5kZWZpbmVkIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2Rpc2FibGVkIHx8IHVuZGVmaW5lZDtcbiAgICB9XG4gICAgc2V0IGRpc2FibGVkKHZhbHVlOiBib29sZWFuIHwgdW5kZWZpbmVkKSB7XG4gICAgICAgIHRoaXMuX2Rpc2FibGVkID0gdmFsdWU7XG4gICAgfVxuXG4gICAgYXJpYURlc2NyaWJlZGJ5OiBzdHJpbmcgfCB1bmRlZmluZWQgPSB1bmRlZmluZWQ7XG4gICAgYXJpYUxhYmVsZWRieTogc3RyaW5nIHwgdW5kZWZpbmVkID0gdW5kZWZpbmVkO1xuICAgIHRvZ2dsZUxhYmVsOiBzdHJpbmcgfCB1bmRlZmluZWQgPSB1bmRlZmluZWQ7XG4gICAgaWQgPSAnJztcbiAgICBpc1Nob3dOb1Jlc3VsdHNGb3VuZCA9IGZhbHNlO1xuICAgIGlzU2hvd011bHRpc2VsZWN0RHJvcGRvd24gPSBmYWxzZTtcbiAgICBtdWx0aU9wdGlvbkRpcmVjdGl2ZXM6IEVjbE11bHRpc2VsZWN0T3B0aW9uRGlyZWN0aXZlW10gPSBbXTtcbiAgICBmb3JtOiBGb3JtR3JvdXA7XG4gICAgcHJvdGVjdGVkIGRyb3Bkb3duSWQgPSAnJztcbiAgICBwcm90ZWN0ZWQgc2VsZWN0QWxsSWQgPSAnJztcbiAgICBwcm90ZWN0ZWQgdG9nZ2xlSWQgPSAnJztcbiAgICBwcml2YXRlIF9kaXNhYmxlZCA9IGZhbHNlO1xuICAgIHByaXZhdGUgX2lzSW52YWxpZCA9IGZhbHNlO1xuICAgIHByaXZhdGUgX3NlbGVjdGVkSXRlbXM6IEVjbE11bHRpc2VsZWN0T3B0aW9uW10gPSBbXTtcbiAgICBwcml2YXRlIGRpZmZlcjogSXRlcmFibGVEaWZmZXI8RWNsTXVsdGlzZWxlY3RPcHRpb25Db21wb25lbnQ+O1xuICAgIHByaXZhdGUgZGVzdHJveSQ6IFN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgU3ViamVjdDxib29sZWFuPigpO1xuICAgIHByaXZhdGUgaXNXcml0ZVZhbHVlQ2FsbGVkID0gZmFsc2U7XG4gICAgcHJpdmF0ZSB2YWx1ZXMgPSBbXTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIGVsUmVmOiBFbGVtZW50UmVmLFxuICAgICAgICBwcml2YXRlIGRpZmZlcnM6IEl0ZXJhYmxlRGlmZmVycyxcbiAgICAgICAgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyLFxuICAgICkge1xuICAgICAgICBzdXBlcigpO1xuICAgICAgICB0aGlzLmRpZmZlciA9IHRoaXMuZGlmZmVycy5maW5kKFtdKS5jcmVhdGUoKTtcbiAgICB9XG5cbiAgICBuZ0RvQ2hlY2soKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGRpZmYgPSB0aGlzLmRpZmZlci5kaWZmKHRoaXMubXVsdGlPcHRpb25Db21wb25lbnRzKTtcblxuICAgICAgICBpZiAoZGlmZikge1xuICAgICAgICAgICAgaWYgKHRoaXMuaXNXcml0ZVZhbHVlQ2FsbGVkKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5yZXNldENvbXBvbmVudCgpO1xuICAgICAgICAgICAgICAgIHRoaXMud3JpdGVWYWx1ZXModGhpcy52YWx1ZXMpO1xuICAgICAgICAgICAgICAgIHRoaXMuaXNXcml0ZVZhbHVlQ2FsbGVkID0gZmFsc2U7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHRoaXMuaW5pdFNlbGVjdGVkT3B0aW9ucygpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc2VsZWN0QWxsSWQgPSB0aGlzLmdldFNlbGVjdEFsbElkKCk7XG4gICAgICAgIHRoaXMuZHJvcGRvd25JZCA9IHRoaXMuZ2V0RHJvcGRvd25JZCgpO1xuICAgICAgICB0aGlzLnRvZ2dsZUlkID0gdGhpcy5nZXRUb2dnbGVJZCgpO1xuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMubW9kaWZ5UGFyZW50TGFiZWxGb3JBdHRyaWJ1dGUoKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZGVzdHJveSQubmV4dCh0cnVlKTtcbiAgICAgICAgdGhpcy5kZXN0cm95JC51bnN1YnNjcmliZSgpO1xuICAgIH1cblxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgcHVibGljIHdyaXRlVmFsdWUodmFsdWVzOiBhbnkpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMubXVsdGlPcHRpb25Db21wb25lbnRzKSB7XG4gICAgICAgICAgICB0aGlzLnJlc2V0Q29tcG9uZW50KCk7XG4gICAgICAgICAgICB0aGlzLndyaXRlVmFsdWVzKHZhbHVlcyk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLnZhbHVlcyA9IHZhbHVlcztcbiAgICAgICAgICAgIHRoaXMuaXNXcml0ZVZhbHVlQ2FsbGVkID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgcHVibGljIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSk6IHZvaWQge1xuICAgICAgICB0aGlzLnByb3BhZ2F0ZUNoYW5nZSA9IGZuO1xuICAgIH1cblxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgcHVibGljIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5wcm9wYWdhdGVUb3VjaGVkID0gZm47XG4gICAgfVxuXG4gICAgcHVibGljIHNldERpc2FibGVkU3RhdGUoaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICB0aGlzLl9kaXNhYmxlZCA9IGlzRGlzYWJsZWQ7XG4gICAgfVxuXG4gICAgQEhvc3RMaXN0ZW5lcignZG9jdW1lbnQ6a2V5dXAuZXNjYXBlJywgWyckZXZlbnQnXSlcbiAgICBvbkVzY2FwZUtleShldmVudDogS2V5Ym9hcmRFdmVudCk6IHZvaWQge1xuICAgICAgICB0aGlzLmhpZGVNdWx0aXNlbGVjdERyb3Bkb3duKCk7XG4gICAgfVxuXG4gICAgQEhvc3RMaXN0ZW5lcignZG9jdW1lbnQ6Y2xpY2snLCBbJyRldmVudCddKVxuICAgIG9uS2V5VXAoZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLmVsUmVmLm5hdGl2ZUVsZW1lbnQuY29udGFpbnMoZXZlbnQudGFyZ2V0KSkge1xuICAgICAgICAgICAgdGhpcy5oaWRlTXVsdGlzZWxlY3REcm9wZG93bigpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZ2V0IG9wdGlvbnNDb3VudCgpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gdGhpcy5nZXRBY3RpdmVPcHRpb25zKCkgPyB0aGlzLmdldEFjdGl2ZU9wdGlvbnMoKS5sZW5ndGggOiAwO1xuICAgIH1cblxuICAgIGdldCBzZWxlY3RlZEl0ZW1zKCk6IHN0cmluZ1tdIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3NlbGVjdGVkSXRlbXMubWFwKChpdGVtKSA9PiBpdGVtLmxhYmVsKTtcbiAgICB9XG5cbiAgICBnZXQgaXNJdGVtc1NlbGVjdGVkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fc2VsZWN0ZWRJdGVtcy5sZW5ndGggPiAwO1xuICAgIH1cblxuICAgIGdldCBpc1Nob3dUb29sYmFyKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fc2VsZWN0ZWRJdGVtcy5sZW5ndGggPiAwO1xuICAgIH1cblxuICAgIGluaXRTZWxlY3RlZE9wdGlvbnMoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3NlbGVjdGVkSXRlbXMgPSBbXTtcbiAgICAgICAgdGhpcy5tdWx0aU9wdGlvbkNvbXBvbmVudHNcbiAgICAgICAgICAgIC5maWx0ZXIoKGVsZW0pID0+IGVsZW0uaXNDaGVja2VkKVxuICAgICAgICAgICAgLmZvckVhY2goKGl0ZW0pID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLl9zZWxlY3RlZEl0ZW1zLnB1c2goaXRlbSk7XG4gICAgICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBvbkNsaWNrQ2xlYXJBbGwoZXZ0OiBFdmVudCk6IHZvaWQge1xuICAgICAgICBldnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgIHRoaXMudW5zZWxlY3RBbGxBY3RpdmVPcHRpb25zKCk7XG4gICAgICAgIHRoaXMuZWNsQ2hhbmdlLmVtaXQoW10pO1xuICAgICAgICB0aGlzLnByb3BhZ2F0ZUNoYW5nZShbXSk7XG4gICAgfVxuXG4gICAgb25FbnRlckNsZWFyKGV2dDogRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5vbkNsaWNrQ2xlYXJBbGwoZXZ0KTtcbiAgICAgICAgdGhpcy5lY2xNdWx0aXNlbGVjdElucHV0Lm9uRm9jdXMoKTtcbiAgICB9XG5cbiAgICBvbkNsaWNrQ2xvc2UoZXZ0OiBFdmVudCk6IHZvaWQge1xuICAgICAgICBldnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgdGhpcy5oaWRlTXVsdGlzZWxlY3REcm9wZG93bigpO1xuICAgIH1cblxuICAgIG9uQXJyb3dVcENsb3NlQ2xlYXIoZXZ0OiBFdmVudCk6IHZvaWQge1xuICAgICAgICBldnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgY29uc3QgY3VycmVudE9wdGlvbnMgPSB0aGlzLmdldEFjdGl2ZU9wdGlvbnMoKTtcbiAgICAgICAgY3VycmVudE9wdGlvbnNbY3VycmVudE9wdGlvbnMubGVuZ3RoIC0gMV0ub25Gb2N1cygpO1xuICAgIH1cblxuICAgIG9uQXJyb3dMZWZ0Q2xvc2UoZXZ0OiBFdmVudCk6IHZvaWQge1xuICAgICAgICBldnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZWxlY3RSb290RWxlbWVudCh0aGlzLmNsZWFyQWxsQnRuLm5hdGl2ZUVsZW1lbnQsIHRydWUpLmZvY3VzKCk7XG4gICAgfVxuXG4gICAgb25UYWJDbG9zZShldnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGV2dC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICB0aGlzLmVjbE11bHRpc2VsZWN0SW5wdXQub25Gb2N1cygpO1xuICAgIH1cblxuICAgIG9uQXJyb3dSaWdodENsZWFyKGV2dDogRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgZXZ0LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2VsZWN0Um9vdEVsZW1lbnQodGhpcy5jbG9zZUJ0bi5uYXRpdmVFbGVtZW50LCB0cnVlKS5mb2N1cygpO1xuICAgIH1cblxuICAgIG9uRW50ZXJTZWFyY2goZXZ0OiBFdmVudCk6IHZvaWQge1xuICAgICAgICBldnQucHJldmVudERlZmF1bHQoKTtcbiAgICB9XG5cbiAgICBvbkFycm93RG93blNlYXJjaChldnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGV2dC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICBjb25zdCBjdXJyZW50T3B0aW9ucyA9IHRoaXMuZ2V0QWN0aXZlT3B0aW9ucygpO1xuICAgICAgICBpZiAoY3VycmVudE9wdGlvbnMubGVuZ3RoID4gMSkge1xuICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5zZWxlY3RSb290RWxlbWVudCh0aGlzLnNlbGVjdEFsbENoZWNrYm94Lm5hdGl2ZUVsZW1lbnQsIHRydWUpLmZvY3VzKCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjdXJyZW50T3B0aW9uc1swXS5vbkZvY3VzKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvbkFycm93VXBTZWFyY2goZXZ0OiBFdmVudCk6IHZvaWQge1xuICAgICAgICBldnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgdGhpcy5oaWRlTXVsdGlzZWxlY3REcm9wZG93bigpO1xuICAgICAgICB0aGlzLmVjbE11bHRpc2VsZWN0SW5wdXQub25Gb2N1cygpO1xuICAgIH1cblxuICAgIG9uS2V5ZG93bk1haW5JbnB1dChldnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGV2dC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICB0aGlzLnNob3dNdWx0aXNlbGVjdERyb3Bkb3duKCk7XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy5yZW5kZXJlci5zZWxlY3RSb290RWxlbWVudCh0aGlzLnNlYXJjaElucHV0Lm5hdGl2ZUVsZW1lbnQsIHRydWUpLmZvY3VzKCkpO1xuICAgIH1cblxuICAgIG9uQ2xpY2tNYWluSW5wdXQoZXZ0OiBFY2xNdWx0aXNlbGVjdE1haW5JbnB1dENsaWNrRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgZXZ0LmV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIHRoaXMudG9nZ2xlRHJvcGRvd24oKTtcbiAgICB9XG5cbiAgICBvbkFycm93RG93blNlbGVjdEFsbChldnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGV2dC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICBjb25zdCBjdXJyZW50T3B0aW9ucyA9IHRoaXMuZ2V0QWN0aXZlT3B0aW9ucygpO1xuICAgICAgICBpZiAoY3VycmVudE9wdGlvbnMubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgY3VycmVudE9wdGlvbnNbMF0ub25Gb2N1cygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgb25BcnJvd1VwU2VsZWN0QWxsKGV2dDogRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgZXZ0LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2VsZWN0Um9vdEVsZW1lbnQodGhpcy5zZWFyY2hJbnB1dC5uYXRpdmVFbGVtZW50LCB0cnVlKS5mb2N1cygpXG4gICAgfVxuXG4gICAgb25TZWFyY2goaW5wdXQ6IEV2ZW50VGFyZ2V0KTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGtleXdvcmQgPSAoaW5wdXQgYXMgSFRNTElucHV0RWxlbWVudCkudmFsdWU7XG4gICAgICAgIGxldCBpc01hdGNoRm91bmQgPSBmYWxzZTtcbiAgICAgICAgaWYgKGtleXdvcmQgPT09ICcnKSB7XG4gICAgICAgICAgICB0aGlzLmVuYWJsZVNlbGVjdEFsbCgpO1xuICAgICAgICAgICAgaXNNYXRjaEZvdW5kID0gdHJ1ZTtcbiAgICAgICAgICAgIHRoaXMubXVsdGlPcHRpb25Db21wb25lbnRzLmZvckVhY2goKGl0ZW0pID0+IHtcbiAgICAgICAgICAgICAgICBpdGVtLmhpZ2hsaWdodFNlYXJjaFRleHQoJycpO1xuICAgICAgICAgICAgICAgIGl0ZW0uc2hvdygpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLm11bHRpT3B0aW9uQ29tcG9uZW50cy5mb3JFYWNoKChpdGVtKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKGl0ZW0ubGFiZWwudG9Mb3dlckNhc2UoKS5pbmRleE9mKGtleXdvcmQudG9Mb3dlckNhc2UoKSkgPCAwKSB7XG4gICAgICAgICAgICAgICAgICAgIGl0ZW0uaGlkZSgpO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIGlzTWF0Y2hGb3VuZCA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgIGl0ZW0uaGlnaGxpZ2h0U2VhcmNoVGV4dChrZXl3b3JkLnRvTG93ZXJDYXNlKCkpO1xuICAgICAgICAgICAgICAgICAgICBpdGVtLnNob3coKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHRoaXMuZGlzYWJsZVNlbGVjdEFsbCgpO1xuICAgICAgICB9XG4gICAgICAgIGlmICghaXNNYXRjaEZvdW5kKSB7XG4gICAgICAgICAgICB0aGlzLnNob3dOb1Jlc3VsdHNGb3VuZCgpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5oaWRlTm9SZXN1bHRzRm91bmQoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9uU2VsZWN0QWxsKCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5zZWxlY3RBbGxDaGVja2JveC5uYXRpdmVFbGVtZW50LmNoZWNrZWQpIHtcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0QWxsQWN0aXZlT3B0aW9ucygpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy51bnNlbGVjdEFsbEFjdGl2ZU9wdGlvbnMoKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLnByb3BhZ2F0ZVRvdWNoZWQoKTtcbiAgICAgICAgdGhpcy5lY2xDaGFuZ2UuZW1pdCh0aGlzLl9zZWxlY3RlZEl0ZW1zLm1hcCgoaXRlbSkgPT4gaXRlbS52YWx1ZSkpO1xuICAgICAgICB0aGlzLnByb3BhZ2F0ZUNoYW5nZSh0aGlzLl9zZWxlY3RlZEl0ZW1zLm1hcCgoaXRlbSkgPT4gaXRlbS52YWx1ZSkpO1xuICAgIH1cblxuICAgIG9uS2V5ZG93bk9wdGlvbihldnQ6IEVjbE11bHRpc2VsZWN0T3B0aW9uS2V5ZG93bkV2ZW50KTogdm9pZCB7XG4gICAgICAgIHN3aXRjaCAoZXZ0LmtleWJvYXJkRXZlbnQua2V5KSB7XG4gICAgICAgICAgICBjYXNlIEtleUNvZGUuQVJST1dfRE9XTjoge1xuICAgICAgICAgICAgICAgIHRoaXMub25PcHRpb25BcnJvd0Rvd25BbmRUYWIoZXZ0LmtleWJvYXJkRXZlbnQsIGV2dC5tdWx0aXNlbGVjdE9wdGlvbik7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjYXNlIEtleUNvZGUuQVJST1dfVVA6IHtcbiAgICAgICAgICAgICAgICB0aGlzLm9uT3B0aW9uQXJyb3dVcChldnQua2V5Ym9hcmRFdmVudCwgZXZ0Lm11bHRpc2VsZWN0T3B0aW9uKTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNhc2UgS2V5Q29kZS5FU0NBUEU6IHtcbiAgICAgICAgICAgICAgICB0aGlzLmhpZGVNdWx0aXNlbGVjdERyb3Bkb3duKCk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjYXNlIEtleUNvZGUuRU5URVI6IHtcbiAgICAgICAgICAgICAgICAoZXZ0LmtleWJvYXJkRXZlbnQudGFyZ2V0IGFzIEhUTUxJbnB1dEVsZW1lbnQpLmNsaWNrKCk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjYXNlIEtleUNvZGUuVEFCOiB7XG4gICAgICAgICAgICAgICAgdGhpcy5vbk9wdGlvbkFycm93RG93bkFuZFRhYihldnQua2V5Ym9hcmRFdmVudCwgZXZ0Lm11bHRpc2VsZWN0T3B0aW9uKTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGRlZmF1bHQ6IHtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9uT3B0aW9uU2VsZWN0ZWQoZXZ0OiBFY2xNdWx0aXNlbGVjdE9wdGlvbkNsaWNrRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuc2VsZWN0QWxsQ2hlY2tib3gubmF0aXZlRWxlbWVudC5jaGVja2VkKSB7XG4gICAgICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFByb3BlcnR5KHRoaXMuc2VsZWN0QWxsQ2hlY2tib3gubmF0aXZlRWxlbWVudCwgJ2NoZWNrZWQnLCBmYWxzZSk7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgY3Vyck9wdGlvbiA9IGV2dC5tdWx0aXNlbGVjdE9wdGlvbjtcbiAgICAgICAgaWYgKGN1cnJPcHRpb24uaXNDaGVja2VkKSB7XG4gICAgICAgICAgICB0aGlzLl9zZWxlY3RlZEl0ZW1zLnB1c2goY3Vyck9wdGlvbik7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjb25zdCBpbmRleCA9IHRoaXMuX3NlbGVjdGVkSXRlbXMuaW5kZXhPZihjdXJyT3B0aW9uKTtcbiAgICAgICAgICAgIHRoaXMuX3NlbGVjdGVkSXRlbXMuc3BsaWNlKGluZGV4LCAxKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLnByb3BhZ2F0ZUNoYW5nZSh0aGlzLl9zZWxlY3RlZEl0ZW1zLm1hcCgoaXRlbSkgPT4gaXRlbS52YWx1ZSkpO1xuICAgICAgICB0aGlzLnByb3BhZ2F0ZVRvdWNoZWQoKTtcbiAgICAgICAgdGhpcy5lY2xDaGFuZ2UuZW1pdCh0aGlzLl9zZWxlY3RlZEl0ZW1zLm1hcCgoaXRlbSkgPT4gaXRlbS52YWx1ZSkpO1xuICAgIH1cblxuICAgIHByaXZhdGUgc2VsZWN0QWxsQWN0aXZlT3B0aW9ucygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5nZXRBbGxBY3RpdmVPcHRpb25zKCkuZm9yRWFjaCgoaXRlbSkgPT4ge1xuICAgICAgICAgICAgaWYgKCFpdGVtLmlzQ2hlY2tlZCkge1xuICAgICAgICAgICAgICAgIGl0ZW0uaXNDaGVja2VkID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICB0aGlzLl9zZWxlY3RlZEl0ZW1zLnB1c2goaXRlbSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgdW5zZWxlY3RBbGxBY3RpdmVPcHRpb25zKCk6IHZvaWQge1xuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFByb3BlcnR5KHRoaXMuc2VsZWN0QWxsQ2hlY2tib3gubmF0aXZlRWxlbWVudCwgJ2NoZWNrZWQnLCBmYWxzZSk7XG4gICAgICAgIHRoaXMuX3NlbGVjdGVkSXRlbXMgPSBbXTtcbiAgICAgICAgdGhpcy5nZXRBbGxBY3RpdmVPcHRpb25zKCkuZm9yRWFjaCgoaXRlbSkgPT4ge1xuICAgICAgICAgICAgaXRlbS5pc0NoZWNrZWQgPSBmYWxzZTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRBbGxBY3RpdmVPcHRpb25zKCk6IEVjbE11bHRpc2VsZWN0T3B0aW9uQ29tcG9uZW50W10ge1xuICAgICAgICByZXR1cm4gdGhpcy5tdWx0aU9wdGlvbkNvbXBvbmVudHMuZmlsdGVyKChlbGVtKSA9PiBlbGVtLmlzQWN0aXZlKTtcbiAgICB9XG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgIHByaXZhdGUgcHJvcGFnYXRlQ2hhbmdlID0gKF86IGFueSk6IHZvaWQgPT4ge1xuICAgICAgICAvKiBlbXB0eSAqL1xuICAgIH07XG5cbiAgICBwcml2YXRlIHByb3BhZ2F0ZVRvdWNoZWQgPSAoKTogdm9pZCA9PiB7XG4gICAgICAgIC8qIGVtcHR5ICovXG4gICAgfTtcblxuICAgIHByaXZhdGUgc2hvd011bHRpc2VsZWN0RHJvcGRvd24oKTogdm9pZCB7XG4gICAgICAgIHRoaXMuaXNTaG93TXVsdGlzZWxlY3REcm9wZG93biA9IHRydWU7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBoaWRlTXVsdGlzZWxlY3REcm9wZG93bigpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5pc1Nob3dNdWx0aXNlbGVjdERyb3Bkb3duID0gZmFsc2U7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBkaXNhYmxlU2VsZWN0QWxsKCk6IHZvaWQge1xuICAgICAgICB0aGlzLnNlbGVjdEFsbC5pc0Rpc2FibGVkID0gdHJ1ZTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGVuYWJsZVNlbGVjdEFsbCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zZWxlY3RBbGwuaXNEaXNhYmxlZCA9IGZhbHNlO1xuICAgIH1cblxuICAgIHByaXZhdGUgc2hvd05vUmVzdWx0c0ZvdW5kKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmlzU2hvd05vUmVzdWx0c0ZvdW5kID0gdHJ1ZTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGhpZGVOb1Jlc3VsdHNGb3VuZCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5pc1Nob3dOb1Jlc3VsdHNGb3VuZCA9IGZhbHNlO1xuICAgIH1cblxuICAgIHByaXZhdGUgcmVzZXRDb21wb25lbnQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMubXVsdGlPcHRpb25Db21wb25lbnRzLmZvckVhY2goKGl0ZW0pID0+IHtcbiAgICAgICAgICAgIGl0ZW0uaXNDaGVja2VkID0gZmFsc2U7XG4gICAgICAgIH0pO1xuICAgICAgICBpZiAodGhpcy5zZWxlY3RBbGxDaGVja2JveCkge1xuICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRQcm9wZXJ0eSh0aGlzLnNlbGVjdEFsbENoZWNrYm94Lm5hdGl2ZUVsZW1lbnQsICdjaGVja2VkJywgZmFsc2UpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuX3NlbGVjdGVkSXRlbXMgPSBbXTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHdyaXRlVmFsdWVzKHZhbHVlczogQXJyYXk8c3RyaW5nPik6IHZvaWQge1xuICAgICAgICBpZiAodmFsdWVzKSB7XG4gICAgICAgICAgICBjb25zdCBzZWxlY3RlZEVsZW1lbnRzQXJyYXkgPSBbXTtcbiAgICAgICAgICAgIGlmICh0aGlzLm11bHRpT3B0aW9uQ29tcG9uZW50cyAmJiB0aGlzLm11bHRpT3B0aW9uQ29tcG9uZW50cy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5tdWx0aU9wdGlvbkNvbXBvbmVudHNcbiAgICAgICAgICAgICAgICAgICAgLmZpbHRlcigoaXRlbSkgPT4gdmFsdWVzLmluY2x1ZGVzKGl0ZW0udmFsdWUpICYmICFpdGVtLmRpc2FibGVkKVxuICAgICAgICAgICAgICAgICAgICAuZm9yRWFjaCgoZWwpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGVsLmlzQ2hlY2tlZCA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgICAgICBzZWxlY3RlZEVsZW1lbnRzQXJyYXkucHVzaChlbC5sYWJlbCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLl9zZWxlY3RlZEl0ZW1zLnB1c2goZWwpO1xuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgdG9nZ2xlRHJvcGRvd24oKTogdm9pZCB7XG4gICAgICAgIHRoaXMuaXNTaG93TXVsdGlzZWxlY3REcm9wZG93biA9ICF0aGlzLmlzU2hvd011bHRpc2VsZWN0RHJvcGRvd247XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBvbk9wdGlvbkFycm93RG93bkFuZFRhYihldnQ6IEtleWJvYXJkRXZlbnQsIG9wdGlvbjogRWNsTXVsdGlzZWxlY3RPcHRpb24pOiB2b2lkIHtcbiAgICAgICAgKGV2dCBhcyBLZXlib2FyZEV2ZW50KS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICBjb25zdCBpbmRleCA9IHRoaXMuZ2V0T3B0aW9uSW5kZXhCeUlkRnJvbUFjdGl2ZU9wdGlvbnMob3B0aW9uLmlkKTtcbiAgICAgICAgY29uc3QgY3VycmVudE9wdGlvbnMgPSB0aGlzLmdldEFjdGl2ZU9wdGlvbnMoKTtcbiAgICAgICAgaWYgKGluZGV4ICE9PSBjdXJyZW50T3B0aW9ucy5sZW5ndGggLSAxKSB7XG4gICAgICAgICAgICBjb25zdCBuZXh0U2libGluZ0NoZWNrYm94ID0gY3VycmVudE9wdGlvbnNbaW5kZXggKyAxXTtcbiAgICAgICAgICAgIG5leHRTaWJsaW5nQ2hlY2tib3gub25Gb2N1cygpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgaWYgKHRoaXMuY2xlYXJBbGxCdG4pIHtcbiAgICAgICAgICAgICAgICB0aGlzLnJlbmRlcmVyLnNlbGVjdFJvb3RFbGVtZW50KHRoaXMuY2xlYXJBbGxCdG4ubmF0aXZlRWxlbWVudCwgdHJ1ZSkuZm9jdXMoKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhpcy5lY2xNdWx0aXNlbGVjdElucHV0Lm9uRm9jdXMoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgb25PcHRpb25BcnJvd1VwKGV2dDogS2V5Ym9hcmRFdmVudCwgb3B0aW9uOiBFY2xNdWx0aXNlbGVjdE9wdGlvbik6IHZvaWQge1xuICAgICAgICAoZXZ0IGFzIEtleWJvYXJkRXZlbnQpLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIGNvbnN0IGluZGV4ID0gdGhpcy5nZXRPcHRpb25JbmRleEJ5SWRGcm9tQWN0aXZlT3B0aW9ucyhvcHRpb24uaWQpO1xuICAgICAgICBpZiAoaW5kZXggIT09IDApIHtcbiAgICAgICAgICAgIGNvbnN0IHByZXZTaWJsaW5nQ2hlY2tib3ggPSB0aGlzLmdldEFjdGl2ZU9wdGlvbnMoKVtpbmRleCAtIDFdO1xuICAgICAgICAgICAgcHJldlNpYmxpbmdDaGVja2JveC5vbkZvY3VzKCk7XG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy5zZWxlY3RBbGxDaGVja2JveC5uYXRpdmVFbGVtZW50LmRpc2FibGVkKSB7XG4gICAgICAgICAgICB0aGlzLnJlbmRlcmVyLnNlbGVjdFJvb3RFbGVtZW50KHRoaXMuc2VhcmNoSW5wdXQubmF0aXZlRWxlbWVudCwgdHJ1ZSkuZm9jdXMoKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMucmVuZGVyZXIuc2VsZWN0Um9vdEVsZW1lbnQodGhpcy5zZWxlY3RBbGxDaGVja2JveC5uYXRpdmVFbGVtZW50LCB0cnVlKS5mb2N1cygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRBY3RpdmVPcHRpb25zKCk6IEVjbE11bHRpc2VsZWN0T3B0aW9uQ29tcG9uZW50W10ge1xuICAgICAgICByZXR1cm4gdGhpcy5tdWx0aU9wdGlvbkNvbXBvbmVudHMgPyB0aGlzLm11bHRpT3B0aW9uQ29tcG9uZW50cy5maWx0ZXIoKGl0ZW0pID0+IGl0ZW0uaXNBY3RpdmUpIDogW107XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRPcHRpb25JbmRleEJ5SWRGcm9tQWN0aXZlT3B0aW9ucyhpZDogc3RyaW5nKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0QWN0aXZlT3B0aW9ucygpLmZpbmRJbmRleCgob3B0aW9uKSA9PiBvcHRpb24uaWQgPT09IGlkKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldFNlbGVjdEFsbElkKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB1dWlkZ2VuKCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXREcm9wZG93bklkKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLmlkICE9PSAnJyA/IGAke3RoaXMuaWR9LWRyb3Bkb3duYCA6IHV1aWRnZW4oKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldFRvZ2dsZUlkKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLmlkICE9PSAnJyA/IGAke3RoaXMuaWR9LXRvZ2dsZWAgOiB1dWlkZ2VuKCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBtb2RpZnlQYXJlbnRMYWJlbEZvckF0dHJpYnV0ZSgpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgZm9ybSA9IHRoaXMucmVuZGVyZXIucGFyZW50Tm9kZSh0aGlzLmVsUmVmLm5hdGl2ZUVsZW1lbnQpO1xuICAgICAgICBjb25zdCBsYWJlbCA9IGZvcm0/LnF1ZXJ5U2VsZWN0b3IoJy5lY2wtZm9ybS1sYWJlbCcpO1xuICAgICAgICBpZiAobGFiZWwpIHtcbiAgICAgICAgICAgIHRoaXMucmVuZGVyZXIuc2V0QXR0cmlidXRlKGxhYmVsLCAnZm9yJywgdGhpcy50b2dnbGVJZCk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCI8ZGl2IGVjbE11bHRpc2VsZWN0SW5wdXQgI2VjbE11bHRpc2VsZWN0SW5wdXQgW2lucHV0UGxhY2Vob2xkZXJdPVwibWFpbklucHV0UGxhY2Vob2xkZXJcIiBbc2VsZWN0ZWRJdGVtc109XCJzZWxlY3RlZEl0ZW1zXCJcbiAgICAobWFpbklucHV0Q2xpY2spPVwib25DbGlja01haW5JbnB1dCgkZXZlbnQpXCIgKG1haW5JbnB1dEtleWRvd24pPVwib25LZXlkb3duTWFpbklucHV0KCRldmVudClcIiBbaXNEaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgW2FyaWFMYWJlbGVkYnldPVwiYXJpYUxhYmVsZWRieVwiIFthcmlhRGVzY3JpYmVkYnldPVwiYXJpYURlc2NyaWJlZGJ5XCIgW3RvZ2dsZUxhYmVsXT1cInRvZ2dsZUxhYmVsXCIgW2FyaWFDb250cm9sc109XCJkcm9wZG93bklkXCIgW2lzSW52YWxpZF09XCJpc0ludmFsaWRcIlxuICAgIFtpc0Ryb3Bkb3duRXhwYW5kZWRdPVwiaXNTaG93TXVsdGlzZWxlY3REcm9wZG93blwiIFtlY2xTaXplXT1cImVjbFNpemVcIiBbdG9nZ2xlSWRdPVwidG9nZ2xlSWRcIj48L2Rpdj5cbjxkaXZcbiAgICBbc3R5bGUuZGlzcGxheV09XCJpc1Nob3dNdWx0aXNlbGVjdERyb3Bkb3duID8gJ2Jsb2NrJyA6ICdub25lJ1wiXG4gICAgY2xhc3M9XCJlY2wtc2VsZWN0X19tdWx0aXBsZS1kcm9wZG93biBlY2wtc2VsZWN0X19jb250YWluZXIgZWNsLXNlbGVjdF9fY29udGFpbmVyLS17e2VjbFNpemV9fVwiXG4gICAgW2lkXT1cImRyb3Bkb3duSWRcIj5cbiAgICA8aW5wdXRcbiAgICAgICAgY2xhc3M9XCJlY2wtdGV4dC1pbnB1dFwiXG4gICAgICAgIHR5cGU9XCJzZWFyY2hcIlxuICAgICAgICAjc2VhcmNoSW5wdXRcbiAgICAgICAgW3BsYWNlaG9sZGVyXT1cInNlYXJjaEZpZWxkUGxhY2Vob2xkZXJcIlxuICAgICAgICAoaW5wdXQpPVwib25TZWFyY2goJGV2ZW50LnRhcmdldClcIlxuICAgICAgICAoa2V5ZG93bi5lbnRlcik9XCJvbkVudGVyU2VhcmNoKCRldmVudClcIlxuICAgICAgICAoa2V5ZG93bi5hcnJvd3VwKT1cIm9uQXJyb3dVcFNlYXJjaCgkZXZlbnQpXCJcbiAgICAgICAgKGtleWRvd24uYXJyb3dkb3duKT1cIm9uQXJyb3dEb3duU2VhcmNoKCRldmVudClcIiAvPlxuICAgIDxkaXYgZWNsQ2hlY2tib3ggI3NlbGVjdEFsbCBjbGFzcz1cImVjbC1zZWxlY3RfX211bHRpcGxlLWFsbFwiPlxuICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgIGVjbENoZWNrYm94SW5wdXRcbiAgICAgICAgICAgICNzZWxlY3RBbGxDaGVja2JveFxuICAgICAgICAgICAgW2lkXT1cInNlbGVjdEFsbElkXCJcbiAgICAgICAgICAgIHR5cGU9XCJjaGVja2JveFwiXG4gICAgICAgICAgICAoY2xpY2spPVwib25TZWxlY3RBbGwoKVwiXG4gICAgICAgICAgICAoa2V5ZG93bi5hcnJvd3VwKT1cIm9uQXJyb3dVcFNlbGVjdEFsbCgkZXZlbnQpXCJcbiAgICAgICAgICAgIChrZXlkb3duLmFycm93ZG93bik9XCJvbkFycm93RG93blNlbGVjdEFsbCgkZXZlbnQpXCIgLz5cbiAgICAgICAgPGxhYmVsIFtmb3JdPVwic2VsZWN0QWxsSWRcIiBlY2xDaGVja2JveExhYmVsPiB7eyAnZWNsLm11bHRpc2VsZWN0LlNFTEVDVC1BTEwnIHwgdHJhbnNsYXRlIH19ICh7eyBvcHRpb25zQ291bnQgfX0pIDwvbGFiZWw+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImVjbC1zZWxlY3RfX211bHRpcGxlLW9wdGlvbnNcIj5cbiAgICAgICAgQGZvciAoaXRlbSBvZiBtdWx0aU9wdGlvbkRpcmVjdGl2ZXM7IHRyYWNrIGl0ZW0ubGFiZWwpIHtcbiAgICAgICAgICAgICAgICBAaWYgKGl0ZW0uaXNPcHRHcm91cCgpKSB7XG4gICAgICAgICAgICAgICAgICAgIDxmaWVsZHNldCBlY2xNdWx0aXNlbGVjdE9wdGdyb3VwIFtsYWJlbF09XCJpdGVtLmxhYmVsXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICBAZm9yIChlbGVtIG9mIGl0ZW0uZWNsT3B0aW9uSXRlbXM7IHRyYWNrIGVsZW0ubGFiZWwpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVjbE11bHRpc2VsZWN0T3B0aW9uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt2YWx1ZV09XCJlbGVtLnZhbHVlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cImVsZW0ubGFiZWxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiZWxlbS5kaXNhYmxlZFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtpc0NoZWNrZWRdPVwiZWxlbS5zZWxlY3RlZFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjbGFzc109XCJlbGVtLmNsYXNzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG9wdGlvbkNsaWNrKT1cIm9uT3B0aW9uU2VsZWN0ZWQoJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChvcHRpb25LZXlkb3duKT1cIm9uS2V5ZG93bk9wdGlvbigkZXZlbnQpXCI+PC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIDwvZmllbGRzZXQ+XG4gICAgICAgICAgICAgICAgfSBAZWxzZSBpZiAoIWl0ZW0uaXNPcHRHcm91cCgpKSB7XG4gICAgICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgICAgIGVjbE11bHRpc2VsZWN0T3B0aW9uXG4gICAgICAgICAgICAgICAgICAgICAgICBbdmFsdWVdPVwiaXRlbS52YWx1ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbbGFiZWxdPVwiaXRlbS5sYWJlbFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiaXRlbS5kaXNhYmxlZFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbaXNDaGVja2VkXT1cIml0ZW0uc2VsZWN0ZWRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2NsYXNzXT1cIml0ZW0uY2xhc3NcIlxuICAgICAgICAgICAgICAgICAgICAgICAgKG9wdGlvbkNsaWNrKT1cIm9uT3B0aW9uU2VsZWN0ZWQoJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAob3B0aW9uS2V5ZG93bik9XCJvbktleWRvd25PcHRpb24oJGV2ZW50KVwiPjwvZGl2PlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG5cbiAgICAgICAgQGlmIChpc1Nob3dOb1Jlc3VsdHNGb3VuZCkge1xuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImVjbC1zZWxlY3RfX211bHRpcGxlLW5vLXJlc3VsdHNcIj5cbiAgICAgICAgICAgICAgICA8c3Bhbj57eyAnZWNsLm11bHRpc2VsZWN0Lk5PLVJFU1VMVFMtRk9VTkQnIHwgdHJhbnNsYXRlIH19PC9zcGFuPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIH1cblxuICAgIDwvZGl2PlxuICAgIEBpZiAoaXNTaG93VG9vbGJhcikge1xuICAgICAgICA8ZGl2IGNsYXNzPVwiZWNsLXNlbGVjdC1tdWx0aXBsZS10b29sYmFyXCI+XG4gICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgZWNsQnV0dG9uXG4gICAgICAgICAgICAgICAgdmFyaWFudD1cInByaW1hcnlcIlxuICAgICAgICAgICAgICAgICNjbG9zZUJ0blxuICAgICAgICAgICAgICAgIChrZXlkb3duLmFycm93dXApPVwib25BcnJvd1VwQ2xvc2VDbGVhcigkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAoa2V5ZG93bi5hcnJvd2xlZnQpPVwib25BcnJvd0xlZnRDbG9zZSgkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAoa2V5ZG93bi50YWIpPVwib25UYWJDbG9zZSgkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwib25DbGlja0Nsb3NlKCRldmVudClcIj5cbiAgICAgICAgICAgICAgICB7eyAnZWNsLmNvbW1vbi5BUFBMWScgfCB0cmFuc2xhdGUgfX1cbiAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgIGVjbEJ1dHRvblxuICAgICAgICAgICAgICAgIHZhcmlhbnQ9XCJnaG9zdFwiXG4gICAgICAgICAgICAgICAgI2NsZWFyQWxsQnRuXG4gICAgICAgICAgICAgICAgKGtleWRvd24uYXJyb3d1cCk9XCJvbkFycm93VXBDbG9zZUNsZWFyKCRldmVudClcIlxuICAgICAgICAgICAgICAgIChrZXlkb3duLmFycm93cmlnaHQpPVwib25BcnJvd1JpZ2h0Q2xlYXIoJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgKGtleWRvd24uZW50ZXIpPVwib25FbnRlckNsZWFyKCRldmVudClcIlxuICAgICAgICAgICAgICAgIChjbGljayk9XCJvbkNsaWNrQ2xlYXJBbGwoJGV2ZW50KVwiPlxuICAgICAgICAgICAgICAgIHt7ICdlY2wubXVsdGlzZWxlY3QuQ0xFQVItQUxMJyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDwvZGl2PlxuICAgIH1cbjwvZGl2PlxuIl19
|
|
476
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNsLW11bHRpc2VsZWN0LWRyb3Bkb3duLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9lY2wtbXVsdGlzZWxlY3QvZWNsLW11bHRpc2VsZWN0LWRyb3Bkb3duL2VjbC1tdWx0aXNlbGVjdC1kcm9wZG93bi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvZWNsLW11bHRpc2VsZWN0L2VjbC1tdWx0aXNlbGVjdC1kcm9wZG93bi9lY2wtbXVsdGlzZWxlY3QtZHJvcGRvd24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILGdCQUFnQixFQUNoQixTQUFTLEVBRVQsVUFBVSxFQUNWLFlBQVksRUFDWixVQUFVLEVBQ1YsV0FBVyxFQUNYLFlBQVksRUFDWixLQUFLLEVBS0wsTUFBTSxFQUdOLFNBQVMsRUFDVCxZQUFZLEdBQ2YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFtQyxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3BGLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXpDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBSTVELE9BQU8sRUFFSCw2QkFBNkIsR0FFaEMsTUFBTSw0REFBNEQsQ0FBQzs7Ozs7Ozs7OztBQWNwRSxNQUFNLE9BQU8sK0JBQWdDLFNBQVEsZ0JBQWdCO0lBVWpFLElBQ0ksU0FBUztRQUNULE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQztJQUMzQixDQUFDO0lBQ0QsSUFBSSxTQUFTLENBQUMsS0FBMEI7UUFDcEMsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUM7SUFDNUIsQ0FBQztJQUVELElBQ0ksVUFB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LFxuICAgIENvbXBvbmVudCxcbiAgICBEb0NoZWNrLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIGZvcndhcmRSZWYsXG4gICAgSG9zdEJpbmRpbmcsXG4gICAgSG9zdExpc3RlbmVyLFxuICAgIElucHV0LFxuICAgIEl0ZXJhYmxlRGlmZmVyLFxuICAgIEl0ZXJhYmxlRGlmZmVycyxcbiAgICBPbkRlc3Ryb3ksXG4gICAgT25Jbml0LFxuICAgIE91dHB1dCxcbiAgICBRdWVyeUxpc3QsXG4gICAgUmVuZGVyZXIyLFxuICAgIFZpZXdDaGlsZCxcbiAgICBWaWV3Q2hpbGRyZW4sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIEZvcm1Hcm91cCwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBLZXlDb2RlIH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMnO1xuaW1wb3J0IHsgRWNsTXVsdGlzZWxlY3RPcHRpb24gfSBmcm9tICcuLi8uLi8uLi9tb2RlbC9lY2wtbXVsdGlzZWxlY3Qtb3B0aW9uLm1vZGVsJztcbmltcG9ydCB7IEVDTEJhc2VEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9lY2wtYmFzZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRWNsQ2hlY2tib3hEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9lY2wtY2hlY2tib3gnO1xuaW1wb3J0IHsgRWNsTXVsdGlzZWxlY3RJbnB1dENvbXBvbmVudCwgRWNsTXVsdGlzZWxlY3RNYWluSW5wdXRDbGlja0V2ZW50IH0gZnJvbSAnLi4vZWNsLW11bHRpc2VsZWN0LWlucHV0L2VjbC1tdWx0aXNlbGVjdC1pbnB1dC5jb21wb25lbnQnO1xuaW1wb3J0IHsgRWNsTXVsdGlzZWxlY3RPcHRpb25EaXJlY3RpdmUgfSBmcm9tICcuLi9lY2wtbXVsdGlzZWxlY3Qtb3B0aW9uLmRpcmVjdGl2ZSc7XG5pbXBvcnQge1xuICAgIEVjbE11bHRpc2VsZWN0T3B0aW9uQ2xpY2tFdmVudCxcbiAgICBFY2xNdWx0aXNlbGVjdE9wdGlvbkNvbXBvbmVudCxcbiAgICBFY2xNdWx0aXNlbGVjdE9wdGlvbktleWRvd25FdmVudCxcbn0gZnJvbSAnLi4vZWNsLW11bHRpc2VsZWN0LW9wdGlvbi9lY2wtbXVsdGlzZWxlY3Qtb3B0aW9uLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvY29tcG9uZW50LXNlbGVjdG9yXG4gICAgc2VsZWN0b3I6ICdkaXZbZWNsTXVsdGlzZWxlY3REcm9wZG93bl0nLFxuICAgIHRlbXBsYXRlVXJsOiAnZWNsLW11bHRpc2VsZWN0LWRyb3Bkb3duLmNvbXBvbmVudC5odG1sJyxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICAgICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBFY2xNdWx0aXNlbGVjdERyb3Bkb3duQ29tcG9uZW50KSxcbiAgICAgICAgICAgIG11bHRpOiB0cnVlLFxuICAgICAgICB9LFxuICAgIF0sXG59KVxuZXhwb3J0IGNsYXNzIEVjbE11bHRpc2VsZWN0RHJvcGRvd25Db21wb25lbnQgZXh0ZW5kcyBFQ0xCYXNlRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0LCBDb250cm9sVmFsdWVBY2Nlc3NvciwgRG9DaGVjaywgT25EZXN0cm95IHtcbiAgICBAVmlld0NoaWxkKCdzZWFyY2hJbnB1dCcpIHNlYXJjaElucHV0OiBFbGVtZW50UmVmO1xuICAgIEBWaWV3Q2hpbGQoJ2VjbE11bHRpc2VsZWN0SW5wdXQnKSBlY2xNdWx0aXNlbGVjdElucHV0OiBFY2xNdWx0aXNlbGVjdElucHV0Q29tcG9uZW50O1xuICAgIEBWaWV3Q2hpbGQoJ3NlbGVjdEFsbENoZWNrYm94Jykgc2VsZWN0QWxsQ2hlY2tib3g6IEVsZW1lbnRSZWY7XG4gICAgQFZpZXdDaGlsZCgnc2VsZWN0QWxsJykgc2VsZWN0QWxsOiBFY2xDaGVja2JveERpcmVjdGl2ZTtcbiAgICBAVmlld0NoaWxkKCdjbG9zZUJ0bicsIHsgcmVhZDogRWxlbWVudFJlZiB9KSBjbG9zZUJ0bjogRWxlbWVudFJlZjtcbiAgICBAVmlld0NoaWxkKCdjbGVhckFsbEJ0bicsIHsgcmVhZDogRWxlbWVudFJlZiB9KSBjbGVhckFsbEJ0bjogRWxlbWVudFJlZjtcbiAgICBAVmlld0NoaWxkcmVuKEVjbE11bHRpc2VsZWN0T3B0aW9uQ29tcG9uZW50KSBtdWx0aU9wdGlvbkNvbXBvbmVudHM6IFF1ZXJ5TGlzdDxFY2xNdWx0aXNlbGVjdE9wdGlvbkNvbXBvbmVudD47XG4gICAgQE91dHB1dCgpIGVjbENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nW10+KCk7XG5cbiAgICBASW5wdXQoeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSlcbiAgICBnZXQgaXNJbnZhbGlkKCk6IGJvb2xlYW4gfCB1bmRlZmluZWQge1xuICAgICAgICByZXR1cm4gdGhpcy5faXNJbnZhbGlkO1xuICAgIH1cbiAgICBzZXQgaXNJbnZhbGlkKHZhbHVlOiBib29sZWFuIHwgdW5kZWZpbmVkKSB7XG4gICAgICAgIHRoaXMuX2lzSW52YWxpZCA9IHZhbHVlO1xuICAgIH1cblxuICAgIEBIb3N0QmluZGluZygnY2xhc3MnKVxuICAgIGdldCBjc3NDbGFzc2VzKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBbc3VwZXIuZ2V0Q3NzQ2xhc3NlcygnZWNsLXNlbGVjdF9fbXVsdGlwbGUnKV0uam9pbignICcpLnRyaW0oKTtcbiAgICB9XG4gICAgQElucHV0KCkgbWFpbklucHV0UGxhY2Vob2xkZXIgPSAnU2VsZWN0IGFuIGl0ZW0nO1xuICAgIEBJbnB1dCgpIHNlYXJjaEZpZWxkUGxhY2Vob2xkZXIgPSAnRW50ZXIga2V5d29yZCc7XG4gICAgQElucHV0KCkgZWNsU2l6ZSA9ICdtJztcbiAgICBASW5wdXQoeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSlcbiAgICBASG9zdEJpbmRpbmcoJ2F0dHIuZGlzYWJsZWQnKVxuICAgIGdldCBkaXNhYmxlZCgpOiBib29sZWFuIHwgdW5kZWZpbmVkIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2Rpc2FibGVkIHx8IHVuZGVmaW5lZDtcbiAgICB9XG4gICAgc2V0IGRpc2FibGVkKHZhbHVlOiBib29sZWFuIHwgdW5kZWZpbmVkKSB7XG4gICAgICAgIHRoaXMuX2Rpc2FibGVkID0gdmFsdWU7XG4gICAgfVxuXG4gICAgYXJpYURlc2NyaWJlZGJ5OiBzdHJpbmcgfCB1bmRlZmluZWQgPSB1bmRlZmluZWQ7XG4gICAgYXJpYUxhYmVsZWRieTogc3RyaW5nIHwgdW5kZWZpbmVkID0gdW5kZWZpbmVkO1xuICAgIHRvZ2dsZUxhYmVsOiBzdHJpbmcgfCB1bmRlZmluZWQgPSB1bmRlZmluZWQ7XG4gICAgaWQgPSAnJztcbiAgICBpc1Nob3dOb1Jlc3VsdHNGb3VuZCA9IGZhbHNlO1xuICAgIGlzU2hvd011bHRpc2VsZWN0RHJvcGRvd24gPSBmYWxzZTtcbiAgICBtdWx0aU9wdGlvbkRpcmVjdGl2ZXM6IEVjbE11bHRpc2VsZWN0T3B0aW9uRGlyZWN0aXZlW10gPSBbXTtcbiAgICBmb3JtOiBGb3JtR3JvdXA7XG4gICAgcHJvdGVjdGVkIGRyb3Bkb3duSWQgPSAnJztcbiAgICBwcm90ZWN0ZWQgc2VsZWN0QWxsSWQgPSAnJztcbiAgICBwcm90ZWN0ZWQgdG9nZ2xlSWQgPSAnJztcbiAgICBwcml2YXRlIF9kaXNhYmxlZCA9IGZhbHNlO1xuICAgIHByaXZhdGUgX2lzSW52YWxpZCA9IGZhbHNlO1xuICAgIHByaXZhdGUgX3NlbGVjdGVkSXRlbXM6IEVjbE11bHRpc2VsZWN0T3B0aW9uW10gPSBbXTtcbiAgICBwcml2YXRlIGRpZmZlcjogSXRlcmFibGVEaWZmZXI8RWNsTXVsdGlzZWxlY3RPcHRpb25Db21wb25lbnQ+O1xuICAgIHByaXZhdGUgZGVzdHJveSQ6IFN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgU3ViamVjdDxib29sZWFuPigpO1xuICAgIHByaXZhdGUgaXNXcml0ZVZhbHVlQ2FsbGVkID0gZmFsc2U7XG4gICAgcHJpdmF0ZSB2YWx1ZXMgPSBbXTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIGVsUmVmOiBFbGVtZW50UmVmLFxuICAgICAgICBwcml2YXRlIGRpZmZlcnM6IEl0ZXJhYmxlRGlmZmVycyxcbiAgICAgICAgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyLFxuICAgICkge1xuICAgICAgICBzdXBlcigpO1xuICAgICAgICB0aGlzLmRpZmZlciA9IHRoaXMuZGlmZmVycy5maW5kKFtdKS5jcmVhdGUoKTtcbiAgICB9XG5cbiAgICBuZ0RvQ2hlY2soKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGRpZmYgPSB0aGlzLmRpZmZlci5kaWZmKHRoaXMubXVsdGlPcHRpb25Db21wb25lbnRzKTtcblxuICAgICAgICBpZiAoZGlmZikge1xuICAgICAgICAgICAgaWYgKHRoaXMuaXNXcml0ZVZhbHVlQ2FsbGVkKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5yZXNldENvbXBvbmVudCgpO1xuICAgICAgICAgICAgICAgIHRoaXMud3JpdGVWYWx1ZXModGhpcy52YWx1ZXMpO1xuICAgICAgICAgICAgICAgIHRoaXMuaXNXcml0ZVZhbHVlQ2FsbGVkID0gZmFsc2U7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHRoaXMuaW5pdFNlbGVjdGVkT3B0aW9ucygpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc2VsZWN0QWxsSWQgPSB0aGlzLmdldFNlbGVjdEFsbElkKCk7XG4gICAgICAgIHRoaXMuZHJvcGRvd25JZCA9IHRoaXMuZ2V0RHJvcGRvd25JZCgpO1xuICAgICAgICB0aGlzLnRvZ2dsZUlkID0gdGhpcy5nZXRUb2dnbGVJZCgpO1xuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMubW9kaWZ5UGFyZW50TGFiZWxGb3JBdHRyaWJ1dGUoKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZGVzdHJveSQubmV4dCh0cnVlKTtcbiAgICAgICAgdGhpcy5kZXN0cm95JC51bnN1YnNjcmliZSgpO1xuICAgIH1cblxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgcHVibGljIHdyaXRlVmFsdWUodmFsdWVzOiBhbnkpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMubXVsdGlPcHRpb25Db21wb25lbnRzKSB7XG4gICAgICAgICAgICB0aGlzLnJlc2V0Q29tcG9uZW50KCk7XG4gICAgICAgICAgICB0aGlzLndyaXRlVmFsdWVzKHZhbHVlcyk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLnZhbHVlcyA9IHZhbHVlcztcbiAgICAgICAgICAgIHRoaXMuaXNXcml0ZVZhbHVlQ2FsbGVkID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgcHVibGljIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSk6IHZvaWQge1xuICAgICAgICB0aGlzLnByb3BhZ2F0ZUNoYW5nZSA9IGZuO1xuICAgIH1cblxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgcHVibGljIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5wcm9wYWdhdGVUb3VjaGVkID0gZm47XG4gICAgfVxuXG4gICAgcHVibGljIHNldERpc2FibGVkU3RhdGUoaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICB0aGlzLl9kaXNhYmxlZCA9IGlzRGlzYWJsZWQ7XG4gICAgfVxuXG4gICAgQEhvc3RMaXN0ZW5lcignZG9jdW1lbnQ6a2V5dXAuZXNjYXBlJywgWyckZXZlbnQnXSlcbiAgICBvbkVzY2FwZUtleShldmVudDogS2V5Ym9hcmRFdmVudCk6IHZvaWQge1xuICAgICAgICB0aGlzLmhpZGVNdWx0aXNlbGVjdERyb3Bkb3duKCk7XG4gICAgfVxuXG4gICAgQEhvc3RMaXN0ZW5lcignZG9jdW1lbnQ6Y2xpY2snLCBbJyRldmVudCddKVxuICAgIG9uS2V5VXAoZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLmVsUmVmLm5hdGl2ZUVsZW1lbnQuY29udGFpbnMoZXZlbnQudGFyZ2V0KSkge1xuICAgICAgICAgICAgdGhpcy5oaWRlTXVsdGlzZWxlY3REcm9wZG93bigpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZ2V0IG9wdGlvbnNDb3VudCgpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gdGhpcy5nZXRBY3RpdmVPcHRpb25zKCkgPyB0aGlzLmdldEFjdGl2ZU9wdGlvbnMoKS5sZW5ndGggOiAwO1xuICAgIH1cblxuICAgIGdldCBzZWxlY3RlZEl0ZW1zKCk6IHN0cmluZ1tdIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3NlbGVjdGVkSXRlbXMubWFwKChpdGVtKSA9PiBpdGVtLmxhYmVsKTtcbiAgICB9XG5cbiAgICBnZXQgaXNJdGVtc1NlbGVjdGVkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fc2VsZWN0ZWRJdGVtcy5sZW5ndGggPiAwO1xuICAgIH1cblxuICAgIGdldCBpc1Nob3dUb29sYmFyKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fc2VsZWN0ZWRJdGVtcy5sZW5ndGggPiAwO1xuICAgIH1cblxuICAgIGluaXRTZWxlY3RlZE9wdGlvbnMoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3NlbGVjdGVkSXRlbXMgPSBbXTtcbiAgICAgICAgdGhpcy5tdWx0aU9wdGlvbkNvbXBvbmVudHNcbiAgICAgICAgICAgIC5maWx0ZXIoKGVsZW0pID0+IGVsZW0uaXNDaGVja2VkKVxuICAgICAgICAgICAgLmZvckVhY2goKGl0ZW0pID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLl9zZWxlY3RlZEl0ZW1zLnB1c2goaXRlbSk7XG4gICAgICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBvbkNsaWNrQ2xlYXJBbGwoZXZ0OiBFdmVudCk6IHZvaWQge1xuICAgICAgICBldnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgIHRoaXMudW5zZWxlY3RBbGxBY3RpdmVPcHRpb25zKCk7XG4gICAgICAgIHRoaXMuZWNsQ2hhbmdlLmVtaXQoW10pO1xuICAgICAgICB0aGlzLnByb3BhZ2F0ZUNoYW5nZShbXSk7XG4gICAgfVxuXG4gICAgb25FbnRlckNsZWFyKGV2dDogRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5vbkNsaWNrQ2xlYXJBbGwoZXZ0KTtcbiAgICAgICAgdGhpcy5lY2xNdWx0aXNlbGVjdElucHV0Lm9uRm9jdXMoKTtcbiAgICB9XG5cbiAgICBvbkNsaWNrQ2xvc2UoZXZ0OiBFdmVudCk6IHZvaWQge1xuICAgICAgICBldnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgdGhpcy5oaWRlTXVsdGlzZWxlY3REcm9wZG93bigpO1xuICAgIH1cblxuICAgIG9uQXJyb3dVcENsb3NlQ2xlYXIoZXZ0OiBFdmVudCk6IHZvaWQge1xuICAgICAgICBldnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgY29uc3QgY3VycmVudE9wdGlvbnMgPSB0aGlzLmdldEFjdGl2ZU9wdGlvbnMoKTtcbiAgICAgICAgY3VycmVudE9wdGlvbnNbY3VycmVudE9wdGlvbnMubGVuZ3RoIC0gMV0ub25Gb2N1cygpO1xuICAgIH1cblxuICAgIG9uQXJyb3dMZWZ0Q2xvc2UoZXZ0OiBFdmVudCk6IHZvaWQge1xuICAgICAgICBldnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZWxlY3RSb290RWxlbWVudCh0aGlzLmNsZWFyQWxsQnRuLm5hdGl2ZUVsZW1lbnQsIHRydWUpLmZvY3VzKCk7XG4gICAgfVxuXG4gICAgb25UYWJDbG9zZShldnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGV2dC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICB0aGlzLmVjbE11bHRpc2VsZWN0SW5wdXQub25Gb2N1cygpO1xuICAgIH1cblxuICAgIG9uQXJyb3dSaWdodENsZWFyKGV2dDogRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgZXZ0LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2VsZWN0Um9vdEVsZW1lbnQodGhpcy5jbG9zZUJ0bi5uYXRpdmVFbGVtZW50LCB0cnVlKS5mb2N1cygpO1xuICAgIH1cblxuICAgIG9uRW50ZXJTZWFyY2goZXZ0OiBFdmVudCk6IHZvaWQge1xuICAgICAgICBldnQucHJldmVudERlZmF1bHQoKTtcbiAgICB9XG5cbiAgICBvbkFycm93RG93blNlYXJjaChldnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGV2dC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICBjb25zdCBjdXJyZW50T3B0aW9ucyA9IHRoaXMuZ2V0QWN0aXZlT3B0aW9ucygpO1xuICAgICAgICBpZiAoY3VycmVudE9wdGlvbnMubGVuZ3RoID4gMSkge1xuICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5zZWxlY3RSb290RWxlbWVudCh0aGlzLnNlbGVjdEFsbENoZWNrYm94Lm5hdGl2ZUVsZW1lbnQsIHRydWUpLmZvY3VzKCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjdXJyZW50T3B0aW9uc1swXS5vbkZvY3VzKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvbkFycm93VXBTZWFyY2goZXZ0OiBFdmVudCk6IHZvaWQge1xuICAgICAgICBldnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgdGhpcy5oaWRlTXVsdGlzZWxlY3REcm9wZG93bigpO1xuICAgICAgICB0aGlzLmVjbE11bHRpc2VsZWN0SW5wdXQub25Gb2N1cygpO1xuICAgIH1cblxuICAgIG9uS2V5ZG93bk1haW5JbnB1dChldnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGV2dC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICB0aGlzLnNob3dNdWx0aXNlbGVjdERyb3Bkb3duKCk7XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy5yZW5kZXJlci5zZWxlY3RSb290RWxlbWVudCh0aGlzLnNlYXJjaElucHV0Lm5hdGl2ZUVsZW1lbnQsIHRydWUpLmZvY3VzKCkpO1xuICAgIH1cblxuICAgIG9uQ2xpY2tNYWluSW5wdXQoZXZ0OiBFY2xNdWx0aXNlbGVjdE1haW5JbnB1dENsaWNrRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgZXZ0LmV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIHRoaXMudG9nZ2xlRHJvcGRvd24oKTtcbiAgICB9XG5cbiAgICBvbkFycm93RG93blNlbGVjdEFsbChldnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGV2dC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICBjb25zdCBjdXJyZW50T3B0aW9ucyA9IHRoaXMuZ2V0QWN0aXZlT3B0aW9ucygpO1xuICAgICAgICBpZiAoY3VycmVudE9wdGlvbnMubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgY3VycmVudE9wdGlvbnNbMF0ub25Gb2N1cygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgb25BcnJvd1VwU2VsZWN0QWxsKGV2dDogRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgZXZ0LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2VsZWN0Um9vdEVsZW1lbnQodGhpcy5zZWFyY2hJbnB1dC5uYXRpdmVFbGVtZW50LCB0cnVlKS5mb2N1cygpXG4gICAgfVxuXG4gICAgb25TZWFyY2goaW5wdXQ6IEV2ZW50VGFyZ2V0KTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGtleXdvcmQgPSAoaW5wdXQgYXMgSFRNTElucHV0RWxlbWVudCkudmFsdWU7XG4gICAgICAgIGxldCBpc01hdGNoRm91bmQgPSBmYWxzZTtcbiAgICAgICAgaWYgKGtleXdvcmQgPT09ICcnKSB7XG4gICAgICAgICAgICB0aGlzLmVuYWJsZVNlbGVjdEFsbCgpO1xuICAgICAgICAgICAgaXNNYXRjaEZvdW5kID0gdHJ1ZTtcbiAgICAgICAgICAgIHRoaXMubXVsdGlPcHRpb25Db21wb25lbnRzLmZvckVhY2goKGl0ZW0pID0+IHtcbiAgICAgICAgICAgICAgICBpdGVtLmhpZ2hsaWdodFNlYXJjaFRleHQoJycpO1xuICAgICAgICAgICAgICAgIGl0ZW0uc2hvdygpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLm11bHRpT3B0aW9uQ29tcG9uZW50cy5mb3JFYWNoKChpdGVtKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKGl0ZW0ubGFiZWwudG9Mb3dlckNhc2UoKS5pbmRleE9mKGtleXdvcmQudG9Mb3dlckNhc2UoKSkgPCAwKSB7XG4gICAgICAgICAgICAgICAgICAgIGl0ZW0uaGlkZSgpO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIGlzTWF0Y2hGb3VuZCA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgIGl0ZW0uaGlnaGxpZ2h0U2VhcmNoVGV4dChrZXl3b3JkLnRvTG93ZXJDYXNlKCkpO1xuICAgICAgICAgICAgICAgICAgICBpdGVtLnNob3coKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHRoaXMuZGlzYWJsZVNlbGVjdEFsbCgpO1xuICAgICAgICB9XG4gICAgICAgIGlmICghaXNNYXRjaEZvdW5kKSB7XG4gICAgICAgICAgICB0aGlzLnNob3dOb1Jlc3VsdHNGb3VuZCgpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5oaWRlTm9SZXN1bHRzRm91bmQoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9uU2VsZWN0QWxsKCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5zZWxlY3RBbGxDaGVja2JveC5uYXRpdmVFbGVtZW50LmNoZWNrZWQpIHtcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0QWxsQWN0aXZlT3B0aW9ucygpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy51bnNlbGVjdEFsbEFjdGl2ZU9wdGlvbnMoKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLnByb3BhZ2F0ZVRvdWNoZWQoKTtcbiAgICAgICAgdGhpcy5lY2xDaGFuZ2UuZW1pdCh0aGlzLl9zZWxlY3RlZEl0ZW1zLm1hcCgoaXRlbSkgPT4gaXRlbS52YWx1ZSkpO1xuICAgICAgICB0aGlzLnByb3BhZ2F0ZUNoYW5nZSh0aGlzLl9zZWxlY3RlZEl0ZW1zLm1hcCgoaXRlbSkgPT4gaXRlbS52YWx1ZSkpO1xuICAgIH1cblxuICAgIG9uS2V5ZG93bk9wdGlvbihldnQ6IEVjbE11bHRpc2VsZWN0T3B0aW9uS2V5ZG93bkV2ZW50KTogdm9pZCB7XG4gICAgICAgIHN3aXRjaCAoZXZ0LmtleWJvYXJkRXZlbnQua2V5KSB7XG4gICAgICAgICAgICBjYXNlIEtleUNvZGUuQVJST1dfRE9XTjoge1xuICAgICAgICAgICAgICAgIHRoaXMub25PcHRpb25BcnJvd0Rvd25BbmRUYWIoZXZ0LmtleWJvYXJkRXZlbnQsIGV2dC5tdWx0aXNlbGVjdE9wdGlvbik7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjYXNlIEtleUNvZGUuQVJST1dfVVA6IHtcbiAgICAgICAgICAgICAgICB0aGlzLm9uT3B0aW9uQXJyb3dVcChldnQua2V5Ym9hcmRFdmVudCwgZXZ0Lm11bHRpc2VsZWN0T3B0aW9uKTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNhc2UgS2V5Q29kZS5FU0NBUEU6IHtcbiAgICAgICAgICAgICAgICB0aGlzLmhpZGVNdWx0aXNlbGVjdERyb3Bkb3duKCk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjYXNlIEtleUNvZGUuRU5URVI6IHtcbiAgICAgICAgICAgICAgICAoZXZ0LmtleWJvYXJkRXZlbnQudGFyZ2V0IGFzIEhUTUxJbnB1dEVsZW1lbnQpLmNsaWNrKCk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjYXNlIEtleUNvZGUuVEFCOiB7XG4gICAgICAgICAgICAgICAgdGhpcy5vbk9wdGlvbkFycm93RG93bkFuZFRhYihldnQua2V5Ym9hcmRFdmVudCwgZXZ0Lm11bHRpc2VsZWN0T3B0aW9uKTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGRlZmF1bHQ6IHtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9uT3B0aW9uU2VsZWN0ZWQoZXZ0OiBFY2xNdWx0aXNlbGVjdE9wdGlvbkNsaWNrRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuc2VsZWN0QWxsQ2hlY2tib3gubmF0aXZlRWxlbWVudC5jaGVja2VkKSB7XG4gICAgICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFByb3BlcnR5KHRoaXMuc2VsZWN0QWxsQ2hlY2tib3gubmF0aXZlRWxlbWVudCwgJ2NoZWNrZWQnLCBmYWxzZSk7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgY3Vyck9wdGlvbiA9IGV2dC5tdWx0aXNlbGVjdE9wdGlvbjtcbiAgICAgICAgaWYgKGN1cnJPcHRpb24uaXNDaGVja2VkKSB7XG4gICAgICAgICAgICB0aGlzLl9zZWxlY3RlZEl0ZW1zLnB1c2goY3Vyck9wdGlvbik7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjb25zdCBpbmRleCA9IHRoaXMuX3NlbGVjdGVkSXRlbXMuaW5kZXhPZihjdXJyT3B0aW9uKTtcbiAgICAgICAgICAgIHRoaXMuX3NlbGVjdGVkSXRlbXMuc3BsaWNlKGluZGV4LCAxKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLnByb3BhZ2F0ZUNoYW5nZSh0aGlzLl9zZWxlY3RlZEl0ZW1zLm1hcCgoaXRlbSkgPT4gaXRlbS52YWx1ZSkpO1xuICAgICAgICB0aGlzLnByb3BhZ2F0ZVRvdWNoZWQoKTtcbiAgICAgICAgdGhpcy5lY2xDaGFuZ2UuZW1pdCh0aGlzLl9zZWxlY3RlZEl0ZW1zLm1hcCgoaXRlbSkgPT4gaXRlbS52YWx1ZSkpO1xuICAgIH1cblxuICAgIHByaXZhdGUgc2VsZWN0QWxsQWN0aXZlT3B0aW9ucygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5nZXRBbGxBY3RpdmVPcHRpb25zKCkuZm9yRWFjaCgoaXRlbSkgPT4ge1xuICAgICAgICAgICAgaWYgKCFpdGVtLmlzQ2hlY2tlZCkge1xuICAgICAgICAgICAgICAgIGl0ZW0uaXNDaGVja2VkID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICB0aGlzLl9zZWxlY3RlZEl0ZW1zLnB1c2goaXRlbSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgdW5zZWxlY3RBbGxBY3RpdmVPcHRpb25zKCk6IHZvaWQge1xuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFByb3BlcnR5KHRoaXMuc2VsZWN0QWxsQ2hlY2tib3gubmF0aXZlRWxlbWVudCwgJ2NoZWNrZWQnLCBmYWxzZSk7XG4gICAgICAgIHRoaXMuX3NlbGVjdGVkSXRlbXMgPSBbXTtcbiAgICAgICAgdGhpcy5nZXRBbGxBY3RpdmVPcHRpb25zKCkuZm9yRWFjaCgoaXRlbSkgPT4ge1xuICAgICAgICAgICAgaXRlbS5pc0NoZWNrZWQgPSBmYWxzZTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRBbGxBY3RpdmVPcHRpb25zKCk6IEVjbE11bHRpc2VsZWN0T3B0aW9uQ29tcG9uZW50W10ge1xuICAgICAgICByZXR1cm4gdGhpcy5tdWx0aU9wdGlvbkNvbXBvbmVudHMuZmlsdGVyKChlbGVtKSA9PiBlbGVtLmlzQWN0aXZlKTtcbiAgICB9XG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgIHByaXZhdGUgcHJvcGFnYXRlQ2hhbmdlID0gKF86IGFueSk6IHZvaWQgPT4ge1xuICAgICAgICAvKiBlbXB0eSAqL1xuICAgIH07XG5cbiAgICBwcml2YXRlIHByb3BhZ2F0ZVRvdWNoZWQgPSAoKTogdm9pZCA9PiB7XG4gICAgICAgIC8qIGVtcHR5ICovXG4gICAgfTtcblxuICAgIHByaXZhdGUgc2hvd011bHRpc2VsZWN0RHJvcGRvd24oKTogdm9pZCB7XG4gICAgICAgIHRoaXMuaXNTaG93TXVsdGlzZWxlY3REcm9wZG93biA9IHRydWU7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBoaWRlTXVsdGlzZWxlY3REcm9wZG93bigpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5pc1Nob3dNdWx0aXNlbGVjdERyb3Bkb3duID0gZmFsc2U7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBkaXNhYmxlU2VsZWN0QWxsKCk6IHZvaWQge1xuICAgICAgICB0aGlzLnNlbGVjdEFsbC5pc0Rpc2FibGVkID0gdHJ1ZTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGVuYWJsZVNlbGVjdEFsbCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zZWxlY3RBbGwuaXNEaXNhYmxlZCA9IGZhbHNlO1xuICAgIH1cblxuICAgIHByaXZhdGUgc2hvd05vUmVzdWx0c0ZvdW5kKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmlzU2hvd05vUmVzdWx0c0ZvdW5kID0gdHJ1ZTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGhpZGVOb1Jlc3VsdHNGb3VuZCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5pc1Nob3dOb1Jlc3VsdHNGb3VuZCA9IGZhbHNlO1xuICAgIH1cblxuICAgIHByaXZhdGUgcmVzZXRDb21wb25lbnQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMubXVsdGlPcHRpb25Db21wb25lbnRzLmZvckVhY2goKGl0ZW0pID0+IHtcbiAgICAgICAgICAgIGl0ZW0uaXNDaGVja2VkID0gZmFsc2U7XG4gICAgICAgIH0pO1xuICAgICAgICBpZiAodGhpcy5zZWxlY3RBbGxDaGVja2JveCkge1xuICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRQcm9wZXJ0eSh0aGlzLnNlbGVjdEFsbENoZWNrYm94Lm5hdGl2ZUVsZW1lbnQsICdjaGVja2VkJywgZmFsc2UpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuX3NlbGVjdGVkSXRlbXMgPSBbXTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHdyaXRlVmFsdWVzKHZhbHVlczogQXJyYXk8c3RyaW5nPik6IHZvaWQge1xuICAgICAgICBpZiAodmFsdWVzKSB7XG4gICAgICAgICAgICBjb25zdCBzZWxlY3RlZEVsZW1lbnRzQXJyYXkgPSBbXTtcbiAgICAgICAgICAgIGlmICh0aGlzLm11bHRpT3B0aW9uQ29tcG9uZW50cyAmJiB0aGlzLm11bHRpT3B0aW9uQ29tcG9uZW50cy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5tdWx0aU9wdGlvbkNvbXBvbmVudHNcbiAgICAgICAgICAgICAgICAgICAgLmZpbHRlcigoaXRlbSkgPT4gdmFsdWVzLmluY2x1ZGVzKGl0ZW0udmFsdWUpICYmICFpdGVtLmRpc2FibGVkKVxuICAgICAgICAgICAgICAgICAgICAuZm9yRWFjaCgoZWwpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGVsLmlzQ2hlY2tlZCA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgICAgICBzZWxlY3RlZEVsZW1lbnRzQXJyYXkucHVzaChlbC5sYWJlbCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLl9zZWxlY3RlZEl0ZW1zLnB1c2goZWwpO1xuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgdG9nZ2xlRHJvcGRvd24oKTogdm9pZCB7XG4gICAgICAgIHRoaXMuaXNTaG93TXVsdGlzZWxlY3REcm9wZG93biA9ICF0aGlzLmlzU2hvd011bHRpc2VsZWN0RHJvcGRvd247XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBvbk9wdGlvbkFycm93RG93bkFuZFRhYihldnQ6IEtleWJvYXJkRXZlbnQsIG9wdGlvbjogRWNsTXVsdGlzZWxlY3RPcHRpb24pOiB2b2lkIHtcbiAgICAgICAgKGV2dCBhcyBLZXlib2FyZEV2ZW50KS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICBjb25zdCBpbmRleCA9IHRoaXMuZ2V0T3B0aW9uSW5kZXhCeUlkRnJvbUFjdGl2ZU9wdGlvbnMob3B0aW9uLmlkKTtcbiAgICAgICAgY29uc3QgY3VycmVudE9wdGlvbnMgPSB0aGlzLmdldEFjdGl2ZU9wdGlvbnMoKTtcbiAgICAgICAgaWYgKGluZGV4ICE9PSBjdXJyZW50T3B0aW9ucy5sZW5ndGggLSAxKSB7XG4gICAgICAgICAgICBjb25zdCBuZXh0U2libGluZ0NoZWNrYm94ID0gY3VycmVudE9wdGlvbnNbaW5kZXggKyAxXTtcbiAgICAgICAgICAgIG5leHRTaWJsaW5nQ2hlY2tib3gub25Gb2N1cygpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgaWYgKHRoaXMuY2xlYXJBbGxCdG4pIHtcbiAgICAgICAgICAgICAgICB0aGlzLnJlbmRlcmVyLnNlbGVjdFJvb3RFbGVtZW50KHRoaXMuY2xlYXJBbGxCdG4ubmF0aXZlRWxlbWVudCwgdHJ1ZSkuZm9jdXMoKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhpcy5lY2xNdWx0aXNlbGVjdElucHV0Lm9uRm9jdXMoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgb25PcHRpb25BcnJvd1VwKGV2dDogS2V5Ym9hcmRFdmVudCwgb3B0aW9uOiBFY2xNdWx0aXNlbGVjdE9wdGlvbik6IHZvaWQge1xuICAgICAgICAoZXZ0IGFzIEtleWJvYXJkRXZlbnQpLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIGNvbnN0IGluZGV4ID0gdGhpcy5nZXRPcHRpb25JbmRleEJ5SWRGcm9tQWN0aXZlT3B0aW9ucyhvcHRpb24uaWQpO1xuICAgICAgICBpZiAoaW5kZXggIT09IDApIHtcbiAgICAgICAgICAgIGNvbnN0IHByZXZTaWJsaW5nQ2hlY2tib3ggPSB0aGlzLmdldEFjdGl2ZU9wdGlvbnMoKVtpbmRleCAtIDFdO1xuICAgICAgICAgICAgcHJldlNpYmxpbmdDaGVja2JveC5vbkZvY3VzKCk7XG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy5zZWxlY3RBbGxDaGVja2JveC5uYXRpdmVFbGVtZW50LmRpc2FibGVkKSB7XG4gICAgICAgICAgICB0aGlzLnJlbmRlcmVyLnNlbGVjdFJvb3RFbGVtZW50KHRoaXMuc2VhcmNoSW5wdXQubmF0aXZlRWxlbWVudCwgdHJ1ZSkuZm9jdXMoKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMucmVuZGVyZXIuc2VsZWN0Um9vdEVsZW1lbnQodGhpcy5zZWxlY3RBbGxDaGVja2JveC5uYXRpdmVFbGVtZW50LCB0cnVlKS5mb2N1cygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRBY3RpdmVPcHRpb25zKCk6IEVjbE11bHRpc2VsZWN0T3B0aW9uQ29tcG9uZW50W10ge1xuICAgICAgICByZXR1cm4gdGhpcy5tdWx0aU9wdGlvbkNvbXBvbmVudHMgPyB0aGlzLm11bHRpT3B0aW9uQ29tcG9uZW50cy5maWx0ZXIoKGl0ZW0pID0+IGl0ZW0uaXNBY3RpdmUpIDogW107XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRPcHRpb25JbmRleEJ5SWRGcm9tQWN0aXZlT3B0aW9ucyhpZDogc3RyaW5nKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0QWN0aXZlT3B0aW9ucygpLmZpbmRJbmRleCgob3B0aW9uKSA9PiBvcHRpb24uaWQgPT09IGlkKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldFNlbGVjdEFsbElkKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBjcnlwdG8ucmFuZG9tVVVJRCgpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0RHJvcGRvd25JZCgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5pZCAhPT0gJycgPyBgJHt0aGlzLmlkfS1kcm9wZG93bmAgOiBjcnlwdG8ucmFuZG9tVVVJRCgpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0VG9nZ2xlSWQoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaWQgIT09ICcnID8gYCR7dGhpcy5pZH0tdG9nZ2xlYCA6IGNyeXB0by5yYW5kb21VVUlEKCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBtb2RpZnlQYXJlbnRMYWJlbEZvckF0dHJpYnV0ZSgpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgZm9ybSA9IHRoaXMucmVuZGVyZXIucGFyZW50Tm9kZSh0aGlzLmVsUmVmLm5hdGl2ZUVsZW1lbnQpO1xuICAgICAgICBjb25zdCBsYWJlbCA9IGZvcm0/LnF1ZXJ5U2VsZWN0b3IoJy5lY2wtZm9ybS1sYWJlbCcpO1xuICAgICAgICBpZiAobGFiZWwpIHtcbiAgICAgICAgICAgIHRoaXMucmVuZGVyZXIuc2V0QXR0cmlidXRlKGxhYmVsLCAnZm9yJywgdGhpcy50b2dnbGVJZCk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCI8ZGl2IGVjbE11bHRpc2VsZWN0SW5wdXQgI2VjbE11bHRpc2VsZWN0SW5wdXQgW2lucHV0UGxhY2Vob2xkZXJdPVwibWFpbklucHV0UGxhY2Vob2xkZXJcIiBbc2VsZWN0ZWRJdGVtc109XCJzZWxlY3RlZEl0ZW1zXCJcbiAgICAobWFpbklucHV0Q2xpY2spPVwib25DbGlja01haW5JbnB1dCgkZXZlbnQpXCIgKG1haW5JbnB1dEtleWRvd24pPVwib25LZXlkb3duTWFpbklucHV0KCRldmVudClcIiBbaXNEaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgW2FyaWFMYWJlbGVkYnldPVwiYXJpYUxhYmVsZWRieVwiIFthcmlhRGVzY3JpYmVkYnldPVwiYXJpYURlc2NyaWJlZGJ5XCIgW3RvZ2dsZUxhYmVsXT1cInRvZ2dsZUxhYmVsXCIgW2FyaWFDb250cm9sc109XCJkcm9wZG93bklkXCIgW2lzSW52YWxpZF09XCJpc0ludmFsaWRcIlxuICAgIFtpc0Ryb3Bkb3duRXhwYW5kZWRdPVwiaXNTaG93TXVsdGlzZWxlY3REcm9wZG93blwiIFtlY2xTaXplXT1cImVjbFNpemVcIiBbdG9nZ2xlSWRdPVwidG9nZ2xlSWRcIj48L2Rpdj5cbjxkaXZcbiAgICBbc3R5bGUuZGlzcGxheV09XCJpc1Nob3dNdWx0aXNlbGVjdERyb3Bkb3duID8gJ2Jsb2NrJyA6ICdub25lJ1wiXG4gICAgY2xhc3M9XCJlY2wtc2VsZWN0X19tdWx0aXBsZS1kcm9wZG93biBlY2wtc2VsZWN0X19jb250YWluZXIgZWNsLXNlbGVjdF9fY29udGFpbmVyLS17e2VjbFNpemV9fVwiXG4gICAgW2lkXT1cImRyb3Bkb3duSWRcIj5cbiAgICA8aW5wdXRcbiAgICAgICAgY2xhc3M9XCJlY2wtdGV4dC1pbnB1dFwiXG4gICAgICAgIHR5cGU9XCJzZWFyY2hcIlxuICAgICAgICAjc2VhcmNoSW5wdXRcbiAgICAgICAgW3BsYWNlaG9sZGVyXT1cInNlYXJjaEZpZWxkUGxhY2Vob2xkZXJcIlxuICAgICAgICAoaW5wdXQpPVwib25TZWFyY2goJGV2ZW50LnRhcmdldClcIlxuICAgICAgICAoa2V5ZG93bi5lbnRlcik9XCJvbkVudGVyU2VhcmNoKCRldmVudClcIlxuICAgICAgICAoa2V5ZG93bi5hcnJvd3VwKT1cIm9uQXJyb3dVcFNlYXJjaCgkZXZlbnQpXCJcbiAgICAgICAgKGtleWRvd24uYXJyb3dkb3duKT1cIm9uQXJyb3dEb3duU2VhcmNoKCRldmVudClcIiAvPlxuICAgIDxkaXYgZWNsQ2hlY2tib3ggI3NlbGVjdEFsbCBjbGFzcz1cImVjbC1zZWxlY3RfX211bHRpcGxlLWFsbFwiPlxuICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgIGVjbENoZWNrYm94SW5wdXRcbiAgICAgICAgICAgICNzZWxlY3RBbGxDaGVja2JveFxuICAgICAgICAgICAgW2lkXT1cInNlbGVjdEFsbElkXCJcbiAgICAgICAgICAgIHR5cGU9XCJjaGVja2JveFwiXG4gICAgICAgICAgICAoY2xpY2spPVwib25TZWxlY3RBbGwoKVwiXG4gICAgICAgICAgICAoa2V5ZG93bi5hcnJvd3VwKT1cIm9uQXJyb3dVcFNlbGVjdEFsbCgkZXZlbnQpXCJcbiAgICAgICAgICAgIChrZXlkb3duLmFycm93ZG93bik9XCJvbkFycm93RG93blNlbGVjdEFsbCgkZXZlbnQpXCIgLz5cbiAgICAgICAgPGxhYmVsIFtmb3JdPVwic2VsZWN0QWxsSWRcIiBlY2xDaGVja2JveExhYmVsPiB7eyAnZWNsLm11bHRpc2VsZWN0LlNFTEVDVC1BTEwnIHwgdHJhbnNsYXRlIH19ICh7eyBvcHRpb25zQ291bnQgfX0pIDwvbGFiZWw+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImVjbC1zZWxlY3RfX211bHRpcGxlLW9wdGlvbnNcIj5cbiAgICAgICAgQGZvciAoaXRlbSBvZiBtdWx0aU9wdGlvbkRpcmVjdGl2ZXM7IHRyYWNrIGl0ZW0ubGFiZWwpIHtcbiAgICAgICAgICAgICAgICBAaWYgKGl0ZW0uaXNPcHRHcm91cCgpKSB7XG4gICAgICAgICAgICAgICAgICAgIDxmaWVsZHNldCBlY2xNdWx0aXNlbGVjdE9wdGdyb3VwIFtsYWJlbF09XCJpdGVtLmxhYmVsXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICBAZm9yIChlbGVtIG9mIGl0ZW0uZWNsT3B0aW9uSXRlbXM7IHRyYWNrIGVsZW0ubGFiZWwpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVjbE11bHRpc2VsZWN0T3B0aW9uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt2YWx1ZV09XCJlbGVtLnZhbHVlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cImVsZW0ubGFiZWxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiZWxlbS5kaXNhYmxlZFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtpc0NoZWNrZWRdPVwiZWxlbS5zZWxlY3RlZFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjbGFzc109XCJlbGVtLmNsYXNzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG9wdGlvbkNsaWNrKT1cIm9uT3B0aW9uU2VsZWN0ZWQoJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChvcHRpb25LZXlkb3duKT1cIm9uS2V5ZG93bk9wdGlvbigkZXZlbnQpXCI+PC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIDwvZmllbGRzZXQ+XG4gICAgICAgICAgICAgICAgfSBAZWxzZSBpZiAoIWl0ZW0uaXNPcHRHcm91cCgpKSB7XG4gICAgICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgICAgIGVjbE11bHRpc2VsZWN0T3B0aW9uXG4gICAgICAgICAgICAgICAgICAgICAgICBbdmFsdWVdPVwiaXRlbS52YWx1ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbbGFiZWxdPVwiaXRlbS5sYWJlbFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiaXRlbS5kaXNhYmxlZFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbaXNDaGVja2VkXT1cIml0ZW0uc2VsZWN0ZWRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2NsYXNzXT1cIml0ZW0uY2xhc3NcIlxuICAgICAgICAgICAgICAgICAgICAgICAgKG9wdGlvbkNsaWNrKT1cIm9uT3B0aW9uU2VsZWN0ZWQoJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAob3B0aW9uS2V5ZG93bik9XCJvbktleWRvd25PcHRpb24oJGV2ZW50KVwiPjwvZGl2PlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG5cbiAgICAgICAgQGlmIChpc1Nob3dOb1Jlc3VsdHNGb3VuZCkge1xuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImVjbC1zZWxlY3RfX211bHRpcGxlLW5vLXJlc3VsdHNcIj5cbiAgICAgICAgICAgICAgICA8c3Bhbj57eyAnZWNsLm11bHRpc2VsZWN0Lk5PLVJFU1VMVFMtRk9VTkQnIHwgdHJhbnNsYXRlIH19PC9zcGFuPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIH1cblxuICAgIDwvZGl2PlxuICAgIEBpZiAoaXNTaG93VG9vbGJhcikge1xuICAgICAgICA8ZGl2IGNsYXNzPVwiZWNsLXNlbGVjdC1tdWx0aXBsZS10b29sYmFyXCI+XG4gICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgZWNsQnV0dG9uXG4gICAgICAgICAgICAgICAgdmFyaWFudD1cInByaW1hcnlcIlxuICAgICAgICAgICAgICAgICNjbG9zZUJ0blxuICAgICAgICAgICAgICAgIChrZXlkb3duLmFycm93dXApPVwib25BcnJvd1VwQ2xvc2VDbGVhcigkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAoa2V5ZG93bi5hcnJvd2xlZnQpPVwib25BcnJvd0xlZnRDbG9zZSgkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAoa2V5ZG93bi50YWIpPVwib25UYWJDbG9zZSgkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwib25DbGlja0Nsb3NlKCRldmVudClcIj5cbiAgICAgICAgICAgICAgICB7eyAnZWNsLmNvbW1vbi5BUFBMWScgfCB0cmFuc2xhdGUgfX1cbiAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgIGVjbEJ1dHRvblxuICAgICAgICAgICAgICAgIHZhcmlhbnQ9XCJnaG9zdFwiXG4gICAgICAgICAgICAgICAgI2NsZWFyQWxsQnRuXG4gICAgICAgICAgICAgICAgKGtleWRvd24uYXJyb3d1cCk9XCJvbkFycm93VXBDbG9zZUNsZWFyKCRldmVudClcIlxuICAgICAgICAgICAgICAgIChrZXlkb3duLmFycm93cmlnaHQpPVwib25BcnJvd1JpZ2h0Q2xlYXIoJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgKGtleWRvd24uZW50ZXIpPVwib25FbnRlckNsZWFyKCRldmVudClcIlxuICAgICAgICAgICAgICAgIChjbGljayk9XCJvbkNsaWNrQ2xlYXJBbGwoJGV2ZW50KVwiPlxuICAgICAgICAgICAgICAgIHt7ICdlY2wubXVsdGlzZWxlY3QuQ0xFQVItQUxMJyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDwvZGl2PlxuICAgIH1cbjwvZGl2PlxuIl19
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { Component, EventEmitter, HostBinding, Input, Output, ViewChild, booleanAttribute } from '@angular/core';
|
|
2
2
|
import { Subject } from 'rxjs';
|
|
3
|
-
import { v4 as uuidgen } from 'uuid';
|
|
4
3
|
import { ECLBaseDirective } from '../../ecl-base.directive';
|
|
5
4
|
import { EclCheckboxDirective } from '../../ecl-checkbox';
|
|
6
5
|
import * as i0 from "@angular/core";
|
|
@@ -85,7 +84,7 @@ export class EclMultiselectOptionComponent extends ECLBaseDirective {
|
|
|
85
84
|
const res = this.label.replace(re, '<b>$&</b>');
|
|
86
85
|
}
|
|
87
86
|
createId() {
|
|
88
|
-
return
|
|
87
|
+
return crypto.randomUUID();
|
|
89
88
|
}
|
|
90
89
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: EclMultiselectOptionComponent, deps: [{ token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
91
90
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "18.0.0", type: EclMultiselectOptionComponent, selector: "div[eclMultiselectOption]", inputs: { value: "value", label: "label", disabled: ["disabled", "disabled", booleanAttribute], isChecked: "isChecked" }, outputs: { optionClick: "optionClick", optionKeydown: "optionKeydown" }, host: { properties: { "class.ecl-checkbox--disabled": "this.disabled", "attr.disabled": "this.disabled", "style.display": "this.display", "class": "this.cssClasses" } }, viewQueries: [{ propertyName: "eclCheckboxInput", first: true, predicate: ["checkboxInput"], descendants: true }], usesInheritance: true, usesOnChanges: true, hostDirectives: [{ directive: i1.EclCheckboxDirective }], ngImport: i0, template: "<input\n eclCheckboxInput\n type=\"checkbox\"\n [id]=\"id\"\n [value]=\"value\"\n (click)=\"onOptionClick()\"\n (keydown)=\"onOptionKeydown($event)\"\n [checked]=\"isChecked\"\n [disabled]=\"disabled\"\n #checkboxInput />\n<label [for]=\"id\" eclCheckboxLabel><span [innerHTML]=\"label | boldText: keyword\"></span></label>\n", dependencies: [{ kind: "component", type: i2.EclCheckboxLabelComponent, selector: "label[eclCheckboxLabel]", inputs: ["isInvalid", "isDisabled", "isRequired"] }, { kind: "directive", type: i3.EclCheckboxInputDirective, selector: "input[eclCheckboxInput]" }, { kind: "pipe", type: i4.BoldTextPipe, name: "boldText" }] }); }
|
|
@@ -122,4 +121,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImpor
|
|
|
122
121
|
}], isChecked: [{
|
|
123
122
|
type: Input
|
|
124
123
|
}] } });
|
|
125
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
124
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNsLW11bHRpc2VsZWN0LW9wdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvZWNsLW11bHRpc2VsZWN0L2VjbC1tdWx0aXNlbGVjdC1vcHRpb24vZWNsLW11bHRpc2VsZWN0LW9wdGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvZWNsLW11bHRpc2VsZWN0L2VjbC1tdWx0aXNlbGVjdC1vcHRpb24vZWNsLW11bHRpc2VsZWN0LW9wdGlvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFjLFlBQVksRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFnQyxNQUFNLEVBQ3ZGLFNBQVMsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsRSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRS9CLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzVELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDOzs7Ozs7QUFFMUQsTUFBTSxPQUFPLDhCQUE4QjtJQUN2QyxZQUFtQixpQkFBdUM7UUFBdkMsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFzQjtJQUFHLENBQUM7Q0FDakU7QUFFRCxNQUFNLE9BQU8sZ0NBQWdDO0lBQ3pDLFlBQ1csaUJBQXVDLEVBQ3ZDLGFBQTRCO1FBRDVCLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBc0I7UUFDdkMsa0JBQWEsR0FBYixhQUFhLENBQWU7SUFDcEMsQ0FBQztDQUNQO0FBT0QsTUFBTSxPQUFPLDZCQUE4QixTQUFRLGdCQUFnQjtJQUkvRCxJQUNJLEtBQUssQ0FBQyxLQUFhO1FBQ25CLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO0lBQ3hCLENB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QUFnQixpZ0JDdkN4QyxrV0FXQTs7MkZEWWEsNkJBQTZCO2tCQU56QyxTQUFTOytCQUVJLDJCQUEyQixrQkFFckIsQ0FBQyxvQkFBb0IsQ0FBQzs4RUFHVixnQkFBZ0I7c0JBQTNDLFNBQVM7dUJBQUMsZUFBZTtnQkFJdEIsS0FBSztzQkFEUixLQUFLO2dCQVNHLEtBQUs7c0JBQWIsS0FBSztnQkFNTixRQUFRO3NCQUhQLEtBQUs7dUJBQUMsRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUU7O3NCQUNyQyxXQUFXO3VCQUFDLDhCQUE4Qjs7c0JBQzFDLFdBQVc7dUJBQUMsZUFBZTtnQkFHbEIsV0FBVztzQkFBcEIsTUFBTTtnQkFDRyxhQUFhO3NCQUF0QixNQUFNO2dCQUUrQixPQUFPO3NCQUE1QyxXQUFXO3VCQUFDLGVBQWU7Z0JBR3hCLFVBQVU7c0JBRGIsV0FBVzt1QkFBQyxPQUFPO2dCQU1oQixTQUFTO3NCQURaLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSG9zdEJpbmRpbmcsIElucHV0LCBPbkNoYW5nZXMsIE9uRGVzdHJveSwgT25Jbml0LCBPdXRwdXQsXG4gICAgUmVuZGVyZXIyLCBWaWV3Q2hpbGQsIGJvb2xlYW5BdHRyaWJ1dGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEVjbE11bHRpc2VsZWN0T3B0aW9uIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWwvZWNsLW11bHRpc2VsZWN0LW9wdGlvbi5tb2RlbCc7XG5pbXBvcnQgeyBFQ0xCYXNlRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZWNsLWJhc2UuZGlyZWN0aXZlJztcbmltcG9ydCB7IEVjbENoZWNrYm94RGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZWNsLWNoZWNrYm94JztcblxuZXhwb3J0IGNsYXNzIEVjbE11bHRpc2VsZWN0T3B0aW9uQ2xpY2tFdmVudCB7XG4gICAgY29uc3RydWN0b3IocHVibGljIG11bHRpc2VsZWN0T3B0aW9uOiBFY2xNdWx0aXNlbGVjdE9wdGlvbikge31cbn1cblxuZXhwb3J0IGNsYXNzIEVjbE11bHRpc2VsZWN0T3B0aW9uS2V5ZG93bkV2ZW50IHtcbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHVibGljIG11bHRpc2VsZWN0T3B0aW9uOiBFY2xNdWx0aXNlbGVjdE9wdGlvbixcbiAgICAgICAgcHVibGljIGtleWJvYXJkRXZlbnQ6IEtleWJvYXJkRXZlbnQsXG4gICAgKSB7fVxufVxuQENvbXBvbmVudCh7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9jb21wb25lbnQtc2VsZWN0b3JcbiAgICBzZWxlY3RvcjogJ2RpdltlY2xNdWx0aXNlbGVjdE9wdGlvbl0nLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9lY2wtbXVsdGlzZWxlY3Qtb3B0aW9uLmNvbXBvbmVudC5odG1sJyxcbiAgICBob3N0RGlyZWN0aXZlczogW0VjbENoZWNrYm94RGlyZWN0aXZlXSxcbn0pXG5leHBvcnQgY2xhc3MgRWNsTXVsdGlzZWxlY3RPcHRpb25Db21wb25lbnQgZXh0ZW5kcyBFQ0xCYXNlRGlyZWN0aXZlIGltcGxlbWVudHMgRWNsTXVsdGlzZWxlY3RPcHRpb24sIE9uQ2hhbmdlcywgT25EZXN0cm95LCBPbkluaXQge1xuICAgIEBWaWV3Q2hpbGQoJ2NoZWNrYm94SW5wdXQnKSBlY2xDaGVja2JveElucHV0OiBFbGVtZW50UmVmO1xuXG4gICAga2V5d29yZCA9ICcnO1xuICAgIEBJbnB1dCgpXG4gICAgc2V0IHZhbHVlKHZhbHVlOiBzdHJpbmcpIHtcbiAgICAgICAgdGhpcy5fdmFsdWUgPSB2YWx1ZTtcbiAgICB9XG5cbiAgICBnZXQgdmFsdWUoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3ZhbHVlO1xuICAgIH1cblxuICAgIEBJbnB1dCgpIGxhYmVsOiBzdHJpbmc7XG4gICAgY2hhbmdlcyA9IG5ldyBTdWJqZWN0KCk7XG5cbiAgICBASW5wdXQoeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSlcbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmVjbC1jaGVja2JveC0tZGlzYWJsZWQnKVxuICAgIEBIb3N0QmluZGluZygnYXR0ci5kaXNhYmxlZCcpXG4gICAgZGlzYWJsZWQgPSBmYWxzZTtcblxuICAgIEBPdXRwdXQoKSBvcHRpb25DbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8RWNsTXVsdGlzZWxlY3RPcHRpb25DbGlja0V2ZW50PigpO1xuICAgIEBPdXRwdXQoKSBvcHRpb25LZXlkb3duID0gbmV3IEV2ZW50RW1pdHRlcjxFY2xNdWx0aXNlbGVjdE9wdGlvbktleWRvd25FdmVudD4oKTtcblxuICAgIEBIb3N0QmluZGluZygnc3R5bGUuZGlzcGxheScpIHByaXZhdGUgZGlzcGxheSA9ICdmbGV4JztcblxuICAgIEBIb3N0QmluZGluZygnY2xhc3MnKVxuICAgIGdldCBjc3NDbGFzc2VzKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBbc3VwZXIuZ2V0Q3NzQ2xhc3NlcygnZWNsLWNoZWNrYm94JyldLmpvaW4oJyAnKS50cmltKCk7XG4gICAgfVxuXG4gICAgQElucHV0KClcbiAgICBnZXQgaXNDaGVja2VkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fY2hlY2tlZDtcbiAgICB9XG5cbiAgICBzZXQgaXNDaGVja2VkKHZhbHVlOiBib29sZWFuKSB7XG4gICAgICAgIHRoaXMuX2NoZWNrZWQgPSB2YWx1ZTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9pZCA9ICcnO1xuICAgIHByaXZhdGUgX2NoZWNrZWQgPSBmYWxzZTtcbiAgICBwcml2YXRlIF92YWx1ZSA9ICcnO1xuXG4gICAgY29uc3RydWN0b3IoIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMiApIHtcbiAgICAgICAgc3VwZXIoKTtcbiAgICB9XG5cbiAgICBnZXQgaWQoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2lkO1xuICAgIH1cblxuICAgIGdldCBpc0FjdGl2ZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZGlzcGxheSA9PT0gJ2ZsZXgnICYmICF0aGlzLmRpc2FibGVkO1xuICAgIH1cblxuICAgIG5nT25DaGFuZ2VzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNoYW5nZXMubmV4dCh0aGlzLmxhYmVsKTtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5faWQgPSB0aGlzLmNyZWF0ZUlkKCk7XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHRoaXMuY2hhbmdlcy5jb21wbGV0ZSgpO1xuICAgIH1cblxuICAgIG9uT3B0aW9uQ2xpY2soKTogdm9pZCB7XG4gICAgICAgIHRoaXMuaXNDaGVja2VkID0gIXRoaXMuaXNDaGVja2VkO1xuICAgICAgICB0aGlzLm9wdGlvbkNsaWNrLmVtaXQobmV3IEVjbE11bHRpc2VsZWN0T3B0aW9uQ2xpY2tFdmVudCh0aGlzKSk7XG4gICAgfVxuXG4gICAgb25PcHRpb25LZXlkb3duKGV2dDogS2V5Ym9hcmRFdmVudCk6IHZvaWQge1xuICAgICAgICB0aGlzLm9wdGlvbktleWRvd24uZW1pdChuZXcgRWNsTXVsdGlzZWxlY3RPcHRpb25LZXlkb3duRXZlbnQodGhpcywgZXZ0KSk7XG4gICAgfVxuXG4gICAgb25Gb2N1cygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZWxlY3RSb290RWxlbWVudCh0aGlzLmVjbENoZWNrYm94SW5wdXQubmF0aXZlRWxlbWVudCwgdHJ1ZSkuZm9jdXMoKTtcbiAgICB9XG5cbiAgICBzaG93KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmRpc3BsYXkgPSAnZmxleCc7XG4gICAgfVxuXG4gICAgaGlkZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kaXNwbGF5ID0gJ25vbmUnO1xuICAgIH1cblxuICAgIGhpZ2hsaWdodFNlYXJjaFRleHQoa2V5d29yZDogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIHRoaXMua2V5d29yZCA9IGtleXdvcmQ7XG4gICAgICAgIGNvbnN0IHJlID0gbmV3IFJlZ0V4cChrZXl3b3JkLCAnZ2knKTtcbiAgICAgICAgY29uc3QgcmVzID0gdGhpcy5sYWJlbC5yZXBsYWNlKHJlLCAnPGI+JCY8L2I+Jyk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjcmVhdGVJZCgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gY3J5cHRvLnJhbmRvbVVVSUQoKTtcbiAgICB9XG59XG4iLCI8aW5wdXRcbiAgICBlY2xDaGVja2JveElucHV0XG4gICAgdHlwZT1cImNoZWNrYm94XCJcbiAgICBbaWRdPVwiaWRcIlxuICAgIFt2YWx1ZV09XCJ2YWx1ZVwiXG4gICAgKGNsaWNrKT1cIm9uT3B0aW9uQ2xpY2soKVwiXG4gICAgKGtleWRvd24pPVwib25PcHRpb25LZXlkb3duKCRldmVudClcIlxuICAgIFtjaGVja2VkXT1cImlzQ2hlY2tlZFwiXG4gICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAjY2hlY2tib3hJbnB1dCAvPlxuPGxhYmVsIFtmb3JdPVwiaWRcIiBlY2xDaGVja2JveExhYmVsPjxzcGFuIFtpbm5lckhUTUxdPVwibGFiZWwgfCBib2xkVGV4dDoga2V5d29yZFwiPjwvc3Bhbj48L2xhYmVsPlxuIl19
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Component, HostBinding, afterNextRender } from '@angular/core';
|
|
2
|
-
import { ECLBaseDirective } from '../../ecl-base.directive';
|
|
3
2
|
import { Subject } from 'rxjs';
|
|
4
3
|
import { takeUntil } from 'rxjs/operators';
|
|
4
|
+
import { ECLBaseDirective } from '../../ecl-base.directive';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
6
|
import * as i1 from "@angular/cdk/layout";
|
|
7
7
|
export class EclSiteHeaderEnvironmentComponent extends ECLBaseDirective {
|
|
@@ -16,17 +16,19 @@ export class EclSiteHeaderEnvironmentComponent extends ECLBaseDirective {
|
|
|
16
16
|
this.destroy$ = new Subject();
|
|
17
17
|
this.isMobile = false;
|
|
18
18
|
afterNextRender(() => {
|
|
19
|
+
const el = this.el.nativeElement;
|
|
20
|
+
this.parentEl = this.renderer.parentNode(el);
|
|
21
|
+
if (this.parentEl) {
|
|
22
|
+
this.renderer.setStyle(this.parentEl, 'display', 'flex');
|
|
23
|
+
this.renderer.setStyle(this.parentEl, 'alignItems', 'center');
|
|
24
|
+
this.renderer.setStyle(this.parentEl, 'position', 'relative');
|
|
25
|
+
}
|
|
19
26
|
this.observeBreakpointChanges();
|
|
20
27
|
});
|
|
21
28
|
}
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
this.
|
|
25
|
-
if (this.parentEl) {
|
|
26
|
-
this.renderer.setStyle(this.parentEl, 'display', 'flex');
|
|
27
|
-
this.renderer.setStyle(this.parentEl, 'alignItems', 'center');
|
|
28
|
-
this.renderer.setStyle(this.parentEl, 'position', 'relative');
|
|
29
|
-
}
|
|
29
|
+
ngOnDestroy() {
|
|
30
|
+
this.destroy$.next(true);
|
|
31
|
+
this.destroy$.unsubscribe();
|
|
30
32
|
}
|
|
31
33
|
observeBreakpointChanges() {
|
|
32
34
|
this.cdkBreakpointObserver
|
|
@@ -64,4 +66,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImpor
|
|
|
64
66
|
type: HostBinding,
|
|
65
67
|
args: ['class']
|
|
66
68
|
}] } });
|
|
67
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
69
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNsLXNpdGUtaGVhZGVyLWVudmlyb25tZW50LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9lY2wtc2l0ZS1oZWFkZXIvZWNsLXNpdGUtaGVhZGVyLWVudmlyb25tZW50L2VjbC1zaXRlLWhlYWRlci1lbnZpcm9ubWVudC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFNBQVMsRUFBYyxXQUFXLEVBQXdCLGVBQWUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxRyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7O0FBeUI1RCxNQUFNLE9BQU8saUNBQWtDLFNBQVEsZ0JBQWdCO0lBQ25FLElBQ0ksVUFBVTtRQUNWLE9BQU8sQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLEVBQUUsQ0FBQyxFQUFFLHFEQUFxRCxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3RHLENBQUM7SUFLRCxZQUNZLEVBQWMsRUFDZCxxQkFBeUMsRUFDekMsUUFBbUI7UUFFM0IsS0FBSyxFQUFFLENBQUM7UUFKQSxPQUFFLEdBQUYsRUFBRSxDQUFZO1FBQ2QsMEJBQXFCLEdBQXJCLHFCQUFxQixDQUFvQjtRQUN6QyxhQUFRLEdBQVIsUUFBUSxDQUFXO1FBUHZCLGFBQVEsR0FBcUIsSUFBSSxPQUFPLEVBQVcsQ0FBQztRQUNwRCxhQUFRLEdBQUcsS0FBSyxDQUFDO1FBU3JCLGVBQWUsQ0FBQyxHQUFHLEVBQUU7WUFDakIsTUFBTSxFQUFFLEdBQWdCLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDO1lBQzlDLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDLENBQUM7WUFFN0MsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7Z0JBQ2hCLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsU0FBUyxFQUFFLE1BQU0sQ0FBQyxDQUFDO2dCQUN6RCxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLFlBQVksRUFBRSxRQUFRLENBQUMsQ0FBQztnQkFDOUQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxVQUFVLEVBQUUsVUFBVSxDQUFDLENBQUM7WUFDbEUsQ0FBQztZQUNELElBQUksQ0FBQyx3QkFBd0IsRUFBRSxDQUFDO1FBQ3BDLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELFdBQVc7UUFDUCxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN6QixJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ2hDLENBQUM7SUFFTyx3QkFBd0I7UUFDNUIsSUFBSSxDQUFDLHFCQUFxQjthQUNyQixPQUFPLENBQUMsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO2FBQy9CLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO2FBQzlCLFNBQVMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO1lBQ2xCLElBQUksQ0FBQyxRQUFRLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQztZQUMvQixJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztnQkFDaEIsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQ3hCLENBQUM7aUJBQU0sQ0FBQztnQkFDSixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDekIsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ1gsQ0FBQztJQUVPLFlBQVk7UUFDaEIsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDaEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxTQUFTLEVBQUUsT0FBTyxDQUFDLENBQUM7WUFDMUQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLEVBQUUsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQ3BFLENBQUM7SUFDTCxDQUFDO0lBRU8sYUFBYTtRQUNqQixJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNoQixJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLFNBQVMsRUFBRSxNQUFNLENBQUMsQ0FBQztZQUN6RCxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsRUFBRSxPQUFPLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDbkUsQ0FBQztJQUNMLENBQUM7OEdBM0RRLGlDQUFpQztrR0FBakMsaUNBQWlDLCtJQXBCaEMsMkJBQTJCOzsyRkFvQjVCLGlDQUFpQztrQkF2QjdDLFNBQVM7K0JBRUksNEJBQTRCLFlBQzVCLDJCQUEyQjt3SUFzQmpDLFVBQVU7c0JBRGIsV0FBVzt1QkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQnJlYWtwb2ludE9ic2VydmVyIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2xheW91dCc7XG5pbXBvcnQgeyBDb21wb25lbnQsIEVsZW1lbnRSZWYsIEhvc3RCaW5kaW5nLCBPbkRlc3Ryb3ksIFJlbmRlcmVyMiwgYWZ0ZXJOZXh0UmVuZGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBFQ0xCYXNlRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZWNsLWJhc2UuZGlyZWN0aXZlJztcblxuQENvbXBvbmVudCh7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9jb21wb25lbnQtc2VsZWN0b3JcbiAgICBzZWxlY3RvcjogJ1tlY2xTaXRlSGVhZGVyRW52aXJvbm1lbnRdJyxcbiAgICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAgIHN0eWxlczogW1xuICAgICAgICBgXG4gICAgICAgICAgICA6aG9zdCB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAuM3JlbTtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjY7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC0xMGRlZyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAbWVkaWEgcHJpbnQge1xuICAgICAgICAgICAgICAgIDpob3N0IHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIGAsXG4gICAgXSxcbn0pXG5leHBvcnQgY2xhc3MgRWNsU2l0ZUhlYWRlckVudmlyb25tZW50Q29tcG9uZW50IGV4dGVuZHMgRUNMQmFzZURpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcycpXG4gICAgZ2V0IGNzc0NsYXNzZXMoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIFtzdXBlci5nZXRDc3NDbGFzc2VzKCcnKSwgJ2VjbC11LXR5cGUteGwgZWNsLXUtYmctZXJyb3IgZWNsLXUtdHlwZS1jb2xvci13aGl0ZSddLmpvaW4oJyAnKTtcbiAgICB9XG4gICAgcHJpdmF0ZSBkZXN0cm95JDogU3ViamVjdDxib29sZWFuPiA9IG5ldyBTdWJqZWN0PGJvb2xlYW4+KCk7XG4gICAgcHJpdmF0ZSBpc01vYmlsZSA9IGZhbHNlO1xuICAgIHByaXZhdGUgcGFyZW50RWw6IEhUTUxFbGVtZW50O1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgZWw6IEVsZW1lbnRSZWYsXG4gICAgICAgIHByaXZhdGUgY2RrQnJlYWtwb2ludE9ic2VydmVyOiBCcmVha3BvaW50T2JzZXJ2ZXIsXG4gICAgICAgIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMixcbiAgICApIHtcbiAgICAgICAgc3VwZXIoKTtcbiAgICAgICAgYWZ0ZXJOZXh0UmVuZGVyKCgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGVsOiBIVE1MRWxlbWVudCA9IHRoaXMuZWwubmF0aXZlRWxlbWVudDtcbiAgICAgICAgICAgIHRoaXMucGFyZW50RWwgPSB0aGlzLnJlbmRlcmVyLnBhcmVudE5vZGUoZWwpO1xuXG4gICAgICAgICAgICBpZiAodGhpcy5wYXJlbnRFbCkge1xuICAgICAgICAgICAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5wYXJlbnRFbCwgJ2Rpc3BsYXknLCAnZmxleCcpO1xuICAgICAgICAgICAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5wYXJlbnRFbCwgJ2FsaWduSXRlbXMnLCAnY2VudGVyJyk7XG4gICAgICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLnBhcmVudEVsLCAncG9zaXRpb24nLCAncmVsYXRpdmUnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMub2JzZXJ2ZUJyZWFrcG9pbnRDaGFuZ2VzKCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmRlc3Ryb3kkLm5leHQodHJ1ZSk7XG4gICAgICAgIHRoaXMuZGVzdHJveSQudW5zdWJzY3JpYmUoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIG9ic2VydmVCcmVha3BvaW50Q2hhbmdlcygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jZGtCcmVha3BvaW50T2JzZXJ2ZXJcbiAgICAgICAgICAgIC5vYnNlcnZlKFsnKG1heC13aWR0aDogNDgwcHgpJ10pXG4gICAgICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChyZXN1bHQpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmlzTW9iaWxlID0gcmVzdWx0Lm1hdGNoZXM7XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuaXNNb2JpbGUpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5tYW5hZ2VNb2JpbGUoKTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLm1hbmFnZURlc2t0b3AoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIG1hbmFnZU1vYmlsZSgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMucGFyZW50RWwpIHtcbiAgICAgICAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5wYXJlbnRFbCwgJ2Rpc3BsYXknLCAnYmxvY2snKTtcbiAgICAgICAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5lbC5uYXRpdmVFbGVtZW50LCAnd2lkdGgnLCAndW5zZXQnKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgbWFuYWdlRGVza3RvcCgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMucGFyZW50RWwpIHtcbiAgICAgICAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5wYXJlbnRFbCwgJ2Rpc3BsYXknLCAnZmxleCcpO1xuICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQsICd3aWR0aCcsICcxMDAlJyk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iXX0=
|
package/fesm2022/eui-ecl.mjs
CHANGED
|
@@ -4,7 +4,6 @@ import * as i1$1 from '@angular/common';
|
|
|
4
4
|
import { DOCUMENT, CommonModule, formatDate, isPlatformBrowser } from '@angular/common';
|
|
5
5
|
import * as i1$2 from '@ngx-translate/core';
|
|
6
6
|
import { TranslateModule } from '@ngx-translate/core';
|
|
7
|
-
import { v4 } from 'uuid';
|
|
8
7
|
import { ReplaySubject, Subject, takeUntil, map, switchMap, of, fromEvent, debounceTime, delay, interval, distinctUntilChanged } from 'rxjs';
|
|
9
8
|
import * as i1 from '@eui/core';
|
|
10
9
|
import { GLOBAL_CONFIG_TOKEN } from '@eui/core';
|
|
@@ -623,8 +622,8 @@ class EclAccordionItemComponent {
|
|
|
623
622
|
this.titleId = '';
|
|
624
623
|
}
|
|
625
624
|
ngOnInit() {
|
|
626
|
-
this.titleId =
|
|
627
|
-
this.contentId =
|
|
625
|
+
this.titleId = crypto.randomUUID();
|
|
626
|
+
this.contentId = crypto.randomUUID();
|
|
628
627
|
}
|
|
629
628
|
onItemClick(evt) {
|
|
630
629
|
const nextExpandedState = !this.isExpanded;
|
|
@@ -1370,17 +1369,19 @@ class EclSiteHeaderEnvironmentComponent extends ECLBaseDirective {
|
|
|
1370
1369
|
this.destroy$ = new Subject();
|
|
1371
1370
|
this.isMobile = false;
|
|
1372
1371
|
afterNextRender(() => {
|
|
1372
|
+
const el = this.el.nativeElement;
|
|
1373
|
+
this.parentEl = this.renderer.parentNode(el);
|
|
1374
|
+
if (this.parentEl) {
|
|
1375
|
+
this.renderer.setStyle(this.parentEl, 'display', 'flex');
|
|
1376
|
+
this.renderer.setStyle(this.parentEl, 'alignItems', 'center');
|
|
1377
|
+
this.renderer.setStyle(this.parentEl, 'position', 'relative');
|
|
1378
|
+
}
|
|
1373
1379
|
this.observeBreakpointChanges();
|
|
1374
1380
|
});
|
|
1375
1381
|
}
|
|
1376
|
-
|
|
1377
|
-
|
|
1378
|
-
this.
|
|
1379
|
-
if (this.parentEl) {
|
|
1380
|
-
this.renderer.setStyle(this.parentEl, 'display', 'flex');
|
|
1381
|
-
this.renderer.setStyle(this.parentEl, 'alignItems', 'center');
|
|
1382
|
-
this.renderer.setStyle(this.parentEl, 'position', 'relative');
|
|
1383
|
-
}
|
|
1382
|
+
ngOnDestroy() {
|
|
1383
|
+
this.destroy$.next(true);
|
|
1384
|
+
this.destroy$.unsubscribe();
|
|
1384
1385
|
}
|
|
1385
1386
|
observeBreakpointChanges() {
|
|
1386
1387
|
this.cdkBreakpointObserver
|
|
@@ -4079,7 +4080,7 @@ class EclCategoryFilterComponent extends ECLBaseDirective {
|
|
|
4079
4080
|
if (subList) {
|
|
4080
4081
|
subList.forEach((item) => {
|
|
4081
4082
|
if (!item.id) {
|
|
4082
|
-
item.id =
|
|
4083
|
+
item.id = crypto.randomUUID();
|
|
4083
4084
|
}
|
|
4084
4085
|
if (item.eclCategoryList) {
|
|
4085
4086
|
item.eclCategoryList.controls = item.id;
|
|
@@ -8827,7 +8828,7 @@ class EclMultiselectOptionComponent extends ECLBaseDirective {
|
|
|
8827
8828
|
const res = this.label.replace(re, '<b>$&</b>');
|
|
8828
8829
|
}
|
|
8829
8830
|
createId() {
|
|
8830
|
-
return
|
|
8831
|
+
return crypto.randomUUID();
|
|
8831
8832
|
}
|
|
8832
8833
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: EclMultiselectOptionComponent, deps: [{ token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
8833
8834
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "18.0.0", type: EclMultiselectOptionComponent, selector: "div[eclMultiselectOption]", inputs: { value: "value", label: "label", disabled: ["disabled", "disabled", booleanAttribute], isChecked: "isChecked" }, outputs: { optionClick: "optionClick", optionKeydown: "optionKeydown" }, host: { properties: { "class.ecl-checkbox--disabled": "this.disabled", "attr.disabled": "this.disabled", "style.display": "this.display", "class": "this.cssClasses" } }, viewQueries: [{ propertyName: "eclCheckboxInput", first: true, predicate: ["checkboxInput"], descendants: true }], usesInheritance: true, usesOnChanges: true, hostDirectives: [{ directive: EclCheckboxDirective }], ngImport: i0, template: "<input\n eclCheckboxInput\n type=\"checkbox\"\n [id]=\"id\"\n [value]=\"value\"\n (click)=\"onOptionClick()\"\n (keydown)=\"onOptionKeydown($event)\"\n [checked]=\"isChecked\"\n [disabled]=\"disabled\"\n #checkboxInput />\n<label [for]=\"id\" eclCheckboxLabel><span [innerHTML]=\"label | boldText: keyword\"></span></label>\n", dependencies: [{ kind: "component", type: EclCheckboxLabelComponent, selector: "label[eclCheckboxLabel]", inputs: ["isInvalid", "isDisabled", "isRequired"] }, { kind: "directive", type: EclCheckboxInputDirective, selector: "input[eclCheckboxInput]" }, { kind: "pipe", type: BoldTextPipe, name: "boldText" }] }); }
|
|
@@ -9384,13 +9385,13 @@ class EclMultiselectDropdownComponent extends ECLBaseDirective {
|
|
|
9384
9385
|
return this.getActiveOptions().findIndex((option) => option.id === id);
|
|
9385
9386
|
}
|
|
9386
9387
|
getSelectAllId() {
|
|
9387
|
-
return
|
|
9388
|
+
return crypto.randomUUID();
|
|
9388
9389
|
}
|
|
9389
9390
|
getDropdownId() {
|
|
9390
|
-
return this.id !== '' ? `${this.id}-dropdown` :
|
|
9391
|
+
return this.id !== '' ? `${this.id}-dropdown` : crypto.randomUUID();
|
|
9391
9392
|
}
|
|
9392
9393
|
getToggleId() {
|
|
9393
|
-
return this.id !== '' ? `${this.id}-toggle` :
|
|
9394
|
+
return this.id !== '' ? `${this.id}-toggle` : crypto.randomUUID();
|
|
9394
9395
|
}
|
|
9395
9396
|
modifyParentLabelForAttribute() {
|
|
9396
9397
|
const form = this.renderer.parentNode(this.elRef.nativeElement);
|