UNPKG

@merchantlabs/react-carousel

Version:

Merchant Labs React component library.

24 lines (18 loc) 619 B
import { useState, useEffect } from 'react'; import ResizeObserver from 'resize-observer-polyfill'; export default function useContentRect(ref) { var _useState = useState(ref.current ? ref.current.getBoundingClientRect() : {}), contentRect = _useState[0], setContentRect = _useState[1]; useEffect(function () { if (!ref.current) return; var observer = new ResizeObserver(function (entries) { setContentRect(entries[0].contentRect); }); observer.observe(ref.current); return function () { observer.disconnect(ref.current); }; }, [ref]); return contentRect; }