@25sprout/react-starter
Version:
25sprout web starter with React
29 lines (23 loc) • 573 B
JavaScript
import React from 'react';
import classnames from 'classnames';
import { useBoolean } from 'util/hook';
import style from './index.module.css';
const ToggleButton = ({ onClose, onOpen, closeTitle = 'Close', openTitle = 'Open' }) => {
const [isOpen, { toggle }] = useBoolean({
onTrue: onOpen,
onFalse: onClose,
defaultBoolean: true,
});
return (
<button
type="button"
className={classnames(style.button, {
[style.reverse]: !isOpen,
})}
onClick={toggle}
>
{isOpen ? closeTitle : openTitle}
</button>
);
};
export default ToggleButton;