Commit Graph
105 Commits
Author SHA1 Message Date
dokploy-bot e83da82f3d fix(canvas): E2E-hardened interaction fixes
- Teleport canvas to body: layout <main> z-10 stacking context let the
  fixed site header (z-40) cover the canvas toolbar
- defer setPointerCapture until the 3px drag threshold: immediate capture
  retargets click/dblclick to the stage, which silently broke note editing
- commitNote no longer early-returns on the editing flag (event-ordering
  could drop typed text); sync node.text back to the non-controlled
  contenteditable on undo/redo restores
- contenteditable only while editing: single click used to focus and allow
  raw typing outside edit mode, swallowing Delete-key handling
2026-09-19 22:55:39 +08:00
dokploy-bot 571ee2c801 feat: 无限画布 — infinite canvas with generation integration
Backend:
- canvases table + owner-scoped CRUD under /admin/api/canvas
  (list/create/get/save/delete, 50 docs/user, 4MiB cap, JSON validation)

Frontend:
- /canvas full-screen workspace: DOM+CSS-transform infinite pan/zoom
  (GPU-composited world layer, viewport culling, rAF-batched pointer moves)
- nodes: image (thumb display, natural-size correction), note
  (uncontrolled contenteditable), generation placeholder with edges
- generate on canvas: prompt from panel or selected notes, selected image
  nodes as references, results auto-placed + bezier edges to sources
- multi-canvas management, debounced autosave + keepalive flush,
  snapshot undo/redo (60 steps), marquee/keyboard interactions
2026-09-19 22:38:41 +08:00
chiyi 4fb7fc9204 feat: sync all features to image2api 2026-08-15 23:00:30 +08:00
GlossSeaDress f94a7ace5f feat(api): GET /v1/user/balance 查询用户余额
users 表新增 credits_used(累计消耗积分):扣费累加、失败退款回减(refundIfNeeded / 维护清扫改走 RefundCredits),充值/CDK/签到发放不计入。接口返回 {object,balance,used,total},Bearer API Key 鉴权,与其他 v1 接口同一 CORS 与错误格式。站内接口文档与 README 补充端点说明。
2026-08-10 14:59:48 +08:00
chiyi cfb7bcebc9 fix(frontend): 视频模型参考图/媒体上限按 preset 展示,文档页加定价列
模型管理与文档页改为读 /video-presets 的 max_images/max_videos/max_audios,去掉写死的图片/视频/音频上限与重复的参考资产总数;文档表新增定价列,model/类型/定价 三列不换行。
2026-08-09 21:02:18 +08:00
chiyi 84a2eac64f style(playground): 结果区最多展示 12 个 2026-08-09 14:49:33 +08:00
chiyi beadc29b45 style(playground): 结果区大屏改为一行 4 张 2026-08-09 13:40:08 +08:00
chiyi 6d17caaf80 feat(leonardo): 接入视频通道并新增 seedance-2.0/minimax-h3 模型 2026-08-08 21:55:33 +08:00
chiyi ebcf3c5779 feat(grok): 视频改走 Grok Console 并新增图片模型
- grok 视频/图片统一走 console.x.ai:sso 换 DPoP 短期 token,绕开 grok.com 的 statsig 反爬

- 新增 grok-image:不带参考图走 /v1/images/generations,带图自动走 quality 上游 + /v1/images/edits

- grok 额度改本地写死 图5/视频2,成功各扣一次,两份归零直接判死,无恢复时间

- 视频渲染预算统一 20 分钟(adobe/runway/grok/custom)

