summaryrefslogtreecommitdiff
path: root/src/utils.js
diff options
context:
space:
mode:
Diffstat (limited to 'src/utils.js')
-rw-r--r--src/utils.js21
1 files changed, 21 insertions, 0 deletions
diff --git a/src/utils.js b/src/utils.js
new file mode 100644
index 0000000..8deba50
--- /dev/null
+++ b/src/utils.js
@@ -0,0 +1,21 @@
+import { useState, useEffect } from 'react';
+
+function getWindowDimensions() {
+ const { innerWidth: width, innerHeight: height } = window;
+ return {
+ width,
+ height
+ };
+}
+
+export function useWindowDimensions() {
+ const [windowDimensions, setWindowDimensions] = useState(getWindowDimensions());
+ useEffect(() => {
+ function handleResize() {
+ setWindowDimensions(getWindowDimensions());
+ }
+ window.addEventListener('resize', handleResize);
+ return () => window.removeEventListener('resize', handleResize);
+ }, []);
+ return windowDimensions;
+}