UNPKG

koval-ui

Version:

React components collection with minimalistic design. Supports theming, layout, and input validation.

1 lines 1.34 kB
{"version":3,"file":"useResizeObserverNew.cjs","sources":["../../../../src/internal/hooks/useResizeObserverNew.ts"],"sourcesContent":["import type {MutableRefObject} from 'react';\nimport {useEffect, useState, useDeferredValue} from 'react';\n\nexport const useResizeObserver = (ref: MutableRefObject<HTMLElement | null>) => {\n const [rect, setRect] = useState<DOMRectReadOnly>();\n\n const deferredRect = useDeferredValue(rect);\n\n useEffect(() => {\n const observer = new ResizeObserver(() => {\n if (ref.current) {\n const boundingRect = ref.current.getBoundingClientRect();\n setRect(boundingRect);\n }\n });\n ref.current && observer.observe(ref.current);\n\n return () => observer.disconnect();\n }, [ref]);\n\n return deferredRect;\n};\n"],"names":["useResizeObserver","ref","rect","setRect","useState","deferredRect","useDeferredValue","useEffect","observer","boundingRect"],"mappings":"sHAGaA,EAAqBC,GAA8C,CAC5E,KAAM,CAACC,EAAMC,CAAO,EAAIC,WAAA,EAElBC,EAAeC,EAAAA,iBAAiBJ,CAAI,EAE1CK,OAAAA,EAAAA,UAAU,IAAM,CACZ,MAAMC,EAAW,IAAI,eAAe,IAAM,CACtC,GAAIP,EAAI,QAAS,CACb,MAAMQ,EAAeR,EAAI,QAAQ,sBAAA,EACjCE,EAAQM,CAAY,CACxB,CACJ,CAAC,EACD,OAAAR,EAAI,SAAWO,EAAS,QAAQP,EAAI,OAAO,EAEpC,IAAMO,EAAS,WAAA,CAC1B,EAAG,CAACP,CAAG,CAAC,EAEDI,CACX"}