Commit Graph

73 Commits

Author SHA1 Message Date
6d922b66ff 忽略提交gitignore文件 2026-06-15 17:38:09 +08:00
7379488839 fix: 修复按钮状态恢复、Music 任务内容显示与比例标签为空,新增 platform_code 参数
- taskPolling: isSubGerenate=true 提前至 modelId 校验前,确保错误时按钮恢复;请求体新增 platform_code
- dialogBox: generateData 集成平台 getGenerateDataExtras 扩展字段
- Music 平台: 新增 getGenerateDataExtras() 输出 pureMusic/mode,供列表展示和再生成使用
- set.vue: 硬编码比例标签改为 secondTagText 计算属性,Music 显示纯音乐/有歌词,Painting/Video 从 modelParams 提取比例
2026-06-15 17:10:18 +08:00
4d76899488 chore: 清理 env 废弃变量、移除旧模型配置,补充 Music 平台文档与大小写归一化修复
- .env 文件移除未使用的 VITE_API_PAY_* 变量,更新生产环境 URL
- 删除 5 个已废弃的 model-configs JSON 文件
- CLAUDE.md 新增 Music 平台架构说明与计费类型映射
- getPlatformCode / getChargeType 增加输入大小写归一化
2026-06-15 16:55:34 +08:00
79afa037e2 chore: 移除调试文件 bug.txt/out.txt,忽略 .superpowers 与运维目录 2026-06-12 19:22:00 +08:00
2d12c5a20b feat: 新增 Music 音乐生成平台,遵循 Platform Descriptor 模式
基于旧项目 ai_music_v2.0 迁移,与 Painting/Video 统一架构:HTTP 轮询 + suanli 后端、
API 驱动配置、mode 独立 ref 驱动控件显隐。新增 AudioPlayer/CustomSlider 通用组件,
dialogBox/set.vue/taskPolling/modelApi 完成集成适配。
2026-06-12 19:20:18 +08:00
61867e4f59 feat: Video 平台新增图生视频/全能参考/主体参考三种生成模式
- pattern 控件改为支持 Element Plus 图标组件,部分选项改用图标替代 SVG
- 新增 isStr 函数区分图标组件与 SVG 图片路径
- 智能多帧选项暂时标记为 disabled
- modelSelector 增加新模式→modelType 映射(imageToVideo/allReference/subjectReference)
- imageUploader 增加新模式标签文本(参考图/主体)
- 平台注册表 key 统一转为小写,支持大小写不敏感查找
- 更新 workflow 上传地址
2026-06-12 16:07:36 +08:00
45a80b83ff docs: 修正 CLAUDE.md 目录结构、依赖描述与架构说明的准确性
- 修正 model-configs/ 路径(项目根目录,非 src/ 下)
- 标注 encrypt.ts 为死代码(依赖未安装,无引用)
- 修正 vue-element-plus-x 描述为"提供 Sender 输入框组件"
- 目录树新增 config/plugins.js、vite.config.js、src/assets/
- 请求拦截器路由表改为说明前缀来自环境变量
- 新增 VirtualScroller 自定义实现 vs npm 包冗余依赖说明
- 修正轮询间隔为"首次 5s + 后续 20s"
2026-06-10 16:51:36 +08:00
ab4e0591a9 fix: 修复虚拟列表悬浮时的字体抖动与闪烁问题
- Img 组件:移除 .img-element:hover scale(1.02) 放大效果
- VirtualScroller:移除 .virtual-scroller-item 的 backface-visibility 和 perspective,消除 GPU 合成层导致的文字抗锯齿切换
- set.vue:叠加按钮从 display:none 改为 opacity 控制显隐,避免 repaint 触发文字重光栅化
- set.vue:prompt 内 generate-data 从 v-show 改为 visibility:hidden,避免悬浮时布局变化导致的无限循环闪烁
2026-06-10 16:51:30 +08:00
6879b08fe3 style: 放宽输入框容器最大宽度至 1024px,避免参数控件挤压发送按钮 2026-06-10 15:12:26 +08:00
b8ff25a8d7 feat: Video 平台控件配置驱动化 + UUID 模型标识 + 首尾帧双图上传
- Video 控件(proportion/time/ParamGroup)改为 config 驱动,根据 API 参数 schema 动态渲染选项
- 模型选择器改用 UUID(m.id)作为内部标识,避免同名 display_name 冲突导致错误模型配置
- getModelId 查找优先级:id → name → display_name,向下兼容
- imageUploadLimit 累加所有 imageUpload 参数 maxCount,支持首尾帧等双图模型
- buildTaskBody 将 referenceImages 按索引映射到 imageUpload 参数名
- 新增 ParamGroup(动态参数容器)+ SwitchControl(纯 CSS 开关)共享组件
- modelConfigHelper 扩展 resolution/duration 同步支持
- Select 组件 dropdown-item 添加 flex-shrink:0 防止 flex 压缩
- dialogBox 支持 beforeModel 控件分组渲染
2026-06-10 15:07:37 +08:00
0eee8b1f7f chore: 将 docs/ 加入 .gitignore,从版本追踪中移除 2026-06-09 18:28:40 +08:00
d4ef09247c chore: 删除临时上线说明文档 2026-06-09 18:27:11 +08:00
e98ff3a2c4 chore: 代码格式化统一(空格、换行、属性排序、LF规范化) 2026-06-09 18:26:37 +08:00
b964c826ce docs: 更新 CLAUDE.md 反映后端化改造
- 删除 models/、createTask.js、modelConfig.js 引用
- 新增 modelConfigHelper.js 共享工具说明
- 更新数据流描述为 API 驱动
- 新增 number ui 类型和 showWhen 机制
- 新增模型配置缓存(60s TTL)
- 删除过时的 displayNameMap 节
- 接口速查新增 config 相关 API
2026-06-09 18:16:35 +08:00
18e7dbc6ed fix: 画质选择器弹出方向改为向上,与其他控件保持一致 2026-06-09 18:14:15 +08:00
5c24de354b refactor: 删除旧模型配置文件
- 删除 src/platforms/painting/models/(9 个硬编码 JS)
- 删除 src/utils/modelConfig.js(Video 旧远程 JSON 加载)
配置已全部迁移至后端 API。
2026-06-09 18:09:25 +08:00
2cd3f8fad6 refactor: 移除 createTask 透传层,taskPolling 直接读 data.body 2026-06-09 18:09:04 +08:00
fe1ce00f66 feat: Video 平台接入模型配置 API 2026-06-09 18:05:02 +08:00
308581e2e4 feat: Painting 平台接入模型配置 API
将模型配置从代码内硬编码切换为后端 API 动态加载,使用 modelConfigHelper 共享工具函数。
2026-06-09 18:00:16 +08:00
33094e675c feat: 新增模型配置缓存层(60s TTL + 并发去重) 2026-06-09 17:58:08 +08:00
2207720438 feat: 新增模型配置 API(批量 + 单条) 2026-06-09 17:56:59 +08:00
af7debd54c feat: 新增 modelConfigHelper 共享工具函数 2026-06-09 17:55:51 +08:00
025ce0de9f fix: 修复滚动时输入框行数不收缩的问题
根因:Element Plus 的 ElInput 不支持 autosize prop 动态更新 — 只在 mount 时读取,
prop 变化后不会重新计算 textarea 高度。dialogBox 重构时去掉了 Sender 的 :key,
导致 Sender_variant 切换后 ElInput 保持初始行数不变。

