UNPKG

@alifd/meet-react

Version:

Fusion Mobile React UI System Component

51 lines (50 loc) 1.73 kB
/// <reference types="react" /> import { Component, ReactNode } from 'react'; import { SelectDrawerProps } from '../../select-drawer'; import { AvailableDate } from '../../utils/date'; import { BasicSizeType } from '../../utils/types'; export interface BasePickerProps extends Omit<SelectDrawerProps, 'onOk'> { prefix?: string; value?: AvailableDate; defaultValue?: AvailableDate; disabledDate?: (value: Date, view: string) => boolean; validRange?: [Date, Date]; format?: string; mode?: 'calendar' | 'picker'; size?: BasicSizeType; align?: 'left' | 'right'; iconType?: string; placeholder?: string; hasClear?: boolean; disabled?: boolean; readOnly?: boolean; onChange?: (value: Date | null) => void; onClear?: () => void; onOk?: (value: Date) => void; onVisibleChange?: (visible: boolean) => void; onCancel?: (reason?: string) => void; } interface BasePickerState { value: Date | null; pickerValue: Date; yearPickerVisible?: boolean; } declare abstract class BasePicker<T extends BasePickerProps = BasePickerProps> extends Component<T, BasePickerState> { get format(): string; ref: import("react").RefObject<unknown>; calendarRef: import("react").RefObject<any>; constructor(props: T); handleChange(pickerValue: Date): void; handleYearPickerVisibleChange(show: boolean): void; handleOk(): boolean; handleClear: () => void; handleVisibleChange(to: boolean): void; handleCancel(reason: any): void; abstract renderPicker(): ReactNode; abstract getDefaultFormat(): string; componentDidUpdate(): void; show(): void; hide(): void; render(): JSX.Element; } export default BasePicker;