office-ui-fabric-react
Version:
Reusable React components for building experiences for Office 365.
77 lines (76 loc) • 2.78 kB
TypeScript
/// <reference types="react" />
import { BaseComponent } from '../../Utilities';
import { ISwatchColorPicker, ISwatchColorPickerProps } from './SwatchColorPicker.types';
export interface ISwatchColorPickerState {
selectedIndex?: number;
}
export declare class SwatchColorPickerBase extends BaseComponent<ISwatchColorPickerProps, ISwatchColorPickerState> implements ISwatchColorPicker {
static defaultProps: ISwatchColorPickerProps;
private _id;
private _cellFocused;
private navigationIdleTimeoutId;
private isNavigationIdle;
private readonly navigationIdleDelay;
private async;
constructor(props: ISwatchColorPickerProps);
componentWillReceiveProps(newProps: ISwatchColorPickerProps): void;
componentWillUnmount(): void;
render(): JSX.Element | null;
/**
* When the whole swatchColorPicker is blurred,
* make sure to clear the pending focused stated
*/
private _onSwatchColorPickerBlur;
/**
* Get the selected item's index
* @param items - The items to search
* @param selectedId - The selected item's id to find
* @returns {number} - The index of the selected item's id, -1 if there was no match
*/
private _getSelectedIndex(items, selectedId);
/**
* Render a color cell
* @param item - The item to render
* @returns {JSX.Element} - Element representing the item
*/
private _renderOption;
/**
* Callback passed to the GridCell that will manage triggering the onCellHovered callback for mouseEnter
*/
private _onMouseEnter;
/**
* Callback passed to the GridCell that will manage Hover/Focus updates
*/
private _onMouseMove;
/**
* Callback passed to the GridCell that will manage Hover/Focus updates
*/
private _onMouseLeave;
/**
* Callback to make sure we don't update the hovered element during mouse wheel
*/
private _onWheel;
/**
* Callback that
*/
private _onKeyDown;
/**
* Sets a timeout so we won't process any mouse "hover" events
* while navigating (via mouseWheel or arrowKeys)
*/
private setNavigationTimeout;
/**
* Callback passed to the GridCell class that will trigger the onCellHovered callback of the SwatchColorPicker
* NOTE: This will not be triggered if shouldFocusOnHover === true
*/
private _onGridCellHovered;
/**
* Callback passed to the GridCell class that will trigger the onCellFocus callback of the SwatchColorPicker
*/
private _onGridCellFocused;
/**
* Handle the click on a cell
* @param item - The cell that the click was fired against
*/
private _onCellClick;
}