30 lines
1.3 KiB
TypeScript
30 lines
1.3 KiB
TypeScript
// T4-a · 顶部 AI 工具条数据(纯逻辑,UX §3/§5)。
|
||
// 把高频 AI 动作(写本章/审稿/大纲/设定库/工具箱)做成常驻一排,根治「命令面板太隐蔽」。
|
||
// 只露已实现能力;新生成器(创作工具箱 B 组)落地后并入工具箱入口。
|
||
// 组件只渲染;条目与激活键集中在此,复用 ActiveNav 高亮规则。
|
||
|
||
import type { ActiveNav } from "./items";
|
||
|
||
export interface AiToolItem {
|
||
href: string;
|
||
label: string;
|
||
// 行首字形(纸感,非语义;aria-hidden 渲染)。
|
||
glyph: string;
|
||
// 高亮键(与 AppShell activeNav 比对)。
|
||
key: ActiveNav;
|
||
// 主动作(写本章)朱砂强调,其余次级。
|
||
primary?: boolean;
|
||
}
|
||
|
||
// 项目内页 AI 工具条条目(按已实现能力露出)。
|
||
export function aiToolItems(projectId: string): AiToolItem[] {
|
||
const base = `/projects/${projectId}`;
|
||
return [
|
||
{ href: `${base}/write`, label: "写本章", glyph: "✍", key: "write", primary: true },
|
||
{ href: `${base}/review`, label: "审稿", glyph: "✦", key: "review" },
|
||
{ href: `${base}/outline`, label: "大纲", glyph: "❡", key: "outline" },
|
||
{ href: `${base}/codex`, label: "设定库", glyph: "❖", key: "codex" },
|
||
{ href: `${base}/toolbox`, label: "工具箱", glyph: "✧", key: "toolbox" },
|
||
];
|
||
}
|