Web Dev Solutions

Catalin Mititiuc

aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'src/app.js')
-rw-r--r--src/app.js25
1 files changed, 19 insertions, 6 deletions
diff --git a/src/app.js b/src/app.js
index 5e9a2e4..02d3bd5 100644
--- a/src/app.js
+++ b/src/app.js
@@ -1,5 +1,7 @@
-import zoom from './modules/zoom';
-import pan from './modules/pan';
+//import zoom from './modules/zoom';
+//import pan from './modules/pan';
+import * as panzoom from './modules/with-restore';
+import { getTracked } from './modules/utils';
const optionalZoomFactor = 0.1
//, object = document.querySelector('object')
@@ -11,12 +13,23 @@ const optionalZoomFactor = 0.1
window.addEventListener('load', function () {
const svg = document.querySelector('svg'),
- targetEl = svg.querySelector('g.pan-zoom'),
+ //targetEl = svg.querySelector('g.pan-zoom'),
//pointer = svg.querySelector('#pointer'),
- options = { passive: false };
+ //options = { passive: false },
+ groups = getTracked(svg.querySelectorAll('g[class] use')),
+ afterZoom = async () => {
+ groups.forEach(([z, p]) => {
+ z.style.display = '';
+ const { width } = z.getBoundingClientRect();
+ console.log('width', width);
+ width < 40 ? z.style.display = 'none' : z.style.display = '';
+ });
+ };
- svg.addEventListener('wheel', zoom(targetEl, optionalZoomFactor), options);
- svg.addEventListener('pointerdown', pan(targetEl), options);
+ //svg.addEventListener('wheel', zoom(targetEl, optionalZoomFactor, afterZoom), options);
+ //svg.addEventListener('pointerdown', pan(targetEl), options);
+
+ panzoom.start(svg, 'g.pan-zoom', afterZoom);
//svg.addEventListener('pointermove', e => {
// const pt = new DOMPoint(e.clientX, e.clientY),