import { useState } from "react"; import { useTranslation } from "react-i18next"; import { Button, Typography } from "@mui/joy"; import InventoryIcon from "@mui/icons-material/Inventory"; import AddBoxIcon from "@mui/icons-material/AddBox"; import StorageIcon from "@mui/icons-material/Storage"; import SettingsIcon from "@mui/icons-material/Settings"; import ExitToAppIcon from "@mui/icons-material/ExitToApp"; import TranslateIcon from "@mui/icons-material/Translate"; import Brightness4Icon from "@mui/icons-material/Brightness4"; import MenuIcon from "@mui/icons-material/Menu"; import CloseIcon from "@mui/icons-material/Close"; import { useMatchRoute, useNavigate } from "@tanstack/react-router"; import Cookies from "js-cookie"; import { changeTranslation } from "../utils/uxFncs"; import { useColorScheme } from "@mui/joy/styles"; import { useLogout } from "../hooks/useLogout.ts"; export const Sidebar = () => { const { t } = useTranslation(); const navigate = useNavigate(); const { logout } = useLogout(); const matchRoute = useMatchRoute(); const { mode, setMode } = useColorScheme(); const [isOpen, setIsOpen] = useState(false); const btnClass = "h-11 w-full justify-start! rounded-2xl px-4 text-left text-sm font-semibold transition [&_.MuiButton-startDecorator]:mr-3! [&_.MuiButton-startDecorator]:ml-0!"; const variant = (to: string) => !!matchRoute({ to, fuzzy: false }) ? "soft" : "plain"; const handleNavigate = (to: string) => { void navigate({ to }); setIsOpen(false); }; return ( ); };