{
"$schema": "https://blode.co/ui/schema/registry-item.json",
"name": "context-menu",
"title": "Context Menu",
"author": "Matthew Blode",
"description": "A menu that appears on right-click, providing contextual actions.",
"dependencies": ["@base-ui/react"],
"files": [
{
"path": "ui/context-menu.tsx",
"content": "\"use client\";\n\nimport { ContextMenu as ContextMenuPrimitive } from \"@base-ui/react/context-menu\";\nimport { CheckIcon, ChevronRightIcon } from \"blode-icons-react\";\nimport type { ComponentProps } from \"react\";\n\nimport { cn } from \"@/lib/utils\";\n\nconst ContextMenu = ({ ...props }: ContextMenuPrimitive.Root.Props) => (\n \n);\n\nconst ContextMenuPortal = ({ ...props }: ContextMenuPrimitive.Portal.Props) => (\n \n);\n\nconst ContextMenuTrigger = ({ className, ...props }: ContextMenuPrimitive.Trigger.Props) => (\n \n);\n\nconst ContextMenuContent = ({\n className,\n align = \"start\",\n alignOffset = 4,\n side = \"right\",\n sideOffset = 0,\n children,\n ...props\n}: ContextMenuPrimitive.Popup.Props &\n Pick) => (\n \n \n \n \n {children}\n
\n \n \n \n);\n\nconst ContextMenuGroup = ({ ...props }: ContextMenuPrimitive.Group.Props) => (\n \n);\n\nconst ContextMenuLabel = ({\n className,\n inset,\n ...props\n}: ContextMenuPrimitive.GroupLabel.Props & {\n inset?: boolean;\n}) => (\n \n);\n\nconst ContextMenuItem = ({\n className,\n inset,\n variant = \"default\",\n ...props\n}: ContextMenuPrimitive.Item.Props & {\n inset?: boolean;\n variant?: \"default\" | \"destructive\";\n}) => (\n \n);\n\nconst ContextMenuSub = ({ ...props }: ContextMenuPrimitive.SubmenuRoot.Props) => (\n \n);\n\nconst ContextMenuSubTrigger = ({\n className,\n inset,\n children,\n ...props\n}: ContextMenuPrimitive.SubmenuTrigger.Props & {\n inset?: boolean;\n}) => (\n \n {children}\n \n \n);\n\nconst ContextMenuSubContent = ({ ...props }: ComponentProps) => (\n \n);\n\nconst ContextMenuCheckboxItem = ({\n className,\n children,\n checked,\n inset,\n ...props\n}: ContextMenuPrimitive.CheckboxItem.Props & {\n inset?: boolean;\n}) => (\n \n \n \n \n \n \n {children}\n \n);\n\nconst ContextMenuRadioGroup = ({ ...props }: ContextMenuPrimitive.RadioGroup.Props) => (\n \n);\n\nconst ContextMenuRadioItem = ({\n className,\n children,\n inset,\n ...props\n}: ContextMenuPrimitive.RadioItem.Props & {\n inset?: boolean;\n}) => (\n \n \n \n \n \n \n {children}\n \n);\n\nconst ContextMenuSeparator = ({ className, ...props }: ContextMenuPrimitive.Separator.Props) => (\n \n);\n\nconst ContextMenuShortcut = ({ className, ...props }: ComponentProps<\"span\">) => (\n \n);\n\nexport {\n ContextMenu,\n ContextMenuTrigger,\n ContextMenuContent,\n ContextMenuItem,\n ContextMenuCheckboxItem,\n ContextMenuRadioItem,\n ContextMenuLabel,\n ContextMenuSeparator,\n ContextMenuShortcut,\n ContextMenuGroup,\n ContextMenuPortal,\n ContextMenuSub,\n ContextMenuSubContent,\n ContextMenuSubTrigger,\n ContextMenuRadioGroup,\n};\n",
"type": "registry:ui",
"target": ""
}
],
"type": "registry:ui"
}