import { useThemeProps } from '@mui/system';
import FormLabel from '@mui/material/FormLabel';
import React from 'react';
import { connectField, HTMLFieldProps } from 'uniforms';
import AutoField from './AutoField';
import wrapField from './wrapField';
// FIXME: wrapField is not typed correctly.
export type NestFieldProps = HTMLFieldProps<
object,
HTMLDivElement,
{ helperText?: string; itemProps?: object; fullWidth?: boolean; margin?: any }
>;
function Nest(props: NestFieldProps) {
const { children, fields, itemProps, label, ...rest } = props;
const formControlThemeProps = useThemeProps({
props,
name: 'MuiFormControl'
});
return wrapField(
{
fullWidth: formControlThemeProps?.fullWidth ?? true,
margin: formControlThemeProps?.margin ?? 'dense',
...props,
component: undefined
},
label && {label},
children ||
fields.map(field => )
);
}
export default connectField(Nest);