feat: Init

This commit is contained in:
beilunyang
2024-12-16 01:49:50 +08:00
commit cc7e5003c5
73 changed files with 15001 additions and 0 deletions
+55
View File
@@ -0,0 +1,55 @@
"use client"
import {
Toast,
ToastClose,
ToastDescription,
ToastProvider,
ToastTitle,
ToastViewport,
} from "./toast"
import { useToast } from "./use-toast"
export interface ToastProps {
id: string
title?: string
description?: string
action?: React.ReactNode
variant?: "default" | "destructive"
}
export function Toaster() {
const { toasts } = useToast()
return (
<ToastProvider>
{toasts.map(function ({
id,
title,
description,
action,
...props
}: {
id: string;
title?: React.ReactNode;
description?: React.ReactNode;
action?: React.ReactNode;
[key: string]: any;
}) {
return (
<Toast key={id} {...props}>
<div className="grid gap-1">
{title && <ToastTitle>{title}</ToastTitle>}
{description && (
<ToastDescription>{description}</ToastDescription>
)}
</div>
{action}
<ToastClose />
</Toast>
)
})}
<ToastViewport />
</ToastProvider>
)
}