From 30a4c46e1d6b2a783a084537027749c09b22904a Mon Sep 17 00:00:00 2001 From: kang Date: Tue, 12 May 2026 19:14:42 +0800 Subject: [PATCH] auto-save 2026-05-12 19:14 (~3) --- .memory/worklog.json | 7 ++ web/app/page.tsx | 13 ++- web/components/dashboard.tsx | 189 ++++++++++++++++++----------------- 3 files changed, 112 insertions(+), 97 deletions(-) diff --git a/.memory/worklog.json b/.memory/worklog.json index bcdbc19..dfc0d98 100644 --- a/.memory/worklog.json +++ b/.memory/worklog.json @@ -223,6 +223,13 @@ "message": "auto-save 2026-05-12 19:03 (~1)", "hash": "50d6390", "files_changed": 1 + }, + { + "ts": "2026-05-12T19:09:08+08:00", + "type": "commit", + "message": "auto-save 2026-05-12 19:08 (~3)", + "hash": "67bbdae", + "files_changed": 3 } ] } diff --git a/web/app/page.tsx b/web/app/page.tsx index 1127ad3..7e177b6 100644 --- a/web/app/page.tsx +++ b/web/app/page.tsx @@ -226,7 +226,7 @@ export default function Home() { return ( <>
-
+
{/* 右上工具 */}
{job && ( @@ -240,12 +240,15 @@ export default function Home() {
- {/* 上区:折叠看板 — 默认仅一条 tile 栏,点击 tile 才展开 */} -
+ {/* 左侧:竖向 tile 看板(固定 200px 宽) */} +
+ - {/* 下区:紧凑 DAG 节点流图(撑满剩余高度) */} + {/* 右区:紧凑 DAG 节点流图(撑满剩余宽度) */}
setExpanded(new Set()) - const Tile = ({ tkey, rowSpan }: { tkey: string; rowSpan?: boolean }) => { + const Tile = ({ tkey }: { tkey: string }) => { const t = TILES.find((x) => x.key === tkey)! const state = colState[t.key] const isOpen = expanded.has(t.key) @@ -150,52 +150,53 @@ export function Dashboard({ data }: Props) { type="button" onClick={() => toggleTile(t.key)} title={colSummary[t.key]} - className={`group rounded-md overflow-hidden border flex items-stretch transition ${ - rowSpan ? "row-span-2" : "" - } ${isOpen ? "border-violet-400/60 ring-2 ring-violet-400/40" : "border-white/10 hover:border-white/20"}`} - style={{ height: rowSpan ? "auto" : 30 }} + className={`group w-full rounded-md overflow-hidden border flex items-stretch transition ${ + isOpen ? "border-violet-400/60 ring-2 ring-violet-400/40" : "border-white/10 hover:border-white/20" + }`} + style={{ height: 36 }} > -
- {String(t.step).padStart(2, "0")} - {t.icon} - {t.title} +
+ {String(t.step).padStart(2, "0")} + {t.icon} + {t.title}
-
+
- +
) } return ( -
- {/* Tile Bar — DAG 拓扑布局:input/download/split → (关键帧路 / 转录路) → compose */} -
- - - - {/* 分叉:上下两路 */} -
-
- - - -
-
- - - -
-
- +
+
Pipeline
+ {/* 主线:input / download / split */} + + + + {/* 分叉:上路 关键帧/生图/生视频 */} +
+
视频路
+ + +
+ {/* 分叉:下路 转录/翻译/改写 */} +
+
音频路
+ + + +
+ {/* 合流 */} + - {/* 展开面板 — 从屏幕左侧滑出,竖向 sidebar drawer */} + {/* 展开面板 — 紧贴左侧 sidebar 右侧滑出,竖向单列 */} {expanded.size > 0 && (
{TILES.filter((t) => expanded.has(t.key)).map((t) => (
- -
产品信息
+ <> +