import { ComponentProps, ComponentPropsWithoutRef, ElementRef, forwardRef, ReactNode } from 'react' import { Button, Tooltip, TooltipContent, TooltipTrigger } from 'ui' export const ButtonTooltip = forwardRef< ElementRef, ComponentPropsWithoutRef & { tooltip: { content: ComponentProps & { text?: string | ReactNode } } } >(({ tooltip, className, disabled, focusableWhenDisabled, ...props }, ref) => { const { text, ...tooltipContentProps } = tooltip.content const hasTooltip = text !== undefined const shouldRemainFocusable = focusableWhenDisabled ?? (disabled === true && hasTooltip) return ( {text !== undefined && {text}} ) }) ButtonTooltip.displayName = 'ButtonTooltip'