import React, { PropsWithChildren, useEffect, useState } from "react"; import Button from "../Button"; import { Caret } from "../Icon"; import Text from "../Text"; import { ICollapseProps } from "./Collapse.types"; const Collapse = ({ title, children, defaultCollapsed = true, ableToClickCollapseButton = true, showTitleCollapseButton = true, showBottomCollapseButton = true, titleClassName = "", titleClassNameOnCollapsed = "", headerClassName = "", bottomCollapseButtonClassName = "", }: PropsWithChildren) => { const [isDropdownCollapsed, setIsDropdownCollapsed] = useState( defaultCollapsed ); const handleDropdownCollapsed = () => { setIsDropdownCollapsed((dropdownState) => !dropdownState); }; useEffect(() => { setIsDropdownCollapsed(defaultCollapsed); }, [defaultCollapsed]); return ( <>
{ ableToClickCollapseButton && handleDropdownCollapsed(); }} >

{title}

{showTitleCollapseButton && ( )}
{children} {showBottomCollapseButton && ( )}
); }; export default Collapse;