// @ts-nocheck import { FC, PropsWithChildren, Fragment, ReactElement } from "react"; import ExpandMore from "@material-ui/icons/ExpandMore"; import List from "@material-ui/core/List"; import MenuItem from "@material-ui/core/MenuItem"; import ListItemIcon from "@material-ui/core/ListItemIcon"; import Typography from "@material-ui/core/Typography"; import Collapse from "@material-ui/core/Collapse"; import Tooltip from "@material-ui/core/Tooltip"; import { makeStyles } from "@material-ui/core/styles"; import { useTranslate } from "react-admin"; const useStyles = makeStyles((theme) => ({ icon: { minWidth: theme.spacing(5) }, sidebarIsOpen: { "& a": { paddingLeft: theme.spacing(4), transition: "padding-left 195ms cubic-bezier(0.4, 0, 0.6, 1) 0ms", }, }, sidebarIsClosed: { "& a": { paddingLeft: theme.spacing(2), transition: "padding-left 195ms cubic-bezier(0.4, 0, 0.6, 1) 0ms", }, }, })); type SubMenuProps = PropsWithChildren<{ dense: boolean; handleToggle: () => void; icon: ReactElement; isOpen: boolean; name: string; sidebarIsOpen: boolean; }>; export const SubMenu: FC = ({ handleToggle, sidebarIsOpen, isOpen, name, icon, children, dense, }) => { const translate = useTranslate(); const classes = useStyles(); const header = ( {isOpen ? : icon} {translate(name)} ); return ( {sidebarIsOpen || isOpen ? ( header ) : ( {header} )} {children} ); };