import { BooleanField, SchemaFieldProps } from '@vev/utils'; import React from 'react'; import { SilkeBox } from '../../silke-box'; import { SilkeToggle } from '../../silke-toggle'; import { SilkeCheckbox } from '../../silke-checkbox'; import { SilkeTextFieldOutline } from '../../silke-text-field/silke-text-field-outline'; import { SilkeTextFieldItem } from '../../silke-text-field'; import { SilkeTextSmall } from '../../silke-text'; import { getTitle } from './utils/schema-util'; const Toggle = ({ schema, value, disabled, readonly, onChange, }: SchemaFieldProps) => { const display = schema.options?.display || 'toggle'; const title = getTitle(schema); const isCheckbox = display === 'checkbox'; const toggle = () => !disabled && !readonly && onChange(!value); return ( { if (e.key === ' ') { e.preventDefault(); toggle(); } }} > {title} {isCheckbox ? ( ) : ( )} ); }; export default Toggle;