feat(admin): 管理后台 - 完善配置运营页面并修复导航、筛选与积分计费

This commit is contained in:
ddCat
2026-08-30 11:10:52 +08:00
parent 10cebf8c69
commit 2f818a8dde
26 changed files with 2468 additions and 1578 deletions

View File

@@ -292,8 +292,8 @@ export function SettingsSectionCard({
}) {
const isStacked = layout === "stacked";
return (
<section className={cn("admin-settings-section", isStacked ? "is-stacked" : "lg:grid lg:grid-cols-4", className)}>
<div className={cn("admin-settings-section-summary flex flex-wrap items-start justify-between gap-3 px-4 py-4", icon && "has-icon", isStacked ? "" : "lg:col-span-1 lg:block")}>
<section className={cn("admin-settings-section", isStacked && "is-stacked", className)}>
<div className={cn("admin-settings-section-summary flex flex-wrap items-start justify-between gap-3 px-4 py-4", icon && "has-icon")}>
<div className="admin-settings-section-summary-main flex min-w-0 items-start gap-3">
{icon ? <span className="grid size-8 shrink-0 place-items-center rounded-md bg-muted/40">{icon}</span> : null}
<div className="min-w-0">
@@ -302,7 +302,7 @@ export function SettingsSectionCard({
</div>
</div>
{status ? (
<div className={cn("admin-settings-section-status shrink-0", isStacked ? "" : "lg:mt-4")}>
<div className="admin-settings-section-status shrink-0">
{isStatusConfig(status) ? (
<AdminStatusBadge label={status.label} tone={status.color === "success" ? "success" : status.color === "warning" ? "warning" : status.color === "error" ? "error" : status.color === "blue" ? "info" : "neutral"} />
) : (
@@ -311,7 +311,7 @@ export function SettingsSectionCard({
</div>
) : null}
</div>
<div className={cn("admin-settings-section-content min-w-0", isStacked ? "" : "lg:col-span-3", contentClassName)}>
<div className={cn("admin-settings-section-content min-w-0", contentClassName)}>
{children}
{footer ? <div className="admin-settings-section-footer flex flex-wrap items-center justify-between gap-3 px-4 py-3">{footer}</div> : null}
</div>