- Install sonner package for toast notifications - Add Toaster component to root layout with dark theme styling - Replace all alert() calls with toast.success() and toast.error() - Add descriptive messages for success states - Toast notifications match the app's dark theme design
46 lines
1.1 KiB
TypeScript
46 lines
1.1 KiB
TypeScript
import type { Metadata } from "next";
|
|
import { Geist } from "next/font/google";
|
|
import "./globals.css";
|
|
import { Sidebar } from "@/components/sidebar";
|
|
import { Toaster } from "sonner";
|
|
|
|
const geistSans = Geist({
|
|
variable: "--font-geist-sans",
|
|
subsets: ["latin"],
|
|
});
|
|
|
|
export const metadata: Metadata = {
|
|
title: "TabataFit Admin",
|
|
description: "Admin dashboard for TabataFit",
|
|
};
|
|
|
|
export default function RootLayout({
|
|
children,
|
|
}: Readonly<{
|
|
children: React.ReactNode;
|
|
}>) {
|
|
return (
|
|
<html lang="en" className="dark" suppressHydrationWarning>
|
|
<body className={`${geistSans.variable} antialiased bg-neutral-950 text-white`}>
|
|
<div className="flex min-h-screen">
|
|
<Sidebar />
|
|
<main className="flex-1 overflow-auto">
|
|
{children}
|
|
</main>
|
|
</div>
|
|
<Toaster
|
|
theme="dark"
|
|
position="top-right"
|
|
toastOptions={{
|
|
style: {
|
|
background: '#171717',
|
|
border: '1px solid #262626',
|
|
color: '#fff',
|
|
},
|
|
}}
|
|
/>
|
|
</body>
|
|
</html>
|
|
);
|
|
}
|