UNPKG

@zoom-image/react

Version:
41 lines (36 loc) 997 B
'use strict'; var react = require('react'); var core = require('@zoom-image/core'); // src/useZoomImageHover.ts // src/shared.ts function noop() { } // src/useZoomImageHover.ts function useZoomImageHover() { const result = react.useRef(); const [zoomImageState, updateZoomImageState] = react.useState({ enabled: false, zoomedImgStatus: "idle" }); const createZoomImage = react.useCallback((...arg) => { result.current?.cleanup(); result.current = core.createZoomImageHover(...arg); updateZoomImageState(result.current.getState()); result.current.subscribe(({ state }) => { updateZoomImageState(state); }); }, []); react.useEffect(() => { return () => { result.current?.cleanup(); }; }, []); return { createZoomImage, zoomImageState, setZoomImageState: result.current?.setState ?? noop }; } exports.useZoomImageHover = useZoomImageHover; //# sourceMappingURL=out.js.map //# sourceMappingURL=useZoomImageHover.js.map