@eui/components 15.5.6 → 15.5.7-snapshot-1707397428009

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.
@@ -205,7 +205,12 @@ export class EuiPopoverComponent extends BaseDirective {
205
205
  .withLockedPosition(true);
206
206
  }
207
207
  setPositionStream() {
208
- this.position$ = this.positionStrategyUpdate$.pipe(switchMap(() => this.positionStrategy.positionChanges), map(getPosition), distinctUntilChanged(), map((position) => [position, this.origin.getBoundingClientRect()]));
208
+ this.position$ = this.positionStrategyUpdate$.pipe(switchMap(() => this.positionStrategy.positionChanges), map(getPosition), distinctUntilChanged(), map((position) => {
209
+ const rect = this.origin.nativeElement ?
210
+ this.origin.nativeElement.getBoundingClientRect() :
211
+ this.origin.getBoundingClientRect();
212
+ return [position, rect];
213
+ }));
209
214
  }
210
215
  }
211
216
  /** @nocollapse */ EuiPopoverComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: EuiPopoverComponent, deps: [{ token: i1.Overlay }, { token: i0.ViewContainerRef }, { token: i1.ScrollDispatcher }], target: i0.ɵɵFactoryTarget.Component });
@@ -241,4 +246,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
241
246
  }], isDismissable: [{
242
247
  type: Input
243
248
  }] } });
