UNPKG

test-nut-ui

Version:

<p align="center"> <img alt="logo" src="https://img11.360buyimg.com/imagetools/jfs/t1/211965/25/7152/22022/61b16785E433119bb/aa41d7a9f7e823f3.png" width="150" style="margin-bottom: 10px;"> </p>

27 lines (26 loc) 928 B
var canUseDom = !!(typeof window !== "undefined" && typeof document !== "undefined" && window.document && window.document.createElement); var defaultRoot = canUseDom ? window : void 0; var overflowStylePatterns = ["scroll", "auto", "overlay"]; function isElement(node) { var ELEMENT_NODE_TYPE = 1; return node.nodeType === ELEMENT_NODE_TYPE; } function getScrollParent(el) { var root = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : defaultRoot; var node = el; while (node && node !== root && isElement(node)) { if (node === document.body) { return root; } var _window$getComputedSt = window.getComputedStyle(node), overflowY = _window$getComputedSt.overflowY; if (overflowStylePatterns.includes(overflowY) && node.scrollHeight > node.clientHeight) { return node; } node = node.parentNode; } return root; } export { canUseDom as c, getScrollParent as g };