Spaces:
Sleeping
Sleeping
| import { Toaster } from 'react-hot-toast'; | |
| import { GeistSans } from 'geist/font/sans'; | |
| import { GeistMono } from 'geist/font/mono'; | |
| import '@/app/globals.css'; | |
| import { cn } from '@/lib/utils'; | |
| import { TailwindIndicator } from '@/components/TailwindIndicator'; | |
| import { Providers } from '@/components/Providers'; | |
| import { Header } from '@/components/Header'; | |
| export const metadata = { | |
| metadataBase: new URL(`https://${process.env.VERCEL_URL}`), | |
| title: { | |
| default: 'Vision Agent', | |
| template: `%s - Vision Agent`, | |
| }, | |
| description: 'By Landing AI', | |
| icons: { | |
| icon: '/landing4.png', | |
| shortcut: '/landing4.png', | |
| apple: '/landing4.png', | |
| }, | |
| }; | |
| export const viewport = { | |
| themeColor: [ | |
| { media: '(prefers-color-scheme: light)', color: 'white' }, | |
| { media: '(prefers-color-scheme: dark)', color: 'black' }, | |
| ], | |
| }; | |
| interface RootLayoutProps { | |
| children: React.ReactNode; | |
| } | |
| export default function RootLayout(props: RootLayoutProps) { | |
| const { children } = props; | |
| return ( | |
| <html lang="en" suppressHydrationWarning> | |
| <body | |
| className={cn( | |
| 'font-sans antialiased', | |
| GeistSans.variable, | |
| GeistMono.variable, | |
| )} | |
| > | |
| <Toaster /> | |
| <Providers | |
| attribute="class" | |
| defaultTheme="system" | |
| enableSystem | |
| disableTransitionOnChange | |
| > | |
| <div className="flex flex-col min-h-screen"> | |
| <Header /> | |
| <main className="flex p-4 h-[calc(100vh-64px)] bg-background overflow-hidden relative w-screen"> | |
| {children} | |
| </main> | |
| </div> | |
| <TailwindIndicator /> | |
| </Providers> | |
| </body> | |
| </html> | |
| ); | |
| } | |