Context Menu

Right-click context action menu built on Radix ContextMenu primitive with data-panel surface styling.

// Radix — @radix-ui/react-context-menu
import { ContextMenu, ContextMenuItem } from "@shavin/ui";

Default usage

Right-click me
<ContextMenu
  trigger={
    <div className="flex h-32 w-72 items-center justify-center rounded-[var(--radius-xl)] border border-dashed border-hairline-strong text-sm text-fg-muted">
      Right-click me
    </div>
  }
>
  <ContextMenuItem onSelect={() => alert("Edit")}>Edit</ContextMenuItem>
  <ContextMenuItem onSelect={() => alert("Duplicate")}>Duplicate</ContextMenuItem>
  <ContextMenuItem variant="danger" onSelect={() => alert("Delete")}>
    Delete
  </ContextMenuItem>
</ContextMenu>

Props

PropTypeDefault
trigger*ReactNode
children*ReactNode
classNamestring
variant"default" | "danger""default"

* required

Configure Theme
Theme
Accent Color
Custom
Gray Family
Appearance
Radius
Scaling
Panel Style
Heading Font
Body Font