返回 JoyAI-Echo
LongVideoGenPage.tsx
根目录 / echo_longvideo / Director_Agent / webui / src / components / longvideo / LongVideoGenPage.tsx
1 import { ThreadWorkplaceShell } from "@/components/director/ThreadWorkplaceShell";
2 import {
3 WorkflowSelector,
4 type WorkflowMode,
5 } from "@/components/director/WorkflowSelector";
6 import { WorkplaceProvider } from "@/providers/WorkplaceProvider";
7 import type { ChatSummary } from "@/lib/types";
8
9 interface LongVideoGenPageProps {
10 mode: "unselected" | WorkflowMode;
11 onModeChange: (mode: WorkflowMode) => void;
12 session: ChatSummary | null;
13 title: string;
14 onToggleSidebar: () => void;
15 onGoHome: () => void;
16 onNewChat: () => Promise<string | null>;
17 hideSidebarToggleOnDesktop?: boolean;
18 onReplyEnd?: () => void;
19 }
20
21 export function LongVideoGenPage(props: LongVideoGenPageProps) {
22 if (props.mode === "unselected") {
23 return <WorkflowSelector onSelect={props.onModeChange} />;
24 }
25 const sessionKey = props.session?.key ?? null;
26 const { mode, onModeChange: _onModeChange, ...shellProps } = props;
27 return (
28 <WorkplaceProvider sessionKey={sessionKey}>
29 <ThreadWorkplaceShell {...shellProps} quickMode={mode === "quick"} />
30 </WorkplaceProvider>
31 );
32 }
33
33 lines Plain Text