修复:恢复 Sender 的 :key="useDisplay.Sender_variant",variant 切换时强制重挂载,
使 ElInput 以正确的 minRows/maxRows 初始化。

CLAUDE.md 补充:VirtualScroller 坐标系统映射表、输入框滚动收缩完整链路、
Element Plus autosize 非响应式陷阱。
2026-06-09 16:03:12 +08:00
481afadd2b fix: VirtualScroller 滚动锚定防抖 + platform 方法引用修复 + CLAUDE.md 更新
- VirtualScroller: measureItem 高度变化时,对可视区上方项的累积 delta 通过微任务延迟补偿 scrollTop,避免同步调整导致的画面抖动
- VirtualScroller: 新增独立测试页 test.html + test-data.js,用于验证虚拟滚动行为
- platform: 修复 painting/video 中 imageUploadLimit() 调用方式为 this.imageUploadLimit()
- display: 修复 Sender_variant 在非 pageTop/pageBottom 中间状态时未设置的问题,补充 isInitializing 异常状态重置
- CLAUDE.md: 补充 VirtualScroller 180deg 旋转机制说明、模型切换完整链路、反旋转注意事项
2026-06-09 15:52:31 +08:00
72e4acf956 docs: 更新 CLAUDE.md 以反映 Platform Descriptor 架构重构
- 新增 Platform Descriptor 模式完整说明(接口、控件描述符、自注册)
- 更新目录结构(src/config/ → src/platforms/)
- 合并 Painting/Video 数据流为统一描述
- 更新 dialogBox 说明为通用编排壳
- 修正所有已删除/移动文件的路径引用
2026-06-09 14:53:07 +08:00
ac7a592618 docs: 补充 dimension.separator 字段说明
JSON 无法携带 JS 函数,dimension 类型需通过 separator 字段
让前端在运行时生成等价的 parse/format 逻辑。
2026-06-09 14:39:54 +08:00
3d5d356700 docs: 重写模型参数后端化方案,对齐新平台架构
更新文档以反映平台重构后的架构变化:
- 新增当前架构(Platform Descriptor 模式)概述
- 新增目标架构与数据流设计
- 新增模型配置 API 格式规范(含 ui 字段映射表)
- 新增分阶段迁移步骤
- 保留 RunningHub API 参考作为附录
2026-06-09 12:57:45 +08:00
73f7bd888e chore: 删除旧架构代码(config/models、runninghub、dialogBox 旧组件)
- 删除 dialogBox 下 8 个子组件目录(model/proportion/dimension/quantity/pattern/Time/imageUploader/videoImageUploader)
- 删除 src/config/models/(模型配置已迁移至 src/platforms/painting/models/)
- 删除 src/config/runninghub/ 及 config/index.js(Video 不再使用旧适配器)
- 更新 Painting 平台的 getModelConfig 导入路径为 ./models/index.js
- 移除 modelSelector.vue 中未使用的 getModelConfig 导入
- 保留 src/utils/modelConfig.js(Video 描述符仍需要 fetchModelConfig 加载远程配置)
2026-06-09 12:42:57 +08:00
bcd83fc0a8 fix: 恢复 dialogBox 中 @open-canvas 画布编辑事件绑定 2026-06-09 12:01:49 +08:00
3507eddfb3 fix: 移除 dialogBox 中残留的平台分支,统一为 descriptor 接口方法 2026-06-09 11:55:22 +08:00
ec81dce28a refactor: dialogBox 重构为通用平台编排壳,委托所有平台特定逻辑 2026-06-09 11:51:29 +08:00
615afbc211 feat: 新增 Video 平台包(descriptor + 控件迁移) 2026-06-09 11:42:00 +08:00
184fd6dd8c fix: 移除 Painting descriptor 中未使用的 computed import 2026-06-09 11:40:01 +08:00
705a7a7ebf feat: 新增 Painting 平台包(descriptor + 控件迁移) 2026-06-09 11:34:23 +08:00
d2a04613d5 fix: registry 重复注册时添加警告日志 2026-06-09 11:30:49 +08:00
1fa28d10db feat: 新增平台注册表基础设施 2026-06-09 11:28:33 +08:00
a1134d85ad 新增 DimensionInput 共享组件,修复多个模型参数 UI 渲染缺陷,补充后端化方案文档
- 新增 DimensionInput 组件(Popover + W/H 数字输入 + 比例锁),支持 combined(单字段 W*H)和 split(独立 width/height)两种模式
- 修复 jimeng/qwen/qwen-edit 尺寸参数不显示:改用 dimension/dimensionWidth/dimensionHeight 替代 number/select
- 修复 GPT-Image-2/GPT-Image-2 I2I quality 选择器不显示:通过 Select 组件承载 ui: 'select'
- 修复 jimeng/GPT-Image-2 误显示 quantity:showQuantity 移除 fallback,仅匹配 ui: 'quantity'
- 新增 docs/模型参数后端化方案.md:API 设计、数据库设计、前后端迁移步骤
- 更新 CLAUDE.md:补充新 UI 类型映射、dimension 模式说明、displayNameMap bug 标注
- 删除废弃文件 Vidu Q3-T2V.json、modelConfig 空目录
2026-06-08 18:36:53 +08:00
b81c1f858e 重命名 websocket.js 为 taskPolling.js,消除误导性命名;修复比例组件 Popover 宽度问题
- websocket.js → taskPolling.js:文件名不再暗示 WebSocket,准确反映 HTTP 轮询机制
- 删除过期备份文件 websocket copy.js
- painting.vue 声明 width/height props,拦截 $attrs 穿透,修复 Popover 宽度 = 尺寸值的 bug
- Popover contentStyle:width:auto → fit-content + max-width:600px,彻底解决 fixed 定位宽度异常
- 比例子项 flex:1 + gap:5px 替代 space-between,间距恒定不受选项数量影响
- CLAUDE.md 补充 Select/Img 组件、dialogBox 编排中心、$attrs 穿透陷阱等文档
2026-06-05 17:27:01 +08:00
16d1496283 修复 Popover 宽度不稳定:移除比例组件硬编码宽度,改用 min-width + ResizeObserver 自适应内容
- Popover 新增 ResizeObserver 监听内容尺寸变化,自动重定位保持居中
- popover-content 补充 maxWidth/minWidth 约束,完善 width='auto' 模式
- 所有关闭路径(点击外部、关闭其他弹窗、modelValue watch)统一清理 observer
- 移除 painting/video 比例组件的 Popover 硬编码宽度,改用 min-width: 300px
- 修复 painting 分辨率选项非弹性布局导致的宽度抖动(white-space: nowrap)
- 修复 painting W/H 输入框盒模型和 flex 收缩问题(box-sizing + min-width: 0)
2026-06-05 16:03:18 +08:00
f0008aedde 修复响应解析:outputs 为扁平数组而非嵌套 images 对象,补充 CLAUDE.md 文档
轮询成功返回时 outputs 是 [{url, type}] 数组,代码误解析为 outputs.images 导致提取 URL 为空,触发"生成失败"通知且列表项无法更新为成功状态。同时在 CLAUDE.md 中补充了 API 响应格式说明、eslint 命令及 config/plugins.js 引用。
2026-06-04 18:48:54 +08:00
4f7357eefc 回退动态参数控件为独立组件,模型配置对齐 API 文档,修复多处缺陷
- 删除 params/ 动态控件,恢复 paintingProportion/Quantity 独立组件
- 模型参数 UI 双向绑定:proportion/resolution/quantity/customSize 同步到 paramValues
- 模型选择器适配 API tags 数组和 display_name,新增 displayNameMap 映射
- 模型配置对齐 RunningHub 文档,精简即梦/通义万相多余参数
- 模型列表缓存改为 30s TTL + pendingRequests 并发去重
- sessionId 改为从登录态获取,禁止随机生成
- Select 下拉菜单增加 max-height 防止溢出
- 更新 CLAUDE.md 架构文档
2026-06-04 18:30:50 +08:00
239b32fb95 重构 Painting 模型参数架构:每模型独立配置、动态参数表单、移除 workflow 适配
- 新增 src/config/models/ 每模型独立参数 schema(8 个模型)
- 新增 src/components/dialogBox/params/ 动态参数控件
- 模型选择器改为从 API 获取并按 tag 分组
- dialogBox 参数区改为根据模型 config 动态渲染控件
- createTask.js Painting 直接返回扁平 modelParams,Video 保留旧 workflow
- 删除旧的 proportion/painting.vue 和 quantity 组件
- 更新 CLAUDE.md 架构文档
2026-06-03 19:00:49 +08:00
791c56a46b 添加 .claude 配置目录,忽略 TEST 目录 2026-06-03 17:40:59 +08:00
2b1e7385e0 页面加载时预请求平台模型接口,避免首次点击"发送"时才触发请求 2026-06-03 17:39:47 +08:00
5da5496492 重构 API 层架构:统一 HTTP 请求、新增算力调度后端路由
- 请求拦截器统一 Auth 头不带 Bearer 前缀,新增 /suanli 前缀路由到算力调度后端
- 任务创建/轮询/历史接口迁移至 apis/display,改为 axios 调用替代原始 fetch
- 模型 API 分离为两层:apis 纯 HTTP 调用 + utils 缓存业务逻辑
- 新增历史任务列表接口 requestTaskHistory(支持 user_id/platform_code 筛选和分页)
- 响应拦截器兼容 status/code 双字段,用户信息兼容新旧 data 格式
- 移除免费次数(freeTimes)体系
- 更新 CLAUDE.md 文档
2026-06-02 18:05:55 +08:00
72267ab2c9 重构任务提交为 HTTP 接口,替换 WebSocket 方案
- POST /api/v1/tasks 创建任务,每 20 秒轮询 GET /api/v1/tasks/{id} 获取结果
- 新增 modelApi.js 通过 /suanli/v1/platforms/:code/models 获取模型 UUID
- dialogBox/canvas 集成 getModelId 查找,result 字段改为 request
- createTask 精简为仅返回 Playload,供 body 使用
- 更新 CLAUDE.md 反映新架构
2026-06-01 18:27:11 +08:00
6e67acca66 提交最后一次稳定版,下个提交准备修改任务请求连接到新版算力转发后端 2026-06-01 15:51:43 +08:00
5e4fc0a1d1 修复视频生成时宽高的转换函数 2026-05-07 16:13:28 +08:00
44c7309608 优化屏幕放大时虚拟滚动显示的问题,优化整体宽度可自动 2026-05-05 19:45:06 +08:00
0a996eac08 小修改 2026-05-05 15:05:09 +08:00