dsh-plugin-workbench 0.0.15 → 0.0.16

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,17 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.0.16] - 2026-09-04
4
+
5
+ ### Fixed
6
+
7
+ - **适配 dsh 0.1.2-rc.1 布局 bundle**:两处补丁锚点失配导致插件启动时自动重打失败
8
+ (启动日志 `ui-layout patch exited 1`,explorer 布局不生效)。⑴ `css.explorerCol.rule`:
9
+ detailsCol 边框样式 `border-left:1px solid var(--dsw-alias-border-l2)` 在新版改为
10
+ `.5px solid var(--dsw-alias-border-l3)`,锚点与注入规则同步更新;⑵
11
+ `appframe.explorerColumn`:DetailsColumn 的 children 在新版被 `SessionProvider`
12
+ 包裹,锚点按新结构更新。其余 22 个锚点与 `computeColumns` 函数体逐字节未变。
13
+ # Changelog
14
+
3
15
  ## [0.0.15] - 2026-08-29
4
16
 
5
17
  ### Fixed
package/README.en.md CHANGED
@@ -158,6 +158,15 @@ dsh plugin --profile web remove dsh-plugin-workbench
158
158
  See [CONTRIBUTING](./CONTRIBUTING.md) and [CODE_OF_CONDUCT](./CODE_OF_CONDUCT.md); the changelog is in
159
159
  [CHANGELOG](./CHANGELOG.md).
160
160
 
161
+ ## Compatibility
162
+
163
+ - Tested on DSH `0.1.2-rc.1` (since 0.0.16 the layout patch anchors are adapted to that
164
+ version: the detailsCol border style changed from `1px/--dsw-alias-border-l2` to
165
+ `.5px/--dsw-alias-border-l3`, and the DetailsColumn children gained a `SessionProvider`
166
+ wrapper); for 0.1.1-rc.2 and earlier, use the 0.0.15 anchor table.
167
+ - Since 0.0.9 the plugin re-applies the layout patch automatically at startup, so DSH
168
+ upgrades normally need no manual action; on anchor mismatch the startup log shows
169
+ `ui-layout patch exited 1` — upgrading this plugin fixes it.
161
170
  ## Related plugins
162
171
 
163
172
  This plugin is part of **Pasumao's dsh plugin ecosystem**; the published plugins in the same series can be used
package/README.md CHANGED
@@ -145,6 +145,14 @@ dsh plugin --profile web remove dsh-plugin-workbench
145
145
  见 [CONTRIBUTING](./CONTRIBUTING.md) 与 [CODE_OF_CONDUCT](./CODE_OF_CONDUCT.md);
146
146
  变更记录见 [CHANGELOG](./CHANGELOG.md)。
147
147
 
148
+ ## 兼容性
149
+
150
+ - 实测于 DSH `0.1.2-rc.1`(0.0.16 起布局补丁锚点适配该版:detailsCol 边框样式
151
+ `1px/--dsw-alias-border-l2` → `.5px/--dsw-alias-border-l3`、DetailsColumn 的
152
+ children 新增 `SessionProvider` 包裹);0.1.1-rc.2 及更早版本用 0.0.15 的锚点表。
153
+ - 0.0.9 起插件启动时自动检测并重打布局补丁,DSH 升级后通常无需手动操作;
154
+ 锚点失配会在启动日志提示 `ui-layout patch exited 1`,此时升级本插件即可。
155
+
148
156
  ## 相关插件
149
157
 
150
158
  本插件属于 **Pasumao 的 dsh 插件生态**,同系列已发布插件可搭配使用:
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "dsh-plugin-workbench",
3
3
  "description": "VS Code-style workspace file explorer for the DeepSeek Harness web GUI — editable preview with syntax highlighting, tabs and line numbers, full right-click file operations (create / rename / delete / copy / cut / paste / reveal in file manager), inline image & markdown preview, @-mention files into chat, drag files into the composer, per-workspace state with undo. Turns the dsh web page into a lightweight code editor.",
