@cerbur/clutch-dsh-worktree 0.1.2 → 0.1.4
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 +247 -92
- package/README.zh.md +297 -0
- package/lib/client/WorktreeContext.d.ts +15 -0
- package/lib/client/WorktreeContext.d.ts.map +1 -0
- package/lib/client/WorktreeContext.js +19 -0
- package/lib/client/WorktreeContext.js.map +1 -0
- package/lib/client/WorktreeHeroContext.d.ts +10 -0
- package/lib/client/WorktreeHeroContext.d.ts.map +1 -0
- package/lib/client/WorktreeHeroContext.js +128 -0
- package/lib/client/WorktreeHeroContext.js.map +1 -0
- package/lib/client/WorktreeOverlay.d.ts +6 -0
- package/lib/client/WorktreeOverlay.d.ts.map +1 -0
- package/lib/client/WorktreeOverlay.js +8 -0
- package/lib/client/WorktreeOverlay.js.map +1 -0
- package/lib/client/WorktreeSurface.d.ts +3 -29
- package/lib/client/WorktreeSurface.d.ts.map +1 -1
- package/lib/client/WorktreeSurface.js +170 -314
- package/lib/client/WorktreeSurface.js.map +1 -1
- package/lib/client/entry.d.ts +1 -1
- package/lib/client/entry.d.ts.map +1 -1
- package/lib/client/entry.js +41 -14
- package/lib/client/entry.js.map +1 -1
- package/lib/client/locales.d.ts +30 -0
- package/lib/client/locales.d.ts.map +1 -1
- package/lib/client/locales.js +32 -2
- package/lib/client/locales.js.map +1 -1
- package/lib/client/session-view.d.ts +21 -0
- package/lib/client/session-view.d.ts.map +1 -0
- package/lib/client/session-view.js +26 -0
- package/lib/client/session-view.js.map +1 -0
- package/lib/client/sidebar-overlay-geometry.d.ts +1 -0
- package/lib/client/sidebar-overlay-geometry.d.ts.map +1 -1
- package/lib/client/sidebar-overlay-geometry.js +28 -17
- package/lib/client/sidebar-overlay-geometry.js.map +1 -1
- package/lib/client/virtual-workspace-membership.d.ts.map +1 -1
- package/lib/client/virtual-workspace-membership.js +17 -6
- package/lib/client/virtual-workspace-membership.js.map +1 -1
- package/lib/client/worktree-connection.d.ts +1 -0
- package/lib/client/worktree-connection.d.ts.map +1 -1
- package/lib/client/worktree-connection.js +4 -0
- package/lib/client/worktree-connection.js.map +1 -1
- package/lib/client/worktree-context-store.d.ts +45 -0
- package/lib/client/worktree-context-store.d.ts.map +1 -0
- package/lib/client/worktree-context-store.js +199 -0
- package/lib/client/worktree-context-store.js.map +1 -0
- package/lib/client/worktree-context.d.ts +32 -0
- package/lib/client/worktree-context.d.ts.map +1 -0
- package/lib/client/worktree-context.js +51 -0
- package/lib/client/worktree-context.js.map +1 -0
- package/lib/client/worktree-error-copy.d.ts.map +1 -1
- package/lib/client/worktree-error-copy.js +14 -0
- package/lib/client/worktree-error-copy.js.map +1 -1
- package/lib/client/worktree-session.d.ts +83 -0
- package/lib/client/worktree-session.d.ts.map +1 -0
- package/lib/client/worktree-session.js +185 -0
- package/lib/client/worktree-session.js.map +1 -0
- package/lib/client/worktree-surface-dialogs.d.ts +7 -0
- package/lib/client/worktree-surface-dialogs.d.ts.map +1 -0
- package/lib/client/worktree-surface-dialogs.js +86 -0
- package/lib/client/worktree-surface-dialogs.js.map +1 -0
- package/lib/client/worktree-surface-rows.d.ts +9 -0
- package/lib/client/worktree-surface-rows.d.ts.map +1 -0
- package/lib/client/worktree-surface-rows.js +223 -0
- package/lib/client/worktree-surface-rows.js.map +1 -0
- package/lib/client/worktree-surface-selectors.d.ts +9 -0
- package/lib/client/worktree-surface-selectors.d.ts.map +1 -0
- package/lib/client/worktree-surface-selectors.js +28 -0
- package/lib/client/worktree-surface-selectors.js.map +1 -0
- package/lib/client/worktree-surface-types.d.ts +233 -0
- package/lib/client/worktree-surface-types.d.ts.map +1 -0
- package/lib/client/worktree-surface-types.js +2 -0
- package/lib/client/worktree-surface-types.js.map +1 -0
- package/lib/client/worktree-view-actions.d.ts +34 -0
- package/lib/client/worktree-view-actions.d.ts.map +1 -0
- package/lib/client/worktree-view-actions.js +69 -0
- package/lib/client/worktree-view-actions.js.map +1 -0
- package/lib/client/worktree-view-errors.d.ts +20 -0
- package/lib/client/worktree-view-errors.d.ts.map +1 -0
- package/lib/client/worktree-view-errors.js +65 -0
- package/lib/client/worktree-view-errors.js.map +1 -0
- package/lib/client/worktree-view-read.d.ts +48 -0
- package/lib/client/worktree-view-read.d.ts.map +1 -0
- package/lib/client/worktree-view-read.js +134 -0
- package/lib/client/worktree-view-read.js.map +1 -0
- package/lib/client/worktree-view.d.ts +4 -63
- package/lib/client/worktree-view.d.ts.map +1 -1
- package/lib/client/worktree-view.js +4 -125
- package/lib/client/worktree-view.js.map +1 -1
- package/lib/client.js +1313 -363
- package/lib/client.js.map +1 -1
- package/lib/contract/index.contract.js +2 -0
- package/lib/contract/index.contract.js.map +1 -1
- package/lib/contract/index.d.ts +17 -2
- package/lib/contract/index.d.ts.map +1 -1
- package/lib/contract/index.js +2 -0
- package/lib/contract/index.js.map +1 -1
- package/lib/host/remote.d.ts.map +1 -1
- package/lib/host/remote.js +1 -0
- package/lib/host/remote.js.map +1 -1
- package/lib/host/service.d.ts +6 -1
- package/lib/host/service.d.ts.map +1 -1
- package/lib/host/service.js +6 -0
- package/lib/host/service.js.map +1 -1
- package/lib/manage/manager-context.d.ts +11 -0
- package/lib/manage/manager-context.d.ts.map +1 -0
- package/lib/manage/manager-context.js +2 -0
- package/lib/manage/manager-context.js.map +1 -0
- package/lib/manage/manager-sessions.d.ts +18 -0
- package/lib/manage/manager-sessions.d.ts.map +1 -0
- package/lib/manage/manager-sessions.js +91 -0
- package/lib/manage/manager-sessions.js.map +1 -0
- package/lib/manage/manager-support.d.ts +18 -0
- package/lib/manage/manager-support.d.ts.map +1 -0
- package/lib/manage/manager-support.js +174 -0
- package/lib/manage/manager-support.js.map +1 -0
- package/lib/manage/manager-worktrees.d.ts +27 -0
- package/lib/manage/manager-worktrees.d.ts.map +1 -0
- package/lib/manage/manager-worktrees.js +259 -0
- package/lib/manage/manager-worktrees.js.map +1 -0
- package/lib/manage/manager.d.ts +25 -62
- package/lib/manage/manager.d.ts.map +1 -1
- package/lib/manage/manager.js +32 -554
- package/lib/manage/manager.js.map +1 -1
- package/lib/provider/sidecar-persistence.d.ts +18 -0
- package/lib/provider/sidecar-persistence.d.ts.map +1 -0
- package/lib/provider/sidecar-persistence.js +162 -0
- package/lib/provider/sidecar-persistence.js.map +1 -0
- package/lib/provider/sidecar-schema.d.ts +6 -0
- package/lib/provider/sidecar-schema.d.ts.map +1 -0
- package/lib/provider/sidecar-schema.js +123 -0
- package/lib/provider/sidecar-schema.js.map +1 -0
- package/lib/provider/sidecar.d.ts +12 -68
- package/lib/provider/sidecar.d.ts.map +1 -1
- package/lib/provider/sidecar.js +61 -346
- package/lib/provider/sidecar.js.map +1 -1
- package/lib/provider/types.d.ts +2 -1
- package/lib/provider/types.d.ts.map +1 -1
- package/lib/provider/types.js.map +1 -1
- package/lib/typert.host.js +60 -18
- package/lib/typert.remote-client.d.ts +3 -1
- package/lib/typert.remote-client.d.ts.map +1 -1
- package/lib/typert.remote-client.js +60 -18
- package/package.json +6 -2
|
@@ -0,0 +1,223 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
+
import { useState } from 'react';
|
|
3
|
+
import { HoverCard, IconArchiveOutline20, IconBranchOutline16, IconChevronDownOutline14, IconChevronRightOutline14, IconEditOutline16, IconEllipsisOutline16, IconFolderClose16, IconFolderOpen16, IconPlusOutline16, IconTrashOutline16, Menu, StateDot, } from '@deepseek-ai/dsh-client-ui-primitives';
|
|
4
|
+
import { isBlankSession } from './session-view.js';
|
|
5
|
+
import { sessionLabel } from './worktree-surface-selectors.js';
|
|
6
|
+
import styles from './worktree.css';
|
|
7
|
+
function rowHalf(event) {
|
|
8
|
+
const rect = event.currentTarget.getBoundingClientRect();
|
|
9
|
+
return event.clientY < rect.top + rect.height / 2 ? 'before' : 'after';
|
|
10
|
+
}
|
|
11
|
+
/** Workspace row using the native DSH menu, fixed action column, and drag contract. */
|
|
12
|
+
export function WorktreeWorkspaceRow({ t, workspace, expanded, actionPending, menuOpen, drag, onToggle, onCreateWorktree, onRename, onDelete, onMenuOpenChange, }) {
|
|
13
|
+
const workspaceMenuItems = [
|
|
14
|
+
{
|
|
15
|
+
id: 'rename',
|
|
16
|
+
label: t('workspace.rename'),
|
|
17
|
+
icon: _jsx(IconEditOutline16, {}),
|
|
18
|
+
disabled: actionPending,
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
id: 'delete',
|
|
22
|
+
label: t('workspace.delete'),
|
|
23
|
+
icon: _jsx(IconTrashOutline16, {}),
|
|
24
|
+
danger: true,
|
|
25
|
+
disabled: actionPending,
|
|
26
|
+
},
|
|
27
|
+
];
|
|
28
|
+
const markerClass = drag.marker === 'before'
|
|
29
|
+
? styles.dropBefore
|
|
30
|
+
: drag.marker === 'after'
|
|
31
|
+
? styles.dropAfter
|
|
32
|
+
: '';
|
|
33
|
+
return (_jsxs("div", { className: `${styles.workspaceRow} ${markerClass}`, "data-workspace-drag": drag.active ? 'active' : undefined, "data-menu-open": menuOpen || undefined, draggable: true, onClick: () => {
|
|
34
|
+
onToggle();
|
|
35
|
+
}, onDragStart: (event) => {
|
|
36
|
+
event.dataTransfer.effectAllowed = 'move';
|
|
37
|
+
event.dataTransfer.setData('text/plain', workspace.workspaceId);
|
|
38
|
+
drag.start();
|
|
39
|
+
}, onDragEnd: drag.end, onDragOver: (event) => {
|
|
40
|
+
if (!drag.active)
|
|
41
|
+
return;
|
|
42
|
+
event.preventDefault();
|
|
43
|
+
event.dataTransfer.dropEffect = 'move';
|
|
44
|
+
drag.hover(rowHalf(event));
|
|
45
|
+
}, onDrop: (event) => {
|
|
46
|
+
if (!drag.active)
|
|
47
|
+
return;
|
|
48
|
+
event.preventDefault();
|
|
49
|
+
drag.drop(rowHalf(event));
|
|
50
|
+
}, children: [_jsx("button", { type: "button", className: `${styles.disclosureButton} ${styles.workspaceDisclosure}`, "aria-label": t(expanded ? 'workspace.collapse' : 'workspace.expand', {
|
|
51
|
+
name: workspace.title,
|
|
52
|
+
}), "aria-expanded": expanded, onClick: (event) => {
|
|
53
|
+
event.stopPropagation();
|
|
54
|
+
onToggle();
|
|
55
|
+
}, children: expanded ? (_jsx(IconChevronDownOutline14, { size: 18 })) : (_jsx(IconChevronRightOutline14, { size: 18 })) }), _jsx("span", { className: styles.workspaceIcon, "aria-hidden": "true", children: expanded ? _jsx(IconFolderOpen16, {}) : _jsx(IconFolderClose16, {}) }), _jsx("span", { className: styles.workspaceTitle, children: workspace.title }), _jsxs("span", { className: `${styles.treeActionSlot} ${styles.workspaceActions}`, children: [_jsx("span", { className: styles.menuAction, children: _jsx(Menu, { open: menuOpen, onClose: () => {
|
|
56
|
+
onMenuOpenChange(false);
|
|
57
|
+
}, items: workspaceMenuItems, onSelect: (id) => {
|
|
58
|
+
onMenuOpenChange(false);
|
|
59
|
+
if (id === 'rename')
|
|
60
|
+
onRename();
|
|
61
|
+
if (id === 'delete')
|
|
62
|
+
onDelete();
|
|
63
|
+
}, portal: true, closeOnPointerLeave: true, anchor: (_jsx("button", { type: "button", className: styles.iconButton, "data-workspace-menu": true, "aria-label": t('workspace.options', { name: workspace.title }), onClick: (event) => {
|
|
64
|
+
event.stopPropagation();
|
|
65
|
+
onMenuOpenChange(!menuOpen);
|
|
66
|
+
}, children: _jsx(IconEllipsisOutline16, {}) })) }) }), _jsx("button", { type: "button", className: styles.iconButton, "data-add-worktree": true, "aria-label": t('workspace.addWorktree', { name: workspace.title }), onClick: (event) => {
|
|
67
|
+
event.stopPropagation();
|
|
68
|
+
onCreateWorktree();
|
|
69
|
+
}, children: _jsx(IconPlusOutline16, {}) })] })] }));
|
|
70
|
+
}
|
|
71
|
+
/** Shared Main/Worktree group row with parameterized icon, state, and actions. */
|
|
72
|
+
export function WorktreeGroupRow({ t, kind, label, worktreeId, expanded, icon, workspaceTitle, state, stateLabel, onToggle, onCreateSession, menu, drag, }) {
|
|
73
|
+
const main = kind === 'main';
|
|
74
|
+
const markerClass = drag?.marker === 'before'
|
|
75
|
+
? styles.dropBefore
|
|
76
|
+
: drag?.marker === 'after'
|
|
77
|
+
? styles.dropAfter
|
|
78
|
+
: '';
|
|
79
|
+
const dragProps = drag === undefined
|
|
80
|
+
? {}
|
|
81
|
+
: {
|
|
82
|
+
draggable: true,
|
|
83
|
+
onDragStart: (event) => {
|
|
84
|
+
event.dataTransfer.effectAllowed = 'move';
|
|
85
|
+
event.dataTransfer.setData('text/plain', worktreeId ?? label);
|
|
86
|
+
drag.start();
|
|
87
|
+
},
|
|
88
|
+
onDragEnd: drag.end,
|
|
89
|
+
onDragOver: (event) => {
|
|
90
|
+
if (!drag.active)
|
|
91
|
+
return;
|
|
92
|
+
event.preventDefault();
|
|
93
|
+
event.dataTransfer.dropEffect = 'move';
|
|
94
|
+
drag.hover(rowHalf(event));
|
|
95
|
+
},
|
|
96
|
+
onDrop: (event) => {
|
|
97
|
+
if (!drag.active)
|
|
98
|
+
return;
|
|
99
|
+
event.preventDefault();
|
|
100
|
+
drag.drop(rowHalf(event));
|
|
101
|
+
},
|
|
102
|
+
};
|
|
103
|
+
const row = (_jsxs("div", { className: `${styles.worktreeRow} ${markerClass}`, "data-main-group": main ? 'true' : undefined, "data-main-expanded": main ? String(expanded) : undefined, "data-menu-open": menu?.open ? 'true' : undefined, "data-worktree-drag": drag?.active ? 'active' : undefined, ...dragProps, onClick: onToggle, children: [_jsx("button", { type: "button", className: `${styles.disclosureButton} ${styles.worktreeDisclosure}`, "aria-label": t(expanded ? 'worktree.collapse' : 'worktree.expand', { name: label }), "aria-expanded": expanded, onClick: (event) => {
|
|
104
|
+
event.stopPropagation();
|
|
105
|
+
onToggle();
|
|
106
|
+
}, children: expanded ? (_jsx(IconChevronDownOutline14, { size: 18 })) : (_jsx(IconChevronRightOutline14, { size: 18 })) }), _jsx("span", { className: styles.worktreeIcon, "aria-hidden": "true", children: icon }), state !== undefined && stateLabel !== undefined && (_jsx("span", { className: styles.worktreeState, role: "img", "aria-label": stateLabel, title: stateLabel, children: _jsx(StateDot, { state: state }) })), _jsx("span", { className: styles.worktreeLabel, children: label }), _jsxs("span", { className: styles.treeActionSlot, children: [menu !== undefined && (_jsx("span", { className: styles.menuAction, children: _jsx(Menu, { open: menu.open, onClose: () => {
|
|
107
|
+
menu.onOpenChange(false);
|
|
108
|
+
}, items: [
|
|
109
|
+
{
|
|
110
|
+
id: 'remove',
|
|
111
|
+
label: t('worktree.remove'),
|
|
112
|
+
icon: _jsx(IconTrashOutline16, {}),
|
|
113
|
+
danger: true,
|
|
114
|
+
disabled: menu.disabled,
|
|
115
|
+
},
|
|
116
|
+
], onSelect: (id) => {
|
|
117
|
+
menu.onOpenChange(false);
|
|
118
|
+
if (id === 'remove')
|
|
119
|
+
menu.onRemove();
|
|
120
|
+
}, portal: true, closeOnPointerLeave: true, anchor: _jsx("button", { type: "button", className: styles.iconButton, "data-worktree-menu": true, "aria-label": t('worktree.options', { name: menu.label }), onClick: (event) => {
|
|
121
|
+
event.stopPropagation();
|
|
122
|
+
menu.onOpenChange(!menu.open);
|
|
123
|
+
}, children: _jsx(IconEllipsisOutline16, {}) }) }) })), onCreateSession !== undefined && (_jsx("button", { type: "button", className: styles.iconButton, "data-add-main-session": main ? 'true' : undefined, "data-add-session": main ? undefined : 'true', "aria-label": t('worktree.addSession', { name: workspaceTitle }), onClick: (event) => {
|
|
124
|
+
event.stopPropagation();
|
|
125
|
+
onCreateSession();
|
|
126
|
+
}, children: _jsx(IconPlusOutline16, {}) }))] })] }));
|
|
127
|
+
if (main)
|
|
128
|
+
return row;
|
|
129
|
+
return (_jsx(HoverCard, { anchor: row, content: _jsx("div", { className: styles.worktreeHoverTitle, children: label }), openDelayMs: 500, disabled: menu?.open === true }));
|
|
130
|
+
}
|
|
131
|
+
/** Worktree-mode Session row with the same trailing options menu as native DSH rows. */
|
|
132
|
+
export function WorktreeSessionRow({ t, sessionId, blank, label, drag, actionPending, onOpen, onRename, onFork, onArchive, }) {
|
|
133
|
+
const [menuOpen, setMenuOpen] = useState(false);
|
|
134
|
+
const markerClass = drag.marker === 'before'
|
|
135
|
+
? styles.dropBefore
|
|
136
|
+
: drag.marker === 'after'
|
|
137
|
+
? styles.dropAfter
|
|
138
|
+
: '';
|
|
139
|
+
const sessionMenuItems = [
|
|
140
|
+
{
|
|
141
|
+
id: 'rename',
|
|
142
|
+
label: t('session.rename'),
|
|
143
|
+
icon: _jsx(IconEditOutline16, {}),
|
|
144
|
+
disabled: onRename === undefined || actionPending,
|
|
145
|
+
},
|
|
146
|
+
{
|
|
147
|
+
id: 'fork',
|
|
148
|
+
label: t('session.fork'),
|
|
149
|
+
icon: _jsx(IconBranchOutline16, {}),
|
|
150
|
+
disabled: onFork === undefined || actionPending,
|
|
151
|
+
},
|
|
152
|
+
{
|
|
153
|
+
id: 'archive',
|
|
154
|
+
label: t('session.archive'),
|
|
155
|
+
icon: _jsx(IconArchiveOutline20, { size: 16 }),
|
|
156
|
+
disabled: onArchive === undefined || actionPending,
|
|
157
|
+
},
|
|
158
|
+
];
|
|
159
|
+
return (_jsxs("div", { className: `${styles.treeSessionRow} ${markerClass}`, "data-session-id": sessionId, "data-session-blank": blank ? 'true' : undefined, "data-session-drag": drag.active ? 'active' : undefined, "data-menu-open": menuOpen || undefined, role: "treeitem", draggable: true, onDragStart: (event) => {
|
|
160
|
+
event.dataTransfer.effectAllowed = 'move';
|
|
161
|
+
event.dataTransfer.setData('text/plain', sessionId);
|
|
162
|
+
drag.start();
|
|
163
|
+
}, onDragEnd: drag.end, onDragOver: (event) => {
|
|
164
|
+
if (!drag.active)
|
|
165
|
+
return;
|
|
166
|
+
event.preventDefault();
|
|
167
|
+
event.dataTransfer.dropEffect = 'move';
|
|
168
|
+
drag.hover(rowHalf(event));
|
|
169
|
+
}, onDrop: (event) => {
|
|
170
|
+
if (!drag.active)
|
|
171
|
+
return;
|
|
172
|
+
event.preventDefault();
|
|
173
|
+
drag.drop(rowHalf(event));
|
|
174
|
+
}, children: [_jsxs("button", { type: "button", className: styles.treeSessionContent, onClick: onOpen, children: [_jsx("span", { className: styles.treeGuide, "aria-hidden": "true", children: "\u2514" }), _jsx("span", { className: styles.sessionLabel, children: label })] }), !blank && (_jsx("span", { className: styles.rowActions, children: _jsx(Menu, { open: menuOpen, onClose: () => {
|
|
175
|
+
setMenuOpen(false);
|
|
176
|
+
}, items: sessionMenuItems, onSelect: (id) => {
|
|
177
|
+
setMenuOpen(false);
|
|
178
|
+
if (id === 'rename')
|
|
179
|
+
onRename?.(sessionId, label);
|
|
180
|
+
if (id === 'fork')
|
|
181
|
+
onFork?.(sessionId);
|
|
182
|
+
if (id === 'archive')
|
|
183
|
+
onArchive?.(sessionId);
|
|
184
|
+
}, portal: true, closeOnPointerLeave: true, anchor: (_jsx("button", { type: "button", className: styles.iconButton, "data-session-menu": true, "aria-label": t('session.options', { name: label }), onClick: (event) => {
|
|
185
|
+
event.stopPropagation();
|
|
186
|
+
setMenuOpen((current) => !current);
|
|
187
|
+
}, children: _jsx(IconEllipsisOutline16, {}) })) }) }))] }));
|
|
188
|
+
}
|
|
189
|
+
export function WorktreeSessionGroup({ t, groupKey, sessionIds, workspaceId, expanded, actionPending, sessions, dragState, onToggleExpanded, onStartDrag, onHoverDrag, onClearDrag, onFinishDrag, onCommitDrag, onOpen, onRename, onFork, onArchive, }) {
|
|
190
|
+
const visibleSessionIds = expanded ? sessionIds : sessionIds.slice(0, 5);
|
|
191
|
+
const sameGroupDrag = dragState?.groupKey === groupKey;
|
|
192
|
+
return (_jsxs(_Fragment, { children: [visibleSessionIds.map((sessionId) => (_jsx(WorktreeSessionRow, { t: t, sessionId: sessionId, blank: isBlankSession(sessionId, sessions), label: sessionLabel(sessionId, sessions, t), drag: {
|
|
193
|
+
active: sameGroupDrag,
|
|
194
|
+
marker: sameGroupDrag && dragState.over?.sessionId === sessionId
|
|
195
|
+
? dragState.over.half
|
|
196
|
+
: null,
|
|
197
|
+
start: () => {
|
|
198
|
+
onStartDrag(groupKey, sessionId);
|
|
199
|
+
},
|
|
200
|
+
hover: (half) => {
|
|
201
|
+
onHoverDrag(sessionId, half);
|
|
202
|
+
},
|
|
203
|
+
drop: (half) => {
|
|
204
|
+
if (dragState === undefined)
|
|
205
|
+
return;
|
|
206
|
+
onCommitDrag(dragState, { sessionId, half }, sessionIds, workspaceId);
|
|
207
|
+
},
|
|
208
|
+
end: () => {
|
|
209
|
+
if (dragState?.over !== null && dragState?.over !== undefined) {
|
|
210
|
+
onCommitDrag(dragState, dragState.over, sessionIds, workspaceId);
|
|
211
|
+
}
|
|
212
|
+
else {
|
|
213
|
+
onClearDrag();
|
|
214
|
+
}
|
|
215
|
+
onFinishDrag();
|
|
216
|
+
},
|
|
217
|
+
}, actionPending: actionPending, onOpen: () => {
|
|
218
|
+
onOpen(sessionId);
|
|
219
|
+
}, onRename: onRename, onFork: onFork, onArchive: onArchive }, `${groupKey}:${sessionId}`))), sessionIds.length > 5 && (_jsx("button", { type: "button", className: styles.sessionOverflowButton, "aria-expanded": expanded, onClick: onToggleExpanded, children: expanded
|
|
220
|
+
? t('session.collapse')
|
|
221
|
+
: t('session.expandMore', { count: sessionIds.length - 5 }) }))] }));
|
|
222
|
+
}
|
|
223
|
+
//# sourceMappingURL=worktree-surface-rows.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"worktree-surface-rows.js","sourceRoot":"","sources":["../../src/client/worktree-surface-rows.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { SessionBinding } from '../contract/index.js';
|
|
2
|
+
import { type SessionListLike } from './session-view.js';
|
|
3
|
+
import type { WorktreeWorkspaceView } from './worktree-view.js';
|
|
4
|
+
import type { WorktreeTranslate, WorkspaceLike } from './worktree-surface-types.js';
|
|
5
|
+
export declare function sessionLabel(sessionId: string, sessions: SessionListLike, t: WorktreeTranslate): string;
|
|
6
|
+
export declare function bindingIdsFor(bindings: readonly SessionBinding[], worktreeId: string): readonly string[];
|
|
7
|
+
export declare function includesText(value: string, query: string): boolean;
|
|
8
|
+
export declare function workspaceMatches(workspace: WorkspaceLike, view: WorktreeWorkspaceView | undefined, sessions: SessionListLike, query: string): boolean;
|
|
9
|
+
//# sourceMappingURL=worktree-surface-selectors.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"worktree-surface-selectors.d.ts","sourceRoot":"","sources":["../../src/client/worktree-surface-selectors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,EAGL,KAAK,eAAe,EACrB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAChE,OAAO,KAAK,EACV,iBAAiB,EACjB,aAAa,EACd,MAAM,6BAA6B,CAAC;AAErC,wBAAgB,YAAY,CAC1B,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,eAAe,EACzB,CAAC,EAAE,iBAAiB,GACnB,MAAM,CAER;AAED,wBAAgB,aAAa,CAC3B,QAAQ,EAAE,SAAS,cAAc,EAAE,EACnC,UAAU,EAAE,MAAM,GACjB,SAAS,MAAM,EAAE,CAInB;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAElE;AAED,wBAAgB,gBAAgB,CAC9B,SAAS,EAAE,aAAa,EACxB,IAAI,EAAE,qBAAqB,GAAG,SAAS,EACvC,QAAQ,EAAE,eAAe,EACzB,KAAK,EAAE,MAAM,GACZ,OAAO,CAoBT"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { sessionDisplayLabel, sessionMatchesQuery, } from './session-view.js';
|
|
2
|
+
export function sessionLabel(sessionId, sessions, t) {
|
|
3
|
+
return sessionDisplayLabel(sessionId, sessions, t('session.new'));
|
|
4
|
+
}
|
|
5
|
+
export function bindingIdsFor(bindings, worktreeId) {
|
|
6
|
+
return bindings
|
|
7
|
+
.filter((binding) => binding.worktreeId === worktreeId)
|
|
8
|
+
.map((binding) => binding.sessionId);
|
|
9
|
+
}
|
|
10
|
+
export function includesText(value, query) {
|
|
11
|
+
return value.toLocaleLowerCase().includes(query);
|
|
12
|
+
}
|
|
13
|
+
export function workspaceMatches(workspace, view, sessions, query) {
|
|
14
|
+
if (query.length === 0)
|
|
15
|
+
return true;
|
|
16
|
+
if (includesText(workspace.title, query))
|
|
17
|
+
return true;
|
|
18
|
+
if (workspace.sessionIds.some((sessionId) => sessionMatchesQuery(sessionId, sessions, query))) {
|
|
19
|
+
return true;
|
|
20
|
+
}
|
|
21
|
+
if (view === undefined)
|
|
22
|
+
return false;
|
|
23
|
+
if (view.worktrees.some((record) => includesText(record.branch, query) || includesText(record.absolutePath, query))) {
|
|
24
|
+
return true;
|
|
25
|
+
}
|
|
26
|
+
return view.bindings.some((binding) => sessionMatchesQuery(binding.sessionId, sessions, query));
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=worktree-surface-selectors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"worktree-surface-selectors.js","sourceRoot":"","sources":["../../src/client/worktree-surface-selectors.ts"],"names":[],"mappings":"AACA,OAAO,EACL,mBAAmB,EACnB,mBAAmB,GAEpB,MAAM,mBAAmB,CAAC;AAO3B,MAAM,UAAU,YAAY,CAC1B,SAAiB,EACjB,QAAyB,EACzB,CAAoB;IAEpB,OAAO,mBAAmB,CAAC,SAAS,EAAE,QAAQ,EAAE,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC;AACpE,CAAC;AAED,MAAM,UAAU,aAAa,CAC3B,QAAmC,EACnC,UAAkB;IAElB,OAAO,QAAQ;SACZ,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,UAAU,KAAK,UAAU,CAAC;SACtD,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;AACzC,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,KAAa,EAAE,KAAa;IACvD,OAAO,KAAK,CAAC,iBAAiB,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AACnD,CAAC;AAED,MAAM,UAAU,gBAAgB,CAC9B,SAAwB,EACxB,IAAuC,EACvC,QAAyB,EACzB,KAAa;IAEb,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACpC,IAAI,YAAY,CAAC,SAAS,CAAC,KAAK,EAAE,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACtD,IACE,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,mBAAmB,CAAC,SAAS,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC,EACzF,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IACrC,IACE,IAAI,CAAC,SAAS,CAAC,IAAI,CACjB,CAAC,MAAM,EAAE,EAAE,CACT,YAAY,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,YAAY,CAAC,MAAM,CAAC,YAAY,EAAE,KAAK,CAAC,CACjF,EACD,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CACpC,mBAAmB,CAAC,OAAO,CAAC,SAAS,EAAE,QAAQ,EAAE,KAAK,CAAC,CACxD,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,233 @@
|
|
|
1
|
+
import type { ReactNode } from 'react';
|
|
2
|
+
import type { PropsLocale, PropsRuntime, PropsStore, TranslateNS } from '@deepseek-ai/dsh-client-ui-slots';
|
|
3
|
+
import type { WorktreeManager, WorktreeRecord } from '../contract/index.js';
|
|
4
|
+
import { WORKTREE_NS } from './locales.js';
|
|
5
|
+
import type { createWorktreeViewStore } from './view-mode-store.js';
|
|
6
|
+
import type { SessionListLike } from './session-view.js';
|
|
7
|
+
import type { CreateSessionForWorktreeInput, WorktreeGitReadiness, WorktreeViewError, WorktreeWorkspaceView } from './worktree-view.js';
|
|
8
|
+
export interface WorkspaceLike {
|
|
9
|
+
readonly workspaceId: string;
|
|
10
|
+
readonly title: string;
|
|
11
|
+
readonly sessionIds: readonly string[];
|
|
12
|
+
}
|
|
13
|
+
export interface WorkspaceListLike {
|
|
14
|
+
readonly items: readonly WorkspaceLike[];
|
|
15
|
+
readonly archivedSessionIds?: readonly string[];
|
|
16
|
+
}
|
|
17
|
+
/** Apply-time facts and DSH navigation callbacks used by the surface. */
|
|
18
|
+
export interface WorktreeSurfaceInjected {
|
|
19
|
+
readonly available: boolean;
|
|
20
|
+
readonly manager?: WorktreeManager;
|
|
21
|
+
readonly createWorkspace?: () => Promise<void>;
|
|
22
|
+
readonly createSessionForWorktree?: (input: CreateSessionForWorktreeInput) => Promise<string>;
|
|
23
|
+
readonly invalidateWorktreeContext?: (workspaceId?: string) => Promise<void>;
|
|
24
|
+
readonly createMainSession?: (workspaceId: string) => void;
|
|
25
|
+
readonly renameWorkspace?: (workspaceId: string, title: string) => Promise<void>;
|
|
26
|
+
readonly deleteWorkspace?: (workspaceId: string) => Promise<void>;
|
|
27
|
+
readonly insertWorkspaceBefore?: (workspaceId: string, beforeWorkspaceId?: string) => Promise<void>;
|
|
28
|
+
readonly insertSessionBefore?: (workspaceId: string, sessionId: string, beforeSessionId?: string) => Promise<void>;
|
|
29
|
+
readonly insertWorktreeBefore?: (workspaceId: string, worktreeId: string, beforeWorktreeId?: string) => Promise<readonly string[]>;
|
|
30
|
+
readonly renameSession?: (sessionId: string, title: string) => Promise<void>;
|
|
31
|
+
readonly forkSession?: (sessionId: string) => void;
|
|
32
|
+
readonly archiveSession?: (sessionId: string) => Promise<void>;
|
|
33
|
+
readonly ensureSessionWorkspace?: (workspaceId: string, sessionId: string) => void;
|
|
34
|
+
readonly syncSessionWorkspaces?: (bindings: readonly {
|
|
35
|
+
workspaceId: string;
|
|
36
|
+
sessionId: string;
|
|
37
|
+
}[]) => void;
|
|
38
|
+
readonly openSession: (sessionId: string) => void;
|
|
39
|
+
}
|
|
40
|
+
/** Props derived from the frame overlay slot, shared state, and injected face. */
|
|
41
|
+
export type WorktreeSurfaceProps = PropsRuntime<'shell.overlay'> & PropsStore<ReturnType<typeof createWorktreeViewStore>> & PropsLocale<typeof WORKTREE_NS> & WorktreeSurfaceInjected;
|
|
42
|
+
export type WorktreeTranslate = TranslateNS<typeof WORKTREE_NS>;
|
|
43
|
+
export type WorktreeSetupStatus = Exclude<WorktreeGitReadiness['status'], 'ready'>;
|
|
44
|
+
export interface ReadState {
|
|
45
|
+
readonly status: 'idle' | 'loading' | 'ready' | 'error';
|
|
46
|
+
readonly views: readonly WorktreeWorkspaceView[];
|
|
47
|
+
readonly error?: WorktreeViewError;
|
|
48
|
+
}
|
|
49
|
+
export interface RefreshOptions {
|
|
50
|
+
readonly preserveCurrent?: boolean;
|
|
51
|
+
readonly invalidateContext?: boolean;
|
|
52
|
+
}
|
|
53
|
+
export interface PendingSessionBinding extends CreateSessionForWorktreeInput {
|
|
54
|
+
readonly sessionId: string;
|
|
55
|
+
}
|
|
56
|
+
export interface SessionRenameTarget {
|
|
57
|
+
readonly sessionId: string;
|
|
58
|
+
readonly currentTitle: string;
|
|
59
|
+
}
|
|
60
|
+
export interface SessionDragProps {
|
|
61
|
+
readonly active: boolean;
|
|
62
|
+
readonly marker: 'before' | 'after' | null;
|
|
63
|
+
readonly start: () => void;
|
|
64
|
+
readonly hover: (half: 'before' | 'after') => void;
|
|
65
|
+
readonly drop: (half: 'before' | 'after') => void;
|
|
66
|
+
readonly end: () => void;
|
|
67
|
+
}
|
|
68
|
+
export interface WorkspaceDragProps {
|
|
69
|
+
readonly active: boolean;
|
|
70
|
+
readonly marker: 'before' | 'after' | null;
|
|
71
|
+
readonly start: () => void;
|
|
72
|
+
readonly hover: (half: 'before' | 'after') => void;
|
|
73
|
+
readonly drop: (half: 'before' | 'after') => void;
|
|
74
|
+
readonly end: () => void;
|
|
75
|
+
}
|
|
76
|
+
export interface WorktreeDragProps {
|
|
77
|
+
readonly active: boolean;
|
|
78
|
+
readonly marker: 'before' | 'after' | null;
|
|
79
|
+
readonly start: () => void;
|
|
80
|
+
readonly hover: (half: 'before' | 'after') => void;
|
|
81
|
+
readonly drop: (half: 'before' | 'after') => void;
|
|
82
|
+
readonly end: () => void;
|
|
83
|
+
}
|
|
84
|
+
export interface WorktreeSessionRowProps {
|
|
85
|
+
readonly t: WorktreeTranslate;
|
|
86
|
+
readonly sessionId: string;
|
|
87
|
+
readonly blank: boolean;
|
|
88
|
+
readonly label: string;
|
|
89
|
+
readonly drag: SessionDragProps;
|
|
90
|
+
readonly actionPending: boolean;
|
|
91
|
+
readonly onOpen: () => void;
|
|
92
|
+
readonly onRename?: (sessionId: string, currentTitle: string) => void;
|
|
93
|
+
readonly onFork?: (sessionId: string) => void;
|
|
94
|
+
readonly onArchive?: (sessionId: string) => void;
|
|
95
|
+
}
|
|
96
|
+
export interface WorktreeWorkspaceRowProps {
|
|
97
|
+
readonly t: WorktreeTranslate;
|
|
98
|
+
readonly workspace: WorkspaceLike;
|
|
99
|
+
readonly expanded: boolean;
|
|
100
|
+
readonly actionPending: boolean;
|
|
101
|
+
readonly menuOpen: boolean;
|
|
102
|
+
readonly drag: WorkspaceDragProps;
|
|
103
|
+
readonly onToggle: () => void;
|
|
104
|
+
readonly onCreateWorktree: () => void;
|
|
105
|
+
readonly onRename: () => void;
|
|
106
|
+
readonly onDelete: () => void;
|
|
107
|
+
readonly onMenuOpenChange: (open: boolean) => void;
|
|
108
|
+
}
|
|
109
|
+
export interface WorktreeGroupMenuProps {
|
|
110
|
+
readonly open: boolean;
|
|
111
|
+
readonly label: string;
|
|
112
|
+
readonly disabled: boolean;
|
|
113
|
+
readonly onOpenChange: (open: boolean) => void;
|
|
114
|
+
readonly onRemove: () => void;
|
|
115
|
+
}
|
|
116
|
+
export type WorktreeGroupKind = 'main' | 'worktree';
|
|
117
|
+
export interface WorktreeGroupRowProps {
|
|
118
|
+
readonly t: WorktreeTranslate;
|
|
119
|
+
readonly kind: WorktreeGroupKind;
|
|
120
|
+
readonly label: string;
|
|
121
|
+
readonly worktreeId?: string;
|
|
122
|
+
readonly expanded: boolean;
|
|
123
|
+
readonly icon: ReactNode;
|
|
124
|
+
readonly workspaceTitle: string;
|
|
125
|
+
readonly state?: 'done' | 'warning' | 'error';
|
|
126
|
+
readonly stateLabel?: string;
|
|
127
|
+
readonly onToggle: () => void;
|
|
128
|
+
readonly onCreateSession?: () => void;
|
|
129
|
+
readonly menu?: WorktreeGroupMenuProps;
|
|
130
|
+
readonly drag?: WorktreeDragProps;
|
|
131
|
+
}
|
|
132
|
+
export interface WorktreeSessionGroupProps {
|
|
133
|
+
readonly t: WorktreeTranslate;
|
|
134
|
+
readonly groupKey: string;
|
|
135
|
+
readonly sessionIds: readonly string[];
|
|
136
|
+
readonly workspaceId: string;
|
|
137
|
+
readonly expanded: boolean;
|
|
138
|
+
readonly actionPending: boolean;
|
|
139
|
+
readonly sessions: SessionListLike;
|
|
140
|
+
readonly dragState: SessionDragState | undefined;
|
|
141
|
+
readonly onToggleExpanded: () => void;
|
|
142
|
+
readonly onStartDrag: (groupKey: string, sessionId: string) => void;
|
|
143
|
+
readonly onHoverDrag: (sessionId: string, half: 'before' | 'after') => void;
|
|
144
|
+
readonly onClearDrag: () => void;
|
|
145
|
+
readonly onFinishDrag: () => void;
|
|
146
|
+
readonly onCommitDrag: (activeDrag: SessionDragState, over: NonNullable<SessionDragState['over']>, sessionIds: readonly string[], workspaceId: string) => void;
|
|
147
|
+
readonly onOpen: (sessionId: string) => void;
|
|
148
|
+
readonly onRename?: (sessionId: string, currentTitle: string) => void;
|
|
149
|
+
readonly onFork?: (sessionId: string) => void;
|
|
150
|
+
readonly onArchive?: (sessionId: string) => void;
|
|
151
|
+
}
|
|
152
|
+
export interface WorkspaceDragState {
|
|
153
|
+
readonly workspaceId: string;
|
|
154
|
+
readonly over: {
|
|
155
|
+
readonly workspaceId: string;
|
|
156
|
+
readonly half: 'before' | 'after';
|
|
157
|
+
} | null;
|
|
158
|
+
}
|
|
159
|
+
export interface WorkspaceRenameTarget {
|
|
160
|
+
readonly workspaceId: string;
|
|
161
|
+
readonly currentTitle: string;
|
|
162
|
+
}
|
|
163
|
+
export interface WorkspaceDeleteTarget {
|
|
164
|
+
readonly workspaceId: string;
|
|
165
|
+
readonly title: string;
|
|
166
|
+
}
|
|
167
|
+
export interface SessionDragState {
|
|
168
|
+
readonly groupKey: string;
|
|
169
|
+
readonly sessionId: string;
|
|
170
|
+
readonly over: {
|
|
171
|
+
readonly sessionId: string;
|
|
172
|
+
readonly half: 'before' | 'after';
|
|
173
|
+
} | null;
|
|
174
|
+
}
|
|
175
|
+
export interface WorktreeDragState {
|
|
176
|
+
readonly workspaceId: string;
|
|
177
|
+
readonly worktreeId: string;
|
|
178
|
+
readonly over: {
|
|
179
|
+
readonly worktreeId: string;
|
|
180
|
+
readonly half: 'before' | 'after';
|
|
181
|
+
} | null;
|
|
182
|
+
}
|
|
183
|
+
export interface SessionRenameDialogProps {
|
|
184
|
+
readonly t: WorktreeTranslate;
|
|
185
|
+
readonly target: SessionRenameTarget | undefined;
|
|
186
|
+
readonly draft: string;
|
|
187
|
+
readonly pending: boolean;
|
|
188
|
+
readonly error: WorktreeViewError | undefined;
|
|
189
|
+
readonly onClose: () => void;
|
|
190
|
+
readonly onDraftChange: (draft: string) => void;
|
|
191
|
+
readonly onSubmit: () => void;
|
|
192
|
+
}
|
|
193
|
+
export interface WorkspaceRenameDialogProps {
|
|
194
|
+
readonly t: WorktreeTranslate;
|
|
195
|
+
readonly target: WorkspaceRenameTarget | undefined;
|
|
196
|
+
readonly draft: string;
|
|
197
|
+
readonly pending: boolean;
|
|
198
|
+
readonly duplicate: boolean;
|
|
199
|
+
readonly error: WorktreeViewError | undefined;
|
|
200
|
+
readonly onClose: () => void;
|
|
201
|
+
readonly onDraftChange: (draft: string) => void;
|
|
202
|
+
readonly onSubmit: () => void;
|
|
203
|
+
}
|
|
204
|
+
export interface WorkspaceDeleteDialogProps {
|
|
205
|
+
readonly t: WorktreeTranslate;
|
|
206
|
+
readonly target: WorkspaceDeleteTarget | undefined;
|
|
207
|
+
readonly pending: boolean;
|
|
208
|
+
readonly error: WorktreeViewError | undefined;
|
|
209
|
+
readonly onClose: () => void;
|
|
210
|
+
readonly onSubmit: () => void;
|
|
211
|
+
}
|
|
212
|
+
export interface WorktreeCreateDialogProps {
|
|
213
|
+
readonly t: WorktreeTranslate;
|
|
214
|
+
readonly workspace: WorkspaceLike | undefined;
|
|
215
|
+
readonly view: WorktreeWorkspaceView | undefined;
|
|
216
|
+
readonly setupStatus: WorktreeSetupStatus | undefined;
|
|
217
|
+
readonly canCreate: boolean;
|
|
218
|
+
readonly selectedBranch: string;
|
|
219
|
+
readonly newBranch: string;
|
|
220
|
+
readonly actionPending: boolean;
|
|
221
|
+
readonly onClose: () => void;
|
|
222
|
+
readonly onSelectedBranchChange: (branch: string) => void;
|
|
223
|
+
readonly onNewBranchChange: (branch: string) => void;
|
|
224
|
+
readonly onSubmit: () => void;
|
|
225
|
+
}
|
|
226
|
+
export interface WorktreeRemovalDialogProps {
|
|
227
|
+
readonly t: WorktreeTranslate;
|
|
228
|
+
readonly worktree: WorktreeRecord | undefined;
|
|
229
|
+
readonly actionPending: boolean;
|
|
230
|
+
readonly onClose: () => void;
|
|
231
|
+
readonly onSubmit: () => void;
|
|
232
|
+
}
|
|
233
|
+
//# sourceMappingURL=worktree-surface-types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"worktree-surface-types.d.ts","sourceRoot":"","sources":["../../src/client/worktree-surface-types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"worktree-surface-types.js","sourceRoot":"","sources":["../../src/client/worktree-surface-types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import type { WorktreeManager, WorktreeRecord } from '../contract/index.js';
|
|
2
|
+
/** Generate a short, editable default branch name without colliding with known local names. */
|
|
3
|
+
export declare function createDefaultWorktreeName(existingNames: Iterable<string>, randomUuid?: () => string): string;
|
|
4
|
+
export interface CreateSessionForWorktreeInput {
|
|
5
|
+
readonly workspaceId: string;
|
|
6
|
+
readonly worktreeId: string;
|
|
7
|
+
readonly cwd: string;
|
|
8
|
+
}
|
|
9
|
+
export type WorktreeViewAction = {
|
|
10
|
+
readonly type: 'createWorktree';
|
|
11
|
+
readonly input: Parameters<WorktreeManager['createWorktree']>[0];
|
|
12
|
+
} | {
|
|
13
|
+
readonly type: 'removeWorktree';
|
|
14
|
+
readonly input: Parameters<WorktreeManager['removeWorktree']>[0];
|
|
15
|
+
};
|
|
16
|
+
/** Resolve a row-half drop target to native-style optional before-anchor semantics. */
|
|
17
|
+
export declare function resolveWorktreeMove(worktreeIds: readonly string[], sourceWorktreeId: string, targetWorktreeId: string, half: 'before' | 'after'): {
|
|
18
|
+
readonly beforeWorktreeId?: string;
|
|
19
|
+
} | undefined;
|
|
20
|
+
/** Keep mutation routing in the browser Consumer while leaving wire details to the adapter. */
|
|
21
|
+
export declare function executeWorktreeAction(manager: WorktreeManager, action: WorktreeViewAction): Promise<WorktreeRecord | void>;
|
|
22
|
+
/**
|
|
23
|
+
* Create a normal DSH Session at a Worktree cwd, then add the external binding.
|
|
24
|
+
* A binding failure deliberately leaves the DSH-created Session intact.
|
|
25
|
+
*/
|
|
26
|
+
export declare function createSessionForWorktree(input: CreateSessionForWorktreeInput & {
|
|
27
|
+
readonly createSession: (input: {
|
|
28
|
+
cwd: string;
|
|
29
|
+
}) => Promise<string>;
|
|
30
|
+
readonly manager: Pick<WorktreeManager, 'bindSession'>;
|
|
31
|
+
readonly beforeOpen?: (sessionId: string) => void;
|
|
32
|
+
readonly openSession: (sessionId: string) => void;
|
|
33
|
+
}): Promise<string>;
|
|
34
|
+
//# sourceMappingURL=worktree-view-actions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"worktree-view-actions.d.ts","sourceRoot":"","sources":["../../src/client/worktree-view-actions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAS5E,+FAA+F;AAC/F,wBAAgB,yBAAyB,CACvC,aAAa,EAAE,QAAQ,CAAC,MAAM,CAAC,EAC/B,UAAU,GAAE,MAAM,MAA0B,GAC3C,MAAM,CASR;AAED,MAAM,WAAW,6BAA6B;IAC5C,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,MAAM,kBAAkB,GAC1B;IACE,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAC;IAChC,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC,eAAe,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAClE,GACD;IACE,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAC;IAChC,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC,eAAe,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAClE,CAAC;AAEN,uFAAuF;AACvF,wBAAgB,mBAAmB,CACjC,WAAW,EAAE,SAAS,MAAM,EAAE,EAC9B,gBAAgB,EAAE,MAAM,EACxB,gBAAgB,EAAE,MAAM,EACxB,IAAI,EAAE,QAAQ,GAAG,OAAO,GACvB;IAAE,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,SAAS,CAepD;AAED,+FAA+F;AAC/F,wBAAsB,qBAAqB,CACzC,OAAO,EAAE,eAAe,EACxB,MAAM,EAAE,kBAAkB,GACzB,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,CAQhC;AAED;;;GAGG;AACH,wBAAsB,wBAAwB,CAAC,KAAK,EAAE,6BAA6B,GAAG;IACpF,QAAQ,CAAC,aAAa,EAAE,CAAC,KAAK,EAAE;QAAE,GAAG,EAAE,MAAM,CAAA;KAAE,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IACpE,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC,eAAe,EAAE,aAAa,CAAC,CAAC;IACvD,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IAClD,QAAQ,CAAC,WAAW,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;CACnD,GAAG,OAAO,CAAC,MAAM,CAAC,CAclB"}
|