@vela-ui/react
Version:
Vela UI React components
60 lines (57 loc) • 1.53 kB
JavaScript
import {
cn
} from "./chunk-OCN72JL6.mjs";
// src/components/alert.tsx
import { tv } from "tailwind-variants";
import { jsx } from "react/jsx-runtime";
var alertVariants = tv({
base: "relative grid w-full grid-cols-[0_1fr] items-start gap-y-0.5 rounded-lg border px-4 py-3 text-sm has-[>svg]:grid-cols-[calc(var(--spacing)*4)_1fr] has-[>svg]:gap-x-3 [&>svg]:size-4 [&>svg]:translate-y-0.5 [&>svg]:text-current",
variants: {
variant: {
default: "bg-card text-card-foreground",
destructive: "text-destructive bg-card *:data-[slot=alert-description]:text-destructive/90 [&>svg]:text-current"
}
},
defaultVariants: {
variant: "default"
}
});
function Alert({ className, variant, ...props }) {
return /* @__PURE__ */ jsx(
"div",
{
"data-slot": "alert",
role: "alert",
className: alertVariants({ variant, className }),
...props
}
);
}
function AlertTitle({ className, ...props }) {
return /* @__PURE__ */ jsx(
"div",
{
"data-slot": "alert-title",
className: cn("col-start-2 line-clamp-1 min-h-4 font-medium tracking-tight", className),
...props
}
);
}
function AlertDescription({ className, ...props }) {
return /* @__PURE__ */ jsx(
"div",
{
"data-slot": "alert-description",
className: cn(
"text-muted-foreground col-start-2 grid justify-items-start gap-1 text-sm [&_p]:leading-relaxed",
className
),
...props
}
);
}
export {
Alert,
AlertTitle,
AlertDescription
};