{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "tooltip",
  "title": "Tooltip",
  "dependencies": [
    "@base-ui/react"
  ],
  "files": [
    {
      "path": "registry/default/ui/tooltip.tsx",
      "content": "import { Tooltip as TooltipPrimitive } from '@base-ui/react/tooltip';\n\nimport { cn } from '@/lib/utils';\n\nconst TooltipProvider = TooltipPrimitive.Provider;\n\nconst Tooltip = TooltipPrimitive.Root;\n\nfunction TooltipTrigger(props: TooltipPrimitive.Trigger.Props) {\n  return <TooltipPrimitive.Trigger data-slot='tooltip-trigger' {...props} />;\n}\n\nfunction ArrowSvg(props: React.ComponentProps<'svg'>) {\n  return (\n    <svg width='20' height='10' viewBox='0 0 20 10' fill='none' {...props}>\n      <path\n        d='M9.66437 2.60207L4.80758 6.97318C4.07308 7.63423 3.11989 8 2.13172 8H0V10H20V8H18.5349C17.5468 8 16.5936 7.63423 15.8591 6.97318L11.0023 2.60207C10.622 2.2598 10.0447 2.25979 9.66437 2.60207Z'\n        className='fill-foreground'\n      />\n      <path\n        d='M8.99542 1.85876C9.75604 1.17425 10.9106 1.17422 11.6713 1.85878L16.5281 6.22989C17.0789 6.72568 17.7938 7.00001 18.5349 7.00001L15.89 7L11.0023 2.60207C10.622 2.2598 10.0447 2.2598 9.66436 2.60207L4.77734 7L2.13171 7.00001C2.87284 7.00001 3.58774 6.72568 4.13861 6.22989L8.99542 1.85876Z'\n        className='fill-background/10 dark:fill-background/10'\n      />\n    </svg>\n  );\n}\n\nfunction TooltipArrow({ className, ...props }: TooltipPrimitive.Arrow.Props) {\n  return (\n    <TooltipPrimitive.Arrow\n      className={cn(\n        'flex data-[side=bottom]:-top-2 data-[side=bottom]:rotate-0 data-[side=left]:-right-3.25 data-[side=left]:rotate-90 data-[side=right]:-left-3.25 data-[side=right]:-rotate-90 data-[side=top]:-bottom-2 data-[side=top]:rotate-180',\n        className\n      )}\n      {...props}\n    >\n      <ArrowSvg />\n    </TooltipPrimitive.Arrow>\n  );\n}\n\nfunction TooltipPopup({\n  className,\n  align = 'center',\n  sideOffset = 9,\n  side = 'top',\n  children,\n  ...props\n}: TooltipPrimitive.Popup.Props & {\n  align?: TooltipPrimitive.Positioner.Props['align'];\n  side?: TooltipPrimitive.Positioner.Props['side'];\n  sideOffset?: TooltipPrimitive.Positioner.Props['sideOffset'];\n}) {\n  return (\n    <TooltipPrimitive.Portal>\n      <TooltipPrimitive.Positioner\n        data-slot='tooltip-positioner'\n        className='z-50'\n        sideOffset={sideOffset}\n        align={align}\n        side={side}\n      >\n        <TooltipPrimitive.Popup\n          data-slot='tooltip-content'\n          className={cn(\n            'flex origin-(--transform-origin) flex-col rounded-md bg-foreground px-2 py-1 text-sm text-background shadow-sm ring ring-foreground/10 transition-[transform,scale,opacity] data-ending-style:scale-90 data-ending-style:opacity-0 data-instant:transition-none data-starting-style:scale-90 data-starting-style:opacity-0 dark:shadow-none dark:ring-foreground/10',\n            className\n          )}\n          {...props}\n        >\n          {children}\n          <TooltipArrow />\n        </TooltipPrimitive.Popup>\n      </TooltipPrimitive.Positioner>\n    </TooltipPrimitive.Portal>\n  );\n}\n\nexport { TooltipProvider, Tooltip, TooltipTrigger, TooltipPopup };\n",
      "type": "registry:ui"
    }
  ],
  "type": "registry:ui"
}