MynaUI
No results found.
Theme
Toggle Theme (Dark)
Documentation
Getting Started
Design System
Changelog
FAQ
Legal
Icons
Elements
Accordion
Alert Dialog
Alert
Avatar Groups
Avatar
Badge
Breadcrumb
Button Groups
Button
Calendar
Combobox
Command
Context Menu
Data Table
Dialog
Drawer
Dropdown Menu
Menubar
Pagination
Popover
Progress
Rating
Sheet
Skeleton
Spinner
Table
Tabs
Toast
Toggle and Toggle Group
Tooltip
Forms
Checkbox
Date Picker
Input OTP
Input
Radio
Select
Slider
Switch
Textarea
Marketing
404
Banners
Blog List
Blog Post
Call to Action
Cookies
FAQ
Features
Footer
Header
Hero
Newsletters
Statistics
Testimonial Logos
Application
App Headers
App Sheets
Application Dialogs
Card Headers
Cards
Containers
Dividers
Empty States
Forgot Password
Login
Notifications
Registration
Section Headers
Documentation
  • Getting Started
  • Copybook New
  • Design System
  • Icons
  • Changelog
  • Legal
  • Figma
  • Request Components
  • Request Icons
Elements
  • Accordion
  • Alert Dialog
  • Alert
  • Avatar Groups
  • Avatar
  • Badge
  • Breadcrumb
  • Button Groups
  • Button
  • Calendar
  • Combobox
  • Command
  • Context Menu
  • Data Table
  • Dialog
  • Drawer
  • Dropdown Menu
  • Menubar
  • Pagination
  • Popover
  • Progress
  • Rating
  • Sheet
  • Skeleton
  • Spinner
  • Table
  • Tabs
  • Toast
  • Toggle and Toggle Group
  • Tooltip
Forms
  • Checkbox
  • Date Picker
  • Input OTP
  • Input
  • Radio
  • Select
  • Slider
  • Switch
  • Textarea
Marketing
  • 404
  • Banners
  • Blog List
  • Blog Post
  • Call to Action
  • Cookies
  • FAQ
  • Features
  • Footer
  • Header
  • Hero
  • Newsletters
  • Statistics
  • Testimonial Logos
Application
  • App Headers
  • App Sheets
  • Application Dialogs
  • Card Headers
  • Cards
  • Containers
  • Dividers
  • Empty States
  • Forgot Password
  • Login
  • Notifications
  • Registration
  • Section Headers
Newsletter

Get the latest news and updates from MynaUI

Subscribe for Updates

Context Menu

Displays a menu to the user — such as a set of actions or functions — triggered by a button.

import {
  ContextMenu,
  ContextMenuContent,
  ContextMenuItem,
  ContextMenuShortcut,
  ContextMenuSub,
  ContextMenuSubContent,
  ContextMenuSubTrigger,
  ContextMenuTrigger,
} from "@/components/ui/context-menu";

export default function Basic() {
  return (
    <ContextMenu>
      <ContextMenuTrigger className="grid h-[150px] w-[300px] place-items-center rounded border-2 border-dashed p-4 text-center text-sm">
        Right click here to open the bookmark context menu
      </ContextMenuTrigger>
      <ContextMenuContent className="w-64">
        <ContextMenuItem>
          Edit bookmark
          <ContextMenuShortcut>⌘E</ContextMenuShortcut>
        </ContextMenuItem>
        <ContextMenuItem>
          Delete bookmark
          <ContextMenuShortcut>⌘D</ContextMenuShortcut>
        </ContextMenuItem>
        <ContextMenuItem>
          Copy link
          <ContextMenuShortcut>⌘C</ContextMenuShortcut>
        </ContextMenuItem>
        <ContextMenuItem>
          Open in new tab
          <ContextMenuShortcut>⌘T</ContextMenuShortcut>
        </ContextMenuItem>
        <ContextMenuSub>
          <ContextMenuSubTrigger>Add to folder</ContextMenuSubTrigger>
          <ContextMenuSubContent className="w-48">
            <ContextMenuItem>Work</ContextMenuItem>
            <ContextMenuItem>Personal</ContextMenuItem>
            <ContextMenuItem>Travel</ContextMenuItem>
            <ContextMenuItem>Create new folder</ContextMenuItem>
          </ContextMenuSubContent>
        </ContextMenuSub>
        <ContextMenuItem>
          Share bookmark
          <ContextMenuShortcut>⇧⌘S</ContextMenuShortcut>
        </ContextMenuItem>
      </ContextMenuContent>
    </ContextMenu>
  );
}
import {
  ContextMenu,
  ContextMenuContent,
  ContextMenuItem,
  ContextMenuSeparator,
  ContextMenuTrigger,
} from "@/components/ui/context-menu";
import {
  Copy,
  Envelope,
  Lightning,
  Share,
  SlashCircle,
} from "@mynaui/icons-react";

