export function findScrollContainer(element: HTMLElement | null) { if (!element) { return undefined } if ( typeof globalThis.getComputedStyle !== 'function' || typeof document === 'undefined' ) { return undefined } let parent = element.parentElement while (parent) { const { overflow } = globalThis.getComputedStyle(parent) if (overflow.split(' ').every(item => item === 'auto' || item === 'scroll')) { return parent } parent = parent.parentElement } return document.documentElement }