office-ui-fabric-react
Version:
Reusable React components for building experiences for Microsoft 365.
52 lines (51 loc) • 1.7 kB
TypeScript
import * as React from 'react';
import { ICalendarIconStrings } from './Calendar.types';
export interface ICalendarYearRange {
fromYear: number;
toYear: number;
}
export interface ICalendarYearRangeToString {
(range: ICalendarYearRange): string;
}
export interface ICalendarYearStrings {
rangeAriaLabel?: string | ICalendarYearRangeToString;
prevRangeAriaLabel?: string | ICalendarYearRangeToString;
nextRangeAriaLabel?: string | ICalendarYearRangeToString;
headerAriaLabelFormatString?: string;
}
export interface ICalendarYear {
focus(): void;
}
export interface ICalendarYearProps {
navigationIcons?: ICalendarIconStrings;
navigatedYear?: number;
selectedYear?: number;
minYear?: number;
maxYear?: number;
onHeaderSelect?: (focus: boolean) => void;
onSelectYear?: (year: number) => void;
onRenderTitle?: (props: ICalendarYearHeaderProps) => React.ReactNode;
onRenderYear?: (year: number) => React.ReactNode;
className?: string;
strings?: ICalendarYearStrings;
}
export interface ICalendarYearHeaderProps extends ICalendarYearProps, ICalendarYearRange {
onSelectPrev?: () => void;
onSelectNext?: () => void;
}
export interface ICalendarYearState {
fromYear: number;
navigatedYear?: number;
selectedYear?: number;
}
export declare class CalendarYear extends React.Component<ICalendarYearProps, ICalendarYearState> implements ICalendarYear {
private _gridRef;
constructor(props: ICalendarYearProps);
focus(): void;
render(): JSX.Element;
private _onNavNext;
private _onNavPrev;
private _renderHeader;
private _renderGrid;
private _calculateInitialStateFromProps;
}