From 6a9b95309c59d82d8b7cecf397dc6fd8c2d89fc8 Mon Sep 17 00:00:00 2001 From: Stephan Egli Date: Fri, 17 Jan 2025 17:43:39 +0100 Subject: [PATCH] Getting rid of all warning messages in Svelte 5 part --- src/components/Canvas.svelte | 87 ++++++++++++++++----------- src/components/shapes/Circle.svelte | 17 +++++- src/components/shapes/Triangle.svelte | 21 +++++-- 3 files changed, 83 insertions(+), 42 deletions(-) diff --git a/src/components/Canvas.svelte b/src/components/Canvas.svelte index 3d1075c..c0cca46 100644 --- a/src/components/Canvas.svelte +++ b/src/components/Canvas.svelte @@ -1,17 +1,25 @@
- draggedShape = null} - on:mousemove={handleDragMove} + role="presentation" + onmousemove={(e) => { + if (!draggedShape) return; + + const svg = document.getElementById("shapesCanvas") as SVGSVGElement; + if (!svg) return; + + const point = svg.createSVGPoint(); + point.x = e.clientX; + point.y = e.clientY; + const { x, y } = point.matrixTransform(svg.getScreenCTM()!.inverse()); + + updateDocWithShapeMove(draggedShape.id, x, y); + }} + onmouseup={() => draggedShape = null} > {#each shapes as shape (shape.id)} - {#if shape.type === 'circle'} - handleDragStart(e, shape)} + {#if shape.type === "circle"} + handleDragStart(e, shape)} /> - {:else if shape.type === 'triangle'} - [c.x, c.y]).flat() as [number, number, number, number, number, number]} - color={shape.color} - on:mousedown={(e: MouseEvent) => handleDragStart(e, shape)} + {:else if shape.type === "triangle"} + handleDragStart(e, shape)} /> {/if} {/each}
- - + +
@@ -102,7 +117,7 @@ height: 100vh; position: relative; } - + svg { width: 100%; height: 100%; @@ -113,4 +128,4 @@ top: 10px; left: 10px; } - \ No newline at end of file + diff --git a/src/components/shapes/Circle.svelte b/src/components/shapes/Circle.svelte index bb56486..623090f 100644 --- a/src/components/shapes/Circle.svelte +++ b/src/components/shapes/Circle.svelte @@ -1,11 +1,21 @@ handleDragStart(e, shape)} /> \ No newline at end of file diff --git a/src/components/shapes/Triangle.svelte b/src/components/shapes/Triangle.svelte index d8bd2b3..8e7078e 100644 --- a/src/components/shapes/Triangle.svelte +++ b/src/components/shapes/Triangle.svelte @@ -1,19 +1,32 @@ handleDragStart(e, shape)} /> \ No newline at end of file