add initial complete webui, more ai commands for moderation, add api

This commit is contained in:
Aidan 2025-07-05 14:36:17 -04:00
parent 19e794e34c
commit 173d4e7a52
112 changed files with 8176 additions and 780 deletions

54
webui/app/layout.tsx Executable file
View file

@ -0,0 +1,54 @@
import type { Metadata } from "next";
import { Sora } from "next/font/google";
import "./globals.css";
import { ThemeProvider } from "@/components/providers";
import { SidebarProvider, SidebarInset, SidebarTrigger } from "@/components/ui/sidebar";
import { AppSidebar } from "@/components/app-sidebar";
import { AuthProvider } from "@/contexts/auth-context";
import { HeaderAuth } from "@/components/header-auth";
const sora = Sora({
variable: "--font-sora",
subsets: ["latin"],
});
export const metadata: Metadata = {
title: "Kowalski",
description: "A powerful, multi-function Telegram bot",
};
export default function RootLayout({
children,
}: Readonly<{
children: React.ReactNode;
}>) {
return (
<html lang="en" suppressHydrationWarning className="scroll-smooth">
<body className={`${sora.variable} antialiased`}>
<ThemeProvider
attribute="class"
defaultTheme="system"
enableSystem
disableTransitionOnChange
>
<AuthProvider>
<SidebarProvider>
<AppSidebar />
<SidebarInset className="h-[calc(100vh-16px)] overflow-hidden rounded-lg border bg-background flex flex-col">
<header className="flex h-16 shrink-0 items-center gap-2 px-4 border-b bg-background">
<SidebarTrigger className="-ml-1" />
<div className="ml-auto">
<HeaderAuth />
</div>
</header>
<main className="flex-1 overflow-auto scroll-smooth">
{children}
</main>
</SidebarInset>
</SidebarProvider>
</AuthProvider>
</ThemeProvider>
</body>
</html>
);
}