"use client"; import type { ReactNode } from "react"; import { useLocale } from "next-intl"; import { Toaster } from "sonner"; import { AlertCircle, CheckCircle2, Info, Loader2, TriangleAlert, } from "lucide-react"; import { cn } from "@/lib/utils"; function iconWrap(className: string, icon: ReactNode) { return ( {icon} ); } export function MeeziToaster() { const locale = useLocale(); const isRtl = locale !== "en"; const isEn = locale === "en"; const fontClass = isEn ? "font-[family-name:var(--font-inter)]" : "font-[family-name:var(--font-vazirmatn)]"; const toastBase = cn( "group relative flex w-[min(calc(100vw-2rem),400px)] items-start gap-3 overflow-hidden", "rounded-xl border border-border/60 bg-card/95 py-3.5 ps-3.5 pe-10", "shadow-[0_10px_40px_-8px_rgba(15,23,42,0.16)] backdrop-blur-md", "transition-[transform,opacity] duration-200", fontClass ); const titleClass = "text-[13px] font-semibold leading-snug tracking-tight text-foreground"; const descriptionClass = "text-xs leading-relaxed text-muted-foreground"; return ( ), error: iconWrap( "bg-red-50", ), warning: iconWrap( "bg-amber-50", ), info: iconWrap( "bg-[#0C447C]/10", ), loading: iconWrap( "bg-primary/10", ), }} /> ); }