Files
myeasycms-v2/apps/web/app/[locale]/docs/_components/docs-nav-link.tsx
Giancarlo Buomprisco 7ebff31475 Next.js Supabase V3 (#463)
Version 3 of the kit:
- Radix UI replaced with Base UI (using the Shadcn UI patterns)
- next-intl replaces react-i18next
- enhanceAction deprecated; usage moved to next-safe-action
- main layout now wrapped with [locale] path segment
- Teams only mode
- Layout updates
- Zod v4
- Next.js 16.2
- Typescript 6
- All other dependencies updated
- Removed deprecated Edge CSRF
- Dynamic Github Action runner
2026-03-24 13:40:38 +08:00

31 lines
769 B
TypeScript

'use client';
import Link from 'next/link';
import { usePathname } from 'next/navigation';
import { SidebarMenuButton, SidebarMenuItem } from '@kit/ui/sidebar';
import { cn, isRouteActive } from '@kit/ui/utils';
export function DocsNavLink({
label,
url,
children,
}: React.PropsWithChildren<{ label: string; url: string }>) {
const currentPath = usePathname();
const isCurrent = isRouteActive(url, currentPath);
return (
<SidebarMenuItem>
<SidebarMenuButton
render={<Link href={url} />}
isActive={isCurrent}
className={cn('text-secondary-foreground transition-all')}
>
<span className="block max-w-full truncate">{label}</span>
{children}
</SidebarMenuButton>
</SidebarMenuItem>
);
}