24 lines
961 B
TypeScript
24 lines
961 B
TypeScript
import { Html, Head, Main, NextScript } from "next/document";
|
|
|
|
export default function Document() {
|
|
return (
|
|
<Html lang="de">
|
|
<Head>
|
|
{/* Füge Meta-Tags, CSS-Links und andere Header-Inhalte hier hinzu */}
|
|
<link rel="icon" href="/favicon.png" type="image/png" />
|
|
</Head>
|
|
<body>
|
|
{/* Theme init (executed before React hydration) */}
|
|
<script
|
|
// eslint-disable-next-line react/no-danger
|
|
dangerouslySetInnerHTML={{
|
|
__html: `(() => { try { const ls = localStorage.getItem('theme'); const mql = window.matchMedia('(prefers-color-scheme: dark)'); const wantDark = ls === 'dark' || (!ls && mql.matches); if (wantDark) document.documentElement.classList.add('dark'); } catch(e) {} })();`,
|
|
}}
|
|
/>
|
|
<Main /> {/* Hier wird der Seiteninhalt eingebettet */}
|
|
<NextScript /> {/* Fügt Next.js-Skripte für die Seite hinzu */}
|
|
</body>
|
|
</Html>
|
|
);
|
|
}
|