import * as React from 'react'; import { ChevronleftIcon } from '../../components/icons/ChevronleftIcon'; import type { DisclosureGroupProps, ButtonProps, DisclosureProps, DisclosurePanelProps, } from 'react-aria-components'; import { DisclosureGroup, Button, Disclosure, DisclosurePanel, Heading, } from 'react-aria-components'; import { composeTailwindRenderProps } from '../utils'; interface AccordionProps extends DisclosureGroupProps { ref?: React.RefObject; } const Accordion = ({ children, ref, className, ...props }: AccordionProps) => { return ( {(values) => (
{typeof children === 'function' ? children(values) : children}
)}
); }; interface AccordionItemProps extends DisclosureProps { ref?: React.Ref; } const AccordionItem = ({ className, ref, ...props }: AccordionItemProps) => { return ( {props.children} ); }; interface AccordionItemTriggerProps extends ButtonProps { ref?: React.Ref; } const AccordionItemTrigger = ({ className, ref, ...props }: AccordionItemTriggerProps) => { return ( ); }; interface AccordionPanelProps extends DisclosurePanelProps { ref?: React.Ref; } const AccordionPanel = ({ className, ref, ...props }: AccordionPanelProps) => { return (
{props.children}
); }; export type { AccordionProps, AccordionItemProps, AccordionPanelProps, AccordionItemTriggerProps, }; export { Accordion, AccordionItem, AccordionPanel, AccordionItemTrigger };