"use client"
import { useTheme } from "next-themes"
import { Toaster as Sonner, type ToasterProps } from "sonner"
import { CircleCheckIcon, InfoIcon, TriangleAlertIcon, OctagonXIcon, Loader2Icon } from "lucide-react"
const Toaster = ({ ...props }: ToasterProps) => {
const { theme = "system" } = useTheme()
return (
),
info: (
),
warning: (
),
error: (
),
loading: (
),
}}
style={
{
"--normal-bg": "var(--popover)",
"--normal-text": "var(--popover-foreground)",
"--normal-border": "var(--border)",
"--border-radius": "var(--radius)",
} as React.CSSProperties
}
toastOptions={{
classNames: {
toast: "cn-toast",
// [vendure] Override Sonner's hardcoded #3f3f3f description colour
// with our semantic muted-foreground token for consistent contrast.
// See: https://github.com/vendurehq/design/issues/5
description: "!text-muted-foreground",
},
}}
{...props}
/>
)
}
export { Toaster }