lms/bootstrap/ssr/assets/accordion-cIAfVfPq.js
2025-12-15 12:26:23 +01:00

48 lines
1.7 KiB
JavaScript

import { jsx, jsxs } from "react/jsx-runtime";
import * as React from "react";
import * as AccordionPrimitive from "@radix-ui/react-accordion";
import { ChevronDown } from "lucide-react";
import { c as cn } from "./utils-DLCPGU0v.js";
const Accordion = AccordionPrimitive.Root;
const AccordionItem = React.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
AccordionPrimitive.Item,
{
ref,
className: cn("border-b", className),
...props
}
));
AccordionItem.displayName = "AccordionItem";
const AccordionTrigger = React.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsx(AccordionPrimitive.Header, { className: "flex", children: /* @__PURE__ */ jsxs(
AccordionPrimitive.Trigger,
{
ref,
className: cn(
"flex flex-1 items-center justify-between py-4 text-sm font-medium transition-all hover:underline text-left [&[data-state=open]>svg]:rotate-180",
className
),
...props,
children: [
children,
/* @__PURE__ */ jsx(ChevronDown, { className: "h-4 w-4 shrink-0 text-muted-foreground transition-transform duration-200" })
]
}
) }));
AccordionTrigger.displayName = AccordionPrimitive.Trigger.displayName;
const AccordionContent = React.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsx(
AccordionPrimitive.Content,
{
ref,
className: "overflow-hidden text-sm data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down",
...props,
children: /* @__PURE__ */ jsx("div", { className: cn("pb-4 pt-0", className), children })
}
));
AccordionContent.displayName = AccordionPrimitive.Content.displayName;
export {
Accordion as A,
AccordionItem as a,
AccordionTrigger as b,
AccordionContent as c
};