mirror of
https://github.com/CompassConnections/Compass.git
synced 2026-03-25 18:13:48 -04:00
17 lines
605 B
TypeScript
17 lines
605 B
TypeScript
import {useEffect} from 'react'
|
|
|
|
import {usePersistentLocalState} from './use-persistent-local-state'
|
|
|
|
// 640 matches tailwind sm breakpoint
|
|
export function useIsMobile(threshold = 640) {
|
|
// Save in localstorage because isMobile status doesn't change much.
|
|
const [isMobile, setIsMobile] = usePersistentLocalState(false, 'is-mobile')
|
|
useEffect(() => {
|
|
const onResize = () => setIsMobile(window.innerWidth < threshold)
|
|
onResize()
|
|
window.addEventListener('resize', onResize)
|
|
return () => window.removeEventListener('resize', onResize)
|
|
}, [threshold, setIsMobile])
|
|
return isMobile
|
|
}
|