diff options
| author | Armand Philippot <git@armandphilippot.com> | 2022-02-23 18:11:37 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-02-23 18:11:37 +0100 |
| commit | 84903c1e5182124b1bb618b7d8754cb70d0a6647 (patch) | |
| tree | b9202449b4eb17d2ecd93ce53fef76b0eee81f15 /src/pages | |
| parent | c9b16994cd697b15ccb66be6879a119cf7bde7f7 (diff) | |
feat: improve Ackee tracking (#11)
* build(deps): add use-ackee hook package
* chore: create a context provider for Ackee
The provider allows users to change the 'detailed' settings.
* chore: add a select menu to choose which info to share with Ackee
* chore: add a tooltip for askee settings
* chore: replace default select styles with custom styles
* chore: register user choice in localstorage
* chore: replace Matomo with Ackee in legal notice
Diffstat (limited to 'src/pages')
| -rw-r--r-- | src/pages/_app.tsx | 31 | ||||
| -rw-r--r-- | src/pages/mentions-legales.tsx | 8 |
2 files changed, 24 insertions, 15 deletions
diff --git a/src/pages/_app.tsx b/src/pages/_app.tsx index 1f5be8f..e8c00de 100644 --- a/src/pages/_app.tsx +++ b/src/pages/_app.tsx @@ -1,5 +1,6 @@ import { AppPropsWithLayout } from '@ts/types/app'; import { settings } from '@utils/config'; +import { AckeeProvider } from '@utils/providers/ackee'; import { PrismThemeProvider } from '@utils/providers/prism'; import { ThemeProvider } from 'next-themes'; import { useRouter } from 'next/router'; @@ -12,21 +13,23 @@ 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} + <AckeeProvider domain={settings.ackee.url} siteId={settings.ackee.siteId}> + <IntlProvider + locale={appLocale} + defaultLocale={defaultLocale} + messages={pageProps.translation} > - <PrismThemeProvider> - {getLayout(<Component {...pageProps} />)} - </PrismThemeProvider> - </ThemeProvider> - </IntlProvider> + <ThemeProvider + defaultTheme="system" + enableColorScheme={true} + enableSystem={true} + > + <PrismThemeProvider> + {getLayout(<Component {...pageProps} />)} + </PrismThemeProvider> + </ThemeProvider> + </IntlProvider> + </AckeeProvider> ); }; diff --git a/src/pages/mentions-legales.tsx b/src/pages/mentions-legales.tsx index 67c4a97..1bc5c31 100644 --- a/src/pages/mentions-legales.tsx +++ b/src/pages/mentions-legales.tsx @@ -1,4 +1,5 @@ import { getLayout } from '@components/Layouts/Layout'; +import { Link } from '@components/MDX'; import PostHeader from '@components/PostHeader/PostHeader'; import Sidebar from '@components/Sidebar/Sidebar'; import { ToC } from '@components/Widgets'; @@ -11,6 +12,7 @@ import { NextPageWithLayout } from '@ts/types/app'; import { ArticleMeta } from '@ts/types/articles'; import { settings } from '@utils/config'; import { loadTranslation } from '@utils/helpers/i18n'; +import { NestedMDXComponents } from 'mdx/types'; import { GetStaticProps, GetStaticPropsContext } from 'next'; import Head from 'next/head'; import { useRouter } from 'next/router'; @@ -89,6 +91,10 @@ const LegalNotice: NextPageWithLayout = () => { '@graph': [webpageSchema, articleSchema], }; + const components: NestedMDXComponents = { + Link: (props) => Link(props), + }; + return ( <> <Head> @@ -113,7 +119,7 @@ const LegalNotice: NextPageWithLayout = () => { <ToC /> </Sidebar> <div className={styles.body}> - <LegalNoticeContent /> + <LegalNoticeContent components={components} /> </div> </article> </> |
