feat(web): add reusable admin form dialog

This commit is contained in:
2026-05-09 20:15:35 +08:00
parent c0335bd5d0
commit a5e66e79cd
49 changed files with 6013 additions and 1108 deletions
+14
View File
@@ -0,0 +1,14 @@
import type { StatItem } from '../app-state';
export function StatGrid(props: { items: StatItem[] }) {
return (
<section className="statGrid" aria-label="统计">
{props.items.map((item) => (
<div className="statCard" data-tone={item.tone} key={item.label}>
<span>{item.label}</span>
<strong>{item.value}</strong>
</div>
))}
</section>
);
}