import { Divider, IconButton, List, ListItem, ListItemButton, ListItemIcon, ListItemText, } from "@mui/material"; import Image from "next/image"; import React, {ReactNode} from "react"; import {tw} from "@/utils/tailwind"; import Collapse from '@mui/material/Collapse'; import Link from "next/link"; import ChevronLeftIcon from "@mui/icons-material/ChevronLeft"; import HomeIcon from "@mui/icons-material/Home"; import HubIcon from "@mui/icons-material/Hub"; import PersonIcon from "@mui/icons-material/Person"; import RouterIcon from "@mui/icons-material/Router"; import StorageIcon from "@mui/icons-material/Storage"; import ExpandLess from '@mui/icons-material/ExpandLess'; import ExpandMore from '@mui/icons-material/ExpandMore'; type MenuEntry = { icon: ReactNode; label: string; to: string; disabled: boolean; } & { subMenuEntries?: MenuEntry[]; }; const menuEntityEntries: MenuEntry[] = [ { icon: , label: "C1", to: "/client-1", disabled: false, }, { icon: , label: "C2", to: "/client-2", disabled: false, } ]; const menuEntries: MenuEntry[] = [ { icon: , label: "Home", to: "/", disabled: false, }, { icon: , label: "Entities", to: "/entities", disabled: false, }, { icon: , label: "AP", to: "/access-point", disabled: false, }, { icon: , label: "DLG", to: "/distributed-ledger-gateway", disabled: false, }, ]; const hideSidebar = tw`-translate-x-14 lg:-translate-x-64`; const showSidebar = tw`lg:translate-x-0`; interface SidebarProps { show: boolean; onClose: () => void; } export function Sidebar(props: SidebarProps) { const {show, onClose} = props; const [activeMenuItem, setActiveMenuItem] = React.useState(window.location.pathname); const [collapseMenuOpen, setCollapseMenuOpen] = React.useState(true); const handleCollapseClick = () => { setCollapseMenuOpen(!collapseMenuOpen); }; const handleMenuItemClick = (path: string) => { setActiveMenuItem(path); }; return ( ); }