id | slug | title | date | tags | |
---|---|---|---|---|---|
api-core-state |
/search-ui/api/core/state |
State |
2022-02-27 |
|
State can be divided up into a few different types.
- Request State - State that is used as parameters on Search API calls.
- Response State - State that represents a response from a Search API call.
- Application State - The general state.
Request State and Response State will often have similar values. For instance, searchTerm
and resultSearchTerm
.
searchTerm
is the current search term in the UI, and resultSearchTerm
is the term associated with the current
results
. This can be relevant in the UI, where you might not want the search term on the page to change until AFTER
a response is received, so you'd use the resultSearchTerm
state.
State that is used as parameters on Search API calls.
Request state can be set by:
- Using actions, like
setSearchTerm
- The
initialState
option. - The URL query string, if
trackUrlState
is enabled.
option | Description |
---|---|
current |
Current page number |
filters |
Array of filters. See Filters section. |
resultsPerPage |
|
searchTerm |
Search terms to search for |
sort |
List of fields and directions to sort on |
State that represents a response from a Search API call.
It is not directly update-able.
It is updated indirectly by invoking an action which results in a new API request.
field | description |
---|---|
autocompletedResults |
An array of results items fetched for an autocomplete dropdown. |
autocompletedResultsRequestId |
A unique ID for the current autocompleted search results. |
autocompletedSuggestions |
A keyed object of query suggestions. It's keyed by type since multiple types of query suggestions can be set here. |
autocompletedSuggestionsRequestId |
A unique ID for the current autocompleted suggestion results. |
facets |
Will be populated if facets configured in . |
rawResponse |
The response object received from the API |
requestId |
A unique ID for the current search results. |
results |
An array of result items. |
resultSearchTerm |
As opposed the the searchTerm state, which is tied to the current search parameter, this is tied to the searchTerm for the current results. There will be a period of time in between when a request is started and finishes where the two pieces of state will differ. |
totalResults |
Total number of results found for the current query. |
Application state is the general application state.
field | description |
---|---|
error |
Error message, if an error was thrown. |
isLoading |
Whether or not a search is currently being performed. |
wasSearched |
Has any query been performed since this driver was created? Can be useful for displaying initial states in the UI. |