"use client"; import Link from "next/link"; import { usePathname } from "next/navigation"; import { Activity, BarChart3, BookOpen, CreditCard, FolderKanban, KeyRound, LayoutDashboard, ListTree, Network, Play, Settings, Shield, Waypoints } from "lucide-react"; import { cn } from "@/lib/utils"; import { Logo } from "@/components/ui/logo"; export const DASHBOARD_NAV = [ { href: "/dashboard", label: "Overview", icon: LayoutDashboard, exact: true }, { href: "/dashboard/playground", label: "Playground", icon: Play }, { href: "/dashboard/api-keys", label: "API Keys", icon: KeyRound }, { href: "/dashboard/projects", label: "Projects", icon: FolderKanban }, { href: "/dashboard/requests", label: "Requests", icon: ListTree }, { href: "/dashboard/crawls", label: "Crawls", icon: Network }, { href: "/dashboard/sessions", label: "Sessions", icon: Waypoints }, { href: "/dashboard/usage", label: "Usage", icon: Activity }, { href: "/dashboard/analytics", label: "Analytics", icon: BarChart3 }, { href: "/dashboard/billing", label: "Billing", icon: CreditCard }, { href: "/docs", label: "Documentation", icon: BookOpen, external: true }, { href: "/dashboard/settings", label: "Settings", icon: Settings }, ] as const; export function SidebarNav({ isAdmin, onNavigate, className }: { isAdmin?: boolean; onNavigate?: () => void; className?: string }) { const pathname = usePathname(); const items = [...DASHBOARD_NAV, ...(isAdmin ? [{ href: "/admin", label: "Admin", icon: Shield } as const] : [])]; return ( ); } export function Sidebar({ isAdmin }: { isAdmin?: boolean }) { return ( ); }