Files
openccb/web/studio/src/app/layout.tsx
T

44 lines
1.3 KiB
TypeScript

import type { Metadata } from "next";
import { Inter } from "next/font/google";
import "./globals.css";
import Link from "next/link";
import { AuthProvider } from "@/context/AuthContext";
import { I18nProvider } from "@/context/I18nContext";
import { BookOpen } from "lucide-react";
import AuthGuard from "@/components/AuthGuard";
import { BrandingProvider } from "@/context/BrandingContext";
import { ThemeProvider } from "@/context/ThemeContext";
const inter = Inter({ subsets: ["latin"] });
export const metadata: Metadata = {
title: "Studio",
description: "Crea y gestiona contenido educativo de alta fidelidad.",
};
import { Navbar } from "@/components/Navbar";
export default function RootLayout({
children,
}: Readonly<{
children: React.ReactNode;
}>) {
return (
<html lang="es">
<body className={`${inter.className} min-h-screen flex flex-col transition-colors duration-300`}>
<ThemeProvider>
<AuthProvider>
<I18nProvider>
<BrandingProvider>
<AuthGuard>
<Navbar />
<main className="flex-1 mt-16 md:mt-20">{children}</main>
</AuthGuard>
</BrandingProvider>
</I18nProvider>
</AuthProvider>
</ThemeProvider>
</body>
</html>
);
}