UNPKG

tdesign-react

Version:
43 lines (39 loc) 1.27 kB
/** * tdesign v1.11.6 * (c) 2025 tdesign * @license MIT */ import { _ as _slicedToArray } from '../_chunks/dep-889449c8.js'; import { _ as _typeof } from '../_chunks/dep-9a3c539e.js'; import { useCallback, useState, useEffect } from 'react'; import { debounce } from 'lodash-es'; import '../_chunks/dep-901cf2d8.js'; function useWindowSize() { var validWindow = (typeof window === "undefined" ? "undefined" : _typeof(window)) === "object"; var getSize = useCallback(function () { return { width: validWindow ? window.innerWidth : void 0, height: validWindow ? window.innerHeight : void 0 }; }, [validWindow]); var _useState = useState(getSize), _useState2 = _slicedToArray(_useState, 2), size = _useState2[0], setSize = _useState2[1]; useEffect(function () { function handleResize() { setSize(getSize()); } var debounceResize = debounce(handleResize, 400); if (validWindow) { window.addEventListener("resize", debounceResize); return function () { window.removeEventListener("resize", debounceResize); debounceResize.cancel(); }; } }, [getSize, validWindow]); return size; } export { useWindowSize as default }; //# sourceMappingURL=useWindowSize.js.map