- 左栏三组分区 + 当前分区的节;窄屏为搜索框、分组下拉和节的横排胶囊 - 搜索框按分区、节、节别名和字段名定位,选中字段时滚到该字段并聚焦 - 旧 hash(#automation/cache、#api-keys、#library/scrape 等)replace 到新位置 - 下载器分区放下载盘水位与保种缺省值,名字与实例抽屉统一(暂停线 / 恢复线 / 保种天数) - 新增获取、整理与刮削、系统、缓存分区;API Key 并入账户与安全,快捷键移到界面 - 补上缺的入口:最小视频体积、子会话并发与层数、搜索站点;日志保留天数(已废弃)不再显示 - 缓存分区按区列出条数、占用、最近写入,单区清空二次确认;TMDB 与图片缓存并入 - 保存提示统一为「已保存「节名」」;按入库口径把相关文案改成「整理」 Co-Authored-By: Claude Opus 5.5 <[email protected]> Claude-Session: https://claude.ai/code/session_01Cxwgnn2pbzQ7rXv3rq7fei
43 lines
1.5 KiB
TypeScript
43 lines
1.5 KiB
TypeScript
import { AgentShortcutsHelp } from "~/components/console/agent-launcher.tsx";
|
|
import { Switch } from "~/components/ui/switch.tsx";
|
|
import { setUiPref, useUiPrefs } from "~/lib/ui-prefs.ts";
|
|
import { anchorId, SettingsBlock } from "./settings-block.tsx";
|
|
|
|
// 界面:本机显示偏好(存浏览器,不进 settings 表)与快捷键说明
|
|
|
|
export function InterfaceSection() {
|
|
return (
|
|
<div className="grid grid-cols-1 gap-8">
|
|
<DisplayBlock />
|
|
{/* 快捷键说明自带标题,只包卡片与锚点 */}
|
|
<section id={anchorId("interface", "shortcuts")} className="pg-slab min-w-0 scroll-mt-20 rounded-xl p-5 sm:p-6">
|
|
<AgentShortcutsHelp />
|
|
</section>
|
|
</div>
|
|
);
|
|
}
|
|
|
|
function DisplayBlock() {
|
|
const prefs = useUiPrefs();
|
|
return (
|
|
<SettingsBlock section="interface" anchor="display" title="显示">
|
|
<div className="flex items-start justify-between gap-4">
|
|
<div className="min-w-0">
|
|
<p className="text-sm font-medium text-foreground" id="ui-techinfo-label">
|
|
默认展开技术信息
|
|
</p>
|
|
<p className="mt-1 text-caption text-muted-foreground">
|
|
ID、hash、token 数、耗时和原始错误码平时收在「技术信息」里。开启后各页默认展开。
|
|
</p>
|
|
</div>
|
|
<Switch
|
|
id="f-ui.techInfoExpanded"
|
|
aria-labelledby="ui-techinfo-label"
|
|
checked={prefs.techInfoExpanded}
|
|
onCheckedChange={(v) => setUiPref("techInfoExpanded", v)}
|
|
/>
|
|
</div>
|
|
</SettingsBlock>
|
|
);
|
|
}
|