Commit Graph

529 Commits

Author SHA1 Message Date
root 637c4e036f fix: 修复参数配置中数值为0时无法正确显示的问题
修复了ComfyUI V2工作流模板参数配置中的关键bug:

🐛 问题描述:
- 当数值参数(最小值、最大值、步长、默认值等)设置为0时,由于JavaScript的falsy值特性,使用 || 操作符会导致显示空字符串而不是0

🔧 修复内容:
-  最小值字段:schema.min || '' → schema.min !== undefined ? schema.min : ''
-  最大值字段:schema.max || '' → schema.max !== undefined ? schema.max : ''
-  步长字段:schema.step || '' → schema.step !== undefined ? schema.step : ''
-  默认值字段(数字类型):schema.default || '' → schema.default !== undefined ? schema.default : ''
-  宽度字段:schema.width || '' → schema.width !== undefined ? schema.width : ''
-  高度字段:schema.height || '' → schema.height !== undefined ? schema.height : ''
-  时长字段:schema.duration || '' → schema.duration !== undefined ? schema.duration : ''
-  文件大小字段:schema.maxSize ? Math.round(...) → schema.maxSize !== undefined ? Math.round(...) : ''

💡 技术细节:
- 使用 !== undefined 检查而不是 || 操作符,确保0值能正确显示
- 保持字符串字段使用 || '' 的逻辑,因为空字符串是合理的默认值
- 确保所有数值类型字段都能正确处理0值

🎯 影响范围:
- 整数类型参数的最小值、最大值、步长配置
- 浮点数类型参数的数值范围设置
- 媒体类型参数的尺寸和大小限制
- 所有数值类型的默认值设置

这个修复确保了用户可以正确设置0作为参数值,
特别重要的是最小值为0的场景(如步长、范围等)。
2025-08-08 22:38:01 +08:00
root 4b016c2702 feat: 实现ComfyUI V2工作流模板参数配置折叠表单功能
根据ComfyUI SDK规范,为参数配置添加了折叠表单功能,提供简洁的信息展示和详细的配置表单:

🎯 核心功能:
-  折叠/展开控制:每个参数都有独立的折叠状态管理
-  简洁信息展示:参数名称、类型、默认值、描述的概览
-  详细配置表单:展开后显示完整的参数配置选项
-  类型图标标识:不同参数类型使用不同颜色和图标

🎨 用户界面优化:
- 参数卡片式设计,支持折叠/展开
- 类型标签和必填标识的视觉提示
- 悬停效果和交互反馈
- 简洁的信息概览和详细配置分离

🛠 技术实现:
- 使用Set管理展开状态,支持多个参数同时展开
- 类型图标映射系统,每种类型有专属图标和颜色
- 智能值格式化显示,根据类型优化显示效果
- 事件冒泡控制,确保删除按钮不触发展开/折叠

📱 交互体验:
- 点击参数卡片头部切换展开/折叠状态
- 展开状态下显示完整的参数配置表单
- 折叠状态下显示关键信息概览
- 删除按钮独立操作,不影响折叠状态

这个实现大大提升了参数配置的用户体验,
让用户能够快速浏览参数概览,按需展开详细配置。
2025-08-08 22:32:20 +08:00
root d7e1ce792f feat: 增强ComfyUI V2工作流模板参数配置,支持专业AI工作流参数类型
根据ComfyUI SDK规范和AI工作流需求,大幅增强参数配置功能:

🎯 新增专业参数类型:
-  图片 (Image) - 支持JPG/PNG/WebP等格式,文件大小限制,尺寸推荐
-  音频 (Audio) - 支持MP3/WAV/FLAC等格式,时长限制
-  视频 (Video) - 支持MP4/AVI/MOV等格式,尺寸和时长限制
-  整数 (Integer) - 默认步长1,范围0-100,默认值10
-  浮点数 (Float) - 默认步长0.01,范围0.0-1.0,默认值0.3

