ddCat
|
b2a7eef35d
|
feat(billing): 火山方舟视频计费 - 支持真实 Token 预授权与结算
Refs #228
Co-authored-by: MasterChiefCN <49179444+MasterChiefCN@users.noreply.github.com>
|
2026-08-15 12:58:05 +08:00 |
|
ddCat
|
abcf3e1787
|
feat(canvas): 画布创作对话 - 统一流式 Markdown 展示与交互修复
|
2026-08-15 02:31:42 +08:00 |
|
ddCat
|
d89a5a5b7b
|
refactor(*): 用户工作台 - 统一画布、任务中心与设置页产品化交互
|
2026-08-14 23:44:55 +08:00 |
|
ddCat
|
b726620b4d
|
fix(ci): 代码格式 - 修复画布变更文件的 Prettier 校验
Refs #220
|
2026-08-14 12:44:58 +08:00 |
|
ddCat
|
af609f4a3e
|
feat(canvas): 画布模型与连线能力 - 合并同名模型并按输入动态限制节点关联
Closes #220
|
2026-08-14 12:41:55 +08:00 |
|
ddCat
|
e20df8e29b
|
refactor(*): 代码质量治理 - 收敛接口客户端、模型职责与异步计费巡检
|
2026-08-06 16:36:51 +08:00 |
|
ddCat
|
b518489fdd
|
feat(*): 模型能力配置 - 支持模型级视频限制校验与协议管理
|
2026-08-06 15:34:45 +08:00 |
|
爱笑的毛毛虫
|
6671c331e3
|
fix(canvas): 主题存储 - 修复非法 theme 值导致 /create 崩溃 (#155)
useThemeStore persist 无 merge 校验,坏 session/后端同步失败时可能将
非法 theme 值写入 localStorage,导致 canvasThemes[非法值] 为 undefined,
渲染时访问 theme.node 抛出 "Cannot read properties of undefined
(reading 'node')",/create 页面崩溃。
4 层防线(只加校验,不回退代码):
- useThemeStore persist merge 白名单校验,非法值回退 dark
- useThemeStore setTheme 写入前校验,防止同步路径绕过 merge
- normalizeConfigSnapshot 入口兜底 undefined/partial 快照
- ModelPicker 与 CanvasResourceMentionTextarea 消费端加 fallback
Closes #154
Co-authored-by: sikongyue <3155157671@qq.com>
|
2026-08-06 08:32:27 +08:00 |
|
ddCat
|
c8158b159e
|
fix(canvas): 模型选择 - 画布拖拽前关闭悬浮菜单
Fixes #138
|
2026-08-05 10:33:44 +08:00 |
|
ddCat
|
b42b8e58cf
|
refactor(admin): 模型配置 - 能力与请求协议改为品牌卡片单选
|
2026-08-04 22:13:47 +08:00 |
|
ddCat
|
f439d600ba
|
feat(*): 功能开放与页面布局 - 新增运维开关并优化后台及创作界面空间利用
|
2026-08-04 16:24:18 +08:00 |
|
爱笑的毛毛虫
|
d22526506d
|
feat(canvas): 设计token系统 - 建立三层架构骨架 (#101)
* feat(canvas): 设计token系统 - 建立三层架构骨架 #94 #96
建立 Primitive→Semantic→Component 三层设计 token 体系,覆盖 9 个维度:
色彩/间距/字号/圆角/阴影/Elevation/动效/描边/不透明度。
- Primitive 层:纯值无语义,含 neutral 色板+节点类型色板+状态色、
4px 栅格间距、10档字号、10档圆角、阴影+glow、12档 z-index、
动效(duration+easing+delay+motion-scale)、描边、不透明度
- Semantic 层:引用 Primitive,随主题切换,含通用语义色、
Canvas 语义(--cn-*)、Aceternity spatial 语义、节点类型语义、状态语义
- Component 层:引用 Semantic,含 Dock/Node/Modal/Panel/Prompt面板/
进度条/缩放控制专属 token
- @theme inline 映射:节点类型色、状态色、Canvas 语义色、字号映射到 Tailwind utility
- prefers-reduced-motion 三级降级(L0正常/L1简化/L2禁用)
- AGENTS.md 新增 Design Token 使用规范,禁止新增裸 px 值
- 附带修复 canvas-drawing-excalidraw-editor.tsx TS7006 类型注解
- 附带修复 canvas-drawing-editor-modal.tsx TS2339 engine 字段缺失
Wayfinder 决策来源:#95 #96 #97 #98 #99
* fix(canvas): 设计token系统 - 修复CSS变量循环引用和命名兼容性 #94 #96
修复两个问题:
1. CSS变量循环引用:Primitive层 --color-node-*/--color-status-* 与
@theme inline 中的 --color-node-*/--color-status-* 同名,经 Semantic
层中转后形成循环(A→B→A)。改用 --palette- 前缀隔离 Primitive 色板,
打断循环链路。
2. 变量名小数点兼容性:--space-0.5/1.5/2.5/3.5 中的小数点被部分 CSS
linter 误判为类选择器。改为 --space-half/-1-half/-2-half/-3-half,
保持语义清晰的同时提升工具链兼容性。
* refactor(canvas): 画布核心组件 - 迁移硬编码值到设计token #94
批次1:5个画布核心组件的裸 text-[Npx]/rounded-[Npx]/z-[N] 替换为
对应设计token,统一视觉语言:
- canvas-node.tsx:text-[10/11/9/17px]→fs-tiny/label/micro/heading-lg,
rounded-[18px]→node-radius
- canvas-node-hover-toolbar.tsx:text-[11/17/10/9px]→fs-*,
rounded-[14/9px]→dock-radius/dock-item-radius,z-[70]→z-panel-floating
- canvas-toolbar.tsx:text-[9/10/11px]→fs-*,
rounded-[17/16/11/10px]→panel-radius/dock-item-radius-*,
z-[30/40]→z-toolbar/z-toolbar-floating
- canvas-assistant-panel.tsx:text-[8/9/10/11px]→fs-*
- canvas-script-node.tsx:text-[9/10/11px]→fs-*
视觉零回归(token值与原硬编码值一致),代码可维护性提升。
* refactor(canvas): 画布辅助组件 - 迁移硬编码值到设计token #94
批次2:6个画布辅助组件的裸 text-[Npx]/rounded-[Npx]/z-[N] 替换为
对应设计token:
- canvas-style-picker-modal.tsx:text-[10/11px]→fs-tiny/label
- canvas-file-drop-overlay.tsx:z-[110]→z-modal-overlay,
rounded-[28/20px]→r-5xl/r-3xl
- canvas-character-reference-node.tsx:text-[10px]→fs-tiny
- canvas-drawing-editor-modal.tsx:text-[11px]→fs-label
- canvas-video-prompt-tools.tsx:z-[1500]→z-toast,
rounded-[12/10px]→r-lg/dock-item-radius
- asset-picker-modal.tsx:text-[10px]→fs-tiny
视觉零回归(token值与原硬编码值一致)。
* refactor(*): 全项目硬编码值 - 批量迁移到设计token #94
批次3:全项目 .tsx 文件中 372 处裸 text-[Npx]/rounded-[Npx] 批量
替换为对应设计token,剩余 25 处无直接 token 对应的低频值保留。
替换覆盖(按频率):
- text-[10px]→fs-tiny (132处)
- text-[11px]→fs-label (100处)
- text-[9px]→fs-micro (45处)
- text-[12px]→fs-caption, text-[13/14px]→fs-body, text-[15px]→fs-body-lg
- text-[18px]→fs-heading-lg, text-[22px]→fs-title, text-[8px]→fs-micro
- rounded-[9/10px]→dock-item-radius, rounded-[12px]→r-lg
- rounded-[14px]→dock-radius, rounded-[16px]→r-2xl
- rounded-[17px]→panel-radius, rounded-[8px]→r-md
涉及 components/ 和 pages/ 下所有 .tsx 文件。
视觉零回归(token值与原硬编码值一致)。
* feat(canvas): 节点视觉层次规范 - 色带+状态徽章+四态递进 #97 #94
基于 Wayfinder 地图 #97 决议执行节点视觉重设计:
1. 节点类型色带(决策1)
- 新增 nodeTypeColorVar() 函数,10种节点类型对应色带色
- 节点左侧3px色条,引用 --cn-type-* token
- 远距离最强信号,用户扫视画布即可识别节点类型
2. 节点状态徽章(决策2)
- 新增 NodeStatusBadge 组件,loading/success/error 三态
- 左上角圆角徽章,backdrop-blur 玻璃质感
- success 态 2s 后自动淡出(canvas-status-success-fade 动画)
3. 四态递进视觉权重(决策3)
- idle:无额外阴影
- hover:轻微抬升阴影(16px 48px)
- selected:2px 边框环(accent.primary 40% 透明度)
- selected-primary:4px 软色环 + resize handle
- active:6px 外发光环 + inner glow(最强强调)
- 120-150ms ease-out 过渡
4. 阴影迁移
- boxShadow 从硬编码改为分层语义化表达
- 边框色 hover 态使用 color-mix 动态加深
Closes #97
---------
Co-authored-by: sikongyue <3155157671@qq.com>
|
2026-08-03 21:38:38 +08:00 |
|
爱笑的毛毛虫
|
3fb5545c11
|
fix(canvas): 分镜脚本节点文字溢出与视频模型下拉异常 #84 (#85)
* fix(canvas): 分镜脚本节点文字溢出与视频模型下拉异常 #84
- CompactInput 补齐 overflow-y-auto/whitespace-pre-wrap/break-words,长文本不再横向溢出撑开列宽
- filterModelsByCapability 增加 modelCosts[].protocol 协议层回退,未显式配置 capability 时通过协议识别能力
- isVideoModelName 扩展 pika/runway/gen-3/hunyuan-video 等主流视频模型名关键字
- ModelPicker.options 保留当前选中 value,避免过滤后 options 为空触发跳转设置页
* fix(canvas): 模型过滤协议反向排除 + 分镜脚本节点模型选择提示 #84
- filterModelsByCapability 协议层提升至最高优先级,协议明确属于其他能力时直接排除,
防止 video/image/audio 协议的模型被误标为 text 后混入文本下拉
- isVideoModelName 补充 cogvideo/mochi/latte/stable-video/svd/animatediff/ltx-video/minimax-video/abab-video 等关键字
- isImageModelName 补充 nano-banana/ideogram/recraft/playground/leonardo 等关键字
- 分镜脚本节点 ModelPicker 包裹 Tooltip,提示"脚本生成仅支持文本模型"
* fix(canvas): 节点标题截断修复 — flex min-width 约束 + 宽度边界 + hover tooltip
- NodeExternalHeader: 容器增加 max-w-full 双重约束,窄节点时不越界,宽节点时上限 240px
- NodeExternalHeader: 标题 span 增加 min-w-0,解决 flex min-width:auto 导致 truncate 失效
- 所有节点标题(绘图/技能/角色参考/音频/分镜脚本)增加 title 属性,hover 显示完整标题
- AudioNodeContent: 标题 span 增加 min-w-0,修复 flex 子项截断
* fix(canvas): 节点顶部标题真正截断 — JS 计算 maxWidth + overflow-hidden + flex-1
- NodeExternalHeader 容器: 移除 Tailwind 级联冲突的 max-w-[240px]/max-w-full,
改用 JS 计算 Math.min(240, node.width) 作为 inline style maxWidth,
从根本上解决两个 max-width 声明的优先级不确定问题
- 容器增加 overflow-hidden 作为第二道防线
- 内部 text/input/button 元素改用 flex-1 + min-w-0 替代固定 max-w-[Npx],
让 flex 子项自动填充可用空间,文本在剩余空间内截断
* fix(canvas): 节点标题缩放溢出 — 考虑 canvas zoom scale
- maxHeaderWidth 改为 Math.min(240, node.width * scale),
因为 header 的视觉宽度 = maxHeaderWidth(inverseScale 与 canvas scale 抵消),
而节点的视觉宽度 = node.width * scale,两者必须比较同一维度
- 修复 zoom 缩小时(scale < 1)header 视觉宽度超过节点视觉宽度的溢出问题
---------
Co-authored-by: sikongyue <3155157671@qq.com>
|
2026-08-03 08:40:04 +08:00 |
|
ddCat
|
bb65da4aa8
|
fix(canvas): 模型选择 - 恢复创建版耗时标签条件避免生产构建失败
|
2026-08-02 22:42:19 +08:00 |
|
ddCat
|
8c573352d5
|
feat(*): 创作体验 - 支持资源技能引用并统一生成反馈与画布列表展示
|
2026-08-02 22:29:44 +08:00 |
|
ddCat
|
64f32d3607
|
feat(platform): 多模态创作 - 新增统一创作页、历史会话与视频参数控制
|
2026-08-02 14:52:49 +08:00 |
|
ddCat
|
31758a64df
|
fix(canvas): 模型选择 - 提升菜单可读性并突出积分价格
|
2026-08-01 00:34:33 +08:00 |
|
ddCat
|
b763f62ec6
|
fix(canvas): 模型选择 - 修复描述过长导致选项横向溢出
|
2026-07-31 23:23:50 +08:00 |
|
ddCat
|
ea02df69cd
|
fix(canvas): 画布创作交互 - 优化提示词面板并修复工具弹窗与节点缩放卡顿
|
2026-07-31 22:27:58 +08:00 |
|
Danborad
|
53e5face32
|
fix(canvas): 复制粘贴与生成占位 - 系统图片优先并按比例显示占位框 (#45)
- 粘贴优先系统剪贴板图片,复制节点时写入标记避免旧图片抢占
- 粘贴/复制节点清理批次绑定,并补回参考图入边
- 生成中图片占位按设置比例显示
- Nano Banana / Imagen / Veo / Omni 匹配 Gemini 图标
Co-authored-by: Danborad <Danborad@users.noreply.github.com>
|
2026-07-28 19:15:30 +08:00 |
|
ddcat666
|
ea15000541
|
feat: 完成短剧项目空间与结构化资产创作闭环 (#38)
* feat(canvas): 短剧项目空间 - 建立项目章节与画布关联 MVP
* feat(canvas): 短剧项目空间 - 完善项目资产、镜头与流程闭环
Refs #30
* fix(deploy): 本地部署 - 修复前端构建并忽略本地 PostgreSQL 配置
* feat(*): 短剧项目空间 - 完成项目、章节、资产、角色与画布创作闭环
Refs #30
---------
Co-authored-by: ddCat <ddcat666@88.com>
|
2026-07-27 10:45:11 +08:00 |
|
ddCat
|
33b48284e3
|
fix(canvas): 模型选择 - 加宽图片和视频模型下拉框
|
2026-07-23 19:02:12 +08:00 |
|
ddCat
|
aea35896eb
|
feat(platform): 开源发布 - 初始化 Open AI Canvas
|
2026-07-22 14:29:10 +08:00 |
|