export default function WithIcons() {
  return (
    <ContextMenu>
      <ContextMenuTrigger className="grid h-[150px] w-[300px] place-items-center rounded border-2 border-dashed p-4 text-center text-sm">
        Right click here to manage folder sharing
      </ContextMenuTrigger>
      <ContextMenuContent className="w-64">
        <ContextMenuItem>
          <Share stroke={2} />
          Share folder with others
        </ContextMenuItem>
        <ContextMenuItem>
          <SlashCircle stroke={2} />
          Unshare folder
        </ContextMenuItem>
        <ContextMenuItem>
          <Lightning stroke={2} />
          Change sharing permissions
        </ContextMenuItem>
        <ContextMenuSeparator />
        <ContextMenuItem>
          <Copy stroke={2} />
          Copy share link
        </ContextMenuItem>
        <ContextMenuItem>
          <Envelope stroke={2} />
          Email share link
        </ContextMenuItem>
      </ContextMenuContent>
    </ContextMenu>
  );
}
import { Avatar, AvatarFallback } from "@/components/ui/avatar";
import {
  ContextMenu,
  ContextMenuContent,
  ContextMenuItem,
  ContextMenuSeparator,
  ContextMenuTrigger,
} from "@/components/ui/context-menu";
import {
  Bell,
  Bookmark,
  Cog,
  Edit,
  Image,
  Lock,
  Logout,
  Pencil,
  Share,
  User,
  UserPlus,
  Users,
} from "@mynaui/icons-react";

export default function WithAvatar() {
  return (
    <ContextMenu>
      <ContextMenuTrigger className="flex cursor-pointer items-center gap-2 p-4 text-xs">
        <Avatar className="size-8">
          <AvatarFallback>PJ</AvatarFallback>
        </Avatar>
        <span className="font-medium">Right Click Here</span>
      </ContextMenuTrigger>
      <ContextMenuContent className="w-64">
        <ContextMenuItem>
          <User stroke={2} />
          View Profile
        </ContextMenuItem>
        <ContextMenuItem>
          <Edit stroke={2} />
          Edit Profile
        </ContextMenuItem>
        <ContextMenuItem>
          <Image stroke={2} />
          Change Avatar
        </ContextMenuItem>
        <ContextMenuItem>
          <Pencil stroke={2} />
          Update Bio
        </ContextMenuItem>
        <ContextMenuSeparator />
        <ContextMenuItem>
          <Bookmark stroke={2} />
          View Bookmarks
        </ContextMenuItem>
        <ContextMenuItem>
          <Share stroke={2} />
          View Shared Bookmarks
        </ContextMenuItem>
        <ContextMenuSeparator />
        <ContextMenuItem>
          <UserPlus stroke={2} />
          Manage Followers
        </ContextMenuItem>
        <ContextMenuItem>
          <Users stroke={2} />
          Manage Following
        </ContextMenuItem>
        <ContextMenuSeparator />
        <ContextMenuItem>
          <Cog stroke={2} />
          Account Settings
        </ContextMenuItem>
        <ContextMenuItem>
          <Lock stroke={2} />
          Privacy Settings
        </ContextMenuItem>
        <ContextMenuItem>
          <Bell stroke={2} />
          Notification Settings
        </ContextMenuItem>
        <ContextMenuSeparator />
        <ContextMenuItem>
          <Logout stroke={2} />
          Logout
        </ContextMenuItem>
      </ContextMenuContent>
    </ContextMenu>
  );
}
import {
  ContextMenu,
  ContextMenuContent,
  ContextMenuItem,
  ContextMenuSeparator,
  ContextMenuShortcut,
  ContextMenuSub,
  ContextMenuSubContent,
  ContextMenuSubTrigger,
  ContextMenuTrigger,
} from "@/components/ui/context-menu";
import {
  Copy,
  Download,
  Edit,
  File,
  Folder,
  Move,
  Trash,
} from "@mynaui/icons-react";

