import * as React from "react"; import { Badge } from "@/components/ui/badge"; import type { Lifecycle, ModelBadge, ModelBadgeKind } from "@/lib/models/badges"; import { cn } from "@/lib/utils"; /** * Presentational badge chips — no hooks, no store — so server components (public /models, * /compare pages) and client components share one look. */ const KIND_VARIANT: Record = { new: "accent", reasoning: "default", vision: "default", coding: "default", fast: "outline", cheap: "success", "long-context": "info", }; export function BadgeChips({ badges, max = 4, className, size = "sm" }: { badges: ModelBadge[]; max?: number; className?: string; size?: "xs" | "sm" }) { const shown = badges.slice(0, max); if (!shown.length) return null; return ( {shown.map((b) => ( {b.label} ))} {badges.length > max ? +{badges.length - max} : null} ); } export function LifecycleChip({ lifecycle, className }: { lifecycle: Lifecycle; className?: string }) { return ( {lifecycle.label} ); }