import * as Toast from '@radix-ui/react-toast' import { AnimatePresence, motion } from 'framer-motion' import { CheckCircle2, CircleAlert, Info, X } from 'lucide-react' import { useAppStore } from '../../store/useAppStore' const icons = { success: CheckCircle2, danger: CircleAlert, info: Info, } export default function Toaster() { const toasts = useAppStore((state) => state.toasts) const removeToast = useAppStore((state) => state.removeToast) return ( {toasts.map((toast) => { const Icon = icons[toast.variant] || Info return ( { if (!open) removeToast(toast.id) }} >
{toast.title} {toast.description ? ( {toast.description} ) : null}
) })}
) }