Combobox
A searchable select with filtering and keywords.
Import
import { Combobox } from "@tarve/core";Usage
import { Combobox } from "@tarve/core";
let open = false;
let query = "";
let framework = "tarve";
<Combobox
id="framework"
open={open}
query={query}
value={framework}
options={[
{ value: "tarve", label: "Tarve", keywords: ["native", "bun"] },
{ value: "electron", label: "Electron" },
{ value: "tauri", label: "Tauri" },
]}
onOpenChange={(next) => {
open = next;
}}
onQueryChange={(next) => {
query = next;
}}
onValueChange={(value) => {
framework = value;
}}
/>Props
| Prop | Type | Default |
|---|---|---|
id required | string | — |
open required | boolean | — |
options required | readonly ComboboxOption[] | — |
query required | string | — |
contentStyle | Style | — |
disabled | boolean | false |
emptyText | string | "No results found." |
onOpenChange | (open: boolean) => void | — |
onQueryChange | (query: string) => void | — |
onValueChange | (value: string) => void | — |
placeholder | string | "Select an option" |
searchPlaceholder | string | "Search..." |
value | string | — |
Common props
Shared by every component. See descriptions →
childrenhighlightkeymotionFromonHighlightonPasteonTransitionEndrovingGroupstyleTypes
interface ComboboxOption {
value: string;
label: string;
keywords?: readonly string[];
disabled?: boolean;
}