blob: 6f6f89be913da4d9d7f288a1e316621996a3ff12 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
import { useCallback, useState } from "react";
import { useResizeObserver } from "./use-resize-observer";
export function useContainerSize({
containerRef,
}: {
containerRef: React.RefObject<HTMLElement | null>;
}) {
const [size, setSize] = useState({ width: 0, height: 0 });
const onResize = useCallback((entry: ResizeObserverEntry) => {
const { width, height } = entry.contentRect;
setSize({ width, height });
}, []);
useResizeObserver({ ref: containerRef, onResize });
return size;
}
|