Files
shadcn-ui/templates/next-template/components/main-nav.tsx
shadcn eb27529f50 feat(next-template): update template and dependencies (#483)
* feat(next-template): update template and deps

* docs(next-template): update README

* fix(www): update deps

* chore: remove console.log
2023-05-29 11:02:02 +04:00

42 lines
1.1 KiB
TypeScript

import * as React from "react"
import Link from "next/link"
import { NavItem } from "@/types/nav"
import { siteConfig } from "@/config/site"
import { cn } from "@/lib/utils"
import { Icons } from "@/components/icons"
interface MainNavProps {
items?: NavItem[]
}
export function MainNav({ items }: MainNavProps) {
return (
<div className="flex gap-6 md:gap-10">
<Link href="/" className="flex items-center space-x-2">
<Icons.logo className="h-6 w-6" />
<span className="inline-block font-bold">{siteConfig.name}</span>
</Link>
{items?.length ? (
<nav className="flex gap-6">
{items?.map(
(item, index) =>
item.href && (
<Link
key={index}
href={item.href}
className={cn(
"flex items-center text-sm font-medium text-muted-foreground",
item.disabled && "cursor-not-allowed opacity-80"
)}
>
{item.title}
</Link>
)
)}
</nav>
) : null}
</div>
)
}