"use client"; import { useEffect, useState } from "react"; import { AlertCircle, CheckCircle2, Info } from "lucide-react"; import { subscribe, ToastItem } from "@/lib/toast"; const STYLE: Record< ToastItem["type"], { border: string; icon: React.ReactNode } > = { error: { border: "#e5484d", icon: }, success: { border: "#3fa34d", icon: }, info: { border: "#e9b949", icon: }, }; export default function Toaster() { const [items, setItems] = useState([]); useEffect(() => subscribe(setItems), []); return (
{items.map((t) => (
{STYLE[t.type].icon} {t.msg}
))}
); }