import * as React from 'react'; import dayjs, { Dayjs } from 'dayjs'; import Button from '@mui/material/Button'; import CalendarTodayRoundedIcon from '@mui/icons-material/CalendarTodayRounded'; import { AdapterDayjs } from '@mui/x-date-pickers/AdapterDayjs'; import { UseDateFieldProps } from '@mui/x-date-pickers/DateField'; import { LocalizationProvider } from '@mui/x-date-pickers/LocalizationProvider'; import { DatePicker } from '@mui/x-date-pickers/DatePicker'; import { BaseSingleInputFieldProps, DateValidationError, FieldSection, } from '@mui/x-date-pickers/models'; interface ButtonFieldProps extends UseDateFieldProps, BaseSingleInputFieldProps< Dayjs | null, Dayjs, FieldSection, false, DateValidationError > { setOpen?: React.Dispatch>; } function ButtonField(props: ButtonFieldProps) { const { setOpen, label, id, disabled, InputProps: { ref } = {}, inputProps: { 'aria-label': ariaLabel } = {}, } = props; // return ( // // // ); } export default function CustomDatePicker() { const [value, setValue] = React.useState(dayjs('2023-04-17')); const [open, setOpen] = React.useState(false); return ( setValue(newValue)} slots={{ field: ButtonField }} slotProps={{ field: { setOpen } as any, nextIconButton: { size: 'small' }, previousIconButton: { size: 'small' }, }} open={open} onClose={() => setOpen(false)} onOpen={() => setOpen(true)} views={['day', 'month', 'year']} /> ); }