UNPKG

chowa

Version:

UI component library based on React

93 lines (92 loc) 2.99 kB
/** * @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 { Mode } from '../calendar-mode'; import { CEvent } from '../tool'; import { SelectOptionProps } from '../../select'; import MinCalendar from '../min'; export declare type EventType = 'info' | 'primary' | 'danger' | 'success' | 'warning'; export interface Event { start: moment.Moment; finish: moment.Moment; content: string; category: string; type: EventType; [key: string]: any; } export interface FullCalendarProps { className?: string; style?: React.CSSProperties; defaultMode?: Mode; defaultValue?: moment.Moment; defaultEvents?: Event[]; events?: Event[]; modeSelectable?: boolean; dateSelectable?: boolean; editable?: boolean; appendable?: boolean; onDelete?: (event: Event) => void; onEdit?: (event: Event, index: number) => void; onAppend?: (event: Event) => void; categories: SelectOptionProps[]; } export interface FullCalendarState { activeMode: Mode; selfValue: moment.Moment; includeCurrentDay: boolean; renderEvents: Event[]; contextmenuVisible: boolean; contextmenuStyle: React.CSSProperties; contextmenuInfo: { mom: moment.Moment; event: CEvent; }; editModalVisible: boolean; } declare class FullCalendar extends React.PureComponent<FullCalendarProps, FullCalendarState> { static propTypes: { className: PropTypes.Requireable<string>; style: PropTypes.Requireable<object>; defaultMode: PropTypes.Requireable<Mode>; defaultValue: PropTypes.Requireable<object>; defaultEvents: PropTypes.Requireable<any[]>; events: PropTypes.Requireable<any[]>; modeSelectable: PropTypes.Requireable<boolean>; dateSelectable: PropTypes.Requireable<boolean>; editable: PropTypes.Requireable<boolean>; appendable: PropTypes.Requireable<boolean>; }; static defaultProps: { defaultMode: Mode; modeSelectable: boolean; dateSelectable: boolean; editable: boolean; appendable: boolean; }; static Min: typeof MinCalendar; private wrapperEle; constructor(props: FullCalendarProps); componentDidUpdate(preProps: FullCalendarProps, preState: FullCalendarState): void; private selectCurrentDay; private prePageHandler; private nextPageHandler; private onModeChangeHandler; private getDisplayDate; private onContextMenuHandler; private autoHideContextmenu; private showEditModal; private hiddenEditModal; private deleteEvent; private appendHandler; private editHandler; render(): JSX.Element; } export default FullCalendar;