feat(saved-routes): require server capability
Some checks failed
TrafficCue CI / check (push) Failing after 34s
TrafficCue CI / build (push) Failing after 34s

This commit is contained in:
2025-08-19 12:48:44 +02:00
parent 64ed0c8204
commit 2f6f17ca52
3 changed files with 34 additions and 29 deletions

View File

@@ -98,6 +98,7 @@
<VehicleSelector /> <VehicleSelector />
<RequiresCapability capability="saved-routes">
{#await getSaved() then saved} {#await getSaved() then saved}
{#if saved.length != 0} {#if saved.length != 0}
<div> <div>
@@ -113,6 +114,7 @@
</div> </div>
{/if} {/if}
{/await} {/await}
</RequiresCapability>
<RequiresCapability capability="post"> <RequiresCapability capability="post">
<div> <div>

View File

@@ -12,6 +12,7 @@
import { m } from "$lang/messages"; import { m } from "$lang/messages";
import { deleteSaved, isSaved, putSaved } from "$lib/services/lnv"; import { deleteSaved, isSaved, putSaved } from "$lib/services/lnv";
import { view } from "../view.svelte"; import { view } from "../view.svelte";
import RequiresCapability from "../RequiresCapability.svelte";
let { let {
route, route,
@@ -45,6 +46,7 @@
<RouteIcon /> <RouteIcon />
{m["sidebar.trip.start"]()} {m["sidebar.trip.start"]()}
</Button> </Button>
<RequiresCapability capability="saved-routes">
{#await isSaved($state.snapshot(route)) then saved} {#await isSaved($state.snapshot(route)) then saved}
<Button variant="secondary" onclick={async () => { <Button variant="secondary" onclick={async () => {
if(saved) { if(saved) {
@@ -60,6 +62,7 @@
{saved ? m.unsave() : m["sidebar.trip.save"]()} {saved ? m.unsave() : m["sidebar.trip.save"]()}
</Button> </Button>
{/await} {/await}
</RequiresCapability>
<Button variant="secondary" disabled> <Button variant="secondary" disabled>
<SendIcon /> <SendIcon />
{m["sidebar.trip.send"]()} {m["sidebar.trip.send"]()}

View File

@@ -1,7 +1,7 @@
import { LNV_SERVER } from "./hosts"; import { LNV_SERVER } from "./hosts";
import type { OIDCUser } from "./oidc"; import type { OIDCUser } from "./oidc";
export type Capabilities = ("auth" | "reviews" | "ai" | "fuel" | "post")[]; export type Capabilities = ("auth" | "reviews" | "ai" | "fuel" | "post" | "saved-routes")[];
export let capabilities: Capabilities = []; export let capabilities: Capabilities = [];
export let oidcConfig: { export let oidcConfig: {
AUTH_URL: string; AUTH_URL: string;