Context menu
blok/context-menuFreeComponent
Displays a menu to the user, such as a set of actions or functions, triggered by a button.
Install it
npx shadcn@latest add https://blok.sitecore.com/r/context-menu.jsonSource
1"use client";23import { Icon } from "@/lib/icon";4import { mdiCheck, mdiChevronRight, mdiCircle } from "@mdi/js";5import { ContextMenu as ContextMenuPrimitive } from "radix-ui";6import type * as React from "react";78import { cn } from "@/lib/utils";910function ContextMenu({11 ...props12}: React.ComponentProps<typeof ContextMenuPrimitive.Root>) {13 return <ContextMenuPrimitive.Root data-slot="context-menu" {...props} />;14}1516function ContextMenuTrigger({17 ...props18}: React.ComponentProps<typeof ContextMenuPrimitive.Trigger>) {19 return (20 <ContextMenuPrimitive.Trigger data-slot="context-menu-trigger" {...props} />21 );22}2324function ContextMenuGroup({25 ...props26}: React.ComponentProps<typeof ContextMenuPrimitive.Group>) {27 return (28 <ContextMenuPrimitive.Group data-slot="context-menu-group" {...props} />29 );30}3132function ContextMenuPortal({33 ...props34}: React.ComponentProps<typeof ContextMenuPrimitive.Portal>) {35 return (36 <ContextMenuPrimitive.Portal data-slot="context-menu-portal" {...props} />37 );38}3940function ContextMenuSub({41 ...props42}: React.ComponentProps<typeof ContextMenuPrimitive.Sub>) {43 return <ContextMenuPrimitive.Sub data-slot="context-menu-sub" {...props} />;44}4546function ContextMenuRadioGroup({47 ...props48}: React.ComponentProps<typeof ContextMenuPrimitive.RadioGroup>) {49 return (50 <ContextMenuPrimitive.RadioGroup51 data-slot="context-menu-radio-group"52 {...props}53 />54 );55}5657function ContextMenuSubTrigger({58 className,59 inset,60 children,61 ...props62}: React.ComponentProps<typeof ContextMenuPrimitive.SubTrigger> & {63 inset?: boolean;64}) {65 return (66 <ContextMenuPrimitive.SubTrigger67 data-slot="context-menu-sub-trigger"68 data-inset={inset}69 className={cn(70 "focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground flex cursor-default items-center rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[inset]:pl-8 [&_svg]:size-[0.8rem] [&_svg]:text-neutral-600",71 className,72 )}73 {...props}74 >75 {children}76 <Icon path={mdiChevronRight} size={1.5} className="ml-auto" />77 </ContextMenuPrimitive.SubTrigger>78 );79}8081function ContextMenuSubContent({82 className,83 ...props84}: React.ComponentProps<typeof ContextMenuPrimitive.SubContent>) {85 return (86 <ContextMenuPrimitive.SubContent87 data-slot="context-menu-sub-content"88 className={cn(89// … truncated
What it pulls in
npm packages
Other registry items
Files it writes
More from blok
All 72 items| Component | Registry | Kind | Access | Installs | Command |
|---|---|---|---|---|---|
| Accordionaccordion | blok | Components | Free | 2 deps · 2 files | |
| Action baraction-bar | blok | Components | Free | 1 dep · 2 files | |
| Alertalert | blok | Components | Free | 2 deps · 2 files | |
| Alert dialogalert-dialog | blok | Components | Free | 2 deps | |
| Aspect ratioaspect-ratio | blok | Components | Free | 1 dep | |
| Avataravatar | blok | Components | Free | 1 dep | |
| Badgebadge | blok | Components | Free | 2 deps | |
| All componentsblok-components | blok | Components | Free | no deps |
