import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
import { cva } from "class-variance-authority";
import { cn } from "./libs/utils";
// Base badge variants
const badgeVariants = cva("inline-flex items-center rounded-md px-2 py-1 text-xs font-medium", {
    variants: {
        variant: {
            default: "text-foreground bg-muted",
            secondary: "bg-secondary text-primary",
            destructive: "bg-destructive text-destructive",
            attention: "bg-attention text-attention",
            success: "bg-success text-success",
            info: "bg-info text-info",
            done: "bg-done text-done",
        },
    },
    defaultVariants: {
        variant: "default",
    },
});
// Base Badge component
export function Badge({ className, variant, children, onClick, ...props }) {
    return (_jsx("span", { className: cn(badgeVariants({ variant }), className), onClick: onClick, ...props, children: children }));
}
const dotBadgeVariants = cva(
// Base styles
"inline-flex items-center gap-x-1.5 rounded-md px-2 py-1 text-xs font-medium ring-1 ring-inset ring-border", {
    variants: {
        variant: {
            default: "",
            success: "",
            destructive: "",
            attention: "",
            done: "",
            info: "",
        }
    },
    defaultVariants: {
        variant: "default"
    }
});
// Separate dot variants to allow className overrides
const dotVariants = cva("h-1.5 w-1.5", {
    variants: {
        variant: {
            default: "fill-foreground",
            success: "fill-success",
            destructive: "fill-destructive",
            attention: "fill-attention",
            done: "fill-done",
            info: "fill-info",
        }
    },
    defaultVariants: {
        variant: "default"
    }
});
export function DotBadge({ variant, className, dotClassName, // New prop for dot-specific classes
children, ...props }) {
    return (_jsxs("span", { className: cn(dotBadgeVariants({ variant }), className), ...props, children: [_jsx("div", { className: "flex-shrink-0", children: _jsx("svg", { className: cn(dotVariants({ variant }), dotClassName), viewBox: "0 0 6 6", "aria-hidden": "true", children: _jsx("circle", { cx: 3, cy: 3, r: 3 }) }) }), _jsx("span", { className: "truncate", children: children })] }));
}
//# sourceMappingURL=Badge.js.map