dsh-theme-endfield 1.2.3 → 1.2.5

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/README.md CHANGED
@@ -1,6 +1,7 @@
1
1
  # dsh-theme-endfield
2
2
 
3
3
  参考《明日方舟:终末地》官网风格的 DSH Web 主题插件:奶油纸底、墨黑文字、信号黄/武陵青强调色、全直角工业编辑风。
4
+ <img src="docs/preview.gif" alt="dsh-theme-endfield" width="720">
4
5
 
5
6
  - **Client 侧**(`client.js`):通过主题令牌与样式覆盖界面。
6
7
  - **Host 侧**(`index.js`):设置持久化与可选的音频通知(派生系统播放器子进程)。
@@ -50,7 +51,7 @@ dsh plugin --profile web rm dsh-theme-endfield
50
51
 
51
52
  | DSH | 设置持久化 | 备注 |
52
53
  | --- | --- | --- |
53
- | **0.2.x**(在 **0.2.0-rc.2** 与 **0.2.1-rc.2** 上实测) | Host 导出 `Config`,浏览器 `ctx.configForms` | 当前支持目标 |
54
+ | **0.2.x**(在 **0.2.0-rc.2** 与 **0.2.1-rc.2** 上实测;0.2.2-rc.1 的 composer seat 改动见下) | Host 导出 `Config`,浏览器 `ctx.configForms` | 当前支持目标 |
54
55
  | 0.1.7 – 0.1.x | 同一套 Config/configForms 接缝 | 无需改动 |
55
56
  | ≤ 0.1.5 | `ctx.settings.register` + `ctx.settingsScope` | 自动回落,无需配置 |
56
57
 
@@ -60,11 +61,14 @@ dsh plugin --profile web rm dsh-theme-endfield
60
61
 
61
62
  ### 0.2 改动(v1.1.6 已跟进)
62
63
 
63
- 0.2 改动了三处本插件依赖的应用侧细节,旧写法在 0.2 上会**静默失效**:
64
+ 0.2 改动了四处本插件依赖的应用侧细节,旧写法在 0.2 上会**静默失效**:
64
65
 
65
66
  - **回合状态标签**(“Deep diving…”)从 `@deepseek-ai/dsh-client-ui-conversation` 的渐变文字搬到 `@deepseek-ai/dsh-client-ui-chat` 的遮罩扫光文字,不再有 `turnStatus` 类名;着色改由 `--dsw-alias-label-deep-diving` / `-shimmer` 两个令牌承担,因此旧规则已删除,改在 `theme.overrideTokens` 层换色(留着旧规则时该令牌仍是应用自带值,标签完全没有主题色)。
66
67
  - **右侧栏**列名由 `_detailsCol` 改为 `_rightbarCol`,且不透明底色移到列元素本身——等高线图层在右侧栏打开时不会再被整块盖住。
67
68
  - **插件卡片展示文案**改由 `locale/<语言>.json` 的 `meta.title` / `meta.description` 提供;`package.json` 的 `dsh.client.inject` 也不再列 0.2 已删除的 `@deepseek-ai/dsh-client-runtime` 与 `@deepseek-ai/dsh-client-ui-slots`,改为列出 0.2 真正的提供方。
69
+ - **composer seat 的 `will-change: transform`**(0.2.2-rc.1):它会让 seat 成为 `position: fixed` 后代的 containing block,而审批白条正是靠 fixed 铺满视口——白条因此塌成窗口底部的一条线,只剩「等待审批」可见([#41](https://github.com/ymh0000123/dsh-theme-endfield/issues/41))。主题在审批面板挂载期间把该提示降回 `auto`,不改 DOM、也不长期关掉上游的合成提示。
70
+
71
+ - **工作区会话行高亮两侧留缝**:app 原生高亮是零几何结构——每行自带 3px 透明描边框,选中态只换背景色;原生淡色下内缩不明显,主题的强高亮色让未上色的描边框透出栏底。主题照原生的结构只换颜色——把描边框刷成同一个高亮色,高亮贴满行盒,文字、栏距、滚动条、圆角(圆角模式 12px)全部保持 app 原生,不再触碰滚动容器的裁剪边界。
68
72
 
69
73
  细节见 [docs/engineering-notes.md](docs/engineering-notes.md)。
70
74
 
@@ -108,7 +112,7 @@ npm test
108
112
  | CI 阻塞门禁(`test:ci`) | Node 22 | 全量减去下面三项 |
109
113
  | CI 非阻塞 job | Node 22 | `test:perf` + `test:coverage`,`continue-on-error`,结果只写进摘要 |
110
114
 
111
- 跑测试请用 Node 22+:浏览器 fixture 依赖全局 `WebSocket`/`fetch`,版本不足会在测试处明确报错(插件本身的运行没有这个要求)。`npm test` 比 CI 的 `test:ci` 多出 `contour-coverage`、`contour-perf`、`contour-density` 三项:前两项由 CI 的非阻塞 job 单独跑,`contour-density` 目前不在 CI 中运行。
115
+ 跑测试请用 Node 22+:浏览器 fixture 依赖全局 `WebSocket`/`fetch`,版本不足会在测试处明确报错(插件本身的运行没有这个要求)。`npm test` 比 CI 的 `test:ci` 多出 `contour-coverage`、`contour-perf` 两项:这两项重(渲染全图 / 性能计时),由 CI 的非阻塞 job 单独跑(`continue-on-error`),结果只写进 PR 摘要而不阻塞合并。
112
116
 
113
117
  ## 项目结构
114
118
 
@@ -116,8 +120,7 @@ npm test
116
120
  src/client/ Client 侧源码片段(拼接顺序见 src/client/manifest.js)
117
121
  src/host/ Host 侧源码片段(拼接顺序见 src/host/manifest.js)
118
122
  src/styles/ theme.css:主题样式表(那一整个模板字面量的内容)
119
- src/contour-worker.js 等高线 worker 源码(npm run build:worker 嵌入产物)
120
- src/contour-webgl.js 等高线 WebGL 源码(同上)
123
+ src/contour/ 等高线 worker 源码:contour-worker.js + contour-webgl.js(npm run build:worker 嵌入产物)
121
124
  client.js Client 侧产物,由 src/client/ + src/styles/ 拼接而来
122
125
  index.js Host 侧产物,由 src/host/ 拼接而来;package.json 的 main 与 exports["."] 都指向它
123
126
  scripts/ 构建与门禁:lib/bundle-build.js 拼接器 + build-*.js 入口
@@ -127,7 +130,7 @@ sounds/ 生成的通知音(npm run sound:build 重新生成)
127
130
  cordis.patch.yml Bundle 注入配置
128
131
  check.js 样式表静态校验
129
132
  selftest.js 校验器自检
130
- test/ 渲染、设置、配色与性能测试
133
+ test/ 渲染、设置、配色与性能测试(tools/ 为截图与目视检查脚本)
131
134
  docs/ 设计、功能、工程与测试文档
132
135
  SECURITY.md 安全边界:发布产物清单与运行时权限(由 CI 的 package-check.js 与 files 白名单逐项核对)
133
136
  screenshots.json 界面截图清单(对应 assets/ 下的 webp)