UNPKG

office-ui-fabric-react

Version:

Reusable React components for building experiences for Office 365.

62 lines (61 loc) 2.66 kB
/// <reference types="react" /> import { BaseComponent } from '../../Utilities'; import { IColumn } from './DetailsList.types'; import { IDetailsRowBaseProps } from './DetailsRow.types'; import { IDetailsRowCheckProps } from './DetailsRowCheck.types'; export interface IDetailsRowSelectionState { isSelected: boolean; isSelectionModal: boolean; } export interface IDetailsRowState { selectionState?: IDetailsRowSelectionState; columnMeasureInfo?: { index: number; column: IColumn; onMeasureDone: (measuredWidth: number) => void; }; isDropping?: boolean; groupNestingDepth?: number; } export declare class DetailsRowBase extends BaseComponent<IDetailsRowBaseProps, IDetailsRowState> { private _root; private _cellMeasurer; private _focusZone; private _droppingClassNames; private _hasMounted; private _dragDropSubscription; constructor(props: IDetailsRowBaseProps); componentDidMount(): void; componentDidUpdate(previousProps: IDetailsRowBaseProps): void; componentWillUnmount(): void; componentWillReceiveProps(newProps: IDetailsRowBaseProps): void; shouldComponentUpdate(nextProps: IDetailsRowBaseProps, nextState: IDetailsRowState): boolean; render(): JSX.Element; /** * measure cell at index. and call the call back with the measured cell width when finish measure * * @param {number} index (the cell index) * @param {(width: number) => void} onMeasureDone (the call back function when finish measure) */ measureCell(index: number, onMeasureDone: (width: number) => void): void; focus(forceIntoFirstElement?: boolean): boolean; protected _onRenderCheck(props: IDetailsRowCheckProps): JSX.Element; private _getSelectionState(props); private _onSelectionChanged(); private _onToggleSelection(); private _onRootRef; private _getRowDragDropOptions(); /** * update isDropping state based on the input value, which is used to change style during drag and drop * * when change to true, that means drag enter. we will add default dropping class name * or the custom dropping class name (return result from onDragEnter) to the root elemet. * * when change to false, that means drag leave. we will remove the dropping class name from root element. * * @private * @param {boolean} newValue (new isDropping state value) * @param {DragEvent} event (the event trigger dropping state change which can be dragenter, dragleave etc) */ private _updateDroppingState(newValue, event); }