import { Box, Flex, Icon, Text } from "@chakra-ui/react" import { useQueryClient } from "@tanstack/react-query" import { Link as RouterLink } from "@tanstack/react-router" import { useTranslation } from "react-i18next" import { FiBriefcase, FiHome, FiSettings, FiUsers } from "react-icons/fi" import type { IconType } from "react-icons/lib" import type { UserPublic } from "@/client" interface SidebarItemsProps { onClose?: () => void } interface Item { icon: IconType titleKey: string path: string } const SidebarItems = ({ onClose }: SidebarItemsProps) => { const queryClient = useQueryClient() const currentUser = queryClient.getQueryData(["currentUser"]) const { t } = useTranslation() const items: Item[] = [ { icon: FiHome, titleKey: "navigation.dashboard", path: "/" }, { icon: FiBriefcase, titleKey: "navigation.items", path: "/items" }, { icon: FiSettings, titleKey: "navigation.userSettings", path: "/settings" }, ] const finalItems: Item[] = currentUser?.is_superuser ? [...items, { icon: FiUsers, titleKey: "navigation.admin", path: "/admin" }] : items const listItems = finalItems.map(({ icon, titleKey, path }) => ( {t(titleKey)} )) return ( <> {t('navigation.menu')} {listItems} ) } export default SidebarItems