Founding price: $35, then $99 after 23:59 UTC on 4 November, then $99
Get ProAn inline search over fifty thousand rows that keeps typing instant with useDeferredValue, dims the list and says Filtering while a filter catches up, then announces the final count once. Use this when filtering a big list should never lag the keyboard.
Derived from this item’s props table, because it declares no controls of its own. This item has no standalone playground, so changes update the code, the share link and the AI prompt.
Use it for catalogue, log and directory filters with tens of thousands of rows, where the input must feel immediate even if rendering the matches takes longer than a frame.
Do not use it when the list is small enough to filter synchronously without a visible delay.
This item is part of tealmac UI Pro
The source for this item installs with a Pro licence key. Log in with your key to see the install command, or read the Pro setup page.
| Prop | Type | Default | Description |
| --------------- | ------------------------- | ------------------------- | -------------------------- | ------------------------- |
| rows | { id, label }[] | - | Any number of rows. |
| value | string \\ | null | - | Selected id (controlled). |
| defaultValue | string \\ | null | null | Initial id. |
| onValueChange | (id: string) => void | - | Runs when a row is picked. |
| matcher | (row, query) => boolean | case-insensitive contains | How a row matches. |
| rowHeight | number | 32 | Row height in pixels. |
| visibleRows | number | 8 | Rows in the viewport. |
| label | string | Rows | Names the control. |
aria-busy and a Filtering… label is visible; once it settles a polite status reads 1,204 matches.options in a listbox with aria-posinset and aria-setsize; the highlight is exposed with aria-activedescendant.matcher lets you search several fields or use a prebuilt index.The pattern ships with a Testing Library test (large-list-filter-transition.test.tsx) that covers the deferred state, the settled count, keyboard selection and a custom matcher.