diff --git a/components/ChatInputBox/ChatInputBox.tsx b/components/ChatInputBox/ChatInputBox.tsx index 2e9677c..e7d64d0 100644 --- a/components/ChatInputBox/ChatInputBox.tsx +++ b/components/ChatInputBox/ChatInputBox.tsx @@ -591,7 +591,7 @@ const RenderTemplateStoryMode = ({ * 视频工具面板组件 * 提供脚本输入和视频克隆两种模式,支持展开/收起功能 */ -export function ChatInputBox() { +export function ChatInputBox({ noData }: { noData: boolean }) { // 控制面板展开/收起状态 const [isExpanded, setIsExpanded] = useState(false); @@ -670,28 +670,36 @@ export function ChatInputBox() { }; return ( -
+
{/* 视频故事板工具面板 - 毛玻璃效果背景 */}
{/* 展开/收起控制区域 */} - {isExpanded ? ( - // 展开状态:显示收起按钮和提示 -
setIsExpanded(false)} - > - - Click to action -
- ) : ( - // 收起状态:显示展开按钮 -
setIsExpanded(true)} - > - -
- )} + { + !noData && ( + <> + {isExpanded ? ( + // 展开状态:显示收起按钮和提示 +
setIsExpanded(false)} + > + + Click to action +
+ ) : ( + // 收起状态:显示展开按钮 +
setIsExpanded(true)} + > + +
+ )} + + ) + } {/* 主要内容区域 - 简化层级,垂直居中 */}
setScript(e.target.value)} placeholder="Describe the content you want to action..." className="w-full pl-[10px] pr-[10px] py-[14px] rounded-[10px] leading-[20px] text-sm border-none bg-transparent text-white placeholder:text-white/[0.40] focus:outline-none resize-none min-h-[48px] max-h-[120px] overflow-y-auto" + style={noData ? { + minHeight: '128px' + } : {}} rows={1} onInput={(e) => { const target = e.target as HTMLTextAreaElement; diff --git a/components/QueueBox/QueueNotification.tsx b/components/QueueBox/QueueNotification.tsx new file mode 100644 index 0000000..e296513 --- /dev/null +++ b/components/QueueBox/QueueNotification.tsx @@ -0,0 +1,183 @@ +import { notification } from 'antd'; + +const darkGlassStyle = { + background: 'rgba(30, 32, 40, 0.95)', + backdropFilter: 'blur(10px)', + WebkitBackdropFilter: 'blur(10px)', + border: '1px solid rgba(255, 255, 255, 0.08)', + borderRadius: '8px', + boxShadow: '0 4px 16px rgba(0, 0, 0, 0.4)', + padding: '12px 16px', +}; + +/** 胶片容器样式 */ +const filmStripContainerStyle = { + position: 'relative' as const, + width: '100%', + height: '80px', + marginBottom: '16px', + overflow: 'hidden', +}; + +/** 胶片样式 */ +const filmStripStyle = { + display: 'flex', + alignItems: 'center', + animation: 'filmScroll 20s linear infinite', +}; + +/** 文字样式 */ +const textStyle = { + fontSize: '13px', + color: 'rgba(255, 255, 255, 0.9)', + marginBottom: '12px', +}; + +/** 胶片帧组件 */ +const FilmFrame = () => ( +
+ + {/* 胶片外框 */} + + {/* 齿孔 */} + + + + + {/* 胶片画面区域 */} + + +
+); + +/** 放映机音效组件 */ +const ProjectorSound = () => ( +