4
- "version": "0.0.15",
4
+ "version": "0.0.16",
5
5
  "type": "module",
6
6
  "packageManager": "pnpm@11.21.0",
7
7
  "engines": {
@@ -48,8 +48,8 @@ const L = (...lines) => lines.join('\n')
48
48
  const REPLACEMENTS = [
49
49
  {
50
50
  id: 'css.explorerCol.rule',
51
- anchor: '.pI_x6G_detailsCol{border-left:1px solid var(--dsw-alias-border-l2);min-width:0;overflow:hidden}',
52
- replacement: '.pI_x6G_detailsCol{border-left:1px solid var(--dsw-alias-border-l2);min-width:0;overflow:hidden}.pI_x6G_explorerCol{background:var(--dsw-specific-sidebar-fill);border-right:1px solid var(--dsw-alias-border-l1);min-width:0;overflow:hidden}',
51
+ anchor: '.pI_x6G_detailsCol{border-left:.5px solid var(--dsw-alias-border-l3);min-width:0;overflow:hidden}',
52
+ replacement: '.pI_x6G_detailsCol{border-left:.5px solid var(--dsw-alias-border-l3);min-width:0;overflow:hidden}.pI_x6G_explorerCol{background:var(--dsw-specific-sidebar-fill);border-right:.5px solid var(--dsw-alias-border-l3);min-width:0;overflow:hidden}',
53
53
  },
54
54
  {
55
55
  id: 'css.explorerCol.handleContent',
@@ -174,7 +174,7 @@ const REPLACEMENTS = [
174
174
  },
175
175
  {
176
176
  id: 'appframe.explorerColumn',
177
- anchor: '\t\t\t\t\t(0, react_jsx_runtime.jsxs)(react_jsx_runtime.Fragment, { children: [(0, react_jsx_runtime.jsx)(CenterColumn, { children: renderSlot("conversation", {}) }), (0, react_jsx_runtime.jsx)(DetailsColumn, { children: renderSlot("details", {}) })] }),',
177
+ anchor: '\t\t\t\t\t(0, react_jsx_runtime.jsxs)(react_jsx_runtime.Fragment, { children: [(0, react_jsx_runtime.jsx)(CenterColumn, { children: renderSlot("conversation", {}) }), (0, react_jsx_runtime.jsx)(DetailsColumn, { children: (0, react_jsx_runtime.jsx)(SessionProvider, { children: renderSlot("details", {}) }) })] }),',
178
178
  replacement: L(
179
179
  '\t\t\t\t\t(0, react_jsx_runtime.jsx)("div", {',
180
180
  '\t\t\t\t\t\tclassName: AppFrame_module_css_default.explorerCol,',
@@ -182,7 +182,7 @@ const REPLACEMENTS = [
182
182
  '\t\t\t\t\t\t\twidth: cols.explorer',
183
183
  '\t\t\t\t\t\t})',
184
184
  '\t\t\t\t\t}),',
185
- '\t\t\t\t\t(0, react_jsx_runtime.jsxs)(react_jsx_runtime.Fragment, { children: [(0, react_jsx_runtime.jsx)(CenterColumn, { children: renderSlot("conversation", {}) }), (0, react_jsx_runtime.jsx)(DetailsColumn, { children: renderSlot("details", {}) })] }),',
185
+ '\t\t\t\t\t(0, react_jsx_runtime.jsxs)(react_jsx_runtime.Fragment, { children: [(0, react_jsx_runtime.jsx)(CenterColumn, { children: renderSlot("conversation", {}) }), (0, react_jsx_runtime.jsx)(DetailsColumn, { children: (0, react_jsx_runtime.jsx)(SessionProvider, { children: renderSlot("details", {}) }) })] }),',
186
186
  ),
187
187
  },
188
188
  {