Update pan-zoom lib

This commit is contained in:
Catalin Constantin Mititiuc 2025-06-16 22:41:29 -07:00
parent 5e3fac3d67
commit efa3c0c3e7
3 changed files with 12 additions and 19 deletions

9
package-lock.json generated
View File

@ -5,7 +5,7 @@
"packages": { "packages": {
"": { "": {
"dependencies": { "dependencies": {
"svg-pan-zoom": "github:webdevcat-me/svg-pan-zoom" "pan-zoom": "github:webdevcat-me/pan-zoom"
}, },
"devDependencies": { "devDependencies": {
"esbuild": "^0.20.2", "esbuild": "^0.20.2",
@ -3042,6 +3042,10 @@
"integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==",
"dev": true "dev": true
}, },
"node_modules/pan-zoom": {
"version": "0.1.0",
"resolved": "git+ssh://git@github.com/webdevcat-me/pan-zoom.git#2d3fc1cd22ffcc61ec178eeaf97f3a4d7cba98bf"
},
"node_modules/parse-json": { "node_modules/parse-json": {
"version": "5.2.0", "version": "5.2.0",
"resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz",
@ -3486,9 +3490,6 @@
"url": "https://github.com/sponsors/ljharb" "url": "https://github.com/sponsors/ljharb"
} }
}, },
"node_modules/svg-pan-zoom": {
"resolved": "git+ssh://git@github.com/webdevcat-me/svg-pan-zoom.git#e7c191a78d583029192776f90833b8346f0227ff"
},
"node_modules/test-exclude": { "node_modules/test-exclude": {
"version": "6.0.0", "version": "6.0.0",
"resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz",

View File

@ -1,5 +1,8 @@
{ {
"type": "module", "type": "module",
"dependencies": {
"pan-zoom": "github:webdevcat-me/pan-zoom"
},
"devDependencies": { "devDependencies": {
"esbuild": "^0.20.2", "esbuild": "^0.20.2",
"esbuild-server": "^0.3.0", "esbuild-server": "^0.3.0",
@ -10,8 +13,5 @@
"start": "node dev-server.cjs", "start": "node dev-server.cjs",
"test:integ": "jest --config jest.config.integ.cjs", "test:integ": "jest --config jest.config.integ.cjs",
"test": "jest" "test": "jest"
},
"dependencies": {
"svg-pan-zoom": "github:webdevcat-me/svg-pan-zoom"
} }
} }

View File

@ -1,7 +1,8 @@
import { pan, zoom } from 'svg-pan-zoom'; import { pan, zoom } from 'pan-zoom';
export default class PanZoom { export default class PanZoom {
#storageKey = 'pan-zoom'; #storageKey = 'pan-zoom';
#zoomFactor = 0.25;
constructor(svg) { constructor(svg) {
this.#restorePanZoomVal(svg); this.#restorePanZoomVal(svg);
@ -29,16 +30,7 @@ export default class PanZoom {
} }
#addEventListeners(svg) { #addEventListeners(svg) {
svg.addEventListener('wheel', e => { svg.addEventListener('wheel', e => zoom(svg, e, this.#zoomFactor), { passive: false });
e.preventDefault(); svg.addEventListener('pointerdown', e => pan(svg, e), { passive: false });
zoom(svg, e);
}, { passive: false });
svg.addEventListener('pointerdown', e => {
e.preventDefault();
pan(svg, e);
}, { passive: false });
} }
}; };