244
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXVpLXBvcG92ZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vZXVpLXBvcG92ZXIvZXVpLXBvcG92ZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vZXVpLXBvcG92ZXIvZXVpLXBvcG92ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILFNBQVMsRUFDVCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLEtBQUssRUFDTCxTQUFTLEVBTVQsTUFBTSxFQUNOLFlBQVksR0FJZixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFVckQsT0FBTyxFQUFFLGVBQWUsRUFBYyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzFFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2pGLE9BQU8sRUFBRSxxQkFBcUIsRUFBZ0IsTUFBTSx1QkFBdUIsQ0FBQztBQUU1RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLE1BQU0sRUFBc0IsSUFBSSxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUUsV0FBVyxFQUFFLE1BQU0scUNBQXFDLENBQUM7Ozs7Ozs7OztBQVNoSCxNQUFNLE9BQU8sbUJBQW9CLFNBQVEsYUFBYTtJQWtFbEQsWUFDWSxPQUFnQixFQUNoQixnQkFBa0MsRUFDbEMsZ0JBQWtDO1FBRTFDLEtBQUssRUFBRSxDQUFDO1FBSkEsWUFBTyxHQUFQLE9BQU8sQ0FBUztRQUNoQixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQ2xDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFuRXJDLGFBQVEsR0FBdUIsUUFBUSxDQUFDO1FBQ3hDLFNBQUksR0FBNkUsU0FBUyxDQUFDO1FBQzNGLFNBQUksR0FBNEQsU0FBUyxDQUFDO1FBQzFFLFVBQUssR0FBVyxJQUFJLENBQUM7UUFFcEIsaUJBQVksR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQzVDLHdHQUF3RztRQUN4Ryw0REFBNEQ7UUFDbEQsU0FBSSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFDcEMsd0dBQXdHO1FBQ3hHLDREQUE0RDtRQUNsRCxVQUFLLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUc5Qiw0QkFBdUIsR0FBRyxJQUFJLENBQUM7UUFDL0IsY0FBUyxHQUFHLEdBQUcsQ0FBQztRQWFmLFlBQU8sR0FBRyxLQUFLLENBQUM7UUFRaEIsaUJBQVksR0FBRyxLQUFLLENBQUM7UUFRckIsb0JBQWUsR0FBRyxJQUFJLENBQUM7UUFRdkIsbUJBQWMsR0FBRyxJQUFJLENBQUM7UUFJdEIsYUFBUSxHQUFxQixJQUFJLE9BQU8sRUFBVyxDQUFDO1FBQ3BELFlBQU8sR0FBNkIsSUFBSSxlQUFlLENBQVUsS0FBSyxDQUFDLENBQUM7UUFDeEUsaUNBQTRCLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUVsRCxzQkFBaUIsR0FBNkIsQ0FBQyxNQUFNLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQztRQUV6RSw0QkFBdUIsR0FBa0IsSUFBSSxPQUFPLEVBQUUsQ0FBQztJQVEvRCxDQUFDO0lBbERELDhEQUE4RDtJQUM5RCxJQUNJLE1BQU07UUFDTixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDeEIsQ0FBQztJQUNELElBQUksTUFBTSxDQUFDLEtBQW1CO1FBQzFCLElBQUksQ0FBQyxPQUFPLEdBQUcscUJBQXFCLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDaEQsQ0FBQztJQUVELElBQ0ksV0FBVztRQUNYLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQztJQUM3QixDQUFDO0lBQ0QsSUFBSSxXQUFXLENBQUMsS0FBbUI7UUFDL0IsSUFBSSxDQUFDLFlBQVksR0FBRyxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNyRCxDQUFDO0lBRUQsSUFDSSxjQUFjO1FBQ2QsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDO0lBQ2hDLENBQUM7SUFDRCxJQUFJLGNBQWMsQ0FBQyxLQUFtQjtRQUNsQyxJQUFJLENBQUMsZUFBZSxHQUFHLHFCQUFxQixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3hELENBQUM7SUFFRCxJQUNJLGFBQWE7UUFDYixPQUFPLElBQUksQ0FBQyxjQUFjLENBQUM7SUFDL0IsQ0FBQztJQUNELElBQUksYUFBYSxDQUFDLEtBQW1CO1FBQ2pDLElBQUksQ0FBQyxjQUFjLEdBQUcscUJBQXFCLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQXFCRCxXQUFXLENBQUMsQ0FBZ0I7UUFDeEIsSUFBSSxJQUFJLENBQUMsUUFBUSxLQUFLLEtBQUssRUFBRTtZQUN6QixJQUFJLENBQUMsaUJBQWlCLEdBQUcsQ0FBQyxHQUFHLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQztTQUN2RDthQUFNLElBQUksSUFBSSxDQUFDLFFBQVEsS0FBSyxPQUFPLEVBQUU7WUFDbEMsSUFBSSxDQUFDLGlCQUFpQixHQUFHLENBQUMsS0FBSyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsTUFBTSxDQUFDLENBQUM7U0FDdkQ7YUFBTSxJQUFJLElBQUksQ0FBQyxRQUFRLEtBQUssTUFBTSxFQUFFO1lBQ2pDLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1NBQ3ZEO2FBQU07WUFDSCxJQUFJLENBQUMsaUJBQWlCLEdBQUcsQ0FBQyxNQUFNLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQztTQUN2RDtRQUVELElBQUksQ0FBQyxDQUFDLElBQUksRUFBRTtZQUNSLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxZQUFZLEtBQUssU0FBUyxFQUFFO2dCQUNuQyxJQUFJLENBQUMsU0FBUyxHQUFHLEdBQUcsQ0FBQzthQUN4QjtpQkFBTSxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsWUFBWSxLQUFLLE9BQU8sRUFBRTtnQkFDeEMsSUFBSSxDQUFDLFNBQVMsR0FBRyxHQUFHLENBQUM7YUFDeEI7aUJBQU0sSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLFlBQVksS0FBSyxPQUFPLEVBQUU7Z0JBQ3hDLElBQUksQ0FBQyxTQUFTLEdBQUcsR0FBRyxDQUFDO2FBQ3hCO2lCQUFNO2dCQUNILElBQUksQ0FBQyxTQUFTLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUM7YUFDeEM7U0FDSjtJQUNMLENBQUM7SUFFRCxRQUFRO1FBQ0osSUFBSSxDQUFDLFdBQVcsR0FBRyxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDekUsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7SUFDN0IsQ0FBQztJQUVELGVBQWU7UUFDWCxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksY0FBYyxDQUFDLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUNoRyxDQUFDO0lBRUQsV0FBVztRQUNQLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3pCLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDNUIsSUFBSSxDQUFDLDRCQUE0QixDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ2hELElBQUksQ0FBQyxVQUFVLEVBQUUsT0FBTyxFQUFFLENBQUM7UUFDM0IsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUM7SUFDM0IsQ0FBQztJQUVEOzs7Ozs7Ozs7O09BVUc7SUFDSCx5SEFBeUg7SUFDekgsSUFBSSxhQUFhO1FBQ2IsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQztJQUM5QixDQUFDO0lBRU0sZUFBZTtRQUNsQixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7UUFDbkQsSUFBSSxDQUFDLHVCQUF1QixDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3BDLElBQUksQ0FBQyxVQUFVLENBQUMsc0JBQXNCLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUM7SUFDbEUsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxXQUFXLENBQUMsTUFBa0I7UUFDakMsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUU7WUFDckIsSUFBSSxDQUFDLHVCQUF1QixHQUFHLElBQUksQ0FBQztZQUNwQyxJQUFJLENBQUMsNEJBQTRCLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEtBQW9CLEVBQUUsRUFBRTtnQkFDbEgsTUFBTSxnQkFBZ0IsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxhQUFhLEVBQUUsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLENBQUM7Z0JBQ3RHLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQWdDLEVBQUUsZ0JBQWdCLENBQUMsRUFBRTtvQkFDckUsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO2lCQUN2QjtZQUNMLENBQUMsQ0FBQyxDQUFDO1lBRUgsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7WUFDckIsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztZQUVwRCxNQUFNLGNBQWMsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLGdCQUFnQixDQUFDLFVBQVUsQ0FBQyxFQUFFLGNBQWMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBRXhGLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUM7Z0JBQ2xDLGdCQUFnQjtnQkFDaEIsY0FBYztnQkFDZCxtQkFBbUIsRUFBRSxJQUFJO2dCQUN6QixLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUs7YUFDcEIsQ0FBQyxDQUFDO1lBQ0gsSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1lBRTVDLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxnQkFBZ0IsQ0FBQztZQUN6QyxJQUFJLENBQUMsdUJBQXVCLENBQUMsSUFBSSxFQUFFLENBQUM7WUFFcEMsSUFBSSxDQUFDLFVBQVU7aUJBQ1Ysb0JBQW9CLEVBQUU7aUJBQ3RCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO2lCQUM5QixTQUFTLENBQUMsR0FBRyxFQUFFO2dCQUNaLElBQUksSUFBSSxDQUFDLGFBQWEsRUFBRTtvQkFDcEIsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUUsQ0FBQztvQkFDekIsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO2lCQUN2QjtZQUNMLENBQUMsQ0FBQyxDQUFDO1lBRVAsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDeEIsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztTQUNwQjtJQUNMLENBQUM7SUFFRDs7T0FFRztJQUNJLFlBQVk7UUFDZixJQUFJLENBQUMsNEJBQTRCLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDaEQsSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUMxQixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQztRQUN2QixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN6QixJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3RCLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNJLFNBQVMsQ0FBQyxLQUFvQjtRQUNqQyxJQUFJLEtBQUssQ0FBQyxHQUFHLEtBQUssUUFBUSxFQUFFO1lBQ3hCLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztTQUN2QjtJQUNMLENBQUM7SUFFTyxTQUFTLENBQUMsTUFBbUIsRUFBRSxnQkFBNkI7UUFDaEUsTUFBTSxPQUFPLEdBQUcsTUFBTSxDQUFDLHFCQUFxQixFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ2pELE1BQU0saUJBQWlCLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxxQkFBcUIsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQy9FLE1BQU0sc0JBQXNCLEdBQUcsZ0JBQWdCLENBQUMscUJBQXFCLEVBQUUsQ0FBQyxNQUFNLEdBQUcsRUFBRSxDQUFDO1FBRXBGLE9BQU8sQ0FDSCxDQUFDLE9BQU8sR0FBRyxDQUFDLElBQUksT0FBTyxHQUFHLHNCQUFzQixDQUFDO1lBQ2pELENBQUMsT0FBTyxHQUFHLGlCQUFpQixHQUFHLENBQUMsSUFBSSxPQUFPLEdBQUcsaUJBQWlCLEdBQUcsc0JBQXNCLENBQUMsQ0FDNUYsQ0FBQztJQUNOLENBQUM7SUFFTyxtQkFBbUI7UUFDdkIsT0FBTyxJQUFJLENBQUMsT0FBTzthQUNkLFFBQVEsRUFBRTthQUNWLG1CQUFtQixDQUFDLElBQUksQ0FBQyxNQUFpRCxDQUFDO2FBQzNFLGFBQWEsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUM7YUFDckMsc0JBQXNCLENBQUMsS0FBSyxDQUFDO2FBQzdCLGtCQUFrQixDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFFTyxpQkFBaUI7UUFDckIsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUM5QyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGVBQWUsQ0FBQyxFQUN0RCxHQUFHLENBQUMsV0FBVyxDQUFDLEVBQ2hCLG9CQUFvQixFQUFFLEVBQ3RCLEdBQUcsQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUMsQ0FBQyxRQUFRLEVBQUcsSUFBSSxDQUFDLE1BQWlDLENBQUMscUJBQXFCLEVBQUUsQ0FBQyxDQUFDLENBQ2pHLENBQUM7SUFDTixDQUFDOzttSUF6T1EsbUJBQW1CO3VIQUFuQixtQkFBbUIsc2ZDekNoQyx1d0RBeUNBOzJGREFhLG1CQUFtQjtrQkFQL0IsU0FBUzsrQkFDSSxhQUFhLG1CQUdOLHVCQUF1QixDQUFDLE1BQU0saUJBQ2hDLGlCQUFpQixDQUFDLElBQUk7NEpBRzVCLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUVJLFlBQVk7c0JBQXJCLE1BQU07Z0JBR0csSUFBSTtzQkFBYixNQUFNO2dCQUdHLEtBQUs7c0JBQWQsTUFBTTtnQkFPNkIscUJBQXFCO3NCQUF4RCxTQUFTO3VCQUFDLHVCQUF1QjtnQkFJOUIsTUFBTTtzQkFEVCxLQUFLO2dCQVNGLFdBQVc7c0JBRGQsS0FBSztnQkFTRixjQUFjO3NCQURqQixLQUFLO2dCQVNGLGFBQWE7c0JBRGhCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENvbXBvbmVudCxcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBWaWV3RW5jYXBzdWxhdGlvbixcbiAgICBJbnB1dCxcbiAgICBWaWV3Q2hpbGQsXG4gICAgVGVtcGxhdGVSZWYsXG4gICAgVmlld0NvbnRhaW5lclJlZixcbiAgICBBZnRlclZpZXdJbml0LFxuICAgIE9uRGVzdHJveSxcbiAgICBPbkluaXQsXG4gICAgT3V0cHV0LFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBFbGVtZW50UmVmLFxuICAgIE9uQ2hhbmdlcyxcbiAgICBTaW1wbGVDaGFuZ2VzLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRlbXBsYXRlUG9ydGFsIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3BvcnRhbCc7XG5pbXBvcnQge1xuICAgIE92ZXJsYXksXG4gICAgT3ZlcmxheVJlZixcbiAgICBDb25uZWN0aW9uUG9zaXRpb25QYWlyLFxuICAgIEZsZXhpYmxlQ29ubmVjdGVkUG9zaXRpb25TdHJhdGVneU9yaWdpbixcbiAgICBTY3JvbGxEaXNwYXRjaGVyLFxuICAgIENka1Njcm9sbGFibGUsXG4gICAgRmxleGlibGVDb25uZWN0ZWRQb3NpdGlvblN0cmF0ZWd5LFxufSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUsIFN1YmplY3QsIFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZGlzdGluY3RVbnRpbENoYW5nZWQsIG1hcCwgc3dpdGNoTWFwLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBjb2VyY2VCb29sZWFuUHJvcGVydHksIEJvb2xlYW5JbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2VyY2lvbic7XG5cbmltcG9ydCB7IEJhc2VEaXJlY3RpdmUgfSBmcm9tICdAZXVpL2NvbXBvbmVudHMvc2hhcmVkJztcbmltcG9ydCB7IEJPVFRPTSwgRXVpUG9wb3ZlclBvc2l0aW9uLCBMRUZULCBSSUdIVCwgVE9QLCBnZXRQb3NpdGlvbiB9IGZyb20gJy4vbW9kZWxzL2V1aS1wb3BvdmVyLXBvc2l0aW9uLm1vZGVsJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdldWktcG9wb3ZlcicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2V1aS1wb3BvdmVyLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9zdHlsZXMvX2luZGV4LnNjc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxufSlcbmV4cG9ydCBjbGFzcyBFdWlQb3BvdmVyQ29tcG9uZW50IGV4dGVuZHMgQmFzZURpcmVjdGl2ZSBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSwgT25Jbml0LCBPbkNoYW5nZXMge1xuICAgIEBJbnB1dCgpIHRpdGxlOiBzdHJpbmc7XG4gICAgQElucHV0KCkgcG9zaXRpb246IEV1aVBvcG92ZXJQb3NpdGlvbiA9ICdib3R0b20nO1xuICAgIEBJbnB1dCgpIHNpemU6ICdkZWZhdWx0JyB8ICdzbWFsbCcgfCAnbGFyZ2UnIHwgJ2F1dG8nIHwgJ3MnIHwgJ20nIHwgJ2wnIHwgJ3hsJyB8IHN0cmluZyA9ICdkZWZhdWx0JztcbiAgICBASW5wdXQoKSB0eXBlOiAnZGVmYXVsdCcgfCAnZmxhdCcgfCAnY29sb3JlZC1oZWFkZXInIHwgJ2NvbG9yZWQtc29saWQnID0gJ2RlZmF1bHQnO1xuICAgIEBJbnB1dCgpIHdpZHRoOiBzdHJpbmcgPSBudWxsO1xuXG4gICAgQE91dHB1dCgpIG91dHNpZGVDbGljayA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgICAvLyBUT0RPOiBmaXggaXQgZm9yIHYxNyAtIE91dHB1dCBiaW5kaW5ncywgaW5jbHVkaW5nIGFsaWFzZXMsIHNob3VsZCBub3QgYmUgbmFtZWQgYXMgc3RhbmRhcmQgRE9NIGV2ZW50c1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8tb3V0cHV0LW5hdGl2ZVxuICAgIEBPdXRwdXQoKSBvcGVuID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICAgIC8vIFRPRE86IGZpeCBpdCBmb3IgdjE3IC0gT3V0cHV0IGJpbmRpbmdzLCBpbmNsdWRpbmcgYWxpYXNlcywgc2hvdWxkIG5vdCBiZSBuYW1lZCBhcyBzdGFuZGFyZCBET00gZXZlbnRzXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1vdXRwdXQtbmF0aXZlXG4gICAgQE91dHB1dCgpIGNsb3NlID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gICAgcHVibGljIHN0YXRlc0NsYXNzOiBzdHJpbmc7XG4gICAgcHVibGljIGNka1RyYXBGb2N1c0F1dG9DYXB0dXJlID0gdHJ1ZTtcbiAgICBwdWJsaWMgc2l6ZUNsYXNzID0gJ20nO1xuICAgIHB1YmxpYyBwb3NpdGlvbiQ6IE9ic2VydmFibGU8W0V1aVBvcG92ZXJQb3NpdGlvbiwgRE9NUmVjdF0+O1xuXG4gICAgQFZpZXdDaGlsZCgndGVtcGxhdGVQb3J0YWxDb250ZW50JykgdGVtcGxhdGVQb3J0YWxDb250ZW50OiBUZW1wbGF0ZVJlZjx1bmtub3duPjtcblxuICAgIC8qKiBAZGVwcmVjYXRlZCBUaGlzIHdpbGwgYmUgcmVtb3ZlZCBpbiBuZXh0IHZlcnNpb24gb2YgZXVpICovXG4gICAgQElucHV0KClcbiAgICBnZXQgaXNPcGVuKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5faXNPcGVuO1xuICAgIH1cbiAgICBzZXQgaXNPcGVuKHZhbHVlOiBCb29sZWFuSW5wdXQpIHtcbiAgICAgICAgdGhpcy5faXNPcGVuID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB9XG4gICAgcHJpdmF0ZSBfaXNPcGVuID0gZmFsc2U7XG4gICAgQElucHV0KClcbiAgICBnZXQgaGFzQmFja0Ryb3AoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9oYXNCYWNrRHJvcDtcbiAgICB9XG4gICAgc2V0IGhhc0JhY2tEcm9wKHZhbHVlOiBCb29sZWFuSW5wdXQpIHtcbiAgICAgICAgdGhpcy5faGFzQmFja0Ryb3AgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgIH1cbiAgICBwcml2YXRlIF9oYXNCYWNrRHJvcCA9IGZhbHNlO1xuICAgIEBJbnB1dCgpXG4gICAgZ2V0IGhhc0Nsb3NlQnV0dG9uKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5faGFzQ2xvc2VCdXR0b247XG4gICAgfVxuICAgIHNldCBoYXNDbG9zZUJ1dHRvbih2YWx1ZTogQm9vbGVhbklucHV0KSB7XG4gICAgICAgIHRoaXMuX2hhc0Nsb3NlQnV0dG9uID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB9XG4gICAgcHJpdmF0ZSBfaGFzQ2xvc2VCdXR0b24gPSB0cnVlO1xuICAgIEBJbnB1dCgpXG4gICAgZ2V0IGlzRGlzbWlzc2FibGUoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9pc0Rpc21pc3NhYmxlO1xuICAgIH1cbiAgICBzZXQgaXNEaXNtaXNzYWJsZSh2YWx1ZTogQm9vbGVhbklucHV0KSB7XG4gICAgICAgIHRoaXMuX2lzRGlzbWlzc2FibGUgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgIH1cbiAgICBwcml2YXRlIF9pc0Rpc21pc3NhYmxlID0gdHJ1ZTtcblxuICAgIHByaXZhdGUgdGVtcGxhdGVQb3J0YWw6IFRlbXBsYXRlUG9ydGFsO1xuICAgIHByaXZhdGUgb3ZlcmxheVJlZjogT3ZlcmxheVJlZjtcbiAgICBwcml2YXRlIGRlc3Ryb3kkOiBTdWJqZWN0PGJvb2xlYW4+ID0gbmV3IFN1YmplY3Q8Ym9vbGVhbj4oKTtcbiAgICBwcml2YXRlIGlzT3BlbiQ6IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPiA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuICAgIHByaXZhdGUgc2Nyb2xsRGlzcGF0Y2hlclN1YnNjcmlwdGlvbiA9IG5ldyBTdWJzY3JpcHRpb24oKTtcbiAgICBwcml2YXRlIG9yaWdpbjogRWxlbWVudFJlZjtcbiAgICBwcml2YXRlIHByZWZlcnJlZFBvc2l0b25zOiBDb25uZWN0aW9uUG9zaXRpb25QYWlyW10gPSBbQk9UVE9NLCBUT1AsIExFRlQsIFJJR0hUXTtcbiAgICBwcml2YXRlIHBvc2l0aW9uU3RyYXRlZ3k6IEZsZXhpYmxlQ29ubmVjdGVkUG9zaXRpb25TdHJhdGVneTtcbiAgICBwcml2YXRlIHBvc2l0aW9uU3RyYXRlZ3lVcGRhdGUkOiBTdWJqZWN0PHZvaWQ+ID0gbmV3IFN1YmplY3QoKTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIG92ZXJsYXk6IE92ZXJsYXksXG4gICAgICAgIHByaXZhdGUgdmlld0NvbnRhaW5lclJlZjogVmlld0NvbnRhaW5lclJlZixcbiAgICAgICAgcHJpdmF0ZSBzY3JvbGxEaXNwYXRjaGVyOiBTY3JvbGxEaXNwYXRjaGVyLFxuICAgICkge1xuICAgICAgICBzdXBlcigpO1xuICAgIH1cblxuICAgIG5nT25DaGFuZ2VzKGM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMucG9zaXRpb24gPT09ICd0b3AnKSB7XG4gICAgICAgICAgICB0aGlzLnByZWZlcnJlZFBvc2l0b25zID0gW1RPUCwgQk9UVE9NLCBMRUZULCBSSUdIVF07XG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy5wb3NpdGlvbiA9PT0gJ3JpZ2h0Jykge1xuICAgICAgICAgICAgdGhpcy5wcmVmZXJyZWRQb3NpdG9ucyA9IFtSSUdIVCwgTEVGVCwgVE9QLCBCT1RUT01dO1xuICAgICAgICB9IGVsc2UgaWYgKHRoaXMucG9zaXRpb24gPT09ICdsZWZ0Jykge1xuICAgICAgICAgICAgdGhpcy5wcmVmZXJyZWRQb3NpdG9ucyA9IFtMRUZULCBSSUdIVCwgVE9QLCBCT1RUT01dO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5wcmVmZXJyZWRQb3NpdG9ucyA9IFtCT1RUT00sIFRPUCwgTEVGVCwgUklHSFRdO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGMuc2l6ZSkge1xuICAgICAgICAgICAgaWYgKGMuc2l6ZS5jdXJyZW50VmFsdWUgPT09ICdkZWZhdWx0Jykge1xuICAgICAgICAgICAgICAgIHRoaXMuc2l6ZUNsYXNzID0gJ20nO1xuICAgICAgICAgICAgfSBlbHNlIGlmIChjLnNpemUuY3VycmVudFZhbHVlID09PSAnc21hbGwnKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5zaXplQ2xhc3MgPSAncyc7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKGMuc2l6ZS5jdXJyZW50VmFsdWUgPT09ICdsYXJnZScpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnNpemVDbGFzcyA9ICdsJztcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhpcy5zaXplQ2xhc3MgPSBjLnNpemUuY3VycmVudFZhbHVlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc3RhdGVzQ2xhc3MgPSBbc3VwZXIuZ2V0Q3NzQ2xhc3NlcygnZXVpLXBvcG92ZXInKV0uam9pbignICcpLnRyaW0oKTtcbiAgICAgICAgdGhpcy5zZXRQb3NpdGlvblN0cmVhbSgpO1xuICAgIH1cblxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy50ZW1wbGF0ZVBvcnRhbCA9IG5ldyBUZW1wbGF0ZVBvcnRhbCh0aGlzLnRlbXBsYXRlUG9ydGFsQ29udGVudCwgdGhpcy52aWV3Q29udGFpbmVyUmVmKTtcbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kZXN0cm95JC5uZXh0KHRydWUpO1xuICAgICAgICB0aGlzLmRlc3Ryb3kkLnVuc3Vic2NyaWJlKCk7XG4gICAgICAgIHRoaXMuc2Nyb2xsRGlzcGF0Y2hlclN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgICAgICB0aGlzLm92ZXJsYXlSZWY/LmRpc3Bvc2UoKTtcbiAgICAgICAgdGhpcy5vdmVybGF5UmVmID0gbnVsbDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBXaGV0aGVyIHRoZSBldWktcG9wb3ZlciBpcyBvcGVuLlxuICAgICAqXG4gICAgICogQHVzYWdlTm90ZXNcbiAgICAgKiBgYGBodG1sXG4gICAgICogPGV1aS1wb3BvdmVyICNwb3BvdmVyPlxuICAgICAqICAgICAgPG15LWNvbXBvbmVudCAqbmdJZj1cInBvcG92ZXIuaXNQb3BvdmVyT3BlblwiPjwvbXktY29tcG9uZW50PlxuICAgICAqIDwvZXVpLXBvcG92ZXI+XG4gICAgICogYGBgXG4gICAgICogQHJldHVybnMgQSBib29sZWFuIHdpdGggdmFsdWUgYHRydWVgIHdoZW4gb3Blbiwgb3RoZXJ3aXNlIGBmYWxzZWAuXG4gICAgICovXG4gICAgLy8gVE9ETzogSW4gbmV4dCB2ZXJzaW9uLCByZW1vdmUgaXNPcGVuIEBJbnB1dCB3aGljaCBpcyBub3QgdXNlZCwgZGVwcmVjYXRlZCB0aGlzIGlzUG9wb3Zlck9wZW4gYW5kIGNyZWF0ZSBpc09wZW4gaW5zdGVhZFxuICAgIGdldCBpc1BvcG92ZXJPcGVuKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5pc09wZW4kLnZhbHVlO1xuICAgIH1cblxuICAgIHB1YmxpYyBvbkNvbnRlbnRDaGFuZ2UoKTogdm9pZCB7XG4gICAgICAgIHRoaXMucG9zaXRpb25TdHJhdGVneSA9IHRoaXMuZ2V0UG9zaXRpb25TdHJhdGVneSgpO1xuICAgICAgICB0aGlzLnBvc2l0aW9uU3RyYXRlZ3lVcGRhdGUkLm5leHQoKTtcbiAgICAgICAgdGhpcy5vdmVybGF5UmVmLnVwZGF0ZVBvc2l0aW9uU3RyYXRlZ3kodGhpcy5wb3NpdGlvblN0cmF0ZWd5KTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBPcGVuIGEgcG9wb3ZlclxuICAgICAqXG4gICAgICogQHBhcmFtIG9yaWdpbiBPcmlnaW4gb2YgdGhlIHBvcG92ZXIgcG9zaXRpb25cbiAgICAgKi9cbiAgICBwdWJsaWMgb3BlblBvcG92ZXIob3JpZ2luOiBFbGVtZW50UmVmKTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy5pc1BvcG92ZXJPcGVuKSB7XG4gICAgICAgICAgICB0aGlzLmNka1RyYXBGb2N1c0F1dG9DYXB0dXJlID0gdHJ1ZTtcbiAgICAgICAgICAgIHRoaXMuc2Nyb2xsRGlzcGF0Y2hlclN1YnNjcmlwdGlvbiA9IHRoaXMuc2Nyb2xsRGlzcGF0Y2hlci5hbmNlc3RvclNjcm9sbGVkKG9yaWdpbikuc3Vic2NyaWJlKChldmVudDogQ2RrU2Nyb2xsYWJsZSkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IHNjcm9sbGFibGVQYXJlbnQgPSBldmVudCA/IGV2ZW50LmdldEVsZW1lbnRSZWYoKS5uYXRpdmVFbGVtZW50IDogZG9jdW1lbnQucXVlcnlTZWxlY3RvcignYm9keScpO1xuICAgICAgICAgICAgICAgIGlmICghdGhpcy5pc1Zpc2libGUob3JpZ2luIGFzIHVua25vd24gYXMgSFRNTEVsZW1lbnQsIHNjcm9sbGFibGVQYXJlbnQpKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY2xvc2VQb3BvdmVyKCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgIHRoaXMub3JpZ2luID0gb3JpZ2luO1xuICAgICAgICAgICAgY29uc3QgcG9zaXRpb25TdHJhdGVneSA9IHRoaXMuZ2V0UG9zaXRpb25TdHJhdGVneSgpO1xuXG4gICAgICAgICAgICBjb25zdCBzY3JvbGxTdHJhdGVneSA9IHRoaXMub3ZlcmxheS5zY3JvbGxTdHJhdGVnaWVzLnJlcG9zaXRpb24oeyBzY3JvbGxUaHJvdHRsZTogMTAgfSk7XG5cbiAgICAgICAgICAgIHRoaXMub3ZlcmxheVJlZiA9IHRoaXMub3ZlcmxheS5jcmVhdGUoe1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uU3RyYXRlZ3ksXG4gICAgICAgICAgICAgICAgc2Nyb2xsU3RyYXRlZ3ksXG4gICAgICAgICAgICAgICAgZGlzcG9zZU9uTmF2aWdhdGlvbjogdHJ1ZSxcbiAgICAgICAgICAgICAgICB3aWR0aDogdGhpcy53aWR0aCxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgdGhpcy5vdmVybGF5UmVmLmF0dGFjaCh0aGlzLnRlbXBsYXRlUG9ydGFsKTtcblxuICAgICAgICAgICAgdGhpcy5wb3NpdGlvblN0cmF0ZWd5ID0gcG9zaXRpb25TdHJhdGVneTtcbiAgICAgICAgICAgIHRoaXMucG9zaXRpb25TdHJhdGVneVVwZGF0ZSQubmV4dCgpO1xuXG4gICAgICAgICAgICB0aGlzLm92ZXJsYXlSZWZcbiAgICAgICAgICAgICAgICAub3V0c2lkZVBvaW50ZXJFdmVudHMoKVxuICAgICAgICAgICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcbiAgICAgICAgICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuaXNEaXNtaXNzYWJsZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5vdXRzaWRlQ2xpY2suZW1pdCgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jbG9zZVBvcG92ZXIoKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICB0aGlzLmlzT3BlbiQubmV4dCh0cnVlKTtcbiAgICAgICAgICAgIHRoaXMub3Blbi5lbWl0KCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDbG9zZSBhIHBvcG92ZXJcbiAgICAgKi9cbiAgICBwdWJsaWMgY2xvc2VQb3BvdmVyKCk6IHZvaWQge1xuICAgICAgICB0aGlzLnNjcm9sbERpc3BhdGNoZXJTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICAgICAgdGhpcy5vdmVybGF5UmVmLmRpc3Bvc2UoKTtcbiAgICAgICAgdGhpcy5vdmVybGF5UmVmID0gbnVsbDtcbiAgICAgICAgdGhpcy5pc09wZW4kLm5leHQoZmFsc2UpO1xuICAgICAgICB0aGlzLmNsb3NlLmVtaXQoKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZWFjdHMgb24gdGhlIEVzYyBrZXlkb3duIGV2ZW50IHRvIGNsb3NlIHRoZSBwb3B1cC4gQ2FuIGJlIHVzZWQgYXMgYWx0ZXJuYXRpdmUgdG8gdGhlIGNsb3NlIGljb24gYnV0dG9uLFxuICAgICAqIG9yIGFzIHRoZSBtYWluIHdheSB0byBjbG9zZSB0aGUgcG9wdXAgd2hlbiBoYXNDbG9zZUJ1dHRvbiBpcyBmYWxzZVxuICAgICAqXG4gICAgICogQHBhcmFtIGV2ZW50IFRoZSBrZXkgZXZlbnQgcHJlc3NlZFxuICAgICAqL1xuICAgIHB1YmxpYyBvbktleURvd24oZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKGV2ZW50LmtleSA9PT0gJ0VzY2FwZScpIHtcbiAgICAgICAgICAgIHRoaXMuY2xvc2VQb3BvdmVyKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIGlzVmlzaWJsZShvcmlnaW46IEhUTUxFbGVtZW50LCBzY3JvbGxhYmxlUGFyZW50OiBIVE1MRWxlbWVudCk6IGJvb2xlYW4ge1xuICAgICAgICBjb25zdCBvcmlnaW5ZID0gb3JpZ2luLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLnk7XG4gICAgICAgIGNvbnN0IHNjcm9sbGFibGVQYXJlbnRZID0gTWF0aC5hYnMoc2Nyb2xsYWJsZVBhcmVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS55KTtcbiAgICAgICAgY29uc3Qgc2Nyb2xsYWJsZVBhcmVudEhlaWdodCA9IHNjcm9sbGFibGVQYXJlbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkuaGVpZ2h0IC0gNTA7XG5cbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgIChvcmlnaW5ZID4gMCAmJiBvcmlnaW5ZIDwgc2Nyb2xsYWJsZVBhcmVudEhlaWdodCkgfHxcbiAgICAgICAgICAgIChvcmlnaW5ZIC0gc2Nyb2xsYWJsZVBhcmVudFkgPiAwICYmIG9yaWdpblkgPCBzY3JvbGxhYmxlUGFyZW50WSArIHNjcm9sbGFibGVQYXJlbnRIZWlnaHQpXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRQb3NpdGlvblN0cmF0ZWd5KCk6IEZsZXhpYmxlQ29ubmVjdGVkUG9zaXRpb25TdHJhdGVneSB7XG4gICAgICAgIHJldHVybiB0aGlzLm92ZXJsYXlcbiAgICAgICAgICAgIC5wb3NpdGlvbigpXG4gICAgICAgICAgICAuZmxleGlibGVDb25uZWN0ZWRUbyh0aGlzLm9yaWdpbiBhcyBGbGV4aWJsZUNvbm5lY3RlZFBvc2l0aW9uU3RyYXRlZ3lPcmlnaW4pXG4gICAgICAgICAgICAud2l0aFBvc2l0aW9ucyh0aGlzLnByZWZlcnJlZFBvc2l0b25zKVxuICAgICAgICAgICAgLndpdGhGbGV4aWJsZURpbWVuc2lvbnMoZmFsc2UpXG4gICAgICAgICAgICAud2l0aExvY2tlZFBvc2l0aW9uKHRydWUpO1xuICAgIH1cblxuICAgIHByaXZhdGUgc2V0UG9zaXRpb25TdHJlYW0oKTogdm9pZCB7XG4gICAgICAgIHRoaXMucG9zaXRpb24kID0gdGhpcy5wb3NpdGlvblN0cmF0ZWd5VXBkYXRlJC5waXBlKFxuICAgICAgICAgICAgc3dpdGNoTWFwKCgpID0+IHRoaXMucG9zaXRpb25TdHJhdGVneS5wb3NpdGlvbkNoYW5nZXMpLFxuICAgICAgICAgICAgbWFwKGdldFBvc2l0aW9uKSxcbiAgICAgICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgICAgICAgICBtYXAoKHBvc2l0aW9uKSA9PiBbcG9zaXRpb24sICh0aGlzLm9yaWdpbiBhcyB1bmtub3duIGFzIEhUTUxFbGVtZW50KS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKV0pLFxuICAgICAgICApO1xuICAgIH1cbn1cbiIsIjxuZy10ZW1wbGF0ZSAjdGVtcGxhdGVQb3J0YWxDb250ZW50PlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJjZGtUcmFwRm9jdXNBdXRvQ2FwdHVyZVwiPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwidG1wbDsgY29udGV4dDogeyAkaW1wbGljaXQ6IHRydWUgfVwiPjwvbmctY29udGFpbmVyPlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhY2RrVHJhcEZvY3VzQXV0b0NhcHR1cmVcIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInRtcGw7IGNvbnRleHQ6IHsgJGltcGxpY2l0OiBmYWxzZSB9XCI+PC9uZy1jb250YWluZXI+XG4gICAgPC9uZy1jb250YWluZXI+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI3RtcGwgbGV0LWF1dG9DYXB0dXJlPlxuICAgIDxkaXZcbiAgICAgICAgY2RrVHJhcEZvY3VzXG4gICAgICAgIFtjZGtUcmFwRm9jdXNBdXRvQ2FwdHVyZV09XCJhdXRvQ2FwdHVyZVwiXG4gICAgICAgIGNsYXNzPVwiZXVpLXBvcG92ZXIgZXVpLXBvcG92ZXItLXt7IHR5cGUgfX0ge3sgc3RhdGVzQ2xhc3MgfX1cIlxuICAgICAgICBbY2xhc3MuZXVpLXBvcG92ZXItLWhhcy1jdXN0b20td2lkdGhdPVwid2lkdGhcIlxuICAgICAgICBbbmdDbGFzc109XCIhd2lkdGggPyAnZXVpLXBvcG92ZXItLXNpemUtJyArIHNpemVDbGFzcyA6ICcnXCJcbiAgICAgICAgKGtleWRvd24pPVwib25LZXlEb3duKCRldmVudClcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImV1aS1wb3BvdmVyX19hcnJvd1wiIFtldWlQb3BvdmVyQXJyb3dQb3NpdGlvbl09XCJwb3NpdGlvbiRcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJldWktcG9wb3Zlcl9fYXJyb3ctaW5uZXJcIj48L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgKm5nSWY9XCJ0aXRsZVwiIGNsYXNzPVwiZXVpLXBvcG92ZXJfX2hlYWRlclwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImV1aS1wb3BvdmVyX19oZWFkZXItdGl0bGVcIj57eyB0aXRsZSB9fTwvZGl2PlxuICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgIGV1aUJ1dHRvblxuICAgICAgICAgICAgICAgIGV1aVJvdW5kZWRcbiAgICAgICAgICAgICAgICBldWlJY29uQnV0dG9uXG4gICAgICAgICAgICAgICAgZXVpQmFzaWNCdXR0b25cbiAgICAgICAgICAgICAgICBldWlTaXplU1xuICAgICAgICAgICAgICAgIGNsYXNzPVwiZXVpLXBvcG92ZXJfX2hlYWRlci1jbG9zZVwiXG4gICAgICAgICAgICAgICAgYXJpYS1sYWJlbD1cIkNsb3NlIEljb24gQnV0dG9uXCJcbiAgICAgICAgICAgICAgICAqbmdJZj1cImhhc0Nsb3NlQnV0dG9uXCJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwiY2xvc2VQb3BvdmVyKClcIj5cbiAgICAgICAgICAgICAgICA8ZXVpLWljb24tc3ZnIGljb249XCJldWktY2xvc2VcIiBmaWxsQ29sb3I9XCJwcmltYXJ5LTEwMFwiIGFyaWEtbGFiZWw9XCJDbG9zZSBJY29uXCIgY2xhc3M9XCJldWktcG9wb3Zlcl9faGVhZGVyLWNsb3NlLWljb25cIj5cbiAgICAgICAgICAgICAgICA8L2V1aS1pY29uLXN2Zz5cbiAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiAoY2RrT2JzZXJ2ZUNvbnRlbnQpPVwib25Db250ZW50Q2hhbmdlKClcIiBjbGFzcz1cImV1aS1wb3BvdmVyX19jb250ZW50XCI+XG4gICAgICAgICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
249
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXVpLXBvcG92ZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vZXVpLXBvcG92ZXIvZXVpLXBvcG92ZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vZXVpLXBvcG92ZXIvZXVpLXBvcG92ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILFNBQVMsRUFDVCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLEtBQUssRUFDTCxTQUFTLEVBTVQsTUFBTSxFQUNOLFlBQVksR0FJZixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFVckQsT0FBTyxFQUFFLGVBQWUsRUFBYyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzFFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2pGLE9BQU8sRUFBRSxxQkFBcUIsRUFBZ0IsTUFBTSx1QkFBdUIsQ0FBQztBQUU1RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLE1BQU0sRUFBc0IsSUFBSSxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUUsV0FBVyxFQUFFLE1BQU0scUNBQXFDLENBQUM7Ozs7Ozs7OztBQVNoSCxNQUFNLE9BQU8sbUJBQW9CLFNBQVEsYUFBYTtJQWtFbEQsWUFDWSxPQUFnQixFQUNoQixnQkFBa0MsRUFDbEMsZ0JBQWtDO1FBRTFDLEtBQUssRUFBRSxDQUFDO1FBSkEsWUFBTyxHQUFQLE9BQU8sQ0FBUztRQUNoQixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQ2xDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFuRXJDLGFBQVEsR0FBdUIsUUFBUSxDQUFDO1FBQ3hDLFNBQUksR0FBNkUsU0FBUyxD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QU0sQ0FBQyxhQUFhLENBQUMsQ0FBQztnQkFDcEMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMscUJBQXFCLEVBQUUsQ0FBQyxDQUFDO2dCQUNsRCxJQUFJLENBQUMsTUFBaUMsQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1lBQ3BFLE9BQU8sQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDNUIsQ0FBQyxDQUFDLENBQ0wsQ0FBQztJQUNOLENBQUM7O21JQTlPUSxtQkFBbUI7dUhBQW5CLG1CQUFtQixzZkN6Q2hDLHV3REF5Q0E7MkZEQWEsbUJBQW1CO2tCQVAvQixTQUFTOytCQUNJLGFBQWEsbUJBR04sdUJBQXVCLENBQUMsTUFBTSxpQkFDaEMsaUJBQWlCLENBQUMsSUFBSTs0SkFHNUIsS0FBSztzQkFBYixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBRUksWUFBWTtzQkFBckIsTUFBTTtnQkFHRyxJQUFJO3NCQUFiLE1BQU07Z0JBR0csS0FBSztzQkFBZCxNQUFNO2dCQU82QixxQkFBcUI7c0JBQXhELFNBQVM7dUJBQUMsdUJBQXVCO2dCQUk5QixNQUFNO3NCQURULEtBQUs7Z0JBU0YsV0FBVztzQkFEZCxLQUFLO2dCQVNGLGNBQWM7c0JBRGpCLEtBQUs7Z0JBU0YsYUFBYTtzQkFEaEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ29tcG9uZW50LFxuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIFZpZXdFbmNhcHN1bGF0aW9uLFxuICAgIElucHV0LFxuICAgIFZpZXdDaGlsZCxcbiAgICBUZW1wbGF0ZVJlZixcbiAgICBWaWV3Q29udGFpbmVyUmVmLFxuICAgIEFmdGVyVmlld0luaXQsXG4gICAgT25EZXN0cm95LFxuICAgIE9uSW5pdCxcbiAgICBPdXRwdXQsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgT25DaGFuZ2VzLFxuICAgIFNpbXBsZUNoYW5nZXMsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVGVtcGxhdGVQb3J0YWwgfSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJztcbmltcG9ydCB7XG4gICAgT3ZlcmxheSxcbiAgICBPdmVybGF5UmVmLFxuICAgIENvbm5lY3Rpb25Qb3NpdGlvblBhaXIsXG4gICAgRmxleGlibGVDb25uZWN0ZWRQb3NpdGlvblN0cmF0ZWd5T3JpZ2luLFxuICAgIFNjcm9sbERpc3BhdGNoZXIsXG4gICAgQ2RrU2Nyb2xsYWJsZSxcbiAgICBGbGV4aWJsZUNvbm5lY3RlZFBvc2l0aW9uU3RyYXRlZ3ksXG59IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSwgU3ViamVjdCwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgbWFwLCBzd2l0Y2hNYXAsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSwgQm9vbGVhbklucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJztcblxuaW1wb3J0IHsgQmFzZURpcmVjdGl2ZSB9IGZyb20gJ0BldWkvY29tcG9uZW50cy9zaGFyZWQnO1xuaW1wb3J0IHsgQk9UVE9NLCBFdWlQb3BvdmVyUG9zaXRpb24sIExFRlQsIFJJR0hULCBUT1AsIGdldFBvc2l0aW9uIH0gZnJvbSAnLi9tb2RlbHMvZXVpLXBvcG92ZXItcG9zaXRpb24ubW9kZWwnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2V1aS1wb3BvdmVyJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZXVpLXBvcG92ZXIuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL3N0eWxlcy9faW5kZXguc2NzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG59KVxuZXhwb3J0IGNsYXNzIEV1aVBvcG92ZXJDb21wb25lbnQgZXh0ZW5kcyBCYXNlRGlyZWN0aXZlIGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95LCBPbkluaXQsIE9uQ2hhbmdlcyB7XG4gICAgQElucHV0KCkgdGl0bGU6IHN0cmluZztcbiAgICBASW5wdXQoKSBwb3NpdGlvbjogRXVpUG9wb3ZlclBvc2l0aW9uID0gJ2JvdHRvbSc7XG4gICAgQElucHV0KCkgc2l6ZTogJ2RlZmF1bHQnIHwgJ3NtYWxsJyB8ICdsYXJnZScgfCAnYXV0bycgfCAncycgfCAnbScgfCAnbCcgfCAneGwnIHwgc3RyaW5nID0gJ2RlZmF1bHQnO1xuICAgIEBJbnB1dCgpIHR5cGU6ICdkZWZhdWx0JyB8ICdmbGF0JyB8ICdjb2xvcmVkLWhlYWRlcicgfCAnY29sb3JlZC1zb2xpZCcgPSAnZGVmYXVsdCc7XG4gICAgQElucHV0KCkgd2lkdGg6IHN0cmluZyA9IG51bGw7XG5cbiAgICBAT3V0cHV0KCkgb3V0c2lkZUNsaWNrID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICAgIC8vIFRPRE86IGZpeCBpdCBmb3IgdjE3IC0gT3V0cHV0IGJpbmRpbmdzLCBpbmNsdWRpbmcgYWxpYXNlcywgc2hvdWxkIG5vdCBiZSBuYW1lZCBhcyBzdGFuZGFyZCBET00gZXZlbnRzXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1vdXRwdXQtbmF0aXZlXG4gICAgQE91dHB1dCgpIG9wZW4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gICAgLy8gVE9ETzogZml4IGl0IGZvciB2MTcgLSBPdXRwdXQgYmluZGluZ3MsIGluY2x1ZGluZyBhbGlhc2VzLCBzaG91bGQgbm90IGJlIG5hbWVkIGFzIHN0YW5kYXJkIERPTSBldmVudHNcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLW91dHB1dC1uYXRpdmVcbiAgICBAT3V0cHV0KCkgY2xvc2UgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgICBwdWJsaWMgc3RhdGVzQ2xhc3M6IHN0cmluZztcbiAgICBwdWJsaWMgY2RrVHJhcEZvY3VzQXV0b0NhcHR1cmUgPSB0cnVlO1xuICAgIHB1YmxpYyBzaXplQ2xhc3MgPSAnbSc7XG4gICAgcHVibGljIHBvc2l0aW9uJDogT2JzZXJ2YWJsZTxbRXVpUG9wb3ZlclBvc2l0aW9uLCBET01SZWN0XT47XG5cbiAgICBAVmlld0NoaWxkKCd0ZW1wbGF0ZVBvcnRhbENvbnRlbnQnKSB0ZW1wbGF0ZVBvcnRhbENvbnRlbnQ6IFRlbXBsYXRlUmVmPHVua25vd24+O1xuXG4gICAgLyoqIEBkZXByZWNhdGVkIFRoaXMgd2lsbCBiZSByZW1vdmVkIGluIG5leHQgdmVyc2lvbiBvZiBldWkgKi9cbiAgICBASW5wdXQoKVxuICAgIGdldCBpc09wZW4oKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9pc09wZW47XG4gICAgfVxuICAgIHNldCBpc09wZW4odmFsdWU6IEJvb2xlYW5JbnB1dCkge1xuICAgICAgICB0aGlzLl9pc09wZW4gPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgIH1cbiAgICBwcml2YXRlIF9pc09wZW4gPSBmYWxzZTtcbiAgICBASW5wdXQoKVxuICAgIGdldCBoYXNCYWNrRHJvcCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2hhc0JhY2tEcm9wO1xuICAgIH1cbiAgICBzZXQgaGFzQmFja0Ryb3AodmFsdWU6IEJvb2xlYW5JbnB1dCkge1xuICAgICAgICB0aGlzLl9oYXNCYWNrRHJvcCA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgfVxuICAgIHByaXZhdGUgX2hhc0JhY2tEcm9wID0gZmFsc2U7XG4gICAgQElucHV0KClcbiAgICBnZXQgaGFzQ2xvc2VCdXR0b24oKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9oYXNDbG9zZUJ1dHRvbjtcbiAgICB9XG4gICAgc2V0IGhhc0Nsb3NlQnV0dG9uKHZhbHVlOiBCb29sZWFuSW5wdXQpIHtcbiAgICAgICAgdGhpcy5faGFzQ2xvc2VCdXR0b24gPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgIH1cbiAgICBwcml2YXRlIF9oYXNDbG9zZUJ1dHRvbiA9IHRydWU7XG4gICAgQElucHV0KClcbiAgICBnZXQgaXNEaXNtaXNzYWJsZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2lzRGlzbWlzc2FibGU7XG4gICAgfVxuICAgIHNldCBpc0Rpc21pc3NhYmxlKHZhbHVlOiBCb29sZWFuSW5wdXQpIHtcbiAgICAgICAgdGhpcy5faXNEaXNtaXNzYWJsZSA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgfVxuICAgIHByaXZhdGUgX2lzRGlzbWlzc2FibGUgPSB0cnVlO1xuXG4gICAgcHJpdmF0ZSB0ZW1wbGF0ZVBvcnRhbDogVGVtcGxhdGVQb3J0YWw7XG4gICAgcHJpdmF0ZSBvdmVybGF5UmVmOiBPdmVybGF5UmVmO1xuICAgIHByaXZhdGUgZGVzdHJveSQ6IFN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgU3ViamVjdDxib29sZWFuPigpO1xuICAgIHByaXZhdGUgaXNPcGVuJDogQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XG4gICAgcHJpdmF0ZSBzY3JvbGxEaXNwYXRjaGVyU3Vic2NyaXB0aW9uID0gbmV3IFN1YnNjcmlwdGlvbigpO1xuICAgIHByaXZhdGUgb3JpZ2luOiBFbGVtZW50UmVmO1xuICAgIHByaXZhdGUgcHJlZmVycmVkUG9zaXRvbnM6IENvbm5lY3Rpb25Qb3NpdGlvblBhaXJbXSA9IFtCT1RUT00sIFRPUCwgTEVGVCwgUklHSFRdO1xuICAgIHByaXZhdGUgcG9zaXRpb25TdHJhdGVneTogRmxleGlibGVDb25uZWN0ZWRQb3NpdGlvblN0cmF0ZWd5O1xuICAgIHByaXZhdGUgcG9zaXRpb25TdHJhdGVneVVwZGF0ZSQ6IFN1YmplY3Q8dm9pZD4gPSBuZXcgU3ViamVjdCgpO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgb3ZlcmxheTogT3ZlcmxheSxcbiAgICAgICAgcHJpdmF0ZSB2aWV3Q29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmLFxuICAgICAgICBwcml2YXRlIHNjcm9sbERpc3BhdGNoZXI6IFNjcm9sbERpc3BhdGNoZXIsXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgfVxuXG4gICAgbmdPbkNoYW5nZXMoYzogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5wb3NpdGlvbiA9PT0gJ3RvcCcpIHtcbiAgICAgICAgICAgIHRoaXMucHJlZmVycmVkUG9zaXRvbnMgPSBbVE9QLCBCT1RUT00sIExFRlQsIFJJR0hUXTtcbiAgICAgICAgfSBlbHNlIGlmICh0aGlzLnBvc2l0aW9uID09PSAncmlnaHQnKSB7XG4gICAgICAgICAgICB0aGlzLnByZWZlcnJlZFBvc2l0b25zID0gW1JJR0hULCBMRUZULCBUT1AsIEJPVFRPTV07XG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy5wb3NpdGlvbiA9PT0gJ2xlZnQnKSB7XG4gICAgICAgICAgICB0aGlzLnByZWZlcnJlZFBvc2l0b25zID0gW0xFRlQsIFJJR0hULCBUT1AsIEJPVFRPTV07XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLnByZWZlcnJlZFBvc2l0b25zID0gW0JPVFRPTSwgVE9QLCBMRUZULCBSSUdIVF07XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoYy5zaXplKSB7XG4gICAgICAgICAgICBpZiAoYy5zaXplLmN1cnJlbnRWYWx1ZSA9PT0gJ2RlZmF1bHQnKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5zaXplQ2xhc3MgPSAnbSc7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKGMuc2l6ZS5jdXJyZW50VmFsdWUgPT09ICdzbWFsbCcpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnNpemVDbGFzcyA9ICdzJztcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoYy5zaXplLmN1cnJlbnRWYWx1ZSA9PT0gJ2xhcmdlJykge1xuICAgICAgICAgICAgICAgIHRoaXMuc2l6ZUNsYXNzID0gJ2wnO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLnNpemVDbGFzcyA9IGMuc2l6ZS5jdXJyZW50VmFsdWU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zdGF0ZXNDbGFzcyA9IFtzdXBlci5nZXRDc3NDbGFzc2VzKCdldWktcG9wb3ZlcicpXS5qb2luKCcgJykudHJpbSgpO1xuICAgICAgICB0aGlzLnNldFBvc2l0aW9uU3RyZWFtKCk7XG4gICAgfVxuXG4gICAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnRlbXBsYXRlUG9ydGFsID0gbmV3IFRlbXBsYXRlUG9ydGFsKHRoaXMudGVtcGxhdGVQb3J0YWxDb250ZW50LCB0aGlzLnZpZXdDb250YWluZXJSZWYpO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmRlc3Ryb3kkLm5leHQodHJ1ZSk7XG4gICAgICAgIHRoaXMuZGVzdHJveSQudW5zdWJzY3JpYmUoKTtcbiAgICAgICAgdGhpcy5zY3JvbGxEaXNwYXRjaGVyU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgICAgIHRoaXMub3ZlcmxheVJlZj8uZGlzcG9zZSgpO1xuICAgICAgICB0aGlzLm92ZXJsYXlSZWYgPSBudWxsO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFdoZXRoZXIgdGhlIGV1aS1wb3BvdmVyIGlzIG9wZW4uXG4gICAgICpcbiAgICAgKiBAdXNhZ2VOb3Rlc1xuICAgICAqIGBgYGh0bWxcbiAgICAgKiA8ZXVpLXBvcG92ZXIgI3BvcG92ZXI+XG4gICAgICogICAgICA8bXktY29tcG9uZW50ICpuZ0lmPVwicG9wb3Zlci5pc1BvcG92ZXJPcGVuXCI+PC9teS1jb21wb25lbnQ+XG4gICAgICogPC9ldWktcG9wb3Zlcj5cbiAgICAgKiBgYGBcbiAgICAgKiBAcmV0dXJucyBBIGJvb2xlYW4gd2l0aCB2YWx1ZSBgdHJ1ZWAgd2hlbiBvcGVuLCBvdGhlcndpc2UgYGZhbHNlYC5cbiAgICAgKi9cbiAgICAvLyBUT0RPOiBJbiBuZXh0IHZlcnNpb24sIHJlbW92ZSBpc09wZW4gQElucHV0IHdoaWNoIGlzIG5vdCB1c2VkLCBkZXByZWNhdGVkIHRoaXMgaXNQb3BvdmVyT3BlbiBhbmQgY3JlYXRlIGlzT3BlbiBpbnN0ZWFkXG4gICAgZ2V0IGlzUG9wb3Zlck9wZW4oKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmlzT3BlbiQudmFsdWU7XG4gICAgfVxuXG4gICAgcHVibGljIG9uQ29udGVudENoYW5nZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5wb3NpdGlvblN0cmF0ZWd5ID0gdGhpcy5nZXRQb3NpdGlvblN0cmF0ZWd5KCk7XG4gICAgICAgIHRoaXMucG9zaXRpb25TdHJhdGVneVVwZGF0ZSQubmV4dCgpO1xuICAgICAgICB0aGlzLm92ZXJsYXlSZWYudXBkYXRlUG9zaXRpb25TdHJhdGVneSh0aGlzLnBvc2l0aW9uU3RyYXRlZ3kpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIE9wZW4gYSBwb3BvdmVyXG4gICAgICpcbiAgICAgKiBAcGFyYW0gb3JpZ2luIE9yaWdpbiBvZiB0aGUgcG9wb3ZlciBwb3NpdGlvblxuICAgICAqL1xuICAgIHB1YmxpYyBvcGVuUG9wb3ZlcihvcmlnaW46IEVsZW1lbnRSZWYpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLmlzUG9wb3Zlck9wZW4pIHtcbiAgICAgICAgICAgIHRoaXMuY2RrVHJhcEZvY3VzQXV0b0NhcHR1cmUgPSB0cnVlO1xuICAgICAgICAgICAgdGhpcy5zY3JvbGxEaXNwYXRjaGVyU3Vic2NyaXB0aW9uID0gdGhpcy5zY3JvbGxEaXNwYXRjaGVyLmFuY2VzdG9yU2Nyb2xsZWQob3JpZ2luKS5zdWJzY3JpYmUoKGV2ZW50OiBDZGtTY3JvbGxhYmxlKSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3Qgc2Nyb2xsYWJsZVBhcmVudCA9IGV2ZW50ID8gZXZlbnQuZ2V0RWxlbWVudFJlZigpLm5hdGl2ZUVsZW1lbnQgOiBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdib2R5Jyk7XG4gICAgICAgICAgICAgICAgaWYgKCF0aGlzLmlzVmlzaWJsZShvcmlnaW4gYXMgdW5rbm93biBhcyBIVE1MRWxlbWVudCwgc2Nyb2xsYWJsZVBhcmVudCkpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jbG9zZVBvcG92ZXIoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgdGhpcy5vcmlnaW4gPSBvcmlnaW47XG4gICAgICAgICAgICBjb25zdCBwb3NpdGlvblN0cmF0ZWd5ID0gdGhpcy5nZXRQb3NpdGlvblN0cmF0ZWd5KCk7XG5cbiAgICAgICAgICAgIGNvbnN0IHNjcm9sbFN0cmF0ZWd5ID0gdGhpcy5vdmVybGF5LnNjcm9sbFN0cmF0ZWdpZXMucmVwb3NpdGlvbih7IHNjcm9sbFRocm90dGxlOiAxMCB9KTtcblxuICAgICAgICAgICAgdGhpcy5vdmVybGF5UmVmID0gdGhpcy5vdmVybGF5LmNyZWF0ZSh7XG4gICAgICAgICAgICAgICAgcG9zaXRpb25TdHJhdGVneSxcbiAgICAgICAgICAgICAgICBzY3JvbGxTdHJhdGVneSxcbiAgICAgICAgICAgICAgICBkaXNwb3NlT25OYXZpZ2F0aW9uOiB0cnVlLFxuICAgICAgICAgICAgICAgIHdpZHRoOiB0aGlzLndpZHRoLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB0aGlzLm92ZXJsYXlSZWYuYXR0YWNoKHRoaXMudGVtcGxhdGVQb3J0YWwpO1xuXG4gICAgICAgICAgICB0aGlzLnBvc2l0aW9uU3RyYXRlZ3kgPSBwb3NpdGlvblN0cmF0ZWd5O1xuICAgICAgICAgICAgdGhpcy5wb3NpdGlvblN0cmF0ZWd5VXBkYXRlJC5uZXh0KCk7XG5cbiAgICAgICAgICAgIHRoaXMub3ZlcmxheVJlZlxuICAgICAgICAgICAgICAgIC5vdXRzaWRlUG9pbnRlckV2ZW50cygpXG4gICAgICAgICAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxuICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAodGhpcy5pc0Rpc21pc3NhYmxlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm91dHNpZGVDbGljay5lbWl0KCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmNsb3NlUG9wb3ZlcigpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgIHRoaXMuaXNPcGVuJC5uZXh0KHRydWUpO1xuICAgICAgICAgICAgdGhpcy5vcGVuLmVtaXQoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENsb3NlIGEgcG9wb3ZlclxuICAgICAqL1xuICAgIHB1YmxpYyBjbG9zZVBvcG92ZXIoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc2Nyb2xsRGlzcGF0Y2hlclN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgICAgICB0aGlzLm92ZXJsYXlSZWYuZGlzcG9zZSgpO1xuICAgICAgICB0aGlzLm92ZXJsYXlSZWYgPSBudWxsO1xuICAgICAgICB0aGlzLmlzT3BlbiQubmV4dChmYWxzZSk7XG4gICAgICAgIHRoaXMuY2xvc2UuZW1pdCgpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJlYWN0cyBvbiB0aGUgRXNjIGtleWRvd24gZXZlbnQgdG8gY2xvc2UgdGhlIHBvcHVwLiBDYW4gYmUgdXNlZCBhcyBhbHRlcm5hdGl2ZSB0byB0aGUgY2xvc2UgaWNvbiBidXR0b24sXG4gICAgICogb3IgYXMgdGhlIG1haW4gd2F5IHRvIGNsb3NlIHRoZSBwb3B1cCB3aGVuIGhhc0Nsb3NlQnV0dG9uIGlzIGZhbHNlXG4gICAgICpcbiAgICAgKiBAcGFyYW0gZXZlbnQgVGhlIGtleSBldmVudCBwcmVzc2VkXG4gICAgICovXG4gICAgcHVibGljIG9uS2V5RG93bihldmVudDogS2V5Ym9hcmRFdmVudCk6IHZvaWQge1xuICAgICAgICBpZiAoZXZlbnQua2V5ID09PSAnRXNjYXBlJykge1xuICAgICAgICAgICAgdGhpcy5jbG9zZVBvcG92ZXIoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgaXNWaXNpYmxlKG9yaWdpbjogSFRNTEVsZW1lbnQsIHNjcm9sbGFibGVQYXJlbnQ6IEhUTUxFbGVtZW50KTogYm9vbGVhbiB7XG4gICAgICAgIGNvbnN0IG9yaWdpblkgPSBvcmlnaW4uZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkueTtcbiAgICAgICAgY29uc3Qgc2Nyb2xsYWJsZVBhcmVudFkgPSBNYXRoLmFicyhzY3JvbGxhYmxlUGFyZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLnkpO1xuICAgICAgICBjb25zdCBzY3JvbGxhYmxlUGFyZW50SGVpZ2h0ID0gc2Nyb2xsYWJsZVBhcmVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5oZWlnaHQgLSA1MDtcblxuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgKG9yaWdpblkgPiAwICYmIG9yaWdpblkgPCBzY3JvbGxhYmxlUGFyZW50SGVpZ2h0KSB8fFxuICAgICAgICAgICAgKG9yaWdpblkgLSBzY3JvbGxhYmxlUGFyZW50WSA+IDAgJiYgb3JpZ2luWSA8IHNjcm9sbGFibGVQYXJlbnRZICsgc2Nyb2xsYWJsZVBhcmVudEhlaWdodClcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldFBvc2l0aW9uU3RyYXRlZ3koKTogRmxleGlibGVDb25uZWN0ZWRQb3NpdGlvblN0cmF0ZWd5IHtcbiAgICAgICAgcmV0dXJuIHRoaXMub3ZlcmxheVxuICAgICAgICAgICAgLnBvc2l0aW9uKClcbiAgICAgICAgICAgIC5mbGV4aWJsZUNvbm5lY3RlZFRvKHRoaXMub3JpZ2luIGFzIEZsZXhpYmxlQ29ubmVjdGVkUG9zaXRpb25TdHJhdGVneU9yaWdpbilcbiAgICAgICAgICAgIC53aXRoUG9zaXRpb25zKHRoaXMucHJlZmVycmVkUG9zaXRvbnMpXG4gICAgICAgICAgICAud2l0aEZsZXhpYmxlRGltZW5zaW9ucyhmYWxzZSlcbiAgICAgICAgICAgIC53aXRoTG9ja2VkUG9zaXRpb24odHJ1ZSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzZXRQb3NpdGlvblN0cmVhbSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5wb3NpdGlvbiQgPSB0aGlzLnBvc2l0aW9uU3RyYXRlZ3lVcGRhdGUkLnBpcGUoXG4gICAgICAgICAgICBzd2l0Y2hNYXAoKCkgPT4gdGhpcy5wb3NpdGlvblN0cmF0ZWd5LnBvc2l0aW9uQ2hhbmdlcyksXG4gICAgICAgICAgICBtYXAoZ2V0UG9zaXRpb24pLFxuICAgICAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICAgICAgICAgIG1hcCgocG9zaXRpb24pID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCByZWN0ID0gdGhpcy5vcmlnaW4ubmF0aXZlRWxlbWVudCA/XG4gICAgICAgICAgICAgICAgICAgIHRoaXMub3JpZ2luLm5hdGl2ZUVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkgOlxuICAgICAgICAgICAgICAgICAgICAodGhpcy5vcmlnaW4gYXMgdW5rbm93biBhcyBIVE1MRWxlbWVudCkuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIFtwb3NpdGlvbiwgcmVjdF07XG4gICAgICAgICAgICB9KSxcbiAgICAgICAgKTtcbiAgICB9XG59XG4iLCI8bmctdGVtcGxhdGUgI3RlbXBsYXRlUG9ydGFsQ29udGVudD5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiY2RrVHJhcEZvY3VzQXV0b0NhcHR1cmVcIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInRtcGw7IGNvbnRleHQ6IHsgJGltcGxpY2l0OiB0cnVlIH1cIj48L25nLWNvbnRhaW5lcj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWNka1RyYXBGb2N1c0F1dG9DYXB0dXJlXCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJ0bXBsOyBjb250ZXh0OiB7ICRpbXBsaWNpdDogZmFsc2UgfVwiPjwvbmctY29udGFpbmVyPlxuICAgIDwvbmctY29udGFpbmVyPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICN0bXBsIGxldC1hdXRvQ2FwdHVyZT5cbiAgICA8ZGl2XG4gICAgICAgIGNka1RyYXBGb2N1c1xuICAgICAgICBbY2RrVHJhcEZvY3VzQXV0b0NhcHR1cmVdPVwiYXV0b0NhcHR1cmVcIlxuICAgICAgICBjbGFzcz1cImV1aS1wb3BvdmVyIGV1aS1wb3BvdmVyLS17eyB0eXBlIH19IHt7IHN0YXRlc0NsYXNzIH19XCJcbiAgICAgICAgW2NsYXNzLmV1aS1wb3BvdmVyLS1oYXMtY3VzdG9tLXdpZHRoXT1cIndpZHRoXCJcbiAgICAgICAgW25nQ2xhc3NdPVwiIXdpZHRoID8gJ2V1aS1wb3BvdmVyLS1zaXplLScgKyBzaXplQ2xhc3MgOiAnJ1wiXG4gICAgICAgIChrZXlkb3duKT1cIm9uS2V5RG93bigkZXZlbnQpXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJldWktcG9wb3Zlcl9fYXJyb3dcIiBbZXVpUG9wb3ZlckFycm93UG9zaXRpb25dPVwicG9zaXRpb24kXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZXVpLXBvcG92ZXJfX2Fycm93LWlubmVyXCI+PC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2ICpuZ0lmPVwidGl0bGVcIiBjbGFzcz1cImV1aS1wb3BvdmVyX19oZWFkZXJcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJldWktcG9wb3Zlcl9faGVhZGVyLXRpdGxlXCI+e3sgdGl0bGUgfX08L2Rpdj5cbiAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICBldWlCdXR0b25cbiAgICAgICAgICAgICAgICBldWlSb3VuZGVkXG4gICAgICAgICAgICAgICAgZXVpSWNvbkJ1dHRvblxuICAgICAgICAgICAgICAgIGV1aUJhc2ljQnV0dG9uXG4gICAgICAgICAgICAgICAgZXVpU2l6ZVNcbiAgICAgICAgICAgICAgICBjbGFzcz1cImV1aS1wb3BvdmVyX19oZWFkZXItY2xvc2VcIlxuICAgICAgICAgICAgICAgIGFyaWEtbGFiZWw9XCJDbG9zZSBJY29uIEJ1dHRvblwiXG4gICAgICAgICAgICAgICAgKm5nSWY9XCJoYXNDbG9zZUJ1dHRvblwiXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cImNsb3NlUG9wb3ZlcigpXCI+XG4gICAgICAgICAgICAgICAgPGV1aS1pY29uLXN2ZyBpY29uPVwiZXVpLWNsb3NlXCIgZmlsbENvbG9yPVwicHJpbWFyeS0xMDBcIiBhcmlhLWxhYmVsPVwiQ2xvc2UgSWNvblwiIGNsYXNzPVwiZXVpLXBvcG92ZXJfX2hlYWRlci1jbG9zZS1pY29uXCI+XG4gICAgICAgICAgICAgICAgPC9ldWktaWNvbi1zdmc+XG4gICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgKGNka09ic2VydmVDb250ZW50KT1cIm9uQ29udGVudENoYW5nZSgpXCIgY2xhc3M9XCJldWktcG9wb3Zlcl9fY29udGVudFwiPlxuICAgICAgICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
@@ -183,10 +183,10 @@ export class EuiTableSortableColComponent {
183
183
  }
