(node: Element, checkForOverflow?: boolean)
| 13 | import {isScrollable} from './isScrollable'; |
| 14 | |
| 15 | export function getScrollParent(node: Element, checkForOverflow?: boolean): Element { |
| 16 | let scrollableNode: Element | null = node; |
| 17 | if (isScrollable(scrollableNode, checkForOverflow)) { |
| 18 | scrollableNode = scrollableNode.parentElement; |
| 19 | } |
| 20 | |
| 21 | while (scrollableNode && !isScrollable(scrollableNode, checkForOverflow)) { |
| 22 | scrollableNode = scrollableNode.parentElement; |
| 23 | } |
| 24 | |
| 25 | return scrollableNode || document.scrollingElement || document.documentElement; |
| 26 | } |
no test coverage detected