diff --git a/src/routes/admin/settings/+page.server.ts b/src/routes/admin/settings/+page.server.ts index 7d1ed57..7c58918 100644 --- a/src/routes/admin/settings/+page.server.ts +++ b/src/routes/admin/settings/+page.server.ts @@ -6,6 +6,7 @@ import { fetchAnalytics } from '$lib/server/cloudflare'; export const load: PageServerLoad = async ({ locals, platform }) => { const db = platform?.env?.DB; + const r2 = platform?.env?.R2; const settings: Record = {}; if (db) { @@ -22,6 +23,7 @@ export const load: PageServerLoad = async ({ locals, platform }) => { return { user: locals.user, platformEnv: db ? 'Cloudflare D1 (Connected)' : 'Local Mock', + r2Env: r2 ? 'Cloudflare R2 (Connected)' : 'Local Mock', settings, analytics: fetchAnalytics(platform) // Streaming promise }; diff --git a/src/routes/admin/settings/+page.svelte b/src/routes/admin/settings/+page.svelte index 081212c..5cad776 100644 --- a/src/routes/admin/settings/+page.svelte +++ b/src/routes/admin/settings/+page.svelte @@ -121,10 +121,6 @@

系统与安全环境

-
- 主题风格 - Typecho Theme VOID -
驱动框架 SvelteKit 5 + Cloudflare @@ -137,6 +133,10 @@ 数据库绑定 {data.platformEnv}
+
+ R2存储绑定 + {data.r2Env} +
鉴权模式 Cloudflare Access (Zero Trust) @@ -144,80 +144,83 @@
-
-

图片上传

-
{ - return async ({ update }) => { - await update({ reset: false }); - }; - }} - class="alias-form" - > - -

- 默认关闭。开启后,后台各入口上传的 JPEG / PNG 图片会在浏览器中以 80% 质量转换为 - WebP,保持原尺寸及透明背景。GIF、动态 PNG 和已有 WebP 保持原格式。 - 仅影响新上传图片;直接调用上传 API 的客户端需自行转换。 -

-
- -
-
-
- -
-

API 与 AI 集成

-

- 配置允许 AI 或第三方工具直接管理文章的 API 访问令牌 (Token)。请求 API 时请在 HTTP Header - 中添加 Authorization: Bearer <Token>。 -

- -
{ - return async ({ update }) => { - update({ reset: false }); - }; - }} - class="alias-form" - > -
- -
- - - +
+
+

图片上传

+ { + return async ({ update }) => { + await update({ reset: false }); + }; + }} + class="alias-form" + > + +

+ 默认关闭。开启后,后台各入口上传的 JPEG / PNG 图片会在浏览器中以 80% 质量转换为 + WebP,保持原尺寸及透明背景。GIF、动态 PNG 和已有 WebP 保持原格式。 + 仅影响新上传图片;直接调用上传 API 的客户端需自行转换。 +

+
+
-
-
- -
- + +
+ +
+

API 与 AI 集成

+

+ 配置允许 AI 或第三方工具直接管理文章的 API 访问令牌 (Token)。请求 API 时请在 HTTP Header + 中添加 Authorization: Bearer <Token>。 +

+ +
{ + return async ({ update }) => { + update({ reset: false }); + }; + }} + class="alias-form" + style="height: 100%; display: flex; flex-direction: column;" + > +
+ +
+ + + +
+
+
+ +
+
+
{/if} @@ -387,6 +390,20 @@ } } + .two-columns-row { + display: grid; + grid-template-columns: 1fr 1fr; + gap: 25px; + align-items: stretch; + width: 100%; + } + + @media (max-width: 1024px) { + .two-columns-row { + grid-template-columns: 1fr; + } + } + .full-width { grid-column: 1 / -1; }