Files
openclaw-taskboard/app/layout.tsx

36 lines
1.0 KiB
TypeScript

import type { Metadata } from "next";
import { headers } from "next/headers";
import "@/app/globals.css";
import { AppShell } from "@/components/app-shell";
export const metadata: Metadata = {
title: "Claw Fleet Console",
description: "OpenClaw, ZeroClaw, and direct host operations dashboard",
};
export default async function RootLayout({
children,
}: Readonly<{
children: React.ReactNode;
}>) {
const headerList = await headers();
const pathname = headerList.get("x-pathname") || "/tasks";
return (
<html lang="en">
<head>
<link rel="preconnect" href="https://fonts.googleapis.com" />
<link rel="preconnect" href="https://fonts.gstatic.com" crossOrigin="anonymous" />
<link
href="https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500;600&family=Space+Grotesk:wght@400;500;600;700&display=swap"
rel="stylesheet"
/>
</head>
<body>
<AppShell pathname={pathname}>{children}</AppShell>
</body>
</html>
);
}