import { forwardRef, ForwardRefRenderFunction } from 'react'; import { useIntl } from 'react-intl'; import BooleanField, { type BooleanFieldProps, } from '../../atoms/forms/boolean-field'; import Cog from '../../atoms/icons/cog'; import FlippingLabel from '../../molecules/forms/flipping-label'; import SettingsModal, { type SettingsModalProps, } from '../modals/settings-modal'; import settingsStyles from './settings.module.scss'; import sharedStyles from './toolbar-items.module.scss'; export type SettingsProps = SettingsModalProps & { /** * The button state. */ isActive: BooleanFieldProps['checked']; /** * A callback function to handle button state. */ setIsActive: BooleanFieldProps['onChange']; }; const Settings: ForwardRefRenderFunction = ( { ackeeStorageKey, className = '', isActive, motionStorageKey, setIsActive, tooltipClassName = '', }, ref ) => { const intl = useIntl(); const label = isActive ? intl.formatMessage({ defaultMessage: 'Close settings', id: '+viX9b', description: 'Settings: Close label', }) : intl.formatMessage({ defaultMessage: 'Open settings', id: 'QCW3cy', description: 'Settings: Open label', }); return (
); }; export default forwardRef(Settings);