50 lines
1.5 KiB
TypeScript
50 lines
1.5 KiB
TypeScript
import type { Metadata } from "next";
|
|
import { Vazirmatn } from "next/font/google";
|
|
import "./globals.css";
|
|
import { LanguageProvider } from "@/components/language-provider";
|
|
import { ThemeProvider } from "@/components/theme-provider";
|
|
import { LoginModalProvider } from "@/components/login-modal-provider";
|
|
import { AuthProvider } from "@/components/auth/auth-provider";
|
|
import { Navbar } from "@/components/navbar";
|
|
import { Footer } from "@/components/footer";
|
|
|
|
const vazir = Vazirmatn({
|
|
subsets: ["arabic", "latin"],
|
|
variable: "--font-fa",
|
|
weight: ["400", "500", "600", "700", "800"],
|
|
display: "swap",
|
|
});
|
|
|
|
export const metadata: Metadata = {
|
|
title: {
|
|
default: "MyAccount Hamsoo — One Identity. Every Product.",
|
|
template: "%s · MyAccount Hamsoo",
|
|
},
|
|
description:
|
|
"Central identity, authentication and authorization infrastructure for the ecosystem.",
|
|
};
|
|
|
|
export default function RootLayout({
|
|
children,
|
|
}: {
|
|
children: React.ReactNode;
|
|
}) {
|
|
return (
|
|
<html lang="fa" dir="rtl" className={`${vazir.variable}`}>
|
|
<body className="min-h-screen bg-white font-fa text-slate-800 dark:bg-ink dark:text-slate-200">
|
|
<ThemeProvider>
|
|
<LanguageProvider>
|
|
<AuthProvider>
|
|
<LoginModalProvider>
|
|
<Navbar />
|
|
<main>{children}</main>
|
|
<Footer />
|
|
</LoginModalProvider>
|
|
</AuthProvider>
|
|
</LanguageProvider>
|
|
</ThemeProvider>
|
|
</body>
|
|
</html>
|
|
);
|
|
}
|