184
184
  }
185
185
  /** @nocollapse */ EuiTableSortableColComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: EuiTableSortableColComponent, deps: [{ token: i1.EuiTableSortService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
186
- /** @nocollapse */ EuiTableSortableColComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: EuiTableSortableColComponent, selector: "th[sortable]", inputs: { sortOn: "sortOn", sortOrder: "sortOrder", defaultMultiOrder: "defaultMultiOrder", defaultOrder: "defaultOrder", sortDisabled: "sortDisabled", isMultiSortable: "isMultiSortable" }, host: { properties: { "class": "this.cssClasses" } }, viewQueries: [{ propertyName: "dropdown", first: true, predicate: EuiDropdownComponent, descendants: true }], ngImport: i0, template: "<div class=\"eui-table__sortable-col-content\">\n <ng-content></ng-content>\n <button *ngIf=\"!sortDisabled\" euiSizeS euiButton euiIconButton euiBasicButton class=\"eui-table__sortable-icon-button\" (click)=\"click()\">\n <eui-icon-svg\n *ngIf=\"!order\"\n icon=\"eui-swap-vertical\"\n fillColor=\"grey-50\"\n [aria-label]=\"'eui.euitable.NO-SORTING-ICON' | translate\"></eui-icon-svg>\n <eui-icon-svg\n *ngIf=\"order === 'asc'\"\n icon=\"eui-arrow-up\"\n fillColor=\"primary-100\"\n [aria-label]=\"'eui.euitable.ASCENDING-ICON' | translate\"></eui-icon-svg>\n <eui-icon-svg\n *ngIf=\"order === 'desc'\"\n icon=\"eui-arrow-down\"\n fillColor=\"primary-100\"\n [aria-label]=\"'eui.euitable.DESCENDING-ICON' | translate\"></eui-icon-svg>\n </button>\n <ng-template *ngIf=\"isMultiSortable\" [ngTemplateOutlet]=\"sortDropdown\"></ng-template>\n</div>\n<ng-template #sortDropdown let-index>\n <eui-dropdown [isClosedOnClickInside]=\"false\">\n <button euiButton euiBasicButton euiRounded euiIconButton euiSizeS [euiDisabled]=\"sortDisabled\" (click)=\"onOpenDropdown()\">\n <span euiBadge euiPrimary euiOutline>{{ currentMultiSortPosition }}</span>\n </button>\n <eui-dropdown-content>\n <div class=\"eui-u-pt-xs eui-u-pl-s\">\n <small>{{ 'eui.euitable.CHOOSE-SORT-ORDER' | translate }}</small>\n </div>\n <form [formGroup]=\"form\" *ngIf=\"form\">\n <ng-container formArrayName=\"columns\">\n <ng-container *ngFor=\"let columnForm of columns.controls; let i = index\">\n <div class=\"eui-u-flex eui-u-p-s\" [formGroup]=\"form.get('columns')['controls'][i]\">\n <span euiLabel class=\"eui-u-mr-s\">{{ i + 1 }}</span>\n <select euiSelect euiSizeS formControlName=\"name\" class=\"eui-u-mr-s\">\n <option value=\"\"></option>\n <option *ngFor=\"let column of multisortParams\" [value]=\"column.name\">\n {{ column.name }}\n </option>\n </select>\n <button\n *ngIf=\"!getOrderByIndex(i)\"\n euiSizeS\n euiSecondary\n euiButton\n euiIconButton\n euiBasicButton\n (click)=\"onClickMultisortOrder(i + 1, 'asc')\">\n <eui-icon-svg\n icon=\"eui-swap-vertical\"\n [aria-label]=\"'eui.euitable.NO-SORTING-ICON' | translate\"></eui-icon-svg>\n </button>\n <button\n *ngIf=\"getOrderByIndex(i) === 'asc'\"\n euiSizeS\n euiPrimary\n euiButton\n euiIconButton\n euiBasicButton\n (click)=\"onClickMultisortOrder(i + 1, 'desc')\">\n <eui-icon-svg icon=\"eui-arrow-up\" [aria-label]=\"'eui.euitable.ASCENDING-ICON' | translate\"></eui-icon-svg>\n </button>\n <button\n *ngIf=\"getOrderByIndex(i) === 'desc'\"\n euiSizeS\n euiPrimary\n euiButton\n euiIconButton\n euiBasicButton\n (click)=\"onClickMultisortOrder(i + 1, null)\">\n <eui-icon-svg\n icon=\"eui-arrow-down\"\n [aria-label]=\"'eui.euitable.DESCENDING-ICON' | translate\"></eui-icon-svg>\n </button>\n </div>\n </ng-container>\n </ng-container>\n </form>\n <!-- Footer-->\n <p class=\"eui-u-mt-none eui-u-mb-none eui-u-ml-s\" *ngIf=\"error\">\n <eui-feedback-message euiDanger>{{ 'eui.euitable.WRONG-SORT-PARAMS' | translate }}</eui-feedback-message>\n </p>\n <div class=\"eui-u-flex eui-u-flex-justify-content-between eui-u-p-s\">\n <button euiButton euiSizeS euiSecondary (click)=\"onCancelMultiSort()\">{{ 'eui.CANCEL' | translate }}</button>\n <button euiButton euiSizeS euiPrimary (click)=\"onSubmitMultiSort()\">{{ 'eui.APPLY' | translate }}</button>\n </div>\n </eui-dropdown-content>\n </eui-dropdown>\n</ng-template>\n", dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i3.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i3.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i3.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "component", type: i4.EuiIconSvgComponent, selector: "eui-icon-svg, span[euiIconSvg], i[euiIconSvg]", inputs: ["icon", "size", "fillColor", "set", "ariaLabelledby", "role", "style", "iconUrl", "transform", "aria-label", "ariaHidden", "focusable", "isLoading"] }, { kind: "component", type: i5.EuiDropdownComponent, selector: "eui-dropdown", inputs: ["e2eAttr", "tabIndex", "width", "position", "isDropDownRightAligned", "isClosedOnClickInside", "isLabelUpdatedFromSelectedItem", "isExpandOnHover", "hasTabNavigation"] }, { kind: "directive", type: i5.EuiDropdownContentDirective, selector: "eui-dropdown-content" }, { kind: "component", type: i6.EuiButtonComponent, selector: "button[euiButton], a[euiButton]", inputs: ["e2eAttr", "id", "euiBasicButton", "euiButtonCall", "euiBlockButton", "isLoading", "euiIconButton", "euiLineWrap"], outputs: ["buttonClick"] }, { kind: "directive", type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i3.FormArrayName, selector: "[formArrayName]", inputs: ["formArrayName"] }, { kind: "component", type: i7.EuiFeedbackMessageComponent, selector: "eui-feedback-message", inputs: ["styleClass"] }, { kind: "component", type: i8.EuiSelectComponent, selector: "select[euiSelect]", inputs: ["placeholder", "readonly", "isInvalid"] }, { kind: "directive", type: i8.EuiNgSelectOptionDirective, selector: "option:not([eclSelectOption]):not([eclMultiselectOption]), option[euiOption]", inputs: ["selected", "label", "ngValue"] }, { kind: "directive", type: i8.EuiSelectControlValueAccessor, selector: "select:not([multiple])[formControlName][euiSelect],select:not([multiple])[formControl][euiSelect],select:not([multiple])[ngModel][euiSelect]", inputs: ["placeholder"] }, { kind: "directive", type: i8.EuiSelectMultipleOption, selector: "option, option[euiOption]", inputs: ["ngValue", "value"] }, { kind: "pipe", type: i9.TranslatePipe, name: "translate" }] });
186
+ /** @nocollapse */ EuiTableSortableColComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: EuiTableSortableColComponent, selector: "th[sortable]", inputs: { sortOn: "sortOn", sortOrder: "sortOrder", defaultMultiOrder: "defaultMultiOrder", defaultOrder: "defaultOrder", sortDisabled: "sortDisabled", isMultiSortable: "isMultiSortable" }, host: { properties: { "class": "this.cssClasses" } }, viewQueries: [{ propertyName: "dropdown", first: true, predicate: EuiDropdownComponent, descendants: true }], ngImport: i0, template: "<div class=\"eui-table__sortable-col-content\">\n <ng-content></ng-content>\n <button type=\"button\" *ngIf=\"!sortDisabled\" euiSizeS euiButton euiIconButton euiBasicButton class=\"eui-table__sortable-icon-button\" (click)=\"click()\">\n <eui-icon-svg\n *ngIf=\"!order\"\n icon=\"eui-swap-vertical\"\n fillColor=\"grey-50\"\n [aria-label]=\"'eui.euitable.NO-SORTING-ICON' | translate\"></eui-icon-svg>\n <eui-icon-svg\n *ngIf=\"order === 'asc'\"\n icon=\"eui-arrow-up\"\n fillColor=\"primary-100\"\n [aria-label]=\"'eui.euitable.ASCENDING-ICON' | translate\"></eui-icon-svg>\n <eui-icon-svg\n *ngIf=\"order === 'desc'\"\n icon=\"eui-arrow-down\"\n fillColor=\"primary-100\"\n [aria-label]=\"'eui.euitable.DESCENDING-ICON' | translate\"></eui-icon-svg>\n </button>\n <ng-template *ngIf=\"isMultiSortable\" [ngTemplateOutlet]=\"sortDropdown\"></ng-template>\n</div>\n<ng-template #sortDropdown let-index>\n <eui-dropdown [isClosedOnClickInside]=\"false\">\n <button type=\"button\" euiButton euiBasicButton euiRounded euiIconButton euiSizeS [euiDisabled]=\"sortDisabled\" (click)=\"onOpenDropdown()\">\n <span euiBadge euiPrimary euiOutline>{{ currentMultiSortPosition }}</span>\n </button>\n <eui-dropdown-content>\n <div class=\"eui-u-pt-xs eui-u-pl-s\">\n <small>{{ 'eui.euitable.CHOOSE-SORT-ORDER' | translate }}</small>\n </div>\n <form [formGroup]=\"form\" *ngIf=\"form\">\n <ng-container formArrayName=\"columns\">\n <ng-container *ngFor=\"let columnForm of columns.controls; let i = index\">\n <div class=\"eui-u-flex eui-u-p-s\" [formGroup]=\"form.get('columns')['controls'][i]\">\n <span euiLabel class=\"eui-u-mr-s\">{{ i + 1 }}</span>\n <select euiSelect euiSizeS formControlName=\"name\" class=\"eui-u-mr-s\">\n <option value=\"\"></option>\n <option *ngFor=\"let column of multisortParams\" [value]=\"column.name\">\n {{ column.name }}\n </option>\n </select>\n <button type=\"button\"\n *ngIf=\"!getOrderByIndex(i)\"\n euiSizeS\n euiSecondary\n euiButton\n euiIconButton\n euiBasicButton\n (click)=\"onClickMultisortOrder(i + 1, 'asc')\">\n <eui-icon-svg\n icon=\"eui-swap-vertical\"\n [aria-label]=\"'eui.euitable.NO-SORTING-ICON' | translate\"></eui-icon-svg>\n </button>\n <button type=\"button\"\n *ngIf=\"getOrderByIndex(i) === 'asc'\"\n euiSizeS\n euiPrimary\n euiButton\n euiIconButton\n euiBasicButton\n (click)=\"onClickMultisortOrder(i + 1, 'desc')\">\n <eui-icon-svg icon=\"eui-arrow-up\" [aria-label]=\"'eui.euitable.ASCENDING-ICON' | translate\"></eui-icon-svg>\n </button>\n <button type=\"button\"\n *ngIf=\"getOrderByIndex(i) === 'desc'\"\n euiSizeS\n euiPrimary\n euiButton\n euiIconButton\n euiBasicButton\n (click)=\"onClickMultisortOrder(i + 1, null)\">\n <eui-icon-svg\n icon=\"eui-arrow-down\"\n [aria-label]=\"'eui.euitable.DESCENDING-ICON' | translate\"></eui-icon-svg>\n </button>\n </div>\n </ng-container>\n </ng-container>\n </form>\n <!-- Footer-->\n <p class=\"eui-u-mt-none eui-u-mb-none eui-u-ml-s\" *ngIf=\"error\">\n <eui-feedback-message euiDanger>{{ 'eui.euitable.WRONG-SORT-PARAMS' | translate }}</eui-feedback-message>\n </p>\n <div class=\"eui-u-flex eui-u-flex-justify-content-between eui-u-p-s\">\n <button type=\"button\" euiButton euiSizeS euiSecondary (click)=\"onCancelMultiSort()\">{{ 'eui.CANCEL' | translate }}</button>\n <button type=\"button\" euiButton euiSizeS euiPrimary (click)=\"onSubmitMultiSort()\">{{ 'eui.APPLY' | translate }}</button>\n </div>\n </eui-dropdown-content>\n </eui-dropdown>\n</ng-template>\n", dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i3.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i3.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i3.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "component", type: i4.EuiIconSvgComponent, selector: "eui-icon-svg, span[euiIconSvg], i[euiIconSvg]", inputs: ["icon", "size", "fillColor", "set", "ariaLabelledby", "role", "style", "iconUrl", "transform", "aria-label", "ariaHidden", "focusable", "isLoading"] }, { kind: "component", type: i5.EuiDropdownComponent, selector: "eui-dropdown", inputs: ["e2eAttr", "tabIndex", "width", "position", "isDropDownRightAligned", "isClosedOnClickInside", "isLabelUpdatedFromSelectedItem", "isExpandOnHover", "hasTabNavigation"] }, { kind: "directive", type: i5.EuiDropdownContentDirective, selector: "eui-dropdown-content" }, { kind: "component", type: i6.EuiButtonComponent, selector: "button[euiButton], a[euiButton]", inputs: ["e2eAttr", "id", "euiBasicButton", "euiButtonCall", "euiBlockButton", "isLoading", "euiIconButton", "euiLineWrap"], outputs: ["buttonClick"] }, { kind: "directive", type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i3.FormArrayName, selector: "[formArrayName]", inputs: ["formArrayName"] }, { kind: "component", type: i7.EuiFeedbackMessageComponent, selector: "eui-feedback-message", inputs: ["styleClass"] }, { kind: "component", type: i8.EuiSelectComponent, selector: "select[euiSelect]", inputs: ["placeholder", "readonly", "isInvalid"] }, { kind: "directive", type: i8.EuiNgSelectOptionDirective, selector: "option:not([eclSelectOption]):not([eclMultiselectOption]), option[euiOption]", inputs: ["selected", "label", "ngValue"] }, { kind: "directive", type: i8.EuiSelectControlValueAccessor, selector: "select:not([multiple])[formControlName][euiSelect],select:not([multiple])[formControl][euiSelect],select:not([multiple])[ngModel][euiSelect]", inputs: ["placeholder"] }, { kind: "directive", type: i8.EuiSelectMultipleOption, selector: "option, option[euiOption]", inputs: ["ngValue", "value"] }, { kind: "pipe", type: i9.TranslatePipe, name: "translate" }] });
187
187
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: EuiTableSortableColComponent, decorators: [{
188
188
  type: Component,
189
- args: [{ selector: 'th[sortable]', template: "<div class=\"eui-table__sortable-col-content\">\n <ng-content></ng-content>\n <button *ngIf=\"!sortDisabled\" euiSizeS euiButton euiIconButton euiBasicButton class=\"eui-table__sortable-icon-button\" (click)=\"click()\">\n <eui-icon-svg\n *ngIf=\"!order\"\n icon=\"eui-swap-vertical\"\n fillColor=\"grey-50\"\n [aria-label]=\"'eui.euitable.NO-SORTING-ICON' | translate\"></eui-icon-svg>\n <eui-icon-svg\n *ngIf=\"order === 'asc'\"\n icon=\"eui-arrow-up\"\n fillColor=\"primary-100\"\n [aria-label]=\"'eui.euitable.ASCENDING-ICON' | translate\"></eui-icon-svg>\n <eui-icon-svg\n *ngIf=\"order === 'desc'\"\n icon=\"eui-arrow-down\"\n fillColor=\"primary-100\"\n [aria-label]=\"'eui.euitable.DESCENDING-ICON' | translate\"></eui-icon-svg>\n </button>\n <ng-template *ngIf=\"isMultiSortable\" [ngTemplateOutlet]=\"sortDropdown\"></ng-template>\n</div>\n<ng-template #sortDropdown let-index>\n <eui-dropdown [isClosedOnClickInside]=\"false\">\n <button euiButton euiBasicButton euiRounded euiIconButton euiSizeS [euiDisabled]=\"sortDisabled\" (click)=\"onOpenDropdown()\">\n <span euiBadge euiPrimary euiOutline>{{ currentMultiSortPosition }}</span>\n </button>\n <eui-dropdown-content>\n <div class=\"eui-u-pt-xs eui-u-pl-s\">\n <small>{{ 'eui.euitable.CHOOSE-SORT-ORDER' | translate }}</small>\n </div>\n <form [formGroup]=\"form\" *ngIf=\"form\">\n <ng-container formArrayName=\"columns\">\n <ng-container *ngFor=\"let columnForm of columns.controls; let i = index\">\n <div class=\"eui-u-flex eui-u-p-s\" [formGroup]=\"form.get('columns')['controls'][i]\">\n <span euiLabel class=\"eui-u-mr-s\">{{ i + 1 }}</span>\n <select euiSelect euiSizeS formControlName=\"name\" class=\"eui-u-mr-s\">\n <option value=\"\"></option>\n <option *ngFor=\"let column of multisortParams\" [value]=\"column.name\">\n {{ column.name }}\n </option>\n </select>\n <button\n *ngIf=\"!getOrderByIndex(i)\"\n euiSizeS\n euiSecondary\n euiButton\n euiIconButton\n euiBasicButton\n (click)=\"onClickMultisortOrder(i + 1, 'asc')\">\n <eui-icon-svg\n icon=\"eui-swap-vertical\"\n [aria-label]=\"'eui.euitable.NO-SORTING-ICON' | translate\"></eui-icon-svg>\n </button>\n <button\n *ngIf=\"getOrderByIndex(i) === 'asc'\"\n euiSizeS\n euiPrimary\n euiButton\n euiIconButton\n euiBasicButton\n (click)=\"onClickMultisortOrder(i + 1, 'desc')\">\n <eui-icon-svg icon=\"eui-arrow-up\" [aria-label]=\"'eui.euitable.ASCENDING-ICON' | translate\"></eui-icon-svg>\n </button>\n <button\n *ngIf=\"getOrderByIndex(i) === 'desc'\"\n euiSizeS\n euiPrimary\n euiButton\n euiIconButton\n euiBasicButton\n (click)=\"onClickMultisortOrder(i + 1, null)\">\n <eui-icon-svg\n icon=\"eui-arrow-down\"\n [aria-label]=\"'eui.euitable.DESCENDING-ICON' | translate\"></eui-icon-svg>\n </button>\n </div>\n </ng-container>\n </ng-container>\n </form>\n <!-- Footer-->\n <p class=\"eui-u-mt-none eui-u-mb-none eui-u-ml-s\" *ngIf=\"error\">\n <eui-feedback-message euiDanger>{{ 'eui.euitable.WRONG-SORT-PARAMS' | translate }}</eui-feedback-message>\n </p>\n <div class=\"eui-u-flex eui-u-flex-justify-content-between eui-u-p-s\">\n <button euiButton euiSizeS euiSecondary (click)=\"onCancelMultiSort()\">{{ 'eui.CANCEL' | translate }}</button>\n <button euiButton euiSizeS euiPrimary (click)=\"onSubmitMultiSort()\">{{ 'eui.APPLY' | translate }}</button>\n </div>\n </eui-dropdown-content>\n </eui-dropdown>\n</ng-template>\n" }]
189
+ args: [{ selector: 'th[sortable]', template: "<div class=\"eui-table__sortable-col-content\">\n <ng-content></ng-content>\n <button type=\"button\" *ngIf=\"!sortDisabled\" euiSizeS euiButton euiIconButton euiBasicButton class=\"eui-table__sortable-icon-button\" (click)=\"click()\">\n <eui-icon-svg\n *ngIf=\"!order\"\n icon=\"eui-swap-vertical\"\n fillColor=\"grey-50\"\n [aria-label]=\"'eui.euitable.NO-SORTING-ICON' | translate\"></eui-icon-svg>\n <eui-icon-svg\n *ngIf=\"order === 'asc'\"\n icon=\"eui-arrow-up\"\n fillColor=\"primary-100\"\n [aria-label]=\"'eui.euitable.ASCENDING-ICON' | translate\"></eui-icon-svg>\n <eui-icon-svg\n *ngIf=\"order === 'desc'\"\n icon=\"eui-arrow-down\"\n fillColor=\"primary-100\"\n [aria-label]=\"'eui.euitable.DESCENDING-ICON' | translate\"></eui-icon-svg>\n </button>\n <ng-template *ngIf=\"isMultiSortable\" [ngTemplateOutlet]=\"sortDropdown\"></ng-template>\n</div>\n<ng-template #sortDropdown let-index>\n <eui-dropdown [isClosedOnClickInside]=\"false\">\n <button type=\"button\" euiButton euiBasicButton euiRounded euiIconButton euiSizeS [euiDisabled]=\"sortDisabled\" (click)=\"onOpenDropdown()\">\n <span euiBadge euiPrimary euiOutline>{{ currentMultiSortPosition }}</span>\n </button>\n <eui-dropdown-content>\n <div class=\"eui-u-pt-xs eui-u-pl-s\">\n <small>{{ 'eui.euitable.CHOOSE-SORT-ORDER' | translate }}</small>\n </div>\n <form [formGroup]=\"form\" *ngIf=\"form\">\n <ng-container formArrayName=\"columns\">\n <ng-container *ngFor=\"let columnForm of columns.controls; let i = index\">\n <div class=\"eui-u-flex eui-u-p-s\" [formGroup]=\"form.get('columns')['controls'][i]\">\n <span euiLabel class=\"eui-u-mr-s\">{{ i + 1 }}</span>\n <select euiSelect euiSizeS formControlName=\"name\" class=\"eui-u-mr-s\">\n <option value=\"\"></option>\n <option *ngFor=\"let column of multisortParams\" [value]=\"column.name\">\n {{ column.name }}\n </option>\n </select>\n <button type=\"button\"\n *ngIf=\"!getOrderByIndex(i)\"\n euiSizeS\n euiSecondary\n euiButton\n euiIconButton\n euiBasicButton\n (click)=\"onClickMultisortOrder(i + 1, 'asc')\">\n <eui-icon-svg\n icon=\"eui-swap-vertical\"\n [aria-label]=\"'eui.euitable.NO-SORTING-ICON' | translate\"></eui-icon-svg>\n </button>\n <button type=\"button\"\n *ngIf=\"getOrderByIndex(i) === 'asc'\"\n euiSizeS\n euiPrimary\n euiButton\n euiIconButton\n euiBasicButton\n (click)=\"onClickMultisortOrder(i + 1, 'desc')\">\n <eui-icon-svg icon=\"eui-arrow-up\" [aria-label]=\"'eui.euitable.ASCENDING-ICON' | translate\"></eui-icon-svg>\n </button>\n <button type=\"button\"\n *ngIf=\"getOrderByIndex(i) === 'desc'\"\n euiSizeS\n euiPrimary\n euiButton\n euiIconButton\n euiBasicButton\n (click)=\"onClickMultisortOrder(i + 1, null)\">\n <eui-icon-svg\n icon=\"eui-arrow-down\"\n [aria-label]=\"'eui.euitable.DESCENDING-ICON' | translate\"></eui-icon-svg>\n </button>\n </div>\n </ng-container>\n </ng-container>\n </form>\n <!-- Footer-->\n <p class=\"eui-u-mt-none eui-u-mb-none eui-u-ml-s\" *ngIf=\"error\">\n <eui-feedback-message euiDanger>{{ 'eui.euitable.WRONG-SORT-PARAMS' | translate }}</eui-feedback-message>\n </p>\n <div class=\"eui-u-flex eui-u-flex-justify-content-between eui-u-p-s\">\n <button type=\"button\" euiButton euiSizeS euiSecondary (click)=\"onCancelMultiSort()\">{{ 'eui.CANCEL' | translate }}</button>\n <button type=\"button\" euiButton euiSizeS euiPrimary (click)=\"onSubmitMultiSort()\">{{ 'eui.APPLY' | translate }}</button>\n </div>\n </eui-dropdown-content>\n </eui-dropdown>\n</ng-template>\n" }]
190
190
  }], ctorParameters: function () { return [{ type: i1.EuiTableSortService }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { dropdown: [{
191
191
  type: ViewChild,
192
192
  args: [EuiDropdownComponent]
@@ -206,4 +206,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
206
206
  type: HostBinding,
207
207
  args: ['class']
208
208
  }] } });
