2023-12-29 14:55:08 +08:00

94 lines
3.1 KiB
TypeScript

import "./globals.css";
import { NavbarRight } from "@/components/NavbarRight";
import { Button } from "@/components/ui/button";
import { TooltipProvider } from "@/components/ui/tooltip";
import { ClerkProvider, UserButton } from "@clerk/nextjs";
import { Github } from "lucide-react";
import type { Metadata } from "next";
import meta from "next-gen/config";
import PlausibleProvider from "next-plausible";
import { Inter } from "next/font/google";
import { Toaster } from "sonner";
const inter = Inter({ subsets: ["latin"] });
export const metadata: Metadata = {
title: meta["og:title"],
description: meta["og:description"],
category: "technology",
openGraph: {
type: "website",
title: meta["og:title"],
description: meta["og:description"],
locale: "en_US",
images: "/og.jpg",
},
};
export default function RootLayout({
children,
}: {
children: React.ReactNode;
}) {
return (
<html lang="en">
<ClerkProvider>
<TooltipProvider>
<head>
{process.env.PLAUSIBLE_DOMAIN && (
<PlausibleProvider domain={process.env.PLAUSIBLE_DOMAIN} />
)}
</head>
<body className={inter.className}>
<main className="w-full flex min-h-[100dvh] flex-col items-center justify-start">
<div className="z-[-1] fixed h-full w-full bg-white">
<div className="absolute h-full w-full bg-[radial-gradient(#e5e7eb_1px,transparent_1px)] [background-size:16px_16px] [mask-image:radial-gradient(ellipse_50%_50%_at_50%_50%,#000_70%,transparent_100%)]" />
</div>
<div className="sticky w-full h-18 flex items-center justify-between gap-4 p-4 border-b border-gray-200">
<div className="flex flex-row items-center gap-4">
<a
className="font-bold text-md md:text-lg hover:underline"
href="/"
>
{meta.name}
</a>
<NavbarRight />
</div>
<div className="flex flex-row items-center gap-2">
<Button
asChild
variant="link"
className="rounded-full aspect-square p-2 mr-4"
>
<a href="/docs">Docs</a>
</Button>
<UserButton />
<Button
asChild
variant="outline"
className="rounded-full aspect-square p-2"
>
<a
target="_blank"
href="https://github.com/BennyKok/comfyui-deploy"
>
<Github />
</a>
</Button>
</div>
{/* <div></div> */}
</div>
<div className="md:px-10 px-6 w-full h-[calc(100dvh-73px)]">
{children}
</div>
<Toaster richColors />
</main>
</body>
</TooltipProvider>
</ClerkProvider>
</html>
);
}