2024-07-08 22:43:50 +02:00
|
|
|
<script lang="ts">
|
|
|
|
import { Button } from '$lib/components/ui/button';
|
|
|
|
import { getURLForLanguage } from '$lib/utils';
|
|
|
|
import { locale } from 'svelte-i18n';
|
|
|
|
import DocsLoader from '$lib/components/docs/DocsLoader.svelte';
|
2024-07-09 10:08:26 +02:00
|
|
|
import { page } from '$app/stores';
|
2024-07-08 22:43:50 +02:00
|
|
|
|
|
|
|
let guides: Record<string, string[]> = {
|
|
|
|
'getting-started': [],
|
|
|
|
menu: ['file', 'edit', 'view', 'settings'],
|
|
|
|
toolbar: ['routing', 'poi', 'scissors', 'time', 'merge', 'extract', 'reduce', 'clean'],
|
|
|
|
'map-controls': []
|
|
|
|
};
|
|
|
|
</script>
|
|
|
|
|
|
|
|
<div class="p-12 flex flex-row gap-24">
|
|
|
|
<div class="hidden md:flex flex-col gap-1 w-40">
|
|
|
|
{#each Object.keys(guides) as guide}
|
|
|
|
<Button
|
|
|
|
variant="link"
|
2024-07-08 23:22:37 +02:00
|
|
|
href={getURLForLanguage($locale, `/help/${guide}`)}
|
2024-07-09 10:08:26 +02:00
|
|
|
class="h-6 p-0 w-fit text-muted-foreground hover:text-foreground hover:no-underline font-normal hover:font-semibold items-start {$page
|
|
|
|
.params.guide === guide
|
|
|
|
? 'font-semibold text-foreground'
|
|
|
|
: ''}"
|
2024-07-08 22:43:50 +02:00
|
|
|
>
|
|
|
|
<DocsLoader path={`${guide}.svx`} titleOnly={true} />
|
|
|
|
</Button>
|
|
|
|
{#each guides[guide] as subGuide}
|
|
|
|
<Button
|
|
|
|
variant="link"
|
2024-07-08 23:22:37 +02:00
|
|
|
href={getURLForLanguage($locale, `/help/${guide}/${subGuide}`)}
|
2024-07-09 10:08:26 +02:00
|
|
|
class="h-6 p-0 w-fit text-muted-foreground hover:text-foreground hover:no-underline font-normal hover:font-semibold items-start ml-3 {$page
|
|
|
|
.params.guide ===
|
|
|
|
guide + '/' + subGuide
|
|
|
|
? 'font-semibold text-foreground'
|
|
|
|
: ''}"
|
2024-07-08 22:43:50 +02:00
|
|
|
>
|
|
|
|
<DocsLoader path={`${guide}/${subGuide}.svx`} titleOnly={true} />
|
|
|
|
</Button>
|
|
|
|
{/each}
|
|
|
|
{/each}
|
|
|
|
</div>
|
|
|
|
<slot />
|
|
|
|
</div>
|