- 删除参考图人脸打码(facemask + onnxruntime 依赖 + 前台开关)
2026-08-08 11:15:42 +08:00
chiyi f76ecd5769 feat: 二次元前端改版 + 后端账号plan探测/调度修复 2026-08-06 10:11:05 +08:00
chiyi 7f4701d362 feat: veo3.1 拆分 fast/standard, seedance双模型, per_second定价, 子号过滤, 随机种子, UI优化 2026-08-03 20:27:20 +08:00
chiyi 4987717d23 feat: Adobe积分号不锁定额度 + Nano Banana双通道 + 前端显示额度
- Adobe不再区分视频/图片额度,移除ImageLimited/VideoLimited限制
- Adobe积分号quota耗尽不锁定(status不改为quota),只记录失败用于轮转
- Nano Banana 2/Pro 保留Runway通道,新增nano-banana-2/nano-banana-pro走Adobe
- Adobe模型重命名: runway-nano-banana-2, runway-nano-banana-pro
- 前端管理后台Adobe账号显示积分余额(之前固定显示—)
- README更新模型列表
2026-08-02 20:09:03 +08:00
chiyi 9a032c6107 更新易支付 2026-07-28 18:31:52 +08:00
Linda a65f52b7f4 admin lists: server-side pagination + filters for accounts/users/cdks/showcase/banned-words (limit/offset/total; stats over full set; /showcase/admin flat paginated view; dead=1 accounts filter for bulk dead-delete) 2026-07-16 10:48:35 +08:00
chiyi 60be9201e5 支持远程url吗 2026-07-16 00:50:27 +08:00
chiyi 4a1b91b759 更新订单管理记录更多事情 2026-07-14 12:40:44 +08:00
chiyi 86658e98a1 更新grok 2026-07-13 21:08:30 +08:00
chiyi ec3b17c55a 颜色统一 2026-07-10 00:30:44 +08:00
chiyi 788c97d9d5 ai去特征展示 2026-07-10 00:23:14 +08:00
chiyi 6a3588b35b ai去特征增加开关 2026-07-10 00:13:09 +08:00
chiyi 6d6bd2a638 增加ai去特征 2026-07-09 23:48:58 +08:00
chiyi 67354c3b8c 增加随机指纹 2026-07-07 12:03:52 +08:00
chiyi 23dd70505a 优化违禁词 2026-07-06 14:28:43 +08:00
chiyi 18f29fff88 更新后端分页数量 2026-07-06 12:20:30 +08:00
chiyi 89e0a9df9f 优化违禁词 2026-07-06 12:18:09 +08:00
chiyi e05db36f63 优化错误检查 2026-07-06 10:37:46 +08:00
chiyi e517c56225 更新chatgpt协议 2026-07-06 10:21:44 +08:00
chiyi f27c6ba60c 增加批量导入违禁词 2026-07-05 14:59:05 +08:00
chiyi 28fe59a1af 修复视频分辨率问题 2026-07-05 14:35:36 +08:00
chiyi c708ba65ad 更新增加尾巴 2026-07-05 03:20:50 +08:00
chiyi 2d1fcd9162 md更新 2026-07-05 03:06:51 +08:00
chiyi 10d0732f8c 增加违禁词管理 增加多选操作 2026-07-05 03:00:49 +08:00
chiyi 19626810d1 优化复制预览体验 2026-07-05 01:31:32 +08:00
chiyi 18e92b1cc6 增加复制功能 2026-07-04 23:47:03 +08:00
chiyi b4e9b233ca 修复日志展示 2026-07-04 15:09:01 +08:00
chiyi aef01923b0 支持模型别名 2026-07-04 15:01:24 +08:00
chiyi 03f9744dcb 增加模型别名 2026-07-04 14:49:52 +08:00
chiyi c6a8ca440a 修复grok视频参考图 2026-07-03 23:10:04 +08:00
chiyi 53dc178804 更新尺寸兼容 2026-07-03 10:27:49 +08:00
chiyi 1f205fc096 修复分辨率 2026-07-03 10:13:48 +08:00
chiyi 273892f98f 更新缩略图 2026-07-03 00:15:41 +08:00
chiyi 7bb0531c4b 去掉teamid 2026-07-02 22:24:45 +08:00
chiyi c5a059df6c 去掉1500字数限制 2026-07-02 20:54:52 +08:00
chiyi 12070ff4fd 更新日志展示 2026-07-02 14:23:30 +08:00
chiyi 1de4fe99ca 提示词最大限制 2026-07-02 08:51:49 +08:00
chiyi 6b429a8530 修复并发编辑问题 2026-07-01 22:31:42 +08:00
chiyi 57a59c7c76 修复展示遮罩挡住 修复最大字数 2026-07-01 16:44:29 +08:00
chiyiandClaude Opus 4.8 6acc428e74 docker: 前端 nginx HTTP :2000(外部反代接管域名/TLS,不再内置证书);README + logo
- docker-compose.yml:去 acme,web 端口 2000(WEB_PORT),CORS_ORIGINS/COOKIE_SECURE 直配,清理证书 volumes
- frontend nginx 模板/Dockerfile:纯 HTTP :2000,删自签证书 + cert-watch 入口脚本
- 删除 install.sh、.env.docker.example(compose 直接 up,不再需要一键脚本/模板)
- README(中英):部署改为 Docker(2000端口反代)+ 源码两法;去 acme/自动 HTTPS 表述;结构/徽章同步;顶部加 Vivid logo(favicon.svg);视频 720p/1080p 分辨率对照表(DocsView)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-01 09:58:59 +08:00
chiyiandClaude Opus 4.8 8ec4562f81 feat: 易支付积分充值 + 站内公告 + OpenAI 视频修复 + grok/adobe 失败处理
充值/订单(易支付 mapi):
- 订单表 + 30 分钟自动取消;支付弹窗(二维码/跳转监控、倒计时、轮询、5s 倒计时关闭)
- 系统设置可配:开关/商户ID/密钥/支付地址(根地址拼 /mapi)/支付方式/最低额/积分比例(默认 1元=100积分)
- 异步通知 MD5 验签、幂等到账;用户累计充值;前台/后台订单页(筛选+搜索+分页,前后台分风格);用户管理累计充值列

