@skyux/popovers 9.22.0 → 9.24.0

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.
@@ -139,11 +139,33 @@ export class SkyPopoverDirective {
139
139
  this.skyPopover.isMouseEnter = false;
140
140
  if (this.skyPopover.isActive &&
141
141
  this.skyPopoverTrigger === 'mouseenter') {
142
- // Give the popover a chance to set its isMouseEnter flag before checking to see
143
- // if it should be closed.
144
- setTimeout(() => {
145
- this.#closePopoverOrMarkForClose();
146
- });
142
+ if (document.activeElement !== element) {
143
+ // Give the popover a chance to set its isMouseEnter flag before checking to see
144
+ // if it should be closed.
145
+ setTimeout(() => {
146
+ this.#closePopoverOrMarkForClose();
147
+ });
148
+ }
149
+ }
150
+ }
151
+ });
152
+ observableFromEvent(element, 'focusin')
153
+ .pipe(takeUntil(this.#ngUnsubscribe))
154
+ .subscribe(() => {
155
+ if (this.skyPopover) {
156
+ if (!this.skyPopover.isActive &&
157
+ this.skyPopoverTrigger === 'mouseenter') {
158
+ this.#sendMessage(SkyPopoverMessageType.Open);
159
+ }
160
+ }
161
+ });
162
+ observableFromEvent(element, 'focusout')
163
+ .pipe(takeUntil(this.#ngUnsubscribe))
164
+ .subscribe(() => {
165
+ if (this.skyPopover) {
166
+ if (this.skyPopover.isActive &&
167
+ this.skyPopoverTrigger === 'mouseenter') {
168
+ this.#sendMessage(SkyPopoverMessageType.Close);
147
169
  }
148
170
  }
149
171
  });
@@ -214,4 +236,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
214
236
  }], skyPopoverTrigger: [{
215
237
  type: Input
216
238
  }] } });
