feat: themed toaster

This commit is contained in:
dvelo 2024-08-10 11:24:54 -05:00
parent 086a708e6f
commit c180941ce6
2 changed files with 22 additions and 2 deletions

@ -3,7 +3,6 @@ import { Server } from "lucide-react";
import { SpeedInsights } from "@vercel/speed-insights/next"; import { SpeedInsights } from "@vercel/speed-insights/next";
import { Analytics } from "@vercel/analytics/react"; import { Analytics } from "@vercel/analytics/react";
import "./globals.css"; import "./globals.css";
import { Toaster } from "react-hot-toast";
import { TooltipProvider } from "@/components/ui/tooltip"; import { TooltipProvider } from "@/components/ui/tooltip";
import { ThemeProvider } from "@/components/ThemeProvider"; import { ThemeProvider } from "@/components/ThemeProvider";
import { ClerkThemeProvider } from "@/components/clerk/ClerkThemeProvider"; import { ClerkThemeProvider } from "@/components/clerk/ClerkThemeProvider";
@ -19,6 +18,7 @@ import TopBar from "@/components/clerk/Topbar";
import TextFromPathname from "@/components/TextFromPathname"; import TextFromPathname from "@/components/TextFromPathname";
import { Inter as interFont } from "next/font/google"; import { Inter as interFont } from "next/font/google";
import { CommandBarer } from "@/components/CommandBar"; import { CommandBarer } from "@/components/CommandBar";
import ThemedToaster from "@/components/misc/ThemedToaster";
const inter = interFont({ variable: "--font-inter", subsets: ["latin"] }); const inter = interFont({ variable: "--font-inter", subsets: ["latin"] });
export default async function RootLayout({ export default async function RootLayout({
@ -64,7 +64,7 @@ export default async function RootLayout({
<NextTopLoader /> <NextTopLoader />
{children} {children}
</div>{" "} </div>{" "}
<Toaster position="bottom-center" reverseOrder={false} /> <ThemedToaster />
<CommandBarer /> <CommandBarer />
<SpeedInsights /> <SpeedInsights />
<Analytics /> <Analytics />

@ -0,0 +1,20 @@
"use client";
import { useTheme } from "next-themes";
import { Toaster } from "react-hot-toast";
export default function ThemedToaster() {
const { resolvedTheme } = useTheme();
return (
<Toaster
position="bottom-center"
reverseOrder={false}
toastOptions={
resolvedTheme == "dark"
? { style: { background: "#333", color: "#fff" } }
: undefined
}
/>
);
}