@cerbur/clutch-dsh-worktree 0.1.8 → 0.1.9
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 +18 -23
- package/README.zh.md +17 -21
- package/lib/client/WorktreeContext.d.ts +1 -1
- package/lib/client/WorktreeContext.d.ts.map +1 -1
- package/lib/client/WorktreeContext.js +1 -1
- package/lib/client/WorktreeContext.js.map +1 -1
- package/lib/client/WorktreeHeroContext.d.ts.map +1 -1
- package/lib/client/WorktreeHeroContext.js +1 -1
- package/lib/client/WorktreeHeroContext.js.map +1 -1
- package/lib/client/WorktreeModeAction.d.ts.map +1 -1
- package/lib/client/WorktreeModeAction.js.map +1 -1
- package/lib/client/WorktreeSurface.d.ts +1 -1
- package/lib/client/WorktreeSurface.d.ts.map +1 -1
- package/lib/client/WorktreeSurface.js +221 -45
- package/lib/client/WorktreeSurface.js.map +1 -1
- package/lib/client/dsh-rc1-slot-contract.d.ts +43 -0
- package/lib/client/dsh-rc1-slot-contract.d.ts.map +1 -0
- package/lib/client/dsh-rc1-slot-contract.js +2 -0
- package/lib/client/dsh-rc1-slot-contract.js.map +1 -0
- package/lib/client/dsh-slot-contract.d.ts +43 -0
- package/lib/client/dsh-slot-contract.d.ts.map +1 -0
- package/lib/client/dsh-slot-contract.js +2 -0
- package/lib/client/dsh-slot-contract.js.map +1 -0
- package/lib/client/entry.d.ts +2 -2
- package/lib/client/entry.d.ts.map +1 -1
- package/lib/client/entry.js +144 -26
- package/lib/client/entry.js.map +1 -1
- package/lib/client/view-mode-store.d.ts +1 -1
- package/lib/client/view-mode-store.d.ts.map +1 -1
- package/lib/client/view-mode-store.js +1 -1
- package/lib/client/view-mode-store.js.map +1 -1
- package/lib/client/view-mode.d.ts +20 -6
- package/lib/client/view-mode.d.ts.map +1 -1
- package/lib/client/view-mode.js +35 -10
- package/lib/client/view-mode.js.map +1 -1
- package/lib/client/virtual-workspace-membership.d.ts +12 -10
- package/lib/client/virtual-workspace-membership.d.ts.map +1 -1
- package/lib/client/virtual-workspace-membership.js +82 -57
- package/lib/client/virtual-workspace-membership.js.map +1 -1
- package/lib/client/worktree-context-store.d.ts +7 -15
- package/lib/client/worktree-context-store.d.ts.map +1 -1
- package/lib/client/worktree-context-store.js +20 -13
- package/lib/client/worktree-context-store.js.map +1 -1
- package/lib/client/worktree-expand-state.d.ts +5 -4
- package/lib/client/worktree-expand-state.d.ts.map +1 -1
- package/lib/client/worktree-expand-state.js.map +1 -1
- package/lib/client/worktree-session-fork.d.ts +18 -3
- package/lib/client/worktree-session-fork.d.ts.map +1 -1
- package/lib/client/worktree-session-fork.js +125 -36
- package/lib/client/worktree-session-fork.js.map +1 -1
- package/lib/client/worktree-session-order.d.ts +2 -2
- package/lib/client/worktree-session-order.d.ts.map +1 -1
- package/lib/client/worktree-surface-rows.d.ts.map +1 -1
- package/lib/client/worktree-surface-rows.js +1 -1
- package/lib/client/worktree-surface-rows.js.map +1 -1
- package/lib/client/worktree-surface-types.d.ts +19 -1
- package/lib/client/worktree-surface-types.d.ts.map +1 -1
- package/lib/client/worktree-view-read.d.ts +18 -8
- package/lib/client/worktree-view-read.d.ts.map +1 -1
- package/lib/client/worktree-view-read.js +75 -10
- package/lib/client/worktree-view-read.js.map +1 -1
- package/lib/client.js +1359 -169
- package/lib/client.js.map +1 -1
- package/lib/host/worktree-permission.d.ts +3 -2
- package/lib/host/worktree-permission.d.ts.map +1 -1
- package/lib/host/worktree-permission.js +29 -5
- package/lib/host/worktree-permission.js.map +1 -1
- package/lib/manage/manager-worktrees.d.ts.map +1 -1
- package/lib/manage/manager-worktrees.js +5 -2
- package/lib/manage/manager-worktrees.js.map +1 -1
- package/lib/manage/manager.d.ts.map +1 -1
- package/lib/manage/manager.js +2 -0
- package/lib/manage/manager.js.map +1 -1
- package/lib/provider/git.d.ts.map +1 -1
- package/lib/provider/git.js +4 -0
- package/lib/provider/git.js.map +1 -1
- package/lib/provider/sidecar.js +1 -1
- package/lib/provider/sidecar.js.map +1 -1
- package/lib/provider/subprocess.d.ts.map +1 -1
- package/lib/provider/subprocess.js +8 -0
- package/lib/provider/subprocess.js.map +1 -1
- package/lib/provider/transaction.js +2 -2
- package/lib/provider/transaction.js.map +1 -1
- package/package.json +48 -34
package/README.md
CHANGED
|
@@ -80,22 +80,14 @@ the adjacent Import tab, and a standard dropdown containing safe example branch/
|
|
|
80
80
|
|
|
81
81
|
### Compatibility and prerequisites
|
|
82
82
|
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
`conversation.session.header.actions` seat.
|
|
92
|
-
- Git must be installed and available on `PATH` for Worktree operations. A Workspace must be
|
|
93
|
-
inside a Git repository with an initial commit and at least one local branch. A missing Git
|
|
94
|
-
executable shows install guidance and no command block; a missing repository, initial commit,
|
|
95
|
-
or local branch shows copyable setup commands. The plugin does not run setup or installation
|
|
96
|
-
commands or modify Workspace files.
|
|
97
|
-
- The package declares an installable `dsh.bundle` and provides `cordis.patch.yml`; its browser
|
|
98
|
-
UI is declared through the `dsh.client` metadata.
|
|
83
|
+
The supported compatibility facts are:
|
|
84
|
+
|
|
85
|
+
| Component | Min Version | Notes |
|
|
86
|
+
| --- | --- | --- |
|
|
87
|
+
| DSH Client | `>=0.1.2-rc.1` | Requires the Session/Workspace Controllers and Client Store |
|
|
88
|
+
| DSH Host | `>=0.1.2-rc.1` | Requires the Typert Gateway `/api` protocol and subprocess capability |
|
|
89
|
+
| Git | `>=2.20.0` | Requires worktree core commands and branch discovery |
|
|
90
|
+
| Node.js | `>=20.0.0` | LTS is recommended |
|
|
99
91
|
|
|
100
92
|
## Installation
|
|
101
93
|
|
|
@@ -131,12 +123,13 @@ npm view @cerbur/clutch-dsh-worktree version --registry=https://registry.npmjs.o
|
|
|
131
123
|
|
|
132
124
|
For source-based development or validation, prepare the upstream checkout first. The current
|
|
133
125
|
upstream default branch is `master`; follow the repository's default branch if it changes later.
|
|
126
|
+
For the minimum rc.1 compatibility validation path, check out `dsh-v0.1.2-rc.1`:
|
|
134
127
|
|
|
135
128
|
```bash
|
|
136
129
|
git clone https://github.com/deepseek-ai/deepseek-harness.git
|
|
137
130
|
cd deepseek-harness
|
|
138
131
|
git fetch origin
|
|
139
|
-
git
|
|
132
|
+
git checkout dsh-v0.1.2-rc.1
|
|
140
133
|
pnpm install
|
|
141
134
|
pnpm run build
|
|
142
135
|
```
|
|
@@ -239,8 +232,8 @@ blank-session Hero. The displayed language follows DSH's current language settin
|
|
|
239
232
|
chooses the next available numeric suffix for the name; existing names are skipped.
|
|
240
233
|
3. The target Worktree path must be absolute, belong to the same Project, and differ from the
|
|
241
234
|
Project root. Relative paths, a different Project, or the Project root are rejected.
|
|
242
|
-
4. Git must be installed and available on `PATH`. A missing Git executable shows install guidance
|
|
243
|
-
|
|
235
|
+
4. Git must be installed and available on `PATH`. A missing Git executable shows install guidance and no command block;
|
|
236
|
+
install Git, restart DSH, and retry. If the repository, initial commit,
|
|
244
237
|
or local branch is missing, follow the copyable setup commands in the dialog. The plugin only
|
|
245
238
|
renders this guidance; it does not run setup or installation commands or edit business files.
|
|
246
239
|
|
|
@@ -265,9 +258,10 @@ blank-session Hero. The displayed language follows DSH's current language settin
|
|
|
265
258
|
|
|
266
259
|
- Use Main's `+` to create a normal DSH Session in the Project-root view.
|
|
267
260
|
- Use a Worktree's `+` to create or reuse a Session with that Worktree as its runtime cwd. The
|
|
268
|
-
plugin calls the
|
|
269
|
-
external binding and opens the Session. The browser-local `{ workspaceId, sessionId }`
|
|
270
|
-
projection is refreshed afterward, so the newly created Session does not briefly
|
|
261
|
+
plugin calls the DSH Session Controller with `ctx.sessions.create({ cwd: worktreePath })`, then
|
|
262
|
+
saves the external binding and opens the Session. The browser-local `{ workspaceId, sessionId }`
|
|
263
|
+
membership projection is refreshed afterward, so the newly created Session does not briefly
|
|
264
|
+
appear in Main.
|
|
271
265
|
- The connector reuses an unarchived blank Session with the exact target cwd when possible. An
|
|
272
266
|
already-bound Session opens directly; an unbound candidate is bound before projection and
|
|
273
267
|
opening. Otherwise the new-Session flow is `create → bind → open → refresh`, and concurrent
|
|
@@ -325,6 +319,7 @@ blank-session Hero. The displayed language follows DSH's current language settin
|
|
|
325
319
|
|
|
326
320
|
- Drag Worktrees within their owning Workspace. The ordered `worktrees` array is persisted in
|
|
327
321
|
the plugin sidecar; Main is a fixed first row and Worktrees cannot move across Workspaces.
|
|
322
|
+
- Newly created or imported Worktrees are inserted at the head of their Workspace's Worktree list; existing Worktree order is preserved and Main remains fixed first.
|
|
328
323
|
- Open the shared Main and Worktree options menu to copy the selected row's absolute path. Main
|
|
329
324
|
and detached/removed Worktrees show only `Copy path`; active Worktrees also show `Remove
|
|
330
325
|
Worktree` with a confirmation dialog.
|
|
@@ -430,7 +425,7 @@ it retains the marker and surfaces `WORKTREE_RECOVERY_REQUIRED` or
|
|
|
430
425
|
also carry an opaque mutation token from the latest Worktree projection so a stale UI cannot act
|
|
431
426
|
on a changed record.
|
|
432
427
|
|
|
433
|
-
The Worktree session flow sends the independent Worktree cwd through the
|
|
428
|
+
The Worktree session flow sends the independent Worktree cwd through the DSH Session Controller and
|
|
434
429
|
keeps `{ workspaceId, sessionId }` as a browser-local membership projection rather than a
|
|
435
430
|
persistent DSH attach. It does not modify DSH source, Session metadata, or native Workspace
|
|
436
431
|
storage. The projection is replayed after native list refreshes and removed when the binding
|
package/README.zh.md
CHANGED
|
@@ -71,20 +71,14 @@ Session 元数据、原生列表和会话历史的唯一事实来源。插件只
|
|
|
71
71
|
|
|
72
72
|
### 兼容性与前置条件
|
|
73
73
|
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
- Worktree 操作要求 Git 已安装且可在 PATH 中使用。Workspace 必须位于 Git repository 中,
|
|
83
|
-
且至少有一个初始 commit 和本地 branch。Git 可执行文件缺失时显示安装提示且不显示命令块;
|
|
84
|
-
缺少 repository、初始 commit 或本地 branch 时显示可复制的 setup 命令。插件不会执行 setup
|
|
85
|
-
或安装命令,也不会修改 Workspace 文件。
|
|
86
|
-
- package 声明了可安装的 `dsh.bundle` 并提供 `cordis.patch.yml`;浏览器 UI 通过
|
|
87
|
-
`dsh.client` metadata 声明。
|
|
74
|
+
兼容性事实表如下:
|
|
75
|
+
|
|
76
|
+
| 组件 / Component | 最低版本 / Min Version | 说明 / Notes |
|
|
77
|
+
| --- | --- | --- |
|
|
78
|
+
| DSH Client | `>=0.1.2-rc.1` | 依赖 Session/Workspace Controller 及 Client Store |
|
|
79
|
+
| DSH Host | `>=0.1.2-rc.1` | 依赖 Typert Gateway `/api` 协议与 subprocess capability |
|
|
80
|
+
| Git | `>=2.20.0` | 要求支持 worktree 核心命令与 branch 发现 |
|
|
81
|
+
| Node.js | `>=20.0.0` | 推荐使用 LTS 版本 |
|
|
88
82
|
|
|
89
83
|
## 安装
|
|
90
84
|
|
|
@@ -118,13 +112,14 @@ npm view @cerbur/clutch-dsh-worktree version --registry=https://registry.npmjs.o
|
|
|
118
112
|
### 准备当前 upstream DSH checkout
|
|
119
113
|
|
|
120
114
|
进行源码开发或验证时,先准备 upstream checkout。当前 upstream 默认分支是 `master`;如果仓库
|
|
121
|
-
|
|
115
|
+
未来切换默认分支,应跟随仓库的当前默认分支。最小 rc.1 兼容性验证路径切换到
|
|
116
|
+
`dsh-v0.1.2-rc.1`:
|
|
122
117
|
|
|
123
118
|
```bash
|
|
124
119
|
git clone https://github.com/deepseek-ai/deepseek-harness.git
|
|
125
120
|
cd deepseek-harness
|
|
126
121
|
git fetch origin
|
|
127
|
-
git
|
|
122
|
+
git checkout dsh-v0.1.2-rc.1
|
|
128
123
|
pnpm install
|
|
129
124
|
pnpm run build
|
|
130
125
|
```
|
|
@@ -247,10 +242,10 @@ pnpm dsh plugin --profile web remove @cerbur/clutch-dsh-worktree
|
|
|
247
242
|
### 创建 Main 和 Worktree Session
|
|
248
243
|
|
|
249
244
|
- 使用 Main 的 `+`,在 Project 根目录视角中创建普通 DSH Session。
|
|
250
|
-
- 使用 Worktree 的 `+`,创建或复用 runtime cwd 指向该 Worktree 的 Session。插件通过
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
Session 不会短暂出现在 Main 中。
|
|
245
|
+
- 使用 Worktree 的 `+`,创建或复用 runtime cwd 指向该 Worktree 的 Session。插件通过 DSH
|
|
246
|
+
Session Controller 调用 `ctx.sessions.create({ cwd: worktreePath })`,随后保存外部 binding
|
|
247
|
+
并打开该 Session。当前浏览器内的 `{ workspaceId, sessionId }` membership projection 会在
|
|
248
|
+
之后刷新,因此新建 Session 不会短暂出现在 Main 中。
|
|
254
249
|
- 如果存在目标 cwd 完全匹配的未归档 blank Session,连接器会优先复用它。已绑定的 Session
|
|
255
250
|
会直接打开;未绑定的候选会先 binding,再 projection 和打开。否则执行
|
|
256
251
|
新建路径执行 `create → bind → open → refresh`,同一个 Worktree 的并发点击会合并。
|
|
@@ -298,6 +293,7 @@ pnpm dsh plugin --profile web remove @cerbur/clutch-dsh-worktree
|
|
|
298
293
|
|
|
299
294
|
- 在所属 Workspace 内拖动 Worktree。排序持久化在 plugin sidecar 的有序 `worktrees` 数组中;
|
|
300
295
|
Main 是固定的第一行,Worktree 不能跨 Workspace 移动。
|
|
296
|
+
- 新创建或新导入的 Worktree 会插入所属 Workspace 的 Worktree 列表队头;已有 Worktree 顺序保持不变,Main 固定在第一位。
|
|
301
297
|
- 打开 Main 和 Worktree 共用的选项菜单复制所选行的绝对路径。Main 和 detached/removed Worktree
|
|
302
298
|
只显示“复制路径”;active Worktree 还显示“移除 Worktree”并要求确认。
|
|
303
299
|
- 导入的 Worktree 与 plugin 创建的 Worktree 显示相同的 active 选项菜单。两种来源都执行真实
|
|
@@ -388,7 +384,7 @@ Host 启动时,插件会针对已知 DSH Workspace 执行一次尽力而为的
|
|
|
388
384
|
状态。破坏性操作还可以携带最新 Worktree projection 生成的 opaque mutation token,避免
|
|
389
385
|
过期 UI 对已变化的记录执行操作。
|
|
390
386
|
|
|
391
|
-
Worktree Session 流程将独立的 Worktree cwd 交给
|
|
387
|
+
Worktree Session 流程将独立的 Worktree cwd 交给 DSH Session Controller,并将
|
|
392
388
|
`{ workspaceId, sessionId }` 保持为浏览器本地 membership projection,而不是持久化的 DSH
|
|
393
389
|
attach。它不会修改 DSH 源码、Session metadata 或原生 Workspace 存储。native list 刷新后会
|
|
394
390
|
重放 projection;binding 消失或 Client dispose 时会移除 projection。
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { SnapshotStore } from '@deepseek-ai/dsh-client-
|
|
1
|
+
import type { SnapshotStore } from '@deepseek-ai/dsh-client-store';
|
|
2
2
|
import type { InjectFace, PropsLocale, PropsRuntime } from '@deepseek-ai/dsh-client-ui-slots';
|
|
3
3
|
import type { WorktreeContextState } from './worktree-context-store.js';
|
|
4
4
|
import { WORKTREE_NS } from './locales.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WorktreeContext.d.ts","sourceRoot":"","sources":["../../src/client/WorktreeContext.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"WorktreeContext.d.ts","sourceRoot":"","sources":["../../src/client/WorktreeContext.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,KAAK,EACV,UAAU,EACV,WAAW,EACX,YAAY,EAEb,MAAM,kCAAkC,CAAC;AAO1C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAG3C,mEAAmE;AACnE,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,KAAK,EAAE;QACd,QAAQ,CAAC,eAAe,EAAE,aAAa,CAAC,oBAAoB,CAAC,CAAC;KAC/D,CAAC;CACH;AAID,0DAA0D;AAC1D,MAAM,MAAM,0BAA0B,GACpC,YAAY,CAAC,qCAAqC,CAAC,GACnD,WAAW,CAAC,OAAO,WAAW,CAAC,GAC/B,UAAU,CAAC,uBAAuB,CAAC,CAAC;AA6BtC,oFAAoF;AACpF,wBAAgB,qBAAqB,CAAC,EACpC,SAAS,EACT,kBAAkB,EAClB,CAAC,GACF,EAAE,0BAA0B,sCAI5B"}
|
|
@@ -7,7 +7,7 @@ function WorktreeContextLabel({ value, t, }) {
|
|
|
7
7
|
const ariaLabel = value.kind === 'main'
|
|
8
8
|
? t('context.main', { name: value.label })
|
|
9
9
|
: t('context.worktree', { name: value.label });
|
|
10
|
-
return (_jsx(HoverCard, { anchor: _jsxs("span", { className: styles.headerContext, title: value.label, "aria-label": ariaLabel, children: [_jsx(IconBranchOutline16, { size: 14, className: styles.contextIcon, "aria-hidden": "true" }), _jsx("span", { className: styles.contextLabel, children: value.label })] }), content: _jsx("div", { className: styles.contextHoverTitle, children: value.label }), openDelayMs: 500 }));
|
|
10
|
+
return (_jsx(HoverCard, { anchor: _jsxs("span", { className: styles.headerContext, title: value.label, "aria-label": ariaLabel, children: [_jsx(IconBranchOutline16, { size: 14, className: styles.contextIcon, "aria-hidden": "true" }), _jsx("span", { className: styles.contextLabel, children: value.label })] }), content: _jsx("div", { className: styles.contextHoverTitle, children: value.label }), openDelayMs: 500, copyLabel: t('copy'), copiedLabel: t('hover.copied') }));
|
|
11
11
|
}
|
|
12
12
|
/** Render the current branch or active Worktree branch beside the Session title. */
|
|
13
13
|
export function WorktreeHeaderContext({ sessionId, useWorktreeContext, t, }) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WorktreeContext.js","sourceRoot":"","sources":["../../src/client/WorktreeContext.tsx"],"names":[],"mappings":";AAOA,OAAO,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;
|
|
1
|
+
{"version":3,"file":"WorktreeContext.js","sourceRoot":"","sources":["../../src/client/WorktreeContext.tsx"],"names":[],"mappings":";AAOA,OAAO,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AAQvF,OAAO,MAAM,MAAM,wBAAwB,CAAC;AAiB5C,SAAS,oBAAoB,CAAC,EAC5B,KAAK,EACL,CAAC,GAIF;IACC,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM;QAAE,OAAO,IAAI,CAAC;IACvC,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,KAAK,MAAM;QACrC,CAAC,CAAC,CAAC,CAAC,cAAc,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC;QAC1C,CAAC,CAAC,CAAC,CAAC,kBAAkB,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;IACjD,OAAO,CACL,KAAC,SAAS,IACR,MAAM,EACJ,gBAAM,SAAS,EAAE,MAAM,CAAC,aAAa,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,gBAAc,SAAS,aAC9E,KAAC,mBAAmB,IAAC,IAAI,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,CAAC,WAAW,iBAAc,MAAM,GAAG,EACnF,eAAM,SAAS,EAAE,MAAM,CAAC,YAAY,YAAG,KAAK,CAAC,KAAK,GAAQ,IACrD,EAET,OAAO,EAAE,cAAK,SAAS,EAAE,MAAM,CAAC,iBAAiB,YAAG,KAAK,CAAC,KAAK,GAAO,EACtE,WAAW,EAAE,GAAG,EAChB,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,EACpB,WAAW,EAAE,CAAC,CAAC,cAAc,CAAC,GAC9B,CACH,CAAC;AACJ,CAAC;AAED,oFAAoF;AACpF,MAAM,UAAU,qBAAqB,CAAC,EACpC,SAAS,EACT,kBAAkB,EAClB,CAAC,GAC0B;IAC3B,MAAM,KAAK,GAAG,kBAAkB,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC;IACzD,IAAI,KAAK,CAAC,SAAS,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IAC/C,OAAO,KAAC,oBAAoB,IAAC,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,GAAI,CAAC;AAC5D,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WorktreeHeroContext.d.ts","sourceRoot":"","sources":["../../src/client/WorktreeHeroContext.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,UAAU,EACV,WAAW,EACX,YAAY,EAEb,MAAM,kCAAkC,CAAC;
|
|
1
|
+
{"version":3,"file":"WorktreeHeroContext.d.ts","sourceRoot":"","sources":["../../src/client/WorktreeHeroContext.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,UAAU,EACV,WAAW,EACX,YAAY,EAEb,MAAM,kCAAkC,CAAC;AAI1C,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAEpE,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAK3C,MAAM,MAAM,wBAAwB,GAClC,YAAY,CAAC,eAAe,CAAC,GAC7B,WAAW,CAAC,OAAO,WAAW,CAAC,GAC/B,UAAU,CAAC,uBAAuB,CAAC,CAAC;AAgFtC;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,EAClC,kBAAkB,EAClB,CAAC,GACF,EAAE,wBAAwB,sCAkF1B"}
|
|
@@ -128,6 +128,6 @@ export function WorktreeHeroContext({ useWorktreeContext, t, }) {
|
|
|
128
128
|
return (_jsx("span", { className: styles.heroContextHost, "data-worktree-hero-host": true, style: placement === null ? { visibility: 'hidden' } : {
|
|
129
129
|
left: `${placement.left}px`,
|
|
130
130
|
top: `${placement.top}px`,
|
|
131
|
-
}, children: _jsx(HoverCard, { anchor: (_jsx("span", { ref: measure, className: styles.heroContext, "data-worktree-hero-context": true, "aria-label": ariaLabel, title: label, children: label })), content: _jsx("div", { className: styles.contextHoverTitle, children: label }), openDelayMs: 500 }) }));
|
|
131
|
+
}, children: _jsx(HoverCard, { anchor: (_jsx("span", { ref: measure, className: styles.heroContext, "data-worktree-hero-context": true, "aria-label": ariaLabel, title: label, children: label })), content: _jsx("div", { className: styles.contextHoverTitle, children: label }), openDelayMs: 500, copyLabel: t('copy'), copiedLabel: t('hover.copied') }) }));
|
|
132
132
|
}
|
|
133
133
|
//# sourceMappingURL=WorktreeHeroContext.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WorktreeHeroContext.js","sourceRoot":"","sources":["../../src/client/WorktreeHeroContext.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAO/D,OAAO,EAAE,SAAS,EAAE,MAAM,uCAAuC,CAAC;
|
|
1
|
+
{"version":3,"file":"WorktreeHeroContext.js","sourceRoot":"","sources":["../../src/client/WorktreeHeroContext.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WorktreeModeAction.d.ts","sourceRoot":"","sources":["../../src/client/WorktreeModeAction.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAC;
|
|
1
|
+
{"version":3,"file":"WorktreeModeAction.d.ts","sourceRoot":"","sources":["../../src/client/WorktreeModeAction.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAC;AAI9F,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAGpE,kEAAkE;AAClE,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;CAC7B;AAED,wFAAwF;AACxF,MAAM,MAAM,uBAAuB,GAAG,YAAY,CAAC,uBAAuB,CAAC,GACzE,UAAU,CAAC,UAAU,CAAC,OAAO,uBAAuB,CAAC,CAAC,GACtD,WAAW,CAAC,OAAO,WAAW,CAAC,GAC/B,0BAA0B,CAAC;AAE7B,yEAAyE;AACzE,wBAAgB,kBAAkB,CAAC,EACjC,IAAI,EACJ,QAAQ,EACR,OAAO,EACP,CAAC,EACD,SAAS,GACV,EAAE,uBAAuB,sCAsBzB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WorktreeModeAction.js","sourceRoot":"","sources":["../../src/client/WorktreeModeAction.tsx"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"WorktreeModeAction.js","sourceRoot":"","sources":["../../src/client/WorktreeModeAction.tsx"],"names":[],"mappings":";AAGA,OAAO,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AAG5E,OAAO,MAAM,MAAM,gBAAgB,CAAC;AAapC,yEAAyE;AACzE,MAAM,UAAU,kBAAkB,CAAC,EACjC,IAAI,EACJ,QAAQ,EACR,OAAO,EACP,CAAC,EACD,SAAS,GACe;IACxB,IAAI,CAAC,SAAS;QAAE,OAAO,IAAI,CAAC;IAC5B,MAAM,IAAI,GAAG,QAAQ,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IACjD,MAAM,MAAM,GAAG,IAAI,KAAK,UAAU,CAAC;IACnC,OAAO,CACL,kBACE,IAAI,EAAC,QAAQ,EACb,SAAS,EAAE,MAAM,CAAC,MAAM,oDAEX,MAAM,IAAI,SAAS,oBAChB,CAAC,IAAI,IAAI,SAAS,gBACtB,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,kBACtC,MAAM,EACpB,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,EAChD,OAAO,EAAE,GAAG,EAAE;YACZ,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;QACjE,CAAC,aAED,KAAC,mBAAmB,IAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,GAAI,EAC5C,IAAI,IAAI,eAAM,SAAS,EAAE,MAAM,CAAC,WAAW,YAAG,CAAC,CAAC,YAAY,CAAC,GAAQ,IAC/D,CACV,CAAC;AACJ,CAAC"}
|
|
@@ -4,5 +4,5 @@ export type { WorktreeSurfaceInjected, WorktreeSurfaceProps } from './worktree-s
|
|
|
4
4
|
* Peer Worktree navigation surface. It keeps the original DSH Workspace mode
|
|
5
5
|
* intact and renders a browser-local Workspace → Worktree → Session projection.
|
|
6
6
|
*/
|
|
7
|
-
export declare function WorktreeSurface({ useStore, actions, useSessions, useWorkspaces, t, available, expandState, sessionOrder, manager, permission, confirmFullAccess, fullAccessConfirmation, onPermissionResult, onPermissionNotice, permissionNotice, invalidateWorktreeContext, createWorkspace, createSessionForWorktree: createSessionCallback, createMainSession, renameWorkspace, deleteWorkspace, insertWorkspaceBefore, insertSessionBefore, insertWorktreeBefore, renameSession, forkSession, archiveSession, forkRecovery, retryForkSession, ensureSessionWorkspace, syncSessionWorkspaces, openSession, }: WorktreeSurfaceProps): import("react").JSX.Element | null;
|
|
7
|
+
export declare function WorktreeSurface({ useStore, actions, useSessions, useWorkspaces, t, available, expandState, sessionOrder, manager, viewReader, permission, confirmFullAccess, fullAccessConfirmation, onPermissionResult, onPermissionNotice, permissionNotice, invalidateWorktreeContext, createWorkspace, createSessionForWorktree: createSessionCallback, createMainSession, renameWorkspace, deleteWorkspace, insertWorkspaceBefore, insertSessionBefore, insertWorktreeBefore, renameSession, forkSession, archiveSession, forkRecovery, retryForkSession, ensureSessionWorkspace, syncSessionWorkspaces, openSession, }: WorktreeSurfaceProps): import("react").JSX.Element | null;
|
|
8
8
|
//# sourceMappingURL=WorktreeSurface.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WorktreeSurface.d.ts","sourceRoot":"","sources":["../../src/client/WorktreeSurface.tsx"],"names":[],"mappings":"AAiEA,OAAO,KAAK,EAQV,oBAAoB,EASrB,MAAM,6BAA6B,CAAC;AA6BrC,YAAY,EAAE,uBAAuB,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;
|
|
1
|
+
{"version":3,"file":"WorktreeSurface.d.ts","sourceRoot":"","sources":["../../src/client/WorktreeSurface.tsx"],"names":[],"mappings":"AAiEA,OAAO,KAAK,EAQV,oBAAoB,EASrB,MAAM,6BAA6B,CAAC;AA6BrC,YAAY,EAAE,uBAAuB,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAwEjG;;;GAGG;AACH,wBAAgB,eAAe,CAAC,EAC9B,QAAQ,EACR,OAAO,EACP,WAAW,EACX,aAAa,EACb,CAAC,EACD,SAAS,EACT,WAAW,EACX,YAAY,EACZ,OAAO,EACP,UAAU,EACV,UAAU,EACV,iBAAiB,EACjB,sBAAsB,EACtB,kBAAkB,EAClB,kBAAkB,EAClB,gBAAgB,EAChB,yBAAyB,EACzB,eAAe,EACf,wBAAwB,EAAE,qBAAqB,EAC/C,iBAAiB,EACjB,eAAe,EACf,eAAe,EACf,qBAAqB,EACrB,mBAAmB,EACnB,oBAAoB,EACpB,aAAa,EACb,WAAW,EACX,cAAc,EACd,YAAY,EACZ,gBAAgB,EAChB,sBAAsB,EACtB,qBAAqB,EACrB,WAAW,GACZ,EAAE,oBAAoB,sCA66DtB"}
|