import React from 'react'; import { IFieldComponentProps } from '../../types'; import { MuiPickersUtilsProvider } from '@material-ui/pickers'; import DateFnsUtils from '@date-io/date-fns'; import { KeyboardDatePicker, KeyboardDatePickerProps, } from '@material-ui/pickers'; import FieldAssistiveText from '../../FieldAssistiveText'; export interface IDateComponentProps extends IFieldComponentProps, Omit< KeyboardDatePickerProps, 'label' | 'name' | 'onChange' | 'value' | 'onBlur' | 'ref' > {} export default function DateComponent({ field: { onChange, onBlur, value, ref }, fieldState, formState, name, useFormMethods, errorMessage, assistiveText, ...props }: IDateComponentProps) { let transformedValue = null; if (value && 'toDate' in value) transformedValue = value.toDate(); else if (value !== undefined) transformedValue = value; return ( {errorMessage} {assistiveText} ) } data-type="date" data-label={props.label ?? ''} inputProps={{ required: false }} inputRef={ref} /> ); }