chowa
Version:
UI component library based on React
82 lines (81 loc) • 2.82 kB
TypeScript
/**
* @license chowa v1.1.3
*
* Copyright (c) Chowa Techonlogies Co.,Ltd.(http://www.chowa.cn).
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
import * as React from 'react';
import * as PropTypes from 'prop-types';
import * as moment from 'moment';
import { DisabledDate } from '../tool';
import { Mode } from '../calendar-mode';
export interface MinRangeCalendarProps {
className?: string;
style?: React.CSSProperties;
defaultValue?: [moment.Moment, moment.Moment];
value?: [moment.Moment, moment.Moment];
disabledDate?: DisabledDate;
timeable?: boolean;
secondable?: boolean;
determinable?: boolean;
clearable?: boolean;
onClear?: () => void;
onConfirm?: () => void;
onChange?: (range: [moment.Moment, moment.Moment]) => void;
}
export interface MinRangeCalendarState {
beginActiveMode: Mode;
beginDate: moment.Moment;
beginTime: moment.Moment;
beginDisplay: moment.Moment;
beginEach: moment.Moment;
endActiveMode: Mode;
endDate: moment.Moment;
endTime: moment.Moment;
endDisplay: moment.Moment;
endEach: moment.Moment;
prepareEndDate: moment.Moment;
}
declare class MinRangeCalendar extends React.PureComponent<MinRangeCalendarProps, MinRangeCalendarState> {
static propTypes: {
className: PropTypes.Requireable<string>;
style: PropTypes.Requireable<object>;
defaultValue: PropTypes.Requireable<any[]>;
value: PropTypes.Requireable<any[]>;
timeable: PropTypes.Requireable<boolean>;
secondable: PropTypes.Requireable<boolean>;
determinable: PropTypes.Requireable<boolean>;
disabledDate: PropTypes.Requireable<object>;
onConfirm: PropTypes.Requireable<(...args: any[]) => any>;
onChange: PropTypes.Requireable<(...args: any[]) => any>;
clearable: PropTypes.Requireable<boolean>;
onClear: PropTypes.Requireable<(...args: any[]) => any>;
};
static defaultProps: {
timeable: boolean;
secondable: boolean;
clearable: boolean;
determinable: boolean;
};
constructor(props: MinRangeCalendarProps);
componentDidUpdate(preProps: MinRangeCalendarProps): void;
private triggerChange;
private updateBeginEach;
private updateBeginDisplay;
private updateBeginMode;
private onBeginTimeSelectHandler;
private updateEndEach;
private updateEndDisplay;
private updateEndMode;
private onEndTimeSelectHandler;
private onRangeSelectHandler;
private updateBothMode;
private onClearHandler;
private onConfirmHandler;
private onBeofreSelectHandler;
private onDeDateBeforeSelectHandler;
render(): JSX.Element;
}
export default MinRangeCalendar;