"use client"; import { useEffect, useState } from "react"; import { CheckCircle2, Info, X, XCircle } from "lucide-react"; import { dismiss, subscribe, type Toast } from "@/lib/toast"; const STYLE = { success: { icon: CheckCircle2, ring: "ring-emerald-500/30", color: "text-emerald-400" }, error: { icon: XCircle, ring: "ring-rose-500/30", color: "text-rose-400" }, info: { icon: Info, ring: "ring-brand-500/30", color: "text-brand-300" }, } as const; export default function Toaster() { const [toasts, setToasts] = useState([]); useEffect(() => subscribe(setToasts), []); return (
{toasts.map((t) => { const s = STYLE[t.kind]; const Icon = s.icon; return (

{t.title}

{t.description && (

{t.description}

)}
); })}
); }