Skip to main content
Signature

View live demo

Open the live Facet List example in your browser.

About this widget

FacetList is a filtering component that displays facets and lets users refine their search results by filtering on specific values.

Requirements

The attribute provided to the widget must be in attributes for faceting, either on the dashboard or using the attributesForFaceting parameter with the API.

Examples

Create facet list

Create FacetList with HitsSearcher and FilterState:
Dart

Display facets

Get selectable facet changes by listening to facets submissions. Call toggle to select or deselect a facet value:
Dart

Dispose

Call dispose to release underlying resources:
Dart

Parameters

FilterState
required
The FilterState that holds your filters.
String
required
The attribute to filter.
FilterOperator
default: FilterOperator.or
Filters operator, which can either be FilterOperator.and or FilterOperator.or.Use filters or facet filters for more complex result refinement.
SelectionMode
default: SelectionMode.multiple
Whether the list can have SelectionMode.single or SelectionMode.multiple selections.
bool
default:false
When true, the selection will be kept even if it doesn’t match current results anymore.

Fields

Stream<List<SelectableFacet>>
A stream of facets with their selection status.
Dart
FilterEventTracker
FilterEventTracker instance responsible for sending Insights events related to user interactions with facets, such as clicking, viewing, and converting filters. With the eventTracker, you can track user’s behavior, which can help you personalize their search experience.
Dart

Methods

Select or deselect the provided facet value depending on the current selection state.
Dart
Gets the latest List<SelectableFacet> value submitted by facets:
Dart
Releases all underlying resources.
Dart
Last modified on July 22, 2026