aboutsummaryrefslogtreecommitdiffstats
path: root/src/pages/_document.tsx
diff options
context:
space:
mode:
Diffstat (limited to 'src/pages/_document.tsx')
-rw-r--r--src/pages/_document.tsx26
1 files changed, 26 insertions, 0 deletions
diff --git a/src/pages/_document.tsx b/src/pages/_document.tsx
new file mode 100644
index 0000000..317d3af
--- /dev/null
+++ b/src/pages/_document.tsx
@@ -0,0 +1,26 @@
+import { Html, Head, Main, NextScript } from 'next/document';
+import Script from 'next/script';
+import { STORAGE_KEY } from '../utils/constants';
+
+// eslint-disable-next-line @typescript-eslint/no-shadow -- Required by NextJs
+export default function Document() {
+ return (
+ <Html>
+ <Head>
+ <Script
+ dangerouslySetInnerHTML={{
+ __html: `!function(){const t=localStorage.getItem("${STORAGE_KEY.MOTION}"),e="string"==typeof t&&"true"===t;document.documentElement.setAttribute("data-${STORAGE_KEY.MOTION}",e)}();`,
+ }}
+ // eslint-disable-next-line react/jsx-no-literals
+ id="motion-hydration"
+ // eslint-disable-next-line react/jsx-no-literals
+ strategy="beforeInteractive"
+ />
+ </Head>
+ <body>
+ <Main />
+ <NextScript />
+ </body>
+ </Html>
+ );
+}