Collapsible
cubby-ui/collapsibleFreeComponent
A collapsible component.
Live preview
live · rendered by the registry
Rendered by cubby-ui on their own page — this is the component running, not a screenshot of it.Install it
npx shadcn@latest add https://cubby-ui.dev/r/collapsible.jsonSource
1import * as React from "react";2import { Collapsible as BaseCollapsible } from "@base-ui/react/collapsible";34import { cn } from "@/lib/utils";56function CollapsibleRoot({ className, ...props }: BaseCollapsible.Root.Props) {7 return (8 <BaseCollapsible.Root9 data-slot="collapsible"10 className={cn("group/collapsible", className)}11 {...props}12 />13 );14}1516function CollapsibleTrigger({17 className,18 ...props19}: BaseCollapsible.Trigger.Props) {20 return (21 <BaseCollapsible.Trigger22 data-slot="collapsible-trigger"23 className={cn(24 "bg-card border-border hover:bg-surface-hover group hover:text-accent-foreground focus-visible:outline-ring/50 flex w-full cursor-pointer items-center justify-between rounded-md border px-3 py-2 text-left text-sm font-medium shadow-[0_1px_3px_0_oklch(0.18_0_0_/_0.06)] outline-0 transition-[outline,outline-offset] duration-100 ease-out focus-visible:outline-2 focus-visible:outline-offset-2 disabled:pointer-events-none disabled:opacity-60",25 className,26 )}27 {...props}28 />29 );30}3132function CollapsibleContent({33 className,34 ...props35}: BaseCollapsible.Panel.Props) {36 return (37 <BaseCollapsible.Panel38 data-slot="collapsible-panel"39 className={cn(40 "h-[var(--collapsible-panel-height)] overflow-hidden text-sm transition-all duration-200 ease-out data-[ending-style]:h-0 data-[ending-style]:opacity-0 data-[starting-style]:h-0 data-[starting-style]:opacity-0",41 className,42 )}43 {...props}44 />45 );46}4748const Collapsible = CollapsibleRoot;4950export { Collapsible, CollapsibleTrigger, CollapsibleContent };
Files it writes
More from cubby-ui
All 79 items| Component | Registry | Kind | Access | Installs | Command |
|---|---|---|---|---|---|
| Accordionaccordion | cubby-ui | Components | Free | 2 deps | |
| Alertalert | cubby-ui | Components | Free | 1 dep | |
| Alert-dialogalert-dialog | cubby-ui | Components | Free | 2 deps | |
| Aspect-ratioaspect-ratio | cubby-ui | Components | Free | no deps | |
| Autocompleteautocomplete | cubby-ui | Components | Free | 2 deps | |
| Avataravatar | cubby-ui | Components | Free | 1 dep | |
| Badgebadge | cubby-ui | Components | Free | 1 dep | |
| Base Drawerbase-drawer | cubby-ui | Components | Free | 2 deps |
