import * as React from "react"
import { Collapsible as CollapsiblePrimitive } from "@base-ui/react/collapsible"
import { ChevronDownIcon } from "lucide-react"
import { cn } from "../core/cn"
interface AccordionItem {
value: string
trigger: React.ReactNode
content: React.ReactNode
disabled?: boolean
}
interface AccordionProps {
items?: AccordionItem[]
type?: "single" | "multiple"
defaultValue?: string | string[]
className?: string
itemClassName?: string
children?: React.ReactNode
}
function Accordion({ className, children, ...props }: React.ComponentProps<"div"> & AccordionProps) {
return (
{children}
)
}
interface AccordionItemProps extends CollapsiblePrimitive.Root.Props {
className?: string
}
function AccordionItem({ className, ...props }: AccordionItemProps) {
return (
)
}
function AccordionTrigger({ className, children, ...props }: CollapsiblePrimitive.Trigger.Props) {
return (
svg]:rotate-180",
className
)}
{...props}
>
{children}
)
}
function AccordionContent({ className, children, ...props }: CollapsiblePrimitive.Panel.Props) {
return (
{children}
)
}
export { Accordion, AccordionContent, AccordionItem, AccordionTrigger }
export type { AccordionItem as AccordionItemData, AccordionProps }