/
alt3rmann
/
graphql-engine
Обзор
Документация
Войти
/
alt3rmann
/
graphql-engine
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
docs/src/plugins/docusaurus-plugin-segment-analytics/segmentAnalytics.ts
27 строк
1 KB
Rikin Kachhia
docs: move docs-new to docs
13 апр 2022, 15:01
13 апр 2022, 15:01
cc30f08
Код
Авторство
О чём код?
import ExecutionEnvironment from '@docusaurus/ExecutionEnvironment'; import globalData from '@generated/globalData'; import type { PluginOptions } from './plugin-segment-analytics'; export default (function segmentAnalyticsModule() { if (!ExecutionEnvironment.canUseDOM) return null; const {trackPage, trackPageDelay} = globalData['docusaurus-plugin-segment-analytics'] .default as PluginOptions; return { onRouteUpdate({location}: {location: Location}) { // Always refer to the variable on window in case it gets overridden elsewhere. if (!trackPage) return; // Adding a delay (defaults to 50ms when not provided by plugin option `trackPageDelay`) // ensure that the segment route tracking is in sync with the actual Gatsby route // (otherwise you can end up in a state where the Segment page tracking reports // the previous page on route change). const delay = Math.max(0, trackPageDelay) window.setTimeout(() => { window.analytics && window.analytics.page(document.title); }, delay); }, }; })();