jsketcher/modules/ui/components/controls/FormSection.jsx
2022-06-25 15:19:48 -07:00

19 lines
No EOL
533 B
JavaScript

import React, {useState} from 'react';
import {Title} from '../Folder';
export function StackSection(props) {
let {title, initialCollapse, collapsible, children} = props;
if (collapsible === undefined) {
collapsible = true;
}
const [visible, setVisible] = useState(!initialCollapse);
const onTitleClick = collapsible ? () => setVisible(visible => !visible) : undefined;
return <React.Fragment>
<Title isClosed={!visible} onClick={onTitleClick}>{title}</Title>
{visible && children}
</React.Fragment>;
}