31 lines
848 B
TypeScript
31 lines
848 B
TypeScript
import './globals.css';
|
|
import type { Metadata } from 'next';
|
|
import { Inter } from 'next/font/google';
|
|
import { ThemeProvider } from '@/components/theme-provider';
|
|
import { Toaster } from '@/components/ui/toaster';
|
|
import { getAppConfig } from '@/lib/app-config';
|
|
|
|
const inter = Inter({ subsets: ['latin'] });
|
|
|
|
export async function generateMetadata(): Promise<Metadata> {
|
|
const config = await getAppConfig();
|
|
|
|
return {
|
|
title: config.appTitle,
|
|
description: config.appDescription,
|
|
};
|
|
}
|
|
|
|
export default function RootLayout({ children }: { children: React.ReactNode }) {
|
|
return (
|
|
<html lang='en' suppressHydrationWarning>
|
|
<body className={inter.className}>
|
|
<ThemeProvider attribute='class' defaultTheme='system' enableSystem disableTransitionOnChange>
|
|
{children}
|
|
<Toaster />
|
|
</ThemeProvider>
|
|
</body>
|
|
</html>
|
|
);
|
|
}
|