[优化] 优化界面

This commit is contained in:
ryan
2026-06-01 10:54:26 +08:00
parent fd745d33cb
commit 77bdb8bf0e
13 changed files with 56 additions and 14 deletions
@@ -10,6 +10,7 @@ export function Toaster({ ...props }: ToasterProps) {
return (
<Sonner
position="bottom-right"
theme={resolvedTheme as ToasterProps['theme']}
className="toaster group"
toastOptions={{
@@ -116,7 +116,11 @@ export function OriginDetailPage({ originId }: { originId: string }) {
/>
{feedback ? (
<InlineMessage tone={feedback.tone} message={feedback.message} />
<InlineMessage
tone={feedback.tone}
message={feedback.message}
onClear={() => setFeedback(null)}
/>
) : null}
<div className="grid gap-4 xl:grid-cols-4">
@@ -1252,7 +1252,11 @@ export function ProxyRouteConfigPage({
/>
{feedback ? (
<InlineMessage tone={feedback.tone} message={feedback.message} />
<InlineMessage
tone={feedback.tone}
message={feedback.message}
onClear={() => setFeedback(null)}
/>
) : null}
<div className="grid gap-6 xl:grid-cols-[280px_minmax(0,1fr)]">
@@ -2004,7 +2004,11 @@ export function SettingsPage() {
<PageHeader title="设置" />
{feedback ? (
<InlineMessage tone={feedback.tone} message={feedback.message} />
<InlineMessage
tone={feedback.tone}
message={feedback.message}
onClear={() => setFeedback(null)}
/>
) : null}
<div className="flex flex-wrap gap-3">
@@ -166,7 +166,11 @@ export function TlsCertificatesPage() {
/>
{feedback ? (
<InlineMessage tone={feedback.tone} message={feedback.message} />
<InlineMessage
tone={feedback.tone}
message={feedback.message}
onClear={() => setFeedback(null)}
/>
) : null}
<AppCard
@@ -159,7 +159,11 @@ export function TunnelsPage() {
/>
{feedback ? (
<InlineMessage tone={feedback.tone} message={feedback.message} />
<InlineMessage
tone={feedback.tone}
message={feedback.message}
onClear={() => setFeedback(null)}
/>
) : null}
<AppCard
@@ -305,7 +305,11 @@ export function UsersPage() {
/>
{feedback ? (
<InlineMessage tone={feedback.tone} message={feedback.message} />
<InlineMessage
tone={feedback.tone}
message={feedback.message}
onClear={() => setFeedback(null)}
/>
) : null}
<AppCard
@@ -752,9 +752,6 @@ export function WAFIPGroupsPage() {
</div>
</div>
)}
<div className="rounded-2xl bg-[var(--surface-muted)] p-4 text-xs text-[var(--foreground-secondary)] leading-relaxed">
💡 提示:抓取记录持久化存储在 IP 组的 <code>ext_ips</code> 扩展字段中。未来如需为已抓取到的 IP 记录更多维度的扩展元数据,可直接在此 JSON 对象中添加字段以供扩展。
</div>
</div>
</AppModal>
) : null}
@@ -340,7 +340,11 @@ export function WAFPage() {
/>
{feedback ? (
<InlineMessage tone={feedback.tone} message={feedback.message} />
<InlineMessage
tone={feedback.tone}
message={feedback.message}
onClear={() => setFeedback(null)}
/>
) : null}
<div className="grid gap-5 xl:grid-cols-[360px_minmax(0,1fr)]">
@@ -163,7 +163,11 @@ export function CertificateApplyModal({
>
<form className="space-y-5" onSubmit={onSubmit}>
{feedback ? (
<InlineMessage tone={feedback.tone} message={feedback.message} />
<InlineMessage
tone={feedback.tone}
message={feedback.message}
onClear={() => setFeedback(null)}
/>
) : null}
<div className="grid gap-4 md:grid-cols-2">
@@ -147,7 +147,11 @@ export function CertificateImportModal({
>
<div className="space-y-6">
{feedback ? (
<InlineMessage tone={feedback.tone} message={feedback.message} />
<InlineMessage
tone={feedback.tone}
message={feedback.message}
onClear={() => setFeedback(null)}
/>
) : null}
<div className="inline-flex rounded-2xl border border-[var(--border-default)] bg-[var(--surface-elevated)] p-1">
@@ -279,7 +279,11 @@ export function WebsiteDetailPage({ websiteId }: { websiteId: string }) {
/>
{feedback ? (
<InlineMessage tone={feedback.tone} message={feedback.message} />
<InlineMessage
tone={feedback.tone}
message={feedback.message}
onClear={() => setFeedback(null)}
/>
) : null}
<div className="grid gap-4 xl:grid-cols-4">
@@ -113,7 +113,11 @@ export function WebsitesPage() {
/>
{feedback ? (
<InlineMessage tone={feedback.tone} message={feedback.message} />
<InlineMessage
tone={feedback.tone}
message={feedback.message}
onClear={() => setFeedback(null)}
/>
) : null}
<AppCard