fix: typescript compile error
parent
6b1f38cd4e
commit
aa9ba7fc5a
|
@ -1,10 +1,9 @@
|
|||
import type { Dayjs } from 'dayjs';
|
||||
import generateConfig from '../vc-picker/generate/dayjs';
|
||||
import { withInstall } from '../_util/type';
|
||||
import type { CalendarProps } from './generateCalendar';
|
||||
import generateCalendar from './generateCalendar';
|
||||
|
||||
const Calendar = generateCalendar<Dayjs>(generateConfig);
|
||||
const Calendar = generateCalendar(generateConfig);
|
||||
|
||||
export type { CalendarProps };
|
||||
export default withInstall(Calendar);
|
||||
|
|
|
@ -65,7 +65,10 @@ export interface CalendarProps<DateType> {
|
|||
valueFormat?: string;
|
||||
}
|
||||
|
||||
function generateCalendar<DateType>(generateConfig: GenerateConfig<DateType>) {
|
||||
function generateCalendar<
|
||||
DateType,
|
||||
Props extends CalendarProps<DateType> = CalendarProps<DateType>,
|
||||
>(generateConfig: GenerateConfig<DateType>) {
|
||||
function isSameYear(date1: DateType, date2: DateType) {
|
||||
return date1 && date2 && generateConfig.getYear(date1) === generateConfig.getYear(date2);
|
||||
}
|
||||
|
@ -82,28 +85,9 @@ function generateCalendar<DateType>(generateConfig: GenerateConfig<DateType>) {
|
|||
);
|
||||
}
|
||||
|
||||
const Calendar = defineComponent<CalendarProps<DateType>>({
|
||||
const Calendar = defineComponent<Props>({
|
||||
name: 'ACalendar',
|
||||
inheritAttrs: false,
|
||||
props: [
|
||||
'prefixCls',
|
||||
'locale',
|
||||
'validRange',
|
||||
'disabledDate',
|
||||
'dateFullCellRender',
|
||||
'dateCellRender',
|
||||
'monthFullCellRender',
|
||||
'monthCellRender',
|
||||
'headerRender',
|
||||
'value',
|
||||
'defaultValue',
|
||||
'mode',
|
||||
'fullscreen',
|
||||
'onChange',
|
||||
'onPanelChange',
|
||||
'onSelect',
|
||||
'valueFormat',
|
||||
] as any,
|
||||
emits: ['change', 'panelChange', 'select', 'update:value'],
|
||||
slots: [
|
||||
'dateFullCellRender',
|
||||
|
@ -303,7 +287,6 @@ function generateCalendar<DateType>(generateConfig: GenerateConfig<DateType>) {
|
|||
onModeChange={triggerModeChange}
|
||||
/>
|
||||
)}
|
||||
|
||||
<PickerPanel
|
||||
value={mergedValue.value}
|
||||
prefixCls={prefixCls.value}
|
||||
|
@ -322,11 +305,33 @@ function generateCalendar<DateType>(generateConfig: GenerateConfig<DateType>) {
|
|||
};
|
||||
},
|
||||
});
|
||||
|
||||
Calendar.props = [
|
||||
'prefixCls',
|
||||
'locale',
|
||||
'validRange',
|
||||
'disabledDate',
|
||||
'dateFullCellRender',
|
||||
'dateCellRender',
|
||||
'monthFullCellRender',
|
||||
'monthCellRender',
|
||||
'headerRender',
|
||||
'value',
|
||||
'defaultValue',
|
||||
'mode',
|
||||
'fullscreen',
|
||||
'onChange',
|
||||
'onPanelChange',
|
||||
'onSelect',
|
||||
'valueFormat',
|
||||
];
|
||||
|
||||
Calendar.install = function (app: App) {
|
||||
app.component(Calendar.name, Calendar);
|
||||
return app;
|
||||
};
|
||||
return Calendar;
|
||||
|
||||
return Calendar as unknown as (props: CalendarProps<DateType>) => JSX.Element;
|
||||
}
|
||||
|
||||
export default generateCalendar;
|
||||
|
|
|
@ -16,18 +16,18 @@ import type { PanelMode, RangeValue } from '../../vc-picker/interface';
|
|||
import type { RangePickerSharedProps } from '../../vc-picker/RangePicker';
|
||||
import devWarning from '../../vc-util/devWarning';
|
||||
|
||||
export default function generateRangePicker<DateType, ExtraProps extends {} = {}>(
|
||||
export default function generateRangePicker<DateType, ExtraProps = {}>(
|
||||
generateConfig: GenerateConfig<DateType>,
|
||||
extraProps: ExtraProps,
|
||||
) {
|
||||
const RangePicker = defineComponent({
|
||||
name: 'ARangePicker',
|
||||
inheritAttrs: false,
|
||||
props: {
|
||||
...commonProps<DateType>(),
|
||||
...rangePickerProps<DateType>(),
|
||||
...extraProps,
|
||||
},
|
||||
inheritAttrs: false,
|
||||
slots: [
|
||||
'suffixIcon',
|
||||
// 'clearIcon',
|
||||
|
|
|
@ -12,6 +12,7 @@ import { computed, defineComponent, nextTick, onMounted, ref } from 'vue';
|
|||
import useConfigInject from '../../_util/hooks/useConfigInject';
|
||||
import classNames from '../../_util/classNames';
|
||||
import { commonProps, datePickerProps } from './props';
|
||||
|
||||
import devWarning from '../../vc-util/devWarning';
|
||||
|
||||
export default function generateSinglePicker<DateType, ExtraProps = {}>(
|
||||
|
|
|
@ -1,22 +1,12 @@
|
|||
import type { GenerateConfig } from '../../vc-picker/generate/index';
|
||||
import type {
|
||||
PickerBaseProps as RCPickerBaseProps,
|
||||
PickerDateProps as RCPickerDateProps,
|
||||
PickerTimeProps as RCPickerTimeProps,
|
||||
} from '../../vc-picker/Picker';
|
||||
import type { GenerateConfig } from '../../vc-picker/generate';
|
||||
import type { SharedTimeProps } from '../../vc-picker/panels/TimePanel';
|
||||
import type {
|
||||
RangePickerBaseProps as RCRangePickerBaseProps,
|
||||
RangePickerDateProps as RCRangePickerDateProps,
|
||||
RangePickerTimeProps as RCRangePickerTimeProps,
|
||||
} from '../../vc-picker/RangePicker';
|
||||
import type { PickerMode, Locale as RcPickerLocale } from '../../vc-picker/interface';
|
||||
import type { PickerMode } from '../../vc-picker/interface';
|
||||
import PickerButton from '../PickerButton';
|
||||
import PickerTag from '../PickerTag';
|
||||
import type { TimePickerLocale } from '../../time-picker';
|
||||
import generateSinglePicker from './generateSinglePicker';
|
||||
import generateRangePicker from './generateRangePicker';
|
||||
import type { SizeType } from '../../config-provider';
|
||||
|
||||
export * from './interface';
|
||||
|
||||
export const Components = { button: PickerButton, rangeItem: PickerTag };
|
||||
|
||||
|
@ -65,67 +55,7 @@ export function getTimeProps<DateType>(
|
|||
};
|
||||
}
|
||||
|
||||
type InjectDefaultProps<Props> = Omit<
|
||||
Props,
|
||||
| 'locale'
|
||||
| 'generateConfig'
|
||||
| 'prevIcon'
|
||||
| 'nextIcon'
|
||||
| 'superPrevIcon'
|
||||
| 'superNextIcon'
|
||||
| 'hideHeader'
|
||||
| 'components'
|
||||
> & {
|
||||
locale?: PickerLocale;
|
||||
size?: SizeType;
|
||||
bordered?: boolean;
|
||||
};
|
||||
|
||||
export type PickerLocale = {
|
||||
lang: RcPickerLocale & AdditionalPickerLocaleLangProps;
|
||||
timePickerLocale: TimePickerLocale;
|
||||
} & AdditionalPickerLocaleProps;
|
||||
|
||||
export type AdditionalPickerLocaleProps = {
|
||||
dateFormat?: string;
|
||||
dateTimeFormat?: string;
|
||||
weekFormat?: string;
|
||||
monthFormat?: string;
|
||||
};
|
||||
|
||||
export type AdditionalPickerLocaleLangProps = {
|
||||
placeholder: string;
|
||||
yearPlaceholder?: string;
|
||||
quarterPlaceholder?: string;
|
||||
monthPlaceholder?: string;
|
||||
weekPlaceholder?: string;
|
||||
rangeYearPlaceholder?: [string, string];
|
||||
rangeMonthPlaceholder?: [string, string];
|
||||
rangeWeekPlaceholder?: [string, string];
|
||||
rangePlaceholder?: [string, string];
|
||||
};
|
||||
|
||||
// Picker Props
|
||||
export type PickerBaseProps<DateType> = InjectDefaultProps<RCPickerBaseProps<DateType>>;
|
||||
export type PickerDateProps<DateType> = InjectDefaultProps<RCPickerDateProps<DateType>>;
|
||||
export type PickerTimeProps<DateType> = InjectDefaultProps<RCPickerTimeProps<DateType>>;
|
||||
|
||||
export type PickerProps<DateType> =
|
||||
| PickerBaseProps<DateType>
|
||||
| PickerDateProps<DateType>
|
||||
| PickerTimeProps<DateType>;
|
||||
|
||||
// Range Picker Props
|
||||
export type RangePickerBaseProps<DateType> = InjectDefaultProps<RCRangePickerBaseProps<DateType>>;
|
||||
export type RangePickerDateProps<DateType> = InjectDefaultProps<RCRangePickerDateProps<DateType>>;
|
||||
export type RangePickerTimeProps<DateType> = InjectDefaultProps<RCRangePickerTimeProps<DateType>>;
|
||||
|
||||
export type RangePickerProps<DateType> =
|
||||
| RangePickerBaseProps<DateType>
|
||||
| RangePickerDateProps<DateType>
|
||||
| RangePickerTimeProps<DateType>;
|
||||
|
||||
function generatePicker<DateType, ExtraProps extends Record<string, any> = {}>(
|
||||
function generatePicker<DateType, ExtraProps extends {} = {}>(
|
||||
generateConfig: GenerateConfig<DateType>,
|
||||
extraProps?: ExtraProps,
|
||||
) {
|
||||
|
@ -134,7 +64,7 @@ function generatePicker<DateType, ExtraProps extends Record<string, any> = {}>(
|
|||
generateSinglePicker<DateType, ExtraProps>(generateConfig, extraProps);
|
||||
|
||||
// ======================== Range Picker ========================
|
||||
const RangePicker = generateRangePicker<DateType>(generateConfig, extraProps);
|
||||
const RangePicker = generateRangePicker<DateType, ExtraProps>(generateConfig, extraProps);
|
||||
|
||||
return {
|
||||
DatePicker,
|
||||
|
|
|
@ -0,0 +1,73 @@
|
|||
import type {
|
||||
PickerBaseProps as RCPickerBaseProps,
|
||||
PickerDateProps as RCPickerDateProps,
|
||||
PickerTimeProps as RCPickerTimeProps,
|
||||
} from '../../vc-picker/Picker';
|
||||
import type {
|
||||
RangePickerBaseProps as RCRangePickerBaseProps,
|
||||
RangePickerDateProps as RCRangePickerDateProps,
|
||||
RangePickerTimeProps as RCRangePickerTimeProps,
|
||||
} from '../../vc-picker/RangePicker';
|
||||
import type { Locale as RcPickerLocale } from '../../vc-picker/interface';
|
||||
import type { TimePickerLocale } from '../../time-picker';
|
||||
import type { SizeType } from '../../config-provider';
|
||||
|
||||
type InjectDefaultProps<Props> = Omit<
|
||||
Props,
|
||||
| 'locale'
|
||||
| 'generateConfig'
|
||||
| 'prevIcon'
|
||||
| 'nextIcon'
|
||||
| 'superPrevIcon'
|
||||
| 'superNextIcon'
|
||||
| 'hideHeader'
|
||||
| 'components'
|
||||
> & {
|
||||
locale?: PickerLocale;
|
||||
size?: SizeType;
|
||||
bordered?: boolean;
|
||||
};
|
||||
|
||||
export type PickerLocale = {
|
||||
lang: RcPickerLocale & AdditionalPickerLocaleLangProps;
|
||||
timePickerLocale: TimePickerLocale;
|
||||
} & AdditionalPickerLocaleProps;
|
||||
|
||||
export type AdditionalPickerLocaleProps = {
|
||||
dateFormat?: string;
|
||||
dateTimeFormat?: string;
|
||||
weekFormat?: string;
|
||||
monthFormat?: string;
|
||||
};
|
||||
|
||||
export type AdditionalPickerLocaleLangProps = {
|
||||
placeholder: string;
|
||||
yearPlaceholder?: string;
|
||||
quarterPlaceholder?: string;
|
||||
monthPlaceholder?: string;
|
||||
weekPlaceholder?: string;
|
||||
rangeYearPlaceholder?: [string, string];
|
||||
rangeMonthPlaceholder?: [string, string];
|
||||
rangeWeekPlaceholder?: [string, string];
|
||||
rangePlaceholder?: [string, string];
|
||||
};
|
||||
|
||||
// Picker Props
|
||||
export type PickerBaseProps<DateType> = InjectDefaultProps<RCPickerBaseProps<DateType>>;
|
||||
export type PickerDateProps<DateType> = InjectDefaultProps<RCPickerDateProps<DateType>>;
|
||||
export type PickerTimeProps<DateType> = InjectDefaultProps<RCPickerTimeProps<DateType>>;
|
||||
|
||||
export type PickerProps<DateType> =
|
||||
| PickerBaseProps<DateType>
|
||||
| PickerDateProps<DateType>
|
||||
| PickerTimeProps<DateType>;
|
||||
|
||||
// Range Picker Props
|
||||
export type RangePickerBaseProps<DateType> = InjectDefaultProps<RCRangePickerBaseProps<DateType>>;
|
||||
export type RangePickerDateProps<DateType> = InjectDefaultProps<RCRangePickerDateProps<DateType>>;
|
||||
export type RangePickerTimeProps<DateType> = InjectDefaultProps<RCRangePickerTimeProps<DateType>>;
|
||||
|
||||
export type RangePickerProps<DateType> =
|
||||
| RangePickerBaseProps<DateType>
|
||||
| RangePickerDateProps<DateType>
|
||||
| RangePickerTimeProps<DateType>;
|
|
@ -76,6 +76,44 @@ function commonProps<DateType>() {
|
|||
};
|
||||
}
|
||||
|
||||
export interface CommonProps<DateType> {
|
||||
prefixCls?: string;
|
||||
dropdownClassName?: string;
|
||||
dropdownAlign?: AlignType;
|
||||
popupStyle?: CSSProperties;
|
||||
transitionName?: string;
|
||||
placeholder?: string;
|
||||
allowClear?: boolean;
|
||||
autofocus?: boolean;
|
||||
disabled?: boolean;
|
||||
tabindex?: number;
|
||||
open?: boolean;
|
||||
defaultOpen?: boolean;
|
||||
inputReadOnly?: boolean;
|
||||
suffixIcon?: VueNode;
|
||||
clearIcon?: VueNode;
|
||||
prevIcon?: VueNode;
|
||||
nextIcon?: VueNode;
|
||||
superPrevIcon?: VueNode;
|
||||
superNextIcon?: VueNode;
|
||||
getPopupContainer?: (triggerNode: HTMLElement) => HTMLElement;
|
||||
panelRender?: (originPanel: VueNode) => VueNode;
|
||||
role?: string;
|
||||
name?: string;
|
||||
autocomplete?: string;
|
||||
direction?: 'ltr' | 'rtl';
|
||||
showToday?: boolean;
|
||||
showTime?: boolean | SharedTimeProps<DateType>;
|
||||
locale?: PickerLocale;
|
||||
size?: SizeType;
|
||||
bordered?: boolean;
|
||||
dateRender?: DateRender<DateType>;
|
||||
disabledDate?: (date: DateType) => boolean;
|
||||
mode?: PanelMode;
|
||||
picker?: PickerMode;
|
||||
valueFormat?: string;
|
||||
}
|
||||
|
||||
function datePickerProps<DateType>() {
|
||||
return {
|
||||
defaultPickerValue: { type: [String, Object] as PropType<DateType | string> },
|
||||
|
@ -95,6 +133,19 @@ function datePickerProps<DateType>() {
|
|||
};
|
||||
}
|
||||
|
||||
export interface DatePickerProps<DateType> {
|
||||
defaultPickerValue?: DateType | string;
|
||||
defaultValue?: DateType | string;
|
||||
value?: DateType | string;
|
||||
disabledTime?: DisabledTime<DateType>;
|
||||
format?: string | CustomFormat<DateType> | (string | CustomFormat<DateType>)[];
|
||||
renderExtraFooter?: (mode: PanelMode) => VueNode;
|
||||
showNow?: boolean;
|
||||
monthCellRender?: MonthCellRender<DateType>;
|
||||
// deprecated Please use `monthCellRender"` instead.',
|
||||
monthCellContentRender?: MonthCellRender<DateType>;
|
||||
}
|
||||
|
||||
function rangePickerProps<DateType>() {
|
||||
return {
|
||||
allowEmpty: { type: Array as unknown as PropType<[boolean, boolean]> },
|
||||
|
@ -124,6 +175,25 @@ function rangePickerProps<DateType>() {
|
|||
};
|
||||
}
|
||||
|
||||
export interface RangePickerProps<DateType> {
|
||||
allowEmpty?: [boolean, boolean];
|
||||
dateRender?: RangeDateRender<DateType>;
|
||||
defaultPickerValue?: [DateType, DateType] | [string, string];
|
||||
defaultValue?: [DateType, DateType] | [string, string];
|
||||
value?: [DateType, DateType];
|
||||
disabledTime?: (date: EventValue<DateType>, type: RangeType) => DisabledTimes;
|
||||
disabled?: [boolean, boolean];
|
||||
format?: string;
|
||||
renderExtraFooter?: () => VueNode;
|
||||
separator?: string;
|
||||
ranges?: Record<
|
||||
string,
|
||||
Exclude<RangeValue<DateType>, null> | (() => Exclude<RangeValue<DateType>, null>)
|
||||
>;
|
||||
placeholder?: [string, string];
|
||||
mode?: [PanelMode, PanelMode];
|
||||
}
|
||||
|
||||
export type ExtraDatePickerProps<DateType> = {
|
||||
valueFormat?: string;
|
||||
defaultPickerValue?: DateType | string;
|
||||
|
|
|
@ -6,6 +6,7 @@ import {
|
|||
datePickerProps,
|
||||
rangePickerProps,
|
||||
} from '../date-picker/generatePicker/props';
|
||||
import type { CommonProps, DatePickerProps } from '../date-picker/generatePicker/props';
|
||||
import type { GenerateConfig } from '../vc-picker/generate';
|
||||
import type { PanelMode, RangeValue } from '../vc-picker/interface';
|
||||
import type { RangePickerSharedProps } from '../vc-picker/RangePicker';
|
||||
|
@ -16,7 +17,7 @@ export interface TimePickerLocale {
|
|||
rangePlaceholder?: [string, string];
|
||||
}
|
||||
|
||||
const timpePickerProps = {
|
||||
const timePickerProps = {
|
||||
format: String,
|
||||
showNow: { type: Boolean, default: undefined },
|
||||
showHour: { type: Boolean, default: undefined },
|
||||
|
@ -30,29 +31,46 @@ const timpePickerProps = {
|
|||
popupClassName: String,
|
||||
};
|
||||
|
||||
function createTimePicker<DateType>(generateConfig: GenerateConfig<DateType>) {
|
||||
const DatePicker = generatePicker<DateType>(generateConfig, {
|
||||
...timpePickerProps,
|
||||
order: { type: Boolean, default: true },
|
||||
});
|
||||
const { TimePicker: InternalTimePicker, RangePicker: InternalRangePicker } = DatePicker as any;
|
||||
type TimeRangePickerProps = Omit<RangePickerTimeProps<DateType>, 'picker'> & {
|
||||
export interface CommonTimePickerProps {
|
||||
format?: string;
|
||||
showNow?: boolean;
|
||||
showHour?: boolean;
|
||||
showMinute?: boolean;
|
||||
showSecond?: boolean;
|
||||
use12Hours?: boolean;
|
||||
hourStep?: number;
|
||||
minuteStep?: number;
|
||||
secondStep?: number;
|
||||
hideDisabledOptions?: boolean;
|
||||
popupClassName?: string;
|
||||
}
|
||||
|
||||
export type TimeRangePickerProps<T> = Omit<RangePickerTimeProps<T>, 'picker'> & {
|
||||
popupClassName?: string;
|
||||
valueFormat?: string;
|
||||
};
|
||||
// type TimePickerProps = Omit<PickerTimeProps<DateType>, 'picker'> & {
|
||||
// popupClassName?: string;
|
||||
// valueFormat?: string;
|
||||
// };
|
||||
const TimePicker = defineComponent({
|
||||
|
||||
export type TimePickerProps<DateType> = CommonProps<DateType> &
|
||||
DatePickerProps<DateType> &
|
||||
CommonTimePickerProps & {
|
||||
addon?: () => void;
|
||||
};
|
||||
|
||||
function createTimePicker<
|
||||
DateType,
|
||||
DTimePickerProps extends TimePickerProps<DateType> = TimePickerProps<DateType>,
|
||||
DTimeRangePickerProps extends TimeRangePickerProps<DateType> = TimeRangePickerProps<DateType>,
|
||||
>(generateConfig: GenerateConfig<DateType>) {
|
||||
const DatePicker = generatePicker<DateType>(generateConfig, {
|
||||
...timePickerProps,
|
||||
order: { type: Boolean, default: true },
|
||||
});
|
||||
|
||||
const { TimePicker: InternalTimePicker, RangePicker: InternalRangePicker } = DatePicker as any;
|
||||
|
||||
const TimePicker = defineComponent<DTimePickerProps>({
|
||||
name: 'ATimePicker',
|
||||
inheritAttrs: false,
|
||||
props: {
|
||||
...commonProps<DateType>(),
|
||||
...datePickerProps<DateType>(),
|
||||
...timpePickerProps,
|
||||
addon: { type: Function },
|
||||
} as any,
|
||||
slot: ['addon', 'renderExtraFooter', 'suffixIcon', 'clearIcon'],
|
||||
emits: ['change', 'openChange', 'focus', 'blur', 'ok', 'update:value', 'update:open'],
|
||||
setup(props, { slots, expose, emit, attrs }) {
|
||||
|
@ -78,7 +96,7 @@ function createTimePicker<DateType>(generateConfig: GenerateConfig<DateType>) {
|
|||
emit('update:open', open);
|
||||
emit('openChange', open);
|
||||
};
|
||||
const onFoucs = () => {
|
||||
const onFocus = () => {
|
||||
emit('focus');
|
||||
};
|
||||
const onBlur = () => {
|
||||
|
@ -100,7 +118,7 @@ function createTimePicker<DateType>(generateConfig: GenerateConfig<DateType>) {
|
|||
}
|
||||
onChange={onChange}
|
||||
onOpenChange={onOpenChange}
|
||||
onFocus={onFoucs}
|
||||
onFocus={onFocus}
|
||||
onBlur={onBlur}
|
||||
onOk={onOk}
|
||||
v-slots={slots}
|
||||
|
@ -110,15 +128,16 @@ function createTimePicker<DateType>(generateConfig: GenerateConfig<DateType>) {
|
|||
},
|
||||
});
|
||||
|
||||
const TimeRangePicker = defineComponent<TimeRangePickerProps>({
|
||||
TimePicker.props = {
|
||||
...commonProps<DateType>(),
|
||||
...datePickerProps<DateType>(),
|
||||
...timePickerProps,
|
||||
addon: { type: Function },
|
||||
};
|
||||
|
||||
const TimeRangePicker = defineComponent<DTimeRangePickerProps>({
|
||||
name: 'ATimeRangePicker',
|
||||
inheritAttrs: false,
|
||||
props: {
|
||||
...commonProps<DateType>(),
|
||||
...rangePickerProps<DateType>(),
|
||||
...timpePickerProps,
|
||||
order: { type: Boolean, default: true },
|
||||
} as any,
|
||||
slot: ['renderExtraFooter', 'suffixIcon', 'clearIcon'],
|
||||
emits: [
|
||||
'change',
|
||||
|
@ -152,7 +171,7 @@ function createTimePicker<DateType>(generateConfig: GenerateConfig<DateType>) {
|
|||
emit('update:open', open);
|
||||
emit('openChange', open);
|
||||
};
|
||||
const onFoucs = () => {
|
||||
const onFocus = () => {
|
||||
emit('focus');
|
||||
};
|
||||
const onBlur = () => {
|
||||
|
@ -164,7 +183,7 @@ function createTimePicker<DateType>(generateConfig: GenerateConfig<DateType>) {
|
|||
) => {
|
||||
emit('panelChange', values, modes);
|
||||
};
|
||||
const onOk = (values: RangeValue<string> | RangeValue<DateType>) => {
|
||||
const onOk = (values: RangeValue<string | DateType>) => {
|
||||
emit('ok', values);
|
||||
};
|
||||
const onCalendarChange: RangePickerSharedProps<DateType>['onCalendarChange'] = (
|
||||
|
@ -185,7 +204,7 @@ function createTimePicker<DateType>(generateConfig: GenerateConfig<DateType>) {
|
|||
ref={pickerRef}
|
||||
onChange={onChange}
|
||||
onOpenChange={onOpenChange}
|
||||
onFocus={onFoucs}
|
||||
onFocus={onFocus}
|
||||
onBlur={onBlur}
|
||||
onPanelChange={onPanelChange}
|
||||
onOk={onOk}
|
||||
|
@ -197,6 +216,13 @@ function createTimePicker<DateType>(generateConfig: GenerateConfig<DateType>) {
|
|||
},
|
||||
});
|
||||
|
||||
TimeRangePicker.props = {
|
||||
...commonProps<DateType>(),
|
||||
...rangePickerProps<DateType>(),
|
||||
...timePickerProps,
|
||||
order: { type: Boolean, default: true },
|
||||
};
|
||||
|
||||
return {
|
||||
TimePicker,
|
||||
TimeRangePicker,
|
||||
|
|
Loading…
Reference in New Issue