217
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvcG9wb3ZlcnMvc3JjL2xpYi9tb2R1bGVzL3BvcG92ZXIvcG9wb3Zlci5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFFVCxXQUFXLEVBQ1gsS0FBSyxHQUdOLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxPQUFPLEVBQWdCLFNBQVMsSUFBSSxtQkFBbUIsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFLM0MsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sOEJBQThCLENBQUM7O0FBT3JFLE1BQU0sT0FBTyxtQkFBbUI7SUFnQjlCOzs7T0FHRztJQUNILElBQ1csVUFBVSxDQUFDLEtBQXNDO1FBQzFELElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxFQUFFLFNBQVMsQ0FBQztRQUNsQyxJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztJQUN6QixDQUFDO0lBRUQsSUFBVyxVQUFVO1FBQ25CLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQztJQUN4QixDQUFDO0lBUUQ7O09BRUc7SUFDSCxJQUNXLHVCQUF1QixDQUNoQyxLQUE2QztRQUU3QyxJQUFJLENBQUMseUJBQXlCLEdBQUcsS0FBSyxJQUFJLElBQUksT0FBTyxFQUFxQixDQUFDO1FBQzNFLElBQUksQ0FBQyx1QkFBdUIsRUFBRSxDQUFDO0lBQ2pDLENBQUM7SUFFRCxJQUFXLHVCQUF1QjtRQUNoQyxPQUFPLElBQUksQ0FBQyx5QkFBeUIsQ0FBQztJQUN4QyxDQUFDO0lBRUQseUJBQXlCLENBQW9DO0lBRTdELGlCQUFpQixDQUEyQjtJQVE1Qzs7T0FFRztJQUNILElBQ1csaUJBQWlCLENBQUMsS0FBb0M7UUFD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QUNILENBQUM7SUFFRCxZQUFZLENBQUMsV0FBa0M7UUFDN0MsSUFBSSxDQUFDLHVCQUF1QixDQUFDLElBQUksQ0FBQyxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUUsQ0FBQyxDQUFDO0lBQzNELENBQUM7SUFFRCx1QkFBdUI7UUFDckIsSUFBSSxDQUFDLHlCQUF5QixFQUFFLENBQUM7UUFFakMsSUFBSSxDQUFDLGlCQUFpQixHQUFHLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxTQUFTLENBQzdELENBQUMsT0FBTyxFQUFFLEVBQUU7WUFDVixJQUFJLENBQUMsdUJBQXVCLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDeEMsQ0FBQyxDQUNGLENBQUM7SUFDSixDQUFDO0lBRUQseUJBQXlCO1FBQ3ZCLElBQUksSUFBSSxDQUFDLGlCQUFpQixFQUFFO1lBQzFCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUNyQyxJQUFJLENBQUMsaUJBQWlCLEdBQUcsU0FBUyxDQUFDO1NBQ3BDO0lBQ0gsQ0FBQzs4R0EvUFUsbUJBQW1CO2tHQUFuQixtQkFBbUI7OzJGQUFuQixtQkFBbUI7a0JBSC9CLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGNBQWM7aUJBQ3pCO2lHQU9XLGNBQWM7c0JBRHZCLFdBQVc7dUJBQUMsT0FBTztnQkFTVixTQUFTO3NCQURsQixXQUFXO3VCQUFDLHdCQUF3QjtnQkFRMUIsVUFBVTtzQkFEcEIsS0FBSztnQkFjQyxtQkFBbUI7c0JBRHpCLEtBQUs7Z0JBT0ssdUJBQXVCO3NCQURqQyxLQUFLO2dCQW9CQyxtQkFBbUI7c0JBRHpCLEtBQUs7Z0JBT0ssaUJBQWlCO3NCQUQzQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgRGlyZWN0aXZlLFxuICBFbGVtZW50UmVmLFxuICBIb3N0QmluZGluZyxcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgU3ViamVjdCwgU3Vic2NyaXB0aW9uLCBmcm9tRXZlbnQgYXMgb2JzZXJ2YWJsZUZyb21FdmVudCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBTa3lQb3BvdmVyQ29tcG9uZW50IH0gZnJvbSAnLi9wb3BvdmVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTa3lQb3BvdmVyQWxpZ25tZW50IH0gZnJvbSAnLi90eXBlcy9wb3BvdmVyLWFsaWdubWVudCc7XG5pbXBvcnQgeyBTa3lQb3BvdmVyTWVzc2FnZSB9IGZyb20gJy4vdHlwZXMvcG9wb3Zlci1tZXNzYWdlJztcbmltcG9ydCB7IFNreVBvcG92ZXJNZXNzYWdlVHlwZSB9IGZyb20gJy4vdHlwZXMvcG9wb3Zlci1tZXNzYWdlLXR5cGUnO1xuaW1wb3J0IHsgU2t5UG9wb3ZlclBsYWNlbWVudCB9IGZyb20gJy4vdHlwZXMvcG9wb3Zlci1wbGFjZW1lbnQnO1xuaW1wb3J0IHsgU2t5UG9wb3ZlclRyaWdnZXIgfSBmcm9tICcuL3R5cGVzL3BvcG92ZXItdHJpZ2dlcic7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tza3lQb3BvdmVyXScsXG59KVxuZXhwb3J0IGNsYXNzIFNreVBvcG92ZXJEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIC8qKlxuICAgKiBBcHBlbmRzIHRoZSBgc2t5LXBvcG92ZXItdHJpZ2dlcmAgY2xhc3MgdG8gdGhlIHRyaWdnZXIgZWxlbWVudC5cbiAgICogQGludGVybmFsXG4gICAqL1xuICBASG9zdEJpbmRpbmcoJ2NsYXNzJylcbiAgcHJvdGVjdGVkIGRpcmVjdGl2ZUNsYXNzID0gJ3NreS1wb3BvdmVyLXRyaWdnZXInO1xuXG4gIC8qKlxuICAgKiBBcHBlbmRzIHRoZSBgZGF0YS1wb3BvdmVyLWlkYCBhdHRyaWJ1dGUgdG8gdGhlIHRyaWdnZXIgZWxlbWVudCBzZXQgdG8gYSB1bmlxdWUgSUQgZ2VuZXJhdGVkIGJ5IHRoZSBwb3BvdmVyIGNvbXBvbmVudC5cbiAgICogQGludGVybmFsXG4gICAqL1xuICAvLyBUT0RPOiByZXBsYWNlIHRoaXMgd2l0aCByZWxldmFudCBBUklBIGF0dHJpYnV0ZXNcbiAgQEhvc3RCaW5kaW5nKCdbYXR0ci5kYXRhLXBvcG92ZXItaWRdJylcbiAgcHJvdGVjdGVkIHBvcG92ZXJJZDogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBUaGUgcG9wb3ZlciBjb21wb25lbnQgdG8gZGlzcGxheS4gQWRkIHRoaXMgZGlyZWN0aXZlIHRvIHRoZSB0cmlnZ2VyIGVsZW1lbnQgdGhhdCBvcGVucyB0aGUgcG9wb3Zlci5cbiAgICogQHJlcXVpcmVkXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IHNreVBvcG92ZXIodmFsdWU6IFNreVBvcG92ZXJDb21wb25lbnQgfCB1bmRlZmluZWQpIHtcbiAgICB0aGlzLnBvcG92ZXJJZCA9IHZhbHVlPy5wb3BvdmVySWQ7XG4gICAgdGhpcy4jX3BvcG92ZXIgPSB2YWx1ZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgc2t5UG9wb3ZlcigpOiBTa3lQb3BvdmVyQ29tcG9uZW50IHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy4jX3BvcG92ZXI7XG4gIH1cblxuICAvKipcbiAgICogVGhlIGhvcml6b250YWwgYWxpZ25tZW50IG9mIHRoZSBwb3BvdmVyIGluIHJlbGF0aW9uIHRvIHRoZSB0cmlnZ2VyIGVsZW1lbnQuXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2t5UG9wb3ZlckFsaWdubWVudDogU2t5UG9wb3ZlckFsaWdubWVudCB8IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogVGhlIFJ4SlMgYFN1YmplY3RgIHRvIHNlbmQgY29tbWFuZHMgdG8gdGhlIHBvcG92ZXIgdGhhdCByZXNwZWN0IHRoZSBgU2t5UG9wb3Zlck1lc3NhZ2VgIHR5cGUuXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IHNreVBvcG92ZXJNZXNzYWdlU3RyZWFtKFxuICAgIHZhbHVlOiBTdWJqZWN0PFNreVBvcG92ZXJNZXNzYWdlPiB8IHVuZGVmaW5lZCxcbiAgKSB7XG4gICAgdGhpcy4jX3NreVBvcG92ZXJNZXNzYWdlU3RyZWFtID0gdmFsdWUgPz8gbmV3IFN1YmplY3Q8U2t5UG9wb3Zlck1lc3NhZ2U+KCk7XG4gICAgdGhpcy4jc3Vic2NyaWJlTWVzc2FnZVN0cmVhbSgpO1xuICB9XG5cbiAgcHVibGljIGdldCBza3lQb3BvdmVyTWVzc2FnZVN0cmVhbSgpOiBTdWJqZWN0PFNreVBvcG92ZXJNZXNzYWdlPiB7XG4gICAgcmV0dXJuIHRoaXMuI19za3lQb3BvdmVyTWVzc2FnZVN0cmVhbTtcbiAgfVxuXG4gICNfc2t5UG9wb3Zlck1lc3NhZ2VTdHJlYW0gPSBuZXcgU3ViamVjdDxTa3lQb3BvdmVyTWVzc2FnZT4oKTtcblxuICAjbWVzc2FnZVN0cmVhbVN1YjogU3Vic2NyaXB0aW9uIHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBUaGUgcGxhY2VtZW50IG9mIHRoZSBwb3BvdmVyIGluIHJlbGF0aW9uIHRvIHRoZSB0cmlnZ2VyIGVsZW1lbnQuXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2t5UG9wb3ZlclBsYWNlbWVudDogU2t5UG9wb3ZlclBsYWNlbWVudCB8IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogVGhlIHVzZXIgYWN0aW9uIHRoYXQgZGlzcGxheXMgdGhlIHBvcG92ZXIuXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IHNreVBvcG92ZXJUcmlnZ2VyKHZhbHVlOiBTa3lQb3BvdmVyVHJpZ2dlciB8IHVuZGVmaW5lZCkge1xuICAgIHRoaXMuI190cmlnZ2VyID0gdmFsdWUgPz8gJ2NsaWNrJztcbiAgfVxuXG4gIHB1YmxpYyBnZXQgc2t5UG9wb3ZlclRyaWdnZXIoKTogU2t5UG9wb3ZlclRyaWdnZXIge1xuICAgIHJldHVybiB0aGlzLiNfdHJpZ2dlcjtcbiAgfVxuXG4gICNuZ1Vuc3Vic2NyaWJlID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICAjX3BvcG92ZXI6IFNreVBvcG92ZXJDb21wb25lbnQgfCB1bmRlZmluZWQ7XG5cbiAgI190cmlnZ2VyOiBTa3lQb3BvdmVyVHJpZ2dlciA9ICdjbGljayc7XG5cbiAgI2VsZW1lbnRSZWY6IEVsZW1lbnRSZWY7XG5cbiAgY29uc3RydWN0b3IoZWxlbWVudFJlZjogRWxlbWVudFJlZikge1xuICAgIHRoaXMuI2VsZW1lbnRSZWYgPSBlbGVtZW50UmVmO1xuICAgIHRoaXMuI3N1YnNjcmliZU1lc3NhZ2VTdHJlYW0oKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLiNhZGRFdmVudExpc3RlbmVycygpO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuI3JlbW92ZUV2ZW50TGlzdGVuZXJzKCk7XG4gICAgdGhpcy4jdW5zdWJzY3JpYmVNZXNzYWdlU3RyZWFtKCk7XG4gIH1cblxuICBwdWJsaWMgdG9nZ2xlUG9wb3ZlcigpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5za3lQb3BvdmVyPy5pc0FjdGl2ZSkge1xuICAgICAgdGhpcy4jc2VuZE1lc3NhZ2UoU2t5UG9wb3Zlck1lc3NhZ2VUeXBlLkNsb3NlKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLiNzZW5kTWVzc2FnZShTa3lQb3BvdmVyTWVzc2FnZVR5cGUuT3Blbik7XG4gIH1cblxuICAjcG9zaXRpb25Qb3BvdmVyKCk6IHZvaWQge1xuICAgIHRoaXMuc2t5UG9wb3Zlcj8ucG9zaXRpb25OZXh0VG8oXG4gICAgICB0aGlzLiNlbGVtZW50UmVmLFxuICAgICAgdGhpcy5za3lQb3BvdmVyUGxhY2VtZW50LFxuICAgICAgdGhpcy5za3lQb3BvdmVyQWxpZ25tZW50LFxuICAgICk7XG4gIH1cblxuICAjY2xvc2VQb3BvdmVyKCk6IHZvaWQge1xuICAgIHRoaXMuc2t5UG9wb3Zlcj8uY2xvc2UoKTtcbiAgfVxuXG4gICNjbG9zZVBvcG92ZXJPck1hcmtGb3JDbG9zZSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5za3lQb3BvdmVyPy5pc01vdXNlRW50ZXIpIHtcbiAgICAgIHRoaXMuc2t5UG9wb3Zlci5tYXJrRm9yQ2xvc2VPbk1vdXNlTGVhdmUoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy4jc2VuZE1lc3NhZ2UoU2t5UG9wb3Zlck1lc3NhZ2VUeXBlLkNsb3NlKTtcbiAgICB9XG4gIH1cblxuICAjYWRkRXZlbnRMaXN0ZW5lcnMoKTogdm9pZCB7XG4gICAgY29uc3QgZWxlbWVudCA9IHRoaXMuI2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcblxuICAgIG9ic2VydmFibGVGcm9tRXZlbnQ8S2V5Ym9hcmRFdmVudD4oZWxlbWVudCwgJ2tleWRvd24nKVxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuI25nVW5zdWJzY3JpYmUpKVxuICAgICAgLnN1YnNjcmliZSgoZXZlbnQpID0+IHtcbiAgICAgICAgaWYgKCF0aGlzLnNreVBvcG92ZXI/LmlzQWN0aXZlKSB7XG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3Qga2V5ID0gZXZlbnQua2V5LnRvTG93ZXJDYXNlKCk7XG5cbiAgICAgICAgc3dpdGNoIChrZXkpIHtcbiAgICAgICAgICBjYXNlICdlc2NhcGUnOlxuICAgICAgICAgICAgdGhpcy4jc2VuZE1lc3NhZ2UoU2t5UG9wb3Zlck1lc3NhZ2VUeXBlLkNsb3NlKTtcbiAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgY2FzZSAndGFiJzpcbiAgICAgICAgICAgIGlmICh0aGlzLnNreVBvcG92ZXIuZGlzbWlzc09uQmx1cikge1xuICAgICAgICAgICAgICB0aGlzLiNzZW5kTWVzc2FnZShTa3lQb3BvdmVyTWVzc2FnZVR5cGUuQ2xvc2UpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICBjYXNlICdhcnJvd2Rvd24nOlxuICAgICAgICAgIGNhc2UgJ2Fycm93bGVmdCc6XG4gICAgICAgICAgY2FzZSAnYXJyb3dyaWdodCc6XG4gICAgICAgICAgY2FzZSAnYXJyb3d1cCc6XG4gICAgICAgICAgY2FzZSAnZG93bic6XG4gICAgICAgICAgY2FzZSAnbGVmdCc6XG4gICAgICAgICAgY2FzZSAncmlnaHQnOlxuICAgICAgICAgIGNhc2UgJ3VwJzpcbiAgICAgICAgICAgIHRoaXMuI3NlbmRNZXNzYWdlKFNreVBvcG92ZXJNZXNzYWdlVHlwZS5Gb2N1cyk7XG4gICAgICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgfSk7XG5cbiAgICBvYnNlcnZhYmxlRnJvbUV2ZW50KGVsZW1lbnQsICdjbGljaycpXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy4jbmdVbnN1YnNjcmliZSkpXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgaWYgKHRoaXMuc2t5UG9wb3Zlcikge1xuICAgICAgICAgIHRoaXMudG9nZ2xlUG9wb3ZlcigpO1xuICAgICAgICB9XG4gICAgICB9KTtcblxuICAgIG9ic2VydmFibGVGcm9tRXZlbnQoZWxlbWVudCwgJ21vdXNlZW50ZXInKVxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuI25nVW5zdWJzY3JpYmUpKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIGlmICh0aGlzLnNreVBvcG92ZXIpIHtcbiAgICAgICAgICB0aGlzLnNreVBvcG92ZXIuaXNNb3VzZUVudGVyID0gdHJ1ZTtcbiAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAhdGhpcy5za3lQb3BvdmVyLmlzQWN0aXZlICYmXG4gICAgICAgICAgICB0aGlzLnNreVBvcG92ZXJUcmlnZ2VyID09PSAnbW91c2VlbnRlcidcbiAgICAgICAgICApIHtcbiAgICAgICAgICAgIHRoaXMuI3NlbmRNZXNzYWdlKFNreVBvcG92ZXJNZXNzYWdlVHlwZS5PcGVuKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0pO1xuXG4gICAgb2JzZXJ2YWJsZUZyb21FdmVudChlbGVtZW50LCAnbW91c2VsZWF2ZScpXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy4jbmdVbnN1YnNjcmliZSkpXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgaWYgKHRoaXMuc2t5UG9wb3Zlcikge1xuICAgICAgICAgIHRoaXMuc2t5UG9wb3Zlci5pc01vdXNlRW50ZXIgPSBmYWxzZTtcbiAgICAgICAgICBpZiAoXG4gICAgICAgICAgICB0aGlzLnNreVBvcG92ZXIuaXNBY3RpdmUgJiZcbiAgICAgICAgICAgIHRoaXMuc2t5UG9wb3ZlclRyaWdnZXIgPT09ICdtb3VzZWVudGVyJ1xuICAgICAgICAgICkge1xuICAgICAgICAgICAgLy8gR2l2ZSB0aGUgcG9wb3ZlciBhIGNoYW5jZSB0byBzZXQgaXRzIGlzTW91c2VFbnRlciBmbGFnIGJlZm9yZSBjaGVja2luZyB0byBzZWVcbiAgICAgICAgICAgIC8vIGlmIGl0IHNob3VsZCBiZSBjbG9zZWQuXG4gICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgICAgdGhpcy4jY2xvc2VQb3BvdmVyT3JNYXJrRm9yQ2xvc2UoKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSk7XG4gIH1cblxuICAjcmVtb3ZlRXZlbnRMaXN0ZW5lcnMoKTogdm9pZCB7XG4gICAgdGhpcy4jbmdVbnN1YnNjcmliZS5uZXh0KCk7XG4gICAgdGhpcy4jbmdVbnN1YnNjcmliZS5jb21wbGV0ZSgpO1xuICB9XG5cbiAgI2hhbmRsZUluY29taW5nTWVzc2FnZXMobWVzc2FnZTogU2t5UG9wb3Zlck1lc3NhZ2UpOiB2b2lkIHtcbiAgICBzd2l0Y2ggKG1lc3NhZ2UudHlwZSkge1xuICAgICAgY2FzZSBTa3lQb3BvdmVyTWVzc2FnZVR5cGUuT3BlbjpcbiAgICAgICAgdGhpcy4jcG9zaXRpb25Qb3BvdmVyKCk7XG4gICAgICAgIGJyZWFrO1xuXG4gICAgICBjYXNlIFNreVBvcG92ZXJNZXNzYWdlVHlwZS5DbG9zZTpcbiAgICAgICAgLyppc3RhbmJ1bCBpZ25vcmUgZWxzZSovXG4gICAgICAgIGlmICh0aGlzLnNreVBvcG92ZXI/LmlzQWN0aXZlKSB7XG4gICAgICAgICAgdGhpcy4jY2xvc2VQb3BvdmVyKCk7XG4gICAgICAgIH1cbiAgICAgICAgYnJlYWs7XG5cbiAgICAgIGNhc2UgU2t5UG9wb3Zlck1lc3NhZ2VUeXBlLlJlcG9zaXRpb246XG4gICAgICAgIC8vIE9ubHkgcmVwb3NpdGlvbiB0aGUgcG9wb3ZlciBpZiBpdCBpcyBhbHJlYWR5IG9wZW4uXG4gICAgICAgIGlmICh0aGlzLnNreVBvcG92ZXI/LmlzQWN0aXZlKSB7XG4gICAgICAgICAgdGhpcy4jcG9zaXRpb25Qb3BvdmVyKCk7XG4gICAgICAgIH1cbiAgICAgICAgYnJlYWs7XG5cbiAgICAgIGNhc2UgU2t5UG9wb3Zlck1lc3NhZ2VUeXBlLkZvY3VzOlxuICAgICAgICB0aGlzLnNreVBvcG92ZXI/LmFwcGx5Rm9jdXMoKTtcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICB9XG5cbiAgI3NlbmRNZXNzYWdlKG1lc3NhZ2VUeXBlOiBTa3lQb3BvdmVyTWVzc2FnZVR5cGUpOiB2b2lkIHtcbiAgICB0aGlzLnNreVBvcG92ZXJNZXNzYWdlU3RyZWFtLm5leHQoeyB0eXBlOiBtZXNzYWdlVHlwZSB9KTtcbiAgfVxuXG4gICNzdWJzY3JpYmVNZXNzYWdlU3RyZWFtKCk6IHZvaWQge1xuICAgIHRoaXMuI3Vuc3Vic2NyaWJlTWVzc2FnZVN0cmVhbSgpO1xuXG4gICAgdGhpcy4jbWVzc2FnZVN0cmVhbVN1YiA9IHRoaXMuc2t5UG9wb3Zlck1lc3NhZ2VTdHJlYW0uc3Vic2NyaWJlKFxuICAgICAgKG1lc3NhZ2UpID0+IHtcbiAgICAgICAgdGhpcy4jaGFuZGxlSW5jb21pbmdNZXNzYWdlcyhtZXNzYWdlKTtcbiAgICAgIH0sXG4gICAgKTtcbiAgfVxuXG4gICN1bnN1YnNjcmliZU1lc3NhZ2VTdHJlYW0oKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuI21lc3NhZ2VTdHJlYW1TdWIpIHtcbiAgICAgIHRoaXMuI21lc3NhZ2VTdHJlYW1TdWIudW5zdWJzY3JpYmUoKTtcbiAgICAgIHRoaXMuI21lc3NhZ2VTdHJlYW1TdWIgPSB1bmRlZmluZWQ7XG4gICAgfVxuICB9XG59XG4iXX0=
239
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvcG9wb3ZlcnMvc3JjL2xpYi9tb2R1bGVzL3BvcG92ZXIvcG9wb3Zlci5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFFVCxXQUFXLEVBQ1gsS0FBSyxHQUdOLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxPQUFPLEVBQWdCLFNBQVMsSUFBSSxtQkFBbUIsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFLM0MsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sOEJBQThCLENBQUM7O0FBT3JFLE1BQU0sT0FBTyxtQkFBbUI7SUFnQjlCOzs7T0FHRztJQUNILElBQ1csVUFBVSxDQUFDLEtBQXNDO1FBQzFELElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxFQUFFLFNBQVMsQ0FBQztRQUNsQyxJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztJQUN6QixDQUFDO0lBRUQsSUFBVyxVQUFVO1FBQ25CLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQztJQUN4QixDQUFDO0lBUUQ7O09BRUc7SUFDSCxJQUNXLHVCQUF1QixDQUNoQyxLQUE2QztRQUU3QyxJQUFJLENBQUMseUJBQXlCLEdBQUcsS0FBSyxJQUFJLElBQUksT0FBTyxFQUFxQixDQUFDO1FBQzNFLElBQUksQ0FBQyx1QkFBdUIsRUFBRSxDQUFDO0lBQ2pDLENBQUM7SUFFRCxJQUFXLHVCQUF1QjtRQUNoQyxPQUFPLElBQUksQ0FBQyx5QkFBeUIsQ0FBQztJQUN4QyxDQUFDO0lBRUQseUJBQXlCLENBQW9DO0lBRTdELGlCQUFpQixDQUEyQjtJQVE1Qzs7T0FFRztJQUNILElBQ1csaUJBQWlCLENBQUMsS0FBb0M7UUFD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RUFBRTtZQUNWLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUN4QyxDQUFDLENBQ0YsQ0FBQztJQUNKLENBQUM7SUFFRCx5QkFBeUI7UUFDdkIsSUFBSSxJQUFJLENBQUMsaUJBQWlCLEVBQUU7WUFDMUIsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ3JDLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxTQUFTLENBQUM7U0FDcEM7SUFDSCxDQUFDOzhHQTNSVSxtQkFBbUI7a0dBQW5CLG1CQUFtQjs7MkZBQW5CLG1CQUFtQjtrQkFIL0IsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsY0FBYztpQkFDekI7aUdBT1csY0FBYztzQkFEdkIsV0FBVzt1QkFBQyxPQUFPO2dCQVNWLFNBQVM7c0JBRGxCLFdBQVc7dUJBQUMsd0JBQXdCO2dCQVExQixVQUFVO3NCQURwQixLQUFLO2dCQWNDLG1CQUFtQjtzQkFEekIsS0FBSztnQkFPSyx1QkFBdUI7c0JBRGpDLEtBQUs7Z0JBb0JDLG1CQUFtQjtzQkFEekIsS0FBSztnQkFPSyxpQkFBaUI7c0JBRDNCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBEaXJlY3RpdmUsXG4gIEVsZW1lbnRSZWYsXG4gIEhvc3RCaW5kaW5nLFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBTdWJqZWN0LCBTdWJzY3JpcHRpb24sIGZyb21FdmVudCBhcyBvYnNlcnZhYmxlRnJvbUV2ZW50IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IFNreVBvcG92ZXJDb21wb25lbnQgfSBmcm9tICcuL3BvcG92ZXIuY29tcG9uZW50JztcbmltcG9ydCB7IFNreVBvcG92ZXJBbGlnbm1lbnQgfSBmcm9tICcuL3R5cGVzL3BvcG92ZXItYWxpZ25tZW50JztcbmltcG9ydCB7IFNreVBvcG92ZXJNZXNzYWdlIH0gZnJvbSAnLi90eXBlcy9wb3BvdmVyLW1lc3NhZ2UnO1xuaW1wb3J0IHsgU2t5UG9wb3Zlck1lc3NhZ2VUeXBlIH0gZnJvbSAnLi90eXBlcy9wb3BvdmVyLW1lc3NhZ2UtdHlwZSc7XG5pbXBvcnQgeyBTa3lQb3BvdmVyUGxhY2VtZW50IH0gZnJvbSAnLi90eXBlcy9wb3BvdmVyLXBsYWNlbWVudCc7XG5pbXBvcnQgeyBTa3lQb3BvdmVyVHJpZ2dlciB9IGZyb20gJy4vdHlwZXMvcG9wb3Zlci10cmlnZ2VyJztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW3NreVBvcG92ZXJdJyxcbn0pXG5leHBvcnQgY2xhc3MgU2t5UG9wb3ZlckRpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgLyoqXG4gICAqIEFwcGVuZHMgdGhlIGBza3ktcG9wb3Zlci10cmlnZ2VyYCBjbGFzcyB0byB0aGUgdHJpZ2dlciBlbGVtZW50LlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIEBIb3N0QmluZGluZygnY2xhc3MnKVxuICBwcm90ZWN0ZWQgZGlyZWN0aXZlQ2xhc3MgPSAnc2t5LXBvcG92ZXItdHJpZ2dlcic7XG5cbiAgLyoqXG4gICAqIEFwcGVuZHMgdGhlIGBkYXRhLXBvcG92ZXItaWRgIGF0dHJpYnV0ZSB0byB0aGUgdHJpZ2dlciBlbGVtZW50IHNldCB0byBhIHVuaXF1ZSBJRCBnZW5lcmF0ZWQgYnkgdGhlIHBvcG92ZXIgY29tcG9uZW50LlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIC8vIFRPRE86IHJlcGxhY2UgdGhpcyB3aXRoIHJlbGV2YW50IEFSSUEgYXR0cmlidXRlc1xuICBASG9zdEJpbmRpbmcoJ1thdHRyLmRhdGEtcG9wb3Zlci1pZF0nKVxuICBwcm90ZWN0ZWQgcG9wb3ZlcklkOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cbiAgLyoqXG4gICAqIFRoZSBwb3BvdmVyIGNvbXBvbmVudCB0byBkaXNwbGF5LiBBZGQgdGhpcyBkaXJlY3RpdmUgdG8gdGhlIHRyaWdnZXIgZWxlbWVudCB0aGF0IG9wZW5zIHRoZSBwb3BvdmVyLlxuICAgKiBAcmVxdWlyZWRcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgc2t5UG9wb3Zlcih2YWx1ZTogU2t5UG9wb3ZlckNvbXBvbmVudCB8IHVuZGVmaW5lZCkge1xuICAgIHRoaXMucG9wb3ZlcklkID0gdmFsdWU/LnBvcG92ZXJJZDtcbiAgICB0aGlzLiNfcG9wb3ZlciA9IHZhbHVlO1xuICB9XG5cbiAgcHVibGljIGdldCBza3lQb3BvdmVyKCk6IFNreVBvcG92ZXJDb21wb25lbnQgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLiNfcG9wb3ZlcjtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgaG9yaXpvbnRhbCBhbGlnbm1lbnQgb2YgdGhlIHBvcG92ZXIgaW4gcmVsYXRpb24gdG8gdGhlIHRyaWdnZXIgZWxlbWVudC5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBza3lQb3BvdmVyQWxpZ25tZW50OiBTa3lQb3BvdmVyQWxpZ25tZW50IHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBUaGUgUnhKUyBgU3ViamVjdGAgdG8gc2VuZCBjb21tYW5kcyB0byB0aGUgcG9wb3ZlciB0aGF0IHJlc3BlY3QgdGhlIGBTa3lQb3BvdmVyTWVzc2FnZWAgdHlwZS5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgc2t5UG9wb3Zlck1lc3NhZ2VTdHJlYW0oXG4gICAgdmFsdWU6IFN1YmplY3Q8U2t5UG9wb3Zlck1lc3NhZ2U+IHwgdW5kZWZpbmVkLFxuICApIHtcbiAgICB0aGlzLiNfc2t5UG9wb3Zlck1lc3NhZ2VTdHJlYW0gPSB2YWx1ZSA/PyBuZXcgU3ViamVjdDxTa3lQb3BvdmVyTWVzc2FnZT4oKTtcbiAgICB0aGlzLiNzdWJzY3JpYmVNZXNzYWdlU3RyZWFtKCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHNreVBvcG92ZXJNZXNzYWdlU3RyZWFtKCk6IFN1YmplY3Q8U2t5UG9wb3Zlck1lc3NhZ2U+IHtcbiAgICByZXR1cm4gdGhpcy4jX3NreVBvcG92ZXJNZXNzYWdlU3RyZWFtO1xuICB9XG5cbiAgI19za3lQb3BvdmVyTWVzc2FnZVN0cmVhbSA9IG5ldyBTdWJqZWN0PFNreVBvcG92ZXJNZXNzYWdlPigpO1xuXG4gICNtZXNzYWdlU3RyZWFtU3ViOiBTdWJzY3JpcHRpb24gfCB1bmRlZmluZWQ7XG5cbiAgLyoqXG4gICAqIFRoZSBwbGFjZW1lbnQgb2YgdGhlIHBvcG92ZXIgaW4gcmVsYXRpb24gdG8gdGhlIHRyaWdnZXIgZWxlbWVudC5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBza3lQb3BvdmVyUGxhY2VtZW50OiBTa3lQb3BvdmVyUGxhY2VtZW50IHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBUaGUgdXNlciBhY3Rpb24gdGhhdCBkaXNwbGF5cyB0aGUgcG9wb3Zlci5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgc2t5UG9wb3ZlclRyaWdnZXIodmFsdWU6IFNreVBvcG92ZXJUcmlnZ2VyIHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy4jX3RyaWdnZXIgPSB2YWx1ZSA/PyAnY2xpY2snO1xuICB9XG5cbiAgcHVibGljIGdldCBza3lQb3BvdmVyVHJpZ2dlcigpOiBTa3lQb3BvdmVyVHJpZ2dlciB7XG4gICAgcmV0dXJuIHRoaXMuI190cmlnZ2VyO1xuICB9XG5cbiAgI25nVW5zdWJzY3JpYmUgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gICNfcG9wb3ZlcjogU2t5UG9wb3ZlckNvbXBvbmVudCB8IHVuZGVmaW5lZDtcblxuICAjX3RyaWdnZXI6IFNreVBvcG92ZXJUcmlnZ2VyID0gJ2NsaWNrJztcblxuICAjZWxlbWVudFJlZjogRWxlbWVudFJlZjtcblxuICBjb25zdHJ1Y3RvcihlbGVtZW50UmVmOiBFbGVtZW50UmVmKSB7XG4gICAgdGhpcy4jZWxlbWVudFJlZiA9IGVsZW1lbnRSZWY7XG4gICAgdGhpcy4jc3Vic2NyaWJlTWVzc2FnZVN0cmVhbSgpO1xuICB9XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuI2FkZEV2ZW50TGlzdGVuZXJzKCk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy4jcmVtb3ZlRXZlbnRMaXN0ZW5lcnMoKTtcbiAgICB0aGlzLiN1bnN1YnNjcmliZU1lc3NhZ2VTdHJlYW0oKTtcbiAgfVxuXG4gIHB1YmxpYyB0b2dnbGVQb3BvdmVyKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnNreVBvcG92ZXI/LmlzQWN0aXZlKSB7XG4gICAgICB0aGlzLiNzZW5kTWVzc2FnZShTa3lQb3BvdmVyTWVzc2FnZVR5cGUuQ2xvc2UpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuI3NlbmRNZXNzYWdlKFNreVBvcG92ZXJNZXNzYWdlVHlwZS5PcGVuKTtcbiAgfVxuXG4gICNwb3NpdGlvblBvcG92ZXIoKTogdm9pZCB7XG4gICAgdGhpcy5za3lQb3BvdmVyPy5wb3NpdGlvbk5leHRUbyhcbiAgICAgIHRoaXMuI2VsZW1lbnRSZWYsXG4gICAgICB0aGlzLnNreVBvcG92ZXJQbGFjZW1lbnQsXG4gICAgICB0aGlzLnNreVBvcG92ZXJBbGlnbm1lbnQsXG4gICAgKTtcbiAgfVxuXG4gICNjbG9zZVBvcG92ZXIoKTogdm9pZCB7XG4gICAgdGhpcy5za3lQb3BvdmVyPy5jbG9zZSgpO1xuICB9XG5cbiAgI2Nsb3NlUG9wb3Zlck9yTWFya0ZvckNsb3NlKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnNreVBvcG92ZXI/LmlzTW91c2VFbnRlcikge1xuICAgICAgdGhpcy5za3lQb3BvdmVyLm1hcmtGb3JDbG9zZU9uTW91c2VMZWF2ZSgpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLiNzZW5kTWVzc2FnZShTa3lQb3BvdmVyTWVzc2FnZVR5cGUuQ2xvc2UpO1xuICAgIH1cbiAgfVxuXG4gICNhZGRFdmVudExpc3RlbmVycygpOiB2b2lkIHtcbiAgICBjb25zdCBlbGVtZW50ID0gdGhpcy4jZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50O1xuXG4gICAgb2JzZXJ2YWJsZUZyb21FdmVudDxLZXlib2FyZEV2ZW50PihlbGVtZW50LCAna2V5ZG93bicpXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy4jbmdVbnN1YnNjcmliZSkpXG4gICAgICAuc3Vic2NyaWJlKChldmVudCkgPT4ge1xuICAgICAgICBpZiAoIXRoaXMuc2t5UG9wb3Zlcj8uaXNBY3RpdmUpIHtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBrZXkgPSBldmVudC5rZXkudG9Mb3dlckNhc2UoKTtcblxuICAgICAgICBzd2l0Y2ggKGtleSkge1xuICAgICAgICAgIGNhc2UgJ2VzY2FwZSc6XG4gICAgICAgICAgICB0aGlzLiNzZW5kTWVzc2FnZShTa3lQb3BvdmVyTWVzc2FnZVR5cGUuQ2xvc2UpO1xuICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICBjYXNlICd0YWInOlxuICAgICAgICAgICAgaWYgKHRoaXMuc2t5UG9wb3Zlci5kaXNtaXNzT25CbHVyKSB7XG4gICAgICAgICAgICAgIHRoaXMuI3NlbmRNZXNzYWdlKFNreVBvcG92ZXJNZXNzYWdlVHlwZS5DbG9zZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgIGNhc2UgJ2Fycm93ZG93bic6XG4gICAgICAgICAgY2FzZSAnYXJyb3dsZWZ0JzpcbiAgICAgICAgICBjYXNlICdhcnJvd3JpZ2h0JzpcbiAgICAgICAgICBjYXNlICdhcnJvd3VwJzpcbiAgICAgICAgICBjYXNlICdkb3duJzpcbiAgICAgICAgICBjYXNlICdsZWZ0JzpcbiAgICAgICAgICBjYXNlICdyaWdodCc6XG4gICAgICAgICAgY2FzZSAndXAnOlxuICAgICAgICAgICAgdGhpcy4jc2VuZE1lc3NhZ2UoU2t5UG9wb3Zlck1lc3NhZ2VUeXBlLkZvY3VzKTtcbiAgICAgICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICB9KTtcblxuICAgIG9ic2VydmFibGVGcm9tRXZlbnQoZWxlbWVudCwgJ2NsaWNrJylcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLiNuZ1Vuc3Vic2NyaWJlKSlcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICBpZiAodGhpcy5za3lQb3BvdmVyKSB7XG4gICAgICAgICAgdGhpcy50b2dnbGVQb3BvdmVyKCk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuXG4gICAgb2JzZXJ2YWJsZUZyb21FdmVudChlbGVtZW50LCAnbW91c2VlbnRlcicpXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy4jbmdVbnN1YnNjcmliZSkpXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgaWYgKHRoaXMuc2t5UG9wb3Zlcikge1xuICAgICAgICAgIHRoaXMuc2t5UG9wb3Zlci5pc01vdXNlRW50ZXIgPSB0cnVlO1xuICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICF0aGlzLnNreVBvcG92ZXIuaXNBY3RpdmUgJiZcbiAgICAgICAgICAgIHRoaXMuc2t5UG9wb3ZlclRyaWdnZXIgPT09ICdtb3VzZWVudGVyJ1xuICAgICAgICAgICkge1xuICAgICAgICAgICAgdGhpcy4jc2VuZE1lc3NhZ2UoU2t5UG9wb3Zlck1lc3NhZ2VUeXBlLk9wZW4pO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSk7XG5cbiAgICBvYnNlcnZhYmxlRnJvbUV2ZW50KGVsZW1lbnQsICdtb3VzZWxlYXZlJylcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLiNuZ1Vuc3Vic2NyaWJlKSlcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICBpZiAodGhpcy5za3lQb3BvdmVyKSB7XG4gICAgICAgICAgdGhpcy5za3lQb3BvdmVyLmlzTW91c2VFbnRlciA9IGZhbHNlO1xuICAgICAgICAgIGlmIChcbiAgICAgICAgICAgIHRoaXMuc2t5UG9wb3Zlci5pc0FjdGl2ZSAmJlxuICAgICAgICAgICAgdGhpcy5za3lQb3BvdmVyVHJpZ2dlciA9PT0gJ21vdXNlZW50ZXInXG4gICAgICAgICAgKSB7XG4gICAgICAgICAgICBpZiAoZG9jdW1lbnQuYWN0aXZlRWxlbWVudCAhPT0gZWxlbWVudCkge1xuICAgICAgICAgICAgICAvLyBHaXZlIHRoZSBwb3BvdmVyIGEgY2hhbmNlIHRvIHNldCBpdHMgaXNNb3VzZUVudGVyIGZsYWcgYmVmb3JlIGNoZWNraW5nIHRvIHNlZVxuICAgICAgICAgICAgICAvLyBpZiBpdCBzaG91bGQgYmUgY2xvc2VkLlxuICAgICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLiNjbG9zZVBvcG92ZXJPck1hcmtGb3JDbG9zZSgpO1xuICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0pO1xuXG4gICAgb2JzZXJ2YWJsZUZyb21FdmVudChlbGVtZW50LCAnZm9jdXNpbicpXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy4jbmdVbnN1YnNjcmliZSkpXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgaWYgKHRoaXMuc2t5UG9wb3Zlcikge1xuICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICF0aGlzLnNreVBvcG92ZXIuaXNBY3RpdmUgJiZcbiAgICAgICAgICAgIHRoaXMuc2t5UG9wb3ZlclRyaWdnZXIgPT09ICdtb3VzZWVudGVyJ1xuICAgICAgICAgICkge1xuICAgICAgICAgICAgdGhpcy4jc2VuZE1lc3NhZ2UoU2t5UG9wb3Zlck1lc3NhZ2VUeXBlLk9wZW4pO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSk7XG5cbiAgICBvYnNlcnZhYmxlRnJvbUV2ZW50KGVsZW1lbnQsICdmb2N1c291dCcpXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy4jbmdVbnN1YnNjcmliZSkpXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgaWYgKHRoaXMuc2t5UG9wb3Zlcikge1xuICAgICAgICAgIGlmIChcbiAgICAgICAgICAgIHRoaXMuc2t5UG9wb3Zlci5pc0FjdGl2ZSAmJlxuICAgICAgICAgICAgdGhpcy5za3lQb3BvdmVyVHJpZ2dlciA9PT0gJ21vdXNlZW50ZXInXG4gICAgICAgICAgKSB7XG4gICAgICAgICAgICB0aGlzLiNzZW5kTWVzc2FnZShTa3lQb3BvdmVyTWVzc2FnZVR5cGUuQ2xvc2UpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSk7XG4gIH1cblxuICAjcmVtb3ZlRXZlbnRMaXN0ZW5lcnMoKTogdm9pZCB7XG4gICAgdGhpcy4jbmdVbnN1YnNjcmliZS5uZXh0KCk7XG4gICAgdGhpcy4jbmdVbnN1YnNjcmliZS5jb21wbGV0ZSgpO1xuICB9XG5cbiAgI2hhbmRsZUluY29taW5nTWVzc2FnZXMobWVzc2FnZTogU2t5UG9wb3Zlck1lc3NhZ2UpOiB2b2lkIHtcbiAgICBzd2l0Y2ggKG1lc3NhZ2UudHlwZSkge1xuICAgICAgY2FzZSBTa3lQb3BvdmVyTWVzc2FnZVR5cGUuT3BlbjpcbiAgICAgICAgdGhpcy4jcG9zaXRpb25Qb3BvdmVyKCk7XG4gICAgICAgIGJyZWFrO1xuXG4gICAgICBjYXNlIFNreVBvcG92ZXJNZXNzYWdlVHlwZS5DbG9zZTpcbiAgICAgICAgLyppc3RhbmJ1bCBpZ25vcmUgZWxzZSovXG4gICAgICAgIGlmICh0aGlzLnNreVBvcG92ZXI/LmlzQWN0aXZlKSB7XG4gICAgICAgICAgdGhpcy4jY2xvc2VQb3BvdmVyKCk7XG4gICAgICAgIH1cbiAgICAgICAgYnJlYWs7XG5cbiAgICAgIGNhc2UgU2t5UG9wb3Zlck1lc3NhZ2VUeXBlLlJlcG9zaXRpb246XG4gICAgICAgIC8vIE9ubHkgcmVwb3NpdGlvbiB0aGUgcG9wb3ZlciBpZiBpdCBpcyBhbHJlYWR5IG9wZW4uXG4gICAgICAgIGlmICh0aGlzLnNreVBvcG92ZXI/LmlzQWN0aXZlKSB7XG4gICAgICAgICAgdGhpcy4jcG9zaXRpb25Qb3BvdmVyKCk7XG4gICAgICAgIH1cbiAgICAgICAgYnJlYWs7XG5cbiAgICAgIGNhc2UgU2t5UG9wb3Zlck1lc3NhZ2VUeXBlLkZvY3VzOlxuICAgICAgICB0aGlzLnNreVBvcG92ZXI/LmFwcGx5Rm9jdXMoKTtcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICB9XG5cbiAgI3NlbmRNZXNzYWdlKG1lc3NhZ2VUeXBlOiBTa3lQb3BvdmVyTWVzc2FnZVR5cGUpOiB2b2lkIHtcbiAgICB0aGlzLnNreVBvcG92ZXJNZXNzYWdlU3RyZWFtLm5leHQoeyB0eXBlOiBtZXNzYWdlVHlwZSB9KTtcbiAgfVxuXG4gICNzdWJzY3JpYmVNZXNzYWdlU3RyZWFtKCk6IHZvaWQge1xuICAgIHRoaXMuI3Vuc3Vic2NyaWJlTWVzc2FnZVN0cmVhbSgpO1xuXG4gICAgdGhpcy4jbWVzc2FnZVN0cmVhbVN1YiA9IHRoaXMuc2t5UG9wb3Zlck1lc3NhZ2VTdHJlYW0uc3Vic2NyaWJlKFxuICAgICAgKG1lc3NhZ2UpID0+IHtcbiAgICAgICAgdGhpcy4jaGFuZGxlSW5jb21pbmdNZXNzYWdlcyhtZXNzYWdlKTtcbiAgICAgIH0sXG4gICAgKTtcbiAgfVxuXG4gICN1bnN1YnNjcmliZU1lc3NhZ2VTdHJlYW0oKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuI21lc3NhZ2VTdHJlYW1TdWIpIHtcbiAgICAgIHRoaXMuI21lc3NhZ2VTdHJlYW1TdWIudW5zdWJzY3JpYmUoKTtcbiAgICAgIHRoaXMuI21lc3NhZ2VTdHJlYW1TdWIgPSB1bmRlZmluZWQ7XG4gICAgfVxuICB9XG59XG4iXX0=
@@ -1722,11 +1722,33 @@ class SkyPopoverDirective {
1722
1722
  this.skyPopover.isMouseEnter = false;
1723
1723
  if (this.skyPopover.isActive &&
1724
1724
  this.skyPopoverTrigger === 'mouseenter') {
1725
- // Give the popover a chance to set its isMouseEnter flag before checking to see
1726
- // if it should be closed.
1727
- setTimeout(() => {
1728
- this.#closePopoverOrMarkForClose();
1729
- });
1725
+ if (document.activeElement !== element) {
1726
+ // Give the popover a chance to set its isMouseEnter flag before checking to see
1727
+ // if it should be closed.
1728
+ setTimeout(() => {
1729
+ this.#closePopoverOrMarkForClose();
1730
+ });
1731
+ }
1732
+ }
1733
+ }
1734
+ });
1735
+ fromEvent(element, 'focusin')
1736
+ .pipe(takeUntil(this.#ngUnsubscribe))
1737
+ .subscribe(() => {
1738
+ if (this.skyPopover) {
1739
+ if (!this.skyPopover.isActive &&
1740
+ this.skyPopoverTrigger === 'mouseenter') {
1741
+ this.#sendMessage(SkyPopoverMessageType.Open);
1742
+ }
1743
+ }
1744
+ });
1745
+ fromEvent(element, 'focusout')
1746
+ .pipe(takeUntil(this.#ngUnsubscribe))
1747
+ .subscribe(() => {
1748
+ if (this.skyPopover) {
1749
+ if (this.skyPopover.isActive &&
1750
+ this.skyPopoverTrigger === 'mouseenter') {
1751
+ this.#sendMessage(SkyPopoverMessageType.Close);
1730
1752
  }
1731
1753
  }
1732
1754
  });