Files
main_frontend/app/layout.tsx
T
2026-02-27 23:34:17 +03:00

41 lines
1.2 KiB
TypeScript

import type { Metadata } from "next"
import type { ReactNode } from "react"
import { Open_Sans } from "next/font/google"
import "@shared/styles/global.scss"
import { AppProviders } from "@shared/context/AppProviders"
export const metadata: Metadata = {
title: "Coffee Project",
description: "Standalone Next.js app using FSD structure",
}
const open_sans = Open_Sans({
preload: true,
display: "swap",
variable: "--font-open-sans",
})
export default function RootLayout({
children,
}: Readonly<{
children: ReactNode
}>) {
return (
<html lang="ru" className={open_sans.variable} suppressHydrationWarning>
<head>
<script
dangerouslySetInnerHTML={{
__html: `(function(){try{var t=localStorage.getItem("theme");var d;if(t==="light"||t==="dark"){d=t}else{d=window.matchMedia("(prefers-color-scheme:dark)").matches?"dark":"light"}document.documentElement.setAttribute("data-theme",d);document.documentElement.classList.add(d)}catch(e){document.documentElement.setAttribute("data-theme","light");document.documentElement.classList.add("light")}})()`,
}}
/>
</head>
<body>
<AppProviders>{children}</AppProviders>
</body>
</html>
)
}