UNPKG

@zoom-image/react

Version:
33 lines (31 loc) 937 B
import { noop } from './chunk-NURWQMNQ.mjs'; import { useRef, useState, useCallback, useEffect } from 'react'; import { createZoomImageHover } from '@zoom-image/core'; function useZoomImageHover() { const result = useRef(); const [zoomImageState, updateZoomImageState] = useState({ enabled: false, zoomedImgStatus: "idle" }); const createZoomImage = useCallback((...arg) => { result.current?.cleanup(); result.current = createZoomImageHover(...arg); updateZoomImageState(result.current.getState()); result.current.subscribe(({ state }) => { updateZoomImageState(state); }); }, []); useEffect(() => { return () => { result.current?.cleanup(); }; }, []); return { createZoomImage, zoomImageState, setZoomImageState: result.current?.setState ?? noop }; } export { useZoomImageHover }; //# sourceMappingURL=out.js.map //# sourceMappingURL=chunk-BSBZVLC7.mjs.map