209
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXVpLXRhYmxlLXNvcnRhYmxlLWNvbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9ldWktdGFibGUvc29ydGFibGUtY29sL2V1aS10YWJsZS1zb3J0YWJsZS1jb2wuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vZXVpLXRhYmxlL3NvcnRhYmxlLWNvbC9ldWktdGFibGUtc29ydGFibGUtY29sLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQXFCLEtBQUssRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFxQixNQUFNLGVBQWUsQ0FBQztBQUMvRyxPQUFPLEVBQUUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUM5QyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFFLHFCQUFxQixFQUFnQixvQkFBb0IsRUFBZSxNQUFNLHVCQUF1QixDQUFDO0FBQy9HLE9BQU8sRUFBYSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN0RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUdwRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7Ozs7Ozs7Ozs7O0FBTzVELE1BQU0sT0FBTyw0QkFBNEI7SUFzRHJDLFlBQ1ksbUJBQXdDLEVBQ3hDLEVBQXFCO1FBRHJCLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFDeEMsT0FBRSxHQUFGLEVBQUUsQ0FBbUI7UUFyRHhCLGNBQVMsR0FBbUIsTUFBTSxDQUFDO1FBRXJDLFVBQUssR0FBMEIsTUFBTSxDQUFDO1FBQzdDLG9CQUFlLEdBQXFCLEVBQUUsQ0FBQztRQUN2Qyw2QkFBd0IsR0FBRyxDQUFDLENBQUM7UUFDN0IsVUFBSyxHQUFHLEtBQUssQ0FBQztRQVVOLHVCQUFrQixHQUFHLElBQUksQ0FBQztRQVMxQixrQkFBYSxHQUFHLEtBQUssQ0FBQztRQVN0QixrQkFBYSxHQUFHLEtBQUssQ0FBQztRQVN0QixxQkFBZ0IsR0FBRyxLQUFLLENBQUM7UUFFekIsYUFBUSxHQUFxQixJQUFJLE9BQU8sRUFBVyxDQUFDO0lBVXpELENBQUM7SUE5Q0osSUFDSSxpQkFBaUI7UUFDakIsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUM7SUFDbkMsQ0FBQztJQUNELElBQUksaUJBQWlCLENBQUMsS0FBa0I7UUFDcEMsSUFBSSxDQUFDLGtCQUFrQixHQUFHLG9CQUFvQixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzFELENBQUM7SUFHRCxJQUNJLFlBQVk7UUFDWixPQUFPLElBQUksQ0FBQyxhQUFhLENBQUM7SUFDOUIsQ0FBQztJQUNELElBQUksWUFBWSxDQUFDLEtBQW1CO1FBQ2hDLElBQUksQ0FBQyxhQUFhLEdBQUcscUJBQXFCLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUdELElBQ0ksWUFBWTtRQUNaLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQztJQUM5QixDQUFDO0lBQ0QsSUFBSSxZQUFZLENBQUMsS0FBbUI7UUFDaEMsSUFBSSxDQUFDLGFBQWEsR0FBRyxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBR0QsSUFDSSxlQUFlO1FBQ2YsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUM7SUFDakMsQ0FBQztJQUNELElBQUksZUFBZSxDQUFDLEtBQW1CO1FBQ25DLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN6RCxDQUFDO0lBS0QsSUFDSSxVQUFVO1FBQ1YsT0FBTyxDQUFDLHlCQUF5QixFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLG1DQUFtQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDdEgsQ0FBQztJQU9ELFFBQVE7UUFDSixJQUFJLElBQUksQ0FBQyxlQUFlLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFO1lBQzVDLElBQUksSUFBSSxDQUFDLGlCQUFpQixHQUFHLENBQUMsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFO2dCQUM5QyxJQUFJLENBQUMsbUJBQW1CLENBQUMsaUJBQWlCLENBQUMsSUFBSSxjQUFjLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUM7YUFDdkg7aUJBQU07Z0JBQ0gsSUFBSSxDQUFDLG1CQUFtQixDQUFDLGlCQUFpQixDQUFDLElBQUksY0FBYyxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDeEY7U0FDSjtRQUVELGFBQWEsQ0FBQyxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxjQUFjLEVBQUUsSUFBSSxDQUFDLG1CQUFtQixDQUFDLHNCQUFzQixDQUFDLENBQUM7YUFDcEcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7YUFDOUIsU0FBUyxDQUFDLENBQUMsQ0FBQyxhQUFhLEVBQUUsZUFBZSxDQUFDLEVBQUUsRUFBRTtZQUM1QyxJQUFJLENBQUMsSUFBSSxDQUFDLGVBQWUsRUFBRTtnQkFDdkIsSUFBSSxhQUFhLENBQUMsSUFBSSxLQUFLLElBQUksQ0FBQyxNQUFNLEVBQUU7b0JBQ3BDLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDO2lCQUNyQjtxQkFBTTtvQkFDSCxJQUFJLENBQUMsS0FBSyxHQUFHLGFBQWEsQ0FBQyxLQUF5QixDQUFDO2lCQUN4RDthQUNKO2lCQUFNO2dCQUNILElBQUksQ0FBQyxlQUFlLEdBQUcsQ0FBQyxHQUFHLGVBQWUsQ0FBQyxDQUFDO2dCQUM1QyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksU0FBUyxDQUFDLEVBQUUsT0FBTyxFQUFFLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxXQUFXLENBQUMsZUFBZSxDQUFDLEVBQUUsQ0FBQyxDQUFDO2dCQUM5RixJQUFJLGFBQWEsQ0FBQyxLQUFLLEtBQUssSUFBSSxJQUFJLGFBQWEsQ0FBQyxJQUFJLEtBQUssSUFBSSxFQUFFO29CQUM3RCxJQUFJLENBQUMsd0JBQXdCLEdBQUcsQ0FBQyxDQUFDO29CQUNsQyxJQUFJLGFBQWEsQ0FBQyxJQUFJLEtBQUssSUFBSSxDQUFDLE1BQU0sRUFBRTt3QkFDcEMsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7cUJBQ3JCO3lCQUFNO3dCQUNILE9BQU87cUJBQ1Y7aUJBQ0o7cUJBQU07b0JBQ0gsSUFBSSxDQUFDLDJCQUEyQixDQUFDLGVBQWUsQ0FBQyxDQUFDO2lCQUNyRDthQUNKO1FBQ0wsQ0FBQyxDQUFDLENBQUM7UUFFUCxJQUFJLElBQUksQ0FBQyxZQUFZLEVBQUU7WUFDbkIsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDO1lBQzVCLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDN0Q7SUFDTCxDQUFDO0lBRUQsV0FBVztRQUNQLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3pCLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDaEMsQ0FBQztJQUVELElBQUksT0FBTztRQUNQLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFjLENBQUM7SUFDdEQsQ0FBQztJQUVNLEtBQUs7UUFDUixJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRTtZQUNwQixJQUFJLElBQUksQ0FBQyxLQUFLLEtBQUssS0FBSyxFQUFFO2dCQUN0QixJQUFJLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQzthQUN2QjtpQkFBTSxJQUFJLElBQUksQ0FBQyxLQUFLLEtBQUssTUFBTSxFQUFFO2dCQUM5QixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQzthQUNyQjtpQkFBTSxJQUFJLElBQUksQ0FBQyxLQUFLLEtBQUssSUFBSSxFQUFFO2dCQUM1QixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQzthQUN0QjtZQUNELElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDN0Q7SUFDTCxDQUFDO0lBRUQscUJBQXFCLENBQUMsS0FBYSxFQUFFLEtBQTRCO1FBQzVELElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBZSxDQUFDLFFBQVEsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMvRixDQUFDO0lBRUQsY0FBYztRQUNWLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxlQUFlLENBQUMsS0FBYTtRQUN6QixPQUFRLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBZSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBSyxDQUFDO0lBQ3RGLENBQUM7SUFFRCxpQkFBaUI7UUFDYixJQUFJLENBQUMsUUFBUSxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ2xDLENBQUM7SUFFRCxpQkFBaUI7UUFDYixNQUFNLEdBQUcsR0FBMEQsRUFBRSxDQUFDO1FBQ3JFLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBZSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRTtZQUM1RCxJQUFJLEVBQUUsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBSyxFQUFFO2dCQUMvQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSSxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUMsS0FBSyxFQUFFLEtBQUssRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUM7YUFDMUU7UUFDTCxDQUFDLENBQUMsQ0FBQztRQUVILElBQUksSUFBSSxDQUFDLG9CQUFvQixDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQ2hDLElBQUksQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsRUFBRSxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUM7WUFDbEUsSUFBSSxDQUFDLG1CQUFtQixDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQztZQUNuRSxJQUFJLENBQUMsUUFBUSxDQUFDLGFBQWEsRUFBRSxDQUFDO1NBQ2pDO2FBQU07WUFDSCxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQztTQUNyQjtJQUNMLENBQUM7SUFFTyxpQkFBaUIsQ0FBQyxFQUFrQixFQUFFLEdBQTBEO1FBQ3BHLE1BQU0sU0FBUyxHQUFHLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLEtBQUssRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzVELElBQUksU0FBUyxFQUFFO1lBQ1gsTUFBTSxLQUFLLEdBQUcsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksS0FBSyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDN0QsRUFBRSxDQUFDLEtBQUssR0FBRyxTQUFTLENBQUMsS0FBSyxDQUFDO1lBQzNCLEVBQUUsQ0FBQyxRQUFRLEdBQUcsS0FBSyxHQUFHLENBQUMsQ0FBQztTQUMzQjthQUFNO1lBQ0gsRUFBRSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7WUFDaEIsRUFBRSxDQUFDLFFBQVEsR0FBRyxDQUFDLENBQUM7U0FDbkI7UUFDRCxPQUFPLEVBQUUsQ0FBQztJQUNkLENBQUM7SUFFTywyQkFBMkIsQ0FBQyxlQUFpQztRQUNqRSxNQUFNLGFBQWEsR0FBRyxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsSUFBSSxLQUFLLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUM1RSxJQUFJLGFBQWEsRUFBRTtZQUNmLElBQUksQ0FBQyxLQUFLLEdBQUcsYUFBYSxDQUFDLEtBQUssQ0FBQztZQUNqQyxJQUFJLENBQUMsd0JBQXdCLEdBQUcsYUFBYSxDQUFDLFFBQVEsQ0FBQztTQUMxRDthQUFNO1lBQ0gsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7WUFDbEIsSUFBSSxDQUFDLHdCQUF3QixHQUFHLENBQUMsQ0FBQztTQUNyQztJQUNMLENBQUM7SUFFTyxvQkFBb0IsQ0FBQyxHQUEyQztRQUNwRSxJQUFJLEdBQUcsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1lBQ2xCLE9BQU8sS0FBSyxDQUFDO1NBQ2hCO1FBQ0QsT0FBTyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLENBQUMsS0FBSyxTQUFTLENBQUM7SUFDOUUsQ0FBQztJQUVPLG1CQUFtQixDQUFDLEdBQTJDLEVBQUUsRUFBbUM7UUFDeEcsT0FBTyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsSUFBSSxLQUFLLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxDQUFDO0lBQ2xFLENBQUM7OzRJQTNMUSw0QkFBNEI7Z0lBQTVCLDRCQUE0QixrVkFDMUIsb0JBQW9CLGdEQ2hCbkMsbS9KQTBGQTsyRkQzRWEsNEJBQTRCO2tCQUx4QyxTQUFTOytCQUVJLGNBQWM7MElBSVMsUUFBUTtzQkFBeEMsU0FBUzt1QkFBQyxvQkFBb0I7Z0JBQ3RCLE1BQU07c0JBQWQsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQVNGLGlCQUFpQjtzQkFEcEIsS0FBSztnQkFVRixZQUFZO3NCQURmLEtBQUs7Z0JBVUYsWUFBWTtzQkFEZixLQUFLO2dCQVVGLGVBQWU7c0JBRGxCLEtBQUs7Z0JBWUYsVUFBVTtzQkFEYixXQUFXO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgT25EZXN0cm95LCBJbnB1dCwgSG9zdEJpbmRpbmcsIFZpZXdDaGlsZCwgQ2hhbmdlRGV0ZWN0b3JSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN1YmplY3QsIGNvbWJpbmVMYXRlc3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSwgQm9vbGVhbklucHV0LCBjb2VyY2VOdW1iZXJQcm9wZXJ0eSwgTnVtYmVySW5wdXQgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nO1xuaW1wb3J0IHsgRm9ybUFycmF5LCBGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBFdWlEcm9wZG93bkNvbXBvbmVudCB9IGZyb20gJ0BldWkvY29tcG9uZW50cy9ldWktZHJvcGRvd24nO1xuXG5pbXBvcnQgeyBFdWlUYWJsZVNvcnRTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvZXVpLXRhYmxlLXNvcnQuc2VydmljZSc7XG5pbXBvcnQgeyBNdWx0aXNvcnRQYXJhbSB9IGZyb20gJy4uL21vZGVscy9tdWx0aS1zb3J0Lm1vZGVsJztcblxuQENvbXBvbmVudCh7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lXG4gICAgc2VsZWN0b3I6ICd0aFtzb3J0YWJsZV0nLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9ldWktdGFibGUtc29ydGFibGUtY29sLmNvbXBvbmVudC5odG1sJyxcbn0pXG5leHBvcnQgY2xhc3MgRXVpVGFibGVTb3J0YWJsZUNvbENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgICBAVmlld0NoaWxkKEV1aURyb3Bkb3duQ29tcG9uZW50KSBkcm9wZG93bjogRXVpRHJvcGRvd25Db21wb25lbnQ7XG4gICAgQElucHV0KCkgc29ydE9uOiBzdHJpbmc7XG4gICAgQElucHV0KCkgc29ydE9yZGVyOiAnYXNjJyB8ICdkZXNjJyA9ICdkZXNjJztcblxuICAgIHB1YmxpYyBvcmRlcjogJ2FzYycgfCAnZGVzYycgfCBudWxsID0gJ2Rlc2MnO1xuICAgIG11bHRpc29ydFBhcmFtczogTXVsdGlzb3J0UGFyYW1bXSA9IFtdO1xuICAgIGN1cnJlbnRNdWx0aVNvcnRQb3NpdGlvbiA9IDA7XG4gICAgZXJyb3IgPSBmYWxzZTtcbiAgICBmb3JtOiBGb3JtR3JvdXA7XG5cbiAgICBASW5wdXQoKVxuICAgIGdldCBkZWZhdWx0TXVsdGlPcmRlcigpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gdGhpcy5fZGVmYXVsdE11bHRpT3JkZXI7XG4gICAgfVxuICAgIHNldCBkZWZhdWx0TXVsdGlPcmRlcih2YWx1ZTogTnVtYmVySW5wdXQpIHtcbiAgICAgICAgdGhpcy5fZGVmYXVsdE11bHRpT3JkZXIgPSBjb2VyY2VOdW1iZXJQcm9wZXJ0eSh2YWx1ZSk7XG4gICAgfVxuICAgIHByaXZhdGUgX2RlZmF1bHRNdWx0aU9yZGVyID0gbnVsbDtcblxuICAgIEBJbnB1dCgpXG4gICAgZ2V0IGRlZmF1bHRPcmRlcigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2RlZmF1bHRPcmRlcjtcbiAgICB9XG4gICAgc2V0IGRlZmF1bHRPcmRlcih2YWx1ZTogQm9vbGVhbklucHV0KSB7XG4gICAgICAgIHRoaXMuX2RlZmF1bHRPcmRlciA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgfVxuICAgIHByaXZhdGUgX2RlZmF1bHRPcmRlciA9IGZhbHNlO1xuXG4gICAgQElucHV0KClcbiAgICBnZXQgc29ydERpc2FibGVkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fc29ydERpc2FibGVkO1xuICAgIH1cbiAgICBzZXQgc29ydERpc2FibGVkKHZhbHVlOiBCb29sZWFuSW5wdXQpIHtcbiAgICAgICAgdGhpcy5fc29ydERpc2FibGVkID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB9XG4gICAgcHJpdmF0ZSBfc29ydERpc2FibGVkID0gZmFsc2U7XG5cbiAgICBASW5wdXQoKVxuICAgIGdldCBpc011bHRpU29ydGFibGUoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9pc011bHRpU29ydGFibGU7XG4gICAgfVxuICAgIHNldCBpc011bHRpU29ydGFibGUodmFsdWU6IEJvb2xlYW5JbnB1dCkge1xuICAgICAgICB0aGlzLl9pc011bHRpU29ydGFibGUgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgIH1cbiAgICBwcml2YXRlIF9pc011bHRpU29ydGFibGUgPSBmYWxzZTtcblxuICAgIHByaXZhdGUgZGVzdHJveSQ6IFN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgU3ViamVjdDxib29sZWFuPigpO1xuXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcycpXG4gICAgZ2V0IGNzc0NsYXNzZXMoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIFsnZXVpLXRhYmxlX19zb3J0YWJsZS1jb2wnLCB0aGlzLnNvcnREaXNhYmxlZCA/ICdldWktdGFibGVfX3NvcnRhYmxlLWNvbC0tZGlzYWJsZWQnIDogJyddLmpvaW4oJyAnKS50cmltKCk7XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgZXVpVGFibGVTb3J0U2VydmljZTogRXVpVGFibGVTb3J0U2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBjZDogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgKSB7fVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmlzTXVsdGlTb3J0YWJsZSAmJiAhdGhpcy5zb3J0RGlzYWJsZWQpIHtcbiAgICAgICAgICAgIGlmICh0aGlzLmRlZmF1bHRNdWx0aU9yZGVyID4gMCAmJiB0aGlzLnNvcnRPcmRlcikge1xuICAgICAgICAgICAgICAgIHRoaXMuZXVpVGFibGVTb3J0U2VydmljZS5hZGRNdWx0aXNvcnRQYXJhbShuZXcgTXVsdGlzb3J0UGFyYW0odGhpcy5zb3J0T24sIHRoaXMuc29ydE9yZGVyLCB0aGlzLmRlZmF1bHRNdWx0aU9yZGVyKSk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHRoaXMuZXVpVGFibGVTb3J0U2VydmljZS5hZGRNdWx0aXNvcnRQYXJhbShuZXcgTXVsdGlzb3J0UGFyYW0odGhpcy5zb3J0T24sIG51bGwsIDApKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGNvbWJpbmVMYXRlc3QoW3RoaXMuZXVpVGFibGVTb3J0U2VydmljZS5zb3J0aW5nUGFyYW1zJCwgdGhpcy5ldWlUYWJsZVNvcnRTZXJ2aWNlLm11bHRpc29ydFBhcmFtc0NoYW5nZSRdKVxuICAgICAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoW3NvcnRpbmdQYXJhbXMsIG11bHRpc29ydFBhcmFtc10pID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoIXRoaXMuaXNNdWx0aVNvcnRhYmxlKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChzb3J0aW5nUGFyYW1zLnNvcnQgIT09IHRoaXMuc29ydE9uKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm9yZGVyID0gbnVsbDtcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMub3JkZXIgPSBzb3J0aW5nUGFyYW1zLm9yZGVyIGFzICgnYXNjJyB8ICdkZXNjJyk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLm11bHRpc29ydFBhcmFtcyA9IFsuLi5tdWx0aXNvcnRQYXJhbXNdO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmZvcm0gPSBuZXcgRm9ybUdyb3VwKHsgY29sdW1uczogdGhpcy5ldWlUYWJsZVNvcnRTZXJ2aWNlLnRvRm9ybUdyb3VwKG11bHRpc29ydFBhcmFtcykgfSk7XG4gICAgICAgICAgICAgICAgICAgIGlmIChzb3J0aW5nUGFyYW1zLm9yZGVyICE9PSBudWxsICYmIHNvcnRpbmdQYXJhbXMuc29ydCAhPT0gbnVsbCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jdXJyZW50TXVsdGlTb3J0UG9zaXRpb24gPSAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHNvcnRpbmdQYXJhbXMuc29ydCAhPT0gdGhpcy5zb3J0T24pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm9yZGVyID0gbnVsbDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zZXRDdXJyZW50TXVsdGlzb3J0UG9zaXRpb24obXVsdGlzb3J0UGFyYW1zKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgIGlmICh0aGlzLmRlZmF1bHRPcmRlcikge1xuICAgICAgICAgICAgdGhpcy5vcmRlciA9IHRoaXMuc29ydE9yZGVyO1xuICAgICAgICAgICAgdGhpcy5ldWlUYWJsZVNvcnRTZXJ2aWNlLnNldFNvcnQodGhpcy5zb3J0T24sIHRoaXMub3JkZXIpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZGVzdHJveSQubmV4dCh0cnVlKTtcbiAgICAgICAgdGhpcy5kZXN0cm95JC51bnN1YnNjcmliZSgpO1xuICAgIH1cblxuICAgIGdldCBjb2x1bW5zKCk6IEZvcm1BcnJheSB7XG4gICAgICAgIHJldHVybiB0aGlzLmZvcm0uY29udHJvbHNbJ2NvbHVtbnMnXSBhcyBGb3JtQXJyYXk7XG4gICAgfVxuXG4gICAgcHVibGljIGNsaWNrKCk6IHZvaWQge1xuICAgICAgICBpZiAoIXRoaXMuc29ydERpc2FibGVkKSB7XG4gICAgICAgICAgICBpZiAodGhpcy5vcmRlciA9PT0gJ2FzYycpIHtcbiAgICAgICAgICAgICAgICB0aGlzLm9yZGVyID0gJ2Rlc2MnO1xuICAgICAgICAgICAgfSBlbHNlIGlmICh0aGlzLm9yZGVyID09PSAnZGVzYycpIHtcbiAgICAgICAgICAgICAgICB0aGlzLm9yZGVyID0gbnVsbDtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAodGhpcy5vcmRlciA9PT0gbnVsbCkge1xuICAgICAgICAgICAgICAgIHRoaXMub3JkZXIgPSAnYXNjJztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMuZXVpVGFibGVTb3J0U2VydmljZS5zZXRTb3J0KHRoaXMuc29ydE9uLCB0aGlzLm9yZGVyKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9uQ2xpY2tNdWx0aXNvcnRPcmRlcihpbmRleDogbnVtYmVyLCBvcmRlcjogJ2FzYycgfCAnZGVzYycgfCBudWxsKTogdm9pZCB7XG4gICAgICAgICh0aGlzLmZvcm0uZ2V0KCdjb2x1bW5zJykgYXMgRm9ybUFycmF5KS5jb250cm9sc1tpbmRleCAtIDFdLmdldCgnb3JkZXInKS5wYXRjaFZhbHVlKG9yZGVyKTtcbiAgICB9XG5cbiAgICBvbk9wZW5Ecm9wZG93bigpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5lcnJvciA9IGZhbHNlO1xuICAgIH1cblxuICAgIGdldE9yZGVyQnlJbmRleChpbmRleDogbnVtYmVyKTogc3RyaW5nIHwgbnVsbCB7XG4gICAgICAgIHJldHVybiAodGhpcy5mb3JtLmdldCgnY29sdW1ucycpIGFzIEZvcm1BcnJheSkuY29udHJvbHNbaW5kZXhdLmdldCgnb3JkZXInKS52YWx1ZTtcbiAgICB9XG5cbiAgICBvbkNhbmNlbE11bHRpU29ydCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kcm9wZG93bi5jbG9zZURyb3Bkb3duKCk7XG4gICAgfVxuXG4gICAgb25TdWJtaXRNdWx0aVNvcnQoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGFycjogQXJyYXk8eyBuYW1lOiBzdHJpbmc7IG9yZGVyOiAnYXNjJyB8ICdkZXNjJyB8IG51bGwgfT4gPSBbXTtcbiAgICAgICAgKHRoaXMuZm9ybS5nZXQoJ2NvbHVtbnMnKSBhcyBGb3JtQXJyYXkpLmNvbnRyb2xzLmZvckVhY2goKGVsKSA9PiB7XG4gICAgICAgICAgICBpZiAoZWwuZ2V0KCduYW1lJykudmFsdWUgJiYgZWwuZ2V0KCdvcmRlcicpLnZhbHVlKSB7XG4gICAgICAgICAgICAgICAgYXJyLnB1c2goeyBuYW1lOiBlbC5nZXQoJ25hbWUnKS52YWx1ZSwgb3JkZXI6IGVsLmdldCgnb3JkZXInKS52YWx1ZSB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG5cbiAgICAgICAgaWYgKHRoaXMuY2hlY2tWYWxpZEZvclNvcnRpbmcoYXJyKSkge1xuICAgICAgICAgICAgdGhpcy5tdWx0aXNvcnRQYXJhbXMubWFwKChlbCkgPT4gdGhpcy5zZXRTb3J0YWJsZVBhcmFtcyhlbCwgYXJyKSk7XG4gICAgICAgICAgICB0aGlzLmV1aVRhYmxlU29ydFNlcnZpY2Uuc2V0TXVsdGlTb3J0Q29sdW1ucyh0aGlzLm11bHRpc29ydFBhcmFtcyk7XG4gICAgICAgICAgICB0aGlzLmRyb3Bkb3duLmNsb3NlRHJvcGRvd24oKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuZXJyb3IgPSB0cnVlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzZXRTb3J0YWJsZVBhcmFtcyhlbDogTXVsdGlzb3J0UGFyYW0sIGFycjogQXJyYXk8eyBuYW1lOiBzdHJpbmc7IG9yZGVyOiAnYXNjJyB8ICdkZXNjJyB8IG51bGwgfT4pOiBNdWx0aXNvcnRQYXJhbSB7XG4gICAgICAgIGNvbnN0IGN1cnJFbEFyciA9IGFyci5maW5kKChpdGVtKSA9PiBpdGVtLm5hbWUgPT09IGVsLm5hbWUpO1xuICAgICAgICBpZiAoY3VyckVsQXJyKSB7XG4gICAgICAgICAgICBjb25zdCBpbmRleCA9IGFyci5maW5kSW5kZXgoKGl0ZW0pID0+IGl0ZW0ubmFtZSA9PT0gZWwubmFtZSk7XG4gICAgICAgICAgICBlbC5vcmRlciA9IGN1cnJFbEFyci5vcmRlcjtcbiAgICAgICAgICAgIGVsLnBvc2l0aW9uID0gaW5kZXggKyAxO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgZWwub3JkZXIgPSBudWxsO1xuICAgICAgICAgICAgZWwucG9zaXRpb24gPSAwO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBlbDtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNldEN1cnJlbnRNdWx0aXNvcnRQb3NpdGlvbihtdWx0aXNvcnRQYXJhbXM6IE11bHRpc29ydFBhcmFtW10pOiB2b2lkIHtcbiAgICAgICAgY29uc3QgY3VycmVudENvbHVtbiA9IG11bHRpc29ydFBhcmFtcy5maW5kKChlbCkgPT4gZWwubmFtZSA9PT0gdGhpcy5zb3J0T24pO1xuICAgICAgICBpZiAoY3VycmVudENvbHVtbikge1xuICAgICAgICAgICAgdGhpcy5vcmRlciA9IGN1cnJlbnRDb2x1bW4ub3JkZXI7XG4gICAgICAgICAgICB0aGlzLmN1cnJlbnRNdWx0aVNvcnRQb3NpdGlvbiA9IGN1cnJlbnRDb2x1bW4ucG9zaXRpb247XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLm9yZGVyID0gbnVsbDtcbiAgICAgICAgICAgIHRoaXMuY3VycmVudE11bHRpU29ydFBvc2l0aW9uID0gMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgY2hlY2tWYWxpZEZvclNvcnRpbmcoYXJyOiBBcnJheTx7IG5hbWU6IHN0cmluZzsgb3JkZXI6IHN0cmluZyB9Pik6IGJvb2xlYW4ge1xuICAgICAgICBpZiAoYXJyLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBhcnIuZmluZCgoZWwpID0+ICF0aGlzLmlzRWxlbWVudFVuaXF1ZU5hbWUoYXJyLCBlbCkpID09PSB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBpc0VsZW1lbnRVbmlxdWVOYW1lKGFycjogQXJyYXk8eyBuYW1lOiBzdHJpbmc7IG9yZGVyOiBzdHJpbmcgfT4sIGVsOiB7IG5hbWU6IHN0cmluZzsgb3JkZXI6IHN0cmluZyB9KTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiBhcnIuZmlsdGVyKChjb2wpID0+IGNvbC5uYW1lID09PSBlbC5uYW1lKS5sZW5ndGggPT09IDE7XG4gICAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImV1aS10YWJsZV9fc29ydGFibGUtY29sLWNvbnRlbnRcIj5cbiAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gICAgPGJ1dHRvbiAqbmdJZj1cIiFzb3J0RGlzYWJsZWRcIiBldWlTaXplUyBldWlCdXR0b24gZXVpSWNvbkJ1dHRvbiBldWlCYXNpY0J1dHRvbiBjbGFzcz1cImV1aS10YWJsZV9fc29ydGFibGUtaWNvbi1idXR0b25cIiAoY2xpY2spPVwiY2xpY2soKVwiPlxuICAgICAgICA8ZXVpLWljb24tc3ZnXG4gICAgICAgICAgICAqbmdJZj1cIiFvcmRlclwiXG4gICAgICAgICAgICBpY29uPVwiZXVpLXN3YXAtdmVydGljYWxcIlxuICAgICAgICAgICAgZmlsbENvbG9yPVwiZ3JleS01MFwiXG4gICAgICAgICAgICBbYXJpYS1sYWJlbF09XCInZXVpLmV1aXRhYmxlLk5PLVNPUlRJTkctSUNPTicgfCB0cmFuc2xhdGVcIj48L2V1aS1pY29uLXN2Zz5cbiAgICAgICAgPGV1aS1pY29uLXN2Z1xuICAgICAgICAgICAgKm5nSWY9XCJvcmRlciA9PT0gJ2FzYydcIlxuICAgICAgICAgICAgaWNvbj1cImV1aS1hcnJvdy11cFwiXG4gICAgICAgICAgICBmaWxsQ29sb3I9XCJwcmltYXJ5LTEwMFwiXG4gICAgICAgICAgICBbYXJpYS1sYWJlbF09XCInZXVpLmV1aXRhYmxlLkFTQ0VORElORy1JQ09OJyB8IHRyYW5zbGF0ZVwiPjwvZXVpLWljb24tc3ZnPlxuICAgICAgICA8ZXVpLWljb24tc3ZnXG4gICAgICAgICAgICAqbmdJZj1cIm9yZGVyID09PSAnZGVzYydcIlxuICAgICAgICAgICAgaWNvbj1cImV1aS1hcnJvdy1kb3duXCJcbiAgICAgICAgICAgIGZpbGxDb2xvcj1cInByaW1hcnktMTAwXCJcbiAgICAgICAgICAgIFthcmlhLWxhYmVsXT1cIidldWkuZXVpdGFibGUuREVTQ0VORElORy1JQ09OJyB8IHRyYW5zbGF0ZVwiPjwvZXVpLWljb24tc3ZnPlxuICAgIDwvYnV0dG9uPlxuICAgIDxuZy10ZW1wbGF0ZSAqbmdJZj1cImlzTXVsdGlTb3J0YWJsZVwiIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInNvcnREcm9wZG93blwiPjwvbmctdGVtcGxhdGU+XG48L2Rpdj5cbjxuZy10ZW1wbGF0ZSAjc29ydERyb3Bkb3duIGxldC1pbmRleD5cbiAgICA8ZXVpLWRyb3Bkb3duIFtpc0Nsb3NlZE9uQ2xpY2tJbnNpZGVdPVwiZmFsc2VcIj5cbiAgICAgICAgPGJ1dHRvbiBldWlCdXR0b24gZXVpQmFzaWNCdXR0b24gZXVpUm91bmRlZCBldWlJY29uQnV0dG9uIGV1aVNpemVTIFtldWlEaXNhYmxlZF09XCJzb3J0RGlzYWJsZWRcIiAoY2xpY2spPVwib25PcGVuRHJvcGRvd24oKVwiPlxuICAgICAgICAgICAgPHNwYW4gZXVpQmFkZ2UgZXVpUHJpbWFyeSBldWlPdXRsaW5lPnt7IGN1cnJlbnRNdWx0aVNvcnRQb3NpdGlvbiB9fTwvc3Bhbj5cbiAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDxldWktZHJvcGRvd24tY29udGVudD5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJldWktdS1wdC14cyBldWktdS1wbC1zXCI+XG4gICAgICAgICAgICAgICAgPHNtYWxsPnt7ICdldWkuZXVpdGFibGUuQ0hPT1NFLVNPUlQtT1JERVInIHwgdHJhbnNsYXRlIH19PC9zbWFsbD5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGZvcm0gW2Zvcm1Hcm91cF09XCJmb3JtXCIgKm5nSWY9XCJmb3JtXCI+XG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBmb3JtQXJyYXlOYW1lPVwiY29sdW1uc1wiPlxuICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBjb2x1bW5Gb3JtIG9mIGNvbHVtbnMuY29udHJvbHM7IGxldCBpID0gaW5kZXhcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJldWktdS1mbGV4IGV1aS11LXAtc1wiIFtmb3JtR3JvdXBdPVwiZm9ybS5nZXQoJ2NvbHVtbnMnKVsnY29udHJvbHMnXVtpXVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGV1aUxhYmVsIGNsYXNzPVwiZXVpLXUtbXItc1wiPnt7IGkgKyAxIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzZWxlY3QgZXVpU2VsZWN0IGV1aVNpemVTIGZvcm1Db250cm9sTmFtZT1cIm5hbWVcIiBjbGFzcz1cImV1aS11LW1yLXNcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT1cIlwiPjwvb3B0aW9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uICpuZ0Zvcj1cImxldCBjb2x1bW4gb2YgbXVsdGlzb3J0UGFyYW1zXCIgW3ZhbHVlXT1cImNvbHVtbi5uYW1lXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyBjb2x1bW4ubmFtZSB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L29wdGlvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NlbGVjdD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiIWdldE9yZGVyQnlJbmRleChpKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV1aVNpemVTXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV1aVNlY29uZGFyeVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBldWlCdXR0b25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXVpSWNvbkJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBldWlCYXNpY0J1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwib25DbGlja011bHRpc29ydE9yZGVyKGkgKyAxLCAnYXNjJylcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGV1aS1pY29uLXN2Z1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWNvbj1cImV1aS1zd2FwLXZlcnRpY2FsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthcmlhLWxhYmVsXT1cIidldWkuZXVpdGFibGUuTk8tU09SVElORy1JQ09OJyB8IHRyYW5zbGF0ZVwiPjwvZXVpLWljb24tc3ZnPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJnZXRPcmRlckJ5SW5kZXgoaSkgPT09ICdhc2MnXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXVpU2l6ZVNcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXVpUHJpbWFyeVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBldWlCdXR0b25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXVpSWNvbkJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBldWlCYXNpY0J1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwib25DbGlja011bHRpc29ydE9yZGVyKGkgKyAxLCAnZGVzYycpXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxldWktaWNvbi1zdmcgaWNvbj1cImV1aS1hcnJvdy11cFwiIFthcmlhLWxhYmVsXT1cIidldWkuZXVpdGFibGUuQVNDRU5ESU5HLUlDT04nIHwgdHJhbnNsYXRlXCI+PC9ldWktaWNvbi1zdmc+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImdldE9yZGVyQnlJbmRleChpKSA9PT0gJ2Rlc2MnXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXVpU2l6ZVNcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXVpUHJpbWFyeVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBldWlCdXR0b25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXVpSWNvbkJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBldWlCYXNpY0J1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwib25DbGlja011bHRpc29ydE9yZGVyKGkgKyAxLCBudWxsKVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZXVpLWljb24tc3ZnXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpY29uPVwiZXVpLWFycm93LWRvd25cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2FyaWEtbGFiZWxdPVwiJ2V1aS5ldWl0YWJsZS5ERVNDRU5ESU5HLUlDT04nIHwgdHJhbnNsYXRlXCI+PC9ldWktaWNvbi1zdmc+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICA8L2Zvcm0+XG4gICAgICAgICAgICA8IS0tIEZvb3Rlci0tPlxuICAgICAgICAgICAgPHAgY2xhc3M9XCJldWktdS1tdC1ub25lIGV1aS11LW1iLW5vbmUgZXVpLXUtbWwtc1wiICpuZ0lmPVwiZXJyb3JcIj5cbiAgICAgICAgICAgICAgICA8ZXVpLWZlZWRiYWNrLW1lc3NhZ2UgZXVpRGFuZ2VyPnt7ICdldWkuZXVpdGFibGUuV1JPTkctU09SVC1QQVJBTVMnIHwgdHJhbnNsYXRlIH19PC9ldWktZmVlZGJhY2stbWVzc2FnZT5cbiAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJldWktdS1mbGV4IGV1aS11LWZsZXgtanVzdGlmeS1jb250ZW50LWJldHdlZW4gZXVpLXUtcC1zXCI+XG4gICAgICAgICAgICAgICAgPGJ1dHRvbiBldWlCdXR0b24gZXVpU2l6ZVMgZXVpU2Vjb25kYXJ5IChjbGljayk9XCJvbkNhbmNlbE11bHRpU29ydCgpXCI+e3sgJ2V1aS5DQU5DRUwnIHwgdHJhbnNsYXRlIH19PC9idXR0b24+XG4gICAgICAgICAgICAgICAgPGJ1dHRvbiBldWlCdXR0b24gZXVpU2l6ZVMgZXVpUHJpbWFyeSAoY2xpY2spPVwib25TdWJtaXRNdWx0aVNvcnQoKVwiPnt7ICdldWkuQVBQTFknIHwgdHJhbnNsYXRlIH19PC9idXR0b24+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9ldWktZHJvcGRvd24tY29udGVudD5cbiAgICA8L2V1aS1kcm9wZG93bj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
209
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXVpLXRhYmxlLXNvcnRhYmxlLWNvbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9ldWktdGFibGUvc29ydGFibGUtY29sL2V1aS10YWJsZS1zb3J0YWJsZS1jb2wuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vZXVpLXRhYmxlL3NvcnRhYmxlLWNvbC9ldWktdGFibGUtc29ydGFibGUtY29sLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQXFCLEtBQUssRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFxQixNQUFNLGVBQWUsQ0FBQztBQUMvRyxPQUFPLEVBQUUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUM5QyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFFLHFCQUFxQixFQUFnQixvQkFBb0IsRUFBZSxNQUFNLHVCQUF1QixDQUFDO0FBQy9HLE9BQU8sRUFBYSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN0RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUdwRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7Ozs7Ozs7Ozs7O0FBTzVELE1BQU0sT0FBTyw0QkFBNEI7SUFzRHJDLFlBQ1ksbUJBQXdDLEVBQ3hDLEVBQXFCO1FBRHJCLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFDeEMsT0FBRSxHQUFGLEVBQUUsQ0FBbUI7UUFyRHhCLGNBQVMsR0FBbUIsTUFBTSxDQUFDO1FBRXJDLFVBQUssR0FBMEIsTUFBTSxDQUFDO1FBQzdDLG9CQUFlLEdBQXFCLEVBQUUsQ0FBQztRQUN2Qyw2QkFBd0IsR0FBRyxDQUFDLENBQUM7UUFDN0IsVUFBSyxHQUFHLEtBQUssQ0FBQztRQVVOLHVCQUFrQixHQUFHLElBQUksQ0FBQztR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O2tCQUx4QyxTQUFTOytCQUVJLGNBQWM7MElBSVMsUUFBUTtzQkFBeEMsU0FBUzt1QkFBQyxvQkFBb0I7Z0JBQ3RCLE1BQU07c0JBQWQsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQVNGLGlCQUFpQjtzQkFEcEIsS0FBSztnQkFVRixZQUFZO3NCQURmLEtBQUs7Z0JBVUYsWUFBWTtzQkFEZixLQUFLO2dCQVVGLGVBQWU7c0JBRGxCLEtBQUs7Z0JBWUYsVUFBVTtzQkFEYixXQUFXO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgT25EZXN0cm95LCBJbnB1dCwgSG9zdEJpbmRpbmcsIFZpZXdDaGlsZCwgQ2hhbmdlRGV0ZWN0b3JSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN1YmplY3QsIGNvbWJpbmVMYXRlc3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSwgQm9vbGVhbklucHV0LCBjb2VyY2VOdW1iZXJQcm9wZXJ0eSwgTnVtYmVySW5wdXQgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nO1xuaW1wb3J0IHsgRm9ybUFycmF5LCBGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBFdWlEcm9wZG93bkNvbXBvbmVudCB9IGZyb20gJ0BldWkvY29tcG9uZW50cy9ldWktZHJvcGRvd24nO1xuXG5pbXBvcnQgeyBFdWlUYWJsZVNvcnRTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvZXVpLXRhYmxlLXNvcnQuc2VydmljZSc7XG5pbXBvcnQgeyBNdWx0aXNvcnRQYXJhbSB9IGZyb20gJy4uL21vZGVscy9tdWx0aS1zb3J0Lm1vZGVsJztcblxuQENvbXBvbmVudCh7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lXG4gICAgc2VsZWN0b3I6ICd0aFtzb3J0YWJsZV0nLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9ldWktdGFibGUtc29ydGFibGUtY29sLmNvbXBvbmVudC5odG1sJyxcbn0pXG5leHBvcnQgY2xhc3MgRXVpVGFibGVTb3J0YWJsZUNvbENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgICBAVmlld0NoaWxkKEV1aURyb3Bkb3duQ29tcG9uZW50KSBkcm9wZG93bjogRXVpRHJvcGRvd25Db21wb25lbnQ7XG4gICAgQElucHV0KCkgc29ydE9uOiBzdHJpbmc7XG4gICAgQElucHV0KCkgc29ydE9yZGVyOiAnYXNjJyB8ICdkZXNjJyA9ICdkZXNjJztcblxuICAgIHB1YmxpYyBvcmRlcjogJ2FzYycgfCAnZGVzYycgfCBudWxsID0gJ2Rlc2MnO1xuICAgIG11bHRpc29ydFBhcmFtczogTXVsdGlzb3J0UGFyYW1bXSA9IFtdO1xuICAgIGN1cnJlbnRNdWx0aVNvcnRQb3NpdGlvbiA9IDA7XG4gICAgZXJyb3IgPSBmYWxzZTtcbiAgICBmb3JtOiBGb3JtR3JvdXA7XG5cbiAgICBASW5wdXQoKVxuICAgIGdldCBkZWZhdWx0TXVsdGlPcmRlcigpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gdGhpcy5fZGVmYXVsdE11bHRpT3JkZXI7XG4gICAgfVxuICAgIHNldCBkZWZhdWx0TXVsdGlPcmRlcih2YWx1ZTogTnVtYmVySW5wdXQpIHtcbiAgICAgICAgdGhpcy5fZGVmYXVsdE11bHRpT3JkZXIgPSBjb2VyY2VOdW1iZXJQcm9wZXJ0eSh2YWx1ZSk7XG4gICAgfVxuICAgIHByaXZhdGUgX2RlZmF1bHRNdWx0aU9yZGVyID0gbnVsbDtcblxuICAgIEBJbnB1dCgpXG4gICAgZ2V0IGRlZmF1bHRPcmRlcigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2RlZmF1bHRPcmRlcjtcbiAgICB9XG4gICAgc2V0IGRlZmF1bHRPcmRlcih2YWx1ZTogQm9vbGVhbklucHV0KSB7XG4gICAgICAgIHRoaXMuX2RlZmF1bHRPcmRlciA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgfVxuICAgIHByaXZhdGUgX2RlZmF1bHRPcmRlciA9IGZhbHNlO1xuXG4gICAgQElucHV0KClcbiAgICBnZXQgc29ydERpc2FibGVkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fc29ydERpc2FibGVkO1xuICAgIH1cbiAgICBzZXQgc29ydERpc2FibGVkKHZhbHVlOiBCb29sZWFuSW5wdXQpIHtcbiAgICAgICAgdGhpcy5fc29ydERpc2FibGVkID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB9XG4gICAgcHJpdmF0ZSBfc29ydERpc2FibGVkID0gZmFsc2U7XG5cbiAgICBASW5wdXQoKVxuICAgIGdldCBpc011bHRpU29ydGFibGUoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9pc011bHRpU29ydGFibGU7XG4gICAgfVxuICAgIHNldCBpc011bHRpU29ydGFibGUodmFsdWU6IEJvb2xlYW5JbnB1dCkge1xuICAgICAgICB0aGlzLl9pc011bHRpU29ydGFibGUgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgIH1cbiAgICBwcml2YXRlIF9pc011bHRpU29ydGFibGUgPSBmYWxzZTtcblxuICAgIHByaXZhdGUgZGVzdHJveSQ6IFN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgU3ViamVjdDxib29sZWFuPigpO1xuXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcycpXG4gICAgZ2V0IGNzc0NsYXNzZXMoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIFsnZXVpLXRhYmxlX19zb3J0YWJsZS1jb2wnLCB0aGlzLnNvcnREaXNhYmxlZCA/ICdldWktdGFibGVfX3NvcnRhYmxlLWNvbC0tZGlzYWJsZWQnIDogJyddLmpvaW4oJyAnKS50cmltKCk7XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgZXVpVGFibGVTb3J0U2VydmljZTogRXVpVGFibGVTb3J0U2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBjZDogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgKSB7fVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmlzTXVsdGlTb3J0YWJsZSAmJiAhdGhpcy5zb3J0RGlzYWJsZWQpIHtcbiAgICAgICAgICAgIGlmICh0aGlzLmRlZmF1bHRNdWx0aU9yZGVyID4gMCAmJiB0aGlzLnNvcnRPcmRlcikge1xuICAgICAgICAgICAgICAgIHRoaXMuZXVpVGFibGVTb3J0U2VydmljZS5hZGRNdWx0aXNvcnRQYXJhbShuZXcgTXVsdGlzb3J0UGFyYW0odGhpcy5zb3J0T24sIHRoaXMuc29ydE9yZGVyLCB0aGlzLmRlZmF1bHRNdWx0aU9yZGVyKSk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHRoaXMuZXVpVGFibGVTb3J0U2VydmljZS5hZGRNdWx0aXNvcnRQYXJhbShuZXcgTXVsdGlzb3J0UGFyYW0odGhpcy5zb3J0T24sIG51bGwsIDApKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGNvbWJpbmVMYXRlc3QoW3RoaXMuZXVpVGFibGVTb3J0U2VydmljZS5zb3J0aW5nUGFyYW1zJCwgdGhpcy5ldWlUYWJsZVNvcnRTZXJ2aWNlLm11bHRpc29ydFBhcmFtc0NoYW5nZSRdKVxuICAgICAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoW3NvcnRpbmdQYXJhbXMsIG11bHRpc29ydFBhcmFtc10pID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoIXRoaXMuaXNNdWx0aVNvcnRhYmxlKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChzb3J0aW5nUGFyYW1zLnNvcnQgIT09IHRoaXMuc29ydE9uKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm9yZGVyID0gbnVsbDtcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMub3JkZXIgPSBzb3J0aW5nUGFyYW1zLm9yZGVyIGFzICgnYXNjJyB8ICdkZXNjJyk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLm11bHRpc29ydFBhcmFtcyA9IFsuLi5tdWx0aXNvcnRQYXJhbXNdO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmZvcm0gPSBuZXcgRm9ybUdyb3VwKHsgY29sdW1uczogdGhpcy5ldWlUYWJsZVNvcnRTZXJ2aWNlLnRvRm9ybUdyb3VwKG11bHRpc29ydFBhcmFtcykgfSk7XG4gICAgICAgICAgICAgICAgICAgIGlmIChzb3J0aW5nUGFyYW1zLm9yZGVyICE9PSBudWxsICYmIHNvcnRpbmdQYXJhbXMuc29ydCAhPT0gbnVsbCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jdXJyZW50TXVsdGlTb3J0UG9zaXRpb24gPSAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHNvcnRpbmdQYXJhbXMuc29ydCAhPT0gdGhpcy5zb3J0T24pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm9yZGVyID0gbnVsbDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zZXRDdXJyZW50TXVsdGlzb3J0UG9zaXRpb24obXVsdGlzb3J0UGFyYW1zKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgIGlmICh0aGlzLmRlZmF1bHRPcmRlcikge1xuICAgICAgICAgICAgdGhpcy5vcmRlciA9IHRoaXMuc29ydE9yZGVyO1xuICAgICAgICAgICAgdGhpcy5ldWlUYWJsZVNvcnRTZXJ2aWNlLnNldFNvcnQodGhpcy5zb3J0T24sIHRoaXMub3JkZXIpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZGVzdHJveSQubmV4dCh0cnVlKTtcbiAgICAgICAgdGhpcy5kZXN0cm95JC51bnN1YnNjcmliZSgpO1xuICAgIH1cblxuICAgIGdldCBjb2x1bW5zKCk6IEZvcm1BcnJheSB7XG4gICAgICAgIHJldHVybiB0aGlzLmZvcm0uY29udHJvbHNbJ2NvbHVtbnMnXSBhcyBGb3JtQXJyYXk7XG4gICAgfVxuXG4gICAgcHVibGljIGNsaWNrKCk6IHZvaWQge1xuICAgICAgICBpZiAoIXRoaXMuc29ydERpc2FibGVkKSB7XG4gICAgICAgICAgICBpZiAodGhpcy5vcmRlciA9PT0gJ2FzYycpIHtcbiAgICAgICAgICAgICAgICB0aGlzLm9yZGVyID0gJ2Rlc2MnO1xuICAgICAgICAgICAgfSBlbHNlIGlmICh0aGlzLm9yZGVyID09PSAnZGVzYycpIHtcbiAgICAgICAgICAgICAgICB0aGlzLm9yZGVyID0gbnVsbDtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAodGhpcy5vcmRlciA9PT0gbnVsbCkge1xuICAgICAgICAgICAgICAgIHRoaXMub3JkZXIgPSAnYXNjJztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMuZXVpVGFibGVTb3J0U2VydmljZS5zZXRTb3J0KHRoaXMuc29ydE9uLCB0aGlzLm9yZGVyKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9uQ2xpY2tNdWx0aXNvcnRPcmRlcihpbmRleDogbnVtYmVyLCBvcmRlcjogJ2FzYycgfCAnZGVzYycgfCBudWxsKTogdm9pZCB7XG4gICAgICAgICh0aGlzLmZvcm0uZ2V0KCdjb2x1bW5zJykgYXMgRm9ybUFycmF5KS5jb250cm9sc1tpbmRleCAtIDFdLmdldCgnb3JkZXInKS5wYXRjaFZhbHVlKG9yZGVyKTtcbiAgICB9XG5cbiAgICBvbk9wZW5Ecm9wZG93bigpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5lcnJvciA9IGZhbHNlO1xuICAgIH1cblxuICAgIGdldE9yZGVyQnlJbmRleChpbmRleDogbnVtYmVyKTogc3RyaW5nIHwgbnVsbCB7XG4gICAgICAgIHJldHVybiAodGhpcy5mb3JtLmdldCgnY29sdW1ucycpIGFzIEZvcm1BcnJheSkuY29udHJvbHNbaW5kZXhdLmdldCgnb3JkZXInKS52YWx1ZTtcbiAgICB9XG5cbiAgICBvbkNhbmNlbE11bHRpU29ydCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kcm9wZG93bi5jbG9zZURyb3Bkb3duKCk7XG4gICAgfVxuXG4gICAgb25TdWJtaXRNdWx0aVNvcnQoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGFycjogQXJyYXk8eyBuYW1lOiBzdHJpbmc7IG9yZGVyOiAnYXNjJyB8ICdkZXNjJyB8IG51bGwgfT4gPSBbXTtcbiAgICAgICAgKHRoaXMuZm9ybS5nZXQoJ2NvbHVtbnMnKSBhcyBGb3JtQXJyYXkpLmNvbnRyb2xzLmZvckVhY2goKGVsKSA9PiB7XG4gICAgICAgICAgICBpZiAoZWwuZ2V0KCduYW1lJykudmFsdWUgJiYgZWwuZ2V0KCdvcmRlcicpLnZhbHVlKSB7XG4gICAgICAgICAgICAgICAgYXJyLnB1c2goeyBuYW1lOiBlbC5nZXQoJ25hbWUnKS52YWx1ZSwgb3JkZXI6IGVsLmdldCgnb3JkZXInKS52YWx1ZSB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG5cbiAgICAgICAgaWYgKHRoaXMuY2hlY2tWYWxpZEZvclNvcnRpbmcoYXJyKSkge1xuICAgICAgICAgICAgdGhpcy5tdWx0aXNvcnRQYXJhbXMubWFwKChlbCkgPT4gdGhpcy5zZXRTb3J0YWJsZVBhcmFtcyhlbCwgYXJyKSk7XG4gICAgICAgICAgICB0aGlzLmV1aVRhYmxlU29ydFNlcnZpY2Uuc2V0TXVsdGlTb3J0Q29sdW1ucyh0aGlzLm11bHRpc29ydFBhcmFtcyk7XG4gICAgICAgICAgICB0aGlzLmRyb3Bkb3duLmNsb3NlRHJvcGRvd24oKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuZXJyb3IgPSB0cnVlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzZXRTb3J0YWJsZVBhcmFtcyhlbDogTXVsdGlzb3J0UGFyYW0sIGFycjogQXJyYXk8eyBuYW1lOiBzdHJpbmc7IG9yZGVyOiAnYXNjJyB8ICdkZXNjJyB8IG51bGwgfT4pOiBNdWx0aXNvcnRQYXJhbSB7XG4gICAgICAgIGNvbnN0IGN1cnJFbEFyciA9IGFyci5maW5kKChpdGVtKSA9PiBpdGVtLm5hbWUgPT09IGVsLm5hbWUpO1xuICAgICAgICBpZiAoY3VyckVsQXJyKSB7XG4gICAgICAgICAgICBjb25zdCBpbmRleCA9IGFyci5maW5kSW5kZXgoKGl0ZW0pID0+IGl0ZW0ubmFtZSA9PT0gZWwubmFtZSk7XG4gICAgICAgICAgICBlbC5vcmRlciA9IGN1cnJFbEFyci5vcmRlcjtcbiAgICAgICAgICAgIGVsLnBvc2l0aW9uID0gaW5kZXggKyAxO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgZWwub3JkZXIgPSBudWxsO1xuICAgICAgICAgICAgZWwucG9zaXRpb24gPSAwO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBlbDtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNldEN1cnJlbnRNdWx0aXNvcnRQb3NpdGlvbihtdWx0aXNvcnRQYXJhbXM6IE11bHRpc29ydFBhcmFtW10pOiB2b2lkIHtcbiAgICAgICAgY29uc3QgY3VycmVudENvbHVtbiA9IG11bHRpc29ydFBhcmFtcy5maW5kKChlbCkgPT4gZWwubmFtZSA9PT0gdGhpcy5zb3J0T24pO1xuICAgICAgICBpZiAoY3VycmVudENvbHVtbikge1xuICAgICAgICAgICAgdGhpcy5vcmRlciA9IGN1cnJlbnRDb2x1bW4ub3JkZXI7XG4gICAgICAgICAgICB0aGlzLmN1cnJlbnRNdWx0aVNvcnRQb3NpdGlvbiA9IGN1cnJlbnRDb2x1bW4ucG9zaXRpb247XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLm9yZGVyID0gbnVsbDtcbiAgICAgICAgICAgIHRoaXMuY3VycmVudE11bHRpU29ydFBvc2l0aW9uID0gMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgY2hlY2tWYWxpZEZvclNvcnRpbmcoYXJyOiBBcnJheTx7IG5hbWU6IHN0cmluZzsgb3JkZXI6IHN0cmluZyB9Pik6IGJvb2xlYW4ge1xuICAgICAgICBpZiAoYXJyLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBhcnIuZmluZCgoZWwpID0+ICF0aGlzLmlzRWxlbWVudFVuaXF1ZU5hbWUoYXJyLCBlbCkpID09PSB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBpc0VsZW1lbnRVbmlxdWVOYW1lKGFycjogQXJyYXk8eyBuYW1lOiBzdHJpbmc7IG9yZGVyOiBzdHJpbmcgfT4sIGVsOiB7IG5hbWU6IHN0cmluZzsgb3JkZXI6IHN0cmluZyB9KTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiBhcnIuZmlsdGVyKChjb2wpID0+IGNvbC5uYW1lID09PSBlbC5uYW1lKS5sZW5ndGggPT09IDE7XG4gICAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImV1aS10YWJsZV9fc29ydGFibGUtY29sLWNvbnRlbnRcIj5cbiAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgKm5nSWY9XCIhc29ydERpc2FibGVkXCIgZXVpU2l6ZVMgZXVpQnV0dG9uIGV1aUljb25CdXR0b24gZXVpQmFzaWNCdXR0b24gY2xhc3M9XCJldWktdGFibGVfX3NvcnRhYmxlLWljb24tYnV0dG9uXCIgKGNsaWNrKT1cImNsaWNrKClcIj5cbiAgICAgICAgPGV1aS1pY29uLXN2Z1xuICAgICAgICAgICAgKm5nSWY9XCIhb3JkZXJcIlxuICAgICAgICAgICAgaWNvbj1cImV1aS1zd2FwLXZlcnRpY2FsXCJcbiAgICAgICAgICAgIGZpbGxDb2xvcj1cImdyZXktNTBcIlxuICAgICAgICAgICAgW2FyaWEtbGFiZWxdPVwiJ2V1aS5ldWl0YWJsZS5OTy1TT1JUSU5HLUlDT04nIHwgdHJhbnNsYXRlXCI+PC9ldWktaWNvbi1zdmc+XG4gICAgICAgIDxldWktaWNvbi1zdmdcbiAgICAgICAgICAgICpuZ0lmPVwib3JkZXIgPT09ICdhc2MnXCJcbiAgICAgICAgICAgIGljb249XCJldWktYXJyb3ctdXBcIlxuICAgICAgICAgICAgZmlsbENvbG9yPVwicHJpbWFyeS0xMDBcIlxuICAgICAgICAgICAgW2FyaWEtbGFiZWxdPVwiJ2V1aS5ldWl0YWJsZS5BU0NFTkRJTkctSUNPTicgfCB0cmFuc2xhdGVcIj48L2V1aS1pY29uLXN2Zz5cbiAgICAgICAgPGV1aS1pY29uLXN2Z1xuICAgICAgICAgICAgKm5nSWY9XCJvcmRlciA9PT0gJ2Rlc2MnXCJcbiAgICAgICAgICAgIGljb249XCJldWktYXJyb3ctZG93blwiXG4gICAgICAgICAgICBmaWxsQ29sb3I9XCJwcmltYXJ5LTEwMFwiXG4gICAgICAgICAgICBbYXJpYS1sYWJlbF09XCInZXVpLmV1aXRhYmxlLkRFU0NFTkRJTkctSUNPTicgfCB0cmFuc2xhdGVcIj48L2V1aS1pY29uLXN2Zz5cbiAgICA8L2J1dHRvbj5cbiAgICA8bmctdGVtcGxhdGUgKm5nSWY9XCJpc011bHRpU29ydGFibGVcIiBbbmdUZW1wbGF0ZU91dGxldF09XCJzb3J0RHJvcGRvd25cIj48L25nLXRlbXBsYXRlPlxuPC9kaXY+XG48bmctdGVtcGxhdGUgI3NvcnREcm9wZG93biBsZXQtaW5kZXg+XG4gICAgPGV1aS1kcm9wZG93biBbaXNDbG9zZWRPbkNsaWNrSW5zaWRlXT1cImZhbHNlXCI+XG4gICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGV1aUJ1dHRvbiBldWlCYXNpY0J1dHRvbiBldWlSb3VuZGVkIGV1aUljb25CdXR0b24gZXVpU2l6ZVMgW2V1aURpc2FibGVkXT1cInNvcnREaXNhYmxlZFwiIChjbGljayk9XCJvbk9wZW5Ecm9wZG93bigpXCI+XG4gICAgICAgICAgICA8c3BhbiBldWlCYWRnZSBldWlQcmltYXJ5IGV1aU91dGxpbmU+e3sgY3VycmVudE11bHRpU29ydFBvc2l0aW9uIH19PC9zcGFuPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPGV1aS1kcm9wZG93bi1jb250ZW50PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImV1aS11LXB0LXhzIGV1aS11LXBsLXNcIj5cbiAgICAgICAgICAgICAgICA8c21hbGw+e3sgJ2V1aS5ldWl0YWJsZS5DSE9PU0UtU09SVC1PUkRFUicgfCB0cmFuc2xhdGUgfX08L3NtYWxsPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8Zm9ybSBbZm9ybUdyb3VwXT1cImZvcm1cIiAqbmdJZj1cImZvcm1cIj5cbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyIGZvcm1BcnJheU5hbWU9XCJjb2x1bW5zXCI+XG4gICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGNvbHVtbkZvcm0gb2YgY29sdW1ucy5jb250cm9sczsgbGV0IGkgPSBpbmRleFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImV1aS11LWZsZXggZXVpLXUtcC1zXCIgW2Zvcm1Hcm91cF09XCJmb3JtLmdldCgnY29sdW1ucycpWydjb250cm9scyddW2ldXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gZXVpTGFiZWwgY2xhc3M9XCJldWktdS1tci1zXCI+e3sgaSArIDEgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNlbGVjdCBldWlTZWxlY3QgZXVpU2l6ZVMgZm9ybUNvbnRyb2xOYW1lPVwibmFtZVwiIGNsYXNzPVwiZXVpLXUtbXItc1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPVwiXCI+PC9vcHRpb24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gKm5nRm9yPVwibGV0IGNvbHVtbiBvZiBtdWx0aXNvcnRQYXJhbXNcIiBbdmFsdWVdPVwiY29sdW1uLm5hbWVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IGNvbHVtbi5uYW1lIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvb3B0aW9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc2VsZWN0PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiIWdldE9yZGVyQnlJbmRleChpKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV1aVNpemVTXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV1aVNlY29uZGFyeVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBldWlCdXR0b25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXVpSWNvbkJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBldWlCYXNpY0J1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwib25DbGlja011bHRpc29ydE9yZGVyKGkgKyAxLCAnYXNjJylcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGV1aS1pY29uLXN2Z1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWNvbj1cImV1aS1zd2FwLXZlcnRpY2FsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthcmlhLWxhYmVsXT1cIidldWkuZXVpdGFibGUuTk8tU09SVElORy1JQ09OJyB8IHRyYW5zbGF0ZVwiPjwvZXVpLWljb24tc3ZnPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiZ2V0T3JkZXJCeUluZGV4KGkpID09PSAnYXNjJ1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV1aVNpemVTXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV1aVByaW1hcnlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXVpQnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV1aUljb25CdXR0b25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXVpQmFzaWNCdXR0b25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uQ2xpY2tNdWx0aXNvcnRPcmRlcihpICsgMSwgJ2Rlc2MnKVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZXVpLWljb24tc3ZnIGljb249XCJldWktYXJyb3ctdXBcIiBbYXJpYS1sYWJlbF09XCInZXVpLmV1aXRhYmxlLkFTQ0VORElORy1JQ09OJyB8IHRyYW5zbGF0ZVwiPjwvZXVpLWljb24tc3ZnPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiZ2V0T3JkZXJCeUluZGV4KGkpID09PSAnZGVzYydcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBldWlTaXplU1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBldWlQcmltYXJ5XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV1aUJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBldWlJY29uQnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV1aUJhc2ljQnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJvbkNsaWNrTXVsdGlzb3J0T3JkZXIoaSArIDEsIG51bGwpXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxldWktaWNvbi1zdmdcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGljb249XCJldWktYXJyb3ctZG93blwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXJpYS1sYWJlbF09XCInZXVpLmV1aXRhYmxlLkRFU0NFTkRJTkctSUNPTicgfCB0cmFuc2xhdGVcIj48L2V1aS1pY29uLXN2Zz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgIDwvZm9ybT5cbiAgICAgICAgICAgIDwhLS0gRm9vdGVyLS0+XG4gICAgICAgICAgICA8cCBjbGFzcz1cImV1aS11LW10LW5vbmUgZXVpLXUtbWItbm9uZSBldWktdS1tbC1zXCIgKm5nSWY9XCJlcnJvclwiPlxuICAgICAgICAgICAgICAgIDxldWktZmVlZGJhY2stbWVzc2FnZSBldWlEYW5nZXI+e3sgJ2V1aS5ldWl0YWJsZS5XUk9ORy1TT1JULVBBUkFNUycgfCB0cmFuc2xhdGUgfX08L2V1aS1mZWVkYmFjay1tZXNzYWdlPlxuICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImV1aS11LWZsZXggZXVpLXUtZmxleC1qdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiBldWktdS1wLXNcIj5cbiAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBldWlCdXR0b24gZXVpU2l6ZVMgZXVpU2Vjb25kYXJ5IChjbGljayk9XCJvbkNhbmNlbE11bHRpU29ydCgpXCI+e3sgJ2V1aS5DQU5DRUwnIHwgdHJhbnNsYXRlIH19PC9idXR0b24+XG4gICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgZXVpQnV0dG9uIGV1aVNpemVTIGV1aVByaW1hcnkgKGNsaWNrKT1cIm9uU3VibWl0TXVsdGlTb3J0KClcIj57eyAnZXVpLkFQUExZJyB8IHRyYW5zbGF0ZSB9fTwvYnV0dG9uPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZXVpLWRyb3Bkb3duLWNvbnRlbnQ+XG4gICAgPC9ldWktZHJvcGRvd24+XG48L25nLXRlbXBsYXRlPlxuIl19
@@ -41,10 +41,10 @@ export class EuiUserProfileComponent {
41
41
  }
