diff --git a/apps/web/components/chain/ChainAdjudication.tsx b/apps/web/components/chain/ChainAdjudication.tsx index 4de70df..abed663 100644 --- a/apps/web/components/chain/ChainAdjudication.tsx +++ b/apps/web/components/chain/ChainAdjudication.tsx @@ -4,6 +4,7 @@ import { useCallback, useEffect, useState } from "react"; import { ConflictCard } from "@/components/review/ConflictCard"; import { useToast } from "@/components/Toast"; +import { Button } from "@/components/ui/Button"; import { api } from "@/lib/api/client"; import { buildResumeRequest } from "@/lib/chain/chain"; import { friendlyFromApiError } from "@/lib/errors/messages"; @@ -159,14 +160,14 @@ export function ChainAdjudication({ )} - + {pending.length > 0 ? (

还有 {pending.length} 条冲突未裁决。 diff --git a/apps/web/components/chain/ChainProgress.tsx b/apps/web/components/chain/ChainProgress.tsx index b8b68e5..480db14 100644 --- a/apps/web/components/chain/ChainProgress.tsx +++ b/apps/web/components/chain/ChainProgress.tsx @@ -1,5 +1,6 @@ "use client"; +import { Card } from "@/components/ui/Card"; import type { ChainPhase, ChainResultView } from "@/lib/chain/chain"; interface ChainProgressProps { @@ -18,8 +19,9 @@ const PHASE_LABEL: Record = { // 链进度视图:相位徽标 + 进度条 + 已写章号清单(token/正文绝不展示,result 只含元数据)。 export function ChainProgress({ phase, progress, result }: ChainProgressProps) { return ( -

@@ -58,6 +60,6 @@ export function ChainProgress({ phase, progress, result }: ChainProgressProps) { 第 {result.awaitingChapter} 章存在未决冲突,请在下方逐条裁决后续跑。

) : null} -
+ ); } diff --git a/apps/web/components/foreshadow/ForeshadowBoard.tsx b/apps/web/components/foreshadow/ForeshadowBoard.tsx index 21a73a6..8818295 100644 --- a/apps/web/components/foreshadow/ForeshadowBoard.tsx +++ b/apps/web/components/foreshadow/ForeshadowBoard.tsx @@ -6,6 +6,7 @@ import { Flag, Plus } from "lucide-react"; import { AppShell } from "@/components/AppShell"; import { Badge } from "@/components/ui/Badge"; import { Button } from "@/components/ui/Button"; +import { Card } from "@/components/ui/Card"; import { EmptyState } from "@/components/ui/EmptyState"; import { PageHeader } from "@/components/ui/PageHeader"; import type { ForeshadowView, ProjectResponse } from "@/lib/api/types"; @@ -137,10 +138,7 @@ function ForeshadowBoardSummary({ className="mb-3 grid grid-cols-2 gap-2 sm:grid-cols-4" > {LANES.map((status) => ( -
+
{LANE_LABELS[status]} @@ -152,7 +150,7 @@ function ForeshadowBoardSummary({ {" · "} {total > 0 ? `${Math.round((counts[status] / total) * 100)}%` : "0%"}

-
+
))} ); diff --git a/apps/web/components/foreshadow/RegisterForm.tsx b/apps/web/components/foreshadow/RegisterForm.tsx index e9728eb..99c00db 100644 --- a/apps/web/components/foreshadow/RegisterForm.tsx +++ b/apps/web/components/foreshadow/RegisterForm.tsx @@ -5,6 +5,7 @@ import { Plus } from "lucide-react"; import { Button } from "@/components/ui/Button"; import { TextInput } from "@/components/ui/TextInput"; +import { cardClass } from "@/lib/ui/variants"; import type { RegisterInput } from "@/lib/foreshadow/board"; interface RegisterFormProps { @@ -79,7 +80,7 @@ export function RegisterForm({ e.preventDefault(); void submit(); }} - className="rounded border border-line bg-panel p-4" + className={cardClass("p-4")} >
diff --git a/apps/web/components/generation/ConflictAdjudication.tsx b/apps/web/components/generation/ConflictAdjudication.tsx index b3cb3e8..908fab5 100644 --- a/apps/web/components/generation/ConflictAdjudication.tsx +++ b/apps/web/components/generation/ConflictAdjudication.tsx @@ -1,5 +1,6 @@ "use client"; +import { Button } from "@/components/ui/Button"; import type { IngestConflicts } from "@/lib/generation/cards"; interface ConflictAdjudicationProps { @@ -56,22 +57,22 @@ export function ConflictAdjudication({ ))}
- - +
); diff --git a/apps/web/components/projects/ProjectLibrary.tsx b/apps/web/components/projects/ProjectLibrary.tsx index e9252e8..6d61727 100644 --- a/apps/web/components/projects/ProjectLibrary.tsx +++ b/apps/web/components/projects/ProjectLibrary.tsx @@ -16,7 +16,7 @@ import { type ProjectSort, type ProjectViewMode, } from "@/lib/projects/projects"; -import { buttonClass, cn } from "@/lib/ui/variants"; +import { buttonClass, cardClass, cn } from "@/lib/ui/variants"; interface ProjectLibraryProps { projects: ProjectResponse[]; @@ -47,7 +47,11 @@ export function ProjectLibrary({ projects }: ProjectLibraryProps) { return (
-
+