Skip to content

Releases: YuChenLiao/dsh-comfyui-album

v0.1.6

Choose a tag to compare

@YuChenLiao YuChenLiao released this 22 Oct 07:42

灯箱支持缩放与前后翻页。

缩放

  • 滚轮或 + / - 缩放,范围 0.2×–8×,0 回到适应窗口
  • 底部缩放条显示百分比,点一下复位
  • 放大后按住拖动平移;双击在适应窗口与 2× 之间切换
  • 换图时自动复位,不会把上一张的缩放带过去

翻页

  • ← / → 切换上一张 / 下一张,首尾循环
  • 舞台两侧箭头,顶部显示 3 / 184
  • 只在已加载的列表内循环,不会触发新的分页请求

顺带

灯箱改为按路径寻址:删除或刷新后仍能定位到正确的那张,不会拿着过期的对象。

v0.1.5

Choose a tag to compare

@YuChenLiao YuChenLiao released this 21 Oct 18:43

修复批量操作条「清除」按钮报 selectNone is not defined。

原因

批量条把 onClick 接到了 selectNone,但代码里只声明了 selectAllShown。
点「清除」时渲染期抛错,被 dsh-better-sidebar 的错误边界接住。

改动

  • 补上 selectNone
  • 新增 tests/lint.mjs:检查所有以裸标识符形式传给事件回调的名字都必须在
    client.js 里声明过。node --check 看不到这类错,SSR 测试默认不进入选择模式也覆盖不到
  • npm test 里 lint 排在最前

v0.1.4

Choose a tag to compare

@YuChenLiao YuChenLiao released this 21 Oct 18:38

新增批量删除与批量导出工作流。

界面

  • 工具栏「选择」进入选择模式:点卡片即勾选,悬浮操作条隐藏
  • 底部操作条:已选数量、全选、清除、导出工作流、删除、退出
  • 批量删除同样彻底:图片、元数据、同组副本、缩略图缓存一起删

导出

选中的图打成一个 ZIP(comfyui-album-workflows-<时间戳>.zip),每张图一个
<文件名>.workflow.json;没有工作流的图会跳过并在提示里报数量。

接口

  • POST /delete-many body { paths } → { ok, removed, failed }
  • POST /workflows body { paths } → ZIP,X-Album-Skipped 给出跳过数
  • 单次上限 500 条,全部路径仍走白名单校验

验证

实测三张探针图导出为 11.8 KB ZIP(PowerShell 可正常解压),批量删除 6 个文件无残留;
越权路径在批量删除中单独失败、不影响其它项。

v0.1.3

Choose a tag to compare

@YuChenLiao YuChenLiao released this 21 Oct 18:32

删除改为彻底删除整组,不再留下副本。

问题

合并重复后,删除一条只删掉了主项。同组的副本还在磁盘上,下次刷新就会顶上来,
看起来像「软删除 / 只是从列表移除」。

改动

  • 删除始终是物理删除(unlink),不进回收站、不写索引
  • 删除一条会连同该组全部副本一起删除
  • 同时清掉该图的缩略图缓存,临时目录里不留残影
  • 确认框文案改为「彻底删除」,去掉「只删这份」的勾选项

验证

探针实测:造一对同 seed 的重复图(合并为一条 ×2),依次删除主项与副本后,
两张图、sidecar、缩略图缓存全部消失,列表归零。

v0.1.2

Choose a tag to compare

@YuChenLiao YuChenLiao released this 21 Oct 18:27

修复:同一张图被 ComfyUI 和插件各存一份,导致相册里成对重复。

问题

一次生成常常落两份:ComfyUI 自己的 SaveImage 存一份(moss_8step_00017_.png),
插件又把结果另存一份(comfyui-....png)。两者 seed、像素尺寸、提示词完全一致,
只是路径和文件名不同。实测 292 条里有 108 条是这种副本。

改动

  • 按「seed + 像素尺寸 + 提示词前 160 字符」分组,每组只显示一条
  • 主项优先取有 sidecar 的那份,其次路径更短、修改时间更新
  • 列表项带 duplicateCount / duplicates,卡片左上角显示 ×N
  • 删除时提供「连同其余副本一起删除」的勾选项(默认不勾)
  • dedupe=0 或工具栏的「合并重复」可关闭合并
  • 健康检查按请求实时读版本号,避免重载后报旧版本

效果

本机默认视图 292 → 184 条;鲸鱼娘系列从 7 条合并为 5 条,成对的两组带 ×2 角标。

v0.1.1

Choose a tag to compare

@YuChenLiao YuChenLiao released this 21 Oct 18:21

修复:没有 sidecar 的 ComfyUI 直出图现在也能进相册。

问题

ComfyUI 自己 SaveImage 出来的图(例如鲸鱼娘系列)把 API 工作流写在 PNG 的 tEXt 块里,
但没有 <图片>.json sidecar,于是相册的「仅生成图」视图一直看不到它们。

改动

  • 只读 PNG 文件头 64KB,解析 tEXt / zTXt / iTXt 的 prompt 工作流
  • 正负提示词按 KSampler 的 positive / negative 连线回溯(最多三层)
  • 尺寸取 IHDR 的真实像素,工作流 latent 节点只作兜底
  • 扫描阶段把「带内嵌元数据」的图归入生成图,避免被单目录上限挤掉
  • sidecar 仍为第一优先级;普通图片在读取元数据前就被跳过

验证

自检新增一个合成 PNG(带 tEXt prompt)的用例,覆盖列表、/meta、/workflow;
真实目录复验:7 张 whalechan 图出现在默认相册,尺寸/seed/模型解析正确。

v0.1.0

Choose a tag to compare

@YuChenLiao YuChenLiao released this 21 Oct 08:57

首个版本。

功能

  • 相册面板:DSH 原生左侧栏入口,装了 dsh-better-sidebar 时另外注册侧栏页签
  • 悬浮操作:复制图片、复制提示词、导出工作流、添加到当前对话、删除(带确认)
  • 大图详情:尺寸 / seed / 底模 / 采样 / 步数 / CFG / 模式 / 时间 / 路径,以及正负提示词全文
  • 缩略图按需生成(sharp,失败回退原图),滚动续页拉完即停

安装

dsh plugin --profile <profile> add github:YuChenLiao/dsh-comfyui-album#v0.1.0

前置:先装好 dsh-comfyui-image。本插件是它的辅助插件,只读它落盘的图片与 sidecar,不依赖它的代码。