diff --git a/app/(admin)/layout.tsx b/app/(admin)/layout.tsx index 08ec25b..09a38c8 100644 --- a/app/(admin)/layout.tsx +++ b/app/(admin)/layout.tsx @@ -20,7 +20,7 @@ export default async function AdminLayout({

Admin

- Manage users, hardware, and games + Manage your platform

diff --git a/components/admin/admin-sidebar.tsx b/components/admin/admin-sidebar.tsx index 5a140ee..46ade83 100644 --- a/components/admin/admin-sidebar.tsx +++ b/components/admin/admin-sidebar.tsx @@ -2,31 +2,80 @@ import Link from "next/link" import { usePathname } from "next/navigation" -import { UsersIcon, CpuIcon, Gamepad2Icon, MessageSquareIcon } from "lucide-react" +import { + UsersIcon, + CpuIcon, + Gamepad2Icon, + MessageSquareIcon, + FlagIcon, + BarChart3Icon, + LayoutDashboardIcon, +} from "lucide-react" -const adminNavItems = [ - { href: "/admin/users", label: "Users", icon: UsersIcon }, - { href: "/admin/hardware", label: "Hardware", icon: CpuIcon }, - { href: "/admin/games", label: "Games", icon: Gamepad2Icon }, - { href: "/admin/comments", label: "Comments", icon: MessageSquareIcon }, +type NavItem = + | { type: "section"; label: string } + | { type: "divider" } + | { type: "link"; href: string; label: string; icon: React.ElementType } + +const navItems: NavItem[] = [ + { type: "section", label: "Management" }, + { type: "link", href: "/admin/users", label: "Users", icon: UsersIcon }, + { type: "link", href: "/admin/hardware", label: "Hardware", icon: CpuIcon }, + { type: "link", href: "/admin/games", label: "Games", icon: Gamepad2Icon }, + { type: "divider" }, + { type: "section", label: "Moderation" }, + { type: "link", href: "/admin/reports", label: "Reports", icon: FlagIcon }, + { type: "link", href: "/admin/benchmarks", label: "Benchmarks", icon: BarChart3Icon }, + { type: "link", href: "/admin/comments", label: "Comments", icon: MessageSquareIcon }, ] export function AdminSidebar() { const pathname = usePathname() return ( -