8-bit Dropdown Menu
8bitcn/dropdown-menuFreeComponent
A simple 8-bit dropdown-menu component
Install it
npx shadcn@latest add https://www.8bitcn.com/r/dropdown-menu.jsonSource
1import type * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu";2import { type VariantProps, cva } from "class-variance-authority";34import { cn } from "@/lib/utils";56import {7 DropdownMenu as ShadcnDropdownMenu,8 DropdownMenuCheckboxItem as ShadcnDropdownMenuCheckboxItem,9 DropdownMenuContent as ShadcnDropdownMenuContent,10 DropdownMenuGroup as ShadcnDropdownMenuGroup,11 DropdownMenuItem as ShadcnDropdownMenuItem,12 DropdownMenuLabel as ShadcnDropdownMenuLabel,13 DropdownMenuPortal as ShadcnDropdownMenuPortal,14 DropdownMenuSeparator as ShadcnDropdownMenuSeparator,15 DropdownMenuShortcut as ShadcnDropdownMenuShortcut,16 DropdownMenuSub as ShadcnDropdownMenuSub,17 DropdownMenuSubContent as ShadcnDropdownMenuSubContent,18 DropdownMenuSubTrigger as ShadcnDropdownMenuSubTrigger,19 DropdownMenuTrigger as ShadcnDropdownMenuTrigger,20} from "@/components/ui/dropdown-menu";2122import "@/components/ui/8bit/styles/retro.css";2324const DropdownMenu = ShadcnDropdownMenu;2526const DropdownMenuPortal = ShadcnDropdownMenuPortal;2728const DropdownMenuTrigger = ShadcnDropdownMenuTrigger;2930const DropdownMenuGroup = ShadcnDropdownMenuGroup;3132const DropdownMenuLabel = ShadcnDropdownMenuLabel;3334const DropdownMenuSeparator = ShadcnDropdownMenuSeparator;3536const DropdownMenuShortcut = ShadcnDropdownMenuShortcut;3738const DropdownMenuSub = ShadcnDropdownMenuSub;3940const DropdownMenuCheckboxItem = ShadcnDropdownMenuCheckboxItem;4142function DropdownMenuSubTrigger({43 className,44 children,45 ...props46}: React.ComponentProps<typeof DropdownMenuPrimitive.DropdownMenuSubTrigger>) {47 return (48 <ShadcnDropdownMenuSubTrigger49 className={cn(50 "hover:bg-transparent active:bg-transparent focus:bg-transparent rounded-none border-dashed border-y-4 border-transparent focus:border-foreground hover:border-foreground dark:focus:border-ring bg-transparent data-[state=open]:bg-transparent data-[state=open]:border-foreground dark:data-[state=open]:border-ring",51 className52 )}53 {...props}54 >55 {children}56 </ShadcnDropdownMenuSubTrigger>57 );58}5960function DropdownMenuItem({61 className,62 children,63 ...props64}: React.ComponentProps<typeof DropdownMenuPrimitive.Item> & {65 inset?: boolean;66 variant?: "default" | "destructive";67}) {68 return (69 <ShadcnDropdownMenuItem70 className={cn(71// … truncated
What it pulls in
Other registry items
Files it writes
More from 8bitcn
All 121 items| Component | Registry | Kind | Access | Installs | Command |
|---|---|---|---|---|---|
| 8-bit Accordionaccordion | 8bitcn | Components | Free | no deps · 2 files | |
| 8-bit Alertalert | 8bitcn | Components | Free | no deps · 2 files | |
| 8-bit Alert Dialogalert-dialog | 8bitcn | Components | Free | no deps · 2 files | |
| 8-bit Avataravatar | 8bitcn | Components | Free | no deps · 2 files | |
| 8-bit Badgebadge | 8bitcn | Components | Free | no deps · 2 files | |
| 8-bit Breadcrumbbreadcrumb | 8bitcn | Components | Free | no deps · 2 files | |
| 8-bit Buttonbutton | 8bitcn | Components | Free | no deps · 2 files | |
| 8-bit Button Groupbutton-group | 8bitcn | Components | Free | no deps · 4 files |
