Files
XauBot/web-dashboard/src/app/layout.tsx
T

54 lines
1.3 KiB
TypeScript
Raw Normal View History

import type { Metadata } from "next";
import { IBM_Plex_Sans, IBM_Plex_Mono } from "next/font/google";
import "./globals.css";
const ibmPlexSans = IBM_Plex_Sans({
subsets: ["latin"],
weight: ["400", "500", "600", "700"],
variable: "--font-ibm-plex-sans",
display: "swap",
});
const ibmPlexMono = IBM_Plex_Mono({
subsets: ["latin"],
weight: ["400", "700"],
variable: "--font-ibm-plex-mono",
display: "swap",
});
export const metadata: Metadata = {
title: "XAUBOT AI — Trading Monitor",
description: "Real-time monitoring dashboard for XAUBOT AI Trading Bot",
};
// Inline script to prevent flash of wrong theme
const themeScript = `
(function() {
try {
var t = localStorage.getItem('theme');
if (t === 'dark' || (!t && window.matchMedia('(prefers-color-scheme: dark)').matches)) {
document.documentElement.classList.add('dark');
}
} catch(e) {}
})();
`;
export default function RootLayout({
children,
}: Readonly<{
children: React.ReactNode;
}>) {
return (
<html lang="en" suppressHydrationWarning>
<head>
<script dangerouslySetInnerHTML={{ __html: themeScript }} />
</head>
<body
className={`${ibmPlexSans.variable} ${ibmPlexMono.variable} antialiased bg-background text-foreground`}
>
{children}
</body>
</html>
);
}