@progress/kendo-react-dateinputs
Version:
KendoReact Date Inputs package
84 lines (83 loc) • 2.67 kB
TypeScript
import * as React from 'react';
import * as PropTypes from 'prop-types';
import { CalendarCellProps } from './CalendarCell';
import { CalendarWeekCellProps } from './CalendarWeekCell';
import { CalendarViewEnum, CellContext, SelectionRange, SelectionRangeEnd, ViewService } from '../models';
import { BusViewService } from '../services';
/**
* @hidden
*/
export interface ViewEventArguments {
syntheticEvent: React.SyntheticEvent<any>;
nativeEvent?: any;
value: Date;
target: View;
}
/**
* @hidden
*/
export interface ViewDimensions {
headerHight: number;
offsetHeight: number;
}
/**
* @hidden
*/
export interface ViewProps {
activeRangeEnd?: SelectionRangeEnd;
activeView: CalendarViewEnum;
bus: BusViewService;
cellUID: string;
direction?: 'horizontal' | 'vertical';
focusedDate: Date;
weekCell?: React.ComponentType<CalendarWeekCellProps>;
max: Date;
min: Date;
cell?: React.ComponentType<CalendarCellProps>;
onCellEnter?: (date: Date | null) => void;
onCellLeave?: (date: Date | null) => void;
onChange?: (event: ViewEventArguments) => void;
selectedDate: Date | Date[] | null;
selectionRange?: SelectionRange;
service: ViewService;
showWeekNumbers?: boolean;
viewDate: Date;
}
/**
* @hidden
*/
export declare class View extends React.Component<ViewProps, {}> {
static propTypes: {
activeRangeEnd: PropTypes.Requireable<any>;
activeView: PropTypes.Validator<any>;
cellUID: PropTypes.Validator<any>;
direction: PropTypes.Requireable<any>;
focusedDate: PropTypes.Validator<any>;
max: PropTypes.Validator<any>;
min: PropTypes.Validator<any>;
onChange: PropTypes.Requireable<any>;
selectedDate: PropTypes.Requireable<any>;
showWeekNumbers: PropTypes.Requireable<any>;
viewDate: PropTypes.Validator<any>;
};
static defaultProps: {
direction: string;
selectedDate: Date;
showWeekNumbers: boolean;
};
private intl;
private weekService;
protected readonly isHorizontal: boolean;
protected readonly isMonthView: boolean;
protected readonly weekNumber: boolean;
protected readonly selectedDate: Date | Date[] | null;
render(): JSX.Element;
protected buildWeekNumber: (row: any, idx: number) => JSX.Element;
protected buildRow: (row: any) => any;
protected getWeekNumber(date: Date): number | null;
protected firstDate: (row: any) => Date;
protected firstWeekDateContext: (rowCtx: CellContext[]) => CellContext;
private handleClick;
private handleMouseEnter;
private handleMouseLeave;
}