@onwave/ui
Version:
onwave ui library
23 lines • 779 B
JavaScript
import { useEffect, useState } from "react";
export var useWindowSize = function () {
var isClient = typeof window === "object";
function getSize() {
return {
width: isClient ? window.innerWidth : undefined,
height: isClient ? window.innerHeight : undefined,
};
}
var _a = useState(getSize), windowSize = _a[0], setWindowSize = _a[1];
function handleResize() {
setWindowSize(getSize());
}
useEffect(function () {
if (!isClient) {
return;
}
window.addEventListener("resize", handleResize);
return function () { return window.removeEventListener("resize", handleResize); };
}, [isClient]);
return windowSize;
};
//# sourceMappingURL=useWindowSize.js.map