in packages/rc-components/rc-console-menu/src/ItemDescriptor.tsx [12:43]
export function mapItemToJSX(item: IItemDescriptor): React.ReactNode {
const {
key,
label,
disabled = false,
visible = true,
render,
items: subItems,
navProps,
type,
} = item;
if (visible) {
if (subItems) {
return (
<S.SubMenu key={key} label={label} {...navProps}>
{subItems.map(mapItemToJSX)}
</S.SubMenu>
);
}
if (type === 'divider') {
return <S.Divider key={key} />;
}
return (
<S.Item key={key} disabled={disabled} {...navProps}>
{render ? render(item) : label}
</S.Item>
);
}
return null;
}