Files
9ca3a4e9-f7d6-4cc2-a7ed-b93…/src/components/navbar/NavbarLayoutFloatingOverlay/useResponsive.ts
2026-01-12 15:10:27 +00:00

18 lines
557 B
TypeScript

import { useState, useEffect } from 'react';
import { throttle } from '@/utils/throttle';
export const useResponsive = (breakpoint: number = 768) => {
const [isMobile, setIsMobile] = useState(false);
useEffect(() => {
const handleResize = throttle(() => {
setIsMobile(window.innerWidth < breakpoint);
}, 150);
handleResize();
window.addEventListener('resize', handleResize);
return () => window.removeEventListener('resize', handleResize);
}, [breakpoint]);
return isMobile;
};