From 64ed0c820478a9503ef53397ae43a3614218128c Mon Sep 17 00:00:00 2001 From: Cfp Date: Tue, 19 Aug 2025 12:19:08 +0200 Subject: [PATCH] feat: initial support for saving routes --- messages/en.json | 6 ++- .../components/lnv/sidebar/MainSidebar.svelte | 18 +++++++ .../components/lnv/sidebar/TripSidebar.svelte | 21 ++++++-- src/lib/services/lnv.ts | 52 +++++++++++++++++-- 4 files changed, 86 insertions(+), 11 deletions(-) diff --git a/messages/en.json b/messages/en.json index 0f7f1f1..b10c09c 100644 --- a/messages/en.json +++ b/messages/en.json @@ -11,7 +11,8 @@ "home": "Home", "school": "School", "work": "Work", - "no-location": "No {name} location saved." + "no-location": "No {name} location saved.", + "saved-routes": "Saved Routes" }, "location": { "unlock": "Unlock Location", @@ -130,5 +131,6 @@ "choose-lang": "Choose your language", "first-vehicle": "Let's create your first vehicle." } - } + }, + "unsave": "Unsave" } diff --git a/src/lib/components/lnv/sidebar/MainSidebar.svelte b/src/lib/components/lnv/sidebar/MainSidebar.svelte index 925f246..1f7a624 100644 --- a/src/lib/components/lnv/sidebar/MainSidebar.svelte +++ b/src/lib/components/lnv/sidebar/MainSidebar.svelte @@ -9,6 +9,8 @@ import RequiresCapability from "../RequiresCapability.svelte"; import { saved } from "$lib/saved.svelte"; import { m } from "$lang/messages"; + import { getSaved } from "$lib/services/lnv"; + import { view } from "../view.svelte";
+{#await getSaved() then saved} + {#if saved.length != 0} +
+

Saved Routes

+ +
+ {#each saved as save} + + {/each} +
+
+ {/if} +{/await} +

In your area

diff --git a/src/lib/components/lnv/sidebar/TripSidebar.svelte b/src/lib/components/lnv/sidebar/TripSidebar.svelte index 1cd21a3..2dda158 100644 --- a/src/lib/components/lnv/sidebar/TripSidebar.svelte +++ b/src/lib/components/lnv/sidebar/TripSidebar.svelte @@ -10,6 +10,8 @@ import { RouteIcon, SaveIcon, SendIcon } from "@lucide/svelte"; import { map } from "../map.svelte"; import { m } from "$lang/messages"; + import { deleteSaved, isSaved, putSaved } from "$lib/services/lnv"; + import { view } from "../view.svelte"; let { route, @@ -43,10 +45,21 @@ {m["sidebar.trip.start"]()} - + {#await isSaved($state.snapshot(route)) then saved} + + {/await}