mirror of
https://github.com/cosscom/coss.git
synced 2026-09-14 20:06:50 +08:00
40 lines
988 B
TypeScript
40 lines
988 B
TypeScript
"use client";
|
|
|
|
import { useToast } from "@/registry/default/hooks/use-toast";
|
|
import {
|
|
Toast,
|
|
ToastClose,
|
|
ToastDescription,
|
|
ToastProvider,
|
|
ToastTitle,
|
|
ToastViewport,
|
|
} from "@/registry/default/ui/toast";
|
|
|
|
export function Toaster() {
|
|
const { toasts } = useToast();
|
|
|
|
return (
|
|
<ToastProvider>
|
|
{toasts.map(({ id, title, description, action, ...props }) => (
|
|
<Toast key={id} {...props}>
|
|
<div className="flex w-full justify-between gap-2">
|
|
<div className="flex flex-col gap-3">
|
|
<div className="space-y-1">
|
|
{title && <ToastTitle>{title}</ToastTitle>}
|
|
{description && (
|
|
<ToastDescription>{description}</ToastDescription>
|
|
)}
|
|
</div>
|
|
<div>{action}</div>
|
|
</div>
|
|
<div>
|
|
<ToastClose />
|
|
</div>
|
|
</div>
|
|
</Toast>
|
|
))}
|
|
<ToastViewport />
|
|
</ToastProvider>
|
|
);
|
|
}
|