@ash-qw/dsh-theme-prts 1.4.2 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,19 @@
1
1
  # 变更记录
2
2
 
3
+ ## 2.1.0 - 2026-10-19
4
+
5
+ - 新增 Baker 会话主题及用户、AI 头像管理;头像支持上传、裁剪、恢复默认和会话工具操作。可选择在回复完成前显示加载动画,并控制过程回复头像的合并方式。
6
+ - 新增会话背景图片:可选择默认、分区或完整背景,上传侧栏与正文图片并调整遮罩;素材保存在当前 DSH 实例,主题偏好改由 DSH 原生配置持久化和同步。
7
+ - 为会话列表侧栏、设置侧栏、Baker 气泡和经典用户消息提供独立的材质透明度与模糊度调节。图片背景未启用时隐藏模糊度控件;输入框增强毛玻璃保留独立开关。
8
+ - 修复新版 DSH 会话卡片的置顶标记位置,保留原生标题悬停滚动、按钮切换与会话状态反馈;同步当前侧栏视觉测试基线。
9
+ - 当前支持 DSH `0.2.1-rc.2` 的 Web 端与官方桌面客户端:Web 端已在本地容器验证,桌面端已实机验收基础功能。需要继续使用 DSH `0.2.0-rc.2` 的用户请固定主题 `1.4.2`,更早版本对应关系见 README。
10
+
11
+ ## 2.0.0 - 2026-10-19
12
+
13
+ - 破坏性变更:当前仅声明支持已在本地容器验证的 DSH Web 0.2.1-rc.2,插件市场的 `engines.dsh` 精确要求也已更新。使用 DSH 0.2.0-rc.2 时请固定主题 1.4.2;使用更早的 DSH 时请按 README 中的版本对应关系安装。该版本的官方桌面客户端仍待单独验证。
14
+ - 在真实页面复核主题挂载、工作区与会话卡片、长标题悬停和菜单、原生对话宽度拖动及窄窗口布局。
15
+ - 修复工作区状态列表从入口移入顶层浮窗时提前收起的问题,补充跨越间隙并点击会话的浏览器回归测试。
16
+
3
17
  ## 1.4.2 - 2026-10-17
4
18
 
5
19
  - 改善会话预览定位:状态列表使用顶层浮层,避免被其它入口遮挡;悬停状态时判断上下展开空间,修复正文预览空间误判,并在空间不足时提示。跨状态移动时减少浮窗闪断。
package/README.en.md CHANGED
@@ -17,10 +17,10 @@ The Baker conversation theme is inspired by the messenger in Arknights: Endfield
17
17
 
18
18
  ## Compatibility
19
19
 
20
- - Supports DeepSeek Harness `0.2.0-rc.2` on Web and the official desktop client. The Web version has been verified locally, and the official desktop client has been verified through actual use. The earlier `0.1.7`, `0.1.5`, and `0.1.2` release lines are no longer in the compatibility declaration.
21
- - The theme has been checked on a live `0.2.0-rc.2` page for mounting, workspaces, session cards, and the composer. Browser regression tests cover the native conversation width control, session status, and pending interaction indicators.
20
+ - Supports DeepSeek Harness `0.2.1-rc.2` on Web and the official desktop client. Web was verified on a live local container; the desktop client received a real-device check with no basic functionality issues found. The earlier `0.2.0-rc.2`, `0.1.7`, `0.1.5`, and `0.1.2` release lines are outside the current compatibility declaration.
21
+ - The theme has been checked on a live Web `0.2.1-rc.2` page for mounting, workspaces and session cards, long-title hover behavior, the native conversation width drag control, and narrow-window layout. Browser regression tests cover session status and pending interaction indicators.
22
22
  - `engines.dsh` in `package.json` uses the same exact version for plugin market compatibility checks. Other DSH versions require separate verification.
23
- - For DSH `0.1.7-rc.2`, pin theme `@ash-qw/dsh-theme-prts@1.0.2`. For DSH `0.1.2` or `0.1.5`, pin theme `@ash-qw/dsh-theme-prts@0.1.102`.
23
+ - For DSH `0.2.0-rc.2`, pin the previous public theme release `@ash-qw/dsh-theme-prts@1.4.2`. For DSH `0.1.7-rc.2`, pin `1.0.2`. For DSH `0.1.2` or `0.1.5`, pin `0.1.102`.
24
24
 
25
25
  ## Install and update
26
26
 
