UNPKG

@kiwicom/smart-faq

Version:

Smart FAQ

55 lines (50 loc) 1.41 kB
// @flow import * as React from 'react'; import FAQArticleRaw from './FAQArticleRaw'; import { SearchState } from '../context/SearchState'; import type { SearchStateType } from '../context/SearchState'; import { simpleTracker } from '../../shared/helpers/analytics/trackers'; import type { FAQArticle_article } from './__generated__/FAQArticle_article.graphql'; import { track } from '../../shared/cuckoo/tracker'; type Props = {| article: FAQArticle_article, categoryId: ?string, isSearchResult: ?boolean, |}; const articleClicked = ( resetQueriesCount: () => void, queriesBeforeClick: number, searchText: string, ) => () => { if (searchText) { simpleTracker('smartFAQBookingOverview', { action: 'articleClicked', queriesBeforeClick, }); track('FAQs', 'articleClicked'); resetQueriesCount(); } }; const TrackedFAQArticle = (props: Props) => ( <SearchState.Consumer> {({ resetQueriesCount, queriesBeforeClick, searchText, }: SearchStateType) => { return ( <FAQArticleRaw article={props.article} categoryId={props.categoryId} isSearchResult={props.isSearchResult} onClick={articleClicked( resetQueriesCount, queriesBeforeClick, searchText, )} /> ); }} </SearchState.Consumer> ); export default TrackedFAQArticle;