office-ui-fabric-react
Version:
Reusable React components for building experiences for Office 365.
47 lines (46 loc) • 1.55 kB
TypeScript
import * as React from 'react';
import { BaseComponent } from '../../Utilities';
import { ICalendarStrings } from './Calendar.Props';
import { DayOfWeek, DateRangeType } from '../../utilities/dateValues/DateValues';
export interface IDayInfo {
key: string;
date: string;
originalDate: Date;
isInMonth: boolean;
isToday: boolean;
isSelected: boolean;
onSelected: () => void;
}
export interface ICalendarDayProps {
strings: ICalendarStrings;
selectedDate: Date;
navigatedDate: Date;
onSelectDate: (date: Date, selectedDateRangeArray?: Date[]) => void;
onNavigateDate: (date: Date, focusOnNavigatedDay: boolean) => void;
onDismiss?: () => void;
firstDayOfWeek: DayOfWeek;
dateRangeType: DateRangeType;
autoNavigateOnSelection: boolean;
today?: Date;
}
export interface ICalendarDayState {
activeDescendantId?: string;
weeks?: IDayInfo[][];
}
export declare class CalendarDay extends BaseComponent<ICalendarDayProps, ICalendarDayState> {
refs: {
[key: string]: React.ReactInstance;
navigatedDay: HTMLElement;
};
constructor(props: ICalendarDayProps);
componentWillReceiveProps(nextProps: ICalendarDayProps): void;
render(): JSX.Element;
focus(): void;
private _navigateMonthEdge(ev, date, weekIndex, dayIndex);
private _onKeyDown(callback, ev);
private _onSelectDate(selectedDate);
private _onSelectNextMonth();
private _onSelectPrevMonth();
private _onPrevMonthKeyDown(ev);
private _getWeeks(propsToUse);
}