import { useState, ReactNode } from "react"; import Icon from "Icons/Icon"; import ShowMore from "Element/ShowMore"; interface CollapsedProps { text?: string; children: ReactNode; collapsed: boolean; setCollapsed(b: boolean): void; } const Collapsed = ({ text, children, collapsed, setCollapsed }: CollapsedProps) => { return collapsed ? (
setCollapsed(false)} />
) : (
{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; } export const CollapsedSection = ({ title, children, className }: CollapsedSectionProps) => { const [collapsed, setCollapsed] = useState(true); const icon = (
); return ( <>
setCollapsed(!collapsed)}> {title}
{!collapsed && children} ); }; export default Collapsed;