"use client"; import { Badge } from "@/components/ds"; import { activityStatusLabels, contactStatusLabels, leadPriorityLabels, leadStatusLabels, opportunityStatusLabels, organizationStatusLabels, } from "./tokens"; type Tone = "default" | "primary" | "success" | "warning" | "danger" | "info"; const toneMap: Record = { new: "info", contacted: "primary", qualified: "success", unqualified: "warning", converted: "success", lost: "danger", open: "primary", won: "success", lost_deal: "danger", on_hold: "warning", planned: "default", in_progress: "info", completed: "success", cancelled: "danger", active: "success", inactive: "default", archived: "warning", prospect: "info", low: "default", medium: "primary", high: "warning", urgent: "danger", }; export function CrmStatusChip({ status, domain = "generic", }: { status: string; domain?: "lead" | "opportunity" | "activity" | "contact" | "organization" | "priority" | "generic"; }) { const labels: Record = { ...leadStatusLabels, ...opportunityStatusLabels, ...activityStatusLabels, ...contactStatusLabels, ...organizationStatusLabels, ...leadPriorityLabels, }; const label = labels[status] ?? status; const tone = toneMap[status] ?? "default"; return {label}; }