Implementerer det felles canvas-underlaget som whiteboard, storyboard og fremtidige canvas-views skal bruke. Ren Svelte 5 komponent uten backend-avhengigheter. Funksjoner: - Pan/zoom kamera med CSS transforms (transform-origin: 0 0) - Viewport culling med 200px margin for smooth scrolling - Pointer events (unified mus + touch) - Pinch-zoom og to-finger-pan for touch - Snap-to-grid (toggle med G-tast eller toolbar) - Fullskjermsmodus (fixed positioning) - Lasso-seleksjon og shift+klikk multi-select - Edge-pan ved drag nær kanter - Responsivt: 44px touch targets på mobil, tilpasset toolbar - zoomToFit() for å sentrere alle objekter - Consumer-rendering via Svelte 5 snippets Filer: - frontend/src/lib/components/canvas/Canvas.svelte - frontend/src/lib/components/canvas/types.ts - frontend/src/lib/components/canvas/index.ts Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| src | ||
| static | ||
| .env.example | ||
| .gitignore | ||
| .npmrc | ||
| package-lock.json | ||
| package.json | ||
| svelte.config.js | ||
| tsconfig.json | ||
| vite.config.ts | ||