Combobox Filter

Brand

About this component

Combobox Filter

Searchable dropdown for very long option lists like brands. Type to narrow options, select one or many, and see result counts inline.

Usage

The import and the props worth knowing about, in one place.

import { FilterCombobox } from "@/components/beste/component/filter-combobox";

<FilterCombobox
  label="Brand"
  placeholder="All brands"
  searchPlaceholder="Search brands"
  multiple                       // omit for single-select
  onChange={(value) => console.log("selected:", value)}
  options={[
    { label: "Acme Supply", value: "acme", count: 18 },
    { label: "Northwind", value: "northwind", count: 12 },
  ]}
/>

Keyboard and gestures

Every one of these is in the component already. They are listed because a props table cannot mention a gesture, so nothing else on this page can tell you they exist.

Type anythingFilters the list as you go; the first match stays highlighted.
Arrow keysMove through what is left after the filter.
EnterToggle the highlighted option.
EscapeClose the popover and leave the selection as it is.

Props

Read from the component's own type, so this cannot drift from what it accepts.

PropTypeDefaultDescription
labelstring—Optional group heading rendered above the trigger
optionsFilterComboboxOption[]—
valuestring[]—Controlled selection; omit to let the component manage its own state
defaultValuestring[]—Initial selection when uncontrolled
multipleboolean—Allow selecting more than one option (default false)
placeholderstring—Trigger text while nothing is selected
searchPlaceholderstring—Placeholder of the search input inside the dropdown
emptyTextstring—Message shown when the search matches nothing
disabledboolean—
onChange(value: string[]) => void—
classNamestring—

More Filter components

View all Filter

Category

Size

Category

24
18
9
12