Files
dark-lord/lib/siteNav.ts
drjones 04d64fb993 Update market, account, and onion operations
Capture the current CyberLux UI, commerce, messaging, and Tor ops updates so local main can be pushed to the remote.

Made-with: Cursor
2026-04-24 23:23:48 -07:00

96 lines
4.1 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
/** Site-wide navigation — used by Navbar “All pages” dropdown. */
export type SiteNavItem = { label: string; href: string; icon: string };
export type SiteNavGroup = { title: string; items: SiteNavItem[] };
export const SITE_NAV_GROUPS: SiteNavGroup[] = [
{
title: "Hub & account",
items: [
{ label: "Hub", href: "/", icon: "⌂" },
{ label: "Dashboard", href: "/dashboard", icon: "📊" },
{ label: "Sign in", href: "/sign-in", icon: "🔑" },
{ label: "Register", href: "/sign-up", icon: "✎" },
{ label: "Add funds (BTC → USD)", href: "/account/add-funds", icon: "₿" },
{ label: "Onion mirrors", href: "/account/hidden-services", icon: "🧅" },
],
},
{
title: "Commerce",
items: [
{ label: "Dark Bazaar (market)", href: "/market", icon: "📈" },
{ label: "Checkout", href: "/checkout", icon: "🛒" },
{ label: "Wallets & catalog", href: "/wallets", icon: "👛" },
{ label: "Vendor hall", href: "/vendors", icon: "🏪" },
{ label: "Apply as vendor", href: "/vendor/apply", icon: "📋" },
{ label: "Floor analytics", href: "/market/analytics", icon: "📉" },
{ label: "Operations", href: "/market/operations", icon: "⚙️" },
{ label: "Buyer intel", href: "/market/intel", icon: "🔍" },
{ label: "Escrow & trust", href: "/market/trust", icon: "🤝" },
],
},
{
title: "Community",
items: [
{ label: "Forum", href: "/forum", icon: "◆" },
{ label: "Messages", href: "/messages", icon: "💬" },
{ label: "Chatter", href: "/chatter", icon: "📡" },
{ label: "Submit post", href: "/forum/submit", icon: "" },
{ label: "Sanctum", href: "/sanctuary", icon: "🛡️" },
{ label: "Inner circle", href: "/inner-circle", icon: "◎" },
],
},
{
title: "Exchange & barter",
items: [
{ label: "Soul Trade", href: "/exchange", icon: "📰" },
{ label: "Exchange ledger", href: "/exchange/ledger", icon: "📒" },
{ label: "Guidelines", href: "/exchange/guidelines", icon: "📜" },
{ label: "Barter", href: "/barter", icon: "♻️" },
],
},
{
title: "Intel & tools",
items: [
{ label: "Grimoire (vault)", href: "/vault", icon: "🗝️" },
{ label: "Forbidden wiki", href: "/hidden-wiki", icon: "📚" },
{ label: "Darknet atlas", href: "/darknet-atlas", icon: "🗺️" },
{ label: "Shadow syndicate", href: "/syndicate", icon: "🕸️" },
{ label: "Routing", href: "/syndicate/routing", icon: "↗" },
{ label: "Topology", href: "/syndicate/topology", icon: "⬡" },
{ label: "Void crawl (search)", href: "/search", icon: "🔦" },
{ label: "Links", href: "/links", icon: "🔗" },
{ label: "Presswire", href: "/presswire", icon: "📣" },
],
},
{
title: "Extras",
items: [
{ label: "Launch", href: "/launch", icon: "🔥" },
{ label: "Drops", href: "/drops", icon: "🚀" },
{ label: "Drop box", href: "/drop-box", icon: "📦" },
{ label: "Raffle", href: "/raffle", icon: "🎟️" },
{ label: "Awards", href: "/awards", icon: "🏆" },
{ label: "Testimonials", href: "/testimonials", icon: "✨" },
{ label: "Reviews", href: "/reviews", icon: "⭐" },
{ label: "Support", href: "/support", icon: "🆘" },
{ label: "Game", href: "/game", icon: "🎮" },
{ label: "Mixer", href: "/mixer", icon: "🌀" },
{ label: "Webring", href: "/webring", icon: "∞" },
{ label: "Trust", href: "/trust", icon: "⚖️" },
{ label: "Security analysis", href: "/security-analysis", icon: "🔐" },
{ label: "Arb academy", href: "/arb-academy", icon: "📚" },
{ label: "Comparison", href: "/comparison", icon: "⚗️" },
{ label: "Conspiracies", href: "/conspiracies", icon: "🕯️" },
{ label: "Trees", href: "/trees", icon: "🌲" },
{ label: "Easter eggs", href: "/easter-eggs", icon: "🥚" },
{ label: "Red room", href: "/red-room", icon: "🚪" },
],
},
];
export function flattenSiteNavItems(): SiteNavItem[] {
return SITE_NAV_GROUPS.flatMap((g) => g.items);
}