🛠 智能默认配置:
- 根据参数类型自动应用合适的默认值和约束
- 整数类型:步长1,最小0,最大100,默认10
- 浮点数类型:步长0.01,最小0.00,最大1.0,默认0.3
- 媒体类型:预设文件格式、大小限制和质量要求

🎨 增强用户界面:
- 分组显示参数类型(基础/数值/媒体)
- 根据类型动态显示相应的配置选项
- 智能输入控件(数字步长、布尔选择器、文件格式提示)
- 专业的媒体参数配置(格式、大小、尺寸、时长)

🔧 技术特性:
- 扩展ParameterSchema接口支持媒体属性
- 类型切换时自动应用默认配置
- 完整的参数验证和约束设置
- 符合ComfyUI SDK的参数规范

这个增强使工作流模板能够处理复杂的AI工作流场景,
特别适合图像生成、音频处理、视频编辑等专业应用。
2025-08-08 22:25:57 +08:00
root 931285b4f2 feat: 实现ComfyUI V2工作流模板参数配置功能
根据ComfyUI SDK规范,完整实现了工作流模板的参数配置功能:

核心功能:
-  参数添加/删除:支持动态添加和删除模板参数
-  参数类型支持:string、number、boolean、array、object
-  参数属性配置:默认值、描述、必填状态
-  类型特定配置:数字类型的最小/最大值、字符串的正则验证
-  实时预览:参数配置实时更新到模板数据中

技术实现:
- 符合ComfyUI SDK的ParameterSchema接口规范
- 支持{{参数名}}语法在工作流中引用参数
- 完整的表单验证和用户体验优化
- 响应式设计,支持不同屏幕尺寸

用户界面:
- 直观的参数管理界面
- 参数类型选择器
- 条件显示的高级配置选项
- 空状态提示和使用说明
- 删除确认和错误处理

这个实现为ComfyUI工作流模板提供了强大的参数化能力,
使模板更加灵活和可重用。
2025-08-08 22:19:27 +08:00
root 45f31c7aaa fix: 修复WorkflowManager中WorkflowV2Creator未定义的错误
- 将WorkflowManager中的WorkflowV2Creator替换为WorkflowTemplateCreator
- 更新模态框调用,使用正确的comfyui_v2_create_template接口
- 清理未使用的导入和变量
- 确保前端组件与后端ComfyUI SDK接口完全匹配

修复内容:
-  替换组件引用:WorkflowV2Creator -> WorkflowTemplateCreator
-  更新接口调用:使用comfyui_v2_create_template命令
-  清理代码:移除未使用的DocumentDuplicateIcon、createWorkflow、selectAllWorkflows
-  保持功能完整性:模板创建、保存、错误处理流程不变
2025-08-08 22:15:19 +08:00
root 1b9eec8050 feat: 创建符合ComfyUI SDK规范的工作流模板创建器
- 创建了新的WorkflowTemplateCreator组件,专门用于创建符合ComfyUI SDK规范的WorkflowTemplateData格式模板
- 支持模板元数据配置(ID、名称、描述、版本、作者、分类、标签)
- 支持ComfyUI工作流JSON导入和编辑
- 支持参数配置(预留接口)
- 实现了完整的表单验证和错误处理
- 自动生成模板ID功能
- 为后续与ComfyUI SDK模板系统集成做准备

