synops/docs
vegard 3be2a57f88 Fullfører oppgave 19.1: Canvas-primitiv Svelte-komponent
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>
2026-03-18 07:18:29 +00:00
..
concepts Fullfører oppgave 15.6: Serverhelse-dashboard 2026-03-18 04:12:54 +00:00
erfaringer Fullfør oppgave 7.2: Transkripsjons-pipeline (CAS → Whisper → content) 2026-03-17 17:44:54 +01:00
features Fullfører oppgave 19.1: Canvas-primitiv Svelte-komponent 2026-03-18 07:18:29 +00:00
infra Fullfører oppgave 15.5: Ressursstyring for jobbkø 2026-03-18 04:02:11 +00:00
primitiver Fullfører oppgave 18.1: AI-preset node-type 2026-03-18 06:13:09 +00:00
proposals Lytter-rants: knyttes til podcast (samling), ikke bare episode 2026-03-18 01:29:59 +00:00
retninger Retning: Unix-filosofi — maskinrommet orkestrerer, verktøy gjør jobben 2026-03-18 01:49:48 +00:00
setup LiveKit oppsett: Docker-container for WebRTC (oppgave 11.1) 2026-03-17 22:54:50 +00:00
arkitektur.md Oppdater CLAUDE.md og arkitektur med nye prinsipper 2026-03-18 01:56:51 +00:00