import { useMemo } from 'react'; import { ContextMenu, DropdownMenu, useContextMenuContext, useDropdownMenuContext } from '@sd/ui'; export const useMenu = (): typeof DropdownMenu | typeof ContextMenu | null => { const isDropdownMenu = useDropdownMenuContext(); const isContextMenu = useContextMenuContext(); const menu = useMemo( () => (isDropdownMenu ? DropdownMenu : isContextMenu ? ContextMenu : null), [isDropdownMenu, isContextMenu] ); return menu; }; const Separator = ( props: Parameters[0] ) => { const Menu = useMenu(); if (!Menu) return null; return ; }; const SubMenu = ( props: Parameters[0] ) => { const Menu = useMenu(); if (!Menu) return null; return ; }; const Item = (props: Parameters[0]) => { const ContextMenu = useMenu(); if (!ContextMenu) return null; return ; }; export const Menu = { Item, Separator, SubMenu };