search-client
Version:
Javascript library for executing searches in the Haive search-index via the SearchManager REST interface.
109 lines (108 loc) • 3.63 kB
TypeScript
/**
* These are the triggers that define when and when not to trigger a find lookup.
*/
export declare class FindTriggers {
/**
* Triggers when the clientId property has changed.
* Default: true
*/
clientIdChanged?: boolean;
/**
* Triggers when the from date property has changed.
* Default: true
*/
dateFromChanged?: boolean;
/**
* Triggers when the to date property has changed.
* Default: true
*/
dateToChanged?: boolean;
/**
* Triggers when the filter property has changed.
* Default: true
*/
filtersChanged?: boolean;
/**
* Triggers when the generateContent property has changed.
* Default: true
*/
matchGenerateContentChanged?: boolean;
/**
* Triggers when the generateContentHighlights property has changed.
* Default: true
*/
matchGenerateContentHighlightsChanged?: boolean;
/**
* Triggers when the useGrouping property has changed.
* Default: true
*/
matchGroupingChanged?: boolean;
/**
* Triggers when the orderBy property has changed.
* Default: true
*/
matchOrderByChanged?: boolean;
/**
* Triggers when the page property has changed.
* Default: true
*/
matchPageChanged?: boolean;
/**
* Triggers when the pageSize property has changed.
* Default: true
*/
matchPageSizeChanged?: boolean;
/**
* Turns on or off all query-related triggers.
* Default: false
*/
queryChange?: boolean;
/**
* Delay triggers until changes has not been made to the query for a certain time (milliseconds).
* This is to avoid executing searches constantly while the user is typing.
* The queryChangeInstantRegex has precedence. This delay is only considered when that regex doesn't match.
* Set value to less than zero to make sure we only trigger when the queryChangeInstantRegex matches.
*
* Note: Requires queryChange to be true.
* Note: Requires query to be longer than queryMinLength.
*
* Default for Find is to run delayed lookups after 2 seconds. The queryChangeInstantRegex matches will
* run immediately though.
* Default: 2000ms
*/
queryChangeDelay?: number;
/**
* Triggers action immediately instead of delayed when the query matches the regex.
*
* Note: Requires queryChange to be true.
* Note: Requires query to be longer than queryMinLength.
*
* Default: /\S\s$/ - Trigger on first ENTER or SPACE. Sample: https://regex101.com/r/P0xfej/2
*/
queryChangeInstantRegex?: RegExp;
/**
* Min length before triggering. For Categorize (and Find) this should be ok with short queries too.
* One character followed by an enter (default).
*
* Note: Requires queryChange to be true.
*
* Default: 2
*/
queryChangeMinLength?: number;
/**
* Triggers when the searchType property has changed. Default: true
* Default: true
*/
searchTypeChanged?: boolean;
/**
* Triggers when the uiLanguageCode property has changed.
* Note: Overrides the default set in CategorizeTriggers.
* Default: false - Do not re-fetch on change - as there are no language-dependent data in the find-response.
*/
uiLanguageCodeChanged?: boolean;
/**
* Creates a FindTrigger object for you, based on FindTrigger defaults and the overrides provided as a param.
* @param triggers - The trigger defined here will override the default FindTrigger.
*/
constructor(triggers?: FindTriggers);
}