42
42
  }
43
43
  /** @nocollapse */ EuiUserProfileComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: EuiUserProfileComponent, deps: [{ token: i1.UxAppShellService }], target: i0.ɵɵFactoryTarget.Component });
44
- /** @nocollapse */ EuiUserProfileComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: EuiUserProfileComponent, selector: "eui-user-profile", inputs: { welcomeLabel: "welcomeLabel", impersonateLabel: "impersonateLabel", avatarUrl: "avatarUrl", hasMenu: "hasMenu", hasWelcomeLabel: "hasWelcomeLabel", euiUserProfileSizeS: "euiUserProfileSizeS", hasTabNavigation: "hasTabNavigation" }, host: { properties: { "class": "this.cssClasses" } }, ngImport: i0, template: "<ng-container *ngIf=\"hasMenu; else noMenuContent\">\n <eui-dropdown [hasTabNavigation]=\"hasTabNavigation\" width=\"340px\">\n <ng-container *ngTemplateOutlet=\"userProfileContent\"></ng-container>\n <eui-dropdown-content>\n <ng-content></ng-content>\n </eui-dropdown-content>\n </eui-dropdown>\n</ng-container>\n\n<ng-template #noMenuContent>\n <ng-container *ngTemplateOutlet=\"userProfileContent\"></ng-container>\n</ng-template>\n\n<ng-template #userProfileContent>\n <button [tabindex]=\"hasMenu ? '0' : '-1'\" class=\"eui-user-profile-content\" aria-label=\"Profile menu\">\n <div\n class=\"eui-user-profile__infos\"\n [class.eui-user-profile__infos--no-subinfos]=\"(asService.state$ | async).userSubInfos && !hasWelcomeLabel\">\n <ng-container *ngIf=\"(asService.state$ | async).impersonatedUserInfos; else notImpersonated\">\n <div class=\"eui-user-profile__infos-welcome\">\n <span class=\"eui-u-mr-2xs\" *ngIf=\"hasWelcomeLabel\">{{ welcomeLabel }}</span>\n <strong>{{ (asService.state$ | async).userInfos }}</strong>\n <span class=\"eui-u-ml-2xs\">{{ impersonateLabel }}</span>\n </div>\n <div class=\"eui-user-profile__infos-name\">{{ (asService.state$ | async).impersonatedUserInfos }}</div>\n <div *ngIf=\"(asService.state$ | async).userSubInfos\" class=\"eui-user-profile__infos-subinfos\">\n {{ (asService.state$ | async).userSubInfos }}\n </div>\n </ng-container>\n\n <ng-template #notImpersonated>\n <div *ngIf=\"hasWelcomeLabel\" class=\"eui-user-profile__infos-welcome\">{{ welcomeLabel }}</div>\n <div class=\"eui-user-profile__infos-name\">{{ (asService.state$ | async).userInfos }}</div>\n <div *ngIf=\"(asService.state$ | async).userSubInfos\" class=\"eui-user-profile__infos-subinfos\">\n {{ (asService.state$ | async).userSubInfos }}\n </div>\n </ng-template>\n </div>\n\n <div *ngIf=\"(asService.state$ | async).impersonatedUserInfos\" class=\"eui-user-profile__avatar-shadow\">\n <div class=\"eui-user-profile__avatar eui-u-svg eui-u-svg--default-avatar\"></div>\n </div>\n\n <div\n *ngIf=\"!avatarUrl\"\n class=\"eui-user-profile__avatar\"\n [ngClass]=\"isOnline ? 'eui-user-profile__avatar--online' : 'eui-user-profile__avatar--offline'\"></div>\n\n <div *ngIf=\"avatarUrl\" class=\"eui-user-profile__avatar eui-u-svg\">\n <img [src]=\"avatarUrl\" alt=\"avatar\" />\n </div>\n </button>\n</ng-template>\n", styles: [".eui-user-profile{display:flex;position:relative}.eui-user-profile-content{align-items:center;background:none;border:none;cursor:pointer;display:flex}.eui-user-profile-content:focus{outline:2px solid var(--eui-base-color-accessible-focus);outline-offset:-2px;-moz-outline-radius:var(--eui-base-border-radius);transition:outline .15s ease-in-out,border .15s ease-in-out}.eui-user-profile__infos{align-items:flex-end;display:flex;flex-direction:column;margin-right:var(--eui-base-spacing-xs);margin-top:var(--eui-base-spacing-xs)}.eui-toolbar-item .eui-user-profile__infos{margin-top:var(--eui-base-spacing-3xs);line-height:1.25}.eui-user-profile__infos-container{justify-content:flex-end;align-items:center;display:flex;width:100%}.eui-user-profile__infos-welcome{color:var(--eui-base-color-grey-80);font-size:var(--eui-base-font-size-s)}.eui-toolbar-item .eui-user-profile__infos-welcome{color:var(--eui-base-color-grey-15);font-size:85%}.eui-user-profile__infos-name{color:var(--eui-base-color-primary-100);font-size:var(--eui-base-font-size);font-weight:700}.eui-toolbar-item .eui-user-profile__infos-name{color:var(--eui-base-color-white)}.eui-user-profile__infos-subinfos{color:var(--eui-base-color-grey-80);font-size:var(--eui-base-font-size-s)}.eui-toolbar-item .eui-user-profile__infos-subinfos{color:var(--eui-base-color-grey-15);font-size:85%}.eui-user-profile__infos--no-subinfos{display:flex}.eui-user-profile__avatar{background-image:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/PjxzdmcgdmVyc2lvbj0iMS4xIiBpZD0iQ2FwYV8xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCIgdmlld0JveD0iMCAwIDUzIDUzIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCA1MyA1MzsiIHhtbDpzcGFjZT0icHJlc2VydmUiPjxwYXRoIHN0eWxlPSJmaWxsOiNFN0VDRUQ7IiBkPSJNMTguNjEzLDQxLjU1MmwtNy45MDcsNC4zMTNjLTAuNDY0LDAuMjUzLTAuODgxLDAuNTY0LTEuMjY5LDAuOTAzQzE0LjA0Nyw1MC42NTUsMTkuOTk4LDUzLDI2LjUsNTNjNi40NTQsMCwxMi4zNjctMi4zMSwxNi45NjQtNi4xNDRjLTAuNDI0LTAuMzU4LTAuODg0LTAuNjgtMS4zOTQtMC45MzRsLTguNDY3LTQuMjMzYy0xLjA5NC0wLjU0Ny0xLjc4NS0xLjY2NS0xLjc4NS0yLjg4OHYtMy4zMjJjMC4yMzgtMC4yNzEsMC41MS0wLjYxOSwwLjgwMS0xLjAzYzEuMTU0LTEuNjMsMi4wMjctMy40MjMsMi42MzItNS4zMDRjMS4wODYtMC4zMzUsMS44ODYtMS4zMzgsMS44ODYtMi41M3YtMy41NDZjMC0wLjc4LTAuMzQ3LTEuNDc3LTAuODg2LTEuOTY1di01LjEyNmMwLDAsMS4wNTMtNy45NzctOS43NS03Ljk3N3MtOS43NSw3Ljk3Ny05Ljc1LDcuOTc3djUuMTI2Yy0wLjU0LDAuNDg4LTAuODg2LDEuMTg1LTAuODg2LDEuOTY1djMuNTQ2YzAsMC45MzQsMC40OTEsMS43NTYsMS4yMjYsMi4yMzFjMC44ODYsMy44NTcsMy4yMDYsNi42MzMsMy4yMDYsNi42MzN2My4yNEMyMC4yOTYsMzkuODk5LDE5LjY1LDQwLjk4NiwxOC42MTMsNDEuNTUyeiIvPjxnPjxwYXRoIHN0eWxlPSJmaWxsOiM1NTYwODA7IiBkPSJNMjYuOTUzLDAuMDA0QzEyLjMyLTAuMjQ2LDAuMjU0LDExLjQxNCwwLjAwNCwyNi4wNDdDLTAuMTM4LDM0LjM0NCwzLjU2LDQxLjgwMSw5LjQ0OCw0Ni43NmMwLjM4NS0wLjMzNiwwLjc5OC0wLjY0NCwxLjI1Ny0wLjg5NGw3LjkwNy00LjMxM2MxLjAzNy0wLjU2NiwxLjY4My0xLjY1MywxLjY4My0yLjgzNXYtMy4yNGMwLDAtMi4zMjEtMi43NzYtMy4yMDYtNi42MzNjLTAuNzM0LTAuNDc1LTEuMjI2LTEuMjk2LTEuMjI2LTIuMjMxdi0zLjU0NmMwLTAuNzgsMC4zNDctMS40NzcsMC44ODYtMS45NjV2LTUuMTI2YzAsMC0xLjA1My03Ljk3Nyw5Ljc1LTcuOTc3czkuNzUsNy45NzcsOS43NSw3Ljk3N3Y1LjEyNmMwLjU0LDAuNDg4LDAuODg2LDEuMTg1LDAuODg2LDEuOTY1djMuNTQ2YzAsMS4xOTItMC44LDIuMTk1LTEuODg2LDIuNTNjLTAuNjA1LDEuODgxLTEuNDc4LDMuNjc0LTIuNjMyLDUuMzA0Yy0wLjI5MSwwLjQxMS0wLjU2MywwLjc1OS0wLjgwMSwxLjAzVjM4LjhjMCwxLjIyMywwLjY5MSwyLjM0MiwxLjc4NSwyLjg4OGw4LjQ2Nyw0LjIzM2MwLjUwOCwwLjI1NCwwLjk2NywwLjU3NSwxLjM5LDAuOTMyYzUuNzEtNC43NjIsOS4zOTktMTEuODgyLDkuNTM2LTE5LjlDNTMuMjQ2LDEyLjMyLDQxLjU4NywwLjI1NCwyNi45NTMsMC4wMDR6Ii8+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjwvc3ZnPg==);background-size:cover;border:2px solid var(--eui-base-color-info-75);border-radius:50%;height:50px;margin-right:1rem;min-height:50px;min-width:50px;position:relative;width:50px;box-shadow:var(--eui-base-shadow-2)}.eui-user-profile__avatar-toggle{bottom:-23px;color:var(--eui-base-color-grey-25);cursor:pointer;right:14px;position:absolute}.eui-user-profile__avatar-toggle .eui-icon{font-size:var(--eui-base-font-size)}.eui-user-profile__avatar-toggle:hover{animation:none;color:var(--eui-base-color-primary-100)}.eui-user-profile__avatar--offline{border-color:var(--eui-base-color-danger-75)}.eui-user-profile__avatar--online{border-color:var(--eui-base-color-info-75)}.eui-user-profile__avatar img{background-size:cover;border:2px solid var(--eui-base-color-info-75);border-radius:50%;min-width:50px;margin-top:-3px;margin-left:-2px}.eui-user-profile__avatar-shadow{height:3rem;opacity:.5;position:relative;width:1.5rem}.eui-user-profile__avatar-shadow .eui-user-profile__avatar{border:2px solid var(--eui-base-color-grey-15)}@media screen and (max-width: 767px){.eui-app-shell-header-toolbar-items .eui-user-profile{display:flex}.eui-app .eui-app-toolbar .eui-user-profile__infos{display:none}}@media screen and (min-width: 768px){.eui-app-shell-header-toolbar-items .eui-user-profile{display:none}.is-header-shrink .eui-user-profile{display:flex}}@media screen and (min-width: 768px) and (max-width: 995px){.eui-app .eui-app-toolbar .eui-user-profile__infos{display:none}}.eui-user-profile--size-s .eui-user-profile__avatar{border-width:2px;box-shadow:none;height:2.5rem;margin:0;min-height:2.5rem;min-width:2.5rem;width:2.5rem}.eui-user-profile--size-s .eui-user-profile__avatar-toggle{display:none}.eui-user-profile--size-s .eui-user-profile__avatar--offline,.eui-user-profile--size-s .eui-user-profile__avatar--online{border-color:var(--eui-base-color-grey-25)}.eui-user-profile--size-s .eui-user-profile__avatar-shadow{border-width:2px;box-shadow:none;height:2.5rem;margin:0;min-height:2.5rem;min-width:1.125rem;width:1.125rem}.eui-user-profile-menu{height:auto;min-width:340px;position:relative}.eui-user-profile-menu-item{align-items:center;border-bottom:1px solid var(--eui-base-color-grey-20);border-left:var(--eui-base-spacing-2xs) solid transparent;cursor:pointer;display:flex;padding:var(--eui-base-spacing-xs) var(--eui-base-spacing-s)}.eui-user-profile-menu-item:last-child{border-bottom:0}.eui-user-profile-menu-item a{color:var(--eui-base-color-text);text-decoration:none}.eui-user-profile-menu-item .eui-icon{color:var(--eui-base-color-grey-75);font-size:var(--eui-base-icon-size-m);margin-right:var(--eui-base-spacing-m);padding:var(--eui-base-spacing-xs)}.eui-user-profile-menu-item:hover{background-color:var(--eui-base-color-grey-5);cursor:pointer}.eui-user-profile-menu-item:focus{border-left:var(--eui-base-spacing-2xs) solid var(--eui-base-color-accessible-focus);transition:outline .15s ease-in-out,border .15s ease-in-out}.eui-user-profile-menu-item.link{cursor:pointer}.eui-user-profile-menu-item-right-content{margin-left:auto}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i3.EuiDropdownComponent, selector: "eui-dropdown", inputs: ["e2eAttr", "tabIndex", "width", "position", "isDropDownRightAligned", "isClosedOnClickInside", "isLabelUpdatedFromSelectedItem", "isExpandOnHover", "hasTabNavigation"] }, { kind: "directive", type: i3.EuiDropdownContentDirective, selector: "eui-dropdown-content" }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None });
44
+ /** @nocollapse */ EuiUserProfileComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: EuiUserProfileComponent, selector: "eui-user-profile", inputs: { welcomeLabel: "welcomeLabel", impersonateLabel: "impersonateLabel", avatarUrl: "avatarUrl", hasMenu: "hasMenu", hasWelcomeLabel: "hasWelcomeLabel", euiUserProfileSizeS: "euiUserProfileSizeS", hasTabNavigation: "hasTabNavigation" }, host: { properties: { "class": "this.cssClasses" } }, ngImport: i0, template: "<ng-container *ngIf=\"hasMenu; else noMenuContent\">\n <eui-dropdown [hasTabNavigation]=\"hasTabNavigation\" width=\"340px\">\n <ng-container *ngTemplateOutlet=\"userProfileContent\"></ng-container>\n <eui-dropdown-content>\n <ng-content></ng-content>\n </eui-dropdown-content>\n </eui-dropdown>\n</ng-container>\n\n<ng-template #noMenuContent>\n <ng-container *ngTemplateOutlet=\"userProfileContent\"></ng-container>\n</ng-template>\n\n<ng-template #userProfileContent>\n <button [tabindex]=\"hasMenu ? '0' : '-1'\" class=\"eui-user-profile-content\" aria-label=\"Profile menu\" [class.eui-user-profile-content--no-menu]=\"!hasMenu\">\n <div\n class=\"eui-user-profile__infos\"\n [class.eui-user-profile__infos--no-subinfos]=\"(asService.state$ | async).userSubInfos && !hasWelcomeLabel\">\n <ng-container *ngIf=\"(asService.state$ | async).impersonatedUserInfos; else notImpersonated\">\n <div class=\"eui-user-profile__infos-welcome\">\n <span class=\"eui-u-mr-2xs\" *ngIf=\"hasWelcomeLabel\">{{ welcomeLabel }}</span>\n <strong>{{ (asService.state$ | async).userInfos }}</strong>\n <span class=\"eui-u-ml-2xs\">{{ impersonateLabel }}</span>\n </div>\n <div class=\"eui-user-profile__infos-name\">{{ (asService.state$ | async).impersonatedUserInfos }}</div>\n <div *ngIf=\"(asService.state$ | async).userSubInfos\" class=\"eui-user-profile__infos-subinfos\">\n {{ (asService.state$ | async).userSubInfos }}\n </div>\n </ng-container>\n\n <ng-template #notImpersonated>\n <div *ngIf=\"hasWelcomeLabel\" class=\"eui-user-profile__infos-welcome\">{{ welcomeLabel }}</div>\n <div class=\"eui-user-profile__infos-name\">{{ (asService.state$ | async).userInfos }}</div>\n <div *ngIf=\"(asService.state$ | async).userSubInfos\" class=\"eui-user-profile__infos-subinfos\">\n {{ (asService.state$ | async).userSubInfos }}\n </div>\n </ng-template>\n </div>\n\n <div *ngIf=\"(asService.state$ | async).impersonatedUserInfos\" class=\"eui-user-profile__avatar-shadow\">\n <div class=\"eui-user-profile__avatar eui-u-svg eui-u-svg--default-avatar\"></div>\n </div>\n\n <div\n *ngIf=\"!avatarUrl\"\n class=\"eui-user-profile__avatar\"\n [ngClass]=\"isOnline ? 'eui-user-profile__avatar--online' : 'eui-user-profile__avatar--offline'\"></div>\n\n <div *ngIf=\"avatarUrl\" class=\"eui-user-profile__avatar eui-u-svg\">\n <img [src]=\"avatarUrl\" alt=\"avatar\" />\n </div>\n </button>\n</ng-template>\n", styles: [".eui-user-profile{display:flex;position:relative}.eui-user-profile-content{align-items:center;background:none;border:none;cursor:pointer;display:flex}.eui-user-profile-content:focus{outline:2px solid var(--eui-base-color-accessible-focus);outline-offset:-2px;-moz-outline-radius:var(--eui-base-border-radius);transition:outline .15s ease-in-out,border .15s ease-in-out}.eui-user-profile-content--no-menu{cursor:default}.eui-user-profile__infos{align-items:flex-end;display:flex;flex-direction:column;margin-right:var(--eui-base-spacing-xs);margin-top:var(--eui-base-spacing-xs)}.eui-toolbar-item .eui-user-profile__infos{margin-top:var(--eui-base-spacing-3xs);line-height:1.25}.eui-user-profile__infos-container{justify-content:flex-end;align-items:center;display:flex;width:100%}.eui-user-profile__infos-welcome{color:var(--eui-base-color-grey-80);font-size:var(--eui-base-font-size-s)}.eui-toolbar-item .eui-user-profile__infos-welcome{color:var(--eui-base-color-grey-15);font-size:85%}.eui-user-profile__infos-name{color:var(--eui-base-color-primary-100);font-size:var(--eui-base-font-size);font-weight:700}.eui-toolbar-item .eui-user-profile__infos-name{color:var(--eui-base-color-white)}.eui-user-profile__infos-subinfos{color:var(--eui-base-color-grey-80);font-size:var(--eui-base-font-size-s)}.eui-toolbar-item .eui-user-profile__infos-subinfos{color:var(--eui-base-color-grey-15);font-size:85%}.eui-user-profile__infos--no-subinfos{display:flex}.eui-user-profile__avatar{background-image:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/PjxzdmcgdmVyc2lvbj0iMS4xIiBpZD0iQ2FwYV8xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCIgdmlld0JveD0iMCAwIDUzIDUzIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCA1MyA1MzsiIHhtbDpzcGFjZT0icHJlc2VydmUiPjxwYXRoIHN0eWxlPSJmaWxsOiNFN0VDRUQ7IiBkPSJNMTguNjEzLDQxLjU1MmwtNy45MDcsNC4zMTNjLTAuNDY0LDAuMjUzLTAuODgxLDAuNTY0LTEuMjY5LDAuOTAzQzE0LjA0Nyw1MC42NTUsMTkuOTk4LDUzLDI2LjUsNTNjNi40NTQsMCwxMi4zNjctMi4zMSwxNi45NjQtNi4xNDRjLTAuNDI0LTAuMzU4LTAuODg0LTAuNjgtMS4zOTQtMC45MzRsLTguNDY3LTQuMjMzYy0xLjA5NC0wLjU0Ny0xLjc4NS0xLjY2NS0xLjc4NS0yLjg4OHYtMy4zMjJjMC4yMzgtMC4yNzEsMC41MS0wLjYxOSwwLjgwMS0xLjAzYzEuMTU0LTEuNjMsMi4wMjctMy40MjMsMi42MzItNS4zMDRjMS4wODYtMC4zMzUsMS44ODYtMS4zMzgsMS44ODYtMi41M3YtMy41NDZjMC0wLjc4LTAuMzQ3LTEuNDc3LTAuODg2LTEuOTY1di01LjEyNmMwLDAsMS4wNTMtNy45NzctOS43NS03Ljk3N3MtOS43NSw3Ljk3Ny05Ljc1LDcuOTc3djUuMTI2Yy0wLjU0LDAuNDg4LTAuODg2LDEuMTg1LTAuODg2LDEuOTY1djMuNTQ2YzAsMC45MzQsMC40OTEsMS43NTYsMS4yMjYsMi4yMzFjMC44ODYsMy44NTcsMy4yMDYsNi42MzMsMy4yMDYsNi42MzN2My4yNEMyMC4yOTYsMzkuODk5LDE5LjY1LDQwLjk4NiwxOC42MTMsNDEuNTUyeiIvPjxnPjxwYXRoIHN0eWxlPSJmaWxsOiM1NTYwODA7IiBkPSJNMjYuOTUzLDAuMDA0QzEyLjMyLTAuMjQ2LDAuMjU0LDExLjQxNCwwLjAwNCwyNi4wNDdDLTAuMTM4LDM0LjM0NCwzLjU2LDQxLjgwMSw5LjQ0OCw0Ni43NmMwLjM4NS0wLjMzNiwwLjc5OC0wLjY0NCwxLjI1Ny0wLjg5NGw3LjkwNy00LjMxM2MxLjAzNy0wLjU2NiwxLjY4My0xLjY1MywxLjY4My0yLjgzNXYtMy4yNGMwLDAtMi4zMjEtMi43NzYtMy4yMDYtNi42MzNjLTAuNzM0LTAuNDc1LTEuMjI2LTEuMjk2LTEuMjI2LTIuMjMxdi0zLjU0NmMwLTAuNzgsMC4zNDctMS40NzcsMC44ODYtMS45NjV2LTUuMTI2YzAsMC0xLjA1My03Ljk3Nyw5Ljc1LTcuOTc3czkuNzUsNy45NzcsOS43NSw3Ljk3N3Y1LjEyNmMwLjU0LDAuNDg4LDAuODg2LDEuMTg1LDAuODg2LDEuOTY1djMuNTQ2YzAsMS4xOTItMC44LDIuMTk1LTEuODg2LDIuNTNjLTAuNjA1LDEuODgxLTEuNDc4LDMuNjc0LTIuNjMyLDUuMzA0Yy0wLjI5MSwwLjQxMS0wLjU2MywwLjc1OS0wLjgwMSwxLjAzVjM4LjhjMCwxLjIyMywwLjY5MSwyLjM0MiwxLjc4NSwyLjg4OGw4LjQ2Nyw0LjIzM2MwLjUwOCwwLjI1NCwwLjk2NywwLjU3NSwxLjM5LDAuOTMyYzUuNzEtNC43NjIsOS4zOTktMTEuODgyLDkuNTM2LTE5LjlDNTMuMjQ2LDEyLjMyLDQxLjU4NywwLjI1NCwyNi45NTMsMC4wMDR6Ii8+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjwvc3ZnPg==);background-size:cover;border:2px solid var(--eui-base-color-info-75);border-radius:50%;height:50px;margin-right:1rem;min-height:50px;min-width:50px;position:relative;width:50px;box-shadow:var(--eui-base-shadow-2)}.eui-user-profile__avatar-toggle{bottom:-23px;color:var(--eui-base-color-grey-25);cursor:pointer;right:14px;position:absolute}.eui-user-profile__avatar-toggle .eui-icon{font-size:var(--eui-base-font-size)}.eui-user-profile__avatar-toggle:hover{animation:none;color:var(--eui-base-color-primary-100)}.eui-user-profile__avatar--offline{border-color:var(--eui-base-color-danger-75)}.eui-user-profile__avatar--online{border-color:var(--eui-base-color-info-75)}.eui-user-profile__avatar img{background-size:cover;border:2px solid var(--eui-base-color-info-75);border-radius:50%;min-width:50px;margin-top:-3px;margin-left:-2px}.eui-user-profile__avatar-shadow{height:3rem;opacity:.5;position:relative;width:1.5rem}.eui-user-profile__avatar-shadow .eui-user-profile__avatar{border:2px solid var(--eui-base-color-grey-15)}@media screen and (max-width: 767px){.eui-app-shell-header-toolbar-items .eui-user-profile{display:flex}.eui-app .eui-app-toolbar .eui-user-profile__infos{display:none}}@media screen and (min-width: 768px){.eui-app-shell-header-toolbar-items .eui-user-profile{display:none}.is-header-shrink .eui-user-profile{display:flex}}@media screen and (min-width: 768px) and (max-width: 995px){.eui-app .eui-app-toolbar .eui-user-profile__infos{display:none}}.eui-user-profile--size-s .eui-user-profile__avatar{border-width:2px;box-shadow:none;height:2.5rem;margin:0;min-height:2.5rem;min-width:2.5rem;width:2.5rem}.eui-user-profile--size-s .eui-user-profile__avatar-toggle{display:none}.eui-user-profile--size-s .eui-user-profile__avatar--offline,.eui-user-profile--size-s .eui-user-profile__avatar--online{border-color:var(--eui-base-color-grey-25)}.eui-user-profile--size-s .eui-user-profile__avatar-shadow{border-width:2px;box-shadow:none;height:2.5rem;margin:0;min-height:2.5rem;min-width:1.125rem;width:1.125rem}.eui-user-profile-menu{height:auto;min-width:340px;position:relative}.eui-user-profile-menu-item{align-items:center;border-bottom:1px solid var(--eui-base-color-grey-20);border-left:var(--eui-base-spacing-2xs) solid transparent;cursor:pointer;display:flex;padding:var(--eui-base-spacing-xs) var(--eui-base-spacing-s)}.eui-user-profile-menu-item:last-child{border-bottom:0}.eui-user-profile-menu-item a{color:var(--eui-base-color-text);text-decoration:none}.eui-user-profile-menu-item .eui-icon{color:var(--eui-base-color-grey-75);font-size:var(--eui-base-icon-size-m);margin-right:var(--eui-base-spacing-m);padding:var(--eui-base-spacing-xs)}.eui-user-profile-menu-item:hover{background-color:var(--eui-base-color-grey-5);cursor:pointer}.eui-user-profile-menu-item:focus{border-left:var(--eui-base-spacing-2xs) solid var(--eui-base-color-accessible-focus);transition:outline .15s ease-in-out,border .15s ease-in-out}.eui-user-profile-menu-item.link{cursor:pointer}.eui-user-profile-menu-item-right-content{margin-left:auto}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i3.EuiDropdownComponent, selector: "eui-dropdown", inputs: ["e2eAttr", "tabIndex", "width", "position", "isDropDownRightAligned", "isClosedOnClickInside", "isLabelUpdatedFromSelectedItem", "isExpandOnHover", "hasTabNavigation"] }, { kind: "directive", type: i3.EuiDropdownContentDirective, selector: "eui-dropdown-content" }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None });
45
45
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: EuiUserProfileComponent, decorators: [{
46
46
  type: Component,
47
- args: [{ selector: 'eui-user-profile', changeDetection: ChangeDetectionStrategy.Default, encapsulation: ViewEncapsulation.None, template: "<ng-container *ngIf=\"hasMenu; else noMenuContent\">\n <eui-dropdown [hasTabNavigation]=\"hasTabNavigation\" width=\"340px\">\n <ng-container *ngTemplateOutlet=\"userProfileContent\"></ng-container>\n <eui-dropdown-content>\n <ng-content></ng-content>\n </eui-dropdown-content>\n </eui-dropdown>\n</ng-container>\n\n<ng-template #noMenuContent>\n <ng-container *ngTemplateOutlet=\"userProfileContent\"></ng-container>\n</ng-template>\n\n<ng-template #userProfileContent>\n <button [tabindex]=\"hasMenu ? '0' : '-1'\" class=\"eui-user-profile-content\" aria-label=\"Profile menu\">\n <div\n class=\"eui-user-profile__infos\"\n [class.eui-user-profile__infos--no-subinfos]=\"(asService.state$ | async).userSubInfos && !hasWelcomeLabel\">\n <ng-container *ngIf=\"(asService.state$ | async).impersonatedUserInfos; else notImpersonated\">\n <div class=\"eui-user-profile__infos-welcome\">\n <span class=\"eui-u-mr-2xs\" *ngIf=\"hasWelcomeLabel\">{{ welcomeLabel }}</span>\n <strong>{{ (asService.state$ | async).userInfos }}</strong>\n <span class=\"eui-u-ml-2xs\">{{ impersonateLabel }}</span>\n </div>\n <div class=\"eui-user-profile__infos-name\">{{ (asService.state$ | async).impersonatedUserInfos }}</div>\n <div *ngIf=\"(asService.state$ | async).userSubInfos\" class=\"eui-user-profile__infos-subinfos\">\n {{ (asService.state$ | async).userSubInfos }}\n </div>\n </ng-container>\n\n <ng-template #notImpersonated>\n <div *ngIf=\"hasWelcomeLabel\" class=\"eui-user-profile__infos-welcome\">{{ welcomeLabel }}</div>\n <div class=\"eui-user-profile__infos-name\">{{ (asService.state$ | async).userInfos }}</div>\n <div *ngIf=\"(asService.state$ | async).userSubInfos\" class=\"eui-user-profile__infos-subinfos\">\n {{ (asService.state$ | async).userSubInfos }}\n </div>\n </ng-template>\n </div>\n\n <div *ngIf=\"(asService.state$ | async).impersonatedUserInfos\" class=\"eui-user-profile__avatar-shadow\">\n <div class=\"eui-user-profile__avatar eui-u-svg eui-u-svg--default-avatar\"></div>\n </div>\n\n <div\n *ngIf=\"!avatarUrl\"\n class=\"eui-user-profile__avatar\"\n [ngClass]=\"isOnline ? 'eui-user-profile__avatar--online' : 'eui-user-profile__avatar--offline'\"></div>\n\n <div *ngIf=\"avatarUrl\" class=\"eui-user-profile__avatar eui-u-svg\">\n <img [src]=\"avatarUrl\" alt=\"avatar\" />\n </div>\n </button>\n</ng-template>\n", styles: [".eui-user-profile{display:flex;position:relative}.eui-user-profile-content{align-items:center;background:none;border:none;cursor:pointer;display:flex}.eui-user-profile-content:focus{outline:2px solid var(--eui-base-color-accessible-focus);outline-offset:-2px;-moz-outline-radius:var(--eui-base-border-radius);transition:outline .15s ease-in-out,border .15s ease-in-out}.eui-user-profile__infos{align-items:flex-end;display:flex;flex-direction:column;margin-right:var(--eui-base-spacing-xs);margin-top:var(--eui-base-spacing-xs)}.eui-toolbar-item .eui-user-profile__infos{margin-top:var(--eui-base-spacing-3xs);line-height:1.25}.eui-user-profile__infos-container{justify-content:flex-end;align-items:center;display:flex;width:100%}.eui-user-profile__infos-welcome{color:var(--eui-base-color-grey-80);font-size:var(--eui-base-font-size-s)}.eui-toolbar-item .eui-user-profile__infos-welcome{color:var(--eui-base-color-grey-15);font-size:85%}.eui-user-profile__infos-name{color:var(--eui-base-color-primary-100);font-size:var(--eui-base-font-size);font-weight:700}.eui-toolbar-item .eui-user-profile__infos-name{color:var(--eui-base-color-white)}.eui-user-profile__infos-subinfos{color:var(--eui-base-color-grey-80);font-size:var(--eui-base-font-size-s)}.eui-toolbar-item .eui-user-profile__infos-subinfos{color:var(--eui-base-color-grey-15);font-size:85%}.eui-user-profile__infos--no-subinfos{display:flex}.eui-user-profile__avatar{background-image:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/PjxzdmcgdmVyc2lvbj0iMS4xIiBpZD0iQ2FwYV8xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCIgdmlld0JveD0iMCAwIDUzIDUzIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCA1MyA1MzsiIHhtbDpzcGFjZT0icHJlc2VydmUiPjxwYXRoIHN0eWxlPSJmaWxsOiNFN0VDRUQ7IiBkPSJNMTguNjEzLDQxLjU1MmwtNy45MDcsNC4zMTNjLTAuNDY0LDAuMjUzLTAuODgxLDAuNTY0LTEuMjY5LDAuOTAzQzE0LjA0Nyw1MC42NTUsMTkuOTk4LDUzLDI2LjUsNTNjNi40NTQsMCwxMi4zNjctMi4zMSwxNi45NjQtNi4xNDRjLTAuNDI0LTAuMzU4LTAuODg0LTAuNjgtMS4zOTQtMC45MzRsLTguNDY3LTQuMjMzYy0xLjA5NC0wLjU0Ny0xLjc4NS0xLjY2NS0xLjc4NS0yLjg4OHYtMy4zMjJjMC4yMzgtMC4yNzEsMC41MS0wLjYxOSwwLjgwMS0xLjAzYzEuMTU0LTEuNjMsMi4wMjctMy40MjMsMi42MzItNS4zMDRjMS4wODYtMC4zMzUsMS44ODYtMS4zMzgsMS44ODYtMi41M3YtMy41NDZjMC0wLjc4LTAuMzQ3LTEuNDc3LTAuODg2LTEuOTY1di01LjEyNmMwLDAsMS4wNTMtNy45NzctOS43NS03Ljk3N3MtOS43NSw3Ljk3Ny05Ljc1LDcuOTc3djUuMTI2Yy0wLjU0LDAuNDg4LTAuODg2LDEuMTg1LTAuODg2LDEuOTY1djMuNTQ2YzAsMC45MzQsMC40OTEsMS43NTYsMS4yMjYsMi4yMzFjMC44ODYsMy44NTcsMy4yMDYsNi42MzMsMy4yMDYsNi42MzN2My4yNEMyMC4yOTYsMzkuODk5LDE5LjY1LDQwLjk4NiwxOC42MTMsNDEuNTUyeiIvPjxnPjxwYXRoIHN0eWxlPSJmaWxsOiM1NTYwODA7IiBkPSJNMjYuOTUzLDAuMDA0QzEyLjMyLTAuMjQ2LDAuMjU0LDExLjQxNCwwLjAwNCwyNi4wNDdDLTAuMTM4LDM0LjM0NCwzLjU2LDQxLjgwMSw5LjQ0OCw0Ni43NmMwLjM4NS0wLjMzNiwwLjc5OC0wLjY0NCwxLjI1Ny0wLjg5NGw3LjkwNy00LjMxM2MxLjAzNy0wLjU2NiwxLjY4My0xLjY1MywxLjY4My0yLjgzNXYtMy4yNGMwLDAtMi4zMjEtMi43NzYtMy4yMDYtNi42MzNjLTAuNzM0LTAuNDc1LTEuMjI2LTEuMjk2LTEuMjI2LTIuMjMxdi0zLjU0NmMwLTAuNzgsMC4zNDctMS40NzcsMC44ODYtMS45NjV2LTUuMTI2YzAsMC0xLjA1My03Ljk3Nyw5Ljc1LTcuOTc3czkuNzUsNy45NzcsOS43NSw3Ljk3N3Y1LjEyNmMwLjU0LDAuNDg4LDAuODg2LDEuMTg1LDAuODg2LDEuOTY1djMuNTQ2YzAsMS4xOTItMC44LDIuMTk1LTEuODg2LDIuNTNjLTAuNjA1LDEuODgxLTEuNDc4LDMuNjc0LTIuNjMyLDUuMzA0Yy0wLjI5MSwwLjQxMS0wLjU2MywwLjc1OS0wLjgwMSwxLjAzVjM4LjhjMCwxLjIyMywwLjY5MSwyLjM0MiwxLjc4NSwyLjg4OGw4LjQ2Nyw0LjIzM2MwLjUwOCwwLjI1NCwwLjk2NywwLjU3NSwxLjM5LDAuOTMyYzUuNzEtNC43NjIsOS4zOTktMTEuODgyLDkuNTM2LTE5LjlDNTMuMjQ2LDEyLjMyLDQxLjU4NywwLjI1NCwyNi45NTMsMC4wMDR6Ii8+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjwvc3ZnPg==);background-size:cover;border:2px solid var(--eui-base-color-info-75);border-radius:50%;height:50px;margin-right:1rem;min-height:50px;min-width:50px;position:relative;width:50px;box-shadow:var(--eui-base-shadow-2)}.eui-user-profile__avatar-toggle{bottom:-23px;color:var(--eui-base-color-grey-25);cursor:pointer;right:14px;position:absolute}.eui-user-profile__avatar-toggle .eui-icon{font-size:var(--eui-base-font-size)}.eui-user-profile__avatar-toggle:hover{animation:none;color:var(--eui-base-color-primary-100)}.eui-user-profile__avatar--offline{border-color:var(--eui-base-color-danger-75)}.eui-user-profile__avatar--online{border-color:var(--eui-base-color-info-75)}.eui-user-profile__avatar img{background-size:cover;border:2px solid var(--eui-base-color-info-75);border-radius:50%;min-width:50px;margin-top:-3px;margin-left:-2px}.eui-user-profile__avatar-shadow{height:3rem;opacity:.5;position:relative;width:1.5rem}.eui-user-profile__avatar-shadow .eui-user-profile__avatar{border:2px solid var(--eui-base-color-grey-15)}@media screen and (max-width: 767px){.eui-app-shell-header-toolbar-items .eui-user-profile{display:flex}.eui-app .eui-app-toolbar .eui-user-profile__infos{display:none}}@media screen and (min-width: 768px){.eui-app-shell-header-toolbar-items .eui-user-profile{display:none}.is-header-shrink .eui-user-profile{display:flex}}@media screen and (min-width: 768px) and (max-width: 995px){.eui-app .eui-app-toolbar .eui-user-profile__infos{display:none}}.eui-user-profile--size-s .eui-user-profile__avatar{border-width:2px;box-shadow:none;height:2.5rem;margin:0;min-height:2.5rem;min-width:2.5rem;width:2.5rem}.eui-user-profile--size-s .eui-user-profile__avatar-toggle{display:none}.eui-user-profile--size-s .eui-user-profile__avatar--offline,.eui-user-profile--size-s .eui-user-profile__avatar--online{border-color:var(--eui-base-color-grey-25)}.eui-user-profile--size-s .eui-user-profile__avatar-shadow{border-width:2px;box-shadow:none;height:2.5rem;margin:0;min-height:2.5rem;min-width:1.125rem;width:1.125rem}.eui-user-profile-menu{height:auto;min-width:340px;position:relative}.eui-user-profile-menu-item{align-items:center;border-bottom:1px solid var(--eui-base-color-grey-20);border-left:var(--eui-base-spacing-2xs) solid transparent;cursor:pointer;display:flex;padding:var(--eui-base-spacing-xs) var(--eui-base-spacing-s)}.eui-user-profile-menu-item:last-child{border-bottom:0}.eui-user-profile-menu-item a{color:var(--eui-base-color-text);text-decoration:none}.eui-user-profile-menu-item .eui-icon{color:var(--eui-base-color-grey-75);font-size:var(--eui-base-icon-size-m);margin-right:var(--eui-base-spacing-m);padding:var(--eui-base-spacing-xs)}.eui-user-profile-menu-item:hover{background-color:var(--eui-base-color-grey-5);cursor:pointer}.eui-user-profile-menu-item:focus{border-left:var(--eui-base-spacing-2xs) solid var(--eui-base-color-accessible-focus);transition:outline .15s ease-in-out,border .15s ease-in-out}.eui-user-profile-menu-item.link{cursor:pointer}.eui-user-profile-menu-item-right-content{margin-left:auto}\n"] }]
47
+ args: [{ selector: 'eui-user-profile', changeDetection: ChangeDetectionStrategy.Default, encapsulation: ViewEncapsulation.None, template: "<ng-container *ngIf=\"hasMenu; else noMenuContent\">\n <eui-dropdown [hasTabNavigation]=\"hasTabNavigation\" width=\"340px\">\n <ng-container *ngTemplateOutlet=\"userProfileContent\"></ng-container>\n <eui-dropdown-content>\n <ng-content></ng-content>\n </eui-dropdown-content>\n </eui-dropdown>\n</ng-container>\n\n<ng-template #noMenuContent>\n <ng-container *ngTemplateOutlet=\"userProfileContent\"></ng-container>\n</ng-template>\n\n<ng-template #userProfileContent>\n <button [tabindex]=\"hasMenu ? '0' : '-1'\" class=\"eui-user-profile-content\" aria-label=\"Profile menu\" [class.eui-user-profile-content--no-menu]=\"!hasMenu\">\n <div\n class=\"eui-user-profile__infos\"\n [class.eui-user-profile__infos--no-subinfos]=\"(asService.state$ | async).userSubInfos && !hasWelcomeLabel\">\n <ng-container *ngIf=\"(asService.state$ | async).impersonatedUserInfos; else notImpersonated\">\n <div class=\"eui-user-profile__infos-welcome\">\n <span class=\"eui-u-mr-2xs\" *ngIf=\"hasWelcomeLabel\">{{ welcomeLabel }}</span>\n <strong>{{ (asService.state$ | async).userInfos }}</strong>\n <span class=\"eui-u-ml-2xs\">{{ impersonateLabel }}</span>\n </div>\n <div class=\"eui-user-profile__infos-name\">{{ (asService.state$ | async).impersonatedUserInfos }}</div>\n <div *ngIf=\"(asService.state$ | async).userSubInfos\" class=\"eui-user-profile__infos-subinfos\">\n {{ (asService.state$ | async).userSubInfos }}\n </div>\n </ng-container>\n\n <ng-template #notImpersonated>\n <div *ngIf=\"hasWelcomeLabel\" class=\"eui-user-profile__infos-welcome\">{{ welcomeLabel }}</div>\n <div class=\"eui-user-profile__infos-name\">{{ (asService.state$ | async).userInfos }}</div>\n <div *ngIf=\"(asService.state$ | async).userSubInfos\" class=\"eui-user-profile__infos-subinfos\">\n {{ (asService.state$ | async).userSubInfos }}\n </div>\n </ng-template>\n </div>\n\n <div *ngIf=\"(asService.state$ | async).impersonatedUserInfos\" class=\"eui-user-profile__avatar-shadow\">\n <div class=\"eui-user-profile__avatar eui-u-svg eui-u-svg--default-avatar\"></div>\n </div>\n\n <div\n *ngIf=\"!avatarUrl\"\n class=\"eui-user-profile__avatar\"\n [ngClass]=\"isOnline ? 'eui-user-profile__avatar--online' : 'eui-user-profile__avatar--offline'\"></div>\n\n <div *ngIf=\"avatarUrl\" class=\"eui-user-profile__avatar eui-u-svg\">\n <img [src]=\"avatarUrl\" alt=\"avatar\" />\n </div>\n </button>\n</ng-template>\n", styles: [".eui-user-profile{display:flex;position:relative}.eui-user-profile-content{align-items:center;background:none;border:none;cursor:pointer;display:flex}.eui-user-profile-content:focus{outline:2px solid var(--eui-base-color-accessible-focus);outline-offset:-2px;-moz-outline-radius:var(--eui-base-border-radius);transition:outline .15s ease-in-out,border .15s ease-in-out}.eui-user-profile-content--no-menu{cursor:default}.eui-user-profile__infos{align-items:flex-end;display:flex;flex-direction:column;margin-right:var(--eui-base-spacing-xs);margin-top:var(--eui-base-spacing-xs)}.eui-toolbar-item .eui-user-profile__infos{margin-top:var(--eui-base-spacing-3xs);line-height:1.25}.eui-user-profile__infos-container{justify-content:flex-end;align-items:center;display:flex;width:100%}.eui-user-profile__infos-welcome{color:var(--eui-base-color-grey-80);font-size:var(--eui-base-font-size-s)}.eui-toolbar-item .eui-user-profile__infos-welcome{color:var(--eui-base-color-grey-15);font-size:85%}.eui-user-profile__infos-name{color:var(--eui-base-color-primary-100);font-size:var(--eui-base-font-size);font-weight:700}.eui-toolbar-item .eui-user-profile__infos-name{color:var(--eui-base-color-white)}.eui-user-profile__infos-subinfos{color:var(--eui-base-color-grey-80);font-size:var(--eui-base-font-size-s)}.eui-toolbar-item .eui-user-profile__infos-subinfos{color:var(--eui-base-color-grey-15);font-size:85%}.eui-user-profile__infos--no-subinfos{display:flex}.eui-user-profile__avatar{background-image:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/PjxzdmcgdmVyc2lvbj0iMS4xIiBpZD0iQ2FwYV8xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCIgdmlld0JveD0iMCAwIDUzIDUzIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCA1MyA1MzsiIHhtbDpzcGFjZT0icHJlc2VydmUiPjxwYXRoIHN0eWxlPSJmaWxsOiNFN0VDRUQ7IiBkPSJNMTguNjEzLDQxLjU1MmwtNy45MDcsNC4zMTNjLTAuNDY0LDAuMjUzLTAuODgxLDAuNTY0LTEuMjY5LDAuOTAzQzE0LjA0Nyw1MC42NTUsMTkuOTk4LDUzLDI2LjUsNTNjNi40NTQsMCwxMi4zNjctMi4zMSwxNi45NjQtNi4xNDRjLTAuNDI0LTAuMzU4LTAuODg0LTAuNjgtMS4zOTQtMC45MzRsLTguNDY3LTQuMjMzYy0xLjA5NC0wLjU0Ny0xLjc4NS0xLjY2NS0xLjc4NS0yLjg4OHYtMy4zMjJjMC4yMzgtMC4yNzEsMC41MS0wLjYxOSwwLjgwMS0xLjAzYzEuMTU0LTEuNjMsMi4wMjctMy40MjMsMi42MzItNS4zMDRjMS4wODYtMC4zMzUsMS44ODYtMS4zMzgsMS44ODYtMi41M3YtMy41NDZjMC0wLjc4LTAuMzQ3LTEuNDc3LTAuODg2LTEuOTY1di01LjEyNmMwLDAsMS4wNTMtNy45NzctOS43NS03Ljk3N3MtOS43NSw3Ljk3Ny05Ljc1LDcuOTc3djUuMTI2Yy0wLjU0LDAuNDg4LTAuODg2LDEuMTg1LTAuODg2LDEuOTY1djMuNTQ2YzAsMC45MzQsMC40OTEsMS43NTYsMS4yMjYsMi4yMzFjMC44ODYsMy44NTcsMy4yMDYsNi42MzMsMy4yMDYsNi42MzN2My4yNEMyMC4yOTYsMzkuODk5LDE5LjY1LDQwLjk4NiwxOC42MTMsNDEuNTUyeiIvPjxnPjxwYXRoIHN0eWxlPSJmaWxsOiM1NTYwODA7IiBkPSJNMjYuOTUzLDAuMDA0QzEyLjMyLTAuMjQ2LDAuMjU0LDExLjQxNCwwLjAwNCwyNi4wNDdDLTAuMTM4LDM0LjM0NCwzLjU2LDQxLjgwMSw5LjQ0OCw0Ni43NmMwLjM4NS0wLjMzNiwwLjc5OC0wLjY0NCwxLjI1Ny0wLjg5NGw3LjkwNy00LjMxM2MxLjAzNy0wLjU2NiwxLjY4My0xLjY1MywxLjY4My0yLjgzNXYtMy4yNGMwLDAtMi4zMjEtMi43NzYtMy4yMDYtNi42MzNjLTAuNzM0LTAuNDc1LTEuMjI2LTEuMjk2LTEuMjI2LTIuMjMxdi0zLjU0NmMwLTAuNzgsMC4zNDctMS40NzcsMC44ODYtMS45NjV2LTUuMTI2YzAsMC0xLjA1My03Ljk3Nyw5Ljc1LTcuOTc3czkuNzUsNy45NzcsOS43NSw3Ljk3N3Y1LjEyNmMwLjU0LDAuNDg4LDAuODg2LDEuMTg1LDAuODg2LDEuOTY1djMuNTQ2YzAsMS4xOTItMC44LDIuMTk1LTEuODg2LDIuNTNjLTAuNjA1LDEuODgxLTEuNDc4LDMuNjc0LTIuNjMyLDUuMzA0Yy0wLjI5MSwwLjQxMS0wLjU2MywwLjc1OS0wLjgwMSwxLjAzVjM4LjhjMCwxLjIyMywwLjY5MSwyLjM0MiwxLjc4NSwyLjg4OGw4LjQ2Nyw0LjIzM2MwLjUwOCwwLjI1NCwwLjk2NywwLjU3NSwxLjM5LDAuOTMyYzUuNzEtNC43NjIsOS4zOTktMTEuODgyLDkuNTM2LTE5LjlDNTMuMjQ2LDEyLjMyLDQxLjU4NywwLjI1NCwyNi45NTMsMC4wMDR6Ii8+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjwvc3ZnPg==);background-size:cover;border:2px solid var(--eui-base-color-info-75);border-radius:50%;height:50px;margin-right:1rem;min-height:50px;min-width:50px;position:relative;width:50px;box-shadow:var(--eui-base-shadow-2)}.eui-user-profile__avatar-toggle{bottom:-23px;color:var(--eui-base-color-grey-25);cursor:pointer;right:14px;position:absolute}.eui-user-profile__avatar-toggle .eui-icon{font-size:var(--eui-base-font-size)}.eui-user-profile__avatar-toggle:hover{animation:none;color:var(--eui-base-color-primary-100)}.eui-user-profile__avatar--offline{border-color:var(--eui-base-color-danger-75)}.eui-user-profile__avatar--online{border-color:var(--eui-base-color-info-75)}.eui-user-profile__avatar img{background-size:cover;border:2px solid var(--eui-base-color-info-75);border-radius:50%;min-width:50px;margin-top:-3px;margin-left:-2px}.eui-user-profile__avatar-shadow{height:3rem;opacity:.5;position:relative;width:1.5rem}.eui-user-profile__avatar-shadow .eui-user-profile__avatar{border:2px solid var(--eui-base-color-grey-15)}@media screen and (max-width: 767px){.eui-app-shell-header-toolbar-items .eui-user-profile{display:flex}.eui-app .eui-app-toolbar .eui-user-profile__infos{display:none}}@media screen and (min-width: 768px){.eui-app-shell-header-toolbar-items .eui-user-profile{display:none}.is-header-shrink .eui-user-profile{display:flex}}@media screen and (min-width: 768px) and (max-width: 995px){.eui-app .eui-app-toolbar .eui-user-profile__infos{display:none}}.eui-user-profile--size-s .eui-user-profile__avatar{border-width:2px;box-shadow:none;height:2.5rem;margin:0;min-height:2.5rem;min-width:2.5rem;width:2.5rem}.eui-user-profile--size-s .eui-user-profile__avatar-toggle{display:none}.eui-user-profile--size-s .eui-user-profile__avatar--offline,.eui-user-profile--size-s .eui-user-profile__avatar--online{border-color:var(--eui-base-color-grey-25)}.eui-user-profile--size-s .eui-user-profile__avatar-shadow{border-width:2px;box-shadow:none;height:2.5rem;margin:0;min-height:2.5rem;min-width:1.125rem;width:1.125rem}.eui-user-profile-menu{height:auto;min-width:340px;position:relative}.eui-user-profile-menu-item{align-items:center;border-bottom:1px solid var(--eui-base-color-grey-20);border-left:var(--eui-base-spacing-2xs) solid transparent;cursor:pointer;display:flex;padding:var(--eui-base-spacing-xs) var(--eui-base-spacing-s)}.eui-user-profile-menu-item:last-child{border-bottom:0}.eui-user-profile-menu-item a{color:var(--eui-base-color-text);text-decoration:none}.eui-user-profile-menu-item .eui-icon{color:var(--eui-base-color-grey-75);font-size:var(--eui-base-icon-size-m);margin-right:var(--eui-base-spacing-m);padding:var(--eui-base-spacing-xs)}.eui-user-profile-menu-item:hover{background-color:var(--eui-base-color-grey-5);cursor:pointer}.eui-user-profile-menu-item:focus{border-left:var(--eui-base-spacing-2xs) solid var(--eui-base-color-accessible-focus);transition:outline .15s ease-in-out,border .15s ease-in-out}.eui-user-profile-menu-item.link{cursor:pointer}.eui-user-profile-menu-item-right-content{margin-left:auto}\n"] }]
48
48
  }], ctorParameters: function () { return [{ type: i1.UxAppShellService }]; }, propDecorators: { welcomeLabel: [{
49
49
  type: Input
50
50
  }], impersonateLabel: [{
@@ -63,4 +63,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
63
63
  type: HostBinding,
64
64
  args: ['class']
65
65
  }] } });
