{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "tooltip",
  "title": "Tooltip",
  "description": "A composable supplementary hint with shared delays, collision-aware positioning, and keyboard support.",
  "dependencies": [
    "@base-ui/react"
  ],
  "files": [
    {
      "path": "registry/rivetui/components/tooltip/tooltip.tsx",
      "content": "\"use client\";\n\nimport { Tooltip as TooltipPrimitive } from \"@base-ui/react/tooltip\";\n\nimport { cn } from \"@/lib/utils\";\n\nfunction TooltipProvider({\n  delay = 400,\n  closeDelay = 80,\n  ...props\n}: TooltipPrimitive.Provider.Props) {\n  return <TooltipPrimitive.Provider delay={delay} closeDelay={closeDelay} {...props} />;\n}\n\nfunction Tooltip<Payload>(props: TooltipPrimitive.Root.Props<Payload>) {\n  return <TooltipPrimitive.Root {...props} />;\n}\n\nfunction TooltipTrigger<Payload>(props: TooltipPrimitive.Trigger.Props<Payload>) {\n  return <TooltipPrimitive.Trigger data-slot=\"tooltip-trigger\" {...props} />;\n}\n\ntype TooltipContentProps = TooltipPrimitive.Popup.Props &\n  Pick<TooltipPrimitive.Positioner.Props, \"align\" | \"alignOffset\" | \"side\" | \"sideOffset\">;\n\nfunction TooltipContent({\n  className,\n  children,\n  align = \"center\",\n  alignOffset = 0,\n  side = \"top\",\n  sideOffset = 8,\n  ...props\n}: TooltipContentProps) {\n  return (\n    <TooltipPrimitive.Portal>\n      <TooltipPrimitive.Positioner\n        data-slot=\"tooltip-positioner\"\n        side={side}\n        sideOffset={sideOffset}\n        align={align}\n        alignOffset={alignOffset}\n        className=\"isolate z-50\"\n      >\n        <TooltipPrimitive.Popup\n          data-slot=\"tooltip-content\"\n          className={cn(\n            \"max-w-64 rounded-none border border-border bg-popover px-2.5 py-1.5 text-xs leading-relaxed text-popover-foreground transition-opacity duration-100 data-ending-style:opacity-0 data-instant:transition-none data-starting-style:opacity-0 motion-reduce:transition-none\",\n            className,\n          )}\n          {...props}\n        >\n          {children}\n          <TooltipPrimitive.Arrow\n            data-slot=\"tooltip-arrow\"\n            className=\"relative block h-1.5 w-3 overflow-clip data-[side=bottom]:-top-1.5 data-[side=left]:-right-2.25 data-[side=left]:rotate-90 data-[side=right]:-left-2.25 data-[side=right]:-rotate-90 data-[side=top]:-bottom-1.5 data-[side=top]:rotate-180 before:absolute before:bottom-0 before:left-1/2 before:size-[calc(6px*sqrt(2))] before:border before:border-border before:bg-popover before:content-[''] before:[transform:translate(-50%,50%)_rotate(45deg)]\"\n          />\n        </TooltipPrimitive.Popup>\n      </TooltipPrimitive.Positioner>\n    </TooltipPrimitive.Portal>\n  );\n}\n\nexport type { TooltipContentProps };\nexport { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger };\n",
      "type": "registry:ui"
    }
  ],
  "type": "registry:ui"
}