1234567891011121314151617181920212223242526272829 |
- import { Link, usePage } from '@inertiajs/react';
- import { type NavItem } from '@/common/types';
- import { SidebarGroup, SidebarGroupLabel, SidebarMenu, SidebarMenuButton, SidebarMenuItem } from '@/shadcn/sidebar';
- export function NavMain({ items = [] }: { items: NavItem[] }) {
- const page = usePage();
- return (
- <SidebarGroup className="px-2 py-0">
- <SidebarGroupLabel>Platform</SidebarGroupLabel>
- <SidebarMenu>
- {items.map((item) => (
- <SidebarMenuItem key={item.title}>
- <SidebarMenuButton
- asChild
- isActive={page.url.startsWith(typeof item.href === 'string' ? item.href : item.href.url)}
- tooltip={{ children: item.title }}
- >
- <Link href={item.href} prefetch>
- {item.icon && <item.icon />}
- <span>{item.title}</span>
- </Link>
- </SidebarMenuButton>
- </SidebarMenuItem>
- ))}
- </SidebarMenu>
- </SidebarGroup>
- );
- }
|