@zoom-image/react
Version:
Adapter of zoom image core for React
31 lines (29 loc) • 838 B
JavaScript
import { useRef, useState, useCallback, useEffect } from 'react';
import { createZoomImageMove } from '@zoom-image/core';
// src/useZoomImageMove.ts
function useZoomImageMove() {
const result = useRef();
const [zoomImageState, updateZoomImageState] = useState({
zoomedImgStatus: "idle"
});
const createZoomImage = useCallback((...arg) => {
result.current?.cleanup();
result.current = createZoomImageMove(...arg);
updateZoomImageState(result.current.getState());
result.current.subscribe(({ state }) => {
updateZoomImageState(state);
});
}, []);
useEffect(() => {
return () => {
result.current?.cleanup();
};
}, []);
return {
createZoomImage,
zoomImageState
};
}
export { useZoomImageMove };
//# sourceMappingURL=out.js.map
//# sourceMappingURL=chunk-LJUIFZRA.mjs.map