import classNames from "classnames";
import { ReactNode, useState } from "react";
import Icon from "@/Components/Icons/Icon";
interface CollapsedProps {
text?: ReactNode;
children: ReactNode;
collapsed: boolean;
setCollapsed(b: boolean): void;
}
const Collapsed = ({ text, children, collapsed, setCollapsed }: CollapsedProps) => {
return collapsed ? (
setCollapsed(false)}>
{text}
) : (
{children}
);
};
interface CollapsedIconProps {
icon: ReactNode;
collapsed: boolean;
}
export const CollapsedIcon = ({ icon, collapsed }: CollapsedIconProps) => {
return collapsed ? {icon}
: {icon}
;
};
interface CollapsedSectionProps {
title: ReactNode;
children: ReactNode;
className?: string;
startClosed?: boolean;
}
export const CollapsedSection = ({ title, children, className, startClosed }: CollapsedSectionProps) => {
const [collapsed, setCollapsed] = useState(startClosed ?? true);
const icon = (
);
return (
<>
setCollapsed(!collapsed)}>
{title}
{!collapsed && children}
>
);
};
export default Collapsed;