@folklore/hooks
Advanced tools
Comparing version 0.0.58 to 0.0.59
@@ -1769,3 +1769,2 @@ 'use strict'; | ||
const hasViewport = typeof window !== 'undefined' && (window.visualViewport || null) !== null; | ||
const useVisualViewportSize = () => { | ||
@@ -1783,13 +1782,17 @@ const { | ||
}); | ||
const onResize = react.useCallback(e => { | ||
const viewport = e.target; | ||
setViewportSize({ | ||
width: viewport.width, | ||
height: viewport.height | ||
}); | ||
}, [setViewportSize]); | ||
react.useEffect(() => { | ||
if (!hasViewport) { | ||
if (!typeof window !== 'undefined' && (window.visualViewport || null) !== null) { | ||
return () => {}; | ||
} | ||
function onResize(e) { | ||
const viewport = e.target; | ||
setViewportSize({ | ||
width: viewport.width, | ||
height: viewport.height | ||
}); | ||
} | ||
setViewportSize({ | ||
width: window.visualViewport.width, | ||
height: window.visualViewport.height | ||
}); | ||
window.visualViewport.addEventListener('resize', onResize); | ||
@@ -1799,3 +1802,3 @@ return () => { | ||
}; | ||
}, [onResize]); | ||
}, [setViewportSize]); | ||
return { | ||
@@ -1802,0 +1805,0 @@ width: viewportWidth || windowWidth, |
@@ -1758,3 +1758,2 @@ import raf from 'raf'; | ||
const hasViewport = typeof window !== 'undefined' && (window.visualViewport || null) !== null; | ||
const useVisualViewportSize = () => { | ||
@@ -1772,13 +1771,17 @@ const { | ||
}); | ||
const onResize = useCallback(e => { | ||
const viewport = e.target; | ||
setViewportSize({ | ||
width: viewport.width, | ||
height: viewport.height | ||
}); | ||
}, [setViewportSize]); | ||
useEffect(() => { | ||
if (!hasViewport) { | ||
if (!typeof window !== 'undefined' && (window.visualViewport || null) !== null) { | ||
return () => {}; | ||
} | ||
function onResize(e) { | ||
const viewport = e.target; | ||
setViewportSize({ | ||
width: viewport.width, | ||
height: viewport.height | ||
}); | ||
} | ||
setViewportSize({ | ||
width: window.visualViewport.width, | ||
height: window.visualViewport.height | ||
}); | ||
window.visualViewport.addEventListener('resize', onResize); | ||
@@ -1788,3 +1791,3 @@ return () => { | ||
}; | ||
}, [onResize]); | ||
}, [setViewportSize]); | ||
return { | ||
@@ -1791,0 +1794,0 @@ width: viewportWidth || windowWidth, |
{ | ||
"name": "@folklore/hooks", | ||
"version": "0.0.58", | ||
"version": "0.0.59", | ||
"description": "React hooks", | ||
@@ -52,3 +52,3 @@ "keywords": [ | ||
}, | ||
"gitHead": "eec9d8318fc17f4a40396ee05e15bb93a48c40cc", | ||
"gitHead": "c054f8aebebb312df15dbd87158516bbc750855f", | ||
"dependencies": { | ||
@@ -55,0 +55,0 @@ "@folklore/events": "^0.0.5", |
110858
3630