UNPKG

@alifd/next

Version:

A configurable component library for web built on React.

137 lines (136 loc) 6.25 kB
import React, { Component, type HTMLAttributes, type KeyboardEvent, type UIEvent } from 'react'; import PropTypes from 'prop-types'; import moment, { type Moment } from 'moment'; import { type ClassPropsWithDefault } from '../util'; import { checkDateValue } from './util'; import type { DatePickerProps, DatePickerState } from './types'; type InnerDatePickerProps = ClassPropsWithDefault<DatePickerProps, typeof DatePicker.defaultProps>; /** * DatePicker */ declare class DatePicker extends Component<DatePickerProps, DatePickerState> { static propTypes: { prefix: PropTypes.Requireable<string>; rtl: PropTypes.Requireable<boolean>; label: PropTypes.Requireable<PropTypes.ReactNodeLike>; state: PropTypes.Requireable<string>; placeholder: PropTypes.Requireable<string>; defaultVisibleMonth: PropTypes.Requireable<(...args: any[]) => any>; onVisibleMonthChange: PropTypes.Requireable<(...args: any[]) => any>; value: typeof checkDateValue; defaultValue: typeof checkDateValue; format: PropTypes.Requireable<string>; showTime: PropTypes.Requireable<NonNullable<boolean | object | null | undefined>>; resetTime: PropTypes.Requireable<boolean>; disabledDate: PropTypes.Requireable<(...args: any[]) => any>; footerRender: PropTypes.Requireable<(...args: any[]) => any>; onChange: PropTypes.Requireable<(...args: any[]) => any>; onOk: PropTypes.Requireable<(...args: any[]) => any>; size: PropTypes.Requireable<string>; disabled: PropTypes.Requireable<boolean>; hasClear: PropTypes.Requireable<boolean>; visible: PropTypes.Requireable<boolean>; defaultVisible: PropTypes.Requireable<boolean>; onVisibleChange: PropTypes.Requireable<(...args: any[]) => any>; popupTriggerType: PropTypes.Requireable<string>; popupAlign: PropTypes.Requireable<string>; popupContainer: PropTypes.Requireable<any>; popupStyle: PropTypes.Requireable<object>; popupClassName: PropTypes.Requireable<string>; popupProps: PropTypes.Requireable<object>; followTrigger: PropTypes.Requireable<boolean>; inputProps: PropTypes.Requireable<object>; dateCellRender: PropTypes.Requireable<(...args: any[]) => any>; monthCellRender: PropTypes.Requireable<(...args: any[]) => any>; yearCellRender: PropTypes.Requireable<(...args: any[]) => any>; dateInputAriaLabel: PropTypes.Requireable<string>; timeInputAriaLabel: PropTypes.Requireable<string>; isPreview: PropTypes.Requireable<boolean>; renderPreview: PropTypes.Requireable<(...args: any[]) => any>; locale: PropTypes.Requireable<object>; className: PropTypes.Requireable<string>; name: PropTypes.Requireable<string>; popupComponent: PropTypes.Requireable<PropTypes.ReactComponentLike>; popupContent: PropTypes.Requireable<PropTypes.ReactNodeLike>; disableChangeMode: PropTypes.Requireable<boolean>; yearRange: PropTypes.Requireable<(number | null | undefined)[]>; defaultPropsConfig: PropTypes.Requireable<object>; errorBoundary: PropTypes.Requireable<NonNullable<boolean | object | null | undefined>>; pure: PropTypes.Requireable<boolean>; warning: PropTypes.Requireable<boolean>; device: PropTypes.Requireable<string>; children: PropTypes.Requireable<any>; }; static defaultProps: { prefix: string; rtl: boolean; format: string; size: string; showTime: boolean; resetTime: boolean; disabledDate: () => boolean; footerRender: () => null; hasClear: boolean; popupTriggerType: string; popupAlign: string; locale: Partial<{ placeholder: string; datetimePlaceholder: string; monthPlaceholder: string; weekPlaceholder: string; yearPlaceholder: string; now: string; selectTime: string; selectDate: string; ok: string; clear: string; startPlaceholder: string; endPlaceholder: string; hour: string; minute: string; second: string; monthBeforeYear?: boolean | undefined; }> & { momentLocale?: string | undefined; }; defaultVisible: boolean; onChange: () => void; onVisibleChange: () => void; onOk: () => void; }; static displayName: string; readonly props: InnerDatePickerProps; constructor(props: DatePickerProps); static getDerivedStateFromProps(props: InnerDatePickerProps): { format: string | undefined; timeFormat: string; dateTimeFormat: string | undefined; value?: moment.Moment | null | undefined; inputAsString?: boolean | undefined; dateInputStr?: string | undefined; timeInputStr?: string | undefined; inputing?: false | "time" | "date" | undefined; visible?: boolean | undefined; panel?: import("./types").PanelType | undefined; }; onValueChange: (newValue: Moment | null, handler?: 'onOk' | 'onChange') => void; onSelectCalendarPanel: (value: Moment) => void; onSelectTimePanel: (value: Moment) => void; clearValue: () => void; onDateInputChange: (inputStr: string | null | undefined, e: UIEvent, eventType?: string) => void; onTimeInputChange: (inputStr: string) => void; onDateInputBlur: () => void; onTimeInputBlur: () => void; onKeyDown: (e: KeyboardEvent) => void; onTimeKeyDown: (e: KeyboardEvent) => void; handleChange: (newValue: Moment | null, prevValue: Moment | null, others?: {}) => void; onFoucsDateInput: () => void; onFoucsTimeInput: () => void; onVisibleChange: (visible: boolean, type: string) => void; changePanel: (panel: DatePickerState['panel']) => void; onOk: (value?: Moment | null) => void; renderPreview(others: HTMLAttributes<HTMLDivElement>): React.JSX.Element; render(): React.JSX.Element; } declare const _default: typeof DatePicker; export default _default;