主要特性:
-  符合ComfyUI SDK的WorkflowTemplateData格式
-  完整的模板元数据管理
-  JSON文件导入功能
-  表单验证和错误提示
-  自动ID生成
-  响应式设计
2025-08-08 22:12:02 +08:00
root 733506cd70 fix: 修复ComfyUI V2工作流创建接口参数不匹配问题
- 修复前端CreateWorkflowRequest接口定义,使用workflow_json而不是workflow_data
- 更新WorkflowV2Creator组件以匹配后端接口参数
- 移除不必要的category字段,与后端保持一致
- 修复所有相关的字段引用和错误处理
- 确保前后端接口参数完全匹配
2025-08-08 21:51:06 +08:00
root ada3eb94ed fix: 修复ComfyUI V2工作流TAB新建工作流功能
- 在WorkflowManager组件中添加了WorkflowV2Creator模态框的渲染
- 创建了新的WorkflowV2Creator组件,专门用于ComfyUI V2工作流创建
- 添加了createWorkflow方法到useComfyUIV2Store的解构中
- 实现了完整的工作流创建流程,包括基本信息、工作流配置和高级设置
- 支持JSON文件导入和手动编辑工作流数据
- 添加了表单验证和错误处理
- 修复了点击新建工作流按钮没有反应的问题
2025-08-08 21:41:22 +08:00
root 59763b1bf4 fix(comfyui): 修复ComfyUI V2连接状态管理问题
- 修复comfyui_v2_connect命令,使用ServiceManager正确管理连接状态
- 修复comfyui_v2_disconnect命令,通过ServiceManager断开连接
- 修复comfyui_v2_get_connection_status命令,返回真实的连接状态
- 解决'获取队列状态失败: 客户端未连接'错误
- 确保连接的管理器实例被正确保存到AppState中

问题原因:
之前的实现创建了临时的ComfyUIManager实例进行连接,
但没有将已连接的实例保存到AppState中,导致后续调用
comfyui_v2_get_queue_status时使用的是未连接的管理器。

解决方案:
通过ServiceManager统一管理ComfyUI连接状态,确保所有
命令使用同一个管理器实例,保持连接状态的一致性。
2025-08-08 20:17:53 +08:00
imeepos 6e59210871 fix: comfy ui sdk bug 2025-08-08 20:08:41 +08:00
杨明明 643a1570a6 修复 ComfyUI V2 配置功能
- 添加 ComfyUI 表的数据库迁移到迁移管理器中
- 修复前端调用 comfyui_v2_update_config 和 comfyui_v2_validate_config 的参数名
- 解决 'no such table: comfyui_configs' 错误
- 解决 'missing required key configRequest' 错误
2025-08-08 19:37:40 +08:00
imeepos d9e4cd3d3b Merge branch 'master' of gitee.com:meepo_vip/mixvideo 2025-08-08 19:29:20 +08:00
imeepos dd0584a49e fix: cargo check --lib error 2025-08-08 19:29:08 +08:00
杨明明 dd37c211b6 完成ComfyUI连接系统重构和测试
- 修复编译错误,添加缺失的WorkflowType导入
- 创建ComfyUI配置测试模块,验证功能正确性
- 确保所有代码能够正常编译和运行
- 完成ComfyUI V2连接功能的完整重构:
  * 统一数据库和migration系统
  * 实现配置持久化和应用初始化
  * 修复配置刷新页面失效问题
  * 使用连接池提高性能
  * 提供完整的配置管理API