@@ -85,3 +85,13 @@ See [CHANGELOG.md](CHANGELOG.md) for release history and [RELEASING.md](RELEASIN
85
85
  ### Set Baker avatars from a DSH conversation
86
86
 
87
87
  Upload an image and ask the AI to set it as your Baker avatar, or have it generate/edit an image first. `prts_avatar_inspect` reads current configuration and conversation images; `prts_avatar_apply` replaces user/AI avatars, re-crops the current original, or restores defaults. Changes are shared within the DSH instance. Replacing an avatar discards its previous original. Avatars appear in Baker mode; tools do not change the device-local conversation theme.
88
+
89
+ Theme preferences now use DSH native profile configuration. Connected pages share updates; browser storage is only a startup cache. Existing local preferences are migrated only when the Host has no saved theme configuration. Failed or conflicting writes require an explicit retry and never automatically overwrite Host values. Older DSH hosts may expose memory-only settings for remote access; these cannot be reported as durable saves. Reload the server-side plugin after upgrading to register its configuration schema. Avatar and emblem assets keep their existing server storage.
90
+
91
+ ### Custom conversation backgrounds
92
+
93
+ Under Appearance → Conversation background, choose the default surface, separate sidebar/content images, or a single full background. Images use centered cover sizing with an adjustable readability mask. Switching modes retains images; removal deletes the selected asset. PNG, JPEG, WebP and AVIF uploads are limited to 10 MB and 40 million pixels, converted to WebP within 3840×2160, and stored in `$DSH_HOME/plugins/dsh-theme-prts/backgrounds`. Replacements delete obsolete files. Mode and mask settings use native DSH configuration; assets are shared within the instance.
94
+
95
+ With custom backgrounds, material transparency is independently adjustable for the session sidebar, settings rail, Baker bubbles, and Classic user messages (defaults: 94%, 70%, 50%, 50%; higher values are more transparent). Dials support mouse/touch dragging, arrow keys and exact percentage entry. Dragging previews locally; release saves, while Escape or pointer cancellation restores the saved value. When the matching image is active, a slider also adjusts blur from 0–32px (defaults: 8, 12, 8, and 8px), previews changes immediately, and saves on release. Transparency and blur each have their own reset; blur controls stay hidden with solid backgrounds. Rail glass appears and takes effect only in full-background mode; message glass requires a conversation or full background and its matching conversation theme.
96
+
97
+ Conversation theme and background use separate settings pages. Enhanced composer glass lives on the background page: optional with the default background and always active in split/full modes, preserving the previous default-mode choice. Baker's optional loading animation (off by default) replaces each streaming response body with three pulsing square dots until it settles or is interrupted. Classic messages, reasoning and tool cards remain unaffected.
package/README.md CHANGED
@@ -17,10 +17,12 @@ Baker 会话主题参考《明日方舟:终末地》的通讯界面。在主
17
17
 
18
18
  ## 兼容性
19
19
 
20
- - 当前支持 DeepSeek Harness `0.2.0-rc.2` 的 Web 端和官方桌面客户端;Web 端已在本地验证,官方桌面客户端已实际使用验证。此前的 `0.1.7`、`0.1.5`、`0.1.2` 发布线不再列入兼容声明。
21
- - 已在 `0.2.0-rc.2` 的真实页面验证主题挂载、工作区、会话卡片与输入区;原生对话宽度交互、会话状态及待处理提示有浏览器回归覆盖。
20
+ - 当前支持 DeepSeek Harness `0.2.1-rc.2` 的 Web 端与官方桌面客户端。Web 端已在本地容器的真实页面验证;桌面端已实机验收,基础功能未见明显问题。此前的 `0.2.0-rc.2`、`0.1.7`、`0.1.5`、`0.1.2` 发布线不再列入当前兼容声明。
21
+ - 已在 Web 端 `0.2.1-rc.2` 验证主题挂载、工作区和会话卡片、长标题悬停、原生对话宽度拖动及窄窗口布局;会话状态与待处理提示有浏览器回归覆盖。
22
22
  - `package.json` 中的 `engines.dsh` 使用相同的精确版本声明,插件市场可据此判断兼容性。其他 DSH 版本需另行验证。
23
- - 若仍使用 DSH `0.1.7-rc.2`,请固定主题 `@ash-qw/dsh-theme-prts@1.0.2`;使用 DSH `0.1.2` 或 `0.1.5` 发布线时,请固定主题 `@ash-qw/dsh-theme-prts@0.1.102`。
23
+ - 若仍使用 DSH `0.2.0-rc.2`,请固定上一公开主题版本 `@ash-qw/dsh-theme-prts@1.4.2`;使用 DSH `0.1.7-rc.2` 时请固定 `1.0.2`,使用 DSH `0.1.2` 或 `0.1.5` 发布线时请固定 `0.1.102`。
24
+
25
+ 主题设置通过 DSH 原生配置服务保存,同一 profile 下的在线页面会同步更新。首次接入时,仅当服务端尚未保存主题配置,才迁移当前浏览器的旧设置;已有服务端配置优先。保存冲突或失败会显示提示,不自动重传旧配置;“重试保存”会按当前版本重新提交失败的修改。部分旧版 DSH 的远程访问仅支持内存配置,此时会提示未保存,需要宿主提供持久化支持。升级后需重新加载主题服务端插件,才能注册新增配置。
24
26
 
25
27
  ## 安装与更新
26
28
 
@@ -61,7 +63,7 @@ npx @deepseek-ai/dsh plugin --profile web add @ash-qw/dsh-theme-prts
61
63
 
62
64
  ## 安全模式与恢复
63
65
 
64
- 若主题导致页面不可用,在 Harness 地址后添加 `?prts-safe=1`。安全模式会阻止所有主题视觉挂载,但保留“Settings → 插件 → P.R.T.S.”中的基础开关和恢复提示。也可以删除浏览器 localStorage 的 `dsh.ui.prts.v1`,下次加载会回到默认关闭状态。
66
+ 若主题导致页面不可用,在 Harness 地址后添加 `?prts-safe=1`。安全模式会阻止所有主题视觉挂载,但保留“Settings → 插件 → P.R.T.S.”中的基础开关和恢复提示。在此页面关闭主题会保存到 DSH;清除浏览器缓存不会重置服务端设置。
65
67
 
66
68
  ## 卸载
67
69
 
@@ -69,7 +71,7 @@ npx @deepseek-ai/dsh plugin --profile web add @ash-qw/dsh-theme-prts
69
71
  npx @deepseek-ai/dsh plugin --profile web remove @ash-qw/dsh-theme-prts
70
72
  ```
71
73
 
72
- 卸载后建议重新启动 DSH Web。浏览器中的主题偏好不会被删除。多个全局主题可能发生 CSS 冲突,建议一次只启用一个完整 UI 主题。
74
+ 卸载后建议重新启动 DSH Web。主题偏好保存在 DSH 当前 profile 的原生配置中,浏览器只保留启动缓存。多个全局主题可能发生 CSS 冲突,建议一次只启用一个完整 UI 主题。
73
75
 
74
76
  ## 开发
75
77
 
@@ -85,3 +87,13 @@ npm run check
85
87
  ### 在 DSH 会话中设置 Baker 头像
86
88
 
87
89
  可上传图片后对 AI 说:“把这张图设为我的 Baker 头像,裁剪到人物面部。”也可以让 AI 生成或编辑图片后直接设置。工具 `prts_avatar_inspect` 查看当前配置与会话图片;`prts_avatar_apply` 支持更换用户/AI 头像、基于已有原图重新裁剪和恢复默认。头像在当前 DSH 实例共享,保存替换后不保留旧原图;仅在 Baker 会话主题下显示,工具不会切换设备本地的主题选项。
90
+
91
+ ### 自定义会话背景
92
+
93
+ 在主题设置的“会话外观 → 会话背景”中,可选择默认背景、分区背景或完整背景。分区模式分别设置侧边栏与会话正文,未上传的一侧沿用默认背景;完整模式以同一张图片贯穿两侧。图片居中铺满,可调节背景遮罩提高文字可读性;切换模式或恢复默认设置不会删除图片,点击“移除图片”才会删除对应素材。
94
+
95
+ 支持 PNG、JPEG、WebP、AVIF,单张不超过 10 MB、4000 万像素。服务端自动转为 WebP 并限制在 3840×2160 内,保存在 `$DSH_HOME/plugins/dsh-theme-prts/backgrounds`。替换或移除后清理旧图片,不保留历史原图。模式和遮罩通过 DSH 原生配置同步,图片在当前实例共享。
96
+
97
+ 自定义背景下,可分别调整会话列表侧栏、设置侧栏、Baker 气泡和经典主题用户消息的材质透明度,默认值为 94%、70%、50%、50%(数值越高越透明)。圆环支持鼠标或触屏拖动、方向键微调与直接输入百分比;拖动时本地预览,松手保存,Esc 或指针取消时回退。对应图片启用后,还可用滑杆调整模糊度(0–32px,默认依次为 8、12、8、8px),调节时预览,松手后保存。透明度和模糊度均可单独恢复默认;纯色背景不显示模糊度调节。设置侧栏材质仅在完整背景模式显示并生效;消息材质需要启用正文或完整背景,并在相应会话主题下生效。
98
+
99
+ “会话主题”和“会话背景”分为独立设置页。输入框增强毛玻璃位于背景页:默认背景下可以开关,分区或完整背景下始终开启,切回默认背景时恢复原有开关选择。Baker 可开启“回复完成前显示加载动画”(默认关闭),每轮正在生成的正文暂以三点明暗动画代替,完成或中断后显示收到的正文;经典主题、思考过程与工具卡片不受此开关影响。
@@ -53,3 +53,20 @@ The browser build includes entities, linkify-it, mdurl, punycode.js, and uc.micr
53
53
  Their copyright and license notices are retained in the generated lib/client.js.
54
54
  This is a build-time dependency; DSH does not need to install it separately at runtime.
55
55
  Raw HTML and remote image loading are disabled in previews.
56
+
57
+ ## React Bits — GlassSurface
58
+
59
+ - Author: David Haz
60
+ - Source: https://github.com/DavidHDev/react-bits/tree/main/src/content/Components/GlassSurface
61
+ - Retrieved: 2026-10-17
62
+ - License: MIT + Commons Clause License Condition v1.0. This is not plain MIT.
63
+ - The upstream-derived component and CSS are included in `src/vendor/react-bits/`, together with the full license. Used as part of the P.R.T.S. theme message composer, not distributed as a standalone component library.
64
+ - Integration: compile JSX against the host React runtime, scope the original CSS, and mount decorative surfaces behind the native message composer, using the original shape option with the composer notch. The integration uses reduced refraction and channel offsets, a calm center, padded sampling, 5px blur, and 50% composer background opacity.
65
+ - Local modifications: retain the valid displacement map while a resized shape loads, and stretch shape artwork to current bounds instead of fitting its source aspect ratio. Live boundaries and borders are drawn by CSS; refraction maps update after resizing settles so asynchronous artwork cannot control composer layout.
66
+ - Attached composer menus reuse the host material plate with CSS tint and blur overrides; they do not mount this component or change menu layout, borders, or shadows.
67
+
68
+ ## React Bits Comet Dial
69
+
70
+ - Reference: [Comet Dial](https://www.reactbits.dev/micro/comet-dial), upstream `src/content/Micro/CometDial/CometDial.jsx` and `CometDial.css` in [DavidHDev/react-bits](https://github.com/DavidHDev/react-bits), retrieved 2026-10-19.
71
+ - `src/client/opacity-dial.js` adapts the ring geometry and interaction design to the theme's DOM settings. It uses a short directional trail, direct percentage entry and commit-on-release persistence, without React, Motion or inertial value changes.
72
+ - The adapted component is subject to the upstream MIT + Commons Clause terms, reproduced in `src/vendor/react-bits/LICENSE.md`; it is not relicensed under this project's plain MIT license.
@@ -52,3 +52,20 @@ P.R.T.S. 头像、阵营标识及衍生徽记仅收录于个人、非商业同
52
52
  构建时将其浏览器版本及所包含的 entities、linkify-it、mdurl、punycode.js、uc.micro 一并打包;
53
53
  对应版权与许可全文保留在生成的 lib/client.js 中。该依赖仅用于构建,不要求 DSH 在运行时另行安装。
54
54
  预览禁用原始 HTML 和远程图片加载。
55
+
56
+ ## React Bits — GlassSurface
57
+
58
+ - 作者:David Haz
59
+ - 来源:https://github.com/DavidHDev/react-bits/tree/main/src/content/Components/GlassSurface
60
+ - 获取日期:2026-10-17
61
+ - 许可证:MIT + Commons Clause License Condition v1.0,并非纯 MIT。
62
+ - 基于上游的组件、样式及完整许可文本保存在 `src/vendor/react-bits/`。作为 P.R.T.S. 主题输入框的一部分使用,不作为独立组件库分发。
63
+ - 接入方式:将 JSX 编译后使用宿主 React,限定原样式作用域,在输入框内容后挂载装饰层,通过原组件的 shape 参数适配输入框凹槽,降低折射及分色偏移,设置平稳中央区域并为采样画布留边;使用 5px 模糊,输入框底色不透明度为 50%。
64
+ - 本地修改:尺寸变化、新轮廓加载期间保留有效折射图,轮廓按当前尺寸铺满,不按原图宽高比等比适配。实际边界与描边由 CSS 同步绘制,折射图在缩放稳定后更新,避免异步轮廓影响输入框布局。
65
+ - 输入框附属菜单复用宿主已有背景层,仅调整 CSS 底色和模糊参数,不挂载此组件,不改变菜单布局、描边或阴影。
66
+
67
+ ## React Bits Comet Dial
68
+
69
+ - 参考:[Comet Dial](https://www.reactbits.dev/micro/comet-dial),[DavidHDev/react-bits](https://github.com/DavidHDev/react-bits) 中的 `src/content/Micro/CometDial/CometDial.jsx` 与 `CometDial.css`,获取日期为 2026-10-19。
70
+ - `src/client/opacity-dial.js` 将圆环几何与交互设计适配到主题的 DOM 设置界面,采用短方向拖尾、百分比输入与松手保存,不引入 React、Motion 或惯性数值变化。
71
+ - 适配组件遵循上游 MIT + Commons Clause 条款,全文见 `src/vendor/react-bits/LICENSE.md`,不改授本项目的普通 MIT 许可。