Regular facet sub-controller
Regular facet sub-controller
|
|
Note
This component was introduced in version |
Create facet sub-controllers using the FacetGenerator sub-controller of the ProductListing controller.
const productListingController = buildProductListing(commerceEngine);
const facetGenerator = productListingController.facetGenerator();
for (const facet of facetGenerator.facets) {
switch (facet.type) {
case 'regular':
// facet will be typed as RegularFacet, render it...
break;
case 'dateRange':
// facet will be typed as DateFacet, render it...
break;
case 'numericalRange':
// facet will be typed as NumericFacet, render it...
break;
case 'hierarchical':
// facet will be typed as CategoryFacet, render it...
}
}
Methods
deselectAll
Deselects all facet values.
isValueExcluded
Checks whether the specified facet value is excluded.
Parameters
-
value:
RegularFacetValueThe facet value to check.
Returns boolean: Whether the specified facet value is excluded.
isValueSelected
Checks whether the specified facet value is selected.
Parameters
-
value:
RegularFacetValueThe facet value to check.
Returns boolean: Whether the specified facet value is selected.
showLessValues
Sets the number of values displayed in the facet to the originally configured value.
showMoreValues
Increases the number of values displayed in the facet to the next multiple of the originally configured value.
toggleExclude
Toggles exclusion of the specified facet value.
Parameters
-
selection:
RegularFacetValueThe facet value to toggle exclusion.
toggleSelect
Toggles the specified facet value.
Parameters
-
selection:
RegularFacetValueThe facet value to toggle.
toggleSingleExclude
Excludes the specified facet value, deselecting others.
Parameters
-
selection:
RegularFacetValueThe facet value to toggle exclusion.
toggleSingleSelect
Toggles the specified facet value, deselecting others.
Parameters
-
selection:
RegularFacetValueThe facet value to toggle.
subscribe
Adds a callback that’s invoked on state change.
Parameters
-
listener:
() => voidA callback that’s invoked on state change.
Returns Unsubscribe: A function to remove the listener.
Attributes
facetSearch
Provides methods to search the facet’s values.
Methods
clear
Resets the query and empties the values.
exclude
Excludes a facet search result.
Parameters
-
value:
SpecificFacetSearchResultThe search result to exclude.
search
Performs a facet search.
select
Selects a facet search result.
Parameters
-
value:
SpecificFacetSearchResultThe search result to select.
singleExclude
Excludes a search result while including facet values.
Parameters
-
value:
SpecificFacetSearchResultThe search result to exclude.
singleSelect
Selects a search result while deselecting facet values.
Parameters
-
value:
SpecificFacetSearchResultThe search result to select.
Parameters
-
captions:
Record<string, string>A dictionary that maps index field values to facet value display names.
updateText
Updates the facet search query.
Parameters
-
text:
stringThe query to search.
type
The type of the facet.
state
The state of the Facet controller.
Properties
-
type:
'regular' | 'dateRange' | 'numericalRange' | 'hierarchical'The type of the facet.
-
facetSearch:
FacetSearchStateThe state of the facet’s searchbox.
-
canShowLessValues:
booleantrueif fewer values can be displayed andfalseotherwise. -
canShowMoreValues:
booleantrueif there are more values to display andfalseotherwise. -
facetId:
stringThe facet ID.
-
hasActiveValues:
booleantrueif there is at least one non-idle value andfalseotherwise. -
isLoading:
booleantrueif a search is in progress andfalseotherwise. -
values:
RegularFacetValue[]The values of the facet.
-
field:
stringThe facet field.
-
displayName?:
stringThe facet name.
Related types
RegularFacetValue
Properties
-
numberOfResults:
numberThe number of results that have the facet value.
-
state:
'idle' | 'selected' | 'excluded'Whether a facet value is filtering results (
selected) or not (idle). -
value:
stringThe facet value.
FacetSearchState
Properties
-
query:
stringThe facet search query.
-
isLoading:
booleanWhether the facet search request is in a pending state.
-
values:
SpecificFacetSearchResult[]The facet values that match the facet search query.
-
moreValuesAvailable:
booleanWhether additional values matching the facet search query are available.
SpecificFacetSearchResult
Properties
-
count:
numberAn estimate of the number of result items matching both the current query and the filter expression that would get generated if the facet value were selected.
-
displayValue:
stringThe custom facet value display name.
-
rawValue:
stringThe original facet value, as retrieved from the field in the index.
Unsubscribe
Call signatures
-
(): void;