autumn-js
Version:
Autumn JS Library
57 lines (53 loc) • 1.89 kB
JavaScript
"use client";
import {
ChevronDown
} from "./chunk-QJPZFEVW.mjs";
import {
cn
} from "./chunk-4J6OC4ZQ.mjs";
// src/libraries/react/components/ui/accordion.tsx
import * as React from "react";
import * as AccordionPrimitive from "@radix-ui/react-accordion";
import { jsx, jsxs } from "react/jsx-runtime";
var Accordion = AccordionPrimitive.Root;
var AccordionItem = React.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
AccordionPrimitive.Item,
{
ref,
className: cn("au-border-b", className),
...props
}
));
AccordionItem.displayName = "AccordionItem";
var AccordionTrigger = React.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsx(AccordionPrimitive.Header, { className: "au-flex", children: /* @__PURE__ */ jsxs(
AccordionPrimitive.Trigger,
{
ref,
className: cn(
"au-flex au-flex-1 au-items-center au-justify-between au-py-4 au-text-sm au-font-medium au-transition-all hover:au-underline au-text-left [&[data-state=open]>svg]:au-rotate-180",
className
),
...props,
children: [
children,
/* @__PURE__ */ jsx(ChevronDown, { className: "au-h-4 au-w-4 au-shrink-0 au-text-muted-foreground au-transition-transform au-duration-200" })
]
}
) }));
AccordionTrigger.displayName = AccordionPrimitive.Trigger.displayName;
var AccordionContent = React.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsx(
AccordionPrimitive.Content,
{
ref,
className: "au-overflow-hidden au-text-sm data-[state=closed]:au-animate-accordion-up data-[state=open]:au-animate-accordion-down",
...props,
children: /* @__PURE__ */ jsx("div", { className: cn("au-pb-4 au-pt-0", className), children })
}
));
AccordionContent.displayName = AccordionPrimitive.Content.displayName;
export {
Accordion,
AccordionItem,
AccordionTrigger,
AccordionContent
};