@flatbiz/antd
Version:
58 lines (55 loc) • 2.1 kB
TypeScript
import { TAny } from '@flatbiz/utils';
import { DatePicker, GetProps } from 'antd';
export type TDayjsDateType = "YYYY-MM-DD HH:mm:ss" | "YYYY-MM-DD HH:mm" | "YYYY-MM-DD HH" | "YYYY-MM-DD" | (string & {});
export type RangePickerDateProps = GetProps<typeof DatePicker.RangePicker>;
export type DateRangePickerWrapperProps = Omit<RangePickerDateProps, "value" | "onChange" | "onCalendarChange" | "format"> & {
value?: [
string,
string
];
onChange?: (value?: [
string,
string
]) => void;
/**
* 1. minDate、maxDate 与 format格式相同;默认:YYYY-MM-DD
* 2. maxDays 最大可选的天数
*/
disabledDateConfig?: {
minDate?: TDayjsDateType;
maxDate?: TDayjsDateType;
maxDays?: number;
/** 禁用 小时 刻度列表,与日期无关 */
disabledHourList?: number[];
/** 禁用 分钟 刻度列表,与日期无关 */
disabledMinuteList?: number[];
/** 禁用 秒钟 刻度列表,与日期无关 */
disabledSecondList?: number[];
};
format?: TDayjsDateType;
/** value 输出适配 */
outputNormalize?: (value: [
string,
string
]) => TAny;
/** value 输入适配 */
inputNormalize?: (value?: TAny) => [
string,
string
] | undefined;
};
/**
* DatePicker.RangePicker包装组件
* ```
* 1. value类型为 [string, string],可以通过 inputNormalize来进行自定义转换
* 2. onChange返回类型 [string, string],可以通过 outputNormalize来进行自定义转换
* 3. 默认格式化类型 YYYY-MM-DD; 当showTime===true时,默认格式化类型YYYY-MM-DD HH:mm:ss;其他格式化类型自定义format
* 4. 可设置disabledDateConfig,来控制日期项的disbaled状态
* 5. 设置 disabledDate 后,disabledDateConfig配置将失效
* 6. 设置 disabledTime 后,内置的disabledTime逻辑将失效
*
* TODO: 存在场景缺陷,当设置maxDays、showTime后,在选择单个日期不通过确认按钮直接切换输入框,无法获取回调,无法约束disabledDate
* ```
*/
export declare const DateRangePickerWrapper: (props: DateRangePickerWrapperProps) => import("react").JSX.Element;
export {};