所有任务已完成,ComfyUI连接系统现在使用统一的架构和持久化配置。
2025-08-08 19:04:55 +08:00
杨明明 7039ebd2ae 实现ComfyUI配置持久化和应用初始化
- 创建ComfyUI V2配置命令模块(comfyui_v2_config_commands.rs)
- 实现配置的获取、更新、验证、重置和连接测试功能
- 在ServiceManager和ComfyUIRepository中添加配置管理方法
- 修复ComfyUI SDK客户端配置结构的使用
- 在应用启动时异步初始化配置管理器和ComfyUI管理器
- 确保配置能够正确保存到数据库并在应用重启后加载
- 移除旧的重复配置命令,使用新的统一配置系统
2025-08-08 19:00:36 +08:00
杨明明 25a98d3612 重构ComfyUI连接系统:统一数据库和配置管理
- 修复AppState结构,添加comfyui_manager和config_manager字段
- 重构配置管理系统,移除临时硬编码配置
- 统一数据库系统,将ComfyUI表集成到主数据库
- 创建ComfyUI数据库migration文件(033_create_comfyui_tables.sql)
- 更新ComfyUIRepository使用连接池,强制启用连接池模式
- 修复所有命令文件中的服务管理器调用
- 解决编译错误,确保代码可以正常编译
2025-08-08 18:44:09 +08:00
杨明明 e9be3199ea feat: 统一数据库和migration系统 2025-08-08 18:39:55 +08:00
杨明明 ba121dfb3b feat: 统一数据库和migration系统 2025-08-08 18:37:02 +08:00
杨明明 b543935a9f feat: 统一数据库和migration系统 2025-08-08 18:35:59 +08:00
imeepos 3bb7cdae23 fix: cargo check --lib error 2025-08-08 18:16:52 +08:00
imeepos 45041a838b fix: remove warning 2025-08-08 17:42:19 +08:00
imeepos 6b7aeb584d fix: cargo check --lib error 2025-08-08 17:31:03 +08:00
imeepos 9cfe043a9f fix: cargo check --lib error 2025-08-08 16:49:24 +08:00
imeepos 04ba451762 fix: cargo check --lib error 2025-08-08 16:40:07 +08:00
杨明明 60221bd457 fix: cargo check --lib error 2025-08-08 16:35:41 +08:00
杨明明 13e7d640e3 fix: cargo check --lib error 2025-08-08 16:25:01 +08:00
杨明明 e69ce2b817 fix: 修复ComfyUI SDK的cargo check和clippy警告
- 修复ComfyUIError中WebSocket变体过大的问题,使用Box包装
- 添加自定义From实现处理Box包装的WebSocket错误
- 修复所有格式化字符串警告,使用内联格式化
- 移除无用的类型转换(reqwest::Error::from)
- 修复代码质量问题:
  - 简化if语句嵌套
  - 使用?操作符替代显式错误处理
  - 优化map迭代方式
  - 使用is_some_and替代map_or

修复内容:
- 44个clippy警告全部解决
- 所有测试通过
- cargo check --lib 无错误无警告
2025-08-08 16:12:25 +08:00
imeepos e874d281e0 fix: cargo check --lib error 2025-08-08 16:07:52 +08:00
杨明明 b6c363c304 feat: add md 2025-08-08 16:06:07 +08:00
杨明明 bae02e6141 feat: 集成ComfyUI界面到顶部导航栏
- 更新Navigation组件支持下拉菜单功能
- 添加ComfyUI子菜单,包含V2仪表板、集群管理、工作流测试
- 在App.tsx中添加ComfyUI相关页面路由配置
- 保持旧路由兼容性
- 优化导航交互体验,支持点击外部关闭下拉菜单

功能特性:
- 支持下拉菜单的导航系统
- ComfyUI功能模块化组织
- 响应式设计和动画效果
- 路由状态高亮显示
2025-08-08 16:04:52 +08:00
imeepos 589808d15a fix: cargo check --lib error 2025-08-08 16:01:08 +08:00
imeepos 1a6d72c113 fix: cargo check --lib error 2025-08-08 15:57:46 +08:00
杨明明 0142a92f31 feat: 核心业务逻辑实现 2025-08-08 15:52:37 +08:00
imeepos 6cc4e21044 fix: cargo check --lib error 2025-08-08 15:39:25 +08:00
imeepos fe97cba88d Merge branch 'feature/comfyui-sdk-rewrite' of gitee.com:meepo_vip/mixvideo into feature/comfyui-sdk-rewrite 2025-08-08 08:34:35 +01:00
imeepos 450cf14fda fix: 修复 cargo check --lib 编译错误
主要修复内容:
- 修复重复定义的 comfyui_v2_get_queue_status 函数,重命名为 comfyui_v2_get_queue_basic_status
- 修复 ValidationError 类型引用,统一使用 SDKValidationError
- 修复 ComfyUIConfig 和 ComfyuiConfig 类型不匹配,添加转换方法
- 修复 SDKValidationError::new 参数数量错误
- 修复时间戳转换的类型注解问题
- 修复 ErrorHandleResult 中的 Clone trait 问题
- 临时禁用 realtime_monitor.rs 中不存在的事件处理函数
- 修复 MonitorStatsV2 不存在的问题,使用 MonitorStats
- 修复 ComfyUIService 创建和 ComfyUIClient 克隆问题
- 修复同步方法错误使用 .await 的问题
- 修复 WorkflowTemplate::new 参数数量问题
- 修复各种类型不匹配和方法不存在的问题

