Collapsible
A component that toggles visibility of content sections.
Installation
pnpm dlx shadcn@latest add @columbus/collapsibleUsage
import {
Collapsible,
CollapsiblePanel,
CollapsibleTrigger,
} from "@/components/ui/collapsible";
<Collapsible>
<CollapsibleTrigger>Show recovery codes</CollapsibleTrigger>
<CollapsiblePanel>4829-1735-6621</CollapsiblePanel>
</Collapsible>;CollapsibleTrigger is an unstyled <button>, so style it yourself. Use the
data-panel-open attribute to style the open state, like rotating a chevron.
Button trigger
Use render to make a Button the trigger. Give
icon-only triggers an aria-label.
3 files changed
- src/app/page.tsx
- src/app/layout.tsx
- package.json
Accessibility
The trigger gets aria-expanded and aria-controls for you. Enter and Space
toggle it.
API reference
Each part accepts every prop of its Base UI Collapsible
part: Collapsible is Collapsible.Root, CollapsibleTrigger is
Collapsible.Trigger, and CollapsiblePanel is Collapsible.Panel.
CollapsiblePanel is also exported as CollapsibleContent.
The most common Collapsible props:
Prop
Type