// @ts-nocheck /* eslint-disable camelcase */ import { FC, useState } from "react"; import { useSelector } from "react-redux"; import SecurityIcon from "@material-ui/icons/Security"; import VoiceIcon from "@material-ui/icons/PhoneInTalk"; import { Box } from "@material-ui/core"; import { useTheme } from "@material-ui/core/styles"; import useMediaQuery from "@material-ui/core/useMediaQuery"; import { useTranslate, MenuItemLink } from "react-admin"; import users from "../users"; import accounts from "../accounts"; import webhooks from "../webhooks"; import voiceLines from "../voice/voicelines"; import voiceProviders from "../voice/providers"; import whatsappBots from "../whatsapp/bots"; import signalBots from "../signal/bots"; import { SubMenu } from "./SubMenu"; type MenuName = "menuVoice" | "menuSecurity"; export const Menu: FC = ({ onMenuClick, logout, dense = false }: any) => { const [state, setState] = useState({ menuVoice: false, menuSecurity: false, }); const translate = useTranslate(); const theme = useTheme(); const isXSmall = useMediaQuery(theme.breakpoints.down("xs")); const open = useSelector((state: any) => state.admin.ui.sidebarOpen); useSelector((state: any) => state.theme); // force rerender on theme change const handleToggle = (menu: MenuName) => { setState((state) => ({ ...state, [menu]: !state[menu] })); }; return ( } onClick={onMenuClick} sidebarIsOpen={open} dense={dense} /> } onClick={onMenuClick} sidebarIsOpen={open} dense={dense} /> handleToggle("menuVoice")} isOpen={state.menuVoice} sidebarIsOpen={open} name="pos.menu.voice" icon={} dense={dense} > } onClick={onMenuClick} sidebarIsOpen={open} dense={dense} /> } onClick={onMenuClick} sidebarIsOpen={open} dense={dense} /> } onClick={onMenuClick} sidebarIsOpen={open} dense={dense} /> handleToggle("menuSecurity")} isOpen={state.menuSecurity} sidebarIsOpen={open} name="pos.menu.security" icon={} dense={dense} > } onClick={onMenuClick} sidebarIsOpen={open} dense={dense} /> } onClick={onMenuClick} sidebarIsOpen={open} dense={dense} /> {isXSmall && logout} ); }; export default Menu;