mirror of
https://github.com/Stremio/stremio-web.git
synced 2026-04-26 21:03:01 +00:00
Search analytics event using debounce
This commit is contained in:
parent
b83568cc33
commit
ca81562f04
1 changed files with 7 additions and 5 deletions
|
|
@ -3,6 +3,7 @@
|
||||||
const React = require('react');
|
const React = require('react');
|
||||||
const PropTypes = require('prop-types');
|
const PropTypes = require('prop-types');
|
||||||
const classnames = require('classnames');
|
const classnames = require('classnames');
|
||||||
|
const debounce = require('lodash.debounce');
|
||||||
const Icon = require('@stremio/stremio-icons/dom');
|
const Icon = require('@stremio/stremio-icons/dom');
|
||||||
const { useServices } = require('stremio/services');
|
const { useServices } = require('stremio/services');
|
||||||
const { Image, MainNavBars, MetaRow, MetaItem, useDeepEqualMemo } = require('stremio/common');
|
const { Image, MainNavBars, MetaRow, MetaItem, useDeepEqualMemo } = require('stremio/common');
|
||||||
|
|
@ -24,17 +25,18 @@ const Search = ({ queryParams }) => {
|
||||||
:
|
:
|
||||||
null;
|
null;
|
||||||
}, [search.selected]);
|
}, [search.selected]);
|
||||||
React.useEffect(() => {
|
const debounceAnanlytics = debounce((query, search) => {
|
||||||
if (query !== null && core.active && search.catalogs.every((catalog) => catalog.content.type !== 'Loading')) {
|
if (query !== null && core.active) {
|
||||||
const rows = search.catalogs.length;
|
const responses_count = search.catalogs.filter((catalog) => catalog.content.type !== 'Loading').length;
|
||||||
core.transport.analytics({
|
core.transport.analytics({
|
||||||
event: 'Search',
|
event: 'Search',
|
||||||
args: {
|
args: {
|
||||||
query, rows
|
query, responses_count
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}, [search]);
|
}, 500, { leading: false });
|
||||||
|
React.useEffect(() => { debounceAnanlytics(query, search); }, [search]);
|
||||||
return (
|
return (
|
||||||
<MainNavBars className={styles['search-container']} route={'search'} query={query}>
|
<MainNavBars className={styles['search-container']} route={'search'} query={query}>
|
||||||
<div className={styles['search-content']}>
|
<div className={styles['search-content']}>
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue