Combobox
Windowed List
A combobox for a directory of hundreds of rows: only a window of the first matches is rendered, with an honest "showing N of M" line and a coverage bar below.
What you can change
- the directory content through options and the window size through visibleLimit
- the counter hint through hintLabel and the counter itself through countText: {shown} and {total} are filled with numbers
- the field caption through label and the placeholder through placeholder
A link for your AI agent: preview, code and instructions.
Preview
Use it with AI
- 1. Copy the link.
- 2. Write to your agent in your own words and drop the link into the sentence.
- 3. The agent opens the link and installs the component from the registry.
put this on the home page as the hero:
https://vibeui.ru/c/combobox-007?lang=en&theme=dark
Not sure where to paste it? Step-by-step guide
Show the full instructions
What the link says, spelled out. Use it when your agent cannot open links — paste this text instead.
Loading…
For developers
The install command lives in the “Component source” block below — a signed link that stays valid for 24 hours.
Technical notes
The component is self-contained: one file, no dependencies, its own --vibeui-combobox-007-* palette. Client component: useMemo filters the list and cuts it to visibleLimit, while useState holds the query, the value and the cursor. No more than visibleLimit rows reach the DOM — a cheap substitute for virtualisation with no external library and no height measurement. The "showing N of M" caption lies in an aria-live="polite" region and is linked to the field through aria-describedby: it explains why the one being looked for is not on screen. The bar under the list shows the share that is displayed and carries no text, hence aria-hidden. The keyboard adds PageDown and PageUp — a jump of ten rows, without which a long list cannot be paged through.
Tags
- combobox
- long list
- window
- performance
Component source
The same file your agent installs. Here in case you would rather copy it by hand.
Loading…