站内公告:
- Markdown 公告,登录用户首次访问/刷新弹出;内容哈希做版本,改了就重新推;管理员不弹;空内容=下线

OpenAI 视频(/v1/videos)修复:
- /content 拿不到视频:grok 资源 URL 需鉴权,改为用生成账号 token 取流;adobe/runway 公开 URL 直代理(不存 RustFS)
- size→分辨率用短边判定(1280x720 = 720p,之前误判 1080p 被拒)

失败处理:
- grok 429「Too many requests」/403 anti-bot 改判临时错误(不再误封号),真额度耗尽才算 quota
- adobe 视频 408 / system under load 归为临时错误 → tempAsDead 封号

其它:
- 充值默认关闭;签到格子浅色可见;登录验证码按钮浅色可读;并发/账户信息展示
- 创作记录/画图台只显示画图台作品(排除 API);日志页 API 视频预览显示 —
- 视频去画中画/下载/投屏(全局);图片缩略图改背景图规避 Edge 视觉搜索
- 订单/兑换码/配置/日志菜单文案与图标;充值版块样式

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-01 01:32:33 +08:00
chiyiandClaude Opus 4.8 5cf6206ee9 feat: 并发分组系统 + 品牌/Logo 上传 + 兑换码开关 + 文档分辨率表
并发分组(新功能):
- 新表 concurrency_groups(名称/上限/默认),用户加 concurrency_group_id
- 启动自动建「默认并发」组(上限10、默认),老用户回填、新注册自动绑定
- 并发计数改用 Redis(自愈 sorted-set + TTL + fail-open):
  · 用户并发(画图台 + API key 合计)受其分组上限限制,0=不限制 → 超返回 429
  · 账号级并发也从内存 gate 换成同一套 Redis(6 处调用点)
  · 移除旧的「已有正在生成的任务」单任务锁
- 后台「并发分组」新菜单:增删改、设默认、用户数;默认组不可删(删别的组成员转默认)
- 用户管理:并发列 + 新建/编辑可选分组
- 个人设置页:账户信息卡(用户名/邮箱/角色/余额/并发);/me 暴露 concurrency_group/limit

品牌 / Logo(上传到 RustFS):
- Logo 改成拖拽/点击上传,点保存才上传;替换自动删旧;branding/ 设为公开且被清理任务 pin 住(永不删)
- 有自定义就用:前台左侧 nav + 后台侧栏 + favicon(浏览器标签);没有则默认 V 图标
- 前台页头还原成文字;首页 Hero 子标题用 site.subtitle(默认那句宣传语,设置页预填)
- 邮件验证码标题用站点名;新增 POST/DELETE /settings/logo + POST /settings/asset(首页底图上传)

兑换码开关:
- 系统设置→积分 新增「开启兑换码」(默认开);关闭后后端拒绝兑换、前台隐藏兑换入口(/site 暴露 cdk_redeem_enabled)

文档 / 分辨率:
- 去掉 quality 参数:size(宽x高)同时决定比例 + 分辨率档(长边映射 1K/2K/4K)
- 文档加「分辨率对照表」(14 个比例 × 1K/2K/4K → size 该传的值);guessRatio 与自定义模型 RATIO_OPTS 对齐到 14 个

其它:
- 删模型时同步清掉各上游账号「支持模型」里的该 id
- 首页设置/兑换码弹窗去固定高度滚动条;展示位弹窗浅色主题适配

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-30 13:52:31 +08:00