@boomerang-io/utils
Version:
A library of reusable utilities and hooks for React webapps on the Boomerang platform.
30 lines (28 loc) • 826 B
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = useWindowDimensions;
var _react = require("react");
//Source: https://stackoverflow.com/questions/36862334/get-viewport-window-height-in-reactjs
function getWindowDimensions() {
const {
innerWidth: viewportWidth,
innerHeight: viewportHeight
} = window;
return {
viewportWidth,
viewportHeight
};
}
function useWindowDimensions() {
const [windowDimensions, setWindowDimensions] = (0, _react.useState)(getWindowDimensions());
(0, _react.useEffect)(() => {
function handleResize() {
setWindowDimensions(getWindowDimensions());
}
window.addEventListener("resize", handleResize);
return () => window.removeEventListener("resize", handleResize);
}, []);
return windowDimensions;
}