Box Contained Accordion

PreviousNext

A box-contained accordion component

Docs
shadcnui-blockscomponent

Preview

Loading preview…
components/customized/accordion/accordion-05.tsx
import {
  Accordion,
  AccordionContent,
  AccordionItem,
  AccordionTrigger,
} from "@/registry/ui/accordion";

const items = [
  {
    title: "Is it accessible?",
    content: "Yes. It adheres to the WAI-ARIA design pattern.",
  },
  {
    title: "Is it styled?",
    content:
      "Yes. It comes with default styles that matches the other components' aesthetic.",
  },
  {
    title: "Is it animated?",
    content:
      "Yes. It's animated by default, but you can disable it if you prefer.",
  },
];

export default function AccordionBoxContainedDemo() {
  return (
    <Accordion type="single" collapsible className="max-w-lg my-4 w-full">
      {items.map(({ title, content }, index) => (
        <AccordionItem
          key={index}
          value={`item-${index}`}
          className="last:border-none first:rounded-t-md last:rounded-b-md px-4 bg-muted"
        >
          <AccordionTrigger>{title}</AccordionTrigger>
          <AccordionContent>{content}</AccordionContent>
        </AccordionItem>
      ))}
    </Accordion>
  );
}

Installation

npx shadcn@latest add @shadcnui-blocks/accordion-05

Usage

import { Accordion05 } from "@/components/accordion-05"
<Accordion05 />