import iconStyles from './menu-icon.module.css' import { useMatches } from 'react-router' import { SideNav, SideNavItem, SideNavItemContent, SideNavItemLink, Text } from '@react-spectrum/s2/SideNav' import { defaultExpandedKeys, menuItems, type NavigationItem, type PageMetadata } from '../route-config' function renderItem(item: NavigationItem, level = 0) { const Icon = item.Icon const content = ( <> {Icon && } {item.title} ) return ( {item.path ? {content} : content} {item.children?.map((child) => renderItem(child, level + 1))} ) } function SidebarMenu() { const currentPage = useMatches().at(-1)?.handle as PageMetadata | undefined return ( {menuItems.map((item) => renderItem(item))} ) } export default SidebarMenu