sheet
nrjdalal/sheetFreeComponent
acme publishes no description for this item.
Install it
npx shadcn@latest add https://nrjdalal.dev/r/sheet.jsonSource
1"use client"23import { cn } from "@/lib/utils"4import * as SheetPrimitive from "@radix-ui/react-dialog"5import { XIcon } from "lucide-react"6import * as React from "react"78function Sheet({ ...props }: React.ComponentProps<typeof SheetPrimitive.Root>) {9 return <SheetPrimitive.Root data-slot="sheet" {...props} />10}1112function SheetTrigger({13 ...props14}: React.ComponentProps<typeof SheetPrimitive.Trigger>) {15 return <SheetPrimitive.Trigger data-slot="sheet-trigger" {...props} />16}1718function SheetClose({19 ...props20}: React.ComponentProps<typeof SheetPrimitive.Close>) {21 return <SheetPrimitive.Close data-slot="sheet-close" {...props} />22}2324function SheetPortal({25 ...props26}: React.ComponentProps<typeof SheetPrimitive.Portal>) {27 return <SheetPrimitive.Portal data-slot="sheet-portal" {...props} />28}2930function SheetOverlay({31 className,32 ...props33}: React.ComponentProps<typeof SheetPrimitive.Overlay>) {34 return (35 <SheetPrimitive.Overlay36 data-slot="sheet-overlay"37 className={cn(38 "data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/80",39 className,40 )}41 {...props}42 />43 )44}4546function SheetContent({47 className,48 children,49 side = "right",50 ...props51}: React.ComponentProps<typeof SheetPrimitive.Content> & {52 side?: "top" | "right" | "bottom" | "left"53}) {54 return (55 <SheetPortal>56 <SheetOverlay />57 <SheetPrimitive.Content58 data-slot="sheet-content"59 className={cn(60 "bg-background data-[state=open]:animate-in data-[state=closed]:animate-out fixed z-50 flex flex-col gap-4 shadow-lg transition ease-in-out data-[state=closed]:duration-300 data-[state=open]:duration-500",61 side === "right" &&62 "data-[state=closed]:slide-out-to-right data-[state=open]:slide-in-from-right inset-y-0 right-0 h-full w-3/4 border-l sm:max-w-sm",63 side === "left" &&64 "data-[state=closed]:slide-out-to-left data-[state=open]:slide-in-from-left inset-y-0 left-0 h-full w-3/4 border-r sm:max-w-sm",65 side === "top" &&66 "data-[state=closed]:slide-out-to-top data-[state=open]:slide-in-from-top inset-x-0 top-0 h-auto border-b",67 side === "bottom" &&68 "data-[state=closed]:slide-out-to-bottom data-[state=open]:slide-in-from-bottom inset-x-0 bottom-0 h-auto border-t",69 className,70 )}71 {...props}72 >73// … truncated
What it pulls in
npm packages
Files it writes
More from acme
All 49 items| Component | Registry | Kind | Access | Installs | Command |
|---|---|---|---|---|---|
| accordionaccordion | acme | Components | Free | 5 deps · 2 files | |
| alertalert | acme | Components | Free | 4 deps · 2 files | |
| alert-dialogalert-dialog | acme | Components | Free | 6 deps · 3 files | |
| aspect-ratioaspect-ratio | acme | Components | Free | 1 dep | |
| avataravatar | acme | Components | Free | 4 deps · 2 files | |
| badgebadge | acme | Components | Free | 5 deps · 2 files | |
| breadcrumbbreadcrumb | acme | Components | Free | 5 deps · 2 files | |
| buttonbutton | acme | Components | Free | 5 deps · 2 files |
