import React, { useState, useEffect } from 'react'; import PropTypes from 'prop-types'; import classNames from 'classnames'; const CheckedIcon = () => <>🌜>; const UncheckedIcon = () => <>🌞>; const ToggleButton = ( props ) => { const [toggle, setToggle] = useState(false); const { defaultChecked, onChange, disabled, className } = props; useEffect(() => { if (defaultChecked) { setToggle(defaultChecked) } }, [defaultChecked]); const triggerToggle = () => { if ( disabled ) { return; } setToggle(!toggle); if ( typeof onChange === 'function' ) { onChange(!toggle); } } const getIcon = (type) => { const { icons } = props; if ( ! icons ) { return null; } return icons[type] === undefined ? ToggleButton.defaultProps.icons[type] : icons[type]; } const toggleClasses = classNames('wrg-toggle', { 'wrg-toggle--checked': toggle, 'wrg-toggle--disabled': disabled }, className); return (