{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"toast","type":"registry:ui","title":"Toast","description":"Brief, non-blocking notifications. Powered by Sonner.","dependencies":["lucide-react","sonner"],"registryDependencies":["https://dashral.com/r/utils.json"],"files":[{"path":"registry/dashral/toast.tsx","type":"registry:file","target":"components/dashral/toast.tsx","content":"\"use client\"\n\nimport * as React from \"react\"\nimport { CircleCheck, CircleX, Info, Loader2, TriangleAlert } from \"lucide-react\"\nimport { Toaster as Sonner, toast, type ToasterProps } from \"sonner\"\n\n/**\n * Mount <Toaster /> once near the root of your app, then call toast() from anywhere.\n * Pass `theme` from your theme provider (e.g. next-themes' resolvedTheme) so toasts follow dark mode.\n */\nfunction Toaster({ theme = \"system\", ...props }: ToasterProps) {\n  return (\n    <Sonner\n      theme={theme}\n      className=\"toaster group\"\n      icons={{\n        success: <CircleCheck className=\"size-4 text-success-text\" />,\n        info: <Info className=\"size-4 text-info-text\" />,\n        warning: <TriangleAlert className=\"size-4 text-warning-text\" />,\n        error: <CircleX className=\"size-4 text-destructive-text\" />,\n        loading: <Loader2 className=\"size-4 animate-spin\" />,\n      }}\n      style={\n        {\n          \"--normal-bg\": \"var(--popover)\",\n          \"--normal-text\": \"var(--popover-foreground)\",\n          \"--normal-border\": \"var(--border)\",\n          \"--border-radius\": \"var(--radius)\",\n        } as React.CSSProperties\n      }\n      {...props}\n    />\n  )\n}\n\nexport { Toaster, toast }\n"}],"cssVars":{"theme":{"color-destructive-foreground":"var(--destructive-foreground)","color-destructive-text":"var(--destructive-text)","color-info":"var(--info)","color-info-foreground":"var(--info-foreground)","color-info-text":"var(--info-text)","color-success":"var(--success)","color-success-foreground":"var(--success-foreground)","color-success-text":"var(--success-text)","color-warning":"var(--warning)","color-warning-foreground":"var(--warning-foreground)","color-warning-text":"var(--warning-text)"},"light":{"destructive-foreground":"oklch(0.985 0 0)","destructive-text":"#bd2800","info":"oklch(0.5 0.134 242.749)","info-foreground":"oklch(0.985 0 0)","info-text":"oklch(0.443 0.11 240.79)","success":"oklch(0.508 0.118 165.612)","success-foreground":"oklch(0.985 0 0)","success-text":"oklch(0.432 0.095 166.913)","warning":"#f59200","warning-foreground":"oklch(0.3 0.07 60)","warning-text":"#964e00"},"dark":{"destructive-foreground":"oklch(0.2 0 0)","destructive-text":"#ff8a5c","info":"oklch(0.685 0.169 237.323)","info-foreground":"oklch(0.2 0 0)","info-text":"oklch(0.746 0.16 232.661)","success":"oklch(0.696 0.17 162.48)","success-foreground":"oklch(0.2 0.04 160)","success-text":"oklch(0.765 0.177 163.223)","warning":"#f59200","warning-foreground":"oklch(0.25 0.06 60)","warning-text":"#ffba42"}}}