@auraxy/react-datepicker
Version:
React date-picker, time-picker, date-time-picker
107 lines (100 loc) • 2.35 kB
TypeScript
import React, { ReactNode } from 'react'
import { TimeInfo } from '@livelybone/date-generator'
import { ReactPopperProps } from '@livelybone/react-popper'
import { ScrollBarProps } from 'react-perfect-scrollbar'
declare enum DatePickerType {
Year = 'year',
Month = 'month',
Date = 'date',
Time = 'time',
}
declare enum TimePickerType {
Second = 'second',
Minute = 'minute',
Hour = 'hour',
}
declare enum Compare {
GreaterThan = 1,
Equal = 0,
LessThan = -1,
}
interface CommonProps {
id?: string
placeholder?: string
min?: string
max?: string
readonly?: boolean
popperProps?: ReactPopperProps
clearIcon?: ReactNode
preIcon?: ReactNode
confirmBtnStr?: ReactNode
onError?(err: Error): void
}
declare const DatePickerTypeRef: {
time: {
placeholder: string
}
date: {
placeholder: string
}
month: {
placeholder: string
}
year: {
placeholder: string
}
}
interface DatePickerProps extends CommonProps {
value?: string
type?: DatePickerType.Date | DatePickerType.Month | DatePickerType.Year
dayStr?: ReactNode[]
multiple?: boolean
onChange?(val: string): void
}
interface TimePinRefProps {
onConfirm(): Promise<TimeInfo>
updateScroll(): void
}
interface TimePickerProps extends CommonProps {
value?: string
type?: TimePickerType
timeStr?: ReactNode[]
scrollBarProps?: ScrollBarProps
onChange?(val: string): void
}
interface DateRangePickerProps extends CommonProps {
value?: [string, string]
secondPlaceholder?: string
type?: DatePickerType
dayStr?: ReactNode[]
rangeSeparator?: ReactNode
onSelectStartDate?(val: string): void
onChange?(val: [string, string]): void
}
interface DatetimePickerProps extends CommonProps {
value?: string
dayStr?: ReactNode[]
timeStr?: ReactNode[]
scrollBarProps?: ScrollBarProps
onChange?(val: string): void
}
declare const DatePicker: React.FC<DatePickerProps>
declare const DateRangePicker: React.FC<DateRangePickerProps>
declare const DatetimePicker: React.FC<DatetimePickerProps>
declare const TimePicker: React.FC<TimePickerProps>
export {
CommonProps,
Compare,
DatePicker,
DatePickerProps,
DatePickerType,
DatePickerTypeRef,
DateRangePicker,
DateRangePickerProps,
DatetimePicker,
DatetimePickerProps,
TimePicker,
TimePickerProps,
TimePickerType,
TimePinRefProps,
}