diff options
| author | Armand Philippot <git@armandphilippot.com> | 2022-02-14 00:05:23 +0100 |
|---|---|---|
| committer | Armand Philippot <git@armandphilippot.com> | 2022-02-14 00:05:23 +0100 |
| commit | b79a46e6c2dc4b6df0a8e4c1a28ecf9178af965e (patch) | |
| tree | d9dc62383271b636748de2f1a1001cd5376d856a /src | |
| parent | ab80c9b59a26e7316178bc7d3779b33ddc1747f1 (diff) | |
chore(matomo): use another dependency to track page views
I though the previous package would track all visits with the provided
but it seems that I need to add trackPageView on all pages. So I
decided to use another package.
Diffstat (limited to 'src')
| -rw-r--r-- | src/pages/_app.tsx | 41 | ||||
| -rw-r--r-- | src/utils/config.ts | 4 | ||||
| -rw-r--r-- | src/utils/helpers/matomo.ts | 7 |
3 files changed, 27 insertions, 25 deletions
diff --git a/src/pages/_app.tsx b/src/pages/_app.tsx index 6df1a1d..6ff8e1b 100644 --- a/src/pages/_app.tsx +++ b/src/pages/_app.tsx @@ -1,10 +1,10 @@ -import { MatomoProvider } from '@datapunt/matomo-tracker-react'; +import * as matomo from '@socialgouv/matomo-next'; import { AppPropsWithLayout } from '@ts/types/app'; import { settings } from '@utils/config'; -import { instance } from '@utils/helpers/matomo'; import { PrismThemeProvider } from '@utils/providers/prism'; import { ThemeProvider } from 'next-themes'; import { useRouter } from 'next/router'; +import { useEffect } from 'react'; import { IntlProvider } from 'react-intl'; import '../styles/globals.scss'; @@ -12,25 +12,30 @@ const MyApp = ({ Component, pageProps }: AppPropsWithLayout) => { const { locale, defaultLocale } = useRouter(); const appLocale: string = locale || settings.locales.defaultLocale; + useEffect(() => { + matomo.init({ + url: settings.matomo.urlBase, + siteId: settings.matomo.siteId, + }); + }, []); + const getLayout = Component.getLayout ?? ((page) => page); return ( - <MatomoProvider value={instance}> - <IntlProvider - locale={appLocale} - defaultLocale={defaultLocale} - messages={pageProps.translation} + <IntlProvider + locale={appLocale} + defaultLocale={defaultLocale} + messages={pageProps.translation} + > + <ThemeProvider + defaultTheme="system" + enableColorScheme={true} + enableSystem={true} > - <ThemeProvider - defaultTheme="system" - enableColorScheme={true} - enableSystem={true} - > - <PrismThemeProvider> - {getLayout(<Component {...pageProps} />)} - </PrismThemeProvider> - </ThemeProvider> - </IntlProvider> - </MatomoProvider> + <PrismThemeProvider> + {getLayout(<Component {...pageProps} />)} + </PrismThemeProvider> + </ThemeProvider> + </IntlProvider> ); }; diff --git a/src/utils/config.ts b/src/utils/config.ts index dc009d9..07d42a3 100644 --- a/src/utils/config.ts +++ b/src/utils/config.ts @@ -13,6 +13,10 @@ export const settings = { defaultCountry: 'FR', supported: ['en', 'fr'], }, + matomo: { + urlBase: process.env.NEXT_PUBLIC_MATOMO_URL || '', + siteId: process.env.NEXT_PUBLIC_MATOMO_SITE_ID || '0', + }, postsPerPage: 10, twitterId: '@ArmandPhilippot', url: process.env.NEXT_PUBLIC_FRONTEND_URL, diff --git a/src/utils/helpers/matomo.ts b/src/utils/helpers/matomo.ts deleted file mode 100644 index 6930196..0000000 --- a/src/utils/helpers/matomo.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { createInstance } from '@datapunt/matomo-tracker-react'; - -export const instance = createInstance({ - urlBase: process.env.NEXT_PUBLIC_MATOMO_URL || '', - siteId: Number(process.env.NEXT_PUBLIC_MATOMO_SITE_ID) || 0, - linkTracking: true, -}); |
