import classnames from 'classnames'; import React, { HTMLProps, Ref } from 'react'; import { filterDOMProps, Override, useForm } from 'uniforms'; import gridClassName, { GridSize } from './gridClassName'; export type SubmitFieldProps = Override< HTMLProps, { inputClassName?: string; inputRef?: Ref; wrapClassName?: string; } >; function SubmitField({ className, disabled, inputClassName, inputRef, readOnly, value, wrapClassName, ...props }: SubmitFieldProps) { const { error, state: anyState } = useForm(); const state = anyState as unknown as { disabled: boolean; grid: number | string | Partial>; }; const hasWrap = !!(state.grid || wrapClassName); const blockInput = ( ); return (
{hasWrap && (   )} {hasWrap && (
{blockInput}
)} {!hasWrap && blockInput}
); } SubmitField.defaultProps = { inputClassName: 'btn btn-primary' }; export default SubmitField;