"use client" /** * HoverCard — richer, persistent hover surface for content too large or * interactive for a `Tooltip` (avatars, link previews, user cards, glossary * entries). * * When to choose `HoverCard` vs `Tooltip` vs `Popover`: * - **`Tooltip`** — short text label, no interaction, auto-dismiss on * mouseout / blur. Pairs with `Tip` for icon-only buttons. * - **`HoverCard`** — small interactive content (links, copy buttons, * avatars) shown on intentional hover; closes when the pointer leaves. * Not focusable / not announced by screen readers — pair with an * accessible alternative for keyboard users (visit profile link, etc.). * - **`Popover`** — keyboard- and screen-reader-accessible, opens on * explicit click. Use this when the surface holds primary content. * * Accessibility (per Radix): * - HoverCard is NOT exposed to screen readers — Radix intentionally * treats it as a sighted-mouse-user affordance. The trigger MUST also * convey its meaning through its own accessible name and behaviour * (e.g. a focusable `` that links to the same content). */ import * as React from "react" import { HoverCard as HoverCardPrimitive } from "radix-ui" import { cn } from "../../lib/utils" function HoverCard({ ...props }: React.ComponentProps) { return } function HoverCardTrigger({ ...props }: React.ComponentProps) { return ( ) } function HoverCardContent({ className, align = "center", sideOffset = 4, ...props }: React.ComponentProps) { return ( ) } export { HoverCard, HoverCardTrigger, HoverCardContent }