import { useEffect, useState, useRef } from 'react'; export function useDimensions() { const containerRef = useRef(null); const [dimensions, setDimensions] = useState({ width: 0, height: 0 }); useEffect(() => { if (!containerRef.current) return; const updateDimensions = () => { if (containerRef.current) { const rect = containerRef.current.getBoundingClientRect(); setDimensions({ width: rect.width, height: rect.height }); } }; updateDimensions(); const resizeObserver = new ResizeObserver(updateDimensions); resizeObserver.observe(containerRef.current); return () => { resizeObserver.disconnect(); }; }, []); return { containerRef, dimensions }; }