import * as React from "react"; import { Badge as KumoBadge } from "@cloudflare/kumo/components/badge"; import { cn } from "@/lib/utils"; type KumoBadgeProps = React.ComponentProps; type LegacyBadgeVariant = "default" | "secondary" | "outline" | "success" | "warning" | "danger"; const variantMap: Record = { default: "green", secondary: "secondary", outline: "outline", success: "success", warning: "warning", danger: "error", }; export type BadgeProps = Omit & { variant?: LegacyBadgeVariant | KumoBadgeProps["variant"]; }; function isLegacyBadgeVariant(variant: BadgeProps["variant"]): variant is LegacyBadgeVariant { switch (variant) { case "default": case "secondary": case "outline": case "success": case "warning": case "danger": return true; default: return false; } } function mapBadgeVariant(variant: BadgeProps["variant"]): KumoBadgeProps["variant"] { if (isLegacyBadgeVariant(variant)) { return variantMap[variant]; } return variant; } export function Badge({ className, variant = "default", ...props }: BadgeProps): React.ReactElement { const mappedVariant = mapBadgeVariant(variant); return ; }