auto-save 2026-05-13 16:06 (+1, ~3)

This commit is contained in:
2026-05-13 16:07:03 +08:00
parent f30f6c46d1
commit 223b258aea
4 changed files with 402 additions and 9 deletions

View File

@@ -15,6 +15,7 @@ import {
import { ThemeToggle } from "@/components/theme-toggle"
import { Dashboard, type DashboardHandle } from "@/components/dashboard"
import { StoryboardBar } from "@/components/storyboard-bar"
import { StoryboardWorkbench } from "@/components/storyboard-workbench"
import { addManualFrame, analyzeJob, createJob, getJob, uploadJob, deleteFrame, deleteGeneratedImage, pushStoryboardImage, type Job } from "@/lib/api"
import { VideoLightbox } from "@/components/video-lightbox"
@@ -66,6 +67,7 @@ export default function Home() {
const [expandedFrame, setExpandedFrame] = useState<number | null>(null)
const [videoLightboxOpen, setVideoLightboxOpen] = useState(false)
const [storyboardFrame, setStoryboardFrame] = useState<number | null>(null)
const [workbenchOpen, setWorkbenchOpen] = useState(false)
const dashboardRef = useRef<DashboardHandle>(null)
// 把 setJob(prev=>...) 翻译成 setJobs 里更新当前 active
@@ -335,6 +337,7 @@ export default function Home() {
focusedFrame={storyboardFrame}
onFocusFrame={setStoryboardFrame}
onJobUpdate={setJob as any}
onOpenWorkbench={() => setWorkbenchOpen(true)}
/>
<div className="relative flex-1 min-h-0">
<ReactFlow
@@ -369,6 +372,15 @@ export default function Home() {
onAddFrame={handleAddManualFrame}
/>
{/* 分镜头编排工作台 — 全屏覆盖 DAG */}
<StoryboardWorkbench
job={job}
selectedFrames={selectedFrames}
open={workbenchOpen}
onClose={() => setWorkbenchOpen(false)}
onJobUpdate={setJob as any}
/>
</main>
</>
)