UNPKG

office-ui-fabric-react

Version:

Reusable React components for building experiences for Office 365.

59 lines (58 loc) 2.17 kB
import * as React from 'react'; import { IDropdownProps } from './Dropdown.Props'; import { FocusZone } from '../../FocusZone'; import { IWithResponsiveModeState } from '../../utilities/decorators/withResponsiveMode'; import { BaseComponent } from '../../Utilities'; export interface IDropdownInternalProps extends IDropdownProps, IWithResponsiveModeState { } export interface IDropdownState { isOpen?: boolean; selectedIndex?: number; } export declare class Dropdown extends BaseComponent<IDropdownInternalProps, IDropdownState> { static defaultProps: { options: any[]; }; private static Option; refs: { [key: string]: React.ReactInstance; root: HTMLElement; focusZone: FocusZone; }; private _focusZone; private _dropDown; private _dropdownLabel; private _id; constructor(props: IDropdownProps); componentWillReceiveProps(newProps: IDropdownProps): void; componentDidUpdate(prevProps: IDropdownProps, prevState: IDropdownState): void; render(): JSX.Element; focus(): void; setSelectedIndex(index: number): void; /** * Finds the next valid Dropdown option and sets the selected index to it. * @param stepValue Value of how many items the function should traverse. Should be -1 or 1. * @param index Index of where the search should start * @param selectedIndex The selectedIndex Dropdown's state * @returns The next valid dropdown option's index */ private _moveIndex(stepValue, index, selectedIndex); private _onRenderTitle(item); private _onRenderPlaceHolder(props); private _onRenderContainer(props); private _onRenderList(props); private _onRenderItem(item); private _renderSeparator(item); private _renderHeader(item); private _renderOption(item); private _onRenderOption(item); private _onPositioned(); private _onItemClick(index); private _onDismiss(); private _getSelectedIndex(options, selectedKey); private _onDropdownBlur(ev); private _onDropdownKeyDown(ev); private _onDropdownKeyUp(ev); private _onZoneKeyDown(ev); private _onDropdownClick(ev); }