Home / File/ hover-card-example.tsx — ui Source File

hover-card-example.tsx — ui Source File

Architecture documentation for hover-card-example.tsx, a tsx file in the ui codebase. 4 imports, 0 dependents.

File tsx ComponentRegistry UIPrimitives 4 imports 3 functions

Entity Profile

Dependency Diagram

graph LR
  7322de46_bcfe_1550_9825_0d9de04c89e2["hover-card-example.tsx"]
  f56be340_a522_c6f7_dec3_5906873d14c8["example"]
  7322de46_bcfe_1550_9825_0d9de04c89e2 --> f56be340_a522_c6f7_dec3_5906873d14c8
  7328fa0a_98b6_fe77_42fd_0d1582b24604["button"]
  7322de46_bcfe_1550_9825_0d9de04c89e2 --> 7328fa0a_98b6_fe77_42fd_0d1582b24604
  bf79f9bb_684a_daf2_047f_c53b74f509e8["dialog"]
  7322de46_bcfe_1550_9825_0d9de04c89e2 --> bf79f9bb_684a_daf2_047f_c53b74f509e8
  cbd4a5d3_c1b9_8dea_25ed_ca80313eaf53["hover-card"]
  7322de46_bcfe_1550_9825_0d9de04c89e2 --> cbd4a5d3_c1b9_8dea_25ed_ca80313eaf53
  style 7322de46_bcfe_1550_9825_0d9de04c89e2 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

import {
  Example,
  ExampleWrapper,
} from "@/registry/bases/base/components/example"
import { Button } from "@/registry/bases/base/ui/button"
import {
  Dialog,
  DialogContent,
  DialogDescription,
  DialogHeader,
  DialogTitle,
  DialogTrigger,
} from "@/registry/bases/base/ui/dialog"
import {
  HoverCard,
  HoverCardContent,
  HoverCardTrigger,
} from "@/registry/bases/base/ui/hover-card"

export default function HoverCardExample() {
  return (
    <ExampleWrapper>
      <HoverCardSides />
      <HoverCardInDialog />
    </ExampleWrapper>
  )
}

const HOVER_CARD_SIDES = [
  "inline-start",
  "left",
  "top",
  "bottom",
  "right",
  "inline-end",
] as const

function HoverCardSides() {
  return (
    <Example title="Sides" containerClassName="col-span-2">
      <div className="flex flex-wrap items-center justify-center gap-2">
        {HOVER_CARD_SIDES.map((side) => (
          <HoverCard key={side}>
            <HoverCardTrigger
              delay={100}
              closeDelay={100}
              render={<Button variant="outline" className="capitalize" />}
            >
              {side.replace("-", " ")}
            </HoverCardTrigger>
            <HoverCardContent side={side}>
              <div className="style-lyra:gap-1 style-nova:gap-1.5 style-vega:gap-2 style-maia:gap-2 style-mira:gap-1 flex flex-col">
                <h4 className="font-medium">Hover Card</h4>
                <p>
                  This hover card appears on the {side.replace("-", " ")} side
                  of the trigger.
                </p>
              </div>
            </HoverCardContent>
          </HoverCard>
        ))}
      </div>
    </Example>
  )
}

function HoverCardInDialog() {
  return (
    <Example title="In Dialog">
      <Dialog>
        <DialogTrigger render={<Button variant="outline" />}>
          Open Dialog
        </DialogTrigger>
        <DialogContent>
          <DialogHeader>
            <DialogTitle>Hover Card Example</DialogTitle>
            <DialogDescription>
              Hover over the button below to see the hover card.
            </DialogDescription>
          </DialogHeader>
          <HoverCard>
            <HoverCardTrigger
              delay={100}
              closeDelay={100}
              render={<Button variant="outline" className="w-fit" />}
            >
              Hover me
            </HoverCardTrigger>
            <HoverCardContent>
              <div className="style-lyra:gap-1 style-nova:gap-1.5 style-vega:gap-2 style-maia:gap-2 style-mira:gap-1 flex flex-col">
                <h4 className="font-medium">Hover Card</h4>
                <p>
                  This hover card appears inside a dialog. Hover over the button
                  to see it.
                </p>
              </div>
            </HoverCardContent>
          </HoverCard>
        </DialogContent>
      </Dialog>
    </Example>
  )
}

Subdomains

Dependencies

  • button
  • dialog
  • example
  • hover-card

Frequently Asked Questions

What does hover-card-example.tsx do?
hover-card-example.tsx is a source file in the ui codebase, written in tsx. It belongs to the ComponentRegistry domain, UIPrimitives subdomain.
What functions are defined in hover-card-example.tsx?
hover-card-example.tsx defines 3 function(s): HoverCardExample, HoverCardInDialog, HoverCardSides.
What does hover-card-example.tsx depend on?
hover-card-example.tsx imports 4 module(s): button, dialog, example, hover-card.
Where is hover-card-example.tsx in the architecture?
hover-card-example.tsx is located at apps/v4/registry/bases/base/examples/hover-card-example.tsx (domain: ComponentRegistry, subdomain: UIPrimitives, directory: apps/v4/registry/bases/base/examples).

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free