Staffbase

Components

Searchable Multi Select

Searchable multi selects let the user filter a list of options by typing and pick several. Selected values appear as chips inside the input.

Stable
GitHub

Anatomy

Anatomy
import {Field, SearchableMultiSelect} from '@staffbase/design';

<Field.Root>
  <Field.Label />
  <Field.Description />
  <SearchableMultiSelect.Root>
    <SearchableMultiSelect.Value>
      <SearchableMultiSelect.Chip />
      <SearchableMultiSelect.Input />
    </SearchableMultiSelect.Value>

    <SearchableMultiSelect.Popup>
      <SearchableMultiSelect.Empty />
      <SearchableMultiSelect.List>
        <SearchableMultiSelect.Group>
          <SearchableMultiSelect.GroupLabel />
          <SearchableMultiSelect.Collection>
            <SearchableMultiSelect.Item />
          </SearchableMultiSelect.Collection>
        </SearchableMultiSelect.Group>
      </SearchableMultiSelect.List>
    </SearchableMultiSelect.Popup>

  </SearchableMultiSelect.Root>
  <Field.Error />
</Field.Root>

API reference

Use the Field component to wrap SearchableMultiSelect and provide label, description, and error content.

All parts inherit their base behavior from Base UI Combobox. The sections below document all exports and highlight design-system additions.

Root

Inherits props fromBase UI Combobox Root

Creates the combobox context and state for filtering and multi-selection.

SearchableMultiSelect.Root always enables multi-select behavior (multiple={true}).

Value

Inherits props fromBase UI Combobox Value

Renders the value container, selected chips, clear button, and popup trigger.

Name Type Description
leadingIcon
ReactNode
Optional icon rendered at the start side of the value container.

Input

Inherits props fromBase UI Combobox Input

Text input used to filter available options.

Inherits props fromBase UI Combobox Positioner

Composed from Portal + Positioner + Popup in one part.

Name Type Description
container
HTMLElementRefObject<HTMLElement>
Portal container used to control layering/z-index behavior.

List

Inherits props fromBase UI Combobox List

Container for options, groups, separators, and collection rendering.

Item

Inherits props fromBase UI Combobox Item

Selectable option row with built-in selected indicator.

Group

Inherits props fromBase UI Combobox Group

Groups related options together, typically with GroupLabel and Collection.

GroupLabel

Inherits props fromBase UI Combobox Group Label

Label for a grouped section of options.

Separator

Inherits props fromBase UI Combobox Separator

Visual divider between list sections.

Chip

Inherits props fromBase UI Combobox Chip

Represents a selected value and includes a built-in remove action.

Empty

Inherits props fromBase UI Combobox Empty

Fallback content shown when no options match the current query.

Collection

Inherits props fromBase UI Combobox Collection

Helper part for rendering nested collections (commonly used inside grouped lists).

Status

Inherits props fromBase UI Combobox Status

Optional live-region/status output for communicating result state to assistive technologies.

Examples

Grouped

Select the ones you like

With avatars

Select all that you know

Error message