Skip to content

SearchList

A search field over rows: typing filters, arrows move, Enter picks.

Group: Inputs · Kind: native · in the lite catalog

example
EXP-12Ship the search list
EXP-15Close tabs on hover

Open in the playground

The same specimen painted by React, SwiftUI, Compose and gpui.

exponential-ui-search-list on Web
exponential-ui-search-list on iOS
exponential-ui-search-list on Android
exponential-ui-search-list on Desktop
Prop Type Required Bindable Description
items [searchItem] yes yes The rows; refill on search.
query string – yes The input text.
placeholder string – – The placeholder. Default "$string.search".
value string – yes The picked value (a check).
emptyText string – – Shown on no match. Default "$string.noResults".
maxRows number – – Rows before it scrolls. Default 8.
showCount boolean – – A count while typing. Default true.
  • on.search: runs an action
  • on.select: runs an action

None.

none

No basic catalog component maps here.

A native component: every renderer paints it directly.

Role: combobox

combobox (the input) controlling a listbox of options; the highlighted row = aria-activedescendant, the count a polite status

Keys Action
– Focus stays in the input
ArrowDown ArrowUp move the highlighted row (no wrap, no animation)
Enter Tab pick the highlighted row (fires select)
Typing filters; the top row is highlighted again

Recipe parts: SearchList/root SearchList/head SearchList/search SearchList/count SearchList/list SearchList/item SearchList/icon SearchList/identifier SearchList/label SearchList/check SearchList/empty SearchList/fade

Keyed by: :hover :pressed :focus :disabled :checked :open :selected :invalid :dragover

Themes · Write a theme

Form · FieldGroup · FormActions · Input · Textarea · NumberField · Checkbox · Radio