2.3 KiB
Added, Status
Added | Status |
---|---|
v2.3.0 | Active |
Search Query Builder service
Stores information from all the custom search and faceted search widgets, compiles and runs the final Search query.
Class members
Methods
-
addFilterQuery(query:
string
=null
)- query:
string
-
- query:
-
buildQuery():
QueryBody
- Returns
QueryBody
-
- Returns
-
execute():
Promise<void>
- Returns
Promise<void>
-
- Returns
-
getFacetField(label:
string
=null
):FacetField
- label:
string
- - Returns
FacetField
-
- label:
-
getFacetQuery(label:
string
=null
):FacetQuery
- label:
string
- - Returns
FacetQuery
-
- label:
-
getPrimarySorting():
SearchSortingDefinition
Returns primary sorting definition.- Returns
SearchSortingDefinition
-
- Returns
-
getSortingOptions():
SearchSortingDefinition
[]
Returns all pre-configured sorting options that users can choose from.- Returns
SearchSortingDefinition
[]
-
- Returns
-
removeFilterQuery(query:
string
=null
)- query:
string
-
- query:
-
update()
Details
The Query Builder is UI agnostic and does not rely on Angular components. You can reuse it with multiple component implementations.
You can use custom widgets to populate and edit the following parts of the resulting query:
- categories
- query fragments that form query expression
- include fields
- scope settings
- filter queries
- facet fields
- range queries
constructor(queryBuilder: SearchQueryBuilderService) {
queryBuilder.updated.subscribe(query => {
this.queryBuilder.execute();
});
queryBuilder.executed.subscribe(data => {
this.onDataLoaded(data);
});
}