"use client"; import Link from "next/link"; import { ACCOUNTING_MODULE_SCORES, overallCompletionPercent, type ScoreState } from "@/lib/accounting-scoreboard"; import { Badge, Card, CardContent, CardHeader, CardTitle } from "@/components/ds"; import { cn } from "@/lib/utils"; const tone: Record = { complete: "success", partial: "warning", missing: "danger", blocked: "default", }; const labelFa: Record = { complete: "کامل", partial: "جزئی", missing: "ناقص", blocked: "مسدود", }; export function CompletionScoreboard({ compact = false }: { compact?: boolean }) { const overall = overallCompletionPercent(); const rows = compact ? ACCOUNTING_MODULE_SCORES.filter((s) => s.state !== "blocked").slice(0, 8) : ACCOUNTING_MODULE_SCORES; return (
میزان تکمیل ماژول حسابداری

Scoreboard دائمی — بدون mock

= 90 ? "success" : "primary"}>{overall}٪
{rows.map((m) => (
{m.label} {labelFa[m.state]}
{m.percent}% ))} {compact ? ( راه‌اندازی و مشاهده همه ماژول‌ها ) : null} ); }