@zoom-image/svelte
Version:
Adapter of zoom image core for Svelte
40 lines (38 loc) • 907 B
JavaScript
import { createZoomImageWheel } from '@zoom-image/core';
import { onDestroy } from 'svelte';
import { writable } from 'svelte/store';
// src/useZoomImageWheel.ts
function useZoomImageWheel() {
let result;
const { set, subscribe } = writable({
currentZoom: 1,
enable: false,
currentPositionX: -1,
currentPositionY: -1,
currentRotation: 0
});
const createZoomImage = (...arg) => {
result?.cleanup();
result = createZoomImageWheel(...arg);
set(result.getState());
result.subscribe(({ state }) => {
set(state);
});
};
onDestroy(() => {
result?.cleanup();
});
const setZoomImageState = (state) => {
result?.setState(state);
};
return {
createZoomImage,
zoomImageState: {
subscribe
},
setZoomImageState
};
}
export { useZoomImageWheel };
//# sourceMappingURL=out.js.map
//# sourceMappingURL=chunk-JPL5XFX4.mjs.map