@lunit/oui
Version:
Lunit Oncology UI components
13 lines (12 loc) • 707 B
JavaScript
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
import { createContext, forwardRef, useMemo } from 'react';
import { StyledListSubheader, StyledMenu } from './Menu.styled';
export const MenuContext = createContext({
size: 'small',
showCheck: false,
});
const Menu = forwardRef(({ subheader, size = 'small', showCheck = false, children, ...props }, ref) => {
const contextValue = useMemo(() => ({ size, showCheck }), [size, showCheck]);
return (_jsx(MenuContext.Provider, { value: contextValue, children: _jsxs(StyledMenu, { size: size, ref: ref, ...props, children: [subheader && _jsx(StyledListSubheader, { children: subheader }), children] }) }));
});
export default Menu;