'use client'; import { Box, VStack, Heading, Icon, Collapse, HStack, IconButton, BoxProps, } from '@chakra-ui/react'; import { useState } from 'react'; import { LuChevronDown, LuChevronUp } from 'react-icons/lu'; interface CollapsibleCardProps { title: string; icon?: React.ElementType; children: React.ReactNode; defaultIsOpen?: boolean; style?: BoxProps; } export function CollapsibleCard({ title, icon, children, defaultIsOpen = false, style, }: CollapsibleCardProps) { const [isOpen, setIsOpen] = useState(defaultIsOpen); return ( setIsOpen(!isOpen)} > {icon && } {title} : } variant="ghost" size="sm" /> {children} ); }