import type React from "react"; import { useDevice } from "@app/core/providers/useDevice.js"; import type { Page } from "@app/core/stores/deviceStore.js"; import { BeakerIcon, Cog8ToothIcon, DocumentTextIcon, IdentificationIcon, InboxIcon, MapIcon, Square3Stack3DIcon, UsersIcon, } from "@heroicons/react/24/outline"; export const PageNav = (): JSX.Element => { const { activePage, setActivePage } = useDevice(); interface NavLink { name: string; icon: JSX.Element; page: Page; } const pages: NavLink[] = [ { name: "Messages", icon: , page: "messages", }, { name: "Map", icon: , page: "map", }, { name: "Extensions", icon: , page: "extensions", }, { name: "Config", icon: , page: "config", }, { name: "Channels", icon: , page: "channels", }, { name: "Peers", icon: , page: "peers", }, { name: "Info", icon: , page: "info", }, { name: "Logs", icon: , page: "logs", }, ]; return (
{pages.map((Link) => (
{ setActivePage(Link.page); }} className={`h-9 w-9 cursor-pointer rounded-md border-2 p-1.5 hover:border-orange-300 ${ Link.page === activePage ? "border-orange-400" : "border-slate-200" }`} > {Link.icon}
))}
); };