Skip to content

utils/dropdown

Classes

Defined in: utils/dropdown.ts:37

Type Parameters

T

T

Constructors

Constructor
new Dropdown<T>(opts): Dropdown<T>;

Defined in: utils/dropdown.ts:42

Parameters
opts

DropdownOptions\<T>

Returns

Dropdown\<T>

Methods

setItems()
setItems(items): void;

Defined in: utils/dropdown.ts:50

Replace the visible item list. Passing [] hides the dropdown.

Parameters
items

T[]

Returns

void

isOpen()
isOpen(): boolean;

Defined in: utils/dropdown.ts:63

True if the dropdown is currently visible.

Returns

boolean

hide()
hide(): void;

Defined in: utils/dropdown.ts:67

Returns

void

getItems()
getItems(): readonly T[];

Defined in: utils/dropdown.ts:73

Returns

readonly T[]

getSelectedIndex()
getSelectedIndex(): number;

Defined in: utils/dropdown.ts:77

Returns

number

handleKey()
handleKey(key): boolean;

Defined in: utils/dropdown.ts:85

Consume a keyboard event. Returns true if the dropdown handled it. The caller is responsible for calling preventDefault / stopPropagation.

Parameters
key

string

Returns

boolean

Interfaces

Defined in: utils/dropdown.ts:24

Type Parameters

T

T

Properties

container
container: HTMLElement;

Defined in: utils/dropdown.ts:26

Parent the dropdown element is appended to.

rootClass
rootClass: string;

Defined in: utils/dropdown.ts:28

CSS class on the dropdown root element (e.g. "acid-autocomplete-dropdown").

itemClass
itemClass: string;

Defined in: utils/dropdown.ts:30

CSS class on each item (e.g. "acid-dropdown-item").

renderItem
renderItem: (value, index) => string | HTMLElement;

Defined in: utils/dropdown.ts:32

Renders an item's text/innerHTML. Return a string or an HTMLElement.

Parameters
value

T

index

number

Returns

string | HTMLElement

onSelect
onSelect: (value, index) => void;

Defined in: utils/dropdown.ts:34

Called when an item is chosen (click, Tab, or Enter).

Parameters
value

T

index

number

Returns

void

Functions

rankByPrefixThenContains()

function rankByPrefixThenContains(items, upperPartial): string[];

Defined in: utils/dropdown.ts:12

Rank candidates for an autocomplete slot: case-insensitive prefix matches first, then substring matches. An empty query returns the full list.

Parameters

items

readonly string[]

upperPartial

string

Returns

string[]