import React from 'react'; import { Scissors } from 'lucide-react'; import { TypewriterText } from './common/TypewriterText'; import { ContentCard } from './common/ContentCard'; import { ProgressBar } from './common/ProgressBar'; import { DotLoading } from './common/DotLoading'; import { SkeletonCard } from './common/SkeletonCard'; import { IconLoading } from './common/IconLoading'; interface EditingContent { rhythm?: { stableId: string; concept: string; application: string; current: string; progress: number; }; audioVideo?: Array<{ id: string; stableId: string; aspect: string; details: string; sync?: string; balance?: string; progress: number; }>; emotionProgression?: { stableId: string; stages: string; techniques: string; current: string; progress: number; }; transitions?: Array<{ id: string; stableId: string; type: string; usage: string; }>; styleUnity?: { stableId: string; colorGrading: string; toneCurve: string; progress: number; }; finalOutput?: { format: string; resolution: string; bitrate: string; audio: string; duration: string; status: string; progress: number; }; } interface EditorProps { currentContent: EditingContent; isPlaying: boolean; } const Editor: React.FC = ({ currentContent, isPlaying }) => { return (
{/* 剪辑节奏把控 */}

剪辑节奏把控

{currentContent.rhythm ? (
节奏理念
实际应用
当前状态
) : (
{Array.from({length: 3}, (_, i) => ( ))}
)}
{/* 音画关系处理 */}

音画关系处理

{currentContent.audioVideo ? ( currentContent.audioVideo.map((av) => (
{av.aspect}
{av.sync && `同步精度: ${av.sync}`} {av.balance && `平衡策略: ${av.balance}`}
)) ) : ( Array.from({length: 3}, (_, i) => ( )) )}
{/* 情绪递进调校 */}

情绪递进调校

{currentContent.emotionProgression ? (
递进阶段
调校技法
当前进度
) : (
{Array.from({length: 3}, (_, i) => ( ))}
)}
{/* 转场效果选择 */}

转场效果选择

{currentContent.transitions ? ( currentContent.transitions.map((trans) => (
{trans.type}
)) ) : ( Array.from({length: 4}, (_, i) => ( )) )}
{/* 整体风格统一 */}

整体风格统一

{currentContent.styleUnity ? (
调色统一
色调曲线
) : (
{Array.from({length: 2}, (_, i) => ( ))}
)}
{/* 最终输出 */}

最终输出 {currentContent.finalOutput ? ( ) : ( )}

{currentContent.finalOutput ? ( <>
{Object.entries({ '格式': currentContent.finalOutput.format, '分辨率': currentContent.finalOutput.resolution, '码率': currentContent.finalOutput.bitrate }).map(([key, value]) => (
{key}: {value}
))}
{Object.entries({ '音频': currentContent.finalOutput.audio, '时长': currentContent.finalOutput.duration, '状态': currentContent.finalOutput.status }).map(([key, value]) => (
{key}: {value}
))}
) : ( <>
{Array.from({length: 3}, (_, i) => ( ))}
{Array.from({length: 3}, (_, i) => ( ))}
)}
); }; export default Editor;