From 095895f7cf949c0276b0bdfa397193b19bfde948 Mon Sep 17 00:00:00 2001 From: Yasuaki Uechi Date: Sat, 7 Mar 2020 12:06:55 +0900 Subject: [PATCH] chore: update analytics --- web/src/components/cards/core.tsx | 11 ++++++++--- .../components/cards/providers/GitHubSearch.tsx | 2 +- web/src/util/analytics.ts | 15 +++++++-------- 3 files changed, 16 insertions(+), 12 deletions(-) diff --git a/web/src/components/cards/core.tsx b/web/src/components/cards/core.tsx index b274b14..736f26d 100644 --- a/web/src/components/cards/core.tsx +++ b/web/src/components/cards/core.tsx @@ -7,10 +7,10 @@ import BarLoader from 'react-spinners/BarLoader'; import {GoInfo} from 'react-icons/go'; import {IoIosFlash} from 'react-icons/io'; import {useTranslation} from 'react-i18next'; -import {sendError, sendExpandEvent} from '../../util/analytics'; +import {OutboundLink} from 'react-ga'; +import {sendError, sendExpandEvent} from '../../util/analytics'; import {mobile} from '../../util/css'; -import {ExternalLink} from '../Links'; const COLORS = { available: '#6e00ff', @@ -210,7 +210,12 @@ export const Result: React.FC<{ {icon} {link ? ( - {content} + + {content} + ) : ( content )} diff --git a/web/src/components/cards/providers/GitHubSearch.tsx b/web/src/components/cards/providers/GitHubSearch.tsx index d8b92ab..d09d240 100644 --- a/web/src/components/cards/providers/GitHubSearch.tsx +++ b/web/src/components/cards/providers/GitHubSearch.tsx @@ -20,7 +20,7 @@ const Search: React.FC<{query: string}> = ({query}) => { id: string; }>; }; - const repos = response.items; + const repos = response.items || []; return ( <> diff --git a/web/src/util/analytics.ts b/web/src/util/analytics.ts index b4267f8..98d2d82 100644 --- a/web/src/util/analytics.ts +++ b/web/src/util/analytics.ts @@ -10,14 +10,13 @@ export function initHistoryWithGA() { ReactGA.initialize('UA-28919359-15'); ReactGA.pageview(window.location.pathname + window.location.search); history.listen((location) => { - ReactGA.set({page: location.pathname}); - ReactGA.pageview(location.pathname); + ReactGA.pageview(location.pathname + location.search); }); } return history; } -export function track({ +export function trackEvent({ category, action, label = undefined, @@ -39,23 +38,23 @@ export function track({ } export function sendQueryEvent(query: string): void { - track({category: 'Search', action: 'search', label: query}); + trackEvent({category: 'Search', action: 'search', label: query}); } export function sendExampleQueryEvent(query: string): void { - track({category: 'Search', action: 'tryExampleQuery', label: query}); + trackEvent({category: 'Search', action: 'tryExampleQuery', label: query}); } export function sendExpandEvent(): void { - track({category: 'Result', action: 'expand'}); + trackEvent({category: 'Result', action: 'expand'}); } export function sendAcceptSuggestionEvent(): void { - track({category: 'Suggestion', action: 'accept'}); + trackEvent({category: 'Suggestion', action: 'accept'}); } export function sendShuffleSuggestionEvent(): void { - track({category: 'Suggestion', action: 'shuffle'}); + trackEvent({category: 'Suggestion', action: 'shuffle'}); } export function initSentry(): void {