summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/pages/_app.tsx28
-rw-r--r--src/utils/helpers/matomo.ts7
2 files changed, 23 insertions, 12 deletions
diff --git a/src/pages/_app.tsx b/src/pages/_app.tsx
index 7c6142c..913861e 100644
--- a/src/pages/_app.tsx
+++ b/src/pages/_app.tsx
@@ -1,5 +1,7 @@
+import { MatomoProvider } from '@datapunt/matomo-tracker-react';
import { AppPropsWithLayout } from '@ts/types/app';
import { settings } from '@utils/config';
+import { instance } from '@utils/helpers/matomo';
import { ThemeProvider } from 'next-themes';
import { useRouter } from 'next/router';
import { IntlProvider } from 'react-intl';
@@ -11,19 +13,21 @@ const MyApp = ({ Component, pageProps }: AppPropsWithLayout) => {
const getLayout = Component.getLayout ?? ((page) => page);
return (
- <IntlProvider
- locale={appLocale}
- defaultLocale={defaultLocale}
- messages={pageProps.translation}
- >
- <ThemeProvider
- defaultTheme="system"
- enableColorScheme={true}
- enableSystem={true}
+ <MatomoProvider value={instance}>
+ <IntlProvider
+ locale={appLocale}
+ defaultLocale={defaultLocale}
+ messages={pageProps.translation}
>
- {getLayout(<Component {...pageProps} />)}
- </ThemeProvider>
- </IntlProvider>
+ <ThemeProvider
+ defaultTheme="system"
+ enableColorScheme={true}
+ enableSystem={true}
+ >
+ {getLayout(<Component {...pageProps} />)}
+ </ThemeProvider>
+ </IntlProvider>
+ </MatomoProvider>
);
};
diff --git a/src/utils/helpers/matomo.ts b/src/utils/helpers/matomo.ts
new file mode 100644
index 0000000..6930196
--- /dev/null
+++ b/src/utils/helpers/matomo.ts
@@ -0,0 +1,7 @@
+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,
+});