@@ -3,15 +3,16 @@ import { useRef, useEffect, useState } from 'react';
33import classNames from 'classnames' ;
44import warning from 'rc-util/lib/warning' ;
55import useMergedState from 'rc-util/lib/hooks/useMergedState' ;
6- import { DisabledTimes , PanelMode , PickerMode , RangeValue , EventValue } from './interface' ;
7- import { PickerBaseProps , PickerDateProps , PickerTimeProps , PickerRefConfig } from './Picker' ;
8- import { SharedTimeProps } from './panels/TimePanel' ;
6+ import type { DisabledTimes , PanelMode , PickerMode , RangeValue , EventValue } from './interface' ;
7+ import type { PickerBaseProps , PickerDateProps , PickerTimeProps , PickerRefConfig } from './Picker' ;
8+ import type { SharedTimeProps } from './panels/TimePanel' ;
99import PickerTrigger from './PickerTrigger' ;
1010import PickerPanel from './PickerPanel' ;
1111import usePickerInput from './hooks/usePickerInput' ;
1212import getDataOrAriaProps , { toArray , getValue , updateValues } from './utils/miscUtil' ;
1313import { getDefaultFormat , getInputSize , elementsContains } from './utils/uiUtil' ;
14- import PanelContext , { ContextOperationRefProps } from './PanelContext' ;
14+ import type { ContextOperationRefProps } from './PanelContext' ;
15+ import PanelContext from './PanelContext' ;
1516import {
1617 isEqual ,
1718 getClosingViewDate ,
@@ -23,14 +24,14 @@ import {
2324} from './utils/dateUtil' ;
2425import useValueTexts from './hooks/useValueTexts' ;
2526import useTextValueMapping from './hooks/useTextValueMapping' ;
26- import { GenerateConfig } from './generate' ;
27- import { PickerPanelProps } from '.' ;
27+ import type { GenerateConfig } from './generate' ;
28+ import type { PickerPanelProps } from '.' ;
2829import RangeContext from './RangeContext' ;
2930import useRangeDisabled from './hooks/useRangeDisabled' ;
3031import getExtraFooter from './utils/getExtraFooter' ;
3132import getRanges from './utils/getRanges' ;
3233import useRangeViewDates from './hooks/useRangeViewDates' ;
33- import { DateRender } from './panels/DatePanel/DateBody' ;
34+ import type { DateRender } from './panels/DatePanel/DateBody' ;
3435import useHoverValue from './hooks/useHoverValue' ;
3536
3637function reorderValues < DateType > (
@@ -67,17 +68,17 @@ function canValueTrigger<DateType>(
6768
6869export type RangeType = 'start' | 'end' ;
6970
70- export interface RangeInfo {
71+ export type RangeInfo = {
7172 range : RangeType ;
72- }
73+ } ;
7374
7475export type RangeDateRender < DateType > = (
7576 currentDate : DateType ,
7677 today : DateType ,
7778 info : RangeInfo ,
7879) => React . ReactNode ;
7980
80- export interface RangePickerSharedProps < DateType > {
81+ export type RangePickerSharedProps < DateType > = {
8182 id ?: string ;
8283 value ?: RangeValue < DateType > ;
8384 defaultValue ?: RangeValue < DateType > ;
@@ -108,7 +109,7 @@ export interface RangePickerSharedProps<DateType> {
108109 activePickerIndex ?: 0 | 1 ;
109110 dateRender ?: RangeDateRender < DateType > ;
110111 panelRender ?: ( originPanel : React . ReactNode ) => React . ReactNode ;
111- }
112+ } ;
112113
113114type OmitPickerProps < Props > = Omit <
114115 Props ,
@@ -134,21 +135,15 @@ type RangeShowTimeObject<DateType> = Omit<SharedTimeProps<DateType>, 'defaultVal
134135 defaultValue ?: DateType [ ] ;
135136} ;
136137
137- export interface RangePickerBaseProps < DateType >
138- extends RangePickerSharedProps < DateType > ,
139- OmitPickerProps < PickerBaseProps < DateType > > { }
138+ export type RangePickerBaseProps < DateType > = { } & RangePickerSharedProps < DateType > & OmitPickerProps < PickerBaseProps < DateType > > ;
140139
141- export interface RangePickerDateProps < DateType >
142- extends RangePickerSharedProps < DateType > ,
143- OmitPickerProps < PickerDateProps < DateType > > {
140+ export type RangePickerDateProps < DateType > = {
144141 showTime ?: boolean | RangeShowTimeObject < DateType > ;
145- }
142+ } & RangePickerSharedProps < DateType > & OmitPickerProps < PickerDateProps < DateType > > ;
146143
147- export interface RangePickerTimeProps < DateType >
148- extends RangePickerSharedProps < DateType > ,
149- OmitPickerProps < PickerTimeProps < DateType > > {
144+ export type RangePickerTimeProps < DateType > = {
150145 order ?: boolean ;
151- }
146+ } & RangePickerSharedProps < DateType > & OmitPickerProps < PickerTimeProps < DateType > > ;
152147
153148export type RangePickerProps < DateType > =
154149 | RangePickerBaseProps < DateType >
@@ -160,9 +155,9 @@ type OmitType<DateType> = Omit<RangePickerBaseProps<DateType>, 'picker'> &
160155 Omit < RangePickerDateProps < DateType > , 'picker' > &
161156 Omit < RangePickerTimeProps < DateType > , 'picker' > ;
162157
163- interface MergedRangePickerProps < DateType > extends OmitType < DateType > {
158+ type MergedRangePickerProps < DateType > = {
164159 picker ?: PickerMode ;
165- }
160+ } & OmitType < DateType > ;
166161
167162function InnerRangePicker < DateType > ( props : RangePickerProps < DateType > ) {
168163 const {
0 commit comments