@eui/mobile-core 16.8.0 → 16.9.0-snapshot-1711463915848
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/EuimBadgeComponent.html +1 -1
- package/docs/dependencies.html +2 -2
- package/docs/js/search/search_index.js +2 -2
- package/esm2022/lib/components/euim-avatar/euim-avatar.component.mjs +2 -2
- package/esm2022/lib/components/euim-badge/euim-badge.component.mjs +6 -3
- package/esm2022/lib/components/euim-chip-selector/euim-chip-selector.component.mjs +44 -42
- package/fesm2022/eui-mobile-core.mjs +50 -45
- package/fesm2022/eui-mobile-core.mjs.map +1 -1
- package/lib/components/euim-badge/euim-badge.component.d.ts +1 -1
- package/lib/components/euim-badge/euim-badge.component.d.ts.map +1 -1
- package/lib/components/euim-chip-selector/euim-chip-selector.component.d.ts +6 -2
- package/lib/components/euim-chip-selector/euim-chip-selector.component.d.ts.map +1 -1
- package/package.json +2 -2
|
@@ -5,11 +5,11 @@ export class EuimAvatarComponent {
|
|
|
5
5
|
this.className = 'euim-avatar';
|
|
6
6
|
}
|
|
7
7
|
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EuimAvatarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
8
|
-
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: EuimAvatarComponent, selector: "euim-avatar", host: { properties: { "class": "this.className" } }, ngImport: i0, template: "<ng-content></ng-content>\n", styles: [".euim-avatar{display:inline-flex;position:relative}.euim-avatar[slot=start]{margin-inline-end:var(--eui-base-spacing-m)}.euim-avatar[slot=end]{margin-inline-start:var(--eui-base-spacing-m)}.euim-avatar__sub-icon{position:absolute;z-index:99;display:inline-flex;bottom:-6px;right:-6px}.euim-avatar-icon--fill-outline-solid{border-width:2px;border-style:solid;border-color:var(--eui-base-color-white)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
8
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: EuimAvatarComponent, selector: "euim-avatar", host: { properties: { "class": "this.className" } }, ngImport: i0, template: "<ng-content></ng-content>\n", styles: [".euim-avatar{display:inline-flex;position:relative}.euim-avatar[slot=start]{margin-inline-end:var(--eui-base-spacing-m)}.euim-avatar[slot=end]{margin-inline-start:var(--eui-base-spacing-m)}.euim-avatar__sub-icon{position:absolute;z-index:99;display:inline-flex;bottom:-6px;right:-6px}.euim-avatar__sub-icon .euim-avatar-icon--fill-outline-solid{border-width:2px;border-style:solid;border-color:var(--eui-base-color-white)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
9
9
|
}
|
|
10
10
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EuimAvatarComponent, decorators: [{
|
|
11
11
|
type: Component,
|
|
12
|
-
args: [{ selector: 'euim-avatar', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-content></ng-content>\n", styles: [".euim-avatar{display:inline-flex;position:relative}.euim-avatar[slot=start]{margin-inline-end:var(--eui-base-spacing-m)}.euim-avatar[slot=end]{margin-inline-start:var(--eui-base-spacing-m)}.euim-avatar__sub-icon{position:absolute;z-index:99;display:inline-flex;bottom:-6px;right:-6px}.euim-avatar-icon--fill-outline-solid{border-width:2px;border-style:solid;border-color:var(--eui-base-color-white)}\n"] }]
|
|
12
|
+
args: [{ selector: 'euim-avatar', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-content></ng-content>\n", styles: [".euim-avatar{display:inline-flex;position:relative}.euim-avatar[slot=start]{margin-inline-end:var(--eui-base-spacing-m)}.euim-avatar[slot=end]{margin-inline-start:var(--eui-base-spacing-m)}.euim-avatar__sub-icon{position:absolute;z-index:99;display:inline-flex;bottom:-6px;right:-6px}.euim-avatar__sub-icon .euim-avatar-icon--fill-outline-solid{border-width:2px;border-style:solid;border-color:var(--eui-base-color-white)}\n"] }]
|
|
13
13
|
}], propDecorators: { className: [{
|
|
14
14
|
type: HostBinding,
|
|
15
15
|
args: ['class']
|
|
@@ -15,7 +15,7 @@ export class EuimBadgeComponent {
|
|
|
15
15
|
].join(' ').trim();
|
|
16
16
|
}
|
|
17
17
|
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EuimBadgeComponent, deps: [{ token: i1.BaseStatesDirective }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
18
|
-
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: EuimBadgeComponent, selector: "euim-badge", host: { properties: { "class": "this.cssClasses" } }, hostDirectives: [{ directive: i1.BaseStatesDirective, inputs: ["euimDanger", "euimDanger", "euimWarning", "euimWarning", "euimInfo", "euimInfo", "euimSuccess", "euimSuccess", "euimDefault", "euimDefault", "euimPositionTopEnd", "euimPositionTopEnd", "color", "color"] }], ngImport: i0, template: "<ng-content></ng-content>\n", styles: [".euim-badge{display:inline-flex;align-items:center;justify-content:center;border-radius:50px;height:var(--eui-base-spacing-l);min-width:var(--eui-base-spacing-l);padding:var(--eui-base-spacing-2xs) var(--eui-base-spacing-xs);color:var(--eui-base-color-white);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--eui-base-font-size-s)!important;line-height:var(--eui-base-font-size-m)!important;font:normal normal 400 1rem/1.25rem var(--eui-base-font-family);font-weight:700;box-sizing:border-box;letter-spacing:normal}.euim-avatar-icon{position:relative;overflow:visible}.euim-avatar-icon .euim-badge--position-top-end{position:absolute;right:-6px;top:-6px}ion-button::part(native){overflow:visible}ion-button .euim-badge--position-top-end{position:absolute;left:12px;top:-12px}.euim-badge--info{background:var(--eui-base-color-info-100)}.euim-badge--success{background:var(--eui-base-color-success-100)}.euim-badge--warning{background:var(--eui-base-color-warning-100)}.euim-badge--danger{background:var(--eui-base-color-danger-100)}.euim-badge--default{background:var(--eui-base-color-grey-20);color:var(--eui-base-color-grey-100)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
18
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: EuimBadgeComponent, selector: "euim-badge", host: { properties: { "class": "this.cssClasses" } }, hostDirectives: [{ directive: i1.BaseStatesDirective, inputs: ["euimDanger", "euimDanger", "euimWarning", "euimWarning", "euimInfo", "euimInfo", "euimSuccess", "euimSuccess", "euimDefault", "euimDefault", "euimPositionTopEnd", "euimPositionTopEnd", "euimSizeM", "euimSizeM", "euimSizeS", "euimSizeS", "euimSizeL", "euimSizeL", "color", "color"] }], ngImport: i0, template: "<ng-content></ng-content>\n", styles: [".euim-badge{display:inline-flex;align-items:center;justify-content:center;border-radius:50px;height:var(--eui-base-spacing-l);min-width:var(--eui-base-spacing-l);padding:var(--eui-base-spacing-2xs) var(--eui-base-spacing-xs);color:var(--eui-base-color-white);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--eui-base-font-size-s)!important;line-height:var(--eui-base-font-size-m)!important;font:normal normal 400 1rem/1.25rem var(--eui-base-font-family);font-weight:700;box-sizing:border-box;letter-spacing:normal}.euim-avatar-icon{position:relative;overflow:visible}.euim-avatar-icon .euim-badge--position-top-end{position:absolute;right:-6px;top:-6px}ion-button::part(native){overflow:visible}ion-button .euim-badge--position-top-end{position:absolute;left:12px;top:-12px}.euim-badge--info{background:var(--eui-base-color-info-100)}.euim-badge--success{background:var(--eui-base-color-success-100)}.euim-badge--warning{background:var(--eui-base-color-warning-100)}.euim-badge--danger{background:var(--eui-base-color-danger-100)}.euim-badge--default{background:var(--eui-base-color-grey-20);color:var(--eui-base-color-grey-100)}.euim-badge--size-s{min-width:var(--eui-base-spacing-m);height:var(--eui-base-spacing-m);padding:0 var(--eui-base-spacing-2xs);font-size:var(--eui-base-font-size-xs)!important;line-height:var(--eui-base-font-size-m)!important}.euim-badge--size-m{min-width:calc(var(--eui-base-spacing-m) + var(--eui-base-spacing-2xs));height:calc(var(--eui-base-spacing-m) + var(--eui-base-spacing-2xs));padding:calc(var(--eui-base-spacing-2xs) / 2) calc(var(--eui-base-spacing-s) / 2);font-size:var(--eui-base-font-size-xs)!important;line-height:var(--eui-base-font-size-m)!important}.euim-badge--size-l{height:var(--eui-base-spacing-l);min-width:var(--eui-base-spacing-l);padding:var(--eui-base-spacing-2xs) var(--eui-base-spacing-xs);font-size:var(--eui-base-font-size-s)!important;line-height:var(--eui-base-font-size-m)!important}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
19
19
|
}
|
|
20
20
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EuimBadgeComponent, decorators: [{
|
|
21
21
|
type: Component,
|
|
@@ -29,12 +29,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
29
29
|
'euimSuccess',
|
|
30
30
|
'euimDefault',
|
|
31
31
|
'euimPositionTopEnd',
|
|
32
|
+
'euimSizeM',
|
|
33
|
+
'euimSizeS',
|
|
34
|
+
'euimSizeL',
|
|
32
35
|
'color',
|
|
33
36
|
],
|
|
34
37
|
},
|
|
35
|
-
], template: "<ng-content></ng-content>\n", styles: [".euim-badge{display:inline-flex;align-items:center;justify-content:center;border-radius:50px;height:var(--eui-base-spacing-l);min-width:var(--eui-base-spacing-l);padding:var(--eui-base-spacing-2xs) var(--eui-base-spacing-xs);color:var(--eui-base-color-white);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--eui-base-font-size-s)!important;line-height:var(--eui-base-font-size-m)!important;font:normal normal 400 1rem/1.25rem var(--eui-base-font-family);font-weight:700;box-sizing:border-box;letter-spacing:normal}.euim-avatar-icon{position:relative;overflow:visible}.euim-avatar-icon .euim-badge--position-top-end{position:absolute;right:-6px;top:-6px}ion-button::part(native){overflow:visible}ion-button .euim-badge--position-top-end{position:absolute;left:12px;top:-12px}.euim-badge--info{background:var(--eui-base-color-info-100)}.euim-badge--success{background:var(--eui-base-color-success-100)}.euim-badge--warning{background:var(--eui-base-color-warning-100)}.euim-badge--danger{background:var(--eui-base-color-danger-100)}.euim-badge--default{background:var(--eui-base-color-grey-20);color:var(--eui-base-color-grey-100)}\n"] }]
|
|
38
|
+
], template: "<ng-content></ng-content>\n", styles: [".euim-badge{display:inline-flex;align-items:center;justify-content:center;border-radius:50px;height:var(--eui-base-spacing-l);min-width:var(--eui-base-spacing-l);padding:var(--eui-base-spacing-2xs) var(--eui-base-spacing-xs);color:var(--eui-base-color-white);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--eui-base-font-size-s)!important;line-height:var(--eui-base-font-size-m)!important;font:normal normal 400 1rem/1.25rem var(--eui-base-font-family);font-weight:700;box-sizing:border-box;letter-spacing:normal}.euim-avatar-icon{position:relative;overflow:visible}.euim-avatar-icon .euim-badge--position-top-end{position:absolute;right:-6px;top:-6px}ion-button::part(native){overflow:visible}ion-button .euim-badge--position-top-end{position:absolute;left:12px;top:-12px}.euim-badge--info{background:var(--eui-base-color-info-100)}.euim-badge--success{background:var(--eui-base-color-success-100)}.euim-badge--warning{background:var(--eui-base-color-warning-100)}.euim-badge--danger{background:var(--eui-base-color-danger-100)}.euim-badge--default{background:var(--eui-base-color-grey-20);color:var(--eui-base-color-grey-100)}.euim-badge--size-s{min-width:var(--eui-base-spacing-m);height:var(--eui-base-spacing-m);padding:0 var(--eui-base-spacing-2xs);font-size:var(--eui-base-font-size-xs)!important;line-height:var(--eui-base-font-size-m)!important}.euim-badge--size-m{min-width:calc(var(--eui-base-spacing-m) + var(--eui-base-spacing-2xs));height:calc(var(--eui-base-spacing-m) + var(--eui-base-spacing-2xs));padding:calc(var(--eui-base-spacing-2xs) / 2) calc(var(--eui-base-spacing-s) / 2);font-size:var(--eui-base-font-size-xs)!important;line-height:var(--eui-base-font-size-m)!important}.euim-badge--size-l{height:var(--eui-base-spacing-l);min-width:var(--eui-base-spacing-l);padding:var(--eui-base-spacing-2xs) var(--eui-base-spacing-xs);font-size:var(--eui-base-font-size-s)!important;line-height:var(--eui-base-font-size-m)!important}\n"] }]
|
|
36
39
|
}], ctorParameters: function () { return [{ type: i1.BaseStatesDirective }]; }, propDecorators: { cssClasses: [{
|
|
37
40
|
type: HostBinding,
|
|
38
41
|
args: ['class']
|
|
39
42
|
}] } });
|
|
40
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
43
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXVpbS1iYWRnZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvZXVpbS1iYWRnZS9ldWltLWJhZGdlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9ldWltLWJhZGdlL2V1aW0tYmFkZ2UuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsaUJBQWlCLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkcsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7OztBQTBCL0QsTUFBTSxPQUFPLGtCQUFrQjtJQUUzQixJQUNXLFVBQVU7UUFDakIsT0FBTyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDaEMsQ0FBQztJQUVELFlBQW1CLG1CQUF3QztRQUF4Qyx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXFCO0lBQUcsQ0FBQztJQUUvRCxhQUFhO1FBQ1QsT0FBTztZQUNILElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxhQUFhLENBQUMsWUFBWSxDQUFDO1NBQ3ZELENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3ZCLENBQUM7a0lBYlEsa0JBQWtCO3NIQUFsQixrQkFBa0IscWNDM0IvQiw2QkFDQTs7NEZEMEJhLGtCQUFrQjtrQkF4QjlCLFNBQVM7K0JBQ0ksWUFBWSxpQkFHUCxpQkFBaUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNLGtCQUMvQjt3QkFDWjs0QkFDSSxTQUFTLEVBQUUsbUJBQW1COzRCQUM5QixNQUFNLEVBQUU7Z0NBQ0osWUFBWTtnQ0FDWixhQUFhO2dDQUNiLFVBQVU7Z0NBQ1YsYUFBYTtnQ0FDYixhQUFhO2dDQUNiLG9CQUFvQjtnQ0FDcEIsV0FBVztnQ0FDWCxXQUFXO2dDQUNYLFdBQVc7Z0NBQ1gsT0FBTzs2QkFDVjt5QkFDSjtxQkFDSjswR0FLVSxVQUFVO3NCQURwQixXQUFXO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEhvc3RCaW5kaW5nLCBWaWV3RW5jYXBzdWxhdGlvbiwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJhc2VTdGF0ZXNEaXJlY3RpdmUgfSBmcm9tICcuLi9iYXNlLXN0YXRlcy5kaXJlY3RpdmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2V1aW0tYmFkZ2UnLFxuICAgIHRlbXBsYXRlVXJsOiAnZXVpbS1iYWRnZS5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vc3R5bGVzL19pbmRleC5zY3NzJ10sXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBob3N0RGlyZWN0aXZlczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBkaXJlY3RpdmU6IEJhc2VTdGF0ZXNEaXJlY3RpdmUsXG4gICAgICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgICAgICAnZXVpbURhbmdlcicsXG4gICAgICAgICAgICAgICAgJ2V1aW1XYXJuaW5nJyxcbiAgICAgICAgICAgICAgICAnZXVpbUluZm8nLFxuICAgICAgICAgICAgICAgICdldWltU3VjY2VzcycsXG4gICAgICAgICAgICAgICAgJ2V1aW1EZWZhdWx0JyxcbiAgICAgICAgICAgICAgICAnZXVpbVBvc2l0aW9uVG9wRW5kJyxcbiAgICAgICAgICAgICAgICAnZXVpbVNpemVNJyxcbiAgICAgICAgICAgICAgICAnZXVpbVNpemVTJyxcbiAgICAgICAgICAgICAgICAnZXVpbVNpemVMJyxcbiAgICAgICAgICAgICAgICAnY29sb3InLFxuICAgICAgICAgICAgXSxcbiAgICAgICAgfSxcbiAgICBdLFxufSlcbmV4cG9ydCBjbGFzcyBFdWltQmFkZ2VDb21wb25lbnQge1xuXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcycpXG4gICAgcHVibGljIGdldCBjc3NDbGFzc2VzKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLmdldENzc0NsYXNzZXMoKTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3RvcihwdWJsaWMgYmFzZVN0YXRlc0RpcmVjdGl2ZTogQmFzZVN0YXRlc0RpcmVjdGl2ZSkge31cblxuICAgIGdldENzc0NsYXNzZXMoKSA6c3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAgIHRoaXMuYmFzZVN0YXRlc0RpcmVjdGl2ZS5nZXRDc3NDbGFzc2VzKCdldWltLWJhZGdlJyksXG4gICAgICAgIF0uam9pbignICcpLnRyaW0oKTtcbiAgICB9XG59XG4iLCI8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4iXX0=
|
|
@@ -128,28 +128,23 @@ export class EuimChipSelectorComponent {
|
|
|
128
128
|
this.clickEventHandled = false;
|
|
129
129
|
}
|
|
130
130
|
}
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
return;
|
|
136
|
-
let filteredDataWithSearch = [];
|
|
137
|
-
if (this.selectedChips[0] !== '0' && this.isMultiSelectionMode) {
|
|
138
|
-
filteredDataWithSearch = [...this.sourceData].filter(item => this.selectedChips.includes(item.filterId));
|
|
139
|
-
this.filteredData = filteredDataWithSearch.filter(obj => obj.title.toLowerCase().includes(this.searchInput));
|
|
140
|
-
this.filterData.emit(this.filteredData);
|
|
141
|
-
return;
|
|
142
|
-
}
|
|
143
|
-
if (this.selectedChips[0] !== '0') {
|
|
144
|
-
filteredDataWithSearch = [...this.sourceData].filter(item => {
|
|
145
|
-
return item.filterId === this.selectedChips[0];
|
|
146
|
-
});
|
|
147
|
-
this.filteredData = filteredDataWithSearch.filter(obj => obj.title.toLowerCase().includes(this.searchInput));
|
|
131
|
+
applyFilter(filterCondition, isAllFilter, multipleFilterConditions) {
|
|
132
|
+
let filteredData = [...this.sourceData];
|
|
133
|
+
if (isAllFilter) {
|
|
134
|
+
filteredData = this.filterBySearch(filteredData, this.searchInput);
|
|
148
135
|
}
|
|
149
136
|
else {
|
|
150
|
-
this.
|
|
137
|
+
if (this.isMultiSelectionMode || multipleFilterConditions.length > 0) {
|
|
138
|
+
filteredData = this.filterByMultipleConditions(filteredData, multipleFilterConditions);
|
|
139
|
+
}
|
|
140
|
+
else {
|
|
141
|
+
filteredData = this.filterByCondition(filteredData, filterCondition);
|
|
142
|
+
}
|
|
143
|
+
if (this.euimKeepSelection && this.searchInput !== '') {
|
|
144
|
+
filteredData = this.filterBySearch(filteredData, this.searchInput);
|
|
145
|
+
}
|
|
151
146
|
}
|
|
152
|
-
this.
|
|
147
|
+
this.filteredData = filteredData;
|
|
153
148
|
}
|
|
154
149
|
clearFiltersAndSelectAll() {
|
|
155
150
|
this.clearAllSelections();
|
|
@@ -198,30 +193,19 @@ export class EuimChipSelectorComponent {
|
|
|
198
193
|
this.applyFilter(filterCondition, isFilterAll, this.filterConditions);
|
|
199
194
|
this.filterData.emit(this.filteredData);
|
|
200
195
|
}
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
this.filteredData = filteredData.filter(obj => obj.title.toLowerCase().includes(this.searchInput));
|
|
209
|
-
return;
|
|
210
|
-
}
|
|
211
|
-
if (this.isMultiSelectionMode || multipleFilterConditions.length > 0) {
|
|
212
|
-
this.filteredData = [...this.sourceData].filter(item => multipleFilterConditions.includes(item.filterId));
|
|
213
|
-
return;
|
|
196
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
197
|
+
handleChange(event) {
|
|
198
|
+
this.searchInput = event.detail.value.toLowerCase();
|
|
199
|
+
let filteredData = [...this.sourceData];
|
|
200
|
+
if (this.euimKeepSelection) {
|
|
201
|
+
filteredData = this.filterByChips(filteredData, this.selectedChips);
|
|
202
|
+
filteredData = this.filterBySearch(filteredData, this.searchInput);
|
|
214
203
|
}
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
return item.filterId === filterCondition;
|
|
218
|
-
});
|
|
219
|
-
this.filteredData = filteredData.filter(obj => obj.title.toLowerCase().includes(this.searchInput));
|
|
220
|
-
return;
|
|
204
|
+
else {
|
|
205
|
+
filteredData = this.filterBySearch(filteredData, this.searchInput);
|
|
221
206
|
}
|
|
222
|
-
this.filteredData =
|
|
223
|
-
|
|
224
|
-
});
|
|
207
|
+
this.filteredData = filteredData;
|
|
208
|
+
this.filterData.emit(this.filteredData);
|
|
225
209
|
}
|
|
226
210
|
addSelectedStyles(item) {
|
|
227
211
|
item.classList.add(`euim-chip-selector__item-selected--color-${this.chipSelectedColor}`);
|
|
@@ -264,6 +248,24 @@ export class EuimChipSelectorComponent {
|
|
|
264
248
|
this.filterConditions = [];
|
|
265
249
|
this.selectedChips = ['0'];
|
|
266
250
|
}
|
|
251
|
+
filterBySearch(data, searchInput) {
|
|
252
|
+
if (!searchInput)
|
|
253
|
+
return data;
|
|
254
|
+
return data.filter(obj => obj.title.toLowerCase().includes(searchInput));
|
|
255
|
+
}
|
|
256
|
+
filterByChips(data, selectedChips) {
|
|
257
|
+
if (selectedChips[0] === '0')
|
|
258
|
+
return data;
|
|
259
|
+
return data.filter(item => selectedChips.includes(item.filterId));
|
|
260
|
+
}
|
|
261
|
+
filterByCondition(data, filterCondition) {
|
|
262
|
+
return data.filter(item => item.filterId === filterCondition);
|
|
263
|
+
}
|
|
264
|
+
filterByMultipleConditions(data, multipleFilterConditions) {
|
|
265
|
+
if (multipleFilterConditions.length === 0)
|
|
266
|
+
return data;
|
|
267
|
+
return data.filter(item => multipleFilterConditions.includes(item.filterId));
|
|
268
|
+
}
|
|
267
269
|
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EuimChipSelectorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
268
270
|
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: EuimChipSelectorComponent, selector: "euim-chip-selector", inputs: { backgroundColor: "backgroundColor", chipColor: "chipColor", color: "color", chipSelectedColor: "chipSelectedColor", chipFill: "chipFill", sourceData: "sourceData", selectedChips: "selectedChips", isMultiSelectionMode: "isMultiSelectionMode", euimKeepSelection: "euimKeepSelection", hasSearchbar: "hasSearchbar" }, outputs: { filterData: "filterData", clickItems: "clickItems" }, host: { properties: { "class": "this.cssClasses" } }, queries: [{ propertyName: "euimChipSelectorItemComponent", predicate: EuimChipSelectorItemDirective, descendants: true }], usesOnChanges: true, ngImport: i0, template: "<ion-searchbar *ngIf=\"hasSearchbar\" (ionChange)=\"handleChange($event)\"\n class=\"euim-chip-selector__searchbar\"></ion-searchbar>\n<euim-scroller-x>\n <ng-content></ng-content>\n</euim-scroller-x>\n\n", styles: [".euim-chip-selector{padding:var(--eui-base-spacing-xs) 0 var(--eui-base-spacing-xs) var(--eui-base-spacing-xs);display:flex;justify-content:center;flex-direction:column}.euim-chip-selector ion-chip{margin:0 var(--eui-base-spacing-xs) 0 0}.euim-chip-selector ion-searchbar{padding-inline-start:0;padding-top:0;padding-bottom:var(--eui-base-spacing-s)}.euim-chip-selector__item--fill-default,.euim-chip-selector--fill-solid{border:none}.euim-chip-selector__item--fill-outline{background-color:transparent!important;border-width:1px;border-style:solid}.euim-chip-selector__item--fill-clear{background-color:transparent!important;border:none}.euim-chip-selector__item--fill-outline-solid{border-width:1px;border-style:solid}.euim-chip-selector--background-color-primary{background-color:var(--eui-base-color-primary-100)}.euim-chip-selector__item--color-success{background-color:var(--eui-base-color-success-25);border-color:var(--eui-base-color-success-25);color:var(--eui-base-color-success-100)}.euim-chip-selector__item--color-success.euim-chip-selector__item--fill-outline{border-color:var(--eui-base-color-success-50)}.euim-chip-selector__item--color-warning{background-color:var(--eui-base-color-warning-25);border-color:var(--eui-base-color-warning-25);color:var(--eui-base-color-warning-140)}.euim-chip-selector__item--color-warning.euim-chip-selector__item--fill-outline{border-color:var(--eui-base-color-warning-50)}.euim-chip-selector__item--color-danger{background-color:var(--eui-base-color-danger-25);border-color:var(--eui-base-color-danger-25);color:var(--eui-base-color-danger-100)}.euim-chip-selector__item--color-danger.euim-chip-selector__item--fill-outline{border-color:var(--eui-base-color-danger-50)}.euim-chip-selector__item--color-primary{background-color:var(--eui-base-color-primary-25);border-color:var(--eui-base-color-primary-25);color:var(--eui-base-color-primary-100)}.euim-chip-selector__item--color-primary.euim-chip-selector__item--fill-outline{border-color:var(--eui-base-color-primary-50)}.euim-chip-selector__item--color-info{background-color:var(--eui-base-color-info-25);border-color:var(--eui-base-color-info-25);color:var(--eui-base-color-info-100)}.euim-chip-selector__item--color-info.euim-chip-selector__item--fill-outline{border-color:var(--eui-base-color-info-50)}.euim-chip-selector__item--color-dark{background-color:var(--eui-base-color-grey-100);border-color:var(--eui-base-color-grey-100);color:var(--eui-base-color-white)}.euim-chip-selector__item--color-dark.euim-chip-selector__item--fill-outline{color:var(--eui-base-color-grey-100)}.euim-chip-selector__item--color-white{background-color:var(--eui-base-color-white);border-color:var(--eui-base-color-white);color:var(--eui-base-color-grey-100)}.euim-chip-selector__item--color-white.euim-chip-selector__item--fill-outline{color:var(--eui-base-color-white)}.euim-chip-selector__item--color-default{background-color:var(--eui-base-grey-15);border-color:var(--eui-base-color-grey-15);color:var(--eui-base-color-grey-100)}.euim-chip-selector__item--color-default.euim-chip-selector__item--fill-outline{border-color:var(--eui-base-color-grey-50)}ion-chip.euim-chip-selector__item-selected--color-white{background-color:var(--eui-base-color-white)!important;border-color:var(--eui-base-color-white)!important;color:var(--eui-base-color-grey-100)!important}ion-chip.euim-chip-selector__item-selected--color-dark{background-color:var(--eui-base-color-grey-100)!important;border-color:var(--eui-base-color-grey-100)!important;color:var(--eui-base-color-white)!important}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.IonSearchbar, selector: "ion-searchbar", inputs: ["animated", "autocomplete", "autocorrect", "cancelButtonIcon", "cancelButtonText", "clearIcon", "color", "debounce", "disabled", "enterkeyhint", "inputmode", "mode", "placeholder", "searchIcon", "showCancelButton", "showClearButton", "spellcheck", "type", "value"] }, { kind: "directive", type: i2.TextValueAccessor, selector: "ion-input:not([type=number]),ion-textarea,ion-searchbar" }, { kind: "component", type: i3.EuimScrollerXComponent, selector: "euim-scroller-x" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
269
271
|
}
|
|
@@ -310,4 +312,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
310
312
|
type: ContentChildren,
|
|
311
313
|
args: [EuimChipSelectorItemDirective, { descendants: true }]
|
|
312
314
|
}] } });
|
|
313
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXVpbS1jaGlwLXNlbGVjdG9yLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9ldWltLWNoaXAtc2VsZWN0b3IvZXVpbS1jaGlwLXNlbGVjdG9yLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9ldWltLWNoaXAtc2VsZWN0b3IvZXVpbS1jaGlwLXNlbGVjdG9yLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUF1Qyx1QkFBdUIsRUFBRSxlQUFlLEVBQW9CLFdBQVcsRUFBRSxLQUFLLEVBQUUsaUJBQWlCLEVBQWlCLE1BQU0sRUFBRSxZQUFZLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFFbE8sT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUMxQyxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSw2REFBNkQsQ0FBQzs7Ozs7QUFXNUcsTUFBTSxPQUFPLHlCQUF5QjtJQVJ0QztRQVVhLG9CQUFlLEdBQThCLFNBQVMsQ0FBQztRQUNoRTs7O1dBR0c7UUFDTSxjQUFTLEdBQXlGLE9BQU8sQ0FBQztRQUMxRyxVQUFLLEdBQXlGLE9BQU8sQ0FBQztRQUN0RyxzQkFBaUIsR0FBcUIsT0FBTyxDQUFDO1FBQzlDLGFBQVEsR0FBZ0UsU0FBUyxDQUFDO1FBQ2xGLGVBQVUsR0FBbUIsRUFBRSxDQUFDO1FBQ2hDLGtCQUFhLEdBQUcsRUFBRSxDQUFDO1FBRzVCLHlCQUFvQixHQUFpQixLQUFLLENBQUM7UUFHM0Msc0JBQWlCLEdBQWlCLEtBQUssQ0FBQztRQUd4QyxpQkFBWSxHQUFpQixLQUFLLENBQUM7UUFDekIsZUFBVSxHQUFHLElBQUksWUFBWSxFQUFrQixDQUFDO1FBQ2hELGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBWSxDQUFDO1FBVXBELGlCQUFZLEdBQUcsQ0FB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Qiw2QkFBNkI7c0JBRDVCLGVBQWU7dUJBQUMsNkJBQTZCLEVBQUUsRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBRdWVyeUxpc3QsIE9uQ2hhbmdlcywgU2ltcGxlQ2hhbmdlcywgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbnRlbnRDaGlsZHJlbiwgQWZ0ZXJDb250ZW50SW5pdCwgSG9zdEJpbmRpbmcsIElucHV0LCBWaWV3RW5jYXBzdWxhdGlvbiwgQWZ0ZXJWaWV3SW5pdCwgT3V0cHV0LCBFdmVudEVtaXR0ZXIsIE9uRGVzdHJveSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQm9vbGVhbklucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJztcbmltcG9ydCB7IGNvZXJjZUJvb2xlYW4gfSBmcm9tICdAZXVpL2Jhc2UnO1xuaW1wb3J0IHsgRXVpbUNoaXBTZWxlY3Rvckl0ZW1EaXJlY3RpdmUgfSBmcm9tICcuL2V1aW0tY2hpcC1zZWxlY3Rvci1pdGVtL2V1aW0tY2hpcC1zZWxlY3Rvci1pdGVtLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdldWltLWNoaXAtc2VsZWN0b3InLFxuICAgIHRlbXBsYXRlVXJsOiAnZXVpbS1jaGlwLXNlbGVjdG9yLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9zdHlsZXMvX2luZGV4LnNjc3MnXSxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuXG59KVxuZXhwb3J0IGNsYXNzIEV1aW1DaGlwU2VsZWN0b3JDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBBZnRlckNvbnRlbnRJbml0LCBPbkNoYW5nZXMsIE9uRGVzdHJveSB7XG5cbiAgICBASW5wdXQoKSBiYWNrZ3JvdW5kQ29sb3I6ICdwcmltYXJ5JyB8ICAnd2hpdGUnIHwgJycgPSAncHJpbWFyeSc7XG4gICAgLyoqXG4gICAgICogQGRlcHJlY2F0ZWQgV2lsbCBiZSByZW1vdmVkIGluIHYxNy5cbiAgICAgKiBQbGVhc2UgdXNlIHtAbGluayBjb2xvcn0gcHJvcGVydHkgaW5zdGVhZFxuICAgICAqL1xuICAgIEBJbnB1dCgpIGNoaXBDb2xvcjogJ2RlZmF1bHQnIHwgJ2RhcmsnIHwgJ3doaXRlJyB8ICdwcmltYXJ5JyB8ICdpbmZvJyB8ICdzdWNjZXNzJyB8ICd3YXJuaW5nJyB8ICdkYW5nZXInID0gJ3doaXRlJztcbiAgICBASW5wdXQoKSBjb2xvcjogJ2RlZmF1bHQnIHwgJ2RhcmsnIHwgJ3doaXRlJyB8ICdwcmltYXJ5JyB8ICdpbmZvJyB8ICdzdWNjZXNzJyB8ICd3YXJuaW5nJyB8ICdkYW5nZXInID0gJ3doaXRlJztcbiAgICBASW5wdXQoKSBjaGlwU2VsZWN0ZWRDb2xvcjogJ2RhcmsnIHwgJ3doaXRlJyA9ICd3aGl0ZSc7XG4gICAgQElucHV0KCkgY2hpcEZpbGw6ICdkZWZhdWx0JyB8ICdjbGVhcicgfCAnb3V0bGluZScgfCAnb3V0bGluZS1zb2xpZCcgfCAnc29saWQnID0gJ2RlZmF1bHQnO1xuICAgIEBJbnB1dCgpIHNvdXJjZURhdGE6IEZpbHRlcmVkRGF0YVtdID0gW107XG4gICAgQElucHV0KCkgc2VsZWN0ZWRDaGlwcyA9IFtdO1xuICAgIEBJbnB1dCgpXG4gICAgQGNvZXJjZUJvb2xlYW5cbiAgICBpc011bHRpU2VsZWN0aW9uTW9kZTogQm9vbGVhbklucHV0ID0gZmFsc2U7XG4gICAgQElucHV0KClcbiAgICBAY29lcmNlQm9vbGVhblxuICAgIGV1aW1LZWVwU2VsZWN0aW9uOiBCb29sZWFuSW5wdXQgPSBmYWxzZTtcbiAgICBASW5wdXQoKVxuICAgIEBjb2VyY2VCb29sZWFuXG4gICAgaGFzU2VhcmNoYmFyOiBCb29sZWFuSW5wdXQgPSBmYWxzZTtcbiAgICBAT3V0cHV0KCkgZmlsdGVyRGF0YSA9IG5ldyBFdmVudEVtaXR0ZXI8RmlsdGVyZWREYXRhW10+KCk7XG4gICAgQE91dHB1dCgpIGNsaWNrSXRlbXMgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZ1tdPigpO1xuXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcycpXG4gICAgZ2V0IGNzc0NsYXNzZXMoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0Q3NzQ2xhc3NlcygpO1xuICAgIH1cblxuICAgIEBDb250ZW50Q2hpbGRyZW4oRXVpbUNoaXBTZWxlY3Rvckl0ZW1EaXJlY3RpdmUsIHsgZGVzY2VuZGFudHM6IHRydWUgfSlcbiAgICBldWltQ2hpcFNlbGVjdG9ySXRlbUNvbXBvbmVudDogUXVlcnlMaXN0PEV1aW1DaGlwU2VsZWN0b3JJdGVtRGlyZWN0aXZlPjtcblxuICAgIGZpbHRlcmVkRGF0YSA9IFsuLi50aGlzLnNvdXJjZURhdGFdO1xuICAgIGZpbHRlckNvbmRpdGlvbnMgPSBbXVxuICAgIHNlYXJjaElucHV0ID0gJyc7XG4gICAgZXVpbUNoaXBTZWxlY3Rvckl0ZW1TdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcbiAgICBjbGlja0V2ZW50SGFuZGxlZCA9IGZhbHNlO1xuXG4gICAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnNldENzc0l0ZW1DbGFzc2VzKCk7XG4gICAgfVxuXG4gICAgbmdBZnRlckNvbnRlbnRJbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnN1YnNjcmliZVRvQ2hhbmdlcygpO1xuICAgICAgICB0aGlzLnVwZGF0ZUNoaXBzQW5kRmlsdGVyRGF0YUFmdGVySW5pdCgpO1xuICAgICAgICB0aGlzLnVwZGF0ZUNoaXBzQW5kRmlsdGVycygpO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5ldWltQ2hpcFNlbGVjdG9ySXRlbVN1YnNjcmlwdGlvbikge1xuICAgICAgICAgICAgdGhpcy5ldWltQ2hpcFNlbGVjdG9ySXRlbVN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgc3Vic2NyaWJlVG9DaGFuZ2VzKCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5ldWltQ2hpcFNlbGVjdG9ySXRlbVN1YnNjcmlwdGlvbikge1xuICAgICAgICAgICAgdGhpcy5ldWltQ2hpcFNlbGVjdG9ySXRlbVN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5ldWltQ2hpcFNlbGVjdG9ySXRlbVN1YnNjcmlwdGlvbiA9IHRoaXMuZXVpbUNoaXBTZWxlY3Rvckl0ZW1Db21wb25lbnQuY2hhbmdlcy5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy51cGRhdGVDaGlwc0FuZEZpbHRlcnMoKTtcbiAgICAgICAgICAgIHRoaXMuc2V0Q3NzSXRlbUNsYXNzZXMoKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5ldWltQ2hpcFNlbGVjdG9ySXRlbUNvbXBvbmVudCAmJiB0aGlzLmV1aW1DaGlwU2VsZWN0b3JJdGVtQ29tcG9uZW50Lmxlbmd0aCA+IDAgJiZcbiAgICAgICAgICAgIGNoYW5nZXMuc2VsZWN0ZWRDaGlwcy5jdXJyZW50VmFsdWUgJiYgY2hhbmdlcy5zZWxlY3RlZENoaXBzLmN1cnJlbnRWYWx1ZS5sZW5ndGggPT09IDEgJiZcbiAgICAgICAgICAgIGNoYW5nZXMuc2VsZWN0ZWRDaGlwcy5jdXJyZW50VmFsdWUuZXZlcnkoKHZhbHVlLCBpbmRleCkgPT4gdmFsdWUgPT09ICcwJykpIHtcbiAgICAgICAgICAgIHRoaXMuY2xlYXJGaWx0ZXJzQW5kU2VsZWN0QWxsKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBnZXRDc3NDbGFzc2VzKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBbXG4gICAgICAgICAgICAnZXVpbS1jaGlwLXNlbGVjdG9yJyxcbiAgICAgICAgICAgIHRoaXMuYmFja2dyb3VuZENvbG9yID8gYGV1aW0tY2hpcC1zZWxlY3Rvci0tYmFja2dyb3VuZC1jb2xvci0ke3RoaXMuYmFja2dyb3VuZENvbG9yfWAgOiAnJyxcbiAgICAgICAgXS5qb2luKCcgJykudHJpbSgpO1xuICAgIH1cblxuICAgIHNldENzc0l0ZW1DbGFzc2VzKCk6IHZvaWQge1xuICAgICAgICBjb25zdCBjbGFzc2VzID0gdGhpcy5nZXRDc3NJdGVtQ2xhc3NlcygpO1xuICAgICAgICB0aGlzLmV1aW1DaGlwU2VsZWN0b3JJdGVtQ29tcG9uZW50LmZvckVhY2goY2hpcCA9PiB7XG4gICAgICAgICAgICBjbGFzc2VzLnNwbGl0KCcgJykuZm9yRWFjaChjbGFzc05hbWUgPT4ge1xuICAgICAgICAgICAgICAgIGNoaXAuZWwubmF0aXZlRWxlbWVudC5jbGFzc0xpc3QuYWRkKGNsYXNzTmFtZSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgZ2V0Q3NzSXRlbUNsYXNzZXMoKTogc3RyaW5nIHtcbiAgICAgICAgbGV0IGN1cnJlbnRDb2xvciA9ICd3aGl0ZSc7XG4gICAgICAgIC8vIGlmIGNvbG9yIHByb3BlcnR5IGlzIGRpZmZlcmVudCBmcm9tIGRlZmF1bHQgb25lICh3aGl0ZSkgdGhhbiB1c2UgY2hpcCBjb2xvclxuICAgICAgICAvLyBtZWFucyB1c2luZyB0aGUgZGVwcmVjYXRlZCBjaGlwQ29sb3IgcHJvcGVydHksXG4gICAgICAgIC8vIG5lZWRlZCBhcyBpbiBWMTggd2lsbCBiZSByZW1vdmVkIGNoaXBDb2xvclxuICAgICAgICBpZiAodGhpcy5jaGlwQ29sb3IgPT09ICd3aGl0ZScgJiYgdGhpcy5jb2xvciAhPSAnd2hpdGUnKSB7XG4gICAgICAgICAgICBjdXJyZW50Q29sb3IgPSB0aGlzLmNvbG9yO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY3VycmVudENvbG9yID0gdGhpcy5jaGlwQ29sb3I7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gW1xuICAgICAgICAgICAgdGhpcy5jaGlwRmlsbCA/IGBldWltLWNoaXAtc2VsZWN0b3JfX2l0ZW0tLWZpbGwtJHt0aGlzLmNoaXBGaWxsfWAgOiAnJyxcbiAgICAgICAgICAgIGN1cnJlbnRDb2xvciA/IGBldWltLWNoaXAtc2VsZWN0b3JfX2l0ZW0tLWNvbG9yLSR7Y3VycmVudENvbG9yfWAgOiAnJyxcbiAgICAgICAgXS5qb2luKCcgJyk7XG4gICAgfVxuXG4gICAgdXBkYXRlQ2hpcHNBbmRGaWx0ZXJzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmV1aW1DaGlwU2VsZWN0b3JJdGVtQ29tcG9uZW50LmZvckVhY2goY2hpcCA9PiB7XG4gICAgICAgICAgICBpZiAoIWNoaXAuY2xpY2tFdmVudEFkZGVkKSB7XG4gICAgICAgICAgICAgICAgY2hpcC5lbC5uYXRpdmVFbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAoIXRoaXMuY2xpY2tFdmVudEhhbmRsZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY2xpY2tFdmVudEhhbmRsZWQgPSB0cnVlO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmV1aW1DaGlwU2VsZWN0b3JJdGVtQ29tcG9uZW50LmZvckVhY2goaW5uZXJDaGlwID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoIXRoaXMuaXNNdWx0aVNlbGVjdGlvbk1vZGUgfHwgKHRoaXMuaXNNdWx0aVNlbGVjdGlvbk1vZGUgJiYgaW5uZXJDaGlwLmV1aW1DaGlwU2VsZWN0b3JBbGwpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucmVtb3ZlU2VsZWN0ZWRTdHlsZXMoaW5uZXJDaGlwLmVsLm5hdGl2ZUVsZW1lbnQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmFkZFNlbGVjdGVkU3R5bGVzKGNoaXAuZWwubmF0aXZlRWxlbWVudCk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMub25GaWx0ZXJDaGFuZ2UoY2hpcC5pZD8udG9TdHJpbmcoKSwgY2hpcC5ldWltQ2hpcFNlbGVjdG9yQWxsLCBjaGlwLmVsLm5hdGl2ZUVsZW1lbnQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5maWx0ZXJEYXRhLmVtaXQodGhpcy5maWx0ZXJlZERhdGEpO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jbGlja0l0ZW1zLmVtaXQodGhpcy5zZWxlY3RlZENoaXBzKTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jbGlja0V2ZW50SGFuZGxlZCA9IGZhbHNlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgY2hpcC5jbGlja0V2ZW50QWRkZWQgPSB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBjbGlja0V2ZW50SGFuZGxlcihjaGlwKTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy5jbGlja0V2ZW50SGFuZGxlZCkge1xuICAgICAgICAgICAgdGhpcy5jbGlja0V2ZW50SGFuZGxlZCA9IHRydWU7XG5cbiAgICAgICAgICAgIHRoaXMuZXVpbUNoaXBTZWxlY3Rvckl0ZW1Db21wb25lbnQuZm9yRWFjaChpbm5lckNoaXAgPT4ge1xuICAgICAgICAgICAgICAgIGlmICghdGhpcy5pc011bHRpU2VsZWN0aW9uTW9kZSB8fCAodGhpcy5pc011bHRpU2VsZWN0aW9uTW9kZSAmJiBpbm5lckNoaXAuZXVpbUNoaXBTZWxlY3RvckFsbCkpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5yZW1vdmVTZWxlY3RlZFN0eWxlcyhpbm5lckNoaXAuZWwubmF0aXZlRWxlbWVudCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgIHRoaXMuYWRkU2VsZWN0ZWRTdHlsZXMoY2hpcC5lbC5uYXRpdmVFbGVtZW50KTtcblxuICAgICAgICAgICAgdGhpcy5vbkZpbHRlckNoYW5nZShjaGlwLmlkPy50b1N0cmluZygpLCBjaGlwLmV1aW1DaGlwU2VsZWN0b3JBbGwsIGNoaXAuZWwubmF0aXZlRWxlbWVudCk7XG4gICAgICAgICAgICB0aGlzLmZpbHRlckRhdGEuZW1pdCh0aGlzLmZpbHRlcmVkRGF0YSk7XG4gICAgICAgICAgICB0aGlzLmNsaWNrSXRlbXMuZW1pdCh0aGlzLnNlbGVjdGVkQ2hpcHMpO1xuXG4gICAgICAgICAgICB0aGlzLmNsaWNrRXZlbnRIYW5kbGVkID0gZmFsc2U7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgIGhhbmRsZUNoYW5nZShldmVudDogYW55KTogdm9pZCB7XG4gICAgICAgIHRoaXMuc2VhcmNoSW5wdXQgPSBldmVudC5kZXRhaWwudmFsdWUudG9Mb3dlckNhc2UoKTtcblxuICAgICAgICBpZiAoIXRoaXMuZXVpbUtlZXBTZWxlY3Rpb24pIHJldHVybjtcblxuICAgICAgICBsZXQgZmlsdGVyZWREYXRhV2l0aFNlYXJjaCA9IFtdO1xuXG4gICAgICAgIGlmICh0aGlzLnNlbGVjdGVkQ2hpcHNbMF0gIT09ICcwJyAmJiB0aGlzLmlzTXVsdGlTZWxlY3Rpb25Nb2RlKSB7XG4gICAgICAgICAgICBmaWx0ZXJlZERhdGFXaXRoU2VhcmNoID0gWy4uLnRoaXMuc291cmNlRGF0YV0uZmlsdGVyKGl0ZW0gPT4gdGhpcy5zZWxlY3RlZENoaXBzLmluY2x1ZGVzKGl0ZW0uZmlsdGVySWQpKTtcbiAgICAgICAgICAgIHRoaXMuZmlsdGVyZWREYXRhID0gZmlsdGVyZWREYXRhV2l0aFNlYXJjaC5maWx0ZXIob2JqID0+IG9iai50aXRsZS50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKHRoaXMuc2VhcmNoSW5wdXQpKTtcbiAgICAgICAgICAgIHRoaXMuZmlsdGVyRGF0YS5lbWl0KHRoaXMuZmlsdGVyZWREYXRhKTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLnNlbGVjdGVkQ2hpcHNbMF0gIT09ICcwJyl7XG4gICAgICAgICAgICBmaWx0ZXJlZERhdGFXaXRoU2VhcmNoID0gWy4uLnRoaXMuc291cmNlRGF0YV0uZmlsdGVyKGl0ZW0gPT4ge1xuICAgICAgICAgICAgICAgIHJldHVybiBpdGVtLmZpbHRlcklkID09PSB0aGlzLnNlbGVjdGVkQ2hpcHNbMF07XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHRoaXMuZmlsdGVyZWREYXRhID0gZmlsdGVyZWREYXRhV2l0aFNlYXJjaC5maWx0ZXIob2JqID0+IG9iai50aXRsZS50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKHRoaXMuc2VhcmNoSW5wdXQpKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuZmlsdGVyZWREYXRhID0gWy4uLnRoaXMuc291cmNlRGF0YV0uZmlsdGVyKG9iaiA9PiBvYmoudGl0bGUudG9Mb3dlckNhc2UoKS5pbmNsdWRlcyh0aGlzLnNlYXJjaElucHV0KSk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmZpbHRlckRhdGEuZW1pdCh0aGlzLmZpbHRlcmVkRGF0YSk7XG4gICAgfVxuXG4gICAgY2xlYXJGaWx0ZXJzQW5kU2VsZWN0QWxsKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNsZWFyQWxsU2VsZWN0aW9ucygpO1xuICAgICAgICBsZXQgaXNGaXJzdEVsZW1lbnQgPSB0cnVlO1xuXG4gICAgICAgIHRoaXMuZXVpbUNoaXBTZWxlY3Rvckl0ZW1Db21wb25lbnQuZm9yRWFjaChjaGlwID0+IHtcbiAgICAgICAgICAgIGlmIChpc0ZpcnN0RWxlbWVudCkge1xuICAgICAgICAgICAgICAgIHRoaXMuYWRkU2VsZWN0ZWRTdHlsZXMoY2hpcC5lbC5uYXRpdmVFbGVtZW50KTtcbiAgICAgICAgICAgICAgICBpc0ZpcnN0RWxlbWVudCA9IGZhbHNlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLmZpbHRlckRhdGEuZW1pdCh0aGlzLnNvdXJjZURhdGEpO1xuICAgICAgICB0aGlzLmNsaWNrSXRlbXMuZW1pdCh0aGlzLnNlbGVjdGVkQ2hpcHMpO1xuICAgIH1cblxuICAgIHVwZGF0ZUNoaXBzQW5kRmlsdGVyRGF0YUFmdGVySW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5ldWltQ2hpcFNlbGVjdG9ySXRlbUNvbXBvbmVudC5mb3JFYWNoKGNoaXAgPT4ge1xuICAgICAgICAgICAgdGhpcy5yZW1vdmVTZWxlY3RlZFN0eWxlcyhjaGlwLmVsLm5hdGl2ZUVsZW1lbnQpO1xuXG4gICAgICAgICAgICBpZiAoY2hpcC5pZCA9PT0gdW5kZWZpbmVkICYmIGNoaXAuZXVpbUNoaXBTZWxlY3RvckFsbCkge1xuICAgICAgICAgICAgICAgIGNoaXAuaWQgPSAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29uc3QgY2hpcElkID0gY2hpcC5pZDtcblxuICAgICAgICAgICAgaWYgKGNoaXBJZCAmJiB0aGlzLnNlbGVjdGVkQ2hpcHMuaW5jbHVkZXMoY2hpcElkKSkge1xuICAgICAgICAgICAgICAgIHRoaXMuYWRkU2VsZWN0ZWRTdHlsZXMoY2hpcC5lbC5uYXRpdmVFbGVtZW50KTtcbiAgICAgICAgICAgICAgICB0aGlzLmFwcGx5RmlsdGVyKG51bGwsIGNoaXAuZXVpbUNoaXBTZWxlY3RvckFsbCwgdGhpcy5zZWxlY3RlZENoaXBzKTtcbiAgICAgICAgICAgICAgICB0aGlzLmZpbHRlckRhdGEuZW1pdCh0aGlzLmZpbHRlcmVkRGF0YSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmICh0aGlzLnNlbGVjdGVkQ2hpcHMubGVuZ3RoID09PSAwICYmIGNoaXAuZXVpbUNoaXBTZWxlY3RvckFsbCkge1xuICAgICAgICAgICAgICAgIHRoaXMuYWRkU2VsZWN0ZWRTdHlsZXMoY2hpcC5lbC5uYXRpdmVFbGVtZW50KTtcbiAgICAgICAgICAgICAgICB0aGlzLnNlbGVjdGVkQ2hpcHMgPSBbJzAnXTtcbiAgICAgICAgICAgICAgICB0aGlzLmZpbHRlckRhdGEuZW1pdCh0aGlzLnNvdXJjZURhdGEpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgIH0pO1xuXG4gICAgICAgIGlmICh0aGlzLnNlbGVjdGVkQ2hpcHMubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgdGhpcy5lbWl0RXZlbnRzKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBlbWl0RXZlbnRzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNsaWNrSXRlbXMuZW1pdCh0aGlzLnNlbGVjdGVkQ2hpcHMpO1xuICAgIH1cblxuICAgIG9uRmlsdGVyQ2hhbmdlKGZpbHRlckNvbmRpdGlvbjogc3RyaW5nLCBpc0ZpbHRlckFsbDogQm9vbGVhbklucHV0LCBpdGVtKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmlzTXVsdGlTZWxlY3Rpb25Nb2RlKSB7XG4gICAgICAgICAgICB0aGlzLmhhbmRsZU11bHRpU2VsZWN0aW9uTW9kZShmaWx0ZXJDb25kaXRpb24sIGlzRmlsdGVyQWxsLCBpdGVtKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuaGFuZGxlU2luZ2xlU2VsZWN0aW9uTW9kZShmaWx0ZXJDb25kaXRpb24sIGlzRmlsdGVyQWxsKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuYXBwbHlGaWx0ZXIoZmlsdGVyQ29uZGl0aW9uLCBpc0ZpbHRlckFsbCwgdGhpcy5maWx0ZXJDb25kaXRpb25zKTtcbiAgICAgICAgdGhpcy5maWx0ZXJEYXRhLmVtaXQodGhpcy5maWx0ZXJlZERhdGEpO1xuICAgIH1cblxuICAgIGFwcGx5RmlsdGVyKGZpbHRlckNvbmRpdGlvbjogc3RyaW5nLCBpc0FsbEZpbHRlcjogQm9vbGVhbklucHV0LCBtdWx0aXBsZUZpbHRlckNvbmRpdGlvbnM6IHN0cmluZ1tdKTogdm9pZCB7XG5cbiAgICAgICAgaWYgKGlzQWxsRmlsdGVyICYmIG11bHRpcGxlRmlsdGVyQ29uZGl0aW9ucy5sZW5ndGggPT09IDApIHtcbiAgICAgICAgICAgIHRoaXMuZmlsdGVyZWREYXRhID0gWy4uLnRoaXMuc291cmNlRGF0YV07XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5ldWltS2VlcFNlbGVjdGlvbiAmJiB0aGlzLnNlYXJjaElucHV0ICE9PSAnJyAmJiAhaXNBbGxGaWx0ZXIgJiYgdGhpcy5pc011bHRpU2VsZWN0aW9uTW9kZSB8fCBtdWx0aXBsZUZpbHRlckNvbmRpdGlvbnMubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgY29uc3QgZmlsdGVyZWREYXRhID0gWy4uLnRoaXMuc291cmNlRGF0YV0uZmlsdGVyKGl0ZW0gPT4gbXVsdGlwbGVGaWx0ZXJDb25kaXRpb25zLmluY2x1ZGVzKGl0ZW0uZmlsdGVySWQpKTtcbiAgICAgICAgICAgIHRoaXMuZmlsdGVyZWREYXRhID0gZmlsdGVyZWREYXRhLmZpbHRlcihvYmogPT4gb2JqLnRpdGxlLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXModGhpcy5zZWFyY2hJbnB1dCkpO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMuaXNNdWx0aVNlbGVjdGlvbk1vZGUgfHwgbXVsdGlwbGVGaWx0ZXJDb25kaXRpb25zLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIHRoaXMuZmlsdGVyZWREYXRhID0gWy4uLnRoaXMuc291cmNlRGF0YV0uZmlsdGVyKGl0ZW0gPT4gbXVsdGlwbGVGaWx0ZXJDb25kaXRpb25zLmluY2x1ZGVzKGl0ZW0uZmlsdGVySWQpKTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLmV1aW1LZWVwU2VsZWN0aW9uICYmIHRoaXMuc2VhcmNoSW5wdXQgIT09ICcnICYmICFpc0FsbEZpbHRlcikge1xuICAgICAgICAgICAgY29uc3QgZmlsdGVyZWREYXRhID0gWy4uLnRoaXMuc291cmNlRGF0YV0uZmlsdGVyKGl0ZW0gPT4ge1xuICAgICAgICAgICAgICAgIHJldHVybiBpdGVtLmZpbHRlcklkID09PSBmaWx0ZXJDb25kaXRpb247XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHRoaXMuZmlsdGVyZWREYXRhID0gZmlsdGVyZWREYXRhLmZpbHRlcihvYmogPT4gb2JqLnRpdGxlLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXModGhpcy5zZWFyY2hJbnB1dCkpO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5maWx0ZXJlZERhdGEgPSBbLi4udGhpcy5zb3VyY2VEYXRhXS5maWx0ZXIoaXRlbSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gaXRlbS5maWx0ZXJJZCA9PT0gZmlsdGVyQ29uZGl0aW9uO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBhZGRTZWxlY3RlZFN0eWxlcyhpdGVtKTogdm9pZCB7XG4gICAgICAgIGl0ZW0uY2xhc3NMaXN0LmFkZChgZXVpbS1jaGlwLXNlbGVjdG9yX19pdGVtLXNlbGVjdGVkLS1jb2xvci0ke3RoaXMuY2hpcFNlbGVjdGVkQ29sb3J9YCk7XG4gICAgICAgIGl0ZW0uc2V0QXR0cmlidXRlKCdzZWxlY3RlZCcsICd0cnVlJyk7XG4gICAgfVxuXG4gICAgcmVtb3ZlU2VsZWN0ZWRTdHlsZXMoaXRlbSk6IHZvaWQge1xuICAgICAgICBpdGVtLmNsYXNzTGlzdC5yZW1vdmUoYGV1aW0tY2hpcC1zZWxlY3Rvcl9faXRlbS1zZWxlY3RlZC0tY29sb3ItJHt0aGlzLmNoaXBTZWxlY3RlZENvbG9yfWApO1xuICAgICAgICBpdGVtLnJlbW92ZUF0dHJpYnV0ZSgnc2VsZWN0ZWQnKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGhhbmRsZU11bHRpU2VsZWN0aW9uTW9kZShmaWx0ZXJDb25kaXRpb246IHN0cmluZywgaXNGaWx0ZXJBbGw6IEJvb2xlYW5JbnB1dCwgaXRlbSk6IHZvaWQge1xuICAgICAgICBpZiAoIWlzRmlsdGVyQWxsKSB7XG4gICAgICAgICAgICB0aGlzLmZpbHRlckNvbmRpdGlvbnMgPSB0aGlzLnNlbGVjdGVkQ2hpcHM7XG4gICAgICAgICAgICBpZiAoIXRoaXMuZmlsdGVyQ29uZGl0aW9ucy5pbmNsdWRlcyhmaWx0ZXJDb25kaXRpb24pKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5maWx0ZXJDb25kaXRpb25zLnB1c2goZmlsdGVyQ29uZGl0aW9uKTtcbiAgICAgICAgICAgICAgICB0aGlzLmFkZFNlbGVjdGVkU3R5bGVzKGl0ZW0pO1xuICAgICAgICAgICAgfSBlbHNlIGlmICh0aGlzLmZpbHRlckNvbmRpdGlvbnMubGVuZ3RoID4gMSkge1xuICAgICAgICAgICAgICAgIHRoaXMuZmlsdGVyQ29uZGl0aW9ucyA9IHRoaXMuZmlsdGVyQ29uZGl0aW9ucy5maWx0ZXIoY2hpcCA9PiBjaGlwICE9PSBmaWx0ZXJDb25kaXRpb24pO1xuICAgICAgICAgICAgICAgIHRoaXMucmVtb3ZlU2VsZWN0ZWRTdHlsZXMoaXRlbSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aGlzLnNlbGVjdGVkQ2hpcHMgPSB0aGlzLmZpbHRlckNvbmRpdGlvbnMuZmlsdGVyKGVsID0+IGVsICE9PSAnMCcpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5jbGVhckFsbFNlbGVjdGlvbnMoKTtcbiAgICAgICAgICAgIHRoaXMuYWRkU2VsZWN0ZWRTdHlsZXMoaXRlbSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIGhhbmRsZVNpbmdsZVNlbGVjdGlvbk1vZGUoZmlsdGVyQ29uZGl0aW9uOiBzdHJpbmcsIGlzRmlsdGVyQWxsOiBCb29sZWFuSW5wdXQpOiB2b2lkIHtcbiAgICAgICAgaWYgKGlzRmlsdGVyQWxsKSB7XG4gICAgICAgICAgICB0aGlzLnNlbGVjdGVkQ2hpcHMgPSBbJzAnXTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRDaGlwcyA9IFtmaWx0ZXJDb25kaXRpb25dO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjbGVhckFsbFNlbGVjdGlvbnMoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZXVpbUNoaXBTZWxlY3Rvckl0ZW1Db21wb25lbnQuZm9yRWFjaChjaGlwID0+IHtcbiAgICAgICAgICAgIHRoaXMucmVtb3ZlU2VsZWN0ZWRTdHlsZXMoY2hpcC5lbC5uYXRpdmVFbGVtZW50KTtcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuZmlsdGVyQ29uZGl0aW9ucyA9IFtdO1xuICAgICAgICB0aGlzLnNlbGVjdGVkQ2hpcHMgPSBbJzAnXTtcbiAgICB9XG59XG5cbmludGVyZmFjZSBGaWx0ZXJlZERhdGEge1xuICAgIFtrZXk6IHN0cmluZ106IHN0cmluZztcbn1cbiIsIjxpb24tc2VhcmNoYmFyICpuZ0lmPVwiaGFzU2VhcmNoYmFyXCIgKGlvbkNoYW5nZSk9XCJoYW5kbGVDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAgICAgICAgICBjbGFzcz1cImV1aW0tY2hpcC1zZWxlY3Rvcl9fc2VhcmNoYmFyXCI+PC9pb24tc2VhcmNoYmFyPlxuPGV1aW0tc2Nyb2xsZXIteD5cbiAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG48L2V1aW0tc2Nyb2xsZXIteD5cblxuIl19
|
|
315
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXVpbS1jaGlwLXNlbGVjdG9yLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9ldWltLWNoaXAtc2VsZWN0b3IvZXVpbS1jaGlwLXNlbGVjdG9yLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9ldWltLWNoaXAtc2VsZWN0b3IvZXVpbS1jaGlwLXNlbGVjdG9yLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUF1Qyx1QkFBdUIsRUFBRSxlQUFlLEVBQW9CLFdBQVcsRUFBRSxLQUFLLEVBQUUsaUJBQWlCLEVBQWlCLE1BQU0sRUFBRSxZQUFZLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFFbE8sT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUMxQyxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSw2REFBNkQsQ0FBQzs7Ozs7QUFXNUcsTUFBTSxPQUFPLHlCQUF5QjtJQVJ0QztRQVVhLG9CQUFlLEdBQThCLFNBQVMsQ0FBQztRQUNoRTs7O1dBR0c7UUFDTSxjQUFTLEdBQXlGLE9BQU8sQ0FBQztRQUMxRyxVQUFLLEdBQXlGLE9BQU8sQ0FBQztRQUN0RyxzQkFBaUIsR0FBcUIsT0FBTyxDQUFDO1FBQzlDLGFBQVEsR0FBZ0UsU0FBUyxDQUFDO1FBQ2xGLGVBQVUsR0FBbUIsRUFBRSxDQUFDO1FBQ2hDLGtCQUFhLEdBQUcsRUFBRSxDQUFDO1FBRzVCLHlCQUFvQixHQUFpQixLQUFLLENBQUM7UUFHM0Msc0JBQWlCLEdBQWlCLEtBQUssQ0FBQztRQUd4QyxpQkFBWSxHQUFpQixLQUFLLENBQUM7UUFDekIsZUFBVSxHQUFHLElBQUksWUFBWSxFQUFrQixDQUFDO1FBQ2hELGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBWSxDQUFDO1FBVXBELGlCQUFZLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUNwQyxxQkFBZ0IsR0FBRyxFQUFFLENBQUE7UUFDckIsZ0JBQVcsR0FBRyxFQUFFLENBQUM7UUFFakIsc0JBQWlCLEdBQUcsS0FBSyxDQUFDO0tBK1E3QjtJQTNSRyxJQUNJLFVBQVU7UUFDVixPQUFPLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUNoQyxDQUFDO0lBV0QsZUFBZTtRQUNYLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO0lBQzdCLENBQUM7SUFFRCxrQkFBa0I7UUFDZCxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztRQUMxQixJQUFJLENBQUMsaUNBQWlDLEVBQUUsQ0FBQztRQUN6QyxJQUFJLENBQUMscUJBQXFCLEVBQUUsQ0FBQztJQUNqQyxDQUFDO0lBRUQsV0FBVztRQUNQLElBQUksSUFBSSxDQUFDLGdDQUFnQyxFQUFFO1lBQ3ZDLElBQUksQ0FBQyxnQ0FBZ0MsQ0FBQyxXQUFXLEVBQUUsQ0FBQztTQUN2RDtJQUNMLENBQUM7SUFFRCxrQkFBa0I7UUFDZCxJQUFJLElBQUksQ0FBQyxnQ0FBZ0MsRUFBRTtZQUN2QyxJQUFJLENBQUMsZ0NBQWdDLENBQUMsV0FBVyxFQUFFLENBQUM7U0FDdkQ7UUFFRCxJQUFJLENBQUMsZ0NBQWdDLEdBQUcsSUFBSSxDQUFDLDZCQUE2QixDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQzlGLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1lBQzdCLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1FBQzdCLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELFdBQVcsQ0FBQyxPQUFzQjtRQUM5QixJQUFJLElBQUksQ0FBQyw2QkFBNkIsSUFBSSxJQUFJLENBQUMsNkJBQTZCLENBQUMsTUFBTSxHQUFHLENBQUM7WUFDbkYsT0FBTyxDQUFDLGFBQWEsQ0FBQyxZQUFZLElBQUksT0FBTyxDQUFDLGFBQWEsQ0FBQyxZQUFZLENBQUMsTUFBTSxLQUFLLENBQUM7WUFDckYsT0FBTyxDQUFDLGFBQWEsQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUMsS0FBSyxFQUFFLEtBQUssRUFBRSxFQUFFLENBQUMsS0FBSyxLQUFLLEdBQUcsQ0FBQyxFQUFFO1lBQzNFLElBQUksQ0FBQyx3QkFBd0IsRUFBRSxDQUFDO1NBQ25DO0lBQ0wsQ0FBQztJQUVELGFBQWE7UUFDVCxPQUFPO1lBQ0gsb0JBQW9CO1lBQ3BCLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLHdDQUF3QyxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUU7U0FDN0YsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDdkIsQ0FBQztJQUVELGlCQUFpQjtRQUNiLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1FBQ3pDLElBQUksQ0FBQyw2QkFBNkIsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDOUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEVBQUU7Z0JBQ25DLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDbkQsQ0FBQyxDQUFDLENBQUM7UUFDUCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRCxpQkFBaUI7UUFDYixJQUFJLFlBQVksR0FBRyxPQUFPLENBQUM7UUFDM0IsOEVBQThFO1FBQzlFLGlEQUFpRDtRQUNqRCw2Q0FBNkM7UUFDN0MsSUFBSSxJQUFJLENBQUMsU0FBUyxLQUFLLE9BQU8sSUFBSSxJQUFJLENBQUMsS0FBSyxJQUFJLE9BQU8sRUFBRTtZQUNyRCxZQUFZLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQztTQUM3QjthQUFNO1lBQ0gsWUFBWSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUM7U0FDakM7UUFFRCxPQUFPO1lBQ0gsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsa0NBQWtDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRTtZQUN0RSxZQUFZLENBQUMsQ0FBQyxDQUFDLG1DQUFtQyxZQUFZLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRTtTQUN4RSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNoQixDQUFDO0lBRUQscUJBQXFCO1FBQ2pCLElBQUksQ0FBQyw2QkFBNkIsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDOUMsSUFBSSxDQUFDLElBQUksQ0FBQyxlQUFlLEVBQUU7Z0JBQ3ZCLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sRUFBRSxHQUFHLEVBQUU7b0JBRWpELElBQUksQ0FBQyxJQUFJLENBQUMsaUJBQWlCLEVBQUU7d0JBQ3pCLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLENBQUM7d0JBRTlCLElBQUksQ0FBQyw2QkFBNkIsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEVBQUU7NEJBQ25ELElBQUksQ0FBQyxJQUFJLENBQUMsb0JBQW9CLElBQUksQ0FBQyxJQUFJLENBQUMsb0JBQW9CLElBQUksU0FBUyxDQUFDLG1CQUFtQixDQUFDLEVBQUU7Z0NBQzVGLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxDQUFDOzZCQUN6RDt3QkFDTCxDQUFDLENBQUMsQ0FBQzt3QkFFSCxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsQ0FBQzt3QkFFOUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFLFFBQVEsRUFBRSxFQUFFLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxDQUFDO3dCQUMxRixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7d0JBQ3hDLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQzt3QkFFekMsSUFBSSxDQUFDLGlCQUFpQixHQUFHLEtBQUssQ0FBQztxQkFDbEM7Z0JBQ0wsQ0FBQyxDQUFDLENBQUM7Z0JBQ0gsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUM7YUFDL0I7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRCxpQkFBaUIsQ0FBQyxJQUFJO1FBQ2xCLElBQUksQ0FBQyxJQUFJLENBQUMsaUJBQWlCLEVBQUU7WUFDekIsSUFBSSxDQUFDLGlCQUFpQixHQUFHLElBQUksQ0FBQztZQUU5QixJQUFJLENBQUMsNkJBQTZCLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxFQUFFO2dCQUNuRCxJQUFJLENBQUMsSUFBSSxDQUFDLG9CQUFvQixJQUFJLENBQUMsSUFBSSxDQUFDLG9CQUFvQixJQUFJLFNBQVMsQ0FBQyxtQkFBbUIsQ0FBQyxFQUFFO29CQUM1RixJQUFJLENBQUMsb0JBQW9CLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsQ0FBQztpQkFDekQ7WUFDTCxDQUFDLENBQUMsQ0FBQztZQUVILElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1lBRTlDLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLEVBQUUsRUFBRSxRQUFRLEVBQUUsRUFBRSxJQUFJLENBQUMsbUJBQW1CLEVBQUUsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsQ0FBQztZQUMxRixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7WUFDeEMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1lBRXpDLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxLQUFLLENBQUM7U0FDbEM7SUFDTCxDQUFDO0lBRUQsV0FBVyxDQUFDLGVBQXVCLEVBQUUsV0FBeUIsRUFBRSx3QkFBa0M7UUFDOUYsSUFBSSxZQUFZLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUV4QyxJQUFJLFdBQVcsRUFBRTtZQUNiLFlBQVksR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7U0FDdEU7YUFBTTtZQUNILElBQUksSUFBSSxDQUFDLG9CQUFvQixJQUFJLHdCQUF3QixDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7Z0JBQ2xFLFlBQVksR0FBRyxJQUFJLENBQUMsMEJBQTBCLENBQUMsWUFBWSxFQUFFLHdCQUF3QixDQUFDLENBQUM7YUFDMUY7aUJBQU07Z0JBQ0gsWUFBWSxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxZQUFZLEVBQUUsZUFBZSxDQUFDLENBQUM7YUFDeEU7WUFDRCxJQUFJLElBQUksQ0FBQyxpQkFBaUIsSUFBSSxJQUFJLENBQUMsV0FBVyxLQUFLLEVBQUUsRUFBRTtnQkFDbkQsWUFBWSxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQzthQUN0RTtTQUNKO1FBRUQsSUFBSSxDQUFDLFlBQVksR0FBRyxZQUFZLENBQUM7SUFDckMsQ0FBQztJQUVELHdCQUF3QjtRQUNwQixJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztRQUMxQixJQUFJLGNBQWMsR0FBRyxJQUFJLENBQUM7UUFFMUIsSUFBSSxDQUFDLDZCQUE2QixDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUM5QyxJQUFJLGNBQWMsRUFBRTtnQkFDaEIsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLENBQUM7Z0JBQzlDLGNBQWMsR0FBRyxLQUFLLENBQUM7YUFDMUI7UUFDTCxDQUFDLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUN0QyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVELGlDQUFpQztRQUM3QixJQUFJLENBQUMsNkJBQTZCLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQzlDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1lBRWpELElBQUksSUFBSSxDQUFDLEVBQUUsS0FBSyxTQUFTLElBQUksSUFBSSxDQUFDLG1CQUFtQixFQUFFO2dCQUNuRCxJQUFJLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQzthQUNmO1lBQ0QsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQztZQUV2QixJQUFJLE1BQU0sSUFBSSxJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsRUFBRTtnQkFDL0MsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLENBQUM7Z0JBQzlDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7Z0JBQ3JFLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQzthQUMzQztZQUVELElBQUksSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLEtBQUssQ0FBQyxJQUFJLElBQUksQ0FBQyxtQkFBbUIsRUFBRTtnQkFDN0QsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLENBQUM7Z0JBQzlDLElBQUksQ0FBQyxhQUFhLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztnQkFDM0IsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO2FBQ3pDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7UUFFSCxJQUFJLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtZQUMvQixJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7U0FDckI7SUFDTCxDQUFDO0lBRUQsVUFBVTtRQUNOLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBRUQsY0FBYyxDQUFDLGVBQXVCLEVBQUUsV0FBeUIsRUFBRSxJQUFJO1FBQ25FLElBQUksSUFBSSxDQUFDLG9CQUFvQixFQUFFO1lBQzNCLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxlQUFlLEVBQUUsV0FBVyxFQUFFLElBQUksQ0FBQyxDQUFDO1NBQ3JFO2FBQU07WUFDSCxJQUFJLENBQUMseUJBQXlCLENBQUMsZUFBZSxFQUFFLFdBQVcsQ0FBQyxDQUFDO1NBQ2hFO1FBRUQsSUFBSSxDQUFDLFdBQVcsQ0FBQyxlQUFlLEVBQUUsV0FBVyxFQUFFLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ3RFLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUM1QyxDQUFDO0lBRUQsOERBQThEO0lBQzlELFlBQVksQ0FBQyxLQUFVO1FBQ25CLElBQUksQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDcEQsSUFBSSxZQUFZLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUV4QyxJQUFJLElBQUksQ0FBQyxpQkFBaUIsRUFBRTtZQUN4QixZQUFZLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxZQUFZLEVBQUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1lBQ3BFLFlBQVksR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7U0FDdEU7YUFBTTtZQUNILFlBQVksR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7U0FDdEU7UUFFRCxJQUFJLENBQUMsWUFBWSxHQUFHLFlBQVksQ0FBQztRQUNqQyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDNUMsQ0FBQztJQUVELGlCQUFpQixDQUFDLElBQUk7UUFDbEIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsNENBQTRDLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDLENBQUM7UUFDekYsSUFBSSxDQUFDLFlBQVksQ0FBQyxVQUFVLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDMUMsQ0FBQztJQUVELG9CQUFvQixDQUFDLElBQUk7UUFDckIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsNENBQTRDLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDLENBQUM7UUFDNUYsSUFBSSxDQUFDLGVBQWUsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNyQyxDQUFDO0lBRU8sd0JBQXdCLENBQUMsZUFBdUIsRUFBRSxXQUF5QixFQUFFLElBQUk7UUFDckYsSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUNkLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDO1lBQzNDLElBQUksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxFQUFFO2dCQUNsRCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDO2dCQUM1QyxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLENBQUM7YUFDaEM7aUJBQU0sSUFBSSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtnQkFDekMsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLEtBQUssZUFBZSxDQUFDLENBQUM7Z0JBQ3ZGLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsQ0FBQzthQUNuQztZQUNELElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsS0FBSyxHQUFHLENBQUMsQ0FBQztTQUN2RTthQUFNO1lBQ0gsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7WUFDMUIsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxDQUFDO1NBQ2hDO0lBQ0wsQ0FBQztJQUVPLHlCQUF5QixDQUFDLGVBQXVCLEVBQUUsV0FBeUI7UUFDaEYsSUFBSSxXQUFXLEVBQUU7WUFDYixJQUFJLENBQUMsYUFBYSxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDOUI7YUFBTTtZQUNILElBQUksQ0FBQyxhQUFhLEdBQUcsQ0FBQyxlQUFlLENBQUMsQ0FBQztTQUMxQztJQUNMLENBQUM7SUFFTyxrQkFBa0I7UUFDdEIsSUFBSSxDQUFDLDZCQUE2QixDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUM5QyxJQUFJLENBQUMsb0JBQW9CLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUNyRCxDQUFDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxFQUFFLENBQUM7UUFDM0IsSUFBSSxDQUFDLGFBQWEsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQy9CLENBQUM7SUFFTyxjQUFjLENBQUMsSUFBb0IsRUFBRSxXQUFtQjtRQUM1RCxJQUFJLENBQUMsV0FBVztZQUFFLE9BQU8sSUFBSSxDQUFDO1FBQzlCLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsV0FBVyxFQUFFLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7SUFDN0UsQ0FBQztJQUVPLGFBQWEsQ0FBQyxJQUFvQixFQUFFLGFBQXVCO1FBQy9ELElBQUksYUFBYSxDQUFDLENBQUMsQ0FBQyxLQUFLLEdBQUc7WUFBRSxPQUFPLElBQUksQ0FBQztRQUMxQyxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO0lBQ3RFLENBQUM7SUFFTyxpQkFBaUIsQ0FBQyxJQUFvQixFQUFFLGVBQXVCO1FBQ25FLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxRQUFRLEtBQUssZUFBZSxDQUFDLENBQUM7SUFDbEUsQ0FBQztJQUVPLDBCQUEwQixDQUFDLElBQW9CLEVBQUUsd0JBQWtDO1FBQ3ZGLElBQUksd0JBQXdCLENBQUMsTUFBTSxLQUFLLENBQUM7WUFBRSxPQUFPLElBQUksQ0FBQztRQUN2RCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyx3QkFBd0IsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7SUFDakYsQ0FBQztrSUFuVFEseUJBQXlCO3NIQUF6Qix5QkFBeUIsbWlCQThCakIsNkJBQTZCLHFFQzVDbEQsK05BTUE7O0FEdUJJO0lBREMsYUFBYTt1RUFDNkI7QUFHM0M7SUFEQyxhQUFhO29FQUMwQjtBQUd4QztJQURDLGFBQWE7K0RBQ3FCOzRGQXJCMUIseUJBQXlCO2tCQVJyQyxTQUFTOytCQUNJLG9CQUFvQixpQkFHZixpQkFBaUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNOzhCQUt0QyxlQUFlO3NCQUF2QixLQUFLO2dCQUtHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLGlCQUFpQjtzQkFBekIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFHTixvQkFBb0I7c0JBRm5CLEtBQUs7Z0JBS04saUJBQWlCO3NCQUZoQixLQUFLO2dCQUtOLFlBQVk7c0JBRlgsS0FBSztnQkFHSSxVQUFVO3NCQUFuQixNQUFNO2dCQUNHLFVBQVU7c0JBQW5CLE1BQU07Z0JBR0gsVUFBVTtzQkFEYixXQUFXO3VCQUFDLE9BQU87Z0JBTXBCLDZCQUE2QjtzQkFENUIsZUFBZTt1QkFBQyw2QkFBNkIsRUFBRSxFQUFFLFdBQVcsRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIFF1ZXJ5TGlzdCwgT25DaGFuZ2VzLCBTaW1wbGVDaGFuZ2VzLCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29udGVudENoaWxkcmVuLCBBZnRlckNvbnRlbnRJbml0LCBIb3N0QmluZGluZywgSW5wdXQsIFZpZXdFbmNhcHN1bGF0aW9uLCBBZnRlclZpZXdJbml0LCBPdXRwdXQsIEV2ZW50RW1pdHRlciwgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCb29sZWFuSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nO1xuaW1wb3J0IHsgY29lcmNlQm9vbGVhbiB9IGZyb20gJ0BldWkvYmFzZSc7XG5pbXBvcnQgeyBFdWltQ2hpcFNlbGVjdG9ySXRlbURpcmVjdGl2ZSB9IGZyb20gJy4vZXVpbS1jaGlwLXNlbGVjdG9yLWl0ZW0vZXVpbS1jaGlwLXNlbGVjdG9yLWl0ZW0uZGlyZWN0aXZlJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2V1aW0tY2hpcC1zZWxlY3RvcicsXG4gICAgdGVtcGxhdGVVcmw6ICdldWltLWNoaXAtc2VsZWN0b3IuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL3N0eWxlcy9faW5kZXguc2NzcyddLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG5cbn0pXG5leHBvcnQgY2xhc3MgRXVpbUNoaXBTZWxlY3RvckNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIEFmdGVyQ29udGVudEluaXQsIE9uQ2hhbmdlcywgT25EZXN0cm95IHtcblxuICAgIEBJbnB1dCgpIGJhY2tncm91bmRDb2xvcjogJ3ByaW1hcnknIHwgICd3aGl0ZScgfCAnJyA9ICdwcmltYXJ5JztcbiAgICAvKipcbiAgICAgKiBAZGVwcmVjYXRlZCBXaWxsIGJlIHJlbW92ZWQgaW4gdjE3LlxuICAgICAqIFBsZWFzZSB1c2Uge0BsaW5rIGNvbG9yfSBwcm9wZXJ0eSBpbnN0ZWFkXG4gICAgICovXG4gICAgQElucHV0KCkgY2hpcENvbG9yOiAnZGVmYXVsdCcgfCAnZGFyaycgfCAnd2hpdGUnIHwgJ3ByaW1hcnknIHwgJ2luZm8nIHwgJ3N1Y2Nlc3MnIHwgJ3dhcm5pbmcnIHwgJ2RhbmdlcicgPSAnd2hpdGUnO1xuICAgIEBJbnB1dCgpIGNvbG9yOiAnZGVmYXVsdCcgfCAnZGFyaycgfCAnd2hpdGUnIHwgJ3ByaW1hcnknIHwgJ2luZm8nIHwgJ3N1Y2Nlc3MnIHwgJ3dhcm5pbmcnIHwgJ2RhbmdlcicgPSAnd2hpdGUnO1xuICAgIEBJbnB1dCgpIGNoaXBTZWxlY3RlZENvbG9yOiAnZGFyaycgfCAnd2hpdGUnID0gJ3doaXRlJztcbiAgICBASW5wdXQoKSBjaGlwRmlsbDogJ2RlZmF1bHQnIHwgJ2NsZWFyJyB8ICdvdXRsaW5lJyB8ICdvdXRsaW5lLXNvbGlkJyB8ICdzb2xpZCcgPSAnZGVmYXVsdCc7XG4gICAgQElucHV0KCkgc291cmNlRGF0YTogRmlsdGVyZWREYXRhW10gPSBbXTtcbiAgICBASW5wdXQoKSBzZWxlY3RlZENoaXBzID0gW107XG4gICAgQElucHV0KClcbiAgICBAY29lcmNlQm9vbGVhblxuICAgIGlzTXVsdGlTZWxlY3Rpb25Nb2RlOiBCb29sZWFuSW5wdXQgPSBmYWxzZTtcbiAgICBASW5wdXQoKVxuICAgIEBjb2VyY2VCb29sZWFuXG4gICAgZXVpbUtlZXBTZWxlY3Rpb246IEJvb2xlYW5JbnB1dCA9IGZhbHNlO1xuICAgIEBJbnB1dCgpXG4gICAgQGNvZXJjZUJvb2xlYW5cbiAgICBoYXNTZWFyY2hiYXI6IEJvb2xlYW5JbnB1dCA9IGZhbHNlO1xuICAgIEBPdXRwdXQoKSBmaWx0ZXJEYXRhID0gbmV3IEV2ZW50RW1pdHRlcjxGaWx0ZXJlZERhdGFbXT4oKTtcbiAgICBAT3V0cHV0KCkgY2xpY2tJdGVtcyA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nW10+KCk7XG5cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzJylcbiAgICBnZXQgY3NzQ2xhc3NlcygpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5nZXRDc3NDbGFzc2VzKCk7XG4gICAgfVxuXG4gICAgQENvbnRlbnRDaGlsZHJlbihFdWltQ2hpcFNlbGVjdG9ySXRlbURpcmVjdGl2ZSwgeyBkZXNjZW5kYW50czogdHJ1ZSB9KVxuICAgIGV1aW1DaGlwU2VsZWN0b3JJdGVtQ29tcG9uZW50OiBRdWVyeUxpc3Q8RXVpbUNoaXBTZWxlY3Rvckl0ZW1EaXJlY3RpdmU+O1xuXG4gICAgZmlsdGVyZWREYXRhID0gWy4uLnRoaXMuc291cmNlRGF0YV07XG4gICAgZmlsdGVyQ29uZGl0aW9ucyA9IFtdXG4gICAgc2VhcmNoSW5wdXQgPSAnJztcbiAgICBldWltQ2hpcFNlbGVjdG9ySXRlbVN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuICAgIGNsaWNrRXZlbnRIYW5kbGVkID0gZmFsc2U7XG5cbiAgICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc2V0Q3NzSXRlbUNsYXNzZXMoKTtcbiAgICB9XG5cbiAgICBuZ0FmdGVyQ29udGVudEluaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc3Vic2NyaWJlVG9DaGFuZ2VzKCk7XG4gICAgICAgIHRoaXMudXBkYXRlQ2hpcHNBbmRGaWx0ZXJEYXRhQWZ0ZXJJbml0KCk7XG4gICAgICAgIHRoaXMudXBkYXRlQ2hpcHNBbmRGaWx0ZXJzKCk7XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmV1aW1DaGlwU2VsZWN0b3JJdGVtU3Vic2NyaXB0aW9uKSB7XG4gICAgICAgICAgICB0aGlzLmV1aW1DaGlwU2VsZWN0b3JJdGVtU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBzdWJzY3JpYmVUb0NoYW5nZXMoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmV1aW1DaGlwU2VsZWN0b3JJdGVtU3Vic2NyaXB0aW9uKSB7XG4gICAgICAgICAgICB0aGlzLmV1aW1DaGlwU2VsZWN0b3JJdGVtU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmV1aW1DaGlwU2VsZWN0b3JJdGVtU3Vic2NyaXB0aW9uID0gdGhpcy5ldWltQ2hpcFNlbGVjdG9ySXRlbUNvbXBvbmVudC5jaGFuZ2VzLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLnVwZGF0ZUNoaXBzQW5kRmlsdGVycygpO1xuICAgICAgICAgICAgdGhpcy5zZXRDc3NJdGVtQ2xhc3NlcygpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmV1aW1DaGlwU2VsZWN0b3JJdGVtQ29tcG9uZW50ICYmIHRoaXMuZXVpbUNoaXBTZWxlY3Rvckl0ZW1Db21wb25lbnQubGVuZ3RoID4gMCAmJlxuICAgICAgICAgICAgY2hhbmdlcy5zZWxlY3RlZENoaXBzLmN1cnJlbnRWYWx1ZSAmJiBjaGFuZ2VzLnNlbGVjdGVkQ2hpcHMuY3VycmVudFZhbHVlLmxlbmd0aCA9PT0gMSAmJlxuICAgICAgICAgICAgY2hhbmdlcy5zZWxlY3RlZENoaXBzLmN1cnJlbnRWYWx1ZS5ldmVyeSgodmFsdWUsIGluZGV4KSA9PiB2YWx1ZSA9PT0gJzAnKSkge1xuICAgICAgICAgICAgdGhpcy5jbGVhckZpbHRlcnNBbmRTZWxlY3RBbGwoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGdldENzc0NsYXNzZXMoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAgICdldWltLWNoaXAtc2VsZWN0b3InLFxuICAgICAgICAgICAgdGhpcy5iYWNrZ3JvdW5kQ29sb3IgPyBgZXVpbS1jaGlwLXNlbGVjdG9yLS1iYWNrZ3JvdW5kLWNvbG9yLSR7dGhpcy5iYWNrZ3JvdW5kQ29sb3J9YCA6ICcnLFxuICAgICAgICBdLmpvaW4oJyAnKS50cmltKCk7XG4gICAgfVxuXG4gICAgc2V0Q3NzSXRlbUNsYXNzZXMoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGNsYXNzZXMgPSB0aGlzLmdldENzc0l0ZW1DbGFzc2VzKCk7XG4gICAgICAgIHRoaXMuZXVpbUNoaXBTZWxlY3Rvckl0ZW1Db21wb25lbnQuZm9yRWFjaChjaGlwID0+IHtcbiAgICAgICAgICAgIGNsYXNzZXMuc3BsaXQoJyAnKS5mb3JFYWNoKGNsYXNzTmFtZSA9PiB7XG4gICAgICAgICAgICAgICAgY2hpcC5lbC5uYXRpdmVFbGVtZW50LmNsYXNzTGlzdC5hZGQoY2xhc3NOYW1lKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBnZXRDc3NJdGVtQ2xhc3NlcygpOiBzdHJpbmcge1xuICAgICAgICBsZXQgY3VycmVudENvbG9yID0gJ3doaXRlJztcbiAgICAgICAgLy8gaWYgY29sb3IgcHJvcGVydHkgaXMgZGlmZmVyZW50IGZyb20gZGVmYXVsdCBvbmUgKHdoaXRlKSB0aGFuIHVzZSBjaGlwIGNvbG9yXG4gICAgICAgIC8vIG1lYW5zIHVzaW5nIHRoZSBkZXByZWNhdGVkIGNoaXBDb2xvciBwcm9wZXJ0eSxcbiAgICAgICAgLy8gbmVlZGVkIGFzIGluIFYxOCB3aWxsIGJlIHJlbW92ZWQgY2hpcENvbG9yXG4gICAgICAgIGlmICh0aGlzLmNoaXBDb2xvciA9PT0gJ3doaXRlJyAmJiB0aGlzLmNvbG9yICE9ICd3aGl0ZScpIHtcbiAgICAgICAgICAgIGN1cnJlbnRDb2xvciA9IHRoaXMuY29sb3I7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjdXJyZW50Q29sb3IgPSB0aGlzLmNoaXBDb2xvcjtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBbXG4gICAgICAgICAgICB0aGlzLmNoaXBGaWxsID8gYGV1aW0tY2hpcC1zZWxlY3Rvcl9faXRlbS0tZmlsbC0ke3RoaXMuY2hpcEZpbGx9YCA6ICcnLFxuICAgICAgICAgICAgY3VycmVudENvbG9yID8gYGV1aW0tY2hpcC1zZWxlY3Rvcl9faXRlbS0tY29sb3ItJHtjdXJyZW50Q29sb3J9YCA6ICcnLFxuICAgICAgICBdLmpvaW4oJyAnKTtcbiAgICB9XG5cbiAgICB1cGRhdGVDaGlwc0FuZEZpbHRlcnMoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZXVpbUNoaXBTZWxlY3Rvckl0ZW1Db21wb25lbnQuZm9yRWFjaChjaGlwID0+IHtcbiAgICAgICAgICAgIGlmICghY2hpcC5jbGlja0V2ZW50QWRkZWQpIHtcbiAgICAgICAgICAgICAgICBjaGlwLmVsLm5hdGl2ZUVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCAoKSA9PiB7XG5cbiAgICAgICAgICAgICAgICAgICAgaWYgKCF0aGlzLmNsaWNrRXZlbnRIYW5kbGVkKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmNsaWNrRXZlbnRIYW5kbGVkID0gdHJ1ZTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5ldWltQ2hpcFNlbGVjdG9ySXRlbUNvbXBvbmVudC5mb3JFYWNoKGlubmVyQ2hpcCA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCF0aGlzLmlzTXVsdGlTZWxlY3Rpb25Nb2RlIHx8ICh0aGlzLmlzTXVsdGlTZWxlY3Rpb25Nb2RlICYmIGlubmVyQ2hpcC5ldWltQ2hpcFNlbGVjdG9yQWxsKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnJlbW92ZVNlbGVjdGVkU3R5bGVzKGlubmVyQ2hpcC5lbC5uYXRpdmVFbGVtZW50KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5hZGRTZWxlY3RlZFN0eWxlcyhjaGlwLmVsLm5hdGl2ZUVsZW1lbnQpO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm9uRmlsdGVyQ2hhbmdlKGNoaXAuaWQ/LnRvU3RyaW5nKCksIGNoaXAuZXVpbUNoaXBTZWxlY3RvckFsbCwgY2hpcC5lbC5uYXRpdmVFbGVtZW50KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZmlsdGVyRGF0YS5lbWl0KHRoaXMuZmlsdGVyZWREYXRhKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY2xpY2tJdGVtcy5lbWl0KHRoaXMuc2VsZWN0ZWRDaGlwcyk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY2xpY2tFdmVudEhhbmRsZWQgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIGNoaXAuY2xpY2tFdmVudEFkZGVkID0gdHJ1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgY2xpY2tFdmVudEhhbmRsZXIoY2hpcCk6IHZvaWQge1xuICAgICAgICBpZiAoIXRoaXMuY2xpY2tFdmVudEhhbmRsZWQpIHtcbiAgICAgICAgICAgIHRoaXMuY2xpY2tFdmVudEhhbmRsZWQgPSB0cnVlO1xuXG4gICAgICAgICAgICB0aGlzLmV1aW1DaGlwU2VsZWN0b3JJdGVtQ29tcG9uZW50LmZvckVhY2goaW5uZXJDaGlwID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoIXRoaXMuaXNNdWx0aVNlbGVjdGlvbk1vZGUgfHwgKHRoaXMuaXNNdWx0aVNlbGVjdGlvbk1vZGUgJiYgaW5uZXJDaGlwLmV1aW1DaGlwU2VsZWN0b3JBbGwpKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucmVtb3ZlU2VsZWN0ZWRTdHlsZXMoaW5uZXJDaGlwLmVsLm5hdGl2ZUVsZW1lbnQpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICB0aGlzLmFkZFNlbGVjdGVkU3R5bGVzKGNoaXAuZWwubmF0aXZlRWxlbWVudCk7XG5cbiAgICAgICAgICAgIHRoaXMub25GaWx0ZXJDaGFuZ2UoY2hpcC5pZD8udG9TdHJpbmcoKSwgY2hpcC5ldWltQ2hpcFNlbGVjdG9yQWxsLCBjaGlwLmVsLm5hdGl2ZUVsZW1lbnQpO1xuICAgICAgICAgICAgdGhpcy5maWx0ZXJEYXRhLmVtaXQodGhpcy5maWx0ZXJlZERhdGEpO1xuICAgICAgICAgICAgdGhpcy5jbGlja0l0ZW1zLmVtaXQodGhpcy5zZWxlY3RlZENoaXBzKTtcblxuICAgICAgICAgICAgdGhpcy5jbGlja0V2ZW50SGFuZGxlZCA9IGZhbHNlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgYXBwbHlGaWx0ZXIoZmlsdGVyQ29uZGl0aW9uOiBzdHJpbmcsIGlzQWxsRmlsdGVyOiBCb29sZWFuSW5wdXQsIG11bHRpcGxlRmlsdGVyQ29uZGl0aW9uczogc3RyaW5nW10pOiB2b2lkIHtcbiAgICAgICAgbGV0IGZpbHRlcmVkRGF0YSA9IFsuLi50aGlzLnNvdXJjZURhdGFdO1xuXG4gICAgICAgIGlmIChpc0FsbEZpbHRlcikge1xuICAgICAgICAgICAgZmlsdGVyZWREYXRhID0gdGhpcy5maWx0ZXJCeVNlYXJjaChmaWx0ZXJlZERhdGEsIHRoaXMuc2VhcmNoSW5wdXQpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgaWYgKHRoaXMuaXNNdWx0aVNlbGVjdGlvbk1vZGUgfHwgbXVsdGlwbGVGaWx0ZXJDb25kaXRpb25zLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgICAgICBmaWx0ZXJlZERhdGEgPSB0aGlzLmZpbHRlckJ5TXVsdGlwbGVDb25kaXRpb25zKGZpbHRlcmVkRGF0YSwgbXVsdGlwbGVGaWx0ZXJDb25kaXRpb25zKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgZmlsdGVyZWREYXRhID0gdGhpcy5maWx0ZXJCeUNvbmRpdGlvbihmaWx0ZXJlZERhdGEsIGZpbHRlckNvbmRpdGlvbik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAodGhpcy5ldWltS2VlcFNlbGVjdGlvbiAmJiB0aGlzLnNlYXJjaElucHV0ICE9PSAnJykge1xuICAgICAgICAgICAgICAgIGZpbHRlcmVkRGF0YSA9IHRoaXMuZmlsdGVyQnlTZWFyY2goZmlsdGVyZWREYXRhLCB0aGlzLnNlYXJjaElucHV0KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuZmlsdGVyZWREYXRhID0gZmlsdGVyZWREYXRhO1xuICAgIH1cblxuICAgIGNsZWFyRmlsdGVyc0FuZFNlbGVjdEFsbCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jbGVhckFsbFNlbGVjdGlvbnMoKTtcbiAgICAgICAgbGV0IGlzRmlyc3RFbGVtZW50ID0gdHJ1ZTtcblxuICAgICAgICB0aGlzLmV1aW1DaGlwU2VsZWN0b3JJdGVtQ29tcG9uZW50LmZvckVhY2goY2hpcCA9PiB7XG4gICAgICAgICAgICBpZiAoaXNGaXJzdEVsZW1lbnQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmFkZFNlbGVjdGVkU3R5bGVzKGNoaXAuZWwubmF0aXZlRWxlbWVudCk7XG4gICAgICAgICAgICAgICAgaXNGaXJzdEVsZW1lbnQgPSBmYWxzZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG5cbiAgICAgICAgdGhpcy5maWx0ZXJEYXRhLmVtaXQodGhpcy5zb3VyY2VEYXRhKTtcbiAgICAgICAgdGhpcy5jbGlja0l0ZW1zLmVtaXQodGhpcy5zZWxlY3RlZENoaXBzKTtcbiAgICB9XG5cbiAgICB1cGRhdGVDaGlwc0FuZEZpbHRlckRhdGFBZnRlckluaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZXVpbUNoaXBTZWxlY3Rvckl0ZW1Db21wb25lbnQuZm9yRWFjaChjaGlwID0+IHtcbiAgICAgICAgICAgIHRoaXMucmVtb3ZlU2VsZWN0ZWRTdHlsZXMoY2hpcC5lbC5uYXRpdmVFbGVtZW50KTtcblxuICAgICAgICAgICAgaWYgKGNoaXAuaWQgPT09IHVuZGVmaW5lZCAmJiBjaGlwLmV1aW1DaGlwU2VsZWN0b3JBbGwpIHtcbiAgICAgICAgICAgICAgICBjaGlwLmlkID0gMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IGNoaXBJZCA9IGNoaXAuaWQ7XG5cbiAgICAgICAgICAgIGlmIChjaGlwSWQgJiYgdGhpcy5zZWxlY3RlZENoaXBzLmluY2x1ZGVzKGNoaXBJZCkpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmFkZFNlbGVjdGVkU3R5bGVzKGNoaXAuZWwubmF0aXZlRWxlbWVudCk7XG4gICAgICAgICAgICAgICAgdGhpcy5hcHBseUZpbHRlcihudWxsLCBjaGlwLmV1aW1DaGlwU2VsZWN0b3JBbGwsIHRoaXMuc2VsZWN0ZWRDaGlwcyk7XG4gICAgICAgICAgICAgICAgdGhpcy5maWx0ZXJEYXRhLmVtaXQodGhpcy5maWx0ZXJlZERhdGEpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAodGhpcy5zZWxlY3RlZENoaXBzLmxlbmd0aCA9PT0gMCAmJiBjaGlwLmV1aW1DaGlwU2VsZWN0b3JBbGwpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmFkZFNlbGVjdGVkU3R5bGVzKGNoaXAuZWwubmF0aXZlRWxlbWVudCk7XG4gICAgICAgICAgICAgICAgdGhpcy5zZWxlY3RlZENoaXBzID0gWycwJ107XG4gICAgICAgICAgICAgICAgdGhpcy5maWx0ZXJEYXRhLmVtaXQodGhpcy5zb3VyY2VEYXRhKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG5cbiAgICAgICAgaWYgKHRoaXMuc2VsZWN0ZWRDaGlwcy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICB0aGlzLmVtaXRFdmVudHMoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGVtaXRFdmVudHMoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuY2xpY2tJdGVtcy5lbWl0KHRoaXMuc2VsZWN0ZWRDaGlwcyk7XG4gICAgfVxuXG4gICAgb25GaWx0ZXJDaGFuZ2UoZmlsdGVyQ29uZGl0aW9uOiBzdHJpbmcsIGlzRmlsdGVyQWxsOiBCb29sZWFuSW5wdXQsIGl0ZW0pOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuaXNNdWx0aVNlbGVjdGlvbk1vZGUpIHtcbiAgICAgICAgICAgIHRoaXMuaGFuZGxlTXVsdGlTZWxlY3Rpb25Nb2RlKGZpbHRlckNvbmRpdGlvbiwgaXNGaWx0ZXJBbGwsIGl0ZW0pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5oYW5kbGVTaW5nbGVTZWxlY3Rpb25Nb2RlKGZpbHRlckNvbmRpdGlvbiwgaXNGaWx0ZXJBbGwpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5hcHBseUZpbHRlcihmaWx0ZXJDb25kaXRpb24sIGlzRmlsdGVyQWxsLCB0aGlzLmZpbHRlckNvbmRpdGlvbnMpO1xuICAgICAgICB0aGlzLmZpbHRlckRhdGEuZW1pdCh0aGlzLmZpbHRlcmVkRGF0YSk7XG4gICAgfVxuXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICBoYW5kbGVDaGFuZ2UoZXZlbnQ6IGFueSk6IHZvaWQge1xuICAgICAgICB0aGlzLnNlYXJjaElucHV0ID0gZXZlbnQuZGV0YWlsLnZhbHVlLnRvTG93ZXJDYXNlKCk7XG4gICAgICAgIGxldCBmaWx0ZXJlZERhdGEgPSBbLi4udGhpcy5zb3VyY2VEYXRhXTtcblxuICAgICAgICBpZiAodGhpcy5ldWltS2VlcFNlbGVjdGlvbikge1xuICAgICAgICAgICAgZmlsdGVyZWREYXRhID0gdGhpcy5maWx0ZXJCeUNoaXBzKGZpbHRlcmVkRGF0YSwgdGhpcy5zZWxlY3RlZENoaXBzKTtcbiAgICAgICAgICAgIGZpbHRlcmVkRGF0YSA9IHRoaXMuZmlsdGVyQnlTZWFyY2goZmlsdGVyZWREYXRhLCB0aGlzLnNlYXJjaElucHV0KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGZpbHRlcmVkRGF0YSA9IHRoaXMuZmlsdGVyQnlTZWFyY2goZmlsdGVyZWREYXRhLCB0aGlzLnNlYXJjaElucHV0KTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuZmlsdGVyZWREYXRhID0gZmlsdGVyZWREYXRhO1xuICAgICAgICB0aGlzLmZpbHRlckRhdGEuZW1pdCh0aGlzLmZpbHRlcmVkRGF0YSk7XG4gICAgfVxuXG4gICAgYWRkU2VsZWN0ZWRTdHlsZXMoaXRlbSk6IHZvaWQge1xuICAgICAgICBpdGVtLmNsYXNzTGlzdC5hZGQoYGV1aW0tY2hpcC1zZWxlY3Rvcl9faXRlbS1zZWxlY3RlZC0tY29sb3ItJHt0aGlzLmNoaXBTZWxlY3RlZENvbG9yfWApO1xuICAgICAgICBpdGVtLnNldEF0dHJpYnV0ZSgnc2VsZWN0ZWQnLCAndHJ1ZScpO1xuICAgIH1cblxuICAgIHJlbW92ZVNlbGVjdGVkU3R5bGVzKGl0ZW0pOiB2b2lkIHtcbiAgICAgICAgaXRlbS5jbGFzc0xpc3QucmVtb3ZlKGBldWltLWNoaXAtc2VsZWN0b3JfX2l0ZW0tc2VsZWN0ZWQtLWNvbG9yLSR7dGhpcy5jaGlwU2VsZWN0ZWRDb2xvcn1gKTtcbiAgICAgICAgaXRlbS5yZW1vdmVBdHRyaWJ1dGUoJ3NlbGVjdGVkJyk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBoYW5kbGVNdWx0aVNlbGVjdGlvbk1vZGUoZmlsdGVyQ29uZGl0aW9uOiBzdHJpbmcsIGlzRmlsdGVyQWxsOiBCb29sZWFuSW5wdXQsIGl0ZW0pOiB2b2lkIHtcbiAgICAgICAgaWYgKCFpc0ZpbHRlckFsbCkge1xuICAgICAgICAgICAgdGhpcy5maWx0ZXJDb25kaXRpb25zID0gdGhpcy5zZWxlY3RlZENoaXBzO1xuICAgICAgICAgICAgaWYgKCF0aGlzLmZpbHRlckNvbmRpdGlvbnMuaW5jbHVkZXMoZmlsdGVyQ29uZGl0aW9uKSkge1xuICAgICAgICAgICAgICAgIHRoaXMuZmlsdGVyQ29uZGl0aW9ucy5wdXNoKGZpbHRlckNvbmRpdGlvbik7XG4gICAgICAgICAgICAgICAgdGhpcy5hZGRTZWxlY3RlZFN0eWxlcyhpdGVtKTtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAodGhpcy5maWx0ZXJDb25kaXRpb25zLmxlbmd0aCA+IDEpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmZpbHRlckNvbmRpdGlvbnMgPSB0aGlzLmZpbHRlckNvbmRpdGlvbnMuZmlsdGVyKGNoaXAgPT4gY2hpcCAhPT0gZmlsdGVyQ29uZGl0aW9uKTtcbiAgICAgICAgICAgICAgICB0aGlzLnJlbW92ZVNlbGVjdGVkU3R5bGVzKGl0ZW0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGhpcy5zZWxlY3RlZENoaXBzID0gdGhpcy5maWx0ZXJDb25kaXRpb25zLmZpbHRlcihlbCA9PiBlbCAhPT0gJzAnKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuY2xlYXJBbGxTZWxlY3Rpb25zKCk7XG4gICAgICAgICAgICB0aGlzLmFkZFNlbGVjdGVkU3R5bGVzKGl0ZW0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBoYW5kbGVTaW5nbGVTZWxlY3Rpb25Nb2RlKGZpbHRlckNvbmRpdGlvbjogc3RyaW5nLCBpc0ZpbHRlckFsbDogQm9vbGVhbklucHV0KTogdm9pZCB7XG4gICAgICAgIGlmIChpc0ZpbHRlckFsbCkge1xuICAgICAgICAgICAgdGhpcy5zZWxlY3RlZENoaXBzID0gWycwJ107XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLnNlbGVjdGVkQ2hpcHMgPSBbZmlsdGVyQ29uZGl0aW9uXTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgY2xlYXJBbGxTZWxlY3Rpb25zKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmV1aW1DaGlwU2VsZWN0b3JJdGVtQ29tcG9uZW50LmZvckVhY2goY2hpcCA9PiB7XG4gICAgICAgICAgICB0aGlzLnJlbW92ZVNlbGVjdGVkU3R5bGVzKGNoaXAuZWwubmF0aXZlRWxlbWVudCk7XG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLmZpbHRlckNvbmRpdGlvbnMgPSBbXTtcbiAgICAgICAgdGhpcy5zZWxlY3RlZENoaXBzID0gWycwJ107XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBmaWx0ZXJCeVNlYXJjaChkYXRhOiBGaWx0ZXJlZERhdGFbXSwgc2VhcmNoSW5wdXQ6IHN0cmluZyk6IEZpbHRlcmVkRGF0YVtdIHtcbiAgICAgICAgaWYgKCFzZWFyY2hJbnB1dCkgcmV0dXJuIGRhdGE7XG4gICAgICAgIHJldHVybiBkYXRhLmZpbHRlcihvYmogPT4gb2JqLnRpdGxlLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoc2VhcmNoSW5wdXQpKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGZpbHRlckJ5Q2hpcHMoZGF0YTogRmlsdGVyZWREYXRhW10sIHNlbGVjdGVkQ2hpcHM6IHN0cmluZ1tdKTogRmlsdGVyZWREYXRhW10ge1xuICAgICAgICBpZiAoc2VsZWN0ZWRDaGlwc1swXSA9PT0gJzAnKSByZXR1cm4gZGF0YTtcbiAgICAgICAgcmV0dXJuIGRhdGEuZmlsdGVyKGl0ZW0gPT4gc2VsZWN0ZWRDaGlwcy5pbmNsdWRlcyhpdGVtLmZpbHRlcklkKSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBmaWx0ZXJCeUNvbmRpdGlvbihkYXRhOiBGaWx0ZXJlZERhdGFbXSwgZmlsdGVyQ29uZGl0aW9uOiBzdHJpbmcpOiBGaWx0ZXJlZERhdGFbXSB7XG4gICAgICAgIHJldHVybiBkYXRhLmZpbHRlcihpdGVtID0+IGl0ZW0uZmlsdGVySWQgPT09IGZpbHRlckNvbmRpdGlvbik7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBmaWx0ZXJCeU11bHRpcGxlQ29uZGl0aW9ucyhkYXRhOiBGaWx0ZXJlZERhdGFbXSwgbXVsdGlwbGVGaWx0ZXJDb25kaXRpb25zOiBzdHJpbmdbXSk6IEZpbHRlcmVkRGF0YVtdIHtcbiAgICAgICAgaWYgKG11bHRpcGxlRmlsdGVyQ29uZGl0aW9ucy5sZW5ndGggPT09IDApIHJldHVybiBkYXRhO1xuICAgICAgICByZXR1cm4gZGF0YS5maWx0ZXIoaXRlbSA9PiBtdWx0aXBsZUZpbHRlckNvbmRpdGlvbnMuaW5jbHVkZXMoaXRlbS5maWx0ZXJJZCkpO1xuICAgIH1cbn1cblxuaW50ZXJmYWNlIEZpbHRlcmVkRGF0YSB7XG4gICAgW2tleTogc3RyaW5nXTogc3RyaW5nO1xufVxuIiwiPGlvbi1zZWFyY2hiYXIgKm5nSWY9XCJoYXNTZWFyY2hiYXJcIiAoaW9uQ2hhbmdlKT1cImhhbmRsZUNoYW5nZSgkZXZlbnQpXCJcbiAgICAgICAgICAgICAgIGNsYXNzPVwiZXVpbS1jaGlwLXNlbGVjdG9yX19zZWFyY2hiYXJcIj48L2lvbi1zZWFyY2hiYXI+XG48ZXVpbS1zY3JvbGxlci14PlxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbjwvZXVpbS1zY3JvbGxlci14PlxuXG4iXX0=
|
|
@@ -1933,7 +1933,7 @@ class EuimBadgeComponent {
|
|
|
1933
1933
|
].join(' ').trim();
|
|
1934
1934
|
}
|
|
1935
1935
|
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EuimBadgeComponent, deps: [{ token: BaseStatesDirective }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1936
|
-
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: EuimBadgeComponent, selector: "euim-badge", host: { properties: { "class": "this.cssClasses" } }, hostDirectives: [{ directive: BaseStatesDirective, inputs: ["euimDanger", "euimDanger", "euimWarning", "euimWarning", "euimInfo", "euimInfo", "euimSuccess", "euimSuccess", "euimDefault", "euimDefault", "euimPositionTopEnd", "euimPositionTopEnd", "color", "color"] }], ngImport: i0, template: "<ng-content></ng-content>\n", styles: [".euim-badge{display:inline-flex;align-items:center;justify-content:center;border-radius:50px;height:var(--eui-base-spacing-l);min-width:var(--eui-base-spacing-l);padding:var(--eui-base-spacing-2xs) var(--eui-base-spacing-xs);color:var(--eui-base-color-white);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--eui-base-font-size-s)!important;line-height:var(--eui-base-font-size-m)!important;font:normal normal 400 1rem/1.25rem var(--eui-base-font-family);font-weight:700;box-sizing:border-box;letter-spacing:normal}.euim-avatar-icon{position:relative;overflow:visible}.euim-avatar-icon .euim-badge--position-top-end{position:absolute;right:-6px;top:-6px}ion-button::part(native){overflow:visible}ion-button .euim-badge--position-top-end{position:absolute;left:12px;top:-12px}.euim-badge--info{background:var(--eui-base-color-info-100)}.euim-badge--success{background:var(--eui-base-color-success-100)}.euim-badge--warning{background:var(--eui-base-color-warning-100)}.euim-badge--danger{background:var(--eui-base-color-danger-100)}.euim-badge--default{background:var(--eui-base-color-grey-20);color:var(--eui-base-color-grey-100)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
1936
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: EuimBadgeComponent, selector: "euim-badge", host: { properties: { "class": "this.cssClasses" } }, hostDirectives: [{ directive: BaseStatesDirective, inputs: ["euimDanger", "euimDanger", "euimWarning", "euimWarning", "euimInfo", "euimInfo", "euimSuccess", "euimSuccess", "euimDefault", "euimDefault", "euimPositionTopEnd", "euimPositionTopEnd", "euimSizeM", "euimSizeM", "euimSizeS", "euimSizeS", "euimSizeL", "euimSizeL", "color", "color"] }], ngImport: i0, template: "<ng-content></ng-content>\n", styles: [".euim-badge{display:inline-flex;align-items:center;justify-content:center;border-radius:50px;height:var(--eui-base-spacing-l);min-width:var(--eui-base-spacing-l);padding:var(--eui-base-spacing-2xs) var(--eui-base-spacing-xs);color:var(--eui-base-color-white);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--eui-base-font-size-s)!important;line-height:var(--eui-base-font-size-m)!important;font:normal normal 400 1rem/1.25rem var(--eui-base-font-family);font-weight:700;box-sizing:border-box;letter-spacing:normal}.euim-avatar-icon{position:relative;overflow:visible}.euim-avatar-icon .euim-badge--position-top-end{position:absolute;right:-6px;top:-6px}ion-button::part(native){overflow:visible}ion-button .euim-badge--position-top-end{position:absolute;left:12px;top:-12px}.euim-badge--info{background:var(--eui-base-color-info-100)}.euim-badge--success{background:var(--eui-base-color-success-100)}.euim-badge--warning{background:var(--eui-base-color-warning-100)}.euim-badge--danger{background:var(--eui-base-color-danger-100)}.euim-badge--default{background:var(--eui-base-color-grey-20);color:var(--eui-base-color-grey-100)}.euim-badge--size-s{min-width:var(--eui-base-spacing-m);height:var(--eui-base-spacing-m);padding:0 var(--eui-base-spacing-2xs);font-size:var(--eui-base-font-size-xs)!important;line-height:var(--eui-base-font-size-m)!important}.euim-badge--size-m{min-width:calc(var(--eui-base-spacing-m) + var(--eui-base-spacing-2xs));height:calc(var(--eui-base-spacing-m) + var(--eui-base-spacing-2xs));padding:calc(var(--eui-base-spacing-2xs) / 2) calc(var(--eui-base-spacing-s) / 2);font-size:var(--eui-base-font-size-xs)!important;line-height:var(--eui-base-font-size-m)!important}.euim-badge--size-l{height:var(--eui-base-spacing-l);min-width:var(--eui-base-spacing-l);padding:var(--eui-base-spacing-2xs) var(--eui-base-spacing-xs);font-size:var(--eui-base-font-size-s)!important;line-height:var(--eui-base-font-size-m)!important}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
1937
1937
|
}
|
|
1938
1938
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EuimBadgeComponent, decorators: [{
|
|
1939
1939
|
type: Component,
|
|
@@ -1947,10 +1947,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
1947
1947
|
'euimSuccess',
|
|
1948
1948
|
'euimDefault',
|
|
1949
1949
|
'euimPositionTopEnd',
|
|
1950
|
+
'euimSizeM',
|
|
1951
|
+
'euimSizeS',
|
|
1952
|
+
'euimSizeL',
|
|
1950
1953
|
'color',
|
|
1951
1954
|
],
|
|
1952
1955
|
},
|
|
1953
|
-
], template: "<ng-content></ng-content>\n", styles: [".euim-badge{display:inline-flex;align-items:center;justify-content:center;border-radius:50px;height:var(--eui-base-spacing-l);min-width:var(--eui-base-spacing-l);padding:var(--eui-base-spacing-2xs) var(--eui-base-spacing-xs);color:var(--eui-base-color-white);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--eui-base-font-size-s)!important;line-height:var(--eui-base-font-size-m)!important;font:normal normal 400 1rem/1.25rem var(--eui-base-font-family);font-weight:700;box-sizing:border-box;letter-spacing:normal}.euim-avatar-icon{position:relative;overflow:visible}.euim-avatar-icon .euim-badge--position-top-end{position:absolute;right:-6px;top:-6px}ion-button::part(native){overflow:visible}ion-button .euim-badge--position-top-end{position:absolute;left:12px;top:-12px}.euim-badge--info{background:var(--eui-base-color-info-100)}.euim-badge--success{background:var(--eui-base-color-success-100)}.euim-badge--warning{background:var(--eui-base-color-warning-100)}.euim-badge--danger{background:var(--eui-base-color-danger-100)}.euim-badge--default{background:var(--eui-base-color-grey-20);color:var(--eui-base-color-grey-100)}\n"] }]
|
|
1956
|
+
], template: "<ng-content></ng-content>\n", styles: [".euim-badge{display:inline-flex;align-items:center;justify-content:center;border-radius:50px;height:var(--eui-base-spacing-l);min-width:var(--eui-base-spacing-l);padding:var(--eui-base-spacing-2xs) var(--eui-base-spacing-xs);color:var(--eui-base-color-white);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--eui-base-font-size-s)!important;line-height:var(--eui-base-font-size-m)!important;font:normal normal 400 1rem/1.25rem var(--eui-base-font-family);font-weight:700;box-sizing:border-box;letter-spacing:normal}.euim-avatar-icon{position:relative;overflow:visible}.euim-avatar-icon .euim-badge--position-top-end{position:absolute;right:-6px;top:-6px}ion-button::part(native){overflow:visible}ion-button .euim-badge--position-top-end{position:absolute;left:12px;top:-12px}.euim-badge--info{background:var(--eui-base-color-info-100)}.euim-badge--success{background:var(--eui-base-color-success-100)}.euim-badge--warning{background:var(--eui-base-color-warning-100)}.euim-badge--danger{background:var(--eui-base-color-danger-100)}.euim-badge--default{background:var(--eui-base-color-grey-20);color:var(--eui-base-color-grey-100)}.euim-badge--size-s{min-width:var(--eui-base-spacing-m);height:var(--eui-base-spacing-m);padding:0 var(--eui-base-spacing-2xs);font-size:var(--eui-base-font-size-xs)!important;line-height:var(--eui-base-font-size-m)!important}.euim-badge--size-m{min-width:calc(var(--eui-base-spacing-m) + var(--eui-base-spacing-2xs));height:calc(var(--eui-base-spacing-m) + var(--eui-base-spacing-2xs));padding:calc(var(--eui-base-spacing-2xs) / 2) calc(var(--eui-base-spacing-s) / 2);font-size:var(--eui-base-font-size-xs)!important;line-height:var(--eui-base-font-size-m)!important}.euim-badge--size-l{height:var(--eui-base-spacing-l);min-width:var(--eui-base-spacing-l);padding:var(--eui-base-spacing-2xs) var(--eui-base-spacing-xs);font-size:var(--eui-base-font-size-s)!important;line-height:var(--eui-base-font-size-m)!important}\n"] }]
|
|
1954
1957
|
}], ctorParameters: function () { return [{ type: BaseStatesDirective }]; }, propDecorators: { cssClasses: [{
|
|
1955
1958
|
type: HostBinding,
|
|
1956
1959
|
args: ['class']
|
|
@@ -2619,11 +2622,11 @@ class EuimAvatarComponent {
|
|
|
2619
2622
|
this.className = 'euim-avatar';
|
|
2620
2623
|
}
|
|
2621
2624
|
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EuimAvatarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
2622
|
-
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: EuimAvatarComponent, selector: "euim-avatar", host: { properties: { "class": "this.className" } }, ngImport: i0, template: "<ng-content></ng-content>\n", styles: [".euim-avatar{display:inline-flex;position:relative}.euim-avatar[slot=start]{margin-inline-end:var(--eui-base-spacing-m)}.euim-avatar[slot=end]{margin-inline-start:var(--eui-base-spacing-m)}.euim-avatar__sub-icon{position:absolute;z-index:99;display:inline-flex;bottom:-6px;right:-6px}.euim-avatar-icon--fill-outline-solid{border-width:2px;border-style:solid;border-color:var(--eui-base-color-white)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
2625
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: EuimAvatarComponent, selector: "euim-avatar", host: { properties: { "class": "this.className" } }, ngImport: i0, template: "<ng-content></ng-content>\n", styles: [".euim-avatar{display:inline-flex;position:relative}.euim-avatar[slot=start]{margin-inline-end:var(--eui-base-spacing-m)}.euim-avatar[slot=end]{margin-inline-start:var(--eui-base-spacing-m)}.euim-avatar__sub-icon{position:absolute;z-index:99;display:inline-flex;bottom:-6px;right:-6px}.euim-avatar__sub-icon .euim-avatar-icon--fill-outline-solid{border-width:2px;border-style:solid;border-color:var(--eui-base-color-white)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
2623
2626
|
}
|
|
2624
2627
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EuimAvatarComponent, decorators: [{
|
|
2625
2628
|
type: Component,
|
|
2626
|
-
args: [{ selector: 'euim-avatar', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-content></ng-content>\n", styles: [".euim-avatar{display:inline-flex;position:relative}.euim-avatar[slot=start]{margin-inline-end:var(--eui-base-spacing-m)}.euim-avatar[slot=end]{margin-inline-start:var(--eui-base-spacing-m)}.euim-avatar__sub-icon{position:absolute;z-index:99;display:inline-flex;bottom:-6px;right:-6px}.euim-avatar-icon--fill-outline-solid{border-width:2px;border-style:solid;border-color:var(--eui-base-color-white)}\n"] }]
|
|
2629
|
+
args: [{ selector: 'euim-avatar', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-content></ng-content>\n", styles: [".euim-avatar{display:inline-flex;position:relative}.euim-avatar[slot=start]{margin-inline-end:var(--eui-base-spacing-m)}.euim-avatar[slot=end]{margin-inline-start:var(--eui-base-spacing-m)}.euim-avatar__sub-icon{position:absolute;z-index:99;display:inline-flex;bottom:-6px;right:-6px}.euim-avatar__sub-icon .euim-avatar-icon--fill-outline-solid{border-width:2px;border-style:solid;border-color:var(--eui-base-color-white)}\n"] }]
|
|
2627
2630
|
}], propDecorators: { className: [{
|
|
2628
2631
|
type: HostBinding,
|
|
2629
2632
|
args: ['class']
|
|
@@ -3549,28 +3552,23 @@ class EuimChipSelectorComponent {
|
|
|
3549
3552
|
this.clickEventHandled = false;
|
|
3550
3553
|
}
|
|
3551
3554
|
}
|
|
3552
|
-
|
|
3553
|
-
|
|
3554
|
-
|
|
3555
|
-
|
|
3556
|
-
return;
|
|
3557
|
-
let filteredDataWithSearch = [];
|
|
3558
|
-
if (this.selectedChips[0] !== '0' && this.isMultiSelectionMode) {
|
|
3559
|
-
filteredDataWithSearch = [...this.sourceData].filter(item => this.selectedChips.includes(item.filterId));
|
|
3560
|
-
this.filteredData = filteredDataWithSearch.filter(obj => obj.title.toLowerCase().includes(this.searchInput));
|
|
3561
|
-
this.filterData.emit(this.filteredData);
|
|
3562
|
-
return;
|
|
3563
|
-
}
|
|
3564
|
-
if (this.selectedChips[0] !== '0') {
|
|
3565
|
-
filteredDataWithSearch = [...this.sourceData].filter(item => {
|
|
3566
|
-
return item.filterId === this.selectedChips[0];
|
|
3567
|
-
});
|
|
3568
|
-
this.filteredData = filteredDataWithSearch.filter(obj => obj.title.toLowerCase().includes(this.searchInput));
|
|
3555
|
+
applyFilter(filterCondition, isAllFilter, multipleFilterConditions) {
|
|
3556
|
+
let filteredData = [...this.sourceData];
|
|
3557
|
+
if (isAllFilter) {
|
|
3558
|
+
filteredData = this.filterBySearch(filteredData, this.searchInput);
|
|
3569
3559
|
}
|
|
3570
3560
|
else {
|
|
3571
|
-
this.
|
|
3561
|
+
if (this.isMultiSelectionMode || multipleFilterConditions.length > 0) {
|
|
3562
|
+
filteredData = this.filterByMultipleConditions(filteredData, multipleFilterConditions);
|
|
3563
|
+
}
|
|
3564
|
+
else {
|
|
3565
|
+
filteredData = this.filterByCondition(filteredData, filterCondition);
|
|
3566
|
+
}
|
|
3567
|
+
if (this.euimKeepSelection && this.searchInput !== '') {
|
|
3568
|
+
filteredData = this.filterBySearch(filteredData, this.searchInput);
|
|
3569
|
+
}
|
|
3572
3570
|
}
|
|
3573
|
-
this.
|
|
3571
|
+
this.filteredData = filteredData;
|
|
3574
3572
|
}
|
|
3575
3573
|
clearFiltersAndSelectAll() {
|
|
3576
3574
|
this.clearAllSelections();
|
|
@@ -3619,30 +3617,19 @@ class EuimChipSelectorComponent {
|
|
|
3619
3617
|
this.applyFilter(filterCondition, isFilterAll, this.filterConditions);
|
|
3620
3618
|
this.filterData.emit(this.filteredData);
|
|
3621
3619
|
}
|
|
3622
|
-
|
|
3623
|
-
|
|
3624
|
-
|
|
3625
|
-
|
|
3626
|
-
|
|
3627
|
-
|
|
3628
|
-
|
|
3629
|
-
this.filteredData = filteredData.filter(obj => obj.title.toLowerCase().includes(this.searchInput));
|
|
3630
|
-
return;
|
|
3631
|
-
}
|
|
3632
|
-
if (this.isMultiSelectionMode || multipleFilterConditions.length > 0) {
|
|
3633
|
-
this.filteredData = [...this.sourceData].filter(item => multipleFilterConditions.includes(item.filterId));
|
|
3634
|
-
return;
|
|
3620
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
3621
|
+
handleChange(event) {
|
|
3622
|
+
this.searchInput = event.detail.value.toLowerCase();
|
|
3623
|
+
let filteredData = [...this.sourceData];
|
|
3624
|
+
if (this.euimKeepSelection) {
|
|
3625
|
+
filteredData = this.filterByChips(filteredData, this.selectedChips);
|
|
3626
|
+
filteredData = this.filterBySearch(filteredData, this.searchInput);
|
|
3635
3627
|
}
|
|
3636
|
-
|
|
3637
|
-
|
|
3638
|
-
return item.filterId === filterCondition;
|
|
3639
|
-
});
|
|
3640
|
-
this.filteredData = filteredData.filter(obj => obj.title.toLowerCase().includes(this.searchInput));
|
|
3641
|
-
return;
|
|
3628
|
+
else {
|
|
3629
|
+
filteredData = this.filterBySearch(filteredData, this.searchInput);
|
|
3642
3630
|
}
|
|
3643
|
-
this.filteredData =
|
|
3644
|
-
|
|
3645
|
-
});
|
|
3631
|
+
this.filteredData = filteredData;
|
|
3632
|
+
this.filterData.emit(this.filteredData);
|
|
3646
3633
|
}
|
|
3647
3634
|
addSelectedStyles(item) {
|
|
3648
3635
|
item.classList.add(`euim-chip-selector__item-selected--color-${this.chipSelectedColor}`);
|
|
@@ -3685,6 +3672,24 @@ class EuimChipSelectorComponent {
|
|
|
3685
3672
|
this.filterConditions = [];
|
|
3686
3673
|
this.selectedChips = ['0'];
|
|
3687
3674
|
}
|
|
3675
|
+
filterBySearch(data, searchInput) {
|
|
3676
|
+
if (!searchInput)
|
|
3677
|
+
return data;
|
|
3678
|
+
return data.filter(obj => obj.title.toLowerCase().includes(searchInput));
|
|
3679
|
+
}
|
|
3680
|
+
filterByChips(data, selectedChips) {
|
|
3681
|
+
if (selectedChips[0] === '0')
|
|
3682
|
+
return data;
|
|
3683
|
+
return data.filter(item => selectedChips.includes(item.filterId));
|
|
3684
|
+
}
|
|
3685
|
+
filterByCondition(data, filterCondition) {
|
|
3686
|
+
return data.filter(item => item.filterId === filterCondition);
|
|
3687
|
+
}
|
|
3688
|
+
filterByMultipleConditions(data, multipleFilterConditions) {
|
|
3689
|
+
if (multipleFilterConditions.length === 0)
|
|
3690
|
+
return data;
|
|
3691
|
+
return data.filter(item => multipleFilterConditions.includes(item.filterId));
|
|
3692
|
+
}
|
|
3688
3693
|
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EuimChipSelectorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
3689
3694
|
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: EuimChipSelectorComponent, selector: "euim-chip-selector", inputs: { backgroundColor: "backgroundColor", chipColor: "chipColor", color: "color", chipSelectedColor: "chipSelectedColor", chipFill: "chipFill", sourceData: "sourceData", selectedChips: "selectedChips", isMultiSelectionMode: "isMultiSelectionMode", euimKeepSelection: "euimKeepSelection", hasSearchbar: "hasSearchbar" }, outputs: { filterData: "filterData", clickItems: "clickItems" }, host: { properties: { "class": "this.cssClasses" } }, queries: [{ propertyName: "euimChipSelectorItemComponent", predicate: EuimChipSelectorItemDirective, descendants: true }], usesOnChanges: true, ngImport: i0, template: "<ion-searchbar *ngIf=\"hasSearchbar\" (ionChange)=\"handleChange($event)\"\n class=\"euim-chip-selector__searchbar\"></ion-searchbar>\n<euim-scroller-x>\n <ng-content></ng-content>\n</euim-scroller-x>\n\n", styles: [".euim-chip-selector{padding:var(--eui-base-spacing-xs) 0 var(--eui-base-spacing-xs) var(--eui-base-spacing-xs);display:flex;justify-content:center;flex-direction:column}.euim-chip-selector ion-chip{margin:0 var(--eui-base-spacing-xs) 0 0}.euim-chip-selector ion-searchbar{padding-inline-start:0;padding-top:0;padding-bottom:var(--eui-base-spacing-s)}.euim-chip-selector__item--fill-default,.euim-chip-selector--fill-solid{border:none}.euim-chip-selector__item--fill-outline{background-color:transparent!important;border-width:1px;border-style:solid}.euim-chip-selector__item--fill-clear{background-color:transparent!important;border:none}.euim-chip-selector__item--fill-outline-solid{border-width:1px;border-style:solid}.euim-chip-selector--background-color-primary{background-color:var(--eui-base-color-primary-100)}.euim-chip-selector__item--color-success{background-color:var(--eui-base-color-success-25);border-color:var(--eui-base-color-success-25);color:var(--eui-base-color-success-100)}.euim-chip-selector__item--color-success.euim-chip-selector__item--fill-outline{border-color:var(--eui-base-color-success-50)}.euim-chip-selector__item--color-warning{background-color:var(--eui-base-color-warning-25);border-color:var(--eui-base-color-warning-25);color:var(--eui-base-color-warning-140)}.euim-chip-selector__item--color-warning.euim-chip-selector__item--fill-outline{border-color:var(--eui-base-color-warning-50)}.euim-chip-selector__item--color-danger{background-color:var(--eui-base-color-danger-25);border-color:var(--eui-base-color-danger-25);color:var(--eui-base-color-danger-100)}.euim-chip-selector__item--color-danger.euim-chip-selector__item--fill-outline{border-color:var(--eui-base-color-danger-50)}.euim-chip-selector__item--color-primary{background-color:var(--eui-base-color-primary-25);border-color:var(--eui-base-color-primary-25);color:var(--eui-base-color-primary-100)}.euim-chip-selector__item--color-primary.euim-chip-selector__item--fill-outline{border-color:var(--eui-base-color-primary-50)}.euim-chip-selector__item--color-info{background-color:var(--eui-base-color-info-25);border-color:var(--eui-base-color-info-25);color:var(--eui-base-color-info-100)}.euim-chip-selector__item--color-info.euim-chip-selector__item--fill-outline{border-color:var(--eui-base-color-info-50)}.euim-chip-selector__item--color-dark{background-color:var(--eui-base-color-grey-100);border-color:var(--eui-base-color-grey-100);color:var(--eui-base-color-white)}.euim-chip-selector__item--color-dark.euim-chip-selector__item--fill-outline{color:var(--eui-base-color-grey-100)}.euim-chip-selector__item--color-white{background-color:var(--eui-base-color-white);border-color:var(--eui-base-color-white);color:var(--eui-base-color-grey-100)}.euim-chip-selector__item--color-white.euim-chip-selector__item--fill-outline{color:var(--eui-base-color-white)}.euim-chip-selector__item--color-default{background-color:var(--eui-base-grey-15);border-color:var(--eui-base-color-grey-15);color:var(--eui-base-color-grey-100)}.euim-chip-selector__item--color-default.euim-chip-selector__item--fill-outline{border-color:var(--eui-base-color-grey-50)}ion-chip.euim-chip-selector__item-selected--color-white{background-color:var(--eui-base-color-white)!important;border-color:var(--eui-base-color-white)!important;color:var(--eui-base-color-grey-100)!important}ion-chip.euim-chip-selector__item-selected--color-dark{background-color:var(--eui-base-color-grey-100)!important;border-color:var(--eui-base-color-grey-100)!important;color:var(--eui-base-color-white)!important}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i1.IonSearchbar, selector: "ion-searchbar", inputs: ["animated", "autocomplete", "autocorrect", "cancelButtonIcon", "cancelButtonText", "clearIcon", "color", "debounce", "disabled", "enterkeyhint", "inputmode", "mode", "placeholder", "searchIcon", "showCancelButton", "showClearButton", "spellcheck", "type", "value"] }, { kind: "directive", type: i1.TextValueAccessor, selector: "ion-input:not([type=number]),ion-textarea,ion-searchbar" }, { kind: "component", type: EuimScrollerXComponent, selector: "euim-scroller-x" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
3690
3695
|
}
|