sheet
gmhlab/sheetFreeComponent
gmhlab publishes no description for this item.
Install it
npx shadcn@latest add https://raw.githubusercontent.com/gmhlab/monorepo/main/packages/ui/public/r/sheet.jsonSource
1"use client"23import * as React from "react"4import { XIcon } from "lucide-react"5import { Dialog as SheetPrimitive } from "radix-ui"67import { cn } from "@/lib/utils"89function Sheet({ ...props }: React.ComponentProps<typeof SheetPrimitive.Root>) {10 return <SheetPrimitive.Root data-slot="sheet" {...props} />11}1213function SheetTrigger({14 ...props15}: React.ComponentProps<typeof SheetPrimitive.Trigger>) {16 return <SheetPrimitive.Trigger data-slot="sheet-trigger" {...props} />17}1819function SheetClose({20 ...props21}: React.ComponentProps<typeof SheetPrimitive.Close>) {22 return <SheetPrimitive.Close data-slot="sheet-close" {...props} />23}2425function SheetPortal({26 ...props27}: React.ComponentProps<typeof SheetPrimitive.Portal>) {28 return <SheetPrimitive.Portal data-slot="sheet-portal" {...props} />29}3031function SheetOverlay({32 className,33 ...props34}: React.ComponentProps<typeof SheetPrimitive.Overlay>) {35 return (36 <SheetPrimitive.Overlay37 data-slot="sheet-overlay"38 className={cn(39 "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/50",40 className41 )}42 {...props}43 />44 )45}4647function SheetContent({48 className,49 children,50 side = "right",51 showCloseButton = true,52 ...props53}: React.ComponentProps<typeof SheetPrimitive.Content> & {54 side?: "top" | "right" | "bottom" | "left"55 showCloseButton?: boolean56}) {57 return (58 <SheetPortal>59 <SheetOverlay />60 <SheetPrimitive.Content61 data-slot="sheet-content"62 className={cn(63 "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",64 side === "right" &&65 "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",66 side === "left" &&67 "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",68 side === "top" &&69 "data-[state=closed]:slide-out-to-top data-[state=open]:slide-in-from-top inset-x-0 top-0 h-auto border-b",70 side === "bottom" &&71 "data-[state=closed]:slide-out-to-bottom data-[state=open]:slide-in-from-bottom inset-x-0 bottom-0 h-auto border-t",72 className73// … truncated
What it pulls in
npm packages
Files it writes
More from gmhlab
All 64 items| Component | Registry | Kind | Access | Installs | Command |
|---|---|---|---|---|---|
| accordionaccordion | gmhlab | Components | Free | 2 deps | |
| alertalert | gmhlab | Components | Free | 1 dep | |
| alert-dialogalert-dialog | gmhlab | Components | Free | 1 dep | |
| aspect-ratioaspect-ratio | gmhlab | Components | Free | 1 dep | |
| avataravatar | gmhlab | Components | Free | 1 dep | |
| badgebadge | gmhlab | Components | Free | 2 deps | |
| breadcrumbbreadcrumb | gmhlab | Components | Free | 2 deps | |
| buttonbutton | gmhlab | Components | Free | 2 deps |