export default function FileOptions() {
  return (
    <ContextMenu>
      <ContextMenuTrigger className="grid h-[150px] w-[300px] place-items-center rounded border-2 border-dashed p-4 text-center text-sm">
        Right click a file for options
      </ContextMenuTrigger>
      <ContextMenuContent className="w-64">
        <ContextMenuItem>
          <File stroke={2} />
          Open
        </ContextMenuItem>
        <ContextMenuItem>
          <Edit stroke={2} />
          Rename
        </ContextMenuItem>
        <ContextMenuItem>
          <Copy stroke={2} />
          Make a copy
        </ContextMenuItem>
        <ContextMenuSub>
          <ContextMenuSubTrigger className="gap-2">
            <Move stroke={2} />
            Move to
          </ContextMenuSubTrigger>
          <ContextMenuSubContent className="w-48">
            <ContextMenuItem>
              <Folder stroke={2} />
              Documents
            </ContextMenuItem>
            <ContextMenuItem>
              <Folder stroke={2} />
              Media
            </ContextMenuItem>
          </ContextMenuSubContent>
        </ContextMenuSub>
        <ContextMenuItem>
          <Download stroke={2} />
          Download
          <ContextMenuShortcut>⇧⌘D</ContextMenuShortcut>
        </ContextMenuItem>
        <ContextMenuSeparator />
        <ContextMenuItem variant="destructive">
          <Trash stroke={2} />
          Delete
        </ContextMenuItem>
      </ContextMenuContent>
    </ContextMenu>
  );
}
import {
  ContextMenu,
  ContextMenuCheckboxItem,
  ContextMenuContent,
  ContextMenuLabel,
  ContextMenuRadioGroup,
  ContextMenuRadioItem,
  ContextMenuSeparator,
  ContextMenuTrigger,
} from "@/components/ui/context-menu";
import {
  Desktop,
  Layout,
  Moon,
  Sidebar,
  Sun,
} from "@mynaui/icons-react";

export default function ThemeOptions() {
  return (
    <ContextMenu>
      <ContextMenuTrigger className="grid h-[150px] w-[300px] place-items-center rounded border-2 border-dashed p-4 text-center text-sm">
        Right click to customize appearance
      </ContextMenuTrigger>
      <ContextMenuContent className="w-56">
        <ContextMenuLabel inset>Theme</ContextMenuLabel>
        <ContextMenuRadioGroup value="system">
          <ContextMenuRadioItem value="light">
            <Sun stroke={2} />
            Light
          </ContextMenuRadioItem>
          <ContextMenuRadioItem value="dark">
            <Moon stroke={2} />
            Dark
          </ContextMenuRadioItem>
          <ContextMenuRadioItem value="system">
            <Desktop stroke={2} />
            System
          </ContextMenuRadioItem>
        </ContextMenuRadioGroup>
        <ContextMenuSeparator />
        <ContextMenuCheckboxItem checked>
          <Sidebar stroke={2} />
          Show sidebar
        </ContextMenuCheckboxItem>
        <ContextMenuCheckboxItem>
          <Layout stroke={2} />
          Compact view
        </ContextMenuCheckboxItem>
      </ContextMenuContent>
    </ContextMenu>
  );
}
import {
  ContextMenu,
  ContextMenuContent,
  ContextMenuItem,
  ContextMenuSeparator,
  ContextMenuShortcut,
  ContextMenuTrigger,
} from "@/components/ui/context-menu";
import {
  CheckSquare,
  Clipboard,
  Copy,
  Redo,
  Scissors,
  Undo,
} from "@mynaui/icons-react";

export default function EditTextMenu() {
  return (
    <ContextMenu>
      <ContextMenuTrigger className="grid h-[150px] w-[300px] place-items-center rounded border-2 border-dashed p-4 text-center text-sm">
        Right click to edit text
      </ContextMenuTrigger>
      <ContextMenuContent className="w-48">
        <ContextMenuItem>
          <Undo stroke={2} />
          Undo
          <ContextMenuShortcut>⌘Z</ContextMenuShortcut>
        </ContextMenuItem>
        <ContextMenuItem>
          <Redo stroke={2} />
          Redo
          <ContextMenuShortcut>⇧⌘Z</ContextMenuShortcut>
        </ContextMenuItem>
        <ContextMenuSeparator />
        <ContextMenuItem>
          <Scissors stroke={2} />
          Cut
          <ContextMenuShortcut>⌘X</ContextMenuShortcut>
        </ContextMenuItem>
        <ContextMenuItem>
          <Copy stroke={2} />
          Copy
          <ContextMenuShortcut>⌘C</ContextMenuShortcut>
        </ContextMenuItem>
        <ContextMenuItem>
          <Clipboard stroke={2} />
          Paste
          <ContextMenuShortcut>⌘V</ContextMenuShortcut>
        </ContextMenuItem>
        <ContextMenuSeparator />
        <ContextMenuItem>
          <CheckSquare stroke={2} />
          Select All
          <ContextMenuShortcut>⌘A</ContextMenuShortcut>
        </ContextMenuItem>
      </ContextMenuContent>
    </ContextMenu>
  );
}

Not affiliated with Figma, TailwindCSS or shadcn/ui.

X (Twitter) Logo Dribbble Logo Figma Logo