flbxcup/resources/js/components/NavMain.svelte
2025-06-23 23:12:40 +02:00

33 lines
1.1 KiB
Svelte

<script lang="ts">
import { SidebarGroup, SidebarGroupLabel, SidebarMenu, SidebarMenuButton, SidebarMenuItem } from '@/components/ui/sidebar';
import type { NavItem } from '@/types';
import { Link, page } from '@inertiajs/svelte';
interface Props {
items: NavItem[];
}
let { items = [] }: Props = $props();
</script>
<SidebarGroup class="px-2 py-0">
<SidebarGroupLabel>Platform</SidebarGroupLabel>
<SidebarMenu>
{#each items as item (item.title)}
<SidebarMenuItem>
<Link href={item.href} class="block w-full">
<SidebarMenuButton isActive={item.href === $page.url}>
{#snippet tooltipContent()}
{item.title}
{/snippet}
{#if item.icon}
{@const Icon = item.icon}
<Icon class="h-4 w-4 shrink-0" />
{/if}
<span>{item.title}</span>
</SidebarMenuButton>
</Link>
</SidebarMenuItem>
{/each}
</SidebarMenu>
</SidebarGroup>