import { type ForwardedRef, forwardRef, type TextareaHTMLAttributes, } from 'react'; import styles from '../fields.module.scss'; type AllowedTextAreaProps = Omit< TextareaHTMLAttributes, 'disabled' | 'readOnly' | 'required' > & Required, 'id' | 'name'>>; export type TextAreaProps = AllowedTextAreaProps & { /** * Should the field be disabled? * * @default false */ isDisabled?: boolean; /** * Should the field be readonly? * * @default false */ isReadOnly?: boolean; /** * Should the field be required? * * @default false */ isRequired?: boolean; }; const TextAreaWithRef = ( { className = '', isDisabled = false, isReadOnly = false, isRequired = false, ...props }: TextAreaProps, ref: ForwardedRef ) => { const fieldClassName = `${styles.field} ${styles['field--textarea']} ${className}`; return (