diff --git a/frontend/src/routes/dashboard/+layout.svelte b/frontend/src/routes/dashboard/+layout.svelte index 7ae39c5..5c0c135 100644 --- a/frontend/src/routes/dashboard/+layout.svelte +++ b/frontend/src/routes/dashboard/+layout.svelte @@ -7,11 +7,15 @@ import { setRunContext } from '$lib/stores/runs.svelte' import { setRiderContext } from '$lib/stores/riders.svelte' import { setTimeContext } from '$lib/stores/times.svelte' + import { setTrailContext } from '$lib/stores/trails.svelte' + import { setTrailVersionContext } from '$lib/stores/trailVersions.svelte' + import { setTrailFlagContext } from '$lib/stores/trailFlags.svelte' + import { setTrailMarkerContext } from '$lib/stores/trailMarkers.svelte' import { Button } from '@/components/ui/button' import { Separator } from '@/components/ui/separator' import Logo from '$lib/components/Logo.svelte' import TeamSwitcher from '$lib/components/TeamSwitcher.svelte' - import { Home, Calendar, Flag, Timer, LogOut, Menu, X, Moon, Sun } from 'lucide-svelte' + import { Home, Calendar, Flag, Timer, LogOut, Menu, X, Moon, Sun, Route } from 'lucide-svelte' import { toggleMode, mode } from 'mode-watcher' import { onDestroy, onMount } from 'svelte' @@ -24,6 +28,10 @@ const runs = setRunContext() const riders = setRiderContext() const times = setTimeContext() + const trails = setTrailContext() + const trailVersions = setTrailVersionContext() + const trailFlags = setTrailFlagContext() + const trailMarkers = setTrailMarkerContext() let isMobileMenuOpen = $state(false) @@ -35,11 +43,18 @@ // Teams zuerst laden, weil die anderen Stores nach team filtern await teams.load() teams.subscribe() - await Promise.all([events.load(), runs.load(), riders.load(), times.load()]) + await Promise.all([ + events.load(), runs.load(), riders.load(), times.load(), + trails.load(), trailVersions.load(), trailFlags.load(), trailMarkers.load(), + ]) events.subscribe() runs.subscribe() riders.subscribe() times.subscribe() + trails.subscribe() + trailVersions.subscribe() + trailFlags.subscribe() + trailMarkers.subscribe() }) onDestroy(() => { @@ -48,6 +63,10 @@ runs.destroy() riders.destroy() times.destroy() + trails.destroy() + trailVersions.destroy() + trailFlags.destroy() + trailMarkers.destroy() }) function handleLogout() { @@ -66,6 +85,7 @@ const nav = [ { href: '/dashboard', icon: Home, label: 'Dashboard' }, { href: '/dashboard/events', icon: Calendar, label: 'Events' }, + { href: '/dashboard/trails', icon: Route, label: 'Trails' }, { href: '/dashboard/timing', icon: Timer, label: 'Zeitnahme' }, { href: '/dashboard/results', icon: Flag, label: 'Ergebnisse' }, ]