8-bit Dialog
8bitcn/dialogFreeComponent
A simple 8-bit dialog component
Install it
npx shadcn@latest add https://www.8bitcn.com/r/dialog.jsonSource
1import { type VariantProps, cva } from "class-variance-authority";23import { cn } from "@/lib/utils";45import {6 Dialog as ShadcnDialog,7 DialogClose as ShadcnDialogClose,8 DialogContent as ShadcnDialogContent,9 DialogDescription as ShadcnDialogDescription,10 DialogFooter as ShadcnDialogFooter,11 DialogHeader as ShadcnDialogHeader,12 DialogTitle as ShadcnDialogTitle,13 DialogTrigger as ShadcnDialogTrigger,14} from "@/components/ui/dialog";1516import "@/components/ui/8bit/styles/retro.css";1718const Dialog = ShadcnDialog;1920const DialogTrigger = ShadcnDialogTrigger;2122const DialogHeader = ShadcnDialogHeader;2324const DialogDescription = ShadcnDialogDescription;2526const DialogClose = ShadcnDialogClose;2728const DialogFooter = ShadcnDialogFooter;2930export interface BitDialogProps31 extends React.ComponentProps<"div">,32 VariantProps<typeof dialogContentVariants> {}3334function DialogTitle({ ...props }: BitDialogProps) {35 const { className, font } = props;36 return (37 <ShadcnDialogTitle38 className={cn(font !== "normal" && "retro", className)}39 {...props}40 />41 );42}4344export const dialogContentVariants = cva("", {45 variants: {46 font: {47 normal: "",48 retro: "retro",49 },50 },51 defaultVariants: {52 font: "retro",53 },54});5556function DialogContent({57 className,58 children,59 font,60 ...props61}: BitDialogProps) {62 return (63 <ShadcnDialogContent64 className={cn(65 "bg-card rounded-none border-none",66 font !== "normal" && "retro",67 className68 )}69 {...props}70 >71 {children}7273 <div74 className="absolute inset-0 border-x-6 -mx-1.5 border-foreground dark:border-ring pointer-events-none"75 aria-hidden="true"76 />77 <div78 className="absolute inset-0 border-y-6 -my-1.5 border-foreground dark:border-ring pointer-events-none"79 aria-hidden="true"80 />81 </ShadcnDialogContent>82 );83}8485export {86 Dialog,87 DialogTrigger,88 DialogHeader,89 DialogFooter,90 DialogDescription,91 DialogTitle,92 DialogContent,93 DialogClose,94};
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 |
