UNPKG

@lunit/oui

Version:

Lunit Oncology UI components

35 lines (34 loc) 1.4 kB
import { jsx as _jsx } from "react/jsx-runtime"; import { useState } from 'react'; import { ArrowDownXs } from '../../icons'; import { BaseIconDropdown } from './IconDropdown.styled'; import theme from '../../theme'; const IconDropdown = ({ open, disabled, children, ...otherProps }) => { const [isOpen, setOpen] = useState(false); return (_jsx(BaseIconDropdown, { IconComponent: () => (_jsx(ArrowDownXs, { onClick: () => { if (typeof open === 'undefined') setOpen(false); }, style: isOpen || open ? { cursor: 'pointer', transform: 'scaleY(-1)', } : undefined })), open: // eslint-disable-next-line no-nested-ternary typeof open !== 'undefined' ? open : disabled ? false : isOpen, disabled: disabled, multiple: false, onClick: () => { if (!disabled) setOpen(!isOpen); }, MenuProps: { sx: { '.MuiPaper-root': { marginTop: '4px', borderRadius: '8px', background: theme.palette.neutralGrey[85], border: 'transparent', left: 0, width: '260px', }, }, }, ...otherProps, children: children })); }; export default IconDropdown;