这些修复解决了大部分编译错误,使项目能够通过 cargo check --lib 检查。
2025-08-08 15:34:31 +08:00
杨明明 79a76e499f feat: 完成第四阶段前端重构与UI优化
🎯 主要功能:
- 创建现代化的 ComfyUI V2 服务层和状态管理
- 实现完整的实时通信集成和事件处理
- 构建现代化UI组件库 (7个核心组件)
- 开发专业功能组件 (5个ComfyUI组件)
- 创建现代化主仪表板页面

🏗️ 新增组件:
- ComfyUIV2Service: 完整的API服务封装
- ComfyUIV2Store: 基于Zustand的状态管理
- UI组件库: Button, Input, Card, Modal, Toast, Loading, Form
- 功能组件: ConnectionPanel, WorkflowManager, ExecutionMonitor, RealtimeEventListener, QueueStatusMonitor
- ComfyUIV2Dashboard: 现代化主界面

🚀 技术特性:
- TypeScript类型安全
- 响应式状态管理
- 实时WebSocket通信
- 现代化UI设计
- 无障碍访问支持
- 高性能渲染优化

📊 统计:
- 新增文件: 18个
- 代码行数: ~2,800行
- UI组件: 7个核心 + 5个功能组件
- API方法: 30+个完整封装

Phase 4/5 完成 
2025-08-08 15:33:59 +08:00
imeepos d85bde176b fix: cargo check --lib error 2025-08-08 15:26:50 +08:00
杨明明 d66b8dd9f8 feat: 实时通信与高级功能 2025-08-08 15:14:14 +08:00
杨明明 6e1e825369 Merge branch 'feature/comfyui-sdk-rewrite' of gitee.com:meepo_vip/mixvideo into feature/comfyui-sdk-rewrite 2025-08-08 15:10:40 +08:00
杨明明 e1a8cd4d9d feat: 实时通信与高级功能 2025-08-08 15:10:06 +08:00
imeepos 094b73fffd fix: cargo check --lib error 2025-08-08 15:09:25 +08:00
imeepos d61e2e8f4c fix: comfyui sdk serde 2025-08-08 15:03:35 +08:00
imeepos eb81f106dd fix: 添加Serde序列化支持以修复Tauri IPC错误
- 为 comfyui_sdk::ValidationResult 和 ValidationError 添加序列化支持
- 为 ConfigStats 和 Environment 类型添加序列化支持
- 为 ExecutionStats、MonitorStats、CacheStats 添加序列化支持
- 修复 Tauri 命令返回类型不满足 IpcResponse trait 的问题
2025-08-08 15:02:41 +08:00
杨明明 8223061aea feat: 命令曾重写 2025-08-08 14:52:40 +08:00
杨明明 b7edee7688 feat: 基础架构重构 2025-08-08 14:38:54 +08:00
杨明明 0f13428101 feat: 核心服务重构 2025-08-08 14:33:00 +08:00
imeepos 96da074bc9 feat: comfy ui sdk 2025-08-08 14:09:31 +08:00
imeepos 3c247b2d3b fix: sdk 2025-08-08 13:52:49 +08:00
imeepos 5f6a302dfd feat: add comfyui sdk 2025-08-08 13:48:38 +08:00