import { useFloatingTree, useListItem, useMergeRefs } from "@floating-ui/react"; import { ButtonHTMLAttributes, FocusEvent, MouseEvent, RefObject, useContext } from "react"; import { MenuContext } from "./MenuContext"; interface Props extends ButtonHTMLAttributes { label: string; disabled?: boolean; ref?: RefObject; } export function MenuItem({ label, disabled, ref, ...props }: Props) { const menu = useContext(MenuContext); const item = useListItem({ label: disabled ? null : label }); const tree = useFloatingTree(); const isActive = item.index === menu.activeIndex; return ( ); }