azure-devops-ui
Version:
React components for building web UI in Azure DevOps
59 lines (58 loc) • 1.98 kB
TypeScript
import "../../CommonImports";
import "../../Core/core.css";
import "./EditableDropdown.css";
import * as React from "react";
import { DropdownCallout, DropdownExpandableTextField } from '../../Dropdown';
import { IExpandable } from '../../Expandable';
import { renderListBoxCell } from '../../ListBox';
import { IFocusable } from '../../Utilities/Focus';
import { IEditableDropdownProps } from "./EditableDropdown.Props";
export declare class CustomEditableDropdown<T = {}> extends React.Component<IEditableDropdownProps<T>> implements IExpandable, IFocusable<{}> {
static defaultProps: {
allowClear: boolean;
autoAccept: boolean;
renderExpandable: typeof DropdownExpandableTextField;
renderCallout: typeof DropdownCallout;
renderItem: typeof renderListBoxCell;
};
private columns;
private dropdown;
private filteredItems;
private selection;
private itemProvider;
private isExpanded;
private selectedItemInList;
private selectedFreeform;
private listBox;
private filteredIndexMap;
private filterMatches;
private previousFocusedIndex;
private focusedIndex;
private lastSelectedItem?;
private timerManagement;
constructor(props: IEditableDropdownProps<T>);
render(): JSX.Element;
componentDidMount(): void;
collapse: () => void;
expand: () => void;
focus(): void;
private renderItem;
private wrapWithFocusedIndexObserver;
private onCollapse;
private onItemsChange;
private selectSelectedTextItem;
private onSelect;
private renderExpandable;
private renderCallout;
private onExpand;
private onTextChange;
private filterItems;
private onKeyDown;
private selectIndex;
private focusItem;
private updateFilteredIndexMap;
private focusNextItem;
private focusPreviousItem;
private getFocusedIndex;
private isFocusable;
}