feat(mechanic-pwa): use vendor SVG scheme with zone-based markers (1:1 vendor coords for future import)

- Add public/scheme/exterior.svg (131 KB, viewBox 0 0 827 1209, 57 zones class="0"..class="56")
- Add public/scheme/salon.svg (53 KB, Phase 2 reserve)
- New VendorVehicleScheme: fetches SVG as separate asset (?url), strips vendor <script>,
  wires click/hover via event delegation, tints zones red/gray/blue by damage state
- AddMarkerDialog: side required, x/y optional (zone-level markers store NULL x/y)
- InspectionEditor/InspectionReview: swap CompositeVehicleScheme -> VendorVehicleScheme,
  pendingTap now {side} only, humanizeMarkerSide handles zone-{N} and legacy named zones
- Delete CompositeVehicleScheme (PNG grid + bumper suns)
- No backend changes; side=zone-{N} accepted by existing Optional[str] field
This commit is contained in:
2026-05-17 20:18:46 +10:00
parent bd7665fb1d
commit ab9ddf7289
7 changed files with 286 additions and 337 deletions
File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 129 KiB