mirror of
https://github.com/VSCodium/vscodium.github.io.git
synced 2025-12-14 20:24:21 -06:00
21 lines
569 B
TypeScript
Executable File
21 lines
569 B
TypeScript
Executable File
import * as React from 'react';
|
|
|
|
const MOBILE_BREAKPOINT = 768;
|
|
|
|
export function useIsMobile() {
|
|
const [isMobile, setIsMobile] = React.useState<boolean | undefined>(undefined);
|
|
|
|
React.useEffect(() => {
|
|
const mql = globalThis.matchMedia(`(max-width: ${MOBILE_BREAKPOINT - 1}px)`);
|
|
const onChange = () => {
|
|
setIsMobile(window.innerWidth < MOBILE_BREAKPOINT);
|
|
};
|
|
|
|
mql.addEventListener('change', onChange);
|
|
setIsMobile(window.innerWidth < MOBILE_BREAKPOINT);
|
|
return () => mql.removeEventListener('change', onChange);
|
|
}, []);
|
|
|
|
return Boolean(isMobile);
|
|
}
|