feat(ui): Checkbox/Radio 原子件 + 3 处原生控件采用(P2-5)

- checkboxClass/radioClass(accent-cinnabar + 统一焦点环)+ 同名测试
- Checkbox/Radio 原子件:无 label 只渲染受控原生 input 便于就地替换
- 采用:ChainStarter 链类型单选、GeneratorRunner 入库勾选、CharacterCardItem 角色勾选
This commit is contained in:
Yaojia Wang
2026-07-11 14:04:01 +02:00
parent 45025c36bf
commit 355a2d11cd
7 changed files with 68 additions and 7 deletions

View File

@@ -1,5 +1,6 @@
"use client";
import { Checkbox } from "@/components/ui/Checkbox";
import { TextInput } from "@/components/ui/TextInput";
import type { CharacterCardView } from "@/lib/api/types";
@@ -25,12 +26,10 @@ export function CharacterCardItem({
}`}
>
<header className="mb-2 flex items-center gap-2">
<input
type="checkbox"
<Checkbox
checked={selected}
onChange={onToggle}
aria-label={`选择角色 ${card.name}`}
className="size-4 accent-cinnabar"
/>
{onEdit ? (
<TextInput