import type { ComponentType, HTMLAttributes } from "react"; import { ActivityIcon } from "@/components/icons/activity"; import { BookTextIcon } from "@/components/icons/book-text"; import { EarthIcon } from "@/components/icons/earth"; import { LayersIcon } from "@/components/icons/layers"; import { LayoutGridIcon } from "@/components/icons/layout-grid"; import { ShieldCheckIcon } from "@/components/icons/shield-check"; import { WalletIcon } from "@/components/icons/wallet"; import { WaypointsIcon } from "@/components/icons/waypoints"; export type NavIcon = ComponentType< HTMLAttributes & { size?: number } >; export interface NavItem { label: string; href: string; icon: NavIcon; } export interface NavGroup { label: string; items: NavItem[]; } /** Portal zone navigation — all routes live under /portal */ export const NAV_GROUPS: NavGroup[] = [ { label: "Explore", items: [ { label: "Overview", href: "/portal", icon: ActivityIcon }, { label: "Explorer", href: "/portal/explorer", icon: EarthIcon }, { label: "Hybrid stack", href: "/portal/hybrid", icon: LayersIcon }, ], }, { label: "Learn", items: [ { label: "How It Works", href: "/portal/how-it-works", icon: WaypointsIcon, }, { label: "Architecture", href: "/portal/architecture", icon: LayersIcon, }, { label: "Docs", href: "/portal/docs", icon: BookTextIcon }, ], }, { label: "Account", items: [ { label: "Sign in", href: "/portal/sign-in", icon: WalletIcon, }, { label: "Connect Wallet", href: "/portal/connect-wallet", icon: WalletIcon, }, { label: "mavi wallet", href: "/portal/mavi", icon: WalletIcon, }, { label: "Dashboard", href: "/portal/dashboard", icon: LayoutGridIcon }, { label: "Machine auth", href: "/portal/machine-auth", icon: ShieldCheckIcon, }, { label: "Services", href: "/portal/services", icon: LayersIcon }, ], }, ];