66
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1wcm9maWxlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xheW91dC9ldWktdXNlci1wcm9maWxlL3VzZXItcHJvZmlsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9sYXlvdXQvZXVpLXVzZXItcHJvZmlsZS91c2VyLXByb2ZpbGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsdUJBQXVCLEVBQUUsaUJBQWlCLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFHLE9BQU8sRUFBRSxxQkFBcUIsRUFBZ0IsTUFBTSx1QkFBdUIsQ0FBQzs7Ozs7QUFXNUUsTUFBTSxPQUFPLHVCQUF1QjtJQWtDaEMsWUFBbUIsU0FBNEI7UUFBNUIsY0FBUyxHQUFULFNBQVMsQ0FBbUI7UUFqQy9DLHlCQUFvQixHQUFHLEtBQUssQ0FBQztRQUM3QixhQUFRLEdBQUcsSUFBSSxDQUFDO1FBRVAsaUJBQVksR0FBRyxTQUFTLENBQUM7UUFDekIscUJBQWdCLEdBQUcsZUFBZSxDQUFDO1FBRW5DLFlBQU8sR0FBRyxJQUFJLENBQUM7UUFnQmhCLHFCQUFnQixHQUFHLElBQUksQ0FBQztRQVN4QixzQkFBaUIsR0FBRyxLQUFLLENBQUM7SUFFZ0IsQ0FBQztJQTFCbkQsSUFDSSxlQUFlO1FBQ2YsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUM7SUFDakMsQ0FBQztJQUNELElBQUksZUFBZSxDQUFDLEtBQW1CO1FBQ25DLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN6RCxDQUFDO0lBRUQsSUFDSSxtQkFBbUI7UUFDbkIsT0FBTyxJQUFJLENBQUMsb0JBQW9CLENBQUM7SUFDckMsQ0FBQztJQUNELElBQUksbUJBQW1CLENBQUMsS0FBbUI7UUFDdkMsSUFBSSxDQUFDLG9CQUFvQixHQUFHLHFCQUFxQixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzdELENBQUM7SUFHRCxJQUNJLGdCQUFnQjtRQUNoQixPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQztJQUNsQyxDQUFDO0lBQ0QsSUFBSSxnQkFBZ0IsQ0FBQyxLQUFtQjtRQUNwQyxJQUFJLENBQUMsaUJBQWlCLEdBQUcscUJBQXFCLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDMUQsQ0FBQztJQUtELElBQ1csVUFBVTtRQUNqQixPQUFPLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUNoQyxDQUFDO0lBRUQsYUFBYTtRQUNULE9BQU8sQ0FBQyxrQkFBa0IsRUFBRSxJQUFJLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxDQUFDLDBCQUEwQixDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDOUcsQ0FBQzs7dUlBM0NRLHVCQUF1QjsySEFBdkIsdUJBQXVCLGdXQ1pwQyxndUZBcURBOzJGRHpDYSx1QkFBdUI7a0JBUG5DLFNBQVM7K0JBQ0ksa0JBQWtCLG1CQUdYLHVCQUF1QixDQUFDLE9BQU8saUJBQ2pDLGlCQUFpQixDQUFDLElBQUk7d0dBTTVCLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csZ0JBQWdCO3NCQUF4QixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUVGLGVBQWU7c0JBRGxCLEtBQUs7Z0JBU0YsbUJBQW1CO3NCQUR0QixLQUFLO2dCQVVGLGdCQUFnQjtzQkFEbkIsS0FBSztnQkFZSyxVQUFVO3NCQURwQixXQUFXO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEhvc3RCaW5kaW5nLCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgVmlld0VuY2Fwc3VsYXRpb24sIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBjb2VyY2VCb29sZWFuUHJvcGVydHksIEJvb2xlYW5JbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2VyY2lvbic7XG5cbmltcG9ydCB7IFV4QXBwU2hlbGxTZXJ2aWNlIH0gZnJvbSAnQGV1aS9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdldWktdXNlci1wcm9maWxlJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vdXNlci1wcm9maWxlLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9fc3R5bGVzL19pbmRleC5zY3NzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5EZWZhdWx0LFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG59KVxuZXhwb3J0IGNsYXNzIEV1aVVzZXJQcm9maWxlQ29tcG9uZW50IHtcbiAgICBfZXVpVXNlclByb2ZpbGVTaXplUyA9IGZhbHNlO1xuICAgIGlzT25saW5lID0gdHJ1ZTtcblxuICAgIEBJbnB1dCgpIHdlbGNvbWVMYWJlbCA9ICdXZWxjb21lJztcbiAgICBASW5wdXQoKSBpbXBlcnNvbmF0ZUxhYmVsID0gJ2ltcGVyc29uYXRpbmcnO1xuICAgIEBJbnB1dCgpIGF2YXRhclVybDogc3RyaW5nO1xuICAgIEBJbnB1dCgpIGhhc01lbnUgPSB0cnVlO1xuICAgIEBJbnB1dCgpXG4gICAgZ2V0IGhhc1dlbGNvbWVMYWJlbCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2hhc1dlbGNvbWVMYWJlbDtcbiAgICB9XG4gICAgc2V0IGhhc1dlbGNvbWVMYWJlbCh2YWx1ZTogQm9vbGVhbklucHV0KSB7XG4gICAgICAgIHRoaXMuX2hhc1dlbGNvbWVMYWJlbCA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgfVxuXG4gICAgQElucHV0KClcbiAgICBnZXQgZXVpVXNlclByb2ZpbGVTaXplUygpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2V1aVVzZXJQcm9maWxlU2l6ZVM7XG4gICAgfVxuICAgIHNldCBldWlVc2VyUHJvZmlsZVNpemVTKHZhbHVlOiBCb29sZWFuSW5wdXQpIHtcbiAgICAgICAgdGhpcy5fZXVpVXNlclByb2ZpbGVTaXplUyA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgfVxuICAgIHByaXZhdGUgX2hhc1dlbGNvbWVMYWJlbCA9IHRydWU7XG5cbiAgICBASW5wdXQoKVxuICAgIGdldCBoYXNUYWJOYXZpZ2F0aW9uKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5faGFzVGFiTmF2aWdhdGlvbjtcbiAgICB9XG4gICAgc2V0IGhhc1RhYk5hdmlnYXRpb24odmFsdWU6IEJvb2xlYW5JbnB1dCkge1xuICAgICAgICB0aGlzLl9oYXNUYWJOYXZpZ2F0aW9uID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB9XG4gICAgcHJpdmF0ZSBfaGFzVGFiTmF2aWdhdGlvbiA9IGZhbHNlO1xuXG4gICAgY29uc3RydWN0b3IocHVibGljIGFzU2VydmljZTogVXhBcHBTaGVsbFNlcnZpY2UpIHt9XG5cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzJylcbiAgICBwdWJsaWMgZ2V0IGNzc0NsYXNzZXMoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0Q3NzQ2xhc3NlcygpO1xuICAgIH1cblxuICAgIGdldENzc0NsYXNzZXMoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIFsnZXVpLXVzZXItcHJvZmlsZScsIHRoaXMuX2V1aVVzZXJQcm9maWxlU2l6ZVMgPyAnZXVpLXVzZXItcHJvZmlsZS0tc2l6ZS1zJyA6ICcnXS5qb2luKCcgJykudHJpbSgpO1xuICAgIH1cbn1cbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCJoYXNNZW51OyBlbHNlIG5vTWVudUNvbnRlbnRcIj5cbiAgICA8ZXVpLWRyb3Bkb3duIFtoYXNUYWJOYXZpZ2F0aW9uXT1cImhhc1RhYk5hdmlnYXRpb25cIiB3aWR0aD1cIjM0MHB4XCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJ1c2VyUHJvZmlsZUNvbnRlbnRcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPGV1aS1kcm9wZG93bi1jb250ZW50PlxuICAgICAgICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICAgICAgICA8L2V1aS1kcm9wZG93bi1jb250ZW50PlxuICAgIDwvZXVpLWRyb3Bkb3duPlxuPC9uZy1jb250YWluZXI+XG5cbjxuZy10ZW1wbGF0ZSAjbm9NZW51Q29udGVudD5cbiAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwidXNlclByb2ZpbGVDb250ZW50XCI+PC9uZy1jb250YWluZXI+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI3VzZXJQcm9maWxlQ29udGVudD5cbiAgICA8YnV0dG9uIFt0YWJpbmRleF09XCJoYXNNZW51ID8gJzAnIDogJy0xJ1wiIGNsYXNzPVwiZXVpLXVzZXItcHJvZmlsZS1jb250ZW50XCIgYXJpYS1sYWJlbD1cIlByb2ZpbGUgbWVudVwiPlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgICBjbGFzcz1cImV1aS11c2VyLXByb2ZpbGVfX2luZm9zXCJcbiAgICAgICAgICAgIFtjbGFzcy5ldWktdXNlci1wcm9maWxlX19pbmZvcy0tbm8tc3ViaW5mb3NdPVwiKGFzU2VydmljZS5zdGF0ZSQgfCBhc3luYykudXNlclN1YkluZm9zICYmICFoYXNXZWxjb21lTGFiZWxcIj5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIoYXNTZXJ2aWNlLnN0YXRlJCB8IGFzeW5jKS5pbXBlcnNvbmF0ZWRVc2VySW5mb3M7IGVsc2Ugbm90SW1wZXJzb25hdGVkXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImV1aS11c2VyLXByb2ZpbGVfX2luZm9zLXdlbGNvbWVcIj5cbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJldWktdS1tci0yeHNcIiAqbmdJZj1cImhhc1dlbGNvbWVMYWJlbFwiPnt7IHdlbGNvbWVMYWJlbCB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgPHN0cm9uZz57eyAoYXNTZXJ2aWNlLnN0YXRlJCB8IGFzeW5jKS51c2VySW5mb3MgfX08L3N0cm9uZz5cbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJldWktdS1tbC0yeHNcIj57eyBpbXBlcnNvbmF0ZUxhYmVsIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJldWktdXNlci1wcm9maWxlX19pbmZvcy1uYW1lXCI+e3sgKGFzU2VydmljZS5zdGF0ZSQgfCBhc3luYykuaW1wZXJzb25hdGVkVXNlckluZm9zIH19PC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cIihhc1NlcnZpY2Uuc3RhdGUkIHwgYXN5bmMpLnVzZXJTdWJJbmZvc1wiIGNsYXNzPVwiZXVpLXVzZXItcHJvZmlsZV9faW5mb3Mtc3ViaW5mb3NcIj5cbiAgICAgICAgICAgICAgICAgICAge3sgKGFzU2VydmljZS5zdGF0ZSQgfCBhc3luYykudXNlclN1YkluZm9zIH19XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNub3RJbXBlcnNvbmF0ZWQ+XG4gICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cImhhc1dlbGNvbWVMYWJlbFwiIGNsYXNzPVwiZXVpLXVzZXItcHJvZmlsZV9faW5mb3Mtd2VsY29tZVwiPnt7IHdlbGNvbWVMYWJlbCB9fTwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJldWktdXNlci1wcm9maWxlX19pbmZvcy1uYW1lXCI+e3sgKGFzU2VydmljZS5zdGF0ZSQgfCBhc3luYykudXNlckluZm9zIH19PC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cIihhc1NlcnZpY2Uuc3RhdGUkIHwgYXN5bmMpLnVzZXJTdWJJbmZvc1wiIGNsYXNzPVwiZXVpLXVzZXItcHJvZmlsZV9faW5mb3Mtc3ViaW5mb3NcIj5cbiAgICAgICAgICAgICAgICAgICAge3sgKGFzU2VydmljZS5zdGF0ZSQgfCBhc3luYykudXNlclN1YkluZm9zIH19XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8ZGl2ICpuZ0lmPVwiKGFzU2VydmljZS5zdGF0ZSQgfCBhc3luYykuaW1wZXJzb25hdGVkVXNlckluZm9zXCIgY2xhc3M9XCJldWktdXNlci1wcm9maWxlX19hdmF0YXItc2hhZG93XCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZXVpLXVzZXItcHJvZmlsZV9fYXZhdGFyIGV1aS11LXN2ZyBldWktdS1zdmctLWRlZmF1bHQtYXZhdGFyXCI+PC9kaXY+XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIDxkaXZcbiAgICAgICAgICAgICpuZ0lmPVwiIWF2YXRhclVybFwiXG4gICAgICAgICAgICBjbGFzcz1cImV1aS11c2VyLXByb2ZpbGVfX2F2YXRhclwiXG4gICAgICAgICAgICBbbmdDbGFzc109XCJpc09ubGluZSA/ICdldWktdXNlci1wcm9maWxlX19hdmF0YXItLW9ubGluZScgOiAnZXVpLXVzZXItcHJvZmlsZV9fYXZhdGFyLS1vZmZsaW5lJ1wiPjwvZGl2PlxuXG4gICAgICAgIDxkaXYgKm5nSWY9XCJhdmF0YXJVcmxcIiBjbGFzcz1cImV1aS11c2VyLXByb2ZpbGVfX2F2YXRhciBldWktdS1zdmdcIj5cbiAgICAgICAgICAgIDxpbWcgW3NyY109XCJhdmF0YXJVcmxcIiBhbHQ9XCJhdmF0YXJcIiAvPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2J1dHRvbj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
66
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1wcm9maWxlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xheW91dC9ldWktdXNlci1wcm9maWxlL3VzZXItcHJvZmlsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9sYXlvdXQvZXVpLXVzZXItcHJvZmlsZS91c2VyLXByb2ZpbGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsdUJBQXVCLEVBQUUsaUJBQWlCLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFHLE9BQU8sRUFBRSxxQkFBcUIsRUFBZ0IsTUFBTSx1QkFBdUIsQ0FBQzs7Ozs7QUFXNUUsTUFBTSxPQUFPLHVCQUF1QjtJQWtDaEMsWUFBbUIsU0FBNEI7UUFBNUIsY0FBUyxHQUFULFNBQVMsQ0FBbUI7UUFqQy9DLHlCQUFvQixHQUFHLEtBQUssQ0FBQztRQUM3QixhQUFRLEdBQUcsSUFBSSxDQUFDO1FBRVAsaUJBQVksR0FBRyxTQUFTLENBQUM7UUFDekIscUJBQWdCLEdBQUcsZUFBZSxDQUFDO1FBRW5DLFlBQU8sR0FBRyxJQUFJLENBQUM7UUFnQmhCLHFCQUFnQixHQUFHLElBQUksQ0FBQztRQVN4QixzQkFBaUIsR0FBRyxLQUFLLENBQUM7SUFFZ0IsQ0FBQztJQTFCbkQsSUFDSSxlQUFlO1FBQ2YsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUM7SUFDakMsQ0FBQztJQUNELElBQUksZUFBZSxDQUFDLEtBQW1CO1FBQ25DLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN6RCxDQUFDO0lBRUQsSUFDSSxtQkFBbUI7UUFDbkIsT0FBTyxJQUFJLENBQUMsb0JBQW9CLENBQUM7SUFDckMsQ0FBQztJQUNELElBQUksbUJBQW1CLENBQUMsS0FBbUI7UUFDdkMsSUFBSSxDQUFDLG9CQUFvQixHQUFHLHFCQUFxQixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzdELENBQUM7SUFHRCxJQUNJLGdCQUFnQjtRQUNoQixPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQztJQUNsQyxDQUFDO0lBQ0QsSUFBSSxnQkFBZ0IsQ0FBQyxLQUFtQjtRQUNwQyxJQUFJLENBQUMsaUJBQWlCLEdBQUcscUJBQXFCLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDMUQsQ0FBQztJQUtELElBQ1csVUFBVTtRQUNqQixPQUFPLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUNoQyxDQUFDO0lBRUQsYUFBYTtRQUNULE9BQU8sQ0FBQyxrQkFBa0IsRUFBRSxJQUFJLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxDQUFDLDBCQUEwQixDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDOUcsQ0FBQzs7dUlBM0NRLHVCQUF1QjsySEFBdkIsdUJBQXVCLGdXQ1pwQyx1eEZBcURBOzJGRHpDYSx1QkFBdUI7a0JBUG5DLFNBQVM7K0JBQ0ksa0JBQWtCLG1CQUdYLHVCQUF1QixDQUFDLE9BQU8saUJBQ2pDLGlCQUFpQixDQUFDLElBQUk7d0dBTTVCLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csZ0JBQWdCO3NCQUF4QixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUVGLGVBQWU7c0JBRGxCLEtBQUs7Z0JBU0YsbUJBQW1CO3NCQUR0QixLQUFLO2dCQVVGLGdCQUFnQjtzQkFEbkIsS0FBSztnQkFZSyxVQUFVO3NCQURwQixXQUFXO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEhvc3RCaW5kaW5nLCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgVmlld0VuY2Fwc3VsYXRpb24sIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBjb2VyY2VCb29sZWFuUHJvcGVydHksIEJvb2xlYW5JbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2VyY2lvbic7XG5cbmltcG9ydCB7IFV4QXBwU2hlbGxTZXJ2aWNlIH0gZnJvbSAnQGV1aS9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdldWktdXNlci1wcm9maWxlJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vdXNlci1wcm9maWxlLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9fc3R5bGVzL19pbmRleC5zY3NzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5EZWZhdWx0LFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG59KVxuZXhwb3J0IGNsYXNzIEV1aVVzZXJQcm9maWxlQ29tcG9uZW50IHtcbiAgICBfZXVpVXNlclByb2ZpbGVTaXplUyA9IGZhbHNlO1xuICAgIGlzT25saW5lID0gdHJ1ZTtcblxuICAgIEBJbnB1dCgpIHdlbGNvbWVMYWJlbCA9ICdXZWxjb21lJztcbiAgICBASW5wdXQoKSBpbXBlcnNvbmF0ZUxhYmVsID0gJ2ltcGVyc29uYXRpbmcnO1xuICAgIEBJbnB1dCgpIGF2YXRhclVybDogc3RyaW5nO1xuICAgIEBJbnB1dCgpIGhhc01lbnUgPSB0cnVlO1xuICAgIEBJbnB1dCgpXG4gICAgZ2V0IGhhc1dlbGNvbWVMYWJlbCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2hhc1dlbGNvbWVMYWJlbDtcbiAgICB9XG4gICAgc2V0IGhhc1dlbGNvbWVMYWJlbCh2YWx1ZTogQm9vbGVhbklucHV0KSB7XG4gICAgICAgIHRoaXMuX2hhc1dlbGNvbWVMYWJlbCA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgfVxuXG4gICAgQElucHV0KClcbiAgICBnZXQgZXVpVXNlclByb2ZpbGVTaXplUygpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2V1aVVzZXJQcm9maWxlU2l6ZVM7XG4gICAgfVxuICAgIHNldCBldWlVc2VyUHJvZmlsZVNpemVTKHZhbHVlOiBCb29sZWFuSW5wdXQpIHtcbiAgICAgICAgdGhpcy5fZXVpVXNlclByb2ZpbGVTaXplUyA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgfVxuICAgIHByaXZhdGUgX2hhc1dlbGNvbWVMYWJlbCA9IHRydWU7XG5cbiAgICBASW5wdXQoKVxuICAgIGdldCBoYXNUYWJOYXZpZ2F0aW9uKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5faGFzVGFiTmF2aWdhdGlvbjtcbiAgICB9XG4gICAgc2V0IGhhc1RhYk5hdmlnYXRpb24odmFsdWU6IEJvb2xlYW5JbnB1dCkge1xuICAgICAgICB0aGlzLl9oYXNUYWJOYXZpZ2F0aW9uID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB9XG4gICAgcHJpdmF0ZSBfaGFzVGFiTmF2aWdhdGlvbiA9IGZhbHNlO1xuXG4gICAgY29uc3RydWN0b3IocHVibGljIGFzU2VydmljZTogVXhBcHBTaGVsbFNlcnZpY2UpIHt9XG5cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzJylcbiAgICBwdWJsaWMgZ2V0IGNzc0NsYXNzZXMoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0Q3NzQ2xhc3NlcygpO1xuICAgIH1cblxuICAgIGdldENzc0NsYXNzZXMoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIFsnZXVpLXVzZXItcHJvZmlsZScsIHRoaXMuX2V1aVVzZXJQcm9maWxlU2l6ZVMgPyAnZXVpLXVzZXItcHJvZmlsZS0tc2l6ZS1zJyA6ICcnXS5qb2luKCcgJykudHJpbSgpO1xuICAgIH1cbn1cbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCJoYXNNZW51OyBlbHNlIG5vTWVudUNvbnRlbnRcIj5cbiAgICA8ZXVpLWRyb3Bkb3duIFtoYXNUYWJOYXZpZ2F0aW9uXT1cImhhc1RhYk5hdmlnYXRpb25cIiB3aWR0aD1cIjM0MHB4XCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJ1c2VyUHJvZmlsZUNvbnRlbnRcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPGV1aS1kcm9wZG93bi1jb250ZW50PlxuICAgICAgICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICAgICAgICA8L2V1aS1kcm9wZG93bi1jb250ZW50PlxuICAgIDwvZXVpLWRyb3Bkb3duPlxuPC9uZy1jb250YWluZXI+XG5cbjxuZy10ZW1wbGF0ZSAjbm9NZW51Q29udGVudD5cbiAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwidXNlclByb2ZpbGVDb250ZW50XCI+PC9uZy1jb250YWluZXI+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI3VzZXJQcm9maWxlQ29udGVudD5cbiAgICA8YnV0dG9uIFt0YWJpbmRleF09XCJoYXNNZW51ID8gJzAnIDogJy0xJ1wiIGNsYXNzPVwiZXVpLXVzZXItcHJvZmlsZS1jb250ZW50XCIgYXJpYS1sYWJlbD1cIlByb2ZpbGUgbWVudVwiIFtjbGFzcy5ldWktdXNlci1wcm9maWxlLWNvbnRlbnQtLW5vLW1lbnVdPVwiIWhhc01lbnVcIj5cbiAgICAgICAgPGRpdlxuICAgICAgICAgICAgY2xhc3M9XCJldWktdXNlci1wcm9maWxlX19pbmZvc1wiXG4gICAgICAgICAgICBbY2xhc3MuZXVpLXVzZXItcHJvZmlsZV9faW5mb3MtLW5vLXN1YmluZm9zXT1cIihhc1NlcnZpY2Uuc3RhdGUkIHwgYXN5bmMpLnVzZXJTdWJJbmZvcyAmJiAhaGFzV2VsY29tZUxhYmVsXCI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiKGFzU2VydmljZS5zdGF0ZSQgfCBhc3luYykuaW1wZXJzb25hdGVkVXNlckluZm9zOyBlbHNlIG5vdEltcGVyc29uYXRlZFwiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJldWktdXNlci1wcm9maWxlX19pbmZvcy13ZWxjb21lXCI+XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZXVpLXUtbXItMnhzXCIgKm5nSWY9XCJoYXNXZWxjb21lTGFiZWxcIj57eyB3ZWxjb21lTGFiZWwgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgIDxzdHJvbmc+e3sgKGFzU2VydmljZS5zdGF0ZSQgfCBhc3luYykudXNlckluZm9zIH19PC9zdHJvbmc+XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZXVpLXUtbWwtMnhzXCI+e3sgaW1wZXJzb25hdGVMYWJlbCB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZXVpLXVzZXItcHJvZmlsZV9faW5mb3MtbmFtZVwiPnt7IChhc1NlcnZpY2Uuc3RhdGUkIHwgYXN5bmMpLmltcGVyc29uYXRlZFVzZXJJbmZvcyB9fTwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCIoYXNTZXJ2aWNlLnN0YXRlJCB8IGFzeW5jKS51c2VyU3ViSW5mb3NcIiBjbGFzcz1cImV1aS11c2VyLXByb2ZpbGVfX2luZm9zLXN1YmluZm9zXCI+XG4gICAgICAgICAgICAgICAgICAgIHt7IChhc1NlcnZpY2Uuc3RhdGUkIHwgYXN5bmMpLnVzZXJTdWJJbmZvcyB9fVxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjbm90SW1wZXJzb25hdGVkPlxuICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJoYXNXZWxjb21lTGFiZWxcIiBjbGFzcz1cImV1aS11c2VyLXByb2ZpbGVfX2luZm9zLXdlbGNvbWVcIj57eyB3ZWxjb21lTGFiZWwgfX08L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZXVpLXVzZXItcHJvZmlsZV9faW5mb3MtbmFtZVwiPnt7IChhc1NlcnZpY2Uuc3RhdGUkIHwgYXN5bmMpLnVzZXJJbmZvcyB9fTwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCIoYXNTZXJ2aWNlLnN0YXRlJCB8IGFzeW5jKS51c2VyU3ViSW5mb3NcIiBjbGFzcz1cImV1aS11c2VyLXByb2ZpbGVfX2luZm9zLXN1YmluZm9zXCI+XG4gICAgICAgICAgICAgICAgICAgIHt7IChhc1NlcnZpY2Uuc3RhdGUkIHwgYXN5bmMpLnVzZXJTdWJJbmZvcyB9fVxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPGRpdiAqbmdJZj1cIihhc1NlcnZpY2Uuc3RhdGUkIHwgYXN5bmMpLmltcGVyc29uYXRlZFVzZXJJbmZvc1wiIGNsYXNzPVwiZXVpLXVzZXItcHJvZmlsZV9fYXZhdGFyLXNoYWRvd1wiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImV1aS11c2VyLXByb2ZpbGVfX2F2YXRhciBldWktdS1zdmcgZXVpLXUtc3ZnLS1kZWZhdWx0LWF2YXRhclwiPjwvZGl2PlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8ZGl2XG4gICAgICAgICAgICAqbmdJZj1cIiFhdmF0YXJVcmxcIlxuICAgICAgICAgICAgY2xhc3M9XCJldWktdXNlci1wcm9maWxlX19hdmF0YXJcIlxuICAgICAgICAgICAgW25nQ2xhc3NdPVwiaXNPbmxpbmUgPyAnZXVpLXVzZXItcHJvZmlsZV9fYXZhdGFyLS1vbmxpbmUnIDogJ2V1aS11c2VyLXByb2ZpbGVfX2F2YXRhci0tb2ZmbGluZSdcIj48L2Rpdj5cblxuICAgICAgICA8ZGl2ICpuZ0lmPVwiYXZhdGFyVXJsXCIgY2xhc3M9XCJldWktdXNlci1wcm9maWxlX19hdmF0YXIgZXVpLXUtc3ZnXCI+XG4gICAgICAgICAgICA8aW1nIFtzcmNdPVwiYXZhdGFyVXJsXCIgYWx0PVwiYXZhdGFyXCIgLz5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9idXR0b24+XG48L25nLXRlbXBsYXRlPlxuIl19
@@ -1 +1 @@
1
- {"version":3,"file":"eui-popover.component.d.ts","sourceRoot":"","sources":["../../eui-popover/eui-popover.component.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"eui-popover.component.d.ts","sourceRoot":"","sources":["../../eui-popover/eui-popover.component.ts"],"names":[],"mappings":"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"}
@@ -462,10 +462,9 @@ class EuiAutocompleteComponent extends BaseDirective {
462
462
  this.keyboardOptionSelectorHandlerSubscription.unsubscribe();
463
463
  }
464
464
  onOpen() {
465
- setTimeout(() => {
466
- var _a, _b, _c;
467
- this.itemSize = (((_c = (_b = (_a = this.matAutocomplete.options) === null || _a === void 0 ? void 0 : _a.first['_element']) === null || _b === void 0 ? void 0 : _b.nativeElement) === null || _c === void 0 ? void 0 : _c.clientHeight) + 1) || 48;
468
- });
465
+ // setTimeout(() => {
466
+ // this.itemSize = (this.matAutocomplete.options?.first['_element']?.nativeElement?.clientHeight + 1) || 48;
467
+ // });
469
468
  this.scrollDispatcherSubscription = this.scrollDispatcher
470
469
  .ancestorScrolled(this.autocompleteInput)
471
470
  .subscribe((event) => {