import React, { useState } from 'react'; import { DatePicker, Space } from 'antd'; import type { DatePickerProps, GetProps } from 'antd'; import type { Dayjs } from 'dayjs'; type RangePickerProps = GetProps; const { RangePicker } = DatePicker; type RangeValue = [Dayjs | null | undefined, Dayjs | null | undefined] | null; const ControlledDatePicker = () => { const [mode, setMode] = useState('time'); const handleOpenChange = (open: boolean) => { if (open) { setMode('time'); } }; const handlePanelChange: DatePickerProps['onPanelChange'] = (_, newMode) => { setMode(newMode); }; return ( ); }; const ControlledRangePicker = () => { const [mode, setMode] = useState(['month', 'month']); const [value, setValue] = useState([null, null]); const handlePanelChange: RangePickerProps['onPanelChange'] = (newValue, newModes) => { setValue(newValue); setMode([ newModes[0] === 'date' ? 'month' : newModes[0], newModes[1] === 'date' ? 'month' : newModes[1], ]); }; return ( ); }; const App: React.FC = () => ( ); export default App;