diff options
Diffstat (limited to 'src/components/ui/toast.tsx')
| -rw-r--r-- | src/components/ui/toast.tsx | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/src/components/ui/toast.tsx b/src/components/ui/toast.tsx new file mode 100644 index 0000000..0991276 --- /dev/null +++ b/src/components/ui/toast.tsx @@ -0,0 +1,31 @@ +"use client" + +import { Toaster as Sonner } from "sonner" +import { useTheme } from "next-themes" + +type ToasterProps = React.ComponentProps<typeof Sonner> + +const Toaster = ({ ...props }: ToasterProps) => { + const { theme = "system" } = useTheme() + + return ( + <Sonner + theme={theme as ToasterProps["theme"]} + className="toaster group" + toastOptions={{ + classNames: { + toast: + "group toast group-[.toaster]:bg-background group-[.toaster]:text-foreground group-[.toaster]:border-border group-[.toaster]:shadow-lg", + description: "group-[.toast]:text-muted-foreground", + actionButton: + "group-[.toast]:bg-primary group-[.toast]:text-primary-foreground", + cancelButton: + "group-[.toast]:bg-muted group-[.toast]:text-muted-foreground", + }, + }} + {...props} + /> + ) +} + +export { Toaster }
\ No newline at end of file |
