@datarailsshared/datarailsshared 1.5.531 → 1.5.533
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/datarailsshared-datarailsshared-1.5.533.tgz +0 -0
- package/esm2022/lib/dr-popover/dr-popover.directive.mjs +28 -1
- package/fesm2022/datarailsshared-datarailsshared.mjs +27 -0
- package/fesm2022/datarailsshared-datarailsshared.mjs.map +1 -1
- package/lib/dr-popover/dr-popover.directive.d.ts +2 -0
- package/package.json +1 -1
- package/datarailsshared-datarailsshared-1.5.531.tgz +0 -0
|
Binary file
|
|
@@ -15,6 +15,15 @@ export class DrPopoverDirective {
|
|
|
15
15
|
this.popoverClose = new EventEmitter();
|
|
16
16
|
this.popoverOpened = new EventEmitter();
|
|
17
17
|
this.showStateChange = new EventEmitter();
|
|
18
|
+
this.scrollHandler = (event) => {
|
|
19
|
+
// Find the nearest scrollable parent for which scrolling is possible
|
|
20
|
+
const isVerticalScroll = !event.shiftKey;
|
|
21
|
+
const scrollableElement = this.getScrollableElement(event.target, isVerticalScroll);
|
|
22
|
+
// Check if scroll possible and host element places inside scrollable element
|
|
23
|
+
if (scrollableElement && scrollableElement.contains(this.elementRef.nativeElement)) {
|
|
24
|
+
this.closePopover();
|
|
25
|
+
}
|
|
26
|
+
};
|
|
18
27
|
}
|
|
19
28
|
togglePopover() {
|
|
20
29
|
if (this.disabled)
|
|
@@ -31,6 +40,7 @@ export class DrPopoverDirective {
|
|
|
31
40
|
if (this.popoverRef) {
|
|
32
41
|
this.popoverRef.close(res);
|
|
33
42
|
this.popoverRef = null;
|
|
43
|
+
window.removeEventListener('wheel', this.scrollHandler);
|
|
34
44
|
}
|
|
35
45
|
}
|
|
36
46
|
renderPopover() {
|
|
@@ -52,10 +62,27 @@ export class DrPopoverDirective {
|
|
|
52
62
|
popoverRef.componentRef.instance.popoverOpened.pipe(first()).subscribe(() => {
|
|
53
63
|
this.popoverOpened.emit();
|
|
54
64
|
});
|
|
65
|
+
if (!this.manualClosing?.enabled && !this.freezeToContainerSelector) {
|
|
66
|
+
window.addEventListener('wheel', this.scrollHandler);
|
|
67
|
+
}
|
|
55
68
|
}
|
|
56
69
|
ngOnDestroy() {
|
|
57
70
|
this.closePopover();
|
|
58
71
|
}
|
|
72
|
+
getScrollableElement(element, isVerticalScroll) {
|
|
73
|
+
while (element) {
|
|
74
|
+
const overflow = isVerticalScroll
|
|
75
|
+
? window.getComputedStyle(element).overflowY
|
|
76
|
+
: window.getComputedStyle(element).overflowX;
|
|
77
|
+
const isScrollable = ['auto', 'scroll'].includes(overflow) &&
|
|
78
|
+
(isVerticalScroll ? element.scrollHeight > element.clientHeight : element.scrollWidth > element.clientWidth);
|
|
79
|
+
if (isScrollable) {
|
|
80
|
+
return element;
|
|
81
|
+
}
|
|
82
|
+
element = element.parentElement;
|
|
83
|
+
}
|
|
84
|
+
return null;
|
|
85
|
+
}
|
|
59
86
|
/** @nocollapse */ static { this.ɵfac = function DrPopoverDirective_Factory(t) { return new (t || DrPopoverDirective)(i0.ɵɵdirectiveInject(i0.ElementRef), i0.ɵɵdirectiveInject(i1.DrPopoverService)); }; }
|
|
60
87
|
/** @nocollapse */ static { this.ɵdir = /** @pureOrBreakMyCode */ i0.ɵɵdefineDirective({ type: DrPopoverDirective, selectors: [["", "drPopover", ""]], hostBindings: function DrPopoverDirective_HostBindings(rf, ctx) { if (rf & 1) {
|
|
61
88
|
i0.ɵɵlistener("click", function DrPopoverDirective_click_HostBindingHandler() { return ctx.togglePopover(); });
|
|
@@ -107,4 +134,4 @@ export class DrPopoverDirective {
|
|
|
107
134
|
type: HostListener,
|
|
108
135
|
args: ['click']
|
|
109
136
|
}] }); })();
|
|
110
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHItcG9wb3Zlci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kYXRhcmFpbHNzaGFyZWQvc3JjL2xpYi9kci1wb3BvdmVyL2RyLXBvcG92ZXIuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFhLE1BQU0sRUFBcUIsTUFBTSxlQUFlLENBQUM7QUFDL0gsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBR3ZDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDOzs7QUFPeEQsTUFBTSxPQUFPLGtCQUFrQjtJQTJCM0IsWUFDWSxVQUFzQixFQUN0QixnQkFBa0M7UUFEbEMsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUN0QixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBMUJuQixtQkFBYyxHQUFlLEVBQWdCLENBQUM7UUFFN0MsYUFBUSxHQUFlLFFBQVEsQ0FBQztRQUVuQyxVQUFLLEdBQUcsRUFBRSxDQUFDO1FBRUgsa0JBQWEsR0FBb0IsRUFBRSxDQUFDO1FBRXBDLGtCQUFhLEdBQTBCLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxDQUFDO1FBUWpFLGlCQUFZLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUV0QyxrQkFBYSxHQUFHLElBQUksWUFBWSxFQUFRLENBQUM7UUFFaEMsb0JBQWUsR0FBRyxJQUFJLFlBQVksRUFBd0IsQ0FBQztJQU81RixDQUFDO0lBR0osYUFBYTtRQUNULElBQUksSUFBSSxDQUFDLFFBQVE7WUFBRSxPQUFPO1FBRTFCLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRTtZQUNqQixJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7U0FDdkI7YUFBTTtZQUNILElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUNyQixJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUM7U0FDN0Q7SUFDTCxDQUFDO0lBRUQsWUFBWSxDQUFDLEdBQVM7UUFDbEIsSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFO1lBQ2pCLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQzNCLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO1NBQzFCO0lBQ0wsQ0FBQztJQUVPLGFBQWE7UUFDakIsTUFBTSxVQUFVLEdBQUcsQ0FBQyxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUMzRSxPQUFPLEVBQUUsSUFBSSxDQUFDLFVBQVU7WUFDeEIsYUFBYSxFQUFFLElBQUksQ0FBQyxhQUFhO1lBQ2pDLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSztZQUNqQixhQUFhLEVBQUUsSUFBSSxDQUFDLGFBQWE7WUFDakMsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRO1lBQ3ZCLGNBQWMsRUFBRSxJQUFJLENBQUMsY0FBYztZQUNuQyxTQUFTLEVBQUUsSUFBSSxDQUFDLFNBQVM7WUFDekIseUJBQXlCLEVBQUUsSUFBSSxDQUFDLHlCQUF5QjtTQUM1RCxDQUFDLENBQUMsQ0FBQztRQUVKLFVBQVUsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUU7WUFDL0MsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQ3BCLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQzVCLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQztRQUM5RCxDQUFDLENBQUMsQ0FBQztRQUVILFVBQVUsQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ3hFLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDOUIsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsV0FBVztRQUNQLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN4QixDQUFDO3NHQTVFUSxrQkFBa0I7bUdBQWxCLGtCQUFrQjttR0FBbEIsbUJBQWU7Ozt1RkFBZixrQkFBa0I7Y0FKOUIsU0FBUztlQUFDO2dCQUNQLFFBQVEsRUFBRSxhQUFhO2dCQUN2QixRQUFRLEVBQUUsbUJBQW1CO2FBQ2hDOzRGQUV1QixPQUFPO2tCQUExQixLQUFLO21CQUFDLFdBQVc7WUFFUyxjQUFjO2tCQUF4QyxLQUFLO21CQUFDLGtCQUFrQjtZQUVHLFFBQVE7a0JBQW5DLEtBQUs7bUJBQUMsbUJBQW1CO1lBRUQsS0FBSztrQkFBN0IsS0FBSzttQkFBQyxnQkFBZ0I7WUFFVSxhQUFhO2tCQUE3QyxLQUFLO21CQUFDLHdCQUF3QjtZQUVFLGFBQWE7a0JBQTdDLEtBQUs7bUJBQUMsd0JBQXdCO1lBRUYsU0FBUztrQkFBckMsS0FBSzttQkFBQyxvQkFBb0I7WUFFQyxRQUFRO2tCQUFuQyxLQUFLO21CQUFDLG1CQUFtQjtZQUVtQix5QkFBeUI7a0JBQXJFLEtBQUs7bUJBQUMsb0NBQW9DO1lBRWpCLFlBQVk7a0JBQXJDLE1BQU07bUJBQUMsZ0JBQWdCO1lBRUcsYUFBYTtrQkFBdkMsTUFBTTttQkFBQyxpQkFBaUI7WUFFVyxlQUFlO2tCQUFsRCxNQUFNO21CQUFDLDBCQUEwQjtZQVVsQyxhQUFhO2tCQURaLFlBQVk7bUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBIb3N0TGlzdGVuZXIsIElucHV0LCBPbkRlc3Ryb3ksIE91dHB1dCwgVGVtcGxhdGVSZWYsIFR5cGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGZpcnN0IH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgRWxQb3NpdGlvbiB9IGZyb20gJy4vLi4vbW9kZWxzL2Ryb3Bkb3duJztcbmltcG9ydCB7IERyUG9wb3ZlclJlZiB9IGZyb20gJy4vZHItcG9wb3Zlci1yZWYnO1xuaW1wb3J0IHsgRHJQb3BvdmVyU2VydmljZSB9IGZyb20gJy4vZHItcG9wb3Zlci5zZXJ2aWNlJztcbmltcG9ydCB7IERyUG9wb3ZlckFsaWdubWVudCwgRHJQb3BvdmVyQ29uZmlnLCBJUG9wb3Zlck1hbnVhbENsb3NpbmcgfSBmcm9tICcuLi9tb2RlbHMvcG9wb3Zlcic7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW2RyUG9wb3Zlcl0nLFxuICAgIGV4cG9ydEFzOiAnZHJQb3BvdmVySW5zdGFuY2UnLFxufSlcbmV4cG9ydCBjbGFzcyBEclBvcG92ZXJEaXJlY3RpdmU8VD4gaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICAgIEBJbnB1dCgnZHJQb3BvdmVyJykgY29udGVudDogVGVtcGxhdGVSZWY8VD4gfCBUeXBlPFQ+O1xuXG4gICAgQElucHV0KCdkclBvcG92ZXJDb250ZXh0JykgY29udGVudENvbnRleHQ6IFBhcnRpYWw8VD4gPSB7fSBhcyBQYXJ0aWFsPFQ+O1xuXG4gICAgQElucHV0KCdkclBvcG92ZXJQb3NpdGlvbicpIHBvc2l0aW9uOiBFbFBvc2l0aW9uID0gJ2JvdHRvbSc7XG5cbiAgICBASW5wdXQoJ2RyUG9wb3ZlckNsYXNzJykgY2xhc3MgPSAnJztcblxuICAgIEBJbnB1dCgnZHJQb3BvdmVyT3ZlcmxheUNvbmZpZycpIG92ZXJsYXlDb25maWc6IERyUG9wb3ZlckNvbmZpZyA9IHt9O1xuXG4gICAgQElucHV0KCdkclBvcG92ZXJNYW51YWxDbG9zaW5nJykgbWFudWFsQ2xvc2luZzogSVBvcG92ZXJNYW51YWxDbG9zaW5nID0geyBlbmFibGVkOiBmYWxzZSB9O1xuXG4gICAgQElucHV0KCdkclBvcG92ZXJBbGlnbm1lbnQnKSBhbGlnbm1lbnQ6IERyUG9wb3ZlckFsaWdubWVudDtcblxuICAgIEBJbnB1dCgnZHJQb3BvdmVyRGlzYWJsZWQnKSBkaXNhYmxlZDogYm9vbGVhbjtcblxuICAgIEBJbnB1dCgnZHJQb3BvdmVyRnJlZXplVG9Db250YWluZXJTZWxlY3RvcicpIGZyZWV6ZVRvQ29udGFpbmVyU2VsZWN0b3I6IHN0cmluZztcblxuICAgIEBPdXRwdXQoJ2RyUG9wb3ZlckNsb3NlJykgcG9wb3ZlckNsb3NlID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgICBAT3V0cHV0KCdkclBvcG92ZXJPcGVuZWQnKSBwb3BvdmVyT3BlbmVkID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gICAgQE91dHB1dCgnZHJQb3BvdmVyU2hvd1N0YXRlQ2hhbmdlJykgc2hvd1N0YXRlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjx7IGlzU2hvd246IGJvb2xlYW4gfT4oKTtcblxuICAgIHByaXZhdGUgcG9wb3ZlclJlZjogRHJQb3BvdmVyUmVmPFQ+O1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgZWxlbWVudFJlZjogRWxlbWVudFJlZixcbiAgICAgICAgcHJpdmF0ZSBkclBvcG92ZXJTZXJ2aWNlOiBEclBvcG92ZXJTZXJ2aWNlLFxuICAgICkge31cblxuICAgIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJylcbiAgICB0b2dnbGVQb3BvdmVyKCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5kaXNhYmxlZCkgcmV0dXJuO1xuXG4gICAgICAgIGlmICh0aGlzLnBvcG92ZXJSZWYpIHtcbiAgICAgICAgICAgIHRoaXMuY2xvc2VQb3BvdmVyKCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLnJlbmRlclBvcG92ZXIoKTtcbiAgICAgICAgICAgIHRoaXMuc2hvd1N0YXRlQ2hhbmdlLmVtaXQoeyBpc1Nob3duOiAhIXRoaXMucG9wb3ZlclJlZiB9KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGNsb3NlUG9wb3ZlcihyZXM/OiBhbnkpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMucG9wb3ZlclJlZikge1xuICAgICAgICAgICAgdGhpcy5wb3BvdmVyUmVmLmNsb3NlKHJlcyk7XG4gICAgICAgICAgICB0aGlzLnBvcG92ZXJSZWYgPSBudWxsO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSByZW5kZXJQb3BvdmVyKCk6IHZvaWQge1xuICAgICAgICBjb25zdCBwb3BvdmVyUmVmID0gKHRoaXMucG9wb3ZlclJlZiA9IHRoaXMuZHJQb3BvdmVyU2VydmljZS5vcGVuKHRoaXMuY29udGVudCwge1xuICAgICAgICAgICAgaG9zdFJlZjogdGhpcy5lbGVtZW50UmVmLFxuICAgICAgICAgICAgb3ZlcmxheUNvbmZpZzogdGhpcy5vdmVybGF5Q29uZmlnLFxuICAgICAgICAgICAgY2xhc3M6IHRoaXMuY2xhc3MsXG4gICAgICAgICAgICBtYW51YWxDbG9zaW5nOiB0aGlzLm1hbnVhbENsb3NpbmcsXG4gICAgICAgICAgICBwb3NpdGlvbjogdGhpcy5wb3NpdGlvbixcbiAgICAgICAgICAgIGNvbnRlbnRDb250ZXh0OiB0aGlzLmNvbnRlbnRDb250ZXh0LFxuICAgICAgICAgICAgYWxpZ25tZW50OiB0aGlzLmFsaWdubWVudCxcbiAgICAgICAgICAgIGZyZWV6ZVRvQ29udGFpbmVyU2VsZWN0b3I6IHRoaXMuZnJlZXplVG9Db250YWluZXJTZWxlY3RvcixcbiAgICAgICAgfSkpO1xuXG4gICAgICAgIHBvcG92ZXJSZWYub25DbG9zZS5waXBlKGZpcnN0KCkpLnN1YnNjcmliZSgocmVzKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmNsb3NlUG9wb3ZlcigpO1xuICAgICAgICAgICAgdGhpcy5wb3BvdmVyQ2xvc2UuZW1pdChyZXMpO1xuICAgICAgICAgICAgdGhpcy5zaG93U3RhdGVDaGFuZ2UuZW1pdCh7IGlzU2hvd246ICEhdGhpcy5wb3BvdmVyUmVmIH0pO1xuICAgICAgICB9KTtcblxuICAgICAgICBwb3BvdmVyUmVmLmNvbXBvbmVudFJlZi5pbnN0YW5jZS5wb3BvdmVyT3BlbmVkLnBpcGUoZmlyc3QoKSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMucG9wb3Zlck9wZW5lZC5lbWl0KCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNsb3NlUG9wb3ZlcigpO1xuICAgIH1cbn1cbiJdfQ==
|
|
137
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHItcG9wb3Zlci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kYXRhcmFpbHNzaGFyZWQvc3JjL2xpYi9kci1wb3BvdmVyL2RyLXBvcG92ZXIuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFhLE1BQU0sRUFBcUIsTUFBTSxlQUFlLENBQUM7QUFDL0gsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBR3ZDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDOzs7QUFPeEQsTUFBTSxPQUFPLGtCQUFrQjtJQTJCM0IsWUFDWSxVQUFzQixFQUN0QixnQkFBa0M7UUFEbEMsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUN0QixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBMUJuQixtQkFBYyxHQUFlLEVBQWdCLENBQUM7UUFFN0MsYUFBUSxHQUFlLFFBQVEsQ0FBQztRQUVuQyxVQUFLLEdBQUcsRUFBRSxDQUFDO1FBRUgsa0JBQWEsR0FBb0IsRUFBRSxDQUFDO1FBRXBDLGtCQUFhLEdBQTBCLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxDQUFDO1FBUWpFLGlCQUFZLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUV0QyxrQkFBYSxHQUFHLElBQUksWUFBWSxFQUFRLENBQUM7UUFFaEMsb0JBQWUsR0FBRyxJQUFJLFlBQVksRUFBd0IsQ0FBQztRQTREdkYsa0JBQWEsR0FBRyxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQzlCLHFFQUFxRTtZQUNyRSxNQUFNLGdCQUFnQixHQUFHLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQztZQUN6QyxNQUFNLGlCQUFpQixHQUFHLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxLQUFLLENBQUMsTUFB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QUFDLGlCQUFpQjtZQUVXLGVBQWU7a0JBQWxELE1BQU07bUJBQUMsMEJBQTBCO1lBVWxDLGFBQWE7a0JBRFosWUFBWTttQkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIEhvc3RMaXN0ZW5lciwgSW5wdXQsIE9uRGVzdHJveSwgT3V0cHV0LCBUZW1wbGF0ZVJlZiwgVHlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgZmlyc3QgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBFbFBvc2l0aW9uIH0gZnJvbSAnLi8uLi9tb2RlbHMvZHJvcGRvd24nO1xuaW1wb3J0IHsgRHJQb3BvdmVyUmVmIH0gZnJvbSAnLi9kci1wb3BvdmVyLXJlZic7XG5pbXBvcnQgeyBEclBvcG92ZXJTZXJ2aWNlIH0gZnJvbSAnLi9kci1wb3BvdmVyLnNlcnZpY2UnO1xuaW1wb3J0IHsgRHJQb3BvdmVyQWxpZ25tZW50LCBEclBvcG92ZXJDb25maWcsIElQb3BvdmVyTWFudWFsQ2xvc2luZyB9IGZyb20gJy4uL21vZGVscy9wb3BvdmVyJztcblxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdbZHJQb3BvdmVyXScsXG4gICAgZXhwb3J0QXM6ICdkclBvcG92ZXJJbnN0YW5jZScsXG59KVxuZXhwb3J0IGNsYXNzIERyUG9wb3ZlckRpcmVjdGl2ZTxUPiBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gICAgQElucHV0KCdkclBvcG92ZXInKSBjb250ZW50OiBUZW1wbGF0ZVJlZjxUPiB8IFR5cGU8VD47XG5cbiAgICBASW5wdXQoJ2RyUG9wb3ZlckNvbnRleHQnKSBjb250ZW50Q29udGV4dDogUGFydGlhbDxUPiA9IHt9IGFzIFBhcnRpYWw8VD47XG5cbiAgICBASW5wdXQoJ2RyUG9wb3ZlclBvc2l0aW9uJykgcG9zaXRpb246IEVsUG9zaXRpb24gPSAnYm90dG9tJztcblxuICAgIEBJbnB1dCgnZHJQb3BvdmVyQ2xhc3MnKSBjbGFzcyA9ICcnO1xuXG4gICAgQElucHV0KCdkclBvcG92ZXJPdmVybGF5Q29uZmlnJykgb3ZlcmxheUNvbmZpZzogRHJQb3BvdmVyQ29uZmlnID0ge307XG5cbiAgICBASW5wdXQoJ2RyUG9wb3Zlck1hbnVhbENsb3NpbmcnKSBtYW51YWxDbG9zaW5nOiBJUG9wb3Zlck1hbnVhbENsb3NpbmcgPSB7IGVuYWJsZWQ6IGZhbHNlIH07XG5cbiAgICBASW5wdXQoJ2RyUG9wb3ZlckFsaWdubWVudCcpIGFsaWdubWVudDogRHJQb3BvdmVyQWxpZ25tZW50O1xuXG4gICAgQElucHV0KCdkclBvcG92ZXJEaXNhYmxlZCcpIGRpc2FibGVkOiBib29sZWFuO1xuXG4gICAgQElucHV0KCdkclBvcG92ZXJGcmVlemVUb0NvbnRhaW5lclNlbGVjdG9yJykgZnJlZXplVG9Db250YWluZXJTZWxlY3Rvcjogc3RyaW5nO1xuXG4gICAgQE91dHB1dCgnZHJQb3BvdmVyQ2xvc2UnKSBwb3BvdmVyQ2xvc2UgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICAgIEBPdXRwdXQoJ2RyUG9wb3Zlck9wZW5lZCcpIHBvcG92ZXJPcGVuZWQgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgICBAT3V0cHV0KCdkclBvcG92ZXJTaG93U3RhdGVDaGFuZ2UnKSBzaG93U3RhdGVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPHsgaXNTaG93bjogYm9vbGVhbiB9PigpO1xuXG4gICAgcHJpdmF0ZSBwb3BvdmVyUmVmOiBEclBvcG92ZXJSZWY8VD47XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBlbGVtZW50UmVmOiBFbGVtZW50UmVmLFxuICAgICAgICBwcml2YXRlIGRyUG9wb3ZlclNlcnZpY2U6IERyUG9wb3ZlclNlcnZpY2UsXG4gICAgKSB7fVxuXG4gICAgQEhvc3RMaXN0ZW5lcignY2xpY2snKVxuICAgIHRvZ2dsZVBvcG92ZXIoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmRpc2FibGVkKSByZXR1cm47XG5cbiAgICAgICAgaWYgKHRoaXMucG9wb3ZlclJlZikge1xuICAgICAgICAgICAgdGhpcy5jbG9zZVBvcG92ZXIoKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMucmVuZGVyUG9wb3ZlcigpO1xuICAgICAgICAgICAgdGhpcy5zaG93U3RhdGVDaGFuZ2UuZW1pdCh7IGlzU2hvd246ICEhdGhpcy5wb3BvdmVyUmVmIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgY2xvc2VQb3BvdmVyKHJlcz86IGFueSk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5wb3BvdmVyUmVmKSB7XG4gICAgICAgICAgICB0aGlzLnBvcG92ZXJSZWYuY2xvc2UocmVzKTtcbiAgICAgICAgICAgIHRoaXMucG9wb3ZlclJlZiA9IG51bGw7XG4gICAgICAgICAgICB3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcignd2hlZWwnLCB0aGlzLnNjcm9sbEhhbmRsZXIpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSByZW5kZXJQb3BvdmVyKCk6IHZvaWQge1xuICAgICAgICBjb25zdCBwb3BvdmVyUmVmID0gKHRoaXMucG9wb3ZlclJlZiA9IHRoaXMuZHJQb3BvdmVyU2VydmljZS5vcGVuKHRoaXMuY29udGVudCwge1xuICAgICAgICAgICAgaG9zdFJlZjogdGhpcy5lbGVtZW50UmVmLFxuICAgICAgICAgICAgb3ZlcmxheUNvbmZpZzogdGhpcy5vdmVybGF5Q29uZmlnLFxuICAgICAgICAgICAgY2xhc3M6IHRoaXMuY2xhc3MsXG4gICAgICAgICAgICBtYW51YWxDbG9zaW5nOiB0aGlzLm1hbnVhbENsb3NpbmcsXG4gICAgICAgICAgICBwb3NpdGlvbjogdGhpcy5wb3NpdGlvbixcbiAgICAgICAgICAgIGNvbnRlbnRDb250ZXh0OiB0aGlzLmNvbnRlbnRDb250ZXh0LFxuICAgICAgICAgICAgYWxpZ25tZW50OiB0aGlzLmFsaWdubWVudCxcbiAgICAgICAgICAgIGZyZWV6ZVRvQ29udGFpbmVyU2VsZWN0b3I6IHRoaXMuZnJlZXplVG9Db250YWluZXJTZWxlY3RvcixcbiAgICAgICAgfSkpO1xuXG4gICAgICAgIHBvcG92ZXJSZWYub25DbG9zZS5waXBlKGZpcnN0KCkpLnN1YnNjcmliZSgocmVzKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmNsb3NlUG9wb3ZlcigpO1xuICAgICAgICAgICAgdGhpcy5wb3BvdmVyQ2xvc2UuZW1pdChyZXMpO1xuICAgICAgICAgICAgdGhpcy5zaG93U3RhdGVDaGFuZ2UuZW1pdCh7IGlzU2hvd246ICEhdGhpcy5wb3BvdmVyUmVmIH0pO1xuICAgICAgICB9KTtcblxuICAgICAgICBwb3BvdmVyUmVmLmNvbXBvbmVudFJlZi5pbnN0YW5jZS5wb3BvdmVyT3BlbmVkLnBpcGUoZmlyc3QoKSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMucG9wb3Zlck9wZW5lZC5lbWl0KCk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIGlmICghdGhpcy5tYW51YWxDbG9zaW5nPy5lbmFibGVkICYmICF0aGlzLmZyZWV6ZVRvQ29udGFpbmVyU2VsZWN0b3IpIHtcbiAgICAgICAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCd3aGVlbCcsIHRoaXMuc2Nyb2xsSGFuZGxlcik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jbG9zZVBvcG92ZXIoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNjcm9sbEhhbmRsZXIgPSAoZXZlbnQpID0+IHtcbiAgICAgICAgLy8gRmluZCB0aGUgbmVhcmVzdCBzY3JvbGxhYmxlIHBhcmVudCBmb3Igd2hpY2ggc2Nyb2xsaW5nIGlzIHBvc3NpYmxlXG4gICAgICAgIGNvbnN0IGlzVmVydGljYWxTY3JvbGwgPSAhZXZlbnQuc2hpZnRLZXk7XG4gICAgICAgIGNvbnN0IHNjcm9sbGFibGVFbGVtZW50ID0gdGhpcy5nZXRTY3JvbGxhYmxlRWxlbWVudChldmVudC50YXJnZXQgYXMgSFRNTEVsZW1lbnQsIGlzVmVydGljYWxTY3JvbGwpO1xuXG4gICAgICAgIC8vIENoZWNrIGlmIHNjcm9sbCBwb3NzaWJsZSBhbmQgaG9zdCBlbGVtZW50IHBsYWNlcyBpbnNpZGUgc2Nyb2xsYWJsZSBlbGVtZW50XG4gICAgICAgIGlmIChzY3JvbGxhYmxlRWxlbWVudCAmJiBzY3JvbGxhYmxlRWxlbWVudC5jb250YWlucyh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCkpIHtcbiAgICAgICAgICAgIHRoaXMuY2xvc2VQb3BvdmVyKCk7XG4gICAgICAgIH1cbiAgICB9O1xuXG4gICAgZ2V0U2Nyb2xsYWJsZUVsZW1lbnQoZWxlbWVudDogSFRNTEVsZW1lbnQgfCBudWxsLCBpc1ZlcnRpY2FsU2Nyb2xsKTogSFRNTEVsZW1lbnQgfCBudWxsIHtcbiAgICAgICAgd2hpbGUgKGVsZW1lbnQpIHtcbiAgICAgICAgICAgIGNvbnN0IG92ZXJmbG93ID0gaXNWZXJ0aWNhbFNjcm9sbFxuICAgICAgICAgICAgICAgID8gd2luZG93LmdldENvbXB1dGVkU3R5bGUoZWxlbWVudCkub3ZlcmZsb3dZXG4gICAgICAgICAgICAgICAgOiB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShlbGVtZW50KS5vdmVyZmxvd1g7XG4gICAgICAgICAgICBjb25zdCBpc1Njcm9sbGFibGUgPVxuICAgICAgICAgICAgICAgIFsnYXV0bycsICdzY3JvbGwnXS5pbmNsdWRlcyhvdmVyZmxvdykgJiZcbiAgICAgICAgICAgICAgICAoaXNWZXJ0aWNhbFNjcm9sbCA/IGVsZW1lbnQuc2Nyb2xsSGVpZ2h0ID4gZWxlbWVudC5jbGllbnRIZWlnaHQgOiBlbGVtZW50LnNjcm9sbFdpZHRoID4gZWxlbWVudC5jbGllbnRXaWR0aCk7XG5cbiAgICAgICAgICAgIGlmIChpc1Njcm9sbGFibGUpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gZWxlbWVudDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgZWxlbWVudCA9IGVsZW1lbnQucGFyZW50RWxlbWVudDtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -8248,6 +8248,15 @@ class DrPopoverDirective {
|
|
|
8248
8248
|
this.popoverClose = new EventEmitter();
|
|
8249
8249
|
this.popoverOpened = new EventEmitter();
|
|
8250
8250
|
this.showStateChange = new EventEmitter();
|
|
8251
|
+
this.scrollHandler = (event) => {
|
|
8252
|
+
// Find the nearest scrollable parent for which scrolling is possible
|
|
8253
|
+
const isVerticalScroll = !event.shiftKey;
|
|
8254
|
+
const scrollableElement = this.getScrollableElement(event.target, isVerticalScroll);
|
|
8255
|
+
// Check if scroll possible and host element places inside scrollable element
|
|
8256
|
+
if (scrollableElement && scrollableElement.contains(this.elementRef.nativeElement)) {
|
|
8257
|
+
this.closePopover();
|
|
8258
|
+
}
|
|
8259
|
+
};
|
|
8251
8260
|
}
|
|
8252
8261
|
togglePopover() {
|
|
8253
8262
|
if (this.disabled)
|
|
@@ -8264,6 +8273,7 @@ class DrPopoverDirective {
|
|
|
8264
8273
|
if (this.popoverRef) {
|
|
8265
8274
|
this.popoverRef.close(res);
|
|
8266
8275
|
this.popoverRef = null;
|
|
8276
|
+
window.removeEventListener('wheel', this.scrollHandler);
|
|
8267
8277
|
}
|
|
8268
8278
|
}
|
|
8269
8279
|
renderPopover() {
|
|
@@ -8285,10 +8295,27 @@ class DrPopoverDirective {
|
|
|
8285
8295
|
popoverRef.componentRef.instance.popoverOpened.pipe(first()).subscribe(() => {
|
|
8286
8296
|
this.popoverOpened.emit();
|
|
8287
8297
|
});
|
|
8298
|
+
if (!this.manualClosing?.enabled && !this.freezeToContainerSelector) {
|
|
8299
|
+
window.addEventListener('wheel', this.scrollHandler);
|
|
8300
|
+
}
|
|
8288
8301
|
}
|
|
8289
8302
|
ngOnDestroy() {
|
|
8290
8303
|
this.closePopover();
|
|
8291
8304
|
}
|
|
8305
|
+
getScrollableElement(element, isVerticalScroll) {
|
|
8306
|
+
while (element) {
|
|
8307
|
+
const overflow = isVerticalScroll
|
|
8308
|
+
? window.getComputedStyle(element).overflowY
|
|
8309
|
+
: window.getComputedStyle(element).overflowX;
|
|
8310
|
+
const isScrollable = ['auto', 'scroll'].includes(overflow) &&
|
|
8311
|
+
(isVerticalScroll ? element.scrollHeight > element.clientHeight : element.scrollWidth > element.clientWidth);
|
|
8312
|
+
if (isScrollable) {
|
|
8313
|
+
return element;
|
|
8314
|
+
}
|
|
8315
|
+
element = element.parentElement;
|
|
8316
|
+
}
|
|
8317
|
+
return null;
|
|
8318
|
+
}
|
|
8292
8319
|
/** @nocollapse */ static { this.ɵfac = function DrPopoverDirective_Factory(t) { return new (t || DrPopoverDirective)(i0.ɵɵdirectiveInject(i0.ElementRef), i0.ɵɵdirectiveInject(DrPopoverService)); }; }
|
|
8293
8320
|
/** @nocollapse */ static { this.ɵdir = /** @pureOrBreakMyCode */ i0.ɵɵdefineDirective({ type: DrPopoverDirective, selectors: [["", "drPopover", ""]], hostBindings: function DrPopoverDirective_HostBindings(rf, ctx) { if (rf & 1) {
|
|
8294
8321
|
i0.ɵɵlistener("click", function DrPopoverDirective_click_HostBindingHandler() { return ctx.togglePopover(); });
|