in packages/search-ui/src/actions/trackClickThrough.ts [13:60]
export default function trackClickThrough(
documentId: string,
tags: string[] = []
): void {
if (this.debug)
// eslint-disable-next-line no-console
console.log("Search UI: Action", "trackClickThrough", ...arguments);
const {
requestId,
searchTerm,
results,
current,
resultsPerPage,
totalResults,
filters
}: SearchState = this.state;
const resultIndexOnPage = results.findIndex(
(result) => result._meta.id === documentId
);
const result = results[resultIndexOnPage];
const events: Events = this.events;
this.events.resultClick({
query: searchTerm,
documentId,
requestId,
tags,
result,
page: current,
resultsPerPage,
resultIndexOnPage
});
events.emit({
type: "ResultSelected",
documentId,
query: searchTerm,
origin: "results",
position: resultIndexOnPage,
tags,
totalResults,
filters,
currentPage: current,
resultsPerPage: resultsPerPage
});
}