@jbrowse/core
Version:
JBrowse 2 core libraries used by plugins
25 lines (24 loc) • 1.21 kB
JavaScript
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
import { makeStyles } from '@jbrowse/core/util/tss-react';
import ArrowDropDown from '@mui/icons-material/ArrowDropDown';
import { Button, alpha } from '@mui/material';
import { observer } from 'mobx-react';
import CascadingMenuButton from "./CascadingMenuButton.js";
const useStyles = makeStyles()(theme => ({
buttonRoot: {
'&:hover': {
backgroundColor: alpha(theme.palette.primary.contrastText, theme.palette.action.hoverOpacity),
'@media (hover: none)': {
backgroundColor: 'transparent',
},
},
},
}));
function ButtonComponent(props) {
const { classes } = useStyles();
return (_jsx(Button, { ...props, className: classes.buttonRoot, children: props.children }));
}
const DropDownMenu = observer(function DropDownMenu({ menuTitle, menuItems, }) {
return (_jsxs(CascadingMenuButton, { menuItems: menuItems, color: "inherit", ButtonComponent: ButtonComponent, anchorOrigin: { vertical: 'bottom', horizontal: 'left' }, transformOrigin: { vertical: 'top', horizontal: 'left' }, children: [menuTitle, _jsx(ArrowDropDown, {})] }));
});
export default DropDownMenu;