From 0d03f51790c613a43c96925f51caa5e8e346b3fd Mon Sep 17 00:00:00 2001 From: jinhojang6 Date: Wed, 28 Jun 2023 00:29:11 +0900 Subject: [PATCH] fix: fix build errors --- .../docusaurus-fathom/src/client/index.ts | 49 +++++++++++-------- packages/docusaurus-fathom/src/deps.d.ts | 1 + 2 files changed, 30 insertions(+), 20 deletions(-) diff --git a/packages/docusaurus-fathom/src/client/index.ts b/packages/docusaurus-fathom/src/client/index.ts index 9ab3488..895013d 100644 --- a/packages/docusaurus-fathom/src/client/index.ts +++ b/packages/docusaurus-fathom/src/client/index.ts @@ -2,6 +2,7 @@ import { SITE_ID, SCRIPT_URL, } from '@generated/docusaurus-fathom/default/options' +import ExecutionEnvironment from '@docusaurus/ExecutionEnvironment' declare global { interface Window { @@ -9,26 +10,34 @@ declare global { } } -;(function (f: any, a: Window, t: string, h: string) { - a[h] = - a[h] || - function () { - ;(a[h].q = a[h].q || []).push(arguments) +let onRouteDidUpdate + +if (ExecutionEnvironment.canUseDOM) { + ;(function (f: any, a: any, t: string, h: string) { + a[h] = + a[h] || + function () { + ;(a[h].q = a[h].q || []).push(arguments) + } + const o = f.createElement('script') + const m = f.getElementsByTagName('script')[0] + o.async = 1 + o.src = t + o.id = 'fathom-script' + m.parentNode.insertBefore(o, m) + })(document, window, SCRIPT_URL, 'fathom') + + const { fathom } = window as any + fathom('set', 'siteId', SITE_ID) + fathom('trackPageview') + + function onRouteDidUpdateFnc({ location, previousLocation }) { + if (location.pathname !== previousLocation?.pathname) { + fathom('trackPageview') } - const o = f.createElement('script') - const m = f.getElementsByTagName('script')[0] - o.async = 1 - o.src = t - o.id = 'fathom-script' - m.parentNode.insertBefore(o, m) -})(document, window, SCRIPT_URL, 'fathom') - -const { fathom } = window as any -fathom('set', 'siteId', SITE_ID) -fathom('trackPageview') - -export function onRouteDidUpdate({ location, previousLocation }) { - if (location.pathname !== previousLocation?.pathname) { - fathom('trackPageview') } + + onRouteDidUpdate = onRouteDidUpdateFnc } + +export { onRouteDidUpdate } diff --git a/packages/docusaurus-fathom/src/deps.d.ts b/packages/docusaurus-fathom/src/deps.d.ts index 300767f..0114c79 100644 --- a/packages/docusaurus-fathom/src/deps.d.ts +++ b/packages/docusaurus-fathom/src/deps.d.ts @@ -1 +1,2 @@ declare module '@generated/docusaurus-fathom/default/options' +declare module '@docusaurus/ExecutionEnvironment'