fix: stabilize settings controls
This commit is contained in:
@@ -1,6 +1,5 @@
|
||||
import { redirect } from "next/navigation";
|
||||
|
||||
import { Badge } from "@/components/ui/badge";
|
||||
import { getCurrentAuthContext } from "@/modules/core/server/auth";
|
||||
import { hasPermission } from "@/modules/core/server/permissions";
|
||||
import { getSystemSettings } from "@/modules/core/server/system-settings";
|
||||
@@ -20,12 +19,6 @@ export default async function GlobalSettingsPage(): Promise<React.ReactElement>
|
||||
|
||||
return (
|
||||
<div className="flex flex-col gap-5">
|
||||
<section>
|
||||
<Badge variant="success">Global</Badge>
|
||||
<h2 className="mt-3 text-xl font-semibold">全局配置</h2>
|
||||
<p className="mt-1 text-sm text-muted-foreground">平台级注册策略、OIDC 默认配置和用户头像声明映射。</p>
|
||||
</section>
|
||||
|
||||
<GlobalSettingsClient settings={settings} />
|
||||
</div>
|
||||
);
|
||||
|
||||
@@ -124,17 +124,6 @@ a,
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes dialog-panel-enter {
|
||||
from {
|
||||
opacity: 0;
|
||||
transform: translate(-50%, -48%) scale(0.97);
|
||||
}
|
||||
to {
|
||||
opacity: 1;
|
||||
transform: translate(-50%, -50%) scale(1);
|
||||
}
|
||||
}
|
||||
|
||||
.page-enter {
|
||||
animation: page-enter 180ms ease-out both;
|
||||
}
|
||||
@@ -147,10 +136,6 @@ a,
|
||||
animation: page-enter 160ms ease-out both;
|
||||
}
|
||||
|
||||
.dialog-panel-enter {
|
||||
animation: dialog-panel-enter 160ms ease-out both;
|
||||
}
|
||||
|
||||
:where([role="presentation"].fixed.inset-0.bg-kumo-recessed) {
|
||||
z-index: 40;
|
||||
}
|
||||
@@ -380,6 +365,22 @@ a,
|
||||
font-weight: 600;
|
||||
}
|
||||
|
||||
.teatea-checkbox {
|
||||
display: inline-flex;
|
||||
width: 100%;
|
||||
align-items: flex-start;
|
||||
gap: 0.75rem;
|
||||
}
|
||||
|
||||
.teatea-checkbox :where([data-kumo-component="Checkbox"]),
|
||||
.teatea-checkbox-control {
|
||||
width: 1.25rem;
|
||||
height: 1.25rem;
|
||||
min-width: 1.25rem;
|
||||
min-height: 1.25rem;
|
||||
flex-shrink: 0;
|
||||
}
|
||||
|
||||
.teatea-checkbox :where([data-kumo-component="Checkbox"]) {
|
||||
border: 1px solid var(--input);
|
||||
border-radius: var(--radius-sm);
|
||||
@@ -387,6 +388,12 @@ a,
|
||||
color: var(--primary-foreground);
|
||||
}
|
||||
|
||||
.teatea-checkbox :where([data-kumo-component="Checkbox"][data-checked]),
|
||||
.teatea-checkbox :where([data-kumo-component="Checkbox"][aria-checked="true"]) {
|
||||
border-color: var(--primary);
|
||||
background: var(--primary);
|
||||
}
|
||||
|
||||
.teatea-badge {
|
||||
border-radius: var(--radius-sm);
|
||||
font-weight: 600;
|
||||
@@ -430,11 +437,9 @@ a,
|
||||
inset: 0 !important;
|
||||
height: fit-content;
|
||||
margin: auto !important;
|
||||
max-width: calc(100vw - 1.5rem);
|
||||
min-width: min(calc(100vw - 1.5rem), 48rem) !important;
|
||||
min-width: 0 !important;
|
||||
transform: none !important;
|
||||
translate: 0 0 !important;
|
||||
width: min(calc(100vw - 1.5rem), 48rem) !important;
|
||||
border: 1px solid var(--border);
|
||||
border-radius: var(--radius-lg);
|
||||
background: var(--card);
|
||||
@@ -453,7 +458,6 @@ a,
|
||||
.page-enter,
|
||||
.route-transition,
|
||||
.table-row-enter,
|
||||
.dialog-panel-enter,
|
||||
.teatea-select-panel,
|
||||
.loading-progress {
|
||||
animation: none;
|
||||
|
||||
Reference in New Issue
Block a user