InstantSearch provides the FilterMapState as a state model,
which is an implementation of the FilterMapView interface.
FilterMapState must be connected to the FilterMapConnector or FilterMapViewModel like any other FilterMapView implementation.
Kotlin
import com.algolia.instantsearch.filter.Filterclass MyActivity : AppCompatActivity() { val searcher = HitsSearcher( applicationID = "YourApplicationID", apiKey = "YourSearchOnlyAPIKey", indexName = "YourIndexName" ) val filterState = FilterState() val gender = "gender" val groupGender = groupAnd(gender) val filters = mapOf( 0 to Filter.Facet(gender, "male"), 1 to Filter.Facet(gender, "female") ) val filterMapState = FilterMapState() val filterMap = FilterMapConnector( filters = filters, filterState = filterState, groupID = groupGender ) val connections = ConnectionHandler(filterMap) init { connections += searcher.connectFilterState(filterState) connections += filterMap.connectView(filterMapState) } override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContent { MyFilterMap(filterMapState) // your own UI composable to display filter map options } searcher.searchAsync() } override fun onDestroy() { super.onDestroy() searcher.cancel() connections.disconnect() }}