auto-save 2026-05-13 15:05 (~2)
This commit is contained in:
@@ -1735,6 +1735,13 @@
|
||||
"type": "session-heartbeat",
|
||||
"message": "Claude 会话活跃 · 最近命令:claude · 2 项未提交变更 · 最近提交:auto-save 2026-05-13 14:54 (~2)",
|
||||
"files_changed": 2
|
||||
},
|
||||
{
|
||||
"ts": "2026-05-13T15:00:36+08:00",
|
||||
"type": "commit",
|
||||
"message": "auto-save 2026-05-13 15:00 (~2)",
|
||||
"hash": "dfa5600",
|
||||
"files_changed": 2
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
@@ -32,13 +32,21 @@ export function StoryboardBar({ job, selectedFrames, focusedFrame, onFocusFrame
|
||||
)
|
||||
|
||||
// focused 分镜数据
|
||||
const focusFrame = focusedFrame !== null
|
||||
? job.frames.find((f) => f.index === focusedFrame) ?? null
|
||||
: null
|
||||
const focusSeq = focusFrame
|
||||
? job.frames.filter((f) => selectedFrames.has(f.index) && f.timestamp <= focusFrame.timestamp).length
|
||||
: 0
|
||||
const focusElements = focusFrame?.elements ?? []
|
||||
// 所有"已进入分镜阶段"的提取图(按分镜时间序展平)
|
||||
type Shot = { frameIdx: number; seq: number; elementId: string; elementName: string; cid: string; isLegacy: boolean }
|
||||
const allShots: Shot[] = []
|
||||
frames.forEach((f, i) => {
|
||||
const seq = i + 1
|
||||
;(f.elements ?? []).forEach((e) => {
|
||||
if (e.cutouts && e.cutouts.length > 0) {
|
||||
e.cutouts.forEach((cid) => allShots.push({
|
||||
frameIdx: f.index, seq, elementId: e.id, elementName: e.name_zh, cid, isLegacy: false,
|
||||
}))
|
||||
} else if (e.cutout_id) {
|
||||
allShots.push({ frameIdx: f.index, seq, elementId: e.id, elementName: e.name_zh, cid: e.cutout_id, isLegacy: true })
|
||||
}
|
||||
})
|
||||
})
|
||||
|
||||
return (
|
||||
<div className="relative z-20 flex-shrink-0 border-b border-white/5 bg-black/30 backdrop-blur-xl">
|
||||
|
||||
Reference in New Issue
Block a user