Add route interactions: click-to-split, drag-to-reshape, colored route rendering
- Enrich BRouter response with per-point 3D coordinates and segment boundary tracking (EnrichedRoute interface) - ColoredRoute component: plain, elevation gradient (green→yellow→red), and surface color modes with invisible wide polyline for click targeting - Click-to-split: click on route polyline inserts waypoint at nearest point, mapped to correct segment via boundary indices - MidpointHandles: draggable CircleMarkers at route segment midpoints for reshaping, hidden below zoom 12, opaque on hover - Color mode toggle (select) synced via Yjs routeData - i18n keys for color mode labels (en + de) - Unit tests for segment boundary tracking (13 tests) - E2E tests for enriched route response and color mode toggle Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
fe3621aab3
commit
b080a15fb1
22 changed files with 1259 additions and 170 deletions
|
|
@ -54,6 +54,13 @@ export default {
|
|||
notes: {
|
||||
placeholder: "Notizen für diese Sitzung hinzufügen...",
|
||||
},
|
||||
colorMode: {
|
||||
label: "Routenfarbe",
|
||||
plain: "Standard",
|
||||
elevation: "Höhe",
|
||||
surface: "Untergrund",
|
||||
surfaceUnavailable: "Untergrunddaten für dieses Profil nicht verfügbar",
|
||||
},
|
||||
rateLimitExceeded: "Zu viele Anfragen. Bitte versuche es später erneut.",
|
||||
elevation: {
|
||||
gain: "Höhenmeter aufwärts",
|
||||
|
|
|
|||
|
|
@ -54,6 +54,13 @@ export default {
|
|||
notes: {
|
||||
placeholder: "Add notes for this session...",
|
||||
},
|
||||
colorMode: {
|
||||
label: "Route Color",
|
||||
plain: "Plain",
|
||||
elevation: "Elevation",
|
||||
surface: "Surface",
|
||||
surfaceUnavailable: "Surface data not available for this profile",
|
||||
},
|
||||
rateLimitExceeded: "Too many requests. Please try again later.",
|
||||
elevation: {
|
||||
gain: "Elevation Gain",
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue