@cerbur/clutch-dsh-worktree 0.1.1 → 0.1.2
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.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WorktreeSurface.d.ts","sourceRoot":"","sources":["../../src/client/WorktreeSurface.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,WAAW,EACX,YAAY,EACZ,UAAU,EAEX,MAAM,kCAAkC,CAAC;
|
|
1
|
+
{"version":3,"file":"WorktreeSurface.d.ts","sourceRoot":"","sources":["../../src/client/WorktreeSurface.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,WAAW,EACX,YAAY,EACZ,UAAU,EAEX,MAAM,kCAAkC,CAAC;AAsB1C,OAAO,KAAK,EAAkB,eAAe,EAAkB,MAAM,sBAAsB,CAAC;AAC5F,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAG3C,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAGpE,OAAO,EASL,KAAK,6BAA6B,EAGnC,MAAM,oBAAoB,CAAC;AAmB5B,yEAAyE;AACzE,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,OAAO,CAAC,EAAE,eAAe,CAAC;IACnC,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/C,QAAQ,CAAC,wBAAwB,CAAC,EAAE,CAClC,KAAK,EAAE,6BAA6B,KACjC,OAAO,CAAC,MAAM,CAAC,CAAC;IACrB,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3D,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACjF,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAClE,QAAQ,CAAC,qBAAqB,CAAC,EAAE,CAC/B,WAAW,EAAE,MAAM,EACnB,iBAAiB,CAAC,EAAE,MAAM,KACvB,OAAO,CAAC,IAAI,CAAC,CAAC;IACnB,QAAQ,CAAC,mBAAmB,CAAC,EAAE,CAC7B,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,EACjB,eAAe,CAAC,EAAE,MAAM,KACrB,OAAO,CAAC,IAAI,CAAC,CAAC;IACnB,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7E,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IACnD,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/D,QAAQ,CAAC,sBAAsB,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IACnF,QAAQ,CAAC,qBAAqB,CAAC,EAAE,CAC/B,QAAQ,EAAE,SAAS;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,EAAE,KAC5D,IAAI,CAAC;IACV,QAAQ,CAAC,WAAW,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;CACnD;AAED,kFAAkF;AAClF,MAAM,MAAM,oBAAoB,GAAG,YAAY,CAAC,eAAe,CAAC,GAC9D,UAAU,CAAC,UAAU,CAAC,OAAO,uBAAuB,CAAC,CAAC,GACtD,WAAW,CAAC,OAAO,WAAW,CAAC,GAC/B,uBAAuB,CAAC;AA4oB1B;;;GAGG;AACH,wBAAgB,eAAe,CAAC,EAC9B,QAAQ,EACR,OAAO,EACP,WAAW,EACX,aAAa,EACb,CAAC,EACD,SAAS,EACT,OAAO,EACP,eAAe,EACf,wBAAwB,EAAE,qBAAqB,EAC/C,iBAAiB,EACjB,eAAe,EACf,eAAe,EACf,qBAAqB,EACrB,mBAAmB,EACnB,aAAa,EACb,WAAW,EACX,cAAc,EACd,sBAAsB,EACtB,qBAAqB,EACrB,WAAW,GACZ,EAAE,oBAAoB,sCAwpCtB"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
2
|
import { useCallback, useEffect, useMemo, useRef, useState } from 'react';
|
|
3
|
-
import { Button, IconArchiveOutline20, IconBranchOutline16, IconChevronDownOutline14, IconChevronRightOutline14, IconCloseOutline16, IconEditOutline16, IconEllipsisOutline16, IconFolderClose16, IconFolderOpen16, IconPlusOutline16, IconSearchOutline16, IconTrashOutline16, Input, Menu, Modal, StateDot, } from '@deepseek-ai/dsh-client-ui-primitives';
|
|
3
|
+
import { Button, HoverCard, IconArchiveOutline20, IconBranchOutline16, IconChevronDownOutline14, IconChevronRightOutline14, IconCloseOutline16, IconEditOutline16, IconEllipsisOutline16, IconFolderClose16, IconFolderOpen16, IconPlusOutline16, IconSearchOutline16, IconTrashOutline16, Input, Menu, Modal, StateDot, } from '@deepseek-ai/dsh-client-ui-primitives';
|
|
4
4
|
import { openWorktreeSession } from './navigation.js';
|
|
5
5
|
import { useSidebarOverlayGeometry } from './sidebar-overlay-geometry.js';
|
|
6
6
|
import { effectiveViewMode, unboundSessionIds, workspaceSessionIds } from './view-mode.js';
|
|
@@ -115,7 +115,7 @@ function WorktreeWorkspaceRow({ t, workspace, expanded, actionPending, menuOpen,
|
|
|
115
115
|
/** Shared Main/Worktree group row with parameterized icon, state, and actions. */
|
|
116
116
|
function WorktreeGroupRow({ t, kind, label, expanded, icon, workspaceTitle, state, stateLabel, onToggle, onCreateSession, menu, }) {
|
|
117
117
|
const main = kind === 'main';
|
|
118
|
-
|
|
118
|
+
const row = (_jsxs("div", { className: styles.worktreeRow, "data-main-group": main ? 'true' : undefined, "data-main-expanded": main ? String(expanded) : undefined, "data-menu-open": menu?.open ? 'true' : undefined, 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) => {
|
|
119
119
|
event.stopPropagation();
|
|
120
120
|
onToggle();
|
|
121
121
|
}, 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: () => {
|
|
@@ -139,6 +139,9 @@ function WorktreeGroupRow({ t, kind, label, expanded, icon, workspaceTitle, stat
|
|
|
139
139
|
event.stopPropagation();
|
|
140
140
|
onCreateSession();
|
|
141
141
|
}, children: _jsx(IconPlusOutline16, {}) }))] })] }));
|
|
142
|
+
if (main)
|
|
143
|
+
return row;
|
|
144
|
+
return (_jsx(HoverCard, { anchor: row, content: _jsx("div", { className: styles.worktreeHoverTitle, children: label }), openDelayMs: 500, disabled: menu?.open === true }));
|
|
142
145
|
}
|
|
143
146
|
/** Worktree-mode Session row with the same trailing options menu as native DSH rows. */
|
|
144
147
|
function WorktreeSessionRow({ t, sessionId, label, drag, actionPending, onOpen, onRename, onFork, onArchive, }) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WorktreeSurface.js","sourceRoot":"","sources":["../../src/client/WorktreeSurface.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"WorktreeSurface.js","sourceRoot":"","sources":["../../src/client/WorktreeSurface.tsx"],"names":[],"mappings":"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"}
|
package/lib/client.js
CHANGED
|
@@ -287,7 +287,7 @@ window.__ModuleLoader__.load({
|
|
|
287
287
|
}
|
|
288
288
|
//#endregion
|
|
289
289
|
//#region \0clutch-dsh-worktree-css:/Users/yuancheng/Documents/Code/clutch-dsh/packages/clutch-dsh-worktree/src/client/worktree.css.mjs
|
|
290
|
-
const css = ".-cerbur-clutch-dsh-worktree-action {\n display: flex;\n align-items: center;\n justify-content: flex-start;\n gap: 8px;\n width: calc(100% + 4px);\n height: 42px;\n margin: 4px -2px;\n box-sizing: border-box;\n border: 0;\n border-radius: 12px;\n padding: 0 10px 0 8px;\n background: transparent;\n color: var(--dsw-alias-label-primary);\n cursor: pointer;\n font: inherit;\n font-size: 14px;\n line-height: 22px;\n text-align: left;\n overflow: hidden;\n}\n\n.-cerbur-clutch-dsh-worktree-action:hover,\n.-cerbur-clutch-dsh-worktree-action[data-active='true'] {\n background: var(--dsw-alias-interactive-bg-hover);\n}\n\n.-cerbur-clutch-dsh-worktree-action[data-collapsed='true'] {\n width: 36px;\n height: 36px;\n margin: 8px 0 10px;\n justify-content: center;\n gap: 0;\n padding: 0;\n border-radius: 50%;\n}\n\n.-cerbur-clutch-dsh-worktree-actionLabel {\n overflow: hidden;\n white-space: nowrap;\n}\n\n.-cerbur-clutch-dsh-worktree-surface {\n position: absolute;\n top: 0;\n left: 0;\n display: flex;\n flex-direction: column;\n box-sizing: border-box;\n min-width: 56px;\n overflow: hidden;\n border-right: 1px solid var(--dsw-alias-border-l1);\n background: var(--dsw-specific-sidebar-fill);\n color: var(--dsw-alias-label-primary);\n pointer-events: auto;\n transition: width var(--ds-transition-duration-slow) var(--ds-ease-in-out);\n}\n\n.-cerbur-clutch-dsh-worktree-wideContent {\n display: flex;\n min-width: 0;\n min-height: 0;\n flex: 1;\n flex-direction: column;\n}\n\n.-cerbur-clutch-dsh-worktree-surface[data-collapsed='true'] .-cerbur-clutch-dsh-worktree-wideContent {\n display: none;\n}\n\n.-cerbur-clutch-dsh-worktree-railContent {\n display: none;\n}\n\n.-cerbur-clutch-dsh-worktree-surface[data-collapsed='true'] .-cerbur-clutch-dsh-worktree-railContent {\n display: flex;\n flex: 1;\n align-items: flex-start;\n justify-content: center;\n padding-top: 12px;\n}\n\n.-cerbur-clutch-dsh-worktree-railButton,\n.-cerbur-clutch-dsh-worktree-closeButton {\n border: 0;\n border-radius: 8px;\n background: transparent;\n color: inherit;\n cursor: pointer;\n font: inherit;\n}\n\n.-cerbur-clutch-dsh-worktree-railButton {\n width: 36px;\n height: 36px;\n color: var(--dsw-alias-label-secondary);\n font-size: 11px;\n font-weight: 600;\n}\n\n.-cerbur-clutch-dsh-worktree-railButton:hover,\n.-cerbur-clutch-dsh-worktree-closeButton:hover {\n background: var(--dsw-alias-interactive-bg-hover);\n}\n\n.-cerbur-clutch-dsh-worktree-header {\n display: flex;\n align-items: center;\n gap: 8px;\n flex: none;\n min-height: 44px;\n padding: 6px 10px;\n box-sizing: border-box;\n border-bottom: 1px solid var(--dsw-alias-border-l1);\n}\n\n.-cerbur-clutch-dsh-worktree-title {\n min-width: 0;\n flex: 1;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n font-size: 14px;\n font-weight: 600;\n}\n\n.-cerbur-clutch-dsh-worktree-closeButton {\n flex: none;\n width: 28px;\n height: 28px;\n font-size: 18px;\n line-height: 1;\n}\n\n.-cerbur-clutch-dsh-worktree-modeButton[data-active='true'] {\n color: var(--dsw-alias-label-primary);\n}\n\n.-cerbur-clutch-dsh-worktree-workspacePicker {\n display: block;\n width: calc(100% - 20px);\n margin: 6px 10px 8px;\n padding: 6px 8px;\n border: 1px solid var(--dsw-alias-border-l2);\n border-radius: 7px;\n background: var(--dsw-alias-button-elevated-fill);\n color: var(--dsw-alias-label-primary);\n font: inherit;\n font-size: 12px;\n}\n\n.-cerbur-clutch-dsh-worktree-workspaceLabel {\n display: block;\n color: var(--dsw-alias-label-tertiary);\n font-size: 11px;\n}\n\n.-cerbur-clutch-dsh-worktree-content {\n min-height: 0;\n flex: 1;\n overflow: auto;\n padding: 0 10px 12px;\n}\n\n.-cerbur-clutch-dsh-worktree-content:focus-visible {\n outline: 2px solid var(--dsw-alias-border-l3);\n outline-offset: -2px;\n}\n\n.-cerbur-clutch-dsh-worktree-error {\n margin: 12px 0 0;\n padding: 8px;\n border: 1px solid var(--dsw-alias-state-error-primary);\n border-radius: 7px;\n}\n\n.-cerbur-clutch-dsh-worktree-retryButton,\n.-cerbur-clutch-dsh-worktree-actionButton {\n border: 0;\n border-radius: 6px;\n background: var(--dsw-alias-button-elevated-fill);\n color: var(--dsw-alias-label-primary);\n cursor: pointer;\n font: inherit;\n font-size: 11px;\n}\n\n.-cerbur-clutch-dsh-worktree-retryButton,\n.-cerbur-clutch-dsh-worktree-actionButton {\n width: 100%;\n padding: 6px 8px;\n}\n\n.-cerbur-clutch-dsh-worktree-recoveryActions {\n display: grid;\n gap: 6px;\n margin-top: 6px;\n}\n\n.-cerbur-clutch-dsh-worktree-retryButton:disabled,\n.-cerbur-clutch-dsh-worktree-actionButton:disabled {\n cursor: not-allowed;\n opacity: 0.5;\n}\n\n.-cerbur-clutch-dsh-worktree-actions {\n display: grid;\n gap: 6px;\n margin-top: 10px;\n padding: 8px;\n border: 1px solid var(--dsw-alias-border-l1);\n border-radius: 7px;\n}\n\n.-cerbur-clutch-dsh-worktree-actionLabel {\n display: grid;\n gap: 3px;\n color: var(--dsw-alias-label-tertiary);\n font-size: 11px;\n}\n\n.-cerbur-clutch-dsh-worktree-actionSelect {\n min-width: 0;\n padding: 5px 6px;\n border: 1px solid var(--dsw-alias-border-l2);\n border-radius: 6px;\n background: var(--dsw-alias-button-elevated-fill);\n color: var(--dsw-alias-label-primary);\n font: inherit;\n font-size: 11px;\n}\n\n.-cerbur-clutch-dsh-worktree-section {\n margin: 12px 0 0;\n}\n\n.-cerbur-clutch-dsh-worktree-sectionTitle {\n margin: 0 2px 4px;\n color: var(--dsw-alias-label-tertiary);\n font-size: 11px;\n font-weight: 600;\n letter-spacing: 0.02em;\n text-transform: uppercase;\n}\n\n.-cerbur-clutch-dsh-worktree-empty,\n.-cerbur-clutch-dsh-worktree-message {\n margin: 0;\n padding: 8px 4px;\n color: var(--dsw-alias-label-tertiary);\n font-size: 12px;\n line-height: 18px;\n}\n\n.-cerbur-clutch-dsh-worktree-message[data-error='true'] {\n color: var(--dsw-alias-state-error-primary);\n}\n\n.-cerbur-clutch-dsh-worktree-worktree,\n.-cerbur-clutch-dsh-worktree-session {\n display: flex;\n align-items: center;\n width: 100%;\n min-width: 0;\n box-sizing: border-box;\n border: 0;\n border-radius: 7px;\n padding: 6px 8px;\n background: transparent;\n color: var(--dsw-alias-label-primary);\n font: inherit;\n font-size: 12px;\n text-align: left;\n}\n\n.-cerbur-clutch-dsh-worktree-worktree {\n cursor: default;\n}\n\n.-cerbur-clutch-dsh-worktree-session {\n cursor: pointer;\n}\n\n.-cerbur-clutch-dsh-worktree-worktree:hover,\n.-cerbur-clutch-dsh-worktree-session:hover {\n background: var(--dsw-alias-interactive-bg-hover);\n}\n\n.-cerbur-clutch-dsh-worktree-worktreeLabel,\n.-cerbur-clutch-dsh-worktree-sessionLabel {\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.-cerbur-clutch-dsh-worktree-status {\n flex: none;\n margin-left: auto;\n padding-left: 8px;\n color: var(--dsw-alias-label-tertiary);\n font-size: 11px;\n}\n\n.-cerbur-clutch-dsh-worktree-searchRow {\n display: flex;\n align-items: center;\n gap: 6px;\n padding: 8px 10px 6px;\n}\n\n.-cerbur-clutch-dsh-worktree-searchIcon {\n display: inline-flex;\n flex: none;\n align-items: center;\n justify-content: center;\n color: var(--dsw-alias-label-secondary);\n}\n\n.-cerbur-clutch-dsh-worktree-searchInput {\n min-width: 0;\n box-sizing: border-box;\n border: 1px solid var(--dsw-alias-border-l2);\n border-radius: 7px;\n background: var(--dsw-alias-button-elevated-fill);\n color: var(--dsw-alias-label-primary);\n font: inherit;\n outline: none;\n}\n\n.-cerbur-clutch-dsh-worktree-searchInput {\n width: 100%;\n padding: 6px 8px;\n font-size: 13px;\n line-height: 18px;\n}\n\n.-cerbur-clutch-dsh-worktree-searchInput:focus,\n.-cerbur-clutch-dsh-worktree-actionSelect:focus {\n border-color: #3b82f6;\n}\n\n.-cerbur-clutch-dsh-worktree-iconButton {\n display: inline-flex;\n flex: none;\n align-items: center;\n justify-content: center;\n width: 28px;\n height: 28px;\n border: 0;\n border-radius: 7px;\n background: transparent;\n color: var(--dsw-alias-label-secondary);\n cursor: pointer;\n font: inherit;\n font-size: 20px;\n line-height: 1;\n}\n\n.-cerbur-clutch-dsh-worktree-iconButton:hover {\n background: var(--dsw-alias-interactive-bg-hover);\n color: var(--dsw-alias-label-primary);\n}\n\n.-cerbur-clutch-dsh-worktree-workspaceList {\n min-width: 0;\n min-height: 0;\n display: grid;\n gap: 4px;\n overflow-x: hidden;\n}\n\n.-cerbur-clutch-dsh-worktree-workspaceGroup {\n min-width: 0;\n}\n\n.-cerbur-clutch-dsh-worktree-workspaceRow,\n.-cerbur-clutch-dsh-worktree-worktreeRow {\n position: relative;\n display: flex;\n align-items: center;\n min-width: 0;\n min-height: 36px;\n box-sizing: border-box;\n border-radius: 8px;\n padding: 3px 4px;\n}\n\n.-cerbur-clutch-dsh-worktree-workspaceRow:hover,\n.-cerbur-clutch-dsh-worktree-worktreeRow:hover {\n background: var(--dsw-alias-interactive-bg-hover);\n}\n\n.-cerbur-clutch-dsh-worktree-workspaceRow .-cerbur-clutch-dsh-worktree-workspaceDisclosure {\n display: none;\n}\n\n.-cerbur-clutch-dsh-worktree-workspaceRow:hover .-cerbur-clutch-dsh-worktree-workspaceDisclosure,\n.-cerbur-clutch-dsh-worktree-workspaceRow[data-menu-open='true'] .-cerbur-clutch-dsh-worktree-workspaceDisclosure {\n display: inline-flex;\n}\n\n.-cerbur-clutch-dsh-worktree-workspaceRow:hover .-cerbur-clutch-dsh-worktree-workspaceIcon,\n.-cerbur-clutch-dsh-worktree-workspaceRow[data-menu-open='true'] .-cerbur-clutch-dsh-worktree-workspaceIcon {\n display: none;\n}\n\n.-cerbur-clutch-dsh-worktree-worktreeRow .-cerbur-clutch-dsh-worktree-worktreeDisclosure {\n display: none;\n}\n\n.-cerbur-clutch-dsh-worktree-worktreeRow:hover .-cerbur-clutch-dsh-worktree-worktreeDisclosure,\n.-cerbur-clutch-dsh-worktree-worktreeRow[data-menu-open='true'] .-cerbur-clutch-dsh-worktree-worktreeDisclosure {\n display: inline-flex;\n}\n\n.-cerbur-clutch-dsh-worktree-worktreeRow:hover .-cerbur-clutch-dsh-worktree-worktreeIcon,\n.-cerbur-clutch-dsh-worktree-worktreeRow[data-menu-open='true'] .-cerbur-clutch-dsh-worktree-worktreeIcon {\n display: none;\n}\n\n.-cerbur-clutch-dsh-worktree-disclosureButton {\n flex: none;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 24px;\n height: 28px;\n border: 0;\n border-radius: 6px;\n padding: 0;\n background: transparent;\n color: var(--dsw-alias-label-secondary);\n cursor: pointer;\n font: inherit;\n font-size: 17px;\n line-height: 1;\n}\n\n.-cerbur-clutch-dsh-worktree-disclosureButton > svg {\n display: block;\n}\n\n.-cerbur-clutch-dsh-worktree-disclosureButton:hover {\n background: var(--dsw-alias-interactive-bg-hover);\n}\n\n.-cerbur-clutch-dsh-worktree-workspaceIcon,\n.-cerbur-clutch-dsh-worktree-worktreeIcon {\n flex: none;\n width: 24px;\n color: var(--dsw-alias-label-secondary);\n font-size: 20px;\n line-height: 1;\n text-align: center;\n}\n\n.-cerbur-clutch-dsh-worktree-worktreeState {\n display: inline-flex;\n flex: none;\n align-items: center;\n justify-content: center;\n width: 16px;\n margin-right: 2px;\n}\n\n.-cerbur-clutch-dsh-worktree-workspaceIcon {\n color: var(--dsw-alias-brand-primary);\n}\n\n.-cerbur-clutch-dsh-worktree-workspaceTitle,\n.-cerbur-clutch-dsh-worktree-worktreeLabel {\n min-width: 0;\n overflow: hidden;\n flex: 1;\n padding: 0 6px;\n text-overflow: ellipsis;\n white-space: nowrap;\n font-size: 14px;\n font-weight: 400;\n line-height: 20px;\n}\n\n.-cerbur-clutch-dsh-worktree-treeActionSlot,\n.-cerbur-clutch-dsh-worktree-workspaceActions {\n position: relative;\n display: inline-flex;\n flex: 0 0 64px;\n align-items: center;\n justify-content: flex-end;\n width: 64px;\n height: 28px;\n margin-left: auto;\n}\n\n.-cerbur-clutch-dsh-worktree-treeActionSlot > .-cerbur-clutch-dsh-worktree-menuAction {\n position: absolute;\n top: 0;\n right: 32px;\n}\n\n.-cerbur-clutch-dsh-worktree-treeActionSlot > .-cerbur-clutch-dsh-worktree-iconButton:last-child {\n position: absolute;\n top: 0;\n right: 0;\n}\n\n.-cerbur-clutch-dsh-worktree-menuAction {\n display: inline-flex;\n width: 28px;\n height: 28px;\n visibility: hidden;\n}\n\n.-cerbur-clutch-dsh-worktree-workspaceRow:hover .-cerbur-clutch-dsh-worktree-menuAction,\n.-cerbur-clutch-dsh-worktree-workspaceRow[data-menu-open='true'] .-cerbur-clutch-dsh-worktree-menuAction,\n.-cerbur-clutch-dsh-worktree-worktreeRow:hover .-cerbur-clutch-dsh-worktree-menuAction,\n.-cerbur-clutch-dsh-worktree-worktreeRow[data-menu-open='true'] .-cerbur-clutch-dsh-worktree-menuAction {\n visibility: visible;\n}\n\n.-cerbur-clutch-dsh-worktree-workspaceRow.-cerbur-clutch-dsh-worktree-dropBefore::before,\n.-cerbur-clutch-dsh-worktree-workspaceRow.-cerbur-clutch-dsh-worktree-dropAfter::after {\n position: absolute;\n right: 4px;\n left: 4px;\n height: 2px;\n border-radius: 2px;\n background: var(--dsw-alias-brand-primary);\n content: '';\n}\n\n.-cerbur-clutch-dsh-worktree-workspaceRow.-cerbur-clutch-dsh-worktree-dropBefore::before {\n top: -1px;\n}\n\n.-cerbur-clutch-dsh-worktree-workspaceRow.-cerbur-clutch-dsh-worktree-dropAfter::after {\n bottom: -1px;\n}\n\n.-cerbur-clutch-dsh-worktree-treeChildren {\n margin-left: 24px;\n padding: 2px 0 5px 12px;\n border-left: 1px solid var(--dsw-alias-border-l1);\n}\n\n.-cerbur-clutch-dsh-worktree-groupLabel {\n padding: 6px 8px 3px;\n color: var(--dsw-alias-label-tertiary);\n font-size: 10px;\n font-weight: 600;\n letter-spacing: 0.05em;\n text-transform: uppercase;\n}\n\n.-cerbur-clutch-dsh-worktree-groupHeader {\n display: flex;\n align-items: center;\n min-height: 34px;\n padding-right: 4px;\n}\n\n.-cerbur-clutch-dsh-worktree-groupHeader .-cerbur-clutch-dsh-worktree-groupLabel {\n flex: 1;\n}\n\n.-cerbur-clutch-dsh-worktree-worktreeGroup {\n margin-top: 2px;\n}\n\n.-cerbur-clutch-dsh-worktree-worktreeRow {\n min-height: 34px;\n}\n\n.-cerbur-clutch-dsh-worktree-worktreeRow .-cerbur-clutch-dsh-worktree-disclosureButton {\n width: 22px;\n}\n\n.-cerbur-clutch-dsh-worktree-treeSessionRow {\n position: relative;\n display: flex;\n align-items: center;\n width: 100%;\n min-width: 0;\n min-height: 31px;\n box-sizing: border-box;\n border-radius: 7px;\n}\n\n.-cerbur-clutch-dsh-worktree-treeSessionRow:hover,\n.-cerbur-clutch-dsh-worktree-treeSessionRow[data-menu-open='true'] {\n background: var(--dsw-alias-interactive-bg-hover);\n}\n\n.-cerbur-clutch-dsh-worktree-treeSessionRow.-cerbur-clutch-dsh-worktree-dropBefore::before,\n.-cerbur-clutch-dsh-worktree-treeSessionRow.-cerbur-clutch-dsh-worktree-dropAfter::after {\n position: absolute;\n right: 4px;\n left: 4px;\n height: 2px;\n border-radius: 2px;\n background: var(--dsw-alias-brand-primary);\n content: '';\n}\n\n.-cerbur-clutch-dsh-worktree-treeSessionRow.-cerbur-clutch-dsh-worktree-dropBefore::before {\n top: -1px;\n}\n\n.-cerbur-clutch-dsh-worktree-treeSessionRow.-cerbur-clutch-dsh-worktree-dropAfter::after {\n bottom: -1px;\n}\n\n.-cerbur-clutch-dsh-worktree-treeSessionContent {\n display: flex;\n align-items: center;\n flex: 1;\n width: 0;\n min-width: 0;\n min-height: 31px;\n box-sizing: border-box;\n border: 0;\n border-radius: 7px;\n padding: 4px 4px;\n background: transparent;\n color: var(--dsw-alias-label-primary);\n cursor: pointer;\n font: inherit;\n font-size: 14px;\n font-weight: 400;\n line-height: 20px;\n text-align: left;\n}\n\n.-cerbur-clutch-dsh-worktree-treeSessionContent:hover {\n background: transparent;\n}\n\n.-cerbur-clutch-dsh-worktree-rowActions {\n display: none;\n flex: none;\n align-items: center;\n gap: 4px;\n}\n\n.-cerbur-clutch-dsh-worktree-sessionOverflowButton {\n display: block;\n width: calc(100% - 24px);\n margin: 2px 0 4px 24px;\n padding: 4px 8px;\n border: 0;\n border-radius: 6px;\n background: transparent;\n color: var(--dsw-alias-label-secondary);\n cursor: pointer;\n font: inherit;\n font-size: 12px;\n font-weight: 400;\n line-height: 20px;\n text-align: left;\n}\n\n.-cerbur-clutch-dsh-worktree-sessionOverflowButton:hover {\n background: var(--dsw-alias-interactive-bg-hover);\n color: var(--dsw-alias-label-primary);\n}\n\n.-cerbur-clutch-dsh-worktree-treeSessionRow:hover .-cerbur-clutch-dsh-worktree-rowActions,\n.-cerbur-clutch-dsh-worktree-treeSessionRow[data-menu-open='true'] .-cerbur-clutch-dsh-worktree-rowActions {\n display: inline-flex;\n}\n\n.-cerbur-clutch-dsh-worktree-renameInput {\n width: 100%;\n}\n\n.-cerbur-clutch-dsh-worktree-renameError {\n margin: 8px 0 0;\n color: var(--dsw-alias-state-error-primary);\n font-size: 13px;\n line-height: 20px;\n}\n\n.-cerbur-clutch-dsh-worktree-treeGuide {\n flex: none;\n width: 20px;\n color: var(--dsw-alias-label-tertiary);\n text-align: center;\n}\n\n.-cerbur-clutch-dsh-worktree-emptyNested {\n margin: 0;\n padding: 4px 8px 5px 28px;\n color: var(--dsw-alias-label-tertiary);\n font-size: 11px;\n}\n\n.-cerbur-clutch-dsh-worktree-modalField {\n display: grid;\n gap: 5px;\n color: var(--dsw-alias-label-secondary);\n font-size: 12px;\n}\n";
|
|
290
|
+
const css = ".-cerbur-clutch-dsh-worktree-action {\n display: flex;\n align-items: center;\n justify-content: flex-start;\n gap: 8px;\n width: calc(100% + 4px);\n height: 42px;\n margin: 4px -2px;\n box-sizing: border-box;\n border: 0;\n border-radius: 12px;\n padding: 0 10px 0 8px;\n background: transparent;\n color: var(--dsw-alias-label-primary);\n cursor: pointer;\n font: inherit;\n font-size: 14px;\n line-height: 22px;\n text-align: left;\n overflow: hidden;\n}\n\n.-cerbur-clutch-dsh-worktree-action:hover,\n.-cerbur-clutch-dsh-worktree-action[data-active='true'] {\n background: var(--dsw-alias-interactive-bg-hover);\n}\n\n.-cerbur-clutch-dsh-worktree-action[data-collapsed='true'] {\n width: 36px;\n height: 36px;\n margin: 8px 0 10px;\n justify-content: center;\n gap: 0;\n padding: 0;\n border-radius: 50%;\n}\n\n.-cerbur-clutch-dsh-worktree-actionLabel {\n overflow: hidden;\n white-space: nowrap;\n}\n\n.-cerbur-clutch-dsh-worktree-surface {\n position: absolute;\n top: 0;\n left: 0;\n display: flex;\n flex-direction: column;\n box-sizing: border-box;\n min-width: 56px;\n overflow: hidden;\n border-right: 1px solid var(--dsw-alias-border-l1);\n background: var(--dsw-specific-sidebar-fill);\n color: var(--dsw-alias-label-primary);\n pointer-events: auto;\n transition: width var(--ds-transition-duration-slow) var(--ds-ease-in-out);\n}\n\n.-cerbur-clutch-dsh-worktree-wideContent {\n display: flex;\n min-width: 0;\n min-height: 0;\n flex: 1;\n flex-direction: column;\n}\n\n.-cerbur-clutch-dsh-worktree-surface[data-collapsed='true'] .-cerbur-clutch-dsh-worktree-wideContent {\n display: none;\n}\n\n.-cerbur-clutch-dsh-worktree-railContent {\n display: none;\n}\n\n.-cerbur-clutch-dsh-worktree-surface[data-collapsed='true'] .-cerbur-clutch-dsh-worktree-railContent {\n display: flex;\n flex: 1;\n align-items: flex-start;\n justify-content: center;\n padding-top: 12px;\n}\n\n.-cerbur-clutch-dsh-worktree-railButton,\n.-cerbur-clutch-dsh-worktree-closeButton {\n border: 0;\n border-radius: 8px;\n background: transparent;\n color: inherit;\n cursor: pointer;\n font: inherit;\n}\n\n.-cerbur-clutch-dsh-worktree-railButton {\n width: 36px;\n height: 36px;\n color: var(--dsw-alias-label-secondary);\n font-size: 11px;\n font-weight: 600;\n}\n\n.-cerbur-clutch-dsh-worktree-railButton:hover,\n.-cerbur-clutch-dsh-worktree-closeButton:hover {\n background: var(--dsw-alias-interactive-bg-hover);\n}\n\n.-cerbur-clutch-dsh-worktree-header {\n display: flex;\n align-items: center;\n gap: 8px;\n flex: none;\n min-height: 44px;\n padding: 6px 10px;\n box-sizing: border-box;\n border-bottom: 1px solid var(--dsw-alias-border-l1);\n}\n\n.-cerbur-clutch-dsh-worktree-title {\n min-width: 0;\n flex: 1;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n font-size: 14px;\n font-weight: 600;\n}\n\n.-cerbur-clutch-dsh-worktree-closeButton {\n flex: none;\n width: 28px;\n height: 28px;\n font-size: 18px;\n line-height: 1;\n}\n\n.-cerbur-clutch-dsh-worktree-modeButton[data-active='true'] {\n color: var(--dsw-alias-label-primary);\n}\n\n.-cerbur-clutch-dsh-worktree-workspacePicker {\n display: block;\n width: calc(100% - 20px);\n margin: 6px 10px 8px;\n padding: 6px 8px;\n border: 1px solid var(--dsw-alias-border-l2);\n border-radius: 7px;\n background: var(--dsw-alias-button-elevated-fill);\n color: var(--dsw-alias-label-primary);\n font: inherit;\n font-size: 12px;\n}\n\n.-cerbur-clutch-dsh-worktree-workspaceLabel {\n display: block;\n color: var(--dsw-alias-label-tertiary);\n font-size: 11px;\n}\n\n.-cerbur-clutch-dsh-worktree-content {\n min-height: 0;\n flex: 1;\n overflow: auto;\n padding: 0 10px 12px;\n}\n\n.-cerbur-clutch-dsh-worktree-content:focus-visible {\n outline: 2px solid var(--dsw-alias-border-l3);\n outline-offset: -2px;\n}\n\n.-cerbur-clutch-dsh-worktree-error {\n margin: 12px 0 0;\n padding: 8px;\n border: 1px solid var(--dsw-alias-state-error-primary);\n border-radius: 7px;\n}\n\n.-cerbur-clutch-dsh-worktree-retryButton,\n.-cerbur-clutch-dsh-worktree-actionButton {\n border: 0;\n border-radius: 6px;\n background: var(--dsw-alias-button-elevated-fill);\n color: var(--dsw-alias-label-primary);\n cursor: pointer;\n font: inherit;\n font-size: 11px;\n}\n\n.-cerbur-clutch-dsh-worktree-retryButton,\n.-cerbur-clutch-dsh-worktree-actionButton {\n width: 100%;\n padding: 6px 8px;\n}\n\n.-cerbur-clutch-dsh-worktree-recoveryActions {\n display: grid;\n gap: 6px;\n margin-top: 6px;\n}\n\n.-cerbur-clutch-dsh-worktree-retryButton:disabled,\n.-cerbur-clutch-dsh-worktree-actionButton:disabled {\n cursor: not-allowed;\n opacity: 0.5;\n}\n\n.-cerbur-clutch-dsh-worktree-actions {\n display: grid;\n gap: 6px;\n margin-top: 10px;\n padding: 8px;\n border: 1px solid var(--dsw-alias-border-l1);\n border-radius: 7px;\n}\n\n.-cerbur-clutch-dsh-worktree-actionLabel {\n display: grid;\n gap: 3px;\n color: var(--dsw-alias-label-tertiary);\n font-size: 11px;\n}\n\n.-cerbur-clutch-dsh-worktree-actionSelect {\n min-width: 0;\n padding: 5px 6px;\n border: 1px solid var(--dsw-alias-border-l2);\n border-radius: 6px;\n background: var(--dsw-alias-button-elevated-fill);\n color: var(--dsw-alias-label-primary);\n font: inherit;\n font-size: 11px;\n}\n\n.-cerbur-clutch-dsh-worktree-section {\n margin: 12px 0 0;\n}\n\n.-cerbur-clutch-dsh-worktree-sectionTitle {\n margin: 0 2px 4px;\n color: var(--dsw-alias-label-tertiary);\n font-size: 11px;\n font-weight: 600;\n letter-spacing: 0.02em;\n text-transform: uppercase;\n}\n\n.-cerbur-clutch-dsh-worktree-empty,\n.-cerbur-clutch-dsh-worktree-message {\n margin: 0;\n padding: 8px 4px;\n color: var(--dsw-alias-label-tertiary);\n font-size: 12px;\n line-height: 18px;\n}\n\n.-cerbur-clutch-dsh-worktree-message[data-error='true'] {\n color: var(--dsw-alias-state-error-primary);\n}\n\n.-cerbur-clutch-dsh-worktree-worktree,\n.-cerbur-clutch-dsh-worktree-session {\n display: flex;\n align-items: center;\n width: 100%;\n min-width: 0;\n box-sizing: border-box;\n border: 0;\n border-radius: 7px;\n padding: 6px 8px;\n background: transparent;\n color: var(--dsw-alias-label-primary);\n font: inherit;\n font-size: 12px;\n text-align: left;\n}\n\n.-cerbur-clutch-dsh-worktree-worktree {\n cursor: default;\n}\n\n.-cerbur-clutch-dsh-worktree-session {\n cursor: pointer;\n}\n\n.-cerbur-clutch-dsh-worktree-worktree:hover,\n.-cerbur-clutch-dsh-worktree-session:hover {\n background: var(--dsw-alias-interactive-bg-hover);\n}\n\n.-cerbur-clutch-dsh-worktree-worktreeLabel,\n.-cerbur-clutch-dsh-worktree-sessionLabel {\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.-cerbur-clutch-dsh-worktree-status {\n flex: none;\n margin-left: auto;\n padding-left: 8px;\n color: var(--dsw-alias-label-tertiary);\n font-size: 11px;\n}\n\n.-cerbur-clutch-dsh-worktree-searchRow {\n display: flex;\n align-items: center;\n gap: 6px;\n padding: 8px 10px 6px;\n}\n\n.-cerbur-clutch-dsh-worktree-searchIcon {\n display: inline-flex;\n flex: none;\n align-items: center;\n justify-content: center;\n color: var(--dsw-alias-label-secondary);\n}\n\n.-cerbur-clutch-dsh-worktree-searchInput {\n min-width: 0;\n box-sizing: border-box;\n border: 1px solid var(--dsw-alias-border-l2);\n border-radius: 7px;\n background: var(--dsw-alias-button-elevated-fill);\n color: var(--dsw-alias-label-primary);\n font: inherit;\n outline: none;\n}\n\n.-cerbur-clutch-dsh-worktree-searchInput {\n width: 100%;\n padding: 6px 8px;\n font-size: 13px;\n line-height: 18px;\n}\n\n.-cerbur-clutch-dsh-worktree-searchInput:focus,\n.-cerbur-clutch-dsh-worktree-actionSelect:focus {\n border-color: #3b82f6;\n}\n\n.-cerbur-clutch-dsh-worktree-iconButton {\n display: inline-flex;\n flex: none;\n align-items: center;\n justify-content: center;\n width: 28px;\n height: 28px;\n border: 0;\n border-radius: 7px;\n background: transparent;\n color: var(--dsw-alias-label-secondary);\n cursor: pointer;\n font: inherit;\n font-size: 20px;\n line-height: 1;\n}\n\n.-cerbur-clutch-dsh-worktree-iconButton:hover {\n background: var(--dsw-alias-interactive-bg-hover);\n color: var(--dsw-alias-label-primary);\n}\n\n.-cerbur-clutch-dsh-worktree-workspaceList {\n min-width: 0;\n min-height: 0;\n display: grid;\n gap: 4px;\n overflow-x: hidden;\n}\n\n.-cerbur-clutch-dsh-worktree-workspaceGroup {\n min-width: 0;\n}\n\n.-cerbur-clutch-dsh-worktree-workspaceRow,\n.-cerbur-clutch-dsh-worktree-worktreeRow {\n position: relative;\n display: flex;\n align-items: center;\n min-width: 0;\n min-height: 36px;\n box-sizing: border-box;\n border-radius: 8px;\n padding: 3px 4px;\n}\n\n.-cerbur-clutch-dsh-worktree-workspaceRow:hover,\n.-cerbur-clutch-dsh-worktree-worktreeRow:hover {\n background: var(--dsw-alias-interactive-bg-hover);\n}\n\n.-cerbur-clutch-dsh-worktree-workspaceRow .-cerbur-clutch-dsh-worktree-workspaceDisclosure {\n display: none;\n}\n\n.-cerbur-clutch-dsh-worktree-workspaceRow:hover .-cerbur-clutch-dsh-worktree-workspaceDisclosure,\n.-cerbur-clutch-dsh-worktree-workspaceRow[data-menu-open='true'] .-cerbur-clutch-dsh-worktree-workspaceDisclosure {\n display: inline-flex;\n}\n\n.-cerbur-clutch-dsh-worktree-workspaceRow:hover .-cerbur-clutch-dsh-worktree-workspaceIcon,\n.-cerbur-clutch-dsh-worktree-workspaceRow[data-menu-open='true'] .-cerbur-clutch-dsh-worktree-workspaceIcon {\n display: none;\n}\n\n.-cerbur-clutch-dsh-worktree-worktreeRow .-cerbur-clutch-dsh-worktree-worktreeDisclosure {\n display: none;\n}\n\n.-cerbur-clutch-dsh-worktree-worktreeRow:hover .-cerbur-clutch-dsh-worktree-worktreeDisclosure,\n.-cerbur-clutch-dsh-worktree-worktreeRow[data-menu-open='true'] .-cerbur-clutch-dsh-worktree-worktreeDisclosure {\n display: inline-flex;\n}\n\n.-cerbur-clutch-dsh-worktree-worktreeRow:hover .-cerbur-clutch-dsh-worktree-worktreeIcon,\n.-cerbur-clutch-dsh-worktree-worktreeRow[data-menu-open='true'] .-cerbur-clutch-dsh-worktree-worktreeIcon {\n display: none;\n}\n\n.-cerbur-clutch-dsh-worktree-disclosureButton {\n flex: none;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 24px;\n height: 28px;\n border: 0;\n border-radius: 6px;\n padding: 0;\n background: transparent;\n color: var(--dsw-alias-label-secondary);\n cursor: pointer;\n font: inherit;\n font-size: 17px;\n line-height: 1;\n}\n\n.-cerbur-clutch-dsh-worktree-disclosureButton > svg {\n display: block;\n}\n\n.-cerbur-clutch-dsh-worktree-disclosureButton:hover {\n background: var(--dsw-alias-interactive-bg-hover);\n}\n\n.-cerbur-clutch-dsh-worktree-workspaceIcon,\n.-cerbur-clutch-dsh-worktree-worktreeIcon {\n flex: none;\n width: 24px;\n color: var(--dsw-alias-label-secondary);\n font-size: 20px;\n line-height: 1;\n text-align: center;\n}\n\n.-cerbur-clutch-dsh-worktree-worktreeState {\n display: inline-flex;\n flex: none;\n align-items: center;\n justify-content: center;\n width: 12px;\n margin-right: 0;\n}\n\n.-cerbur-clutch-dsh-worktree-workspaceIcon {\n color: var(--dsw-alias-brand-primary);\n}\n\n.-cerbur-clutch-dsh-worktree-workspaceTitle,\n.-cerbur-clutch-dsh-worktree-worktreeLabel {\n min-width: 0;\n overflow: hidden;\n flex: 1;\n padding: 0 6px;\n text-overflow: ellipsis;\n white-space: nowrap;\n font-size: 14px;\n font-weight: 400;\n line-height: 20px;\n}\n\n.-cerbur-clutch-dsh-worktree-worktreeRow[data-main-group='true'] .-cerbur-clutch-dsh-worktree-worktreeLabel {\n font-weight: 600;\n text-transform: uppercase;\n}\n\n.-cerbur-clutch-dsh-worktree-worktreeHoverTitle {\n color: var(--dsw-static-neutral-bluish-00);\n font-size: 14px;\n line-height: 20px;\n overflow-wrap: anywhere;\n}\n\n.-cerbur-clutch-dsh-worktree-treeActionSlot,\n.-cerbur-clutch-dsh-worktree-workspaceActions {\n position: relative;\n display: inline-flex;\n flex: 0 0 64px;\n align-items: center;\n justify-content: flex-end;\n width: 64px;\n height: 28px;\n margin-left: auto;\n}\n\n.-cerbur-clutch-dsh-worktree-treeActionSlot > .-cerbur-clutch-dsh-worktree-menuAction {\n position: absolute;\n top: 0;\n right: 32px;\n}\n\n.-cerbur-clutch-dsh-worktree-treeActionSlot > .-cerbur-clutch-dsh-worktree-iconButton:last-child {\n position: absolute;\n top: 0;\n right: 0;\n}\n\n.-cerbur-clutch-dsh-worktree-menuAction {\n display: inline-flex;\n width: 28px;\n height: 28px;\n visibility: hidden;\n}\n\n.-cerbur-clutch-dsh-worktree-workspaceRow:hover .-cerbur-clutch-dsh-worktree-menuAction,\n.-cerbur-clutch-dsh-worktree-workspaceRow[data-menu-open='true'] .-cerbur-clutch-dsh-worktree-menuAction,\n.-cerbur-clutch-dsh-worktree-worktreeRow:hover .-cerbur-clutch-dsh-worktree-menuAction,\n.-cerbur-clutch-dsh-worktree-worktreeRow[data-menu-open='true'] .-cerbur-clutch-dsh-worktree-menuAction {\n visibility: visible;\n}\n\n.-cerbur-clutch-dsh-worktree-workspaceRow.-cerbur-clutch-dsh-worktree-dropBefore::before,\n.-cerbur-clutch-dsh-worktree-workspaceRow.-cerbur-clutch-dsh-worktree-dropAfter::after {\n position: absolute;\n right: 4px;\n left: 4px;\n height: 2px;\n border-radius: 2px;\n background: var(--dsw-alias-brand-primary);\n content: '';\n}\n\n.-cerbur-clutch-dsh-worktree-workspaceRow.-cerbur-clutch-dsh-worktree-dropBefore::before {\n top: -1px;\n}\n\n.-cerbur-clutch-dsh-worktree-workspaceRow.-cerbur-clutch-dsh-worktree-dropAfter::after {\n bottom: -1px;\n}\n\n.-cerbur-clutch-dsh-worktree-treeChildren {\n margin-left: 24px;\n padding: 2px 0 5px 12px;\n border-left: 1px solid var(--dsw-alias-border-l1);\n}\n\n.-cerbur-clutch-dsh-worktree-groupLabel {\n padding: 6px 8px 3px;\n color: var(--dsw-alias-label-tertiary);\n font-size: 10px;\n font-weight: 600;\n letter-spacing: 0.05em;\n text-transform: uppercase;\n}\n\n.-cerbur-clutch-dsh-worktree-groupHeader {\n display: flex;\n align-items: center;\n min-height: 34px;\n padding-right: 4px;\n}\n\n.-cerbur-clutch-dsh-worktree-groupHeader .-cerbur-clutch-dsh-worktree-groupLabel {\n flex: 1;\n}\n\n.-cerbur-clutch-dsh-worktree-worktreeGroup {\n margin-top: 2px;\n}\n\n.-cerbur-clutch-dsh-worktree-worktreeRow {\n min-height: 34px;\n}\n\n.-cerbur-clutch-dsh-worktree-worktreeRow .-cerbur-clutch-dsh-worktree-worktreeIcon,\n.-cerbur-clutch-dsh-worktree-worktreeRow .-cerbur-clutch-dsh-worktree-disclosureButton {\n width: 22px;\n}\n\n.-cerbur-clutch-dsh-worktree-treeSessionRow {\n position: relative;\n display: flex;\n align-items: center;\n width: 100%;\n min-width: 0;\n min-height: 31px;\n box-sizing: border-box;\n border-radius: 7px;\n}\n\n.-cerbur-clutch-dsh-worktree-treeSessionRow:hover,\n.-cerbur-clutch-dsh-worktree-treeSessionRow[data-menu-open='true'] {\n background: var(--dsw-alias-interactive-bg-hover);\n}\n\n.-cerbur-clutch-dsh-worktree-treeSessionRow.-cerbur-clutch-dsh-worktree-dropBefore::before,\n.-cerbur-clutch-dsh-worktree-treeSessionRow.-cerbur-clutch-dsh-worktree-dropAfter::after {\n position: absolute;\n right: 4px;\n left: 4px;\n height: 2px;\n border-radius: 2px;\n background: var(--dsw-alias-brand-primary);\n content: '';\n}\n\n.-cerbur-clutch-dsh-worktree-treeSessionRow.-cerbur-clutch-dsh-worktree-dropBefore::before {\n top: -1px;\n}\n\n.-cerbur-clutch-dsh-worktree-treeSessionRow.-cerbur-clutch-dsh-worktree-dropAfter::after {\n bottom: -1px;\n}\n\n.-cerbur-clutch-dsh-worktree-treeSessionContent {\n display: flex;\n align-items: center;\n flex: 1;\n width: 0;\n min-width: 0;\n min-height: 31px;\n box-sizing: border-box;\n border: 0;\n border-radius: 7px;\n padding: 4px 4px;\n background: transparent;\n color: var(--dsw-alias-label-primary);\n cursor: pointer;\n font: inherit;\n font-size: 14px;\n font-weight: 400;\n line-height: 20px;\n text-align: left;\n}\n\n.-cerbur-clutch-dsh-worktree-treeSessionContent:hover {\n background: transparent;\n}\n\n.-cerbur-clutch-dsh-worktree-rowActions {\n display: none;\n flex: none;\n align-items: center;\n gap: 4px;\n}\n\n.-cerbur-clutch-dsh-worktree-sessionOverflowButton {\n display: block;\n width: calc(100% - 24px);\n margin: 2px 0 4px 24px;\n padding: 4px 8px;\n border: 0;\n border-radius: 6px;\n background: transparent;\n color: var(--dsw-alias-label-secondary);\n cursor: pointer;\n font: inherit;\n font-size: 12px;\n font-weight: 400;\n line-height: 20px;\n text-align: left;\n}\n\n.-cerbur-clutch-dsh-worktree-sessionOverflowButton:hover {\n background: var(--dsw-alias-interactive-bg-hover);\n color: var(--dsw-alias-label-primary);\n}\n\n.-cerbur-clutch-dsh-worktree-treeSessionRow:hover .-cerbur-clutch-dsh-worktree-rowActions,\n.-cerbur-clutch-dsh-worktree-treeSessionRow[data-menu-open='true'] .-cerbur-clutch-dsh-worktree-rowActions {\n display: inline-flex;\n}\n\n.-cerbur-clutch-dsh-worktree-renameInput {\n width: 100%;\n}\n\n.-cerbur-clutch-dsh-worktree-renameError {\n margin: 8px 0 0;\n color: var(--dsw-alias-state-error-primary);\n font-size: 13px;\n line-height: 20px;\n}\n\n.-cerbur-clutch-dsh-worktree-treeGuide {\n flex: none;\n width: 20px;\n color: var(--dsw-alias-label-tertiary);\n text-align: center;\n}\n\n.-cerbur-clutch-dsh-worktree-emptyNested {\n margin: 0;\n padding: 4px 8px 5px 28px;\n color: var(--dsw-alias-label-tertiary);\n font-size: 11px;\n}\n\n.-cerbur-clutch-dsh-worktree-modalField {\n display: grid;\n gap: 5px;\n color: var(--dsw-alias-label-secondary);\n font-size: 12px;\n}\n";
|
|
291
291
|
const styleId = "@cerbur/clutch-dsh-worktree/worktree.css";
|
|
292
292
|
if (typeof document !== "undefined" && document.querySelector("style[data-plugin-css=\"@cerbur/clutch-dsh-worktree/worktree.css\"]") === null) {
|
|
293
293
|
const tag = document.createElement("style");
|
|
@@ -340,6 +340,7 @@ window.__ModuleLoader__.load({
|
|
|
340
340
|
"disclosureButton": "-cerbur-clutch-dsh-worktree-disclosureButton",
|
|
341
341
|
"worktreeState": "-cerbur-clutch-dsh-worktree-worktreeState",
|
|
342
342
|
"workspaceTitle": "-cerbur-clutch-dsh-worktree-workspaceTitle",
|
|
343
|
+
"worktreeHoverTitle": "-cerbur-clutch-dsh-worktree-worktreeHoverTitle",
|
|
343
344
|
"treeActionSlot": "-cerbur-clutch-dsh-worktree-treeActionSlot",
|
|
344
345
|
"workspaceActions": "-cerbur-clutch-dsh-worktree-workspaceActions",
|
|
345
346
|
"menuAction": "-cerbur-clutch-dsh-worktree-menuAction",
|
|
@@ -858,7 +859,7 @@ window.__ModuleLoader__.load({
|
|
|
858
859
|
/** Shared Main/Worktree group row with parameterized icon, state, and actions. */
|
|
859
860
|
function WorktreeGroupRow({ t, kind, label, expanded, icon, workspaceTitle, state, stateLabel, onToggle, onCreateSession, menu }) {
|
|
860
861
|
const main = kind === "main";
|
|
861
|
-
|
|
862
|
+
const row = (0, react_jsx_runtime.jsxs)("div", {
|
|
862
863
|
className: worktree_css_default.worktreeRow,
|
|
863
864
|
"data-main-group": main ? "true" : void 0,
|
|
864
865
|
"data-main-expanded": main ? String(expanded) : void 0,
|
|
@@ -941,6 +942,16 @@ window.__ModuleLoader__.load({
|
|
|
941
942
|
})
|
|
942
943
|
]
|
|
943
944
|
});
|
|
945
|
+
if (main) return row;
|
|
946
|
+
return (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.HoverCard, {
|
|
947
|
+
anchor: row,
|
|
948
|
+
content: (0, react_jsx_runtime.jsx)("div", {
|
|
949
|
+
className: worktree_css_default.worktreeHoverTitle,
|
|
950
|
+
children: label
|
|
951
|
+
}),
|
|
952
|
+
openDelayMs: 500,
|
|
953
|
+
disabled: menu?.open === true
|
|
954
|
+
});
|
|
944
955
|
}
|
|
945
956
|
/** Worktree-mode Session row with the same trailing options menu as native DSH rows. */
|
|
946
957
|
function WorktreeSessionRow({ t, sessionId, label, drag, actionPending, onOpen, onRename, onFork, onArchive }) {
|
package/lib/client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","names":["styles","IconBranchOutline16","IconEditOutline16","IconTrashOutline16","styles","IconChevronDownOutline14","IconChevronRightOutline14","IconFolderOpen16","IconFolderClose16","Menu","IconEllipsisOutline16","IconPlusOutline16","StateDot","IconBranchOutline16","IconArchiveOutline20","_Fragment","IconCloseOutline16","IconSearchOutline16","Modal","Button","Input"],"sources":["client/locales.js","client/worktree-connection.js","client/WorktreeModeAction.js","client/navigation.js","client/overlay-bounds.js","client/sidebar-overlay-geometry.js","client/view-mode.js","client/worktree-error-copy.js","client/worktree-view.js","client/WorktreeSurface.js","client/view-mode-store.js","client/virtual-workspace-membership.js","client/entry.js"],"sourcesContent":["export const WORKTREE_NS = 'worktree';\nexport const zh = {\n 'mode.open': '打开 Worktree 模式',\n 'mode.exit': '退出 Worktree 模式',\n 'mode.label': 'Worktree',\n 'mode.navigation': 'Worktree 导航',\n 'workspace.rename': '重命名',\n 'workspace.delete': '删除',\n 'workspace.expand': '展开 {name}',\n 'workspace.collapse': '收起 {name}',\n 'workspace.options': '工作区选项:{name}',\n 'workspace.addWorktree': '向 {name} 添加 Worktree',\n 'workspace.add': '添加工作区',\n 'workspace.search': '搜索工作区和会话',\n 'workspace.noMatches': '没有匹配的工作区',\n 'workspace.renameTitle': '重命名工作区',\n 'workspace.name': '工作区名称',\n 'workspace.duplicate': '已存在同名工作区。',\n 'workspace.deleteTitle': '删除工作区',\n 'workspace.deleteDescription': '删除“{name}”?这只会移除 DSH 工作区注册。目录、会话和 Git Worktree 会保留。',\n 'worktree.title': 'Worktree',\n 'worktree.main': 'Main',\n 'worktree.detached': '已分离 Worktree',\n 'worktree.repair': 'Worktree 需要修复',\n 'worktree.ready': '活动 Worktree 已就绪',\n 'worktree.expand': '展开 {name}',\n 'worktree.collapse': '收起 {name}',\n 'worktree.options': 'Worktree 选项:{name}',\n 'worktree.remove': '移除 Worktree',\n 'worktree.removeDescription': '移除“{name}”?Session 会保留在 DSH 中,并作为已分离关系继续可用。',\n 'worktree.addSession': '向 {name} 添加会话',\n 'worktree.noWorktrees': '暂无 Worktree',\n 'worktree.createTitle': '新建 Worktree',\n 'worktree.createDescription': '“{name}” · Worktree 路径由 DSH 管理。',\n 'worktree.baseBranch': 'Worktree 基线分支',\n 'worktree.noLocalBranch': '没有本地分支',\n 'worktree.noBranches': '此工作区中没有找到本地分支。',\n 'worktree.name': 'Worktree 名称',\n 'worktree.create': '创建 Worktree',\n 'session.options': '会话选项:{name}',\n 'session.rename': '重命名会话',\n 'session.fork': 'Fork 会话',\n 'session.archive': '归档会话',\n 'session.expandMore': '展开其余 {count} 个会话',\n 'session.collapse': '收起',\n 'session.name': '会话名称',\n 'dialog.close': '关闭',\n 'dialog.closeWorkspaceRename': '关闭重命名工作区对话框',\n 'dialog.closeWorkspaceDelete': '关闭删除工作区对话框',\n 'dialog.closeWorktreeCreate': '关闭创建 Worktree 对话框',\n 'dialog.closeWorktreeRemove': '关闭移除 Worktree 对话框',\n 'dialog.cancel': '取消',\n 'dialog.rename': '重命名',\n 'dialog.delete': '删除',\n 'action.retry': '重试',\n 'action.retryBinding': '重试绑定',\n 'action.openCreatedSession': '打开已创建的 Session',\n 'status.loading': '正在加载工作区…',\n 'error.worktreeDataUnavailable': 'Worktree 数据不可用,请重试。',\n 'error.connectionDisposed': 'Worktree 连接已释放,请重新加载插件后重试。',\n 'error.connectionFailed': 'Worktree endpoint {endpoint} 调用失败;连接错误,可重试:{reason}',\n 'error.invalidResult': 'Worktree endpoint {endpoint} 返回了无效结果,请重试请求。',\n 'error.workspaceOrderingUnavailable': '工作区排序不可用,请重新连接后重试。',\n 'error.sessionOrderingUnavailable': '会话排序不可用,请重新连接后重试。',\n 'error.worktreeCreatedSessionUnavailable': 'Worktree 已创建,但 Session 创建不可用,请重新连接后重试。',\n 'error.sessionCreationUnavailable': 'Session 创建不可用,请重新连接后重试。',\n 'error.worktreeRecordMissing': 'Worktree 创建未返回 Worktree 记录,请重试请求。',\n 'error.workspaceRenameUnavailable': '工作区重命名不可用,请重新连接后重试。',\n 'error.workspaceDeleteUnavailable': '工作区删除不可用,请重新连接后重试。',\n 'error.sessionRenameUnavailable': '会话重命名不可用,请重新连接后重试。',\n 'error.sessionBindingFailed': 'Session {sessionId} 已创建,但 Worktree 绑定失败:{reason}',\n 'branch.current': '(当前)',\n 'branch.checkedOut': '(已检出)',\n};\nexport const en = {\n 'mode.open': 'Open Worktree mode',\n 'mode.exit': 'Exit Worktree mode',\n 'mode.label': 'Worktree',\n 'mode.navigation': 'Worktree navigation',\n 'workspace.rename': 'Rename',\n 'workspace.delete': 'Delete',\n 'workspace.expand': 'Expand {name}',\n 'workspace.collapse': 'Collapse {name}',\n 'workspace.options': 'Workspace options for {name}',\n 'workspace.addWorktree': 'Add Worktree to {name}',\n 'workspace.add': 'Add Workspace',\n 'workspace.search': 'Search Workspaces and Sessions',\n 'workspace.noMatches': 'No matching Workspaces',\n 'workspace.renameTitle': 'Rename Workspace',\n 'workspace.name': 'Workspace name',\n 'workspace.duplicate': 'A Workspace with this name already exists.',\n 'workspace.deleteTitle': 'Delete Workspace',\n 'workspace.deleteDescription': 'Delete {name}? This removes only the DSH Workspace registration. The directory, Sessions, and Git Worktrees will be retained.',\n 'worktree.title': 'Worktrees',\n 'worktree.main': 'Main',\n 'worktree.detached': 'Detached Worktree',\n 'worktree.repair': 'Worktree needs repair',\n 'worktree.ready': 'Active Worktree ready',\n 'worktree.expand': 'Expand {name}',\n 'worktree.collapse': 'Collapse {name}',\n 'worktree.options': 'Worktree options for {name}',\n 'worktree.remove': 'Remove Worktree',\n 'worktree.removeDescription': 'Remove {name}? Sessions stay in DSH and remain available as detached bindings.',\n 'worktree.addSession': 'Add Session to {name}',\n 'worktree.noWorktrees': 'No Worktrees',\n 'worktree.createTitle': 'New Worktree',\n 'worktree.createDescription': '{name} · the Worktree path is managed by DSH.',\n 'worktree.baseBranch': 'Worktree base branch',\n 'worktree.noLocalBranch': 'No local branch',\n 'worktree.noBranches': 'No local branches found in this Workspace.',\n 'worktree.name': 'Worktree name',\n 'worktree.create': 'Create Worktree',\n 'session.options': 'Session options for {name}',\n 'session.rename': 'Rename session',\n 'session.fork': 'Fork session',\n 'session.archive': 'Archive session',\n 'session.expandMore': 'Expand {count} more',\n 'session.collapse': 'Collapse',\n 'session.name': 'Session name',\n 'dialog.close': 'Close',\n 'dialog.closeWorkspaceRename': 'Close Rename Workspace dialog',\n 'dialog.closeWorkspaceDelete': 'Close Delete Workspace dialog',\n 'dialog.closeWorktreeCreate': 'Close Create Worktree dialog',\n 'dialog.closeWorktreeRemove': 'Close Remove Worktree dialog',\n 'dialog.cancel': 'Cancel',\n 'dialog.rename': 'Rename',\n 'dialog.delete': 'Delete',\n 'action.retry': 'Retry',\n 'action.retryBinding': 'Retry Binding',\n 'action.openCreatedSession': 'Open Created Session',\n 'status.loading': 'Loading Workspaces…',\n 'error.worktreeDataUnavailable': 'Worktree data is unavailable. Retry the request.',\n 'error.connectionDisposed': 'Worktree connection is disposed; reload the plugin and retry.',\n 'error.connectionFailed': 'Worktree endpoint {endpoint} failed; retryable connection error: {reason}',\n 'error.invalidResult': 'Worktree endpoint {endpoint} returned an invalid result; retry the request.',\n 'error.workspaceOrderingUnavailable': 'Workspace ordering is unavailable; retry after reconnecting.',\n 'error.sessionOrderingUnavailable': 'Session ordering is unavailable; retry after reconnecting.',\n 'error.worktreeCreatedSessionUnavailable': 'Worktree created, but Session creation is unavailable; retry after reconnecting.',\n 'error.sessionCreationUnavailable': 'Session creation is unavailable; retry after reconnecting.',\n 'error.worktreeRecordMissing': 'Worktree creation returned no Worktree record; retry the request.',\n 'error.workspaceRenameUnavailable': 'Workspace rename is unavailable; retry after reconnecting.',\n 'error.workspaceDeleteUnavailable': 'Workspace delete is unavailable; retry after reconnecting.',\n 'error.sessionRenameUnavailable': 'Session rename is unavailable; retry after reconnecting.',\n 'error.sessionBindingFailed': 'Session {sessionId} was created, but Worktree binding failed: {reason}',\n 'branch.current': ' (current)',\n 'branch.checkedOut': ' (checked out)',\n};\n//# sourceMappingURL=locales.js.map","/** The one logical channel shared by the DSH Connection and Typert Gateway. */\nexport const WORKTREE_CONNECTION_CHANNEL = '/api';\n/**\n * Canonical Worktree endpoints owned by this adapter. Keeping the table here makes\n * the browser call surface auditable without making React know wire names.\n */\nexport const WORKTREE_CONNECTION_ENDPOINTS = Object.freeze({\n listWorktrees: 'worktreeManager/listWorktrees',\n listBranches: 'worktreeManager/listBranches',\n createWorktree: 'worktreeManager/createWorktree',\n removeWorktree: 'worktreeManager/removeWorktree',\n listBindings: 'worktreeManager/listBindings',\n bindSession: 'worktreeManager/bindSession',\n});\n/** Browser-safe error shared by transport, Gateway, endpoint and domain failures. */\nexport class WorktreeConnectionError extends Error {\n code;\n details;\n retryable;\n constructor(options) {\n super(options.message, options.cause === undefined ? undefined : { cause: options.cause });\n this.name = 'WorktreeConnectionError';\n this.code = options.code;\n this.details = Object.freeze({ ...(options.details ?? {}) });\n this.retryable = options.retryable;\n }\n}\nfunction isRecord(value) {\n return typeof value === 'object' && value !== null && !Array.isArray(value);\n}\nfunction isWorktreeError(value) {\n return (isRecord(value) &&\n typeof value.code === 'string' &&\n typeof value.message === 'string' &&\n isRecord(value.details));\n}\nfunction isWorktreeRemoteResult(value) {\n if (!isRecord(value) || typeof value.ok !== 'boolean')\n return false;\n return value.ok || (isWorktreeError(value.error) && value.error.details !== undefined);\n}\nfunction disposedError() {\n return new WorktreeConnectionError({\n code: 'CLIENT_DISPOSED',\n message: '',\n details: {},\n retryable: false,\n });\n}\nfunction connectionFailure(endpoint, error, code = 'CONNECTION_CALL_FAILED') {\n const message = error instanceof Error ? error.message : String(error);\n return new WorktreeConnectionError({\n code,\n message,\n details: { endpoint },\n retryable: true,\n cause: error,\n });\n}\nfunction gatewayFailure(endpoint, result) {\n const rawDetails = isRecord(result.error.details) ? result.error.details : {};\n throw new WorktreeConnectionError({\n code: result.error.code,\n message: result.error.message,\n details: { endpoint, ...rawDetails },\n retryable: true,\n });\n}\nfunction invalidResult(endpoint) {\n return new WorktreeConnectionError({\n code: 'WORKTREE_RPC_INVALID_RESULT',\n message: '',\n details: { endpoint },\n retryable: true,\n });\n}\nfunction unwrap(endpoint, result) {\n if (!result.ok)\n gatewayFailure(endpoint, result);\n if (!isWorktreeRemoteResult(result.value))\n throw invalidResult(endpoint);\n if (!result.value.ok) {\n throw new WorktreeConnectionError({\n code: result.value.error.code,\n message: result.value.error.message,\n details: result.value.error.details,\n retryable: false,\n });\n }\n return result.value.value;\n}\n/**\n * Adapt the shared DSH Connection RPC into the existing WorktreeManager contract.\n * All wire details and request cancellation live behind this one deep module.\n */\nexport function createWorktreeConnectionAdapter(rpc) {\n const inFlight = new Set();\n let disposed = false;\n async function invoke(method, input) {\n if (disposed)\n throw disposedError();\n const controller = new AbortController();\n inFlight.add(controller);\n const endpoint = WORKTREE_CONNECTION_ENDPOINTS[method];\n try {\n let result;\n try {\n result = await rpc.call(WORKTREE_CONNECTION_CHANNEL, endpoint, { args: { input } }, controller.signal);\n }\n catch (error) {\n if (disposed && controller.signal.aborted)\n throw disposedError();\n throw connectionFailure(endpoint, error);\n }\n return unwrap(endpoint, result);\n }\n finally {\n inFlight.delete(controller);\n }\n }\n return {\n listWorktrees: (input) => invoke('listWorktrees', input),\n listBranches: (input) => invoke('listBranches', input),\n createWorktree: (input) => invoke('createWorktree', input),\n async removeWorktree(input) {\n await invoke('removeWorktree', input);\n },\n listBindings: (input) => invoke('listBindings', input),\n bindSession: (input) => invoke('bindSession', input),\n dispose() {\n if (disposed)\n return;\n disposed = true;\n for (const controller of inFlight)\n controller.abort();\n inFlight.clear();\n },\n };\n}\n//# sourceMappingURL=worktree-connection.js.map","import { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { IconBranchOutline16 } from '@deepseek-ai/dsh-client-ui-primitives';\nimport styles from './worktree.css';\n/** Footer action that enters/exits the peer Worktree navigation mode. */\nexport function WorktreeModeAction({ wide, useStore, actions, t, available, }) {\n if (!available)\n return null;\n const mode = useStore((state) => state.viewMode);\n const active = mode === 'worktree';\n return (_jsxs(\"button\", { type: \"button\", className: styles.action, \"data-worktree-mode-action\": true, \"data-active\": active || undefined, \"data-collapsed\": !wide || undefined, \"aria-label\": active ? t('mode.exit') : t('mode.open'), \"aria-pressed\": active, title: active ? t('mode.exit') : t('mode.label'), onClick: () => {\n actions.setViewMode(active ? 'workspace-session' : 'worktree');\n }, children: [_jsx(IconBranchOutline16, { size: wide ? 16 : 18 }), wide && _jsx(\"span\", { className: styles.actionLabel, children: t('mode.label') })] }));\n}\n//# sourceMappingURL=WorktreeModeAction.js.map","/** Open an existing Session through DSH without touching the peer view mode. */\nexport function openWorktreeSession(opener, sessionId) {\n opener.open(sessionId);\n}\n//# sourceMappingURL=navigation.js.map","export function computeOverlayBounds(frame, newSession, footer) {\n if (newSession === undefined || footer === undefined) {\n return { ready: false, top: 0, height: 0 };\n }\n const top = Math.max(0, newSession.top - frame.top);\n const footerTop = Math.max(top, footer.top - frame.top);\n return { ready: true, top, height: footerTop - top };\n}\n//# sourceMappingURL=overlay-bounds.js.map","import { useLayoutEffect, useRef, useState } from 'react';\nimport { computeOverlayBounds } from './overlay-bounds.js';\nconst EMPTY_BOUNDS = { ready: false, top: 0, height: 0 };\nfunction asRect(element) {\n const rect = element.getBoundingClientRect();\n return { top: rect.top, bottom: rect.bottom };\n}\nexport function resolveNativeSidebarRoot(sidebar) {\n const directChild = sidebar.firstElementChild;\n if (directChild === null)\n return undefined;\n const directRect = directChild.getBoundingClientRect();\n if (directRect.width > 0 || directRect.height > 0)\n return directChild;\n return directChild.firstElementChild ?? directChild;\n}\nexport function findNewSessionAnchor(root) {\n const labels = ['新建会话', 'New session', '新会话', 'New Session'];\n const buttons = Array.from(root.querySelectorAll('button'));\n const visibleLabel = buttons.find((button) => {\n const text = button.textContent?.trim();\n return text === '新会话' || text === 'New Session';\n });\n if (visibleLabel !== undefined)\n return visibleLabel;\n for (const label of labels) {\n const button = buttons.find((candidate) => candidate.getAttribute('aria-label') === label);\n if (button !== undefined)\n return button;\n }\n return undefined;\n}\nexport function useSidebarOverlayGeometry(active) {\n const ref = useRef(null);\n const [width, setWidth] = useState(280);\n const [bounds, setBounds] = useState(EMPTY_BOUNDS);\n useLayoutEffect(() => {\n if (!active) {\n setBounds(EMPTY_BOUNDS);\n return;\n }\n const surface = ref.current;\n const overlay = surface?.closest('[data-shell-overlay]');\n const frame = overlay?.parentElement;\n const sidebar = frame?.firstElementChild;\n const nativeRoot = sidebar === null || sidebar === undefined ? undefined : resolveNativeSidebarRoot(sidebar);\n if (!(overlay instanceof HTMLElement) ||\n !(sidebar instanceof HTMLElement) ||\n !(nativeRoot instanceof HTMLElement)) {\n setBounds(EMPTY_BOUNDS);\n return;\n }\n let frameHandle;\n const update = () => {\n const newSession = findNewSessionAnchor(nativeRoot);\n const footer = nativeRoot.lastElementChild;\n const nextWidth = sidebar.getBoundingClientRect().width;\n if (nextWidth > 0)\n setWidth(nextWidth);\n setBounds(computeOverlayBounds(asRect(overlay), newSession === undefined ? undefined : asRect(newSession), footer === null ? undefined : asRect(footer)));\n };\n const scheduleUpdate = () => {\n if (frameHandle !== undefined)\n return;\n frameHandle = requestAnimationFrame(() => {\n frameHandle = undefined;\n update();\n });\n };\n update();\n const resizeObserver = typeof ResizeObserver === 'function'\n ? new ResizeObserver(scheduleUpdate)\n : undefined;\n for (const element of [overlay, sidebar, nativeRoot]) {\n resizeObserver?.observe(element);\n }\n const newSession = findNewSessionAnchor(nativeRoot);\n const footer = nativeRoot.lastElementChild;\n if (newSession !== undefined)\n resizeObserver?.observe(newSession);\n if (footer !== null)\n resizeObserver?.observe(footer);\n const mutationObserver = typeof MutationObserver === 'function'\n ? new MutationObserver(scheduleUpdate)\n : undefined;\n mutationObserver?.observe(nativeRoot, { childList: true, subtree: true });\n return () => {\n resizeObserver?.disconnect();\n mutationObserver?.disconnect();\n if (frameHandle !== undefined)\n cancelAnimationFrame(frameHandle);\n };\n }, [active]);\n return { ref, width, bounds };\n}\n//# sourceMappingURL=sidebar-overlay-geometry.js.map","/** Browser-local storage key; it is never sent to DSH or the sidecar. */\nexport const WORKTREE_VIEW_MODE_STORAGE_KEY = 'clutch-dsh-worktree.view-mode';\n/** Guard persisted values before they become a visible mode. */\nexport function isWorktreeViewMode(value) {\n return value === 'workspace-session' || value === 'worktree';\n}\n/** Degraded/unavailable plugin state always exposes the original DSH view. */\nexport function effectiveViewMode(preferred, worktreeServiceAvailable) {\n if (!worktreeServiceAvailable || !isWorktreeViewMode(preferred))\n return 'workspace-session';\n return preferred;\n}\n/** Keep the Main bucket scoped to the selected DSH Workspace before filtering bindings. */\nexport function workspaceSessionIds(workspaces, workspaceId, sessionIds) {\n if (workspaceId === undefined)\n return [];\n const workspace = workspaces.items.find((candidate) => candidate.workspaceId === workspaceId);\n if (workspace === undefined)\n return [];\n const listed = new Set(sessionIds);\n return workspace.sessionIds.filter((sessionId) => listed.has(sessionId));\n}\nexport function unboundSessionIds(sessionIds, boundSessionIds) {\n const bound = new Set(boundSessionIds);\n return sessionIds.filter((sessionId) => !bound.has(sessionId));\n}\n/**\n * Apply a browser-only membership delta to a DSH Workspace list snapshot.\n * `previousBindings` are removed first so the same function can also undo a\n * projection after a binding is deleted or the plugin is disposed.\n */\nexport function projectVirtualWorkspaceMembership(snapshot, previousBindings, nextBindings) {\n const previousSessionIds = new Set(previousBindings.map((binding) => binding.sessionId));\n const nextByWorkspace = new Map();\n for (const binding of nextBindings) {\n const sessionIds = nextByWorkspace.get(binding.workspaceId) ?? [];\n if (!sessionIds.includes(binding.sessionId))\n sessionIds.push(binding.sessionId);\n nextByWorkspace.set(binding.workspaceId, sessionIds);\n }\n const items = snapshot.items.map((workspace) => {\n const nativeSessionIds = workspace.sessionIds.filter((sessionId) => !previousSessionIds.has(sessionId));\n const virtualSessionIds = nextByWorkspace.get(workspace.workspaceId) ?? [];\n const sessionIds = [\n ...nativeSessionIds,\n ...virtualSessionIds.filter((sessionId) => !nativeSessionIds.includes(sessionId)),\n ];\n if (sessionIds.length === workspace.sessionIds.length &&\n sessionIds.every((sessionId, index) => sessionId === workspace.sessionIds[index])) {\n return workspace;\n }\n return { ...workspace, sessionIds };\n });\n if (items.every((workspace, index) => workspace === snapshot.items[index]))\n return snapshot;\n return { ...snapshot, items };\n}\n/**\n * Select the initial Worktree surface Workspace without navigating DSH:\n * current Session membership wins, then DSH recency, then the first available\n * Workspace keeps the surface usable in an empty/reconnecting fixture.\n */\nexport function initialWorkspaceId(workspaces, sessions) {\n const currentSessionId = sessions.current;\n if (currentSessionId !== undefined) {\n const currentWorkspace = workspaces.items.find((workspace) => workspace.sessionIds.includes(currentSessionId));\n if (currentWorkspace !== undefined)\n return currentWorkspace.workspaceId;\n }\n if (workspaces.recentWorkspaceId !== undefined &&\n workspaces.items.some((workspace) => workspace.workspaceId === workspaces.recentWorkspaceId)) {\n return workspaces.recentWorkspaceId;\n }\n return workspaces.items[0]?.workspaceId;\n}\n//# sourceMappingURL=view-mode.js.map","function detail(error, name) {\n const value = error.details?.[name];\n return typeof value === 'string' ? value : '';\n}\nfunction reason(error, t) {\n return error.message.length > 0 ? error.message : t('error.worktreeDataUnavailable');\n}\nexport function formatWorktreeViewError(error, t) {\n switch (error.code) {\n case 'CLIENT_DISPOSED':\n return t('error.connectionDisposed');\n case 'CONNECTION_CALL_FAILED':\n return t('error.connectionFailed', {\n endpoint: detail(error, 'endpoint'),\n reason: reason(error, t),\n });\n case 'WORKTREE_RPC_INVALID_RESULT':\n return t('error.invalidResult', { endpoint: detail(error, 'endpoint') });\n case 'WORKSPACE_ORDER_UNAVAILABLE':\n return t('error.workspaceOrderingUnavailable');\n case 'SESSION_ORDER_UNAVAILABLE':\n return t('error.sessionOrderingUnavailable');\n case 'SESSION_CREATE_UNAVAILABLE':\n return t('error.sessionCreationUnavailable');\n case 'WORKTREE_CREATED_SESSION_UNAVAILABLE':\n return t('error.worktreeCreatedSessionUnavailable');\n case 'WORKTREE_RECORD_MISSING':\n return t('error.worktreeRecordMissing');\n case 'WORKSPACE_RENAME_UNAVAILABLE':\n return t('error.workspaceRenameUnavailable');\n case 'WORKSPACE_DELETE_UNAVAILABLE':\n return t('error.workspaceDeleteUnavailable');\n case 'SESSION_RENAME_UNAVAILABLE':\n return t('error.sessionRenameUnavailable');\n case 'SESSION_BINDING_FAILED':\n return t('error.sessionBindingFailed', {\n sessionId: detail(error, 'sessionId'),\n reason: reason(error, t),\n });\n default:\n return error.message.length > 0 ? error.message : t('error.worktreeDataUnavailable');\n }\n}\n//# sourceMappingURL=worktree-error-copy.js.map","/** A DSH Session exists even when the external Worktree binding needs repair. */\nexport class WorktreeSessionBindingError extends Error {\n code = 'SESSION_BINDING_FAILED';\n retryable = true;\n sessionId;\n cause;\n constructor(sessionId, cause) {\n const reason = cause instanceof Error ? cause.message : String(cause);\n super(reason);\n this.name = 'WorktreeSessionBindingError';\n this.sessionId = sessionId;\n this.cause = cause;\n }\n}\n/** Reuse the previous ID snapshot when DSH republishes equivalent Workspace items. */\nexport function stableWorkspaceIds(previous, next) {\n if (previous.length !== next.length)\n return next;\n for (let index = 0; index < previous.length; index += 1) {\n if (previous[index] !== next[index])\n return next;\n }\n return previous;\n}\n/** Prefer the branch checked out by the DSH Workspace, then fall back to any local branch. */\nexport function selectDefaultBaseBranch(branches) {\n return branches.find((branch) => branch.isCurrent)?.name ?? branches[0]?.name ?? '';\n}\nfunction browserRandomUuid() {\n const randomUUID = globalThis.crypto?.randomUUID;\n if (typeof randomUUID === 'function')\n return randomUUID.call(globalThis.crypto);\n return `${Date.now().toString(16)}-${Math.random().toString(16).slice(2)}`;\n}\n/** Generate a short, editable default branch name without colliding with known local names. */\nexport function createDefaultWorktreeName(existingNames, randomUuid = browserRandomUuid) {\n const usedNames = new Set([...existingNames].map((name) => name.trim()));\n for (let attempt = 0; attempt < 100; attempt += 1) {\n const suffix = randomUuid().replace(/[^a-z0-9]/gi, '').slice(0, 8).toLowerCase();\n if (suffix.length < 8)\n continue;\n const candidate = `dsh/${suffix}`;\n if (!usedNames.has(candidate))\n return candidate;\n }\n throw new Error('Unable to generate an available default Worktree name.');\n}\n/** Hide DSH-archived Sessions from the browser-local Worktree projection. */\nexport function filterArchivedSessionIds(sessionIds, archivedSessionIds) {\n return sessionIds.filter((sessionId) => !archivedSessionIds.includes(sessionId));\n}\n/** Read all three Worktree projections needed by the surface in one refresh. */\nexport async function loadWorktreeView(manager, workspaceId) {\n const [worktrees, branches, bindings] = await Promise.all([\n manager.listWorktrees({ workspaceId }),\n manager.listBranches({ workspaceId }),\n manager.listBindings({ workspaceId }),\n ]);\n return { worktrees, branches, bindings };\n}\n/** Load one independent projection per DSH Workspace for the flat sidebar hierarchy. */\nexport async function loadWorktreeViews(manager, workspaceIds) {\n return Promise.all(workspaceIds.map(async (workspaceId) => ({\n workspaceId,\n ...(await loadWorktreeView(manager, workspaceId)),\n })));\n}\n/** Keep mutation routing in the browser Consumer while leaving wire details to the adapter. */\nexport async function executeWorktreeAction(manager, action) {\n if (action.type === 'createWorktree') {\n return manager.createWorktree(action.input);\n }\n if (action.type === 'removeWorktree') {\n await manager.removeWorktree(action.input);\n return;\n }\n}\n/**\n * Create a normal DSH Session at a Worktree cwd, then add the external binding.\n * A binding failure deliberately leaves the DSH-created Session intact.\n */\nexport async function createSessionForWorktree(input) {\n const sessionId = await input.createSession({ cwd: input.cwd });\n try {\n await input.manager.bindSession({\n workspaceId: input.workspaceId,\n worktreeId: input.worktreeId,\n sessionId,\n });\n }\n catch (error) {\n throw new WorktreeSessionBindingError(sessionId, error);\n }\n input.beforeOpen?.(sessionId);\n input.openSession(sessionId);\n return sessionId;\n}\nfunction recordDetails(value) {\n if (typeof value !== 'object' || value === null || Array.isArray(value))\n return undefined;\n const details = value.details;\n if (typeof details !== 'object' || details === null || Array.isArray(details))\n return undefined;\n return details;\n}\n/** Convert any adapter/Gateway failure into renderable, retry-aware UI data. */\nexport function toWorktreeViewError(error) {\n if (typeof error === 'object' && error !== null) {\n const candidate = error;\n const details = error instanceof WorktreeSessionBindingError\n ? { ...(recordDetails(error) ?? {}), sessionId: error.sessionId }\n : recordDetails(error);\n return {\n code: typeof candidate.code === 'string' ? candidate.code : 'WORKTREE_VIEW_FAILED',\n message: typeof candidate.message === 'string' ? candidate.message : '',\n retryable: candidate.retryable !== false,\n ...(details === undefined ? {} : { details }),\n };\n }\n return {\n code: 'WORKTREE_VIEW_FAILED',\n message: '',\n retryable: true,\n };\n}\n//# sourceMappingURL=worktree-view.js.map","import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from \"react/jsx-runtime\";\nimport { useCallback, useEffect, useMemo, useRef, useState } from 'react';\nimport { Button, IconArchiveOutline20, IconBranchOutline16, IconChevronDownOutline14, IconChevronRightOutline14, IconCloseOutline16, IconEditOutline16, IconEllipsisOutline16, IconFolderClose16, IconFolderOpen16, IconPlusOutline16, IconSearchOutline16, IconTrashOutline16, Input, Menu, Modal, StateDot, } from '@deepseek-ai/dsh-client-ui-primitives';\nimport { openWorktreeSession } from './navigation.js';\nimport { useSidebarOverlayGeometry } from './sidebar-overlay-geometry.js';\nimport { effectiveViewMode, unboundSessionIds, workspaceSessionIds } from './view-mode.js';\nimport { formatWorktreeViewError } from './worktree-error-copy.js';\nimport { executeWorktreeAction, createDefaultWorktreeName, filterArchivedSessionIds, loadWorktreeViews, selectDefaultBaseBranch, stableWorkspaceIds, toWorktreeViewError, WorktreeSessionBindingError, } from './worktree-view.js';\nimport styles from './worktree.css';\nfunction toNativeWorktreeViewError(error) {\n const viewError = toWorktreeViewError(error);\n if (typeof error === 'object' && error !== null)\n return viewError;\n return { ...viewError, message: String(error) };\n}\nconst EMPTY_READ_STATE = { status: 'idle', views: [] };\nfunction useStableWorkspaceIds(workspaces) {\n const next = workspaces.map((workspace) => workspace.workspaceId);\n const previousRef = useRef([]);\n const stable = stableWorkspaceIds(previousRef.current, next);\n if (stable !== previousRef.current)\n previousRef.current = stable;\n return previousRef.current;\n}\nfunction sessionLabel(sessionId, sessions) {\n return sessions.byId[sessionId]?.displayTitle ?? sessionId;\n}\nfunction rowHalf(event) {\n const rect = event.currentTarget.getBoundingClientRect();\n return event.clientY < rect.top + rect.height / 2 ? 'before' : 'after';\n}\nfunction bindingIdsFor(bindings, worktreeId) {\n return bindings\n .filter((binding) => binding.worktreeId === worktreeId)\n .map((binding) => binding.sessionId);\n}\nfunction includesText(value, query) {\n return value.toLocaleLowerCase().includes(query);\n}\nfunction workspaceMatches(workspace, view, sessions, query) {\n if (query.length === 0)\n return true;\n if (includesText(workspace.title, query))\n return true;\n if (workspace.sessionIds.some((sessionId) => includesText(sessionLabel(sessionId, sessions), query))) {\n return true;\n }\n if (view === undefined)\n return false;\n if (view.worktrees.some((record) => includesText(record.branch, query) || includesText(record.absolutePath, query))) {\n return true;\n }\n return view.bindings.some((binding) => includesText(sessionLabel(binding.sessionId, sessions), query));\n}\n/** Workspace row using the native DSH menu, fixed action column, and drag contract. */\nfunction WorktreeWorkspaceRow({ t, workspace, expanded, actionPending, menuOpen, drag, onToggle, onCreateWorktree, onRename, onDelete, onMenuOpenChange, }) {\n const workspaceMenuItems = [\n {\n id: 'rename',\n label: t('workspace.rename'),\n icon: _jsx(IconEditOutline16, {}),\n disabled: actionPending,\n },\n {\n id: 'delete',\n label: t('workspace.delete'),\n icon: _jsx(IconTrashOutline16, {}),\n danger: true,\n disabled: actionPending,\n },\n ];\n const markerClass = drag.marker === 'before'\n ? styles.dropBefore\n : drag.marker === 'after'\n ? styles.dropAfter\n : '';\n return (_jsxs(\"div\", { className: `${styles.workspaceRow} ${markerClass}`, \"data-workspace-drag\": drag.active ? 'active' : undefined, \"data-menu-open\": menuOpen || undefined, draggable: true, onClick: () => {\n onToggle();\n }, onDragStart: (event) => {\n event.dataTransfer.effectAllowed = 'move';\n event.dataTransfer.setData('text/plain', workspace.workspaceId);\n drag.start();\n }, onDragEnd: drag.end, onDragOver: (event) => {\n if (!drag.active)\n return;\n event.preventDefault();\n event.dataTransfer.dropEffect = 'move';\n drag.hover(rowHalf(event));\n }, onDrop: (event) => {\n if (!drag.active)\n return;\n event.preventDefault();\n drag.drop(rowHalf(event));\n }, children: [_jsx(\"button\", { type: \"button\", className: `${styles.disclosureButton} ${styles.workspaceDisclosure}`, \"aria-label\": t(expanded ? 'workspace.collapse' : 'workspace.expand', {\n name: workspace.title,\n }), \"aria-expanded\": expanded, onClick: (event) => {\n event.stopPropagation();\n onToggle();\n }, 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: () => {\n onMenuOpenChange(false);\n }, items: workspaceMenuItems, onSelect: (id) => {\n onMenuOpenChange(false);\n if (id === 'rename')\n onRename();\n if (id === 'delete')\n onDelete();\n }, 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) => {\n event.stopPropagation();\n onMenuOpenChange(!menuOpen);\n }, children: _jsx(IconEllipsisOutline16, {}) })) }) }), _jsx(\"button\", { type: \"button\", className: styles.iconButton, \"data-add-worktree\": true, \"aria-label\": t('workspace.addWorktree', { name: workspace.title }), onClick: (event) => {\n event.stopPropagation();\n onCreateWorktree();\n }, children: _jsx(IconPlusOutline16, {}) })] })] }));\n}\n/** Shared Main/Worktree group row with parameterized icon, state, and actions. */\nfunction WorktreeGroupRow({ t, kind, label, expanded, icon, workspaceTitle, state, stateLabel, onToggle, onCreateSession, menu, }) {\n const main = kind === 'main';\n return (_jsxs(\"div\", { className: styles.worktreeRow, \"data-main-group\": main ? 'true' : undefined, \"data-main-expanded\": main ? String(expanded) : undefined, \"data-menu-open\": menu?.open ? 'true' : undefined, 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) => {\n event.stopPropagation();\n onToggle();\n }, 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: () => {\n menu.onOpenChange(false);\n }, items: [\n {\n id: 'remove',\n label: t('worktree.remove'),\n icon: _jsx(IconTrashOutline16, {}),\n danger: true,\n disabled: menu.disabled,\n },\n ], onSelect: (id) => {\n menu.onOpenChange(false);\n if (id === 'remove')\n menu.onRemove();\n }, 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) => {\n event.stopPropagation();\n menu.onOpenChange(!menu.open);\n }, 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) => {\n event.stopPropagation();\n onCreateSession();\n }, children: _jsx(IconPlusOutline16, {}) }))] })] }));\n}\n/** Worktree-mode Session row with the same trailing options menu as native DSH rows. */\nfunction WorktreeSessionRow({ t, sessionId, label, drag, actionPending, onOpen, onRename, onFork, onArchive, }) {\n const [menuOpen, setMenuOpen] = useState(false);\n const markerClass = drag.marker === 'before'\n ? styles.dropBefore\n : drag.marker === 'after'\n ? styles.dropAfter\n : '';\n const sessionMenuItems = [\n {\n id: 'rename',\n label: t('session.rename'),\n icon: _jsx(IconEditOutline16, {}),\n disabled: onRename === undefined || actionPending,\n },\n {\n id: 'fork',\n label: t('session.fork'),\n icon: _jsx(IconBranchOutline16, {}),\n disabled: onFork === undefined || actionPending,\n },\n {\n id: 'archive',\n label: t('session.archive'),\n icon: _jsx(IconArchiveOutline20, { size: 16 }),\n disabled: onArchive === undefined || actionPending,\n },\n ];\n return (_jsxs(\"div\", { className: `${styles.treeSessionRow} ${markerClass}`, \"data-session-id\": sessionId, \"data-session-drag\": drag.active ? 'active' : undefined, \"data-menu-open\": menuOpen || undefined, role: \"treeitem\", draggable: true, onDragStart: (event) => {\n event.dataTransfer.effectAllowed = 'move';\n event.dataTransfer.setData('text/plain', sessionId);\n drag.start();\n }, onDragEnd: drag.end, onDragOver: (event) => {\n if (!drag.active)\n return;\n event.preventDefault();\n event.dataTransfer.dropEffect = 'move';\n drag.hover(rowHalf(event));\n }, onDrop: (event) => {\n if (!drag.active)\n return;\n event.preventDefault();\n drag.drop(rowHalf(event));\n }, 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 })] }), _jsx(\"span\", { className: styles.rowActions, children: _jsx(Menu, { open: menuOpen, onClose: () => {\n setMenuOpen(false);\n }, items: sessionMenuItems, onSelect: (id) => {\n setMenuOpen(false);\n if (id === 'rename')\n onRename?.(sessionId, label);\n if (id === 'fork')\n onFork?.(sessionId);\n if (id === 'archive')\n onArchive?.(sessionId);\n }, 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) => {\n event.stopPropagation();\n setMenuOpen((current) => !current);\n }, children: _jsx(IconEllipsisOutline16, {}) })) }) })] }));\n}\nfunction WorktreeSessionGroup({ t, groupKey, sessionIds, workspaceId, expanded, actionPending, sessions, dragState, onToggleExpanded, onStartDrag, onHoverDrag, onClearDrag, onFinishDrag, onCommitDrag, onOpen, onRename, onFork, onArchive, }) {\n const visibleSessionIds = expanded ? sessionIds : sessionIds.slice(0, 5);\n const sameGroupDrag = dragState?.groupKey === groupKey;\n return (_jsxs(_Fragment, { children: [visibleSessionIds.map((sessionId) => (_jsx(WorktreeSessionRow, { t: t, sessionId: sessionId, label: sessionLabel(sessionId, sessions), drag: {\n active: sameGroupDrag,\n marker: sameGroupDrag && dragState.over?.sessionId === sessionId\n ? dragState.over.half\n : null,\n start: () => {\n onStartDrag(groupKey, sessionId);\n },\n hover: (half) => {\n onHoverDrag(sessionId, half);\n },\n drop: (half) => {\n if (dragState === undefined)\n return;\n onCommitDrag(dragState, { sessionId, half }, sessionIds, workspaceId);\n },\n end: () => {\n if (dragState?.over !== null && dragState?.over !== undefined) {\n onCommitDrag(dragState, dragState.over, sessionIds, workspaceId);\n }\n else {\n onClearDrag();\n }\n onFinishDrag();\n },\n }, actionPending: actionPending, onOpen: () => {\n onOpen(sessionId);\n }, 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\n ? t('session.collapse')\n : t('session.expandMore', { count: sessionIds.length - 5 }) }))] }));\n}\n/**\n * Peer Worktree navigation surface. It keeps the original DSH Workspace mode\n * intact and renders a browser-local Workspace → Worktree → Session projection.\n */\nexport function WorktreeSurface({ useStore, actions, useSessions, useWorkspaces, t, available, manager, createWorkspace, createSessionForWorktree: createSessionCallback, createMainSession, renameWorkspace, deleteWorkspace, insertWorkspaceBefore, insertSessionBefore, renameSession, forkSession, archiveSession, ensureSessionWorkspace, syncSessionWorkspaces, openSession, }) {\n const preferredMode = useStore((state) => state.viewMode);\n const mode = effectiveViewMode(preferredMode, available && manager !== undefined);\n const sessions = useSessions((state) => state);\n const workspaces = useWorkspaces((state) => state);\n const workspaceIds = useStableWorkspaceIds(workspaces.items);\n const [readState, setReadState] = useState(EMPTY_READ_STATE);\n const [searchQuery, setSearchQuery] = useState('');\n const [expandedWorkspaces, setExpandedWorkspaces] = useState({});\n const [expandedMains, setExpandedMains] = useState({});\n const [expandedWorktrees, setExpandedWorktrees] = useState({});\n const [worktreeModalWorkspaceId, setWorktreeModalWorkspaceId] = useState();\n const [openWorkspaceMenuId, setOpenWorkspaceMenuId] = useState();\n const [openWorktreeMenuId, setOpenWorktreeMenuId] = useState();\n const [worktreeRemoval, setWorktreeRemoval] = useState();\n const [selectedBranch, setSelectedBranch] = useState('');\n const [newBranch, setNewBranch] = useState('');\n const [pendingSessionBinding, setPendingSessionBinding] = useState();\n const [actionError, setActionError] = useState();\n const [actionPending, setActionPending] = useState(false);\n const [sessionRenameTarget, setSessionRenameTarget] = useState();\n const [sessionRenameDraft, setSessionRenameDraft] = useState('');\n const [sessionRenamePending, setSessionRenamePending] = useState(false);\n const [sessionRenameError, setSessionRenameError] = useState();\n const [workspaceDrag, setWorkspaceDrag] = useState();\n const [workspaceRenameTarget, setWorkspaceRenameTarget] = useState();\n const [workspaceRenameDraft, setWorkspaceRenameDraft] = useState('');\n const [workspaceRenamePending, setWorkspaceRenamePending] = useState(false);\n const [workspaceRenameError, setWorkspaceRenameError] = useState();\n const [workspaceDeleteTarget, setWorkspaceDeleteTarget] = useState();\n const [workspaceDeletePending, setWorkspaceDeletePending] = useState(false);\n const [workspaceDeleteError, setWorkspaceDeleteError] = useState();\n const workspaceDropCommitted = useRef(false);\n const [sessionDrag, setSessionDrag] = useState();\n const [expandedSessionGroups, setExpandedSessionGroups] = useState({});\n const sessionDropCommitted = useRef(false);\n const { ref, width, bounds } = useSidebarOverlayGeometry(mode === 'worktree');\n const collapsed = width <= 64;\n const query = searchQuery.trim().toLocaleLowerCase();\n const archivedSessionIds = workspaces.archivedSessionIds ?? [];\n const refresh = useCallback(async () => {\n if (manager === undefined) {\n setReadState(EMPTY_READ_STATE);\n return;\n }\n setReadState({ status: 'loading', views: [] });\n try {\n const views = await loadWorktreeViews(manager, workspaceIds);\n setReadState({ status: 'ready', views });\n }\n catch (error) {\n setReadState({\n status: 'error',\n views: [],\n error: toWorktreeViewError(error),\n });\n }\n }, [manager, workspaceIds]);\n useEffect(() => {\n if (mode === 'worktree') {\n void refresh();\n }\n else {\n setReadState(EMPTY_READ_STATE);\n }\n }, [mode, refresh]);\n useEffect(() => {\n if (readState.status !== 'ready' || syncSessionWorkspaces === undefined)\n return;\n syncSessionWorkspaces(readState.views.flatMap((view) => view.bindings.map((binding) => ({\n workspaceId: binding.workspaceId,\n sessionId: binding.sessionId,\n }))));\n }, [readState.status, readState.views, syncSessionWorkspaces]);\n const viewByWorkspace = useMemo(() => new Map(readState.views.map((view) => [view.workspaceId, view])), [readState.views]);\n const modalWorkspace = workspaces.items.find((workspace) => workspace.workspaceId === worktreeModalWorkspaceId);\n const modalView = worktreeModalWorkspaceId === undefined\n ? undefined\n : viewByWorkspace.get(worktreeModalWorkspaceId);\n const runMutation = async (operation) => {\n setActionPending(true);\n setActionError(undefined);\n try {\n await operation();\n await refresh();\n }\n catch (error) {\n setActionError(toWorktreeViewError(error));\n }\n finally {\n setActionPending(false);\n }\n };\n const workspaceRenameTrimmed = workspaceRenameDraft.trim();\n const workspaceRenameDuplicate = workspaceRenameTarget !== undefined &&\n workspaceRenameTrimmed.length > 0 &&\n workspaces.items.some((workspace) => workspace.workspaceId !== workspaceRenameTarget.workspaceId &&\n workspace.title === workspaceRenameTrimmed);\n const workspaceRenameBlocked = workspaceRenamePending ||\n workspaceRenameTarget === undefined ||\n workspaceRenameTrimmed.length === 0 ||\n workspaceRenameTrimmed === workspaceRenameTarget?.currentTitle ||\n workspaceRenameDuplicate;\n const openWorkspaceRename = (workspace) => {\n setWorkspaceRenameTarget({\n workspaceId: workspace.workspaceId,\n currentTitle: workspace.title,\n });\n setWorkspaceRenameDraft(workspace.title);\n setWorkspaceRenameError(undefined);\n };\n const closeWorkspaceRename = () => {\n if (workspaceRenamePending)\n return;\n setWorkspaceRenameTarget(undefined);\n setWorkspaceRenameError(undefined);\n };\n const confirmWorkspaceRename = async () => {\n const target = workspaceRenameTarget;\n if (workspaceRenameBlocked || target === undefined)\n return;\n if (renameWorkspace === undefined) {\n setWorkspaceRenameError({\n code: 'WORKSPACE_RENAME_UNAVAILABLE',\n message: '',\n retryable: true,\n });\n return;\n }\n setWorkspaceRenamePending(true);\n setWorkspaceRenameError(undefined);\n try {\n await renameWorkspace(target.workspaceId, workspaceRenameTrimmed);\n setWorkspaceRenameTarget(undefined);\n }\n catch (error) {\n setWorkspaceRenameError(toNativeWorktreeViewError(error));\n }\n finally {\n setWorkspaceRenamePending(false);\n }\n };\n const openWorkspaceDelete = (workspace) => {\n setWorkspaceDeleteTarget({ workspaceId: workspace.workspaceId, title: workspace.title });\n setWorkspaceDeleteError(undefined);\n };\n const closeWorkspaceDelete = () => {\n if (workspaceDeletePending)\n return;\n setWorkspaceDeleteTarget(undefined);\n setWorkspaceDeleteError(undefined);\n };\n const confirmWorkspaceDelete = async () => {\n const target = workspaceDeleteTarget;\n if (target === undefined || workspaceDeletePending)\n return;\n if (deleteWorkspace === undefined) {\n setWorkspaceDeleteError({\n code: 'WORKSPACE_DELETE_UNAVAILABLE',\n message: '',\n retryable: true,\n });\n return;\n }\n setWorkspaceDeletePending(true);\n setWorkspaceDeleteError(undefined);\n try {\n await deleteWorkspace(target.workspaceId);\n setWorkspaceDeleteTarget(undefined);\n }\n catch (error) {\n setWorkspaceDeleteError(toNativeWorktreeViewError(error));\n }\n finally {\n setWorkspaceDeletePending(false);\n }\n };\n const commitWorkspaceDrag = (activeDrag, over) => {\n if (workspaceDropCommitted.current)\n return;\n workspaceDropCommitted.current = true;\n setWorkspaceDrag(undefined);\n const rows = workspaces.items;\n const targetIndex = rows.findIndex((workspace) => workspace.workspaceId === over.workspaceId);\n const sourceIndex = rows.findIndex((workspace) => workspace.workspaceId === activeDrag.workspaceId);\n if (targetIndex === -1 || sourceIndex === -1)\n return;\n const beforeWorkspaceId = over.half === 'before'\n ? over.workspaceId\n : rows[targetIndex + 1]?.workspaceId;\n const anchorIndex = beforeWorkspaceId === undefined\n ? rows.length\n : rows.findIndex((workspace) => workspace.workspaceId === beforeWorkspaceId);\n if (beforeWorkspaceId === activeDrag.workspaceId ||\n anchorIndex === sourceIndex ||\n anchorIndex === sourceIndex + 1) {\n return;\n }\n if (insertWorkspaceBefore === undefined) {\n setActionError({\n code: 'WORKSPACE_ORDER_UNAVAILABLE',\n message: '',\n retryable: true,\n });\n return;\n }\n setActionError(undefined);\n void insertWorkspaceBefore(activeDrag.workspaceId, beforeWorkspaceId).catch((error) => {\n setActionError(toWorktreeViewError(error));\n });\n };\n const commitSessionDrag = (activeDrag, over, sessionIds, workspaceId) => {\n if (sessionDropCommitted.current)\n return;\n sessionDropCommitted.current = true;\n setSessionDrag(undefined);\n const targetIndex = sessionIds.indexOf(over.sessionId);\n const sourceIndex = sessionIds.indexOf(activeDrag.sessionId);\n if (targetIndex === -1 || sourceIndex === -1)\n return;\n const beforeSessionId = over.half === 'before'\n ? over.sessionId\n : sessionIds[targetIndex + 1];\n const anchorIndex = beforeSessionId === undefined\n ? sessionIds.length\n : sessionIds.indexOf(beforeSessionId);\n if (beforeSessionId === activeDrag.sessionId ||\n anchorIndex === sourceIndex ||\n anchorIndex === sourceIndex + 1) {\n return;\n }\n if (insertSessionBefore === undefined) {\n setActionError({\n code: 'SESSION_ORDER_UNAVAILABLE',\n message: '',\n retryable: true,\n });\n return;\n }\n setActionError(undefined);\n void insertSessionBefore(workspaceId, activeDrag.sessionId, beforeSessionId).catch((error) => {\n setActionError(toWorktreeViewError(error));\n });\n };\n const openSessionRename = (sessionId, currentTitle) => {\n setSessionRenameTarget({ sessionId, currentTitle });\n setSessionRenameDraft(currentTitle);\n setSessionRenameError(undefined);\n };\n const closeSessionRename = () => {\n if (sessionRenamePending)\n return;\n setSessionRenameTarget(undefined);\n setSessionRenameError(undefined);\n };\n const confirmSessionRename = async () => {\n const target = sessionRenameTarget;\n const title = sessionRenameDraft.trim();\n if (target === undefined || title.length === 0 || sessionRenamePending)\n return;\n if (renameSession === undefined) {\n setSessionRenameError({\n code: 'SESSION_RENAME_UNAVAILABLE',\n message: '',\n retryable: true,\n });\n return;\n }\n setSessionRenamePending(true);\n setSessionRenameError(undefined);\n try {\n await renameSession(target.sessionId, title);\n setSessionRenameTarget(undefined);\n }\n catch (error) {\n setSessionRenameError(toNativeWorktreeViewError(error));\n }\n finally {\n setSessionRenamePending(false);\n }\n };\n const archiveWorktreeSession = async (sessionId) => {\n if (archiveSession === undefined)\n return;\n await runMutation(() => archiveSession(sessionId));\n };\n const toggleWorkspace = (workspaceId) => {\n setExpandedWorkspaces((current) => ({\n ...current,\n [workspaceId]: current[workspaceId] === false,\n }));\n };\n const toggleMain = (workspaceId) => {\n setExpandedMains((current) => ({\n ...current,\n [workspaceId]: current[workspaceId] === false,\n }));\n };\n const toggleWorktree = (worktreeId) => {\n setExpandedWorktrees((current) => ({\n ...current,\n [worktreeId]: current[worktreeId] === false,\n }));\n };\n const openWorktreeCreator = (workspace) => {\n const view = viewByWorkspace.get(workspace.workspaceId);\n const baseBranch = selectDefaultBaseBranch(view?.branches ?? []);\n const existingNames = [\n ...(view?.branches ?? []).map((branch) => branch.name),\n ...(view?.worktrees ?? []).map((worktree) => worktree.branch),\n ];\n setWorktreeModalWorkspaceId(workspace.workspaceId);\n setSelectedBranch(baseBranch);\n setNewBranch(createDefaultWorktreeName(existingNames));\n setActionError(undefined);\n };\n const submitWorktree = async () => {\n const worktreeName = newBranch.trim();\n if (manager === undefined ||\n modalWorkspace === undefined ||\n selectedBranch.length === 0 ||\n worktreeName.length === 0) {\n return;\n }\n const input = {\n workspaceId: modalWorkspace.workspaceId,\n branch: selectedBranch,\n newBranch: worktreeName,\n };\n setActionPending(true);\n setActionError(undefined);\n setPendingSessionBinding(undefined);\n try {\n const createdWorktree = await executeWorktreeAction(manager, {\n type: 'createWorktree',\n input,\n });\n if (createdWorktree === undefined) {\n throw {\n code: 'WORKTREE_RECORD_MISSING',\n message: '',\n retryable: true,\n };\n }\n setWorktreeModalWorkspaceId(undefined);\n if (createSessionCallback === undefined) {\n await refresh();\n setActionError({\n code: 'WORKTREE_CREATED_SESSION_UNAVAILABLE',\n message: '',\n retryable: true,\n });\n return;\n }\n const sessionInput = {\n workspaceId: createdWorktree.workspaceId,\n worktreeId: createdWorktree.worktreeId,\n cwd: createdWorktree.absolutePath,\n };\n try {\n await createSessionCallback(sessionInput);\n }\n catch (error) {\n if (error instanceof WorktreeSessionBindingError) {\n setPendingSessionBinding({ ...sessionInput, sessionId: error.sessionId });\n }\n throw error;\n }\n await refresh();\n }\n catch (error) {\n setActionError(toWorktreeViewError(error));\n }\n finally {\n setActionPending(false);\n }\n };\n const createSession = async (input) => {\n if (createSessionCallback === undefined) {\n setActionError({\n code: 'SESSION_CREATE_UNAVAILABLE',\n message: '',\n retryable: true,\n });\n return;\n }\n setActionPending(true);\n setActionError(undefined);\n setPendingSessionBinding(undefined);\n try {\n await createSessionCallback(input);\n await refresh();\n }\n catch (error) {\n if (error instanceof WorktreeSessionBindingError) {\n setPendingSessionBinding({ ...input, sessionId: error.sessionId });\n }\n setActionError(toWorktreeViewError(error));\n }\n finally {\n setActionPending(false);\n }\n };\n const retrySessionBinding = async () => {\n if (manager === undefined || pendingSessionBinding === undefined)\n return;\n setActionPending(true);\n setActionError(undefined);\n try {\n await manager.bindSession({\n workspaceId: pendingSessionBinding.workspaceId,\n worktreeId: pendingSessionBinding.worktreeId,\n sessionId: pendingSessionBinding.sessionId,\n });\n const sessionId = pendingSessionBinding.sessionId;\n setPendingSessionBinding(undefined);\n ensureSessionWorkspace?.(pendingSessionBinding.workspaceId, sessionId);\n await refresh();\n openSession(sessionId);\n }\n catch (error) {\n setActionError(toWorktreeViewError(error));\n }\n finally {\n setActionPending(false);\n }\n };\n const openWorkspaceSession = (workspaceId, sessionId) => {\n ensureSessionWorkspace?.(workspaceId, sessionId);\n openWorktreeSession({ open: openSession }, sessionId);\n };\n if (mode !== 'worktree')\n return null;\n const visibleWorkspaces = workspaces.items.filter((workspace) => workspaceMatches(workspace, viewByWorkspace.get(workspace.workspaceId), sessions, query));\n return (_jsxs(\"aside\", { ref: ref, className: styles.surface, \"data-worktree-surface\": true, \"data-collapsed\": collapsed || undefined, \"aria-label\": t('mode.navigation'), style: {\n width: `${width}px`,\n ...(bounds.ready\n ? { top: `${bounds.top}px`, height: `${bounds.height}px` }\n : { height: '0px', visibility: 'hidden' }),\n }, children: [_jsxs(\"div\", { className: styles.wideContent, children: [_jsxs(\"header\", { className: styles.header, children: [_jsx(\"span\", { className: styles.title, children: t('worktree.title') }), _jsx(\"button\", { type: \"button\", className: styles.closeButton, \"aria-label\": t('mode.exit'), onClick: () => {\n actions.setViewMode('workspace-session');\n }, children: _jsx(IconCloseOutline16, {}) })] }), _jsxs(\"div\", { className: styles.searchRow, children: [_jsx(\"span\", { className: styles.searchIcon, \"aria-hidden\": \"true\", children: _jsx(IconSearchOutline16, {}) }), _jsx(\"input\", { className: styles.searchInput, \"aria-label\": t('workspace.search'), placeholder: t('workspace.search'), value: searchQuery, onChange: (event) => {\n setSearchQuery(event.currentTarget.value);\n } }), _jsx(\"button\", { type: \"button\", className: styles.iconButton, \"aria-label\": t('workspace.add'), onClick: () => {\n if (createWorkspace !== undefined)\n void runMutation(createWorkspace);\n }, children: _jsx(IconPlusOutline16, {}) })] }), _jsxs(\"div\", { className: styles.content, tabIndex: 0, children: [actionError !== undefined && (_jsxs(\"div\", { className: styles.error, role: \"alert\", \"data-worktree-error\": true, children: [_jsx(\"p\", { className: styles.message, \"data-error\": \"true\", children: formatWorktreeViewError(actionError, t) }), pendingSessionBinding !== undefined && (_jsxs(\"div\", { className: styles.recoveryActions, children: [_jsx(\"button\", { type: \"button\", className: styles.actionButton, disabled: actionPending, onClick: () => {\n void retrySessionBinding();\n }, children: t('action.retryBinding') }), _jsx(\"button\", { type: \"button\", className: styles.actionButton, disabled: actionPending, onClick: () => {\n const sessionId = pendingSessionBinding.sessionId;\n setPendingSessionBinding(undefined);\n setActionError(undefined);\n openSession(sessionId);\n }, children: t('action.openCreatedSession') })] })), actionError.retryable && (_jsx(\"button\", { type: \"button\", className: styles.retryButton, onClick: () => {\n setActionError(undefined);\n void refresh();\n }, children: t('action.retry') }))] })), readState.status === 'loading' && (_jsx(\"p\", { className: styles.message, children: t('status.loading') })), readState.status === 'error' && readState.error !== undefined ? (_jsxs(\"div\", { className: styles.error, role: \"alert\", \"data-worktree-error\": true, children: [_jsx(\"p\", { className: styles.message, \"data-error\": \"true\", children: formatWorktreeViewError(readState.error, t) }), _jsx(\"button\", { type: \"button\", className: styles.retryButton, onClick: () => {\n void refresh();\n }, children: t('action.retry') })] })) : readState.status === 'ready' ? (_jsx(\"div\", { className: styles.workspaceList, children: visibleWorkspaces.length === 0 ? (_jsx(\"p\", { className: styles.empty, children: t('workspace.noMatches') })) : (visibleWorkspaces.map((workspace) => {\n const view = viewByWorkspace.get(workspace.workspaceId);\n const expanded = expandedWorkspaces[workspace.workspaceId] !== false;\n const workspaceMatchesQuery = includesText(workspace.title, query);\n const allWorkspaceSessionIds = filterArchivedSessionIds(workspaceSessionIds(workspaces, workspace.workspaceId, sessions.ids), archivedSessionIds);\n const bindings = view?.bindings ?? [];\n const boundSessionIds = new Set(bindings.map((binding) => binding.sessionId));\n const mainSessionIds = unboundSessionIds(allWorkspaceSessionIds, [\n ...boundSessionIds,\n ]);\n const visibleMainSessionIds = mainSessionIds.filter((sessionId) => workspaceMatchesQuery ||\n includesText(sessionLabel(sessionId, sessions), query));\n const mainExpanded = expandedMains[workspace.workspaceId] !== false;\n const mainGroupKey = `main:${workspace.workspaceId}`;\n const worktrees = view?.worktrees ?? [];\n return (_jsxs(\"section\", { className: styles.workspaceGroup, \"data-workspace-id\": workspace.workspaceId, children: [_jsx(WorktreeWorkspaceRow, { t: t, workspace: workspace, expanded: expanded, actionPending: actionPending, menuOpen: openWorkspaceMenuId === workspace.workspaceId, drag: {\n active: workspaceDrag !== undefined,\n marker: workspaceDrag?.over?.workspaceId === workspace.workspaceId\n ? workspaceDrag.over.half\n : null,\n start: () => {\n workspaceDropCommitted.current = false;\n setWorkspaceDrag({ workspaceId: workspace.workspaceId, over: null });\n },\n hover: (half) => {\n setWorkspaceDrag((current) => current === undefined\n ? current\n : {\n ...current,\n over: { workspaceId: workspace.workspaceId, half },\n });\n },\n drop: (half) => {\n if (workspaceDrag === undefined)\n return;\n commitWorkspaceDrag(workspaceDrag, {\n workspaceId: workspace.workspaceId,\n half,\n });\n },\n end: () => {\n if (workspaceDrag?.over !== null && workspaceDrag?.over !== undefined) {\n commitWorkspaceDrag(workspaceDrag, workspaceDrag.over);\n }\n else {\n setWorkspaceDrag(undefined);\n }\n workspaceDropCommitted.current = false;\n },\n }, onToggle: () => {\n toggleWorkspace(workspace.workspaceId);\n }, onCreateWorktree: () => {\n openWorktreeCreator(workspace);\n }, onRename: () => {\n openWorkspaceRename(workspace);\n }, onDelete: () => {\n openWorkspaceDelete(workspace);\n }, onMenuOpenChange: (open) => {\n setOpenWorkspaceMenuId(open ? workspace.workspaceId : undefined);\n } }), expanded && (_jsxs(\"div\", { className: styles.treeChildren, children: [_jsx(WorktreeGroupRow, { t: t, kind: \"main\", label: t('worktree.main'), expanded: mainExpanded, icon: _jsx(IconBranchOutline16, {}), workspaceTitle: workspace.title, onToggle: () => {\n toggleMain(workspace.workspaceId);\n }, onCreateSession: createMainSession === undefined\n ? undefined\n : () => {\n createMainSession(workspace.workspaceId);\n } }), mainExpanded && (_jsx(WorktreeSessionGroup, { t: t, groupKey: mainGroupKey, sessionIds: visibleMainSessionIds, workspaceId: workspace.workspaceId, expanded: expandedSessionGroups[mainGroupKey] === true, actionPending: actionPending, sessions: sessions, dragState: sessionDrag, onToggleExpanded: () => {\n setExpandedSessionGroups((current) => ({\n ...current,\n [mainGroupKey]: current[mainGroupKey] !== true,\n }));\n }, onStartDrag: (groupKey, sessionId) => {\n sessionDropCommitted.current = false;\n setSessionDrag({ groupKey, sessionId, over: null });\n }, onHoverDrag: (sessionId, half) => {\n setSessionDrag((current) => current === undefined\n ? current\n : { ...current, over: { sessionId, half } });\n }, onClearDrag: () => {\n setSessionDrag(undefined);\n }, onFinishDrag: () => {\n sessionDropCommitted.current = false;\n }, onCommitDrag: commitSessionDrag, onOpen: (sessionId) => {\n openWorktreeSession({ open: openSession }, sessionId);\n }, onRename: renameSession === undefined ? undefined : openSessionRename, onFork: forkSession, onArchive: archiveSession === undefined ? undefined : archiveWorktreeSession })), worktrees.length === 0 && (_jsx(\"p\", { className: styles.emptyNested, children: t('worktree.noWorktrees') })), worktrees.map((record) => {\n const worktreeSessionIds = filterArchivedSessionIds(bindingIdsFor(bindings, record.worktreeId).filter((sessionId) => sessions.ids.includes(sessionId)), archivedSessionIds);\n const worktreeMatchesQuery = workspaceMatchesQuery ||\n includesText(record.branch, query) ||\n includesText(record.absolutePath, query);\n if (query.length > 0 &&\n !worktreeMatchesQuery &&\n !worktreeSessionIds.some((sessionId) => includesText(sessionLabel(sessionId, sessions), query))) {\n return null;\n }\n const visibleWorktreeSessionIds = worktreeSessionIds.filter((sessionId) => worktreeMatchesQuery ||\n includesText(sessionLabel(sessionId, sessions), query));\n const worktreeGroupKey = `worktree:${record.worktreeId}`;\n const state = record.status === 'removed'\n ? 'warning'\n : record.health === 'repair'\n ? 'error'\n : 'done';\n const stateLabel = record.status === 'removed'\n ? t('worktree.detached')\n : record.health === 'repair'\n ? t('worktree.repair')\n : t('worktree.ready');\n const worktreeExpanded = expandedWorktrees[record.worktreeId] !== false;\n return (_jsxs(\"div\", { className: styles.worktreeGroup, \"data-worktree-id\": record.worktreeId, children: [_jsx(WorktreeGroupRow, { t: t, kind: \"worktree\", label: record.branch, expanded: worktreeExpanded, icon: _jsx(IconBranchOutline16, {}), workspaceTitle: workspace.title, state: state, stateLabel: stateLabel, onToggle: () => {\n toggleWorktree(record.worktreeId);\n }, onCreateSession: record.status === 'active'\n ? () => {\n void createSession({\n workspaceId: record.workspaceId,\n worktreeId: record.worktreeId,\n cwd: record.absolutePath,\n });\n }\n : undefined, menu: record.status === 'active'\n ? {\n open: openWorktreeMenuId === record.worktreeId,\n label: record.branch,\n disabled: actionPending,\n onOpenChange: (open) => {\n setOpenWorktreeMenuId(open ? record.worktreeId : undefined);\n },\n onRemove: () => {\n setWorktreeRemoval(record);\n setActionError(undefined);\n },\n }\n : undefined }), worktreeExpanded && (_jsx(WorktreeSessionGroup, { t: t, groupKey: worktreeGroupKey, sessionIds: visibleWorktreeSessionIds, workspaceId: workspace.workspaceId, expanded: expandedSessionGroups[worktreeGroupKey] === true, actionPending: actionPending, sessions: sessions, dragState: sessionDrag, onToggleExpanded: () => {\n setExpandedSessionGroups((current) => ({\n ...current,\n [worktreeGroupKey]: current[worktreeGroupKey] !== true,\n }));\n }, onStartDrag: (groupKey, sessionId) => {\n sessionDropCommitted.current = false;\n setSessionDrag({ groupKey, sessionId, over: null });\n }, onHoverDrag: (sessionId, half) => {\n setSessionDrag((current) => current === undefined\n ? current\n : { ...current, over: { sessionId, half } });\n }, onClearDrag: () => {\n setSessionDrag(undefined);\n }, onFinishDrag: () => {\n sessionDropCommitted.current = false;\n }, onCommitDrag: commitSessionDrag, onOpen: (sessionId) => {\n openWorkspaceSession(workspace.workspaceId, sessionId);\n }, onRename: renameSession === undefined ? undefined : openSessionRename, onFork: forkSession, onArchive: archiveSession === undefined\n ? undefined\n : archiveWorktreeSession }))] }, record.worktreeId));\n })] }))] }, workspace.workspaceId));\n })) })) : null] })] }), _jsx(\"div\", { className: styles.railContent, children: _jsx(\"button\", { type: \"button\", className: styles.railButton, \"aria-label\": t('mode.exit'), onClick: () => {\n actions.setViewMode('workspace-session');\n }, children: \"WT\" }) }), _jsxs(Modal, { open: sessionRenameTarget !== undefined, onClose: closeSessionRename, closeLabel: t('dialog.close'), title: t('session.rename'), footer: (_jsxs(_Fragment, { children: [_jsx(Button, { variant: \"outline\", disabled: sessionRenamePending, onClick: closeSessionRename, children: t('dialog.cancel') }), _jsx(Button, { variant: \"primary\", disabled: sessionRenamePending || sessionRenameDraft.trim().length === 0, onClick: () => {\n void confirmSessionRename();\n }, children: t('dialog.rename') })] })), children: [_jsx(Input, { className: styles.renameInput, value: sessionRenameDraft, \"aria-label\": t('session.name'), autoFocus: true, disabled: sessionRenamePending, onFocus: (event) => {\n event.currentTarget.select();\n }, onChange: (event) => {\n setSessionRenameDraft(event.currentTarget.value);\n setSessionRenameError(undefined);\n }, onKeyDown: (event) => {\n if (event.key === 'Enter' && !event.nativeEvent.isComposing) {\n event.preventDefault();\n void confirmSessionRename();\n }\n } }), sessionRenameError !== undefined && (_jsx(\"p\", { className: styles.renameError, role: \"alert\", children: formatWorktreeViewError(sessionRenameError, t) }))] }), workspaceRenameTarget !== undefined && (_jsxs(Modal, { open: workspaceRenameTarget !== undefined, onClose: closeWorkspaceRename, closeLabel: t('dialog.closeWorkspaceRename'), title: t('workspace.renameTitle'), footer: (_jsxs(_Fragment, { children: [_jsx(Button, { variant: \"outline\", disabled: workspaceRenamePending, onClick: closeWorkspaceRename, children: t('dialog.cancel') }), _jsx(Button, { variant: \"primary\", disabled: workspaceRenameBlocked, onClick: () => {\n void confirmWorkspaceRename();\n }, children: t('dialog.rename') })] })), children: [_jsx(Input, { className: styles.renameInput, value: workspaceRenameDraft, \"aria-label\": t('workspace.name'), autoFocus: true, disabled: workspaceRenamePending, onFocus: (event) => {\n event.currentTarget.select();\n }, onChange: (event) => {\n setWorkspaceRenameDraft(event.currentTarget.value);\n setWorkspaceRenameError(undefined);\n }, onKeyDown: (event) => {\n if (event.key === 'Enter' && !event.nativeEvent.isComposing) {\n event.preventDefault();\n void confirmWorkspaceRename();\n }\n } }), workspaceRenameDuplicate && (_jsx(\"p\", { className: styles.renameError, role: \"alert\", children: t('workspace.duplicate') })), workspaceRenameError !== undefined && (_jsx(\"p\", { className: styles.renameError, role: \"alert\", children: formatWorktreeViewError(workspaceRenameError, t) }))] })), workspaceDeleteTarget !== undefined && (_jsx(Modal, { open: workspaceDeleteTarget !== undefined, onClose: closeWorkspaceDelete, closeLabel: t('dialog.closeWorkspaceDelete'), title: t('workspace.deleteTitle'), description: t('workspace.deleteDescription', { name: workspaceDeleteTarget.title }), footer: (_jsxs(_Fragment, { children: [_jsx(Button, { variant: \"outline\", disabled: workspaceDeletePending, onClick: closeWorkspaceDelete, children: t('dialog.cancel') }), _jsx(Button, { variant: \"outline\", disabled: workspaceDeletePending, onClick: () => {\n void confirmWorkspaceDelete();\n }, children: t('dialog.delete') })] })), children: workspaceDeleteError !== undefined && (_jsx(\"p\", { className: styles.renameError, role: \"alert\", children: formatWorktreeViewError(workspaceDeleteError, t) })) })), worktreeModalWorkspaceId !== undefined && modalWorkspace !== undefined && (_jsxs(Modal, { open: worktreeModalWorkspaceId !== undefined, onClose: () => {\n if (actionPending)\n return;\n setWorktreeModalWorkspaceId(undefined);\n }, closeLabel: t('dialog.closeWorktreeCreate'), title: t('worktree.createTitle'), description: t('worktree.createDescription', { name: modalWorkspace.title }), footer: (_jsxs(_Fragment, { children: [_jsx(Button, { variant: \"outline\", disabled: actionPending, onClick: () => {\n setWorktreeModalWorkspaceId(undefined);\n }, children: t('dialog.cancel') }), _jsx(Button, { variant: \"primary\", disabled: actionPending ||\n selectedBranch.length === 0 ||\n newBranch.trim().length === 0, onClick: () => {\n void submitWorktree();\n }, children: t('worktree.create') })] })), children: [_jsxs(\"label\", { className: styles.modalField, children: [t('worktree.baseBranch'), _jsxs(\"select\", { className: styles.actionSelect, \"aria-label\": t('worktree.baseBranch'), value: selectedBranch, disabled: actionPending, onChange: (event) => {\n setSelectedBranch(event.currentTarget.value);\n }, children: [_jsx(\"option\", { value: \"\", children: t('worktree.noLocalBranch') }), (modalView?.branches ?? []).map((branch) => (_jsxs(\"option\", { value: branch.name, children: [branch.name, branch.isCurrent ? t('branch.current') : '', branch.checkedOut ? t('branch.checkedOut') : ''] }, branch.name)))] })] }), _jsxs(\"label\", { className: styles.modalField, children: [t('worktree.name'), _jsx(Input, { className: styles.renameInput, \"aria-label\": t('worktree.name'), value: newBranch, placeholder: \"dsh/12345678\", disabled: actionPending, onChange: (event) => {\n setNewBranch(event.currentTarget.value);\n } })] }), modalView?.branches.length === 0 && (_jsx(\"p\", { className: styles.empty, children: t('worktree.noBranches') }))] })), worktreeRemoval !== undefined && (_jsx(Modal, { open: worktreeRemoval !== undefined, onClose: () => {\n if (actionPending)\n return;\n setWorktreeRemoval(undefined);\n }, closeLabel: t('dialog.closeWorktreeRemove'), title: t('worktree.remove'), description: t('worktree.removeDescription', { name: worktreeRemoval.branch }), footer: (_jsxs(_Fragment, { children: [_jsx(Button, { variant: \"outline\", disabled: actionPending, onClick: () => {\n setWorktreeRemoval(undefined);\n }, children: t('dialog.cancel') }), _jsx(Button, { variant: \"primary\", disabled: actionPending, onClick: () => {\n if (manager === undefined)\n return;\n const target = worktreeRemoval;\n void runMutation(async () => {\n await executeWorktreeAction(manager, {\n type: 'removeWorktree',\n input: {\n workspaceId: target.workspaceId,\n worktreeId: target.worktreeId,\n },\n });\n setWorktreeRemoval(undefined);\n });\n }, children: t('worktree.remove') })] })) }))] }));\n}\n//# sourceMappingURL=WorktreeSurface.js.map","import { defineStore } from '@deepseek-ai/dsh-client-runtime/client';\nimport { WORKTREE_VIEW_MODE_STORAGE_KEY, } from './view-mode.js';\n/** Create one root-scoped, browser-local view-mode store for the two slot entries. */\nexport function createWorktreeViewStore() {\n return defineStore({\n init: () => ({ viewMode: 'workspace-session' }),\n persist: WORKTREE_VIEW_MODE_STORAGE_KEY,\n actions: {\n setViewMode: (draft, mode) => {\n draft.viewMode = mode;\n },\n },\n });\n}\n//# sourceMappingURL=view-mode-store.js.map","import { projectVirtualWorkspaceMembership, } from './view-mode.js';\nfunction normalizeBindings(bindings) {\n const bySession = new Map();\n for (const binding of bindings) {\n if (binding.workspaceId.length === 0 || binding.sessionId.length === 0)\n continue;\n bySession.set(binding.sessionId, binding);\n }\n return [...bySession.values()];\n}\nfunction sameWorkspaceItems(left, right) {\n if (left.items.length !== right.items.length)\n return false;\n return left.items.every((item, index) => {\n const other = right.items[index];\n if (item === other)\n return true;\n if (typeof item !== 'object' ||\n item === null ||\n typeof other !== 'object' ||\n other === null ||\n !('workspaceId' in item) ||\n !('workspaceId' in other) ||\n !('sessionIds' in item) ||\n !('sessionIds' in other)) {\n return false;\n }\n const leftSessionIds = item.sessionIds;\n const rightSessionIds = other.sessionIds;\n return (item.workspaceId === other.workspaceId &&\n Array.isArray(leftSessionIds) &&\n Array.isArray(rightSessionIds) &&\n leftSessionIds.length === rightSessionIds.length &&\n leftSessionIds.every((sessionId, sessionIndex) => sessionId === rightSessionIds[sessionIndex]));\n });\n}\n/**\n * Maintains a re-playable in-memory overlay over DSH's Workspace list. Native\n * refreshes are observed and the current sidecar bindings are applied again;\n * no DSH Host mutation or persistence is involved.\n */\nexport function createVirtualWorkspaceMembership(list) {\n let bindings = [];\n let disposed = false;\n let applying = false;\n const apply = (nextBindings) => {\n const current = list.getSnapshot();\n const next = projectVirtualWorkspaceMembership(current, bindings, nextBindings);\n if (sameWorkspaceItems(current, next))\n return;\n applying = true;\n try {\n list.set(next);\n }\n finally {\n applying = false;\n }\n };\n const replay = () => {\n if (disposed || applying)\n return;\n apply(bindings);\n };\n const unsubscribe = list.subscribe(replay);\n const sync = (nextBindings) => {\n if (disposed)\n return;\n const normalized = normalizeBindings(nextBindings);\n apply(normalized);\n bindings = normalized;\n };\n return {\n ensure(binding) {\n if (disposed)\n return;\n if (bindings.some((current) => current.workspaceId === binding.workspaceId && current.sessionId === binding.sessionId)) {\n return;\n }\n sync([...bindings.filter((current) => current.sessionId !== binding.sessionId), binding]);\n },\n sync,\n removeSession(sessionId) {\n sync(bindings.filter((binding) => binding.sessionId !== sessionId));\n },\n dispose() {\n if (disposed)\n return;\n apply([]);\n bindings = [];\n disposed = true;\n unsubscribe();\n },\n };\n}\n//# sourceMappingURL=virtual-workspace-membership.js.map","import { WORKTREE_NS, en, zh } from './locales.js';\nimport { createWorktreeConnectionAdapter } from './worktree-connection.js';\nimport { WorktreeModeAction } from './WorktreeModeAction.js';\nimport { WorktreeSurface } from './WorktreeSurface.js';\nimport { createWorktreeViewStore } from './view-mode-store.js';\nimport { createVirtualWorkspaceMembership, } from './virtual-workspace-membership.js';\nimport { createSessionForWorktree } from './worktree-view.js';\nexport { WORKTREE_CONNECTION_CHANNEL, WORKTREE_CONNECTION_ENDPOINTS, WorktreeConnectionError, createWorktreeConnectionAdapter, } from './worktree-connection.js';\n/** Required DSH Client services; Connection is the sole Worktree wire dependency. */\nexport const inject = ['connection', 'locale', 'slots', 'sessions', 'workspaces'];\n/**\n * DSH Client entry. The adapter is composed once per plugin fiber and is disposed\n * with that fiber, so slot consumers share one manager and one request lifetime.\n */\nexport function apply(ctx) {\n ctx.effect(() => ctx.locale.register(WORKTREE_NS, { zh, en }), 'clutch-dsh-worktree: locale dictionaries');\n const manager = createWorktreeConnectionAdapter(ctx.connection.rpc);\n const sessions = ctx.sessions;\n const virtualWorkspaceMembership = createVirtualWorkspaceMembership(ctx.workspaces.list);\n ctx.effect(() => () => manager.dispose(), 'clutch-dsh-worktree: connection cleanup');\n ctx.effect(() => () => virtualWorkspaceMembership.dispose(), 'clutch-dsh-worktree: Workspace membership cleanup');\n const viewStore = createWorktreeViewStore();\n const ensureSessionWorkspace = (workspaceId, sessionId) => {\n virtualWorkspaceMembership.ensure({ workspaceId, sessionId });\n };\n const syncSessionWorkspaces = (bindings) => {\n virtualWorkspaceMembership.sync(bindings);\n };\n ctx.slots.inject('sidebar.footer.action', () => ctx.slots.register({\n name: 'sidebar.footer.action',\n id: 'clutch-dsh-worktree-mode-action',\n store: viewStore,\n locale: WORKTREE_NS,\n inject: () => ({ available: true }),\n }, WorktreeModeAction));\n ctx.slots.inject('shell.overlay', () => ctx.slots.register({\n name: 'shell.overlay',\n id: 'clutch-dsh-worktree-navigation',\n store: viewStore,\n locale: WORKTREE_NS,\n inject: () => ({\n available: true,\n manager,\n createWorkspace: async () => {\n const workspacePath = await ctx.workspaces.pickDirectory();\n if (workspacePath !== null)\n await ctx.workspaces.create({ path: workspacePath });\n },\n createSessionForWorktree: (input) => createSessionForWorktree({\n ...input,\n createSession: (sessionInput) => sessions.create(sessionInput),\n manager,\n beforeOpen: (sessionId) => {\n ensureSessionWorkspace(input.workspaceId, sessionId);\n },\n openSession: (sessionId) => {\n ctx.sessions.open(sessionId);\n },\n }),\n createMainSession: (workspaceId) => {\n ctx.workspaces.startSession(workspaceId);\n },\n renameWorkspace: async (workspaceId, title) => {\n await ctx.workspaces.rename(workspaceId, title);\n },\n deleteWorkspace: async (workspaceId) => {\n await ctx.workspaces.delete(workspaceId);\n },\n insertWorkspaceBefore: async (workspaceId, beforeWorkspaceId) => {\n await ctx.workspaces.insertBefore(workspaceId, beforeWorkspaceId);\n },\n insertSessionBefore: async (workspaceId, sessionId, beforeSessionId) => {\n await ctx.workspaces.insertSessionBefore(workspaceId, sessionId, beforeSessionId);\n },\n renameSession: async (sessionId, title) => {\n const session = ctx.sessions.binding(sessionId)?.session;\n if (session === undefined)\n throw new Error(`unknown session \"${sessionId}\"`);\n const result = await session.rename(title);\n if (!result.ok)\n throw new Error(result.error.message);\n },\n forkSession: (sessionId) => {\n void ctx.sessions.fork({\n sessionId: sessionId,\n increaseTitle: true,\n })\n .then((childId) => {\n ctx.sessions.open(childId);\n })\n .catch(() => {\n // Fork failure leaves the current Session and Worktree projection unchanged.\n });\n },\n archiveSession: (sessionId) => ctx.workspaces.archiveSession(sessionId),\n ensureSessionWorkspace,\n syncSessionWorkspaces,\n openSession: (sessionId) => {\n ctx.sessions.open(sessionId);\n },\n }),\n }, WorktreeSurface));\n}\n//# sourceMappingURL=entry.js.map"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"client.js","names":["styles","IconBranchOutline16","IconEditOutline16","IconTrashOutline16","styles","IconChevronDownOutline14","IconChevronRightOutline14","IconFolderOpen16","IconFolderClose16","Menu","IconEllipsisOutline16","IconPlusOutline16","StateDot","HoverCard","IconBranchOutline16","IconArchiveOutline20","_Fragment","IconCloseOutline16","IconSearchOutline16","Modal","Button","Input"],"sources":["client/locales.js","client/worktree-connection.js","client/WorktreeModeAction.js","client/navigation.js","client/overlay-bounds.js","client/sidebar-overlay-geometry.js","client/view-mode.js","client/worktree-error-copy.js","client/worktree-view.js","client/WorktreeSurface.js","client/view-mode-store.js","client/virtual-workspace-membership.js","client/entry.js"],"sourcesContent":["export const WORKTREE_NS = 'worktree';\nexport const zh = {\n 'mode.open': '打开 Worktree 模式',\n 'mode.exit': '退出 Worktree 模式',\n 'mode.label': 'Worktree',\n 'mode.navigation': 'Worktree 导航',\n 'workspace.rename': '重命名',\n 'workspace.delete': '删除',\n 'workspace.expand': '展开 {name}',\n 'workspace.collapse': '收起 {name}',\n 'workspace.options': '工作区选项:{name}',\n 'workspace.addWorktree': '向 {name} 添加 Worktree',\n 'workspace.add': '添加工作区',\n 'workspace.search': '搜索工作区和会话',\n 'workspace.noMatches': '没有匹配的工作区',\n 'workspace.renameTitle': '重命名工作区',\n 'workspace.name': '工作区名称',\n 'workspace.duplicate': '已存在同名工作区。',\n 'workspace.deleteTitle': '删除工作区',\n 'workspace.deleteDescription': '删除“{name}”?这只会移除 DSH 工作区注册。目录、会话和 Git Worktree 会保留。',\n 'worktree.title': 'Worktree',\n 'worktree.main': 'Main',\n 'worktree.detached': '已分离 Worktree',\n 'worktree.repair': 'Worktree 需要修复',\n 'worktree.ready': '活动 Worktree 已就绪',\n 'worktree.expand': '展开 {name}',\n 'worktree.collapse': '收起 {name}',\n 'worktree.options': 'Worktree 选项:{name}',\n 'worktree.remove': '移除 Worktree',\n 'worktree.removeDescription': '移除“{name}”?Session 会保留在 DSH 中,并作为已分离关系继续可用。',\n 'worktree.addSession': '向 {name} 添加会话',\n 'worktree.noWorktrees': '暂无 Worktree',\n 'worktree.createTitle': '新建 Worktree',\n 'worktree.createDescription': '“{name}” · Worktree 路径由 DSH 管理。',\n 'worktree.baseBranch': 'Worktree 基线分支',\n 'worktree.noLocalBranch': '没有本地分支',\n 'worktree.noBranches': '此工作区中没有找到本地分支。',\n 'worktree.name': 'Worktree 名称',\n 'worktree.create': '创建 Worktree',\n 'session.options': '会话选项:{name}',\n 'session.rename': '重命名会话',\n 'session.fork': 'Fork 会话',\n 'session.archive': '归档会话',\n 'session.expandMore': '展开其余 {count} 个会话',\n 'session.collapse': '收起',\n 'session.name': '会话名称',\n 'dialog.close': '关闭',\n 'dialog.closeWorkspaceRename': '关闭重命名工作区对话框',\n 'dialog.closeWorkspaceDelete': '关闭删除工作区对话框',\n 'dialog.closeWorktreeCreate': '关闭创建 Worktree 对话框',\n 'dialog.closeWorktreeRemove': '关闭移除 Worktree 对话框',\n 'dialog.cancel': '取消',\n 'dialog.rename': '重命名',\n 'dialog.delete': '删除',\n 'action.retry': '重试',\n 'action.retryBinding': '重试绑定',\n 'action.openCreatedSession': '打开已创建的 Session',\n 'status.loading': '正在加载工作区…',\n 'error.worktreeDataUnavailable': 'Worktree 数据不可用,请重试。',\n 'error.connectionDisposed': 'Worktree 连接已释放,请重新加载插件后重试。',\n 'error.connectionFailed': 'Worktree endpoint {endpoint} 调用失败;连接错误,可重试:{reason}',\n 'error.invalidResult': 'Worktree endpoint {endpoint} 返回了无效结果,请重试请求。',\n 'error.workspaceOrderingUnavailable': '工作区排序不可用,请重新连接后重试。',\n 'error.sessionOrderingUnavailable': '会话排序不可用,请重新连接后重试。',\n 'error.worktreeCreatedSessionUnavailable': 'Worktree 已创建,但 Session 创建不可用,请重新连接后重试。',\n 'error.sessionCreationUnavailable': 'Session 创建不可用,请重新连接后重试。',\n 'error.worktreeRecordMissing': 'Worktree 创建未返回 Worktree 记录,请重试请求。',\n 'error.workspaceRenameUnavailable': '工作区重命名不可用,请重新连接后重试。',\n 'error.workspaceDeleteUnavailable': '工作区删除不可用,请重新连接后重试。',\n 'error.sessionRenameUnavailable': '会话重命名不可用,请重新连接后重试。',\n 'error.sessionBindingFailed': 'Session {sessionId} 已创建,但 Worktree 绑定失败:{reason}',\n 'branch.current': '(当前)',\n 'branch.checkedOut': '(已检出)',\n};\nexport const en = {\n 'mode.open': 'Open Worktree mode',\n 'mode.exit': 'Exit Worktree mode',\n 'mode.label': 'Worktree',\n 'mode.navigation': 'Worktree navigation',\n 'workspace.rename': 'Rename',\n 'workspace.delete': 'Delete',\n 'workspace.expand': 'Expand {name}',\n 'workspace.collapse': 'Collapse {name}',\n 'workspace.options': 'Workspace options for {name}',\n 'workspace.addWorktree': 'Add Worktree to {name}',\n 'workspace.add': 'Add Workspace',\n 'workspace.search': 'Search Workspaces and Sessions',\n 'workspace.noMatches': 'No matching Workspaces',\n 'workspace.renameTitle': 'Rename Workspace',\n 'workspace.name': 'Workspace name',\n 'workspace.duplicate': 'A Workspace with this name already exists.',\n 'workspace.deleteTitle': 'Delete Workspace',\n 'workspace.deleteDescription': 'Delete {name}? This removes only the DSH Workspace registration. The directory, Sessions, and Git Worktrees will be retained.',\n 'worktree.title': 'Worktrees',\n 'worktree.main': 'Main',\n 'worktree.detached': 'Detached Worktree',\n 'worktree.repair': 'Worktree needs repair',\n 'worktree.ready': 'Active Worktree ready',\n 'worktree.expand': 'Expand {name}',\n 'worktree.collapse': 'Collapse {name}',\n 'worktree.options': 'Worktree options for {name}',\n 'worktree.remove': 'Remove Worktree',\n 'worktree.removeDescription': 'Remove {name}? Sessions stay in DSH and remain available as detached bindings.',\n 'worktree.addSession': 'Add Session to {name}',\n 'worktree.noWorktrees': 'No Worktrees',\n 'worktree.createTitle': 'New Worktree',\n 'worktree.createDescription': '{name} · the Worktree path is managed by DSH.',\n 'worktree.baseBranch': 'Worktree base branch',\n 'worktree.noLocalBranch': 'No local branch',\n 'worktree.noBranches': 'No local branches found in this Workspace.',\n 'worktree.name': 'Worktree name',\n 'worktree.create': 'Create Worktree',\n 'session.options': 'Session options for {name}',\n 'session.rename': 'Rename session',\n 'session.fork': 'Fork session',\n 'session.archive': 'Archive session',\n 'session.expandMore': 'Expand {count} more',\n 'session.collapse': 'Collapse',\n 'session.name': 'Session name',\n 'dialog.close': 'Close',\n 'dialog.closeWorkspaceRename': 'Close Rename Workspace dialog',\n 'dialog.closeWorkspaceDelete': 'Close Delete Workspace dialog',\n 'dialog.closeWorktreeCreate': 'Close Create Worktree dialog',\n 'dialog.closeWorktreeRemove': 'Close Remove Worktree dialog',\n 'dialog.cancel': 'Cancel',\n 'dialog.rename': 'Rename',\n 'dialog.delete': 'Delete',\n 'action.retry': 'Retry',\n 'action.retryBinding': 'Retry Binding',\n 'action.openCreatedSession': 'Open Created Session',\n 'status.loading': 'Loading Workspaces…',\n 'error.worktreeDataUnavailable': 'Worktree data is unavailable. Retry the request.',\n 'error.connectionDisposed': 'Worktree connection is disposed; reload the plugin and retry.',\n 'error.connectionFailed': 'Worktree endpoint {endpoint} failed; retryable connection error: {reason}',\n 'error.invalidResult': 'Worktree endpoint {endpoint} returned an invalid result; retry the request.',\n 'error.workspaceOrderingUnavailable': 'Workspace ordering is unavailable; retry after reconnecting.',\n 'error.sessionOrderingUnavailable': 'Session ordering is unavailable; retry after reconnecting.',\n 'error.worktreeCreatedSessionUnavailable': 'Worktree created, but Session creation is unavailable; retry after reconnecting.',\n 'error.sessionCreationUnavailable': 'Session creation is unavailable; retry after reconnecting.',\n 'error.worktreeRecordMissing': 'Worktree creation returned no Worktree record; retry the request.',\n 'error.workspaceRenameUnavailable': 'Workspace rename is unavailable; retry after reconnecting.',\n 'error.workspaceDeleteUnavailable': 'Workspace delete is unavailable; retry after reconnecting.',\n 'error.sessionRenameUnavailable': 'Session rename is unavailable; retry after reconnecting.',\n 'error.sessionBindingFailed': 'Session {sessionId} was created, but Worktree binding failed: {reason}',\n 'branch.current': ' (current)',\n 'branch.checkedOut': ' (checked out)',\n};\n//# sourceMappingURL=locales.js.map","/** The one logical channel shared by the DSH Connection and Typert Gateway. */\nexport const WORKTREE_CONNECTION_CHANNEL = '/api';\n/**\n * Canonical Worktree endpoints owned by this adapter. Keeping the table here makes\n * the browser call surface auditable without making React know wire names.\n */\nexport const WORKTREE_CONNECTION_ENDPOINTS = Object.freeze({\n listWorktrees: 'worktreeManager/listWorktrees',\n listBranches: 'worktreeManager/listBranches',\n createWorktree: 'worktreeManager/createWorktree',\n removeWorktree: 'worktreeManager/removeWorktree',\n listBindings: 'worktreeManager/listBindings',\n bindSession: 'worktreeManager/bindSession',\n});\n/** Browser-safe error shared by transport, Gateway, endpoint and domain failures. */\nexport class WorktreeConnectionError extends Error {\n code;\n details;\n retryable;\n constructor(options) {\n super(options.message, options.cause === undefined ? undefined : { cause: options.cause });\n this.name = 'WorktreeConnectionError';\n this.code = options.code;\n this.details = Object.freeze({ ...(options.details ?? {}) });\n this.retryable = options.retryable;\n }\n}\nfunction isRecord(value) {\n return typeof value === 'object' && value !== null && !Array.isArray(value);\n}\nfunction isWorktreeError(value) {\n return (isRecord(value) &&\n typeof value.code === 'string' &&\n typeof value.message === 'string' &&\n isRecord(value.details));\n}\nfunction isWorktreeRemoteResult(value) {\n if (!isRecord(value) || typeof value.ok !== 'boolean')\n return false;\n return value.ok || (isWorktreeError(value.error) && value.error.details !== undefined);\n}\nfunction disposedError() {\n return new WorktreeConnectionError({\n code: 'CLIENT_DISPOSED',\n message: '',\n details: {},\n retryable: false,\n });\n}\nfunction connectionFailure(endpoint, error, code = 'CONNECTION_CALL_FAILED') {\n const message = error instanceof Error ? error.message : String(error);\n return new WorktreeConnectionError({\n code,\n message,\n details: { endpoint },\n retryable: true,\n cause: error,\n });\n}\nfunction gatewayFailure(endpoint, result) {\n const rawDetails = isRecord(result.error.details) ? result.error.details : {};\n throw new WorktreeConnectionError({\n code: result.error.code,\n message: result.error.message,\n details: { endpoint, ...rawDetails },\n retryable: true,\n });\n}\nfunction invalidResult(endpoint) {\n return new WorktreeConnectionError({\n code: 'WORKTREE_RPC_INVALID_RESULT',\n message: '',\n details: { endpoint },\n retryable: true,\n });\n}\nfunction unwrap(endpoint, result) {\n if (!result.ok)\n gatewayFailure(endpoint, result);\n if (!isWorktreeRemoteResult(result.value))\n throw invalidResult(endpoint);\n if (!result.value.ok) {\n throw new WorktreeConnectionError({\n code: result.value.error.code,\n message: result.value.error.message,\n details: result.value.error.details,\n retryable: false,\n });\n }\n return result.value.value;\n}\n/**\n * Adapt the shared DSH Connection RPC into the existing WorktreeManager contract.\n * All wire details and request cancellation live behind this one deep module.\n */\nexport function createWorktreeConnectionAdapter(rpc) {\n const inFlight = new Set();\n let disposed = false;\n async function invoke(method, input) {\n if (disposed)\n throw disposedError();\n const controller = new AbortController();\n inFlight.add(controller);\n const endpoint = WORKTREE_CONNECTION_ENDPOINTS[method];\n try {\n let result;\n try {\n result = await rpc.call(WORKTREE_CONNECTION_CHANNEL, endpoint, { args: { input } }, controller.signal);\n }\n catch (error) {\n if (disposed && controller.signal.aborted)\n throw disposedError();\n throw connectionFailure(endpoint, error);\n }\n return unwrap(endpoint, result);\n }\n finally {\n inFlight.delete(controller);\n }\n }\n return {\n listWorktrees: (input) => invoke('listWorktrees', input),\n listBranches: (input) => invoke('listBranches', input),\n createWorktree: (input) => invoke('createWorktree', input),\n async removeWorktree(input) {\n await invoke('removeWorktree', input);\n },\n listBindings: (input) => invoke('listBindings', input),\n bindSession: (input) => invoke('bindSession', input),\n dispose() {\n if (disposed)\n return;\n disposed = true;\n for (const controller of inFlight)\n controller.abort();\n inFlight.clear();\n },\n };\n}\n//# sourceMappingURL=worktree-connection.js.map","import { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { IconBranchOutline16 } from '@deepseek-ai/dsh-client-ui-primitives';\nimport styles from './worktree.css';\n/** Footer action that enters/exits the peer Worktree navigation mode. */\nexport function WorktreeModeAction({ wide, useStore, actions, t, available, }) {\n if (!available)\n return null;\n const mode = useStore((state) => state.viewMode);\n const active = mode === 'worktree';\n return (_jsxs(\"button\", { type: \"button\", className: styles.action, \"data-worktree-mode-action\": true, \"data-active\": active || undefined, \"data-collapsed\": !wide || undefined, \"aria-label\": active ? t('mode.exit') : t('mode.open'), \"aria-pressed\": active, title: active ? t('mode.exit') : t('mode.label'), onClick: () => {\n actions.setViewMode(active ? 'workspace-session' : 'worktree');\n }, children: [_jsx(IconBranchOutline16, { size: wide ? 16 : 18 }), wide && _jsx(\"span\", { className: styles.actionLabel, children: t('mode.label') })] }));\n}\n//# sourceMappingURL=WorktreeModeAction.js.map","/** Open an existing Session through DSH without touching the peer view mode. */\nexport function openWorktreeSession(opener, sessionId) {\n opener.open(sessionId);\n}\n//# sourceMappingURL=navigation.js.map","export function computeOverlayBounds(frame, newSession, footer) {\n if (newSession === undefined || footer === undefined) {\n return { ready: false, top: 0, height: 0 };\n }\n const top = Math.max(0, newSession.top - frame.top);\n const footerTop = Math.max(top, footer.top - frame.top);\n return { ready: true, top, height: footerTop - top };\n}\n//# sourceMappingURL=overlay-bounds.js.map","import { useLayoutEffect, useRef, useState } from 'react';\nimport { computeOverlayBounds } from './overlay-bounds.js';\nconst EMPTY_BOUNDS = { ready: false, top: 0, height: 0 };\nfunction asRect(element) {\n const rect = element.getBoundingClientRect();\n return { top: rect.top, bottom: rect.bottom };\n}\nexport function resolveNativeSidebarRoot(sidebar) {\n const directChild = sidebar.firstElementChild;\n if (directChild === null)\n return undefined;\n const directRect = directChild.getBoundingClientRect();\n if (directRect.width > 0 || directRect.height > 0)\n return directChild;\n return directChild.firstElementChild ?? directChild;\n}\nexport function findNewSessionAnchor(root) {\n const labels = ['新建会话', 'New session', '新会话', 'New Session'];\n const buttons = Array.from(root.querySelectorAll('button'));\n const visibleLabel = buttons.find((button) => {\n const text = button.textContent?.trim();\n return text === '新会话' || text === 'New Session';\n });\n if (visibleLabel !== undefined)\n return visibleLabel;\n for (const label of labels) {\n const button = buttons.find((candidate) => candidate.getAttribute('aria-label') === label);\n if (button !== undefined)\n return button;\n }\n return undefined;\n}\nexport function useSidebarOverlayGeometry(active) {\n const ref = useRef(null);\n const [width, setWidth] = useState(280);\n const [bounds, setBounds] = useState(EMPTY_BOUNDS);\n useLayoutEffect(() => {\n if (!active) {\n setBounds(EMPTY_BOUNDS);\n return;\n }\n const surface = ref.current;\n const overlay = surface?.closest('[data-shell-overlay]');\n const frame = overlay?.parentElement;\n const sidebar = frame?.firstElementChild;\n const nativeRoot = sidebar === null || sidebar === undefined ? undefined : resolveNativeSidebarRoot(sidebar);\n if (!(overlay instanceof HTMLElement) ||\n !(sidebar instanceof HTMLElement) ||\n !(nativeRoot instanceof HTMLElement)) {\n setBounds(EMPTY_BOUNDS);\n return;\n }\n let frameHandle;\n const update = () => {\n const newSession = findNewSessionAnchor(nativeRoot);\n const footer = nativeRoot.lastElementChild;\n const nextWidth = sidebar.getBoundingClientRect().width;\n if (nextWidth > 0)\n setWidth(nextWidth);\n setBounds(computeOverlayBounds(asRect(overlay), newSession === undefined ? undefined : asRect(newSession), footer === null ? undefined : asRect(footer)));\n };\n const scheduleUpdate = () => {\n if (frameHandle !== undefined)\n return;\n frameHandle = requestAnimationFrame(() => {\n frameHandle = undefined;\n update();\n });\n };\n update();\n const resizeObserver = typeof ResizeObserver === 'function'\n ? new ResizeObserver(scheduleUpdate)\n : undefined;\n for (const element of [overlay, sidebar, nativeRoot]) {\n resizeObserver?.observe(element);\n }\n const newSession = findNewSessionAnchor(nativeRoot);\n const footer = nativeRoot.lastElementChild;\n if (newSession !== undefined)\n resizeObserver?.observe(newSession);\n if (footer !== null)\n resizeObserver?.observe(footer);\n const mutationObserver = typeof MutationObserver === 'function'\n ? new MutationObserver(scheduleUpdate)\n : undefined;\n mutationObserver?.observe(nativeRoot, { childList: true, subtree: true });\n return () => {\n resizeObserver?.disconnect();\n mutationObserver?.disconnect();\n if (frameHandle !== undefined)\n cancelAnimationFrame(frameHandle);\n };\n }, [active]);\n return { ref, width, bounds };\n}\n//# sourceMappingURL=sidebar-overlay-geometry.js.map","/** Browser-local storage key; it is never sent to DSH or the sidecar. */\nexport const WORKTREE_VIEW_MODE_STORAGE_KEY = 'clutch-dsh-worktree.view-mode';\n/** Guard persisted values before they become a visible mode. */\nexport function isWorktreeViewMode(value) {\n return value === 'workspace-session' || value === 'worktree';\n}\n/** Degraded/unavailable plugin state always exposes the original DSH view. */\nexport function effectiveViewMode(preferred, worktreeServiceAvailable) {\n if (!worktreeServiceAvailable || !isWorktreeViewMode(preferred))\n return 'workspace-session';\n return preferred;\n}\n/** Keep the Main bucket scoped to the selected DSH Workspace before filtering bindings. */\nexport function workspaceSessionIds(workspaces, workspaceId, sessionIds) {\n if (workspaceId === undefined)\n return [];\n const workspace = workspaces.items.find((candidate) => candidate.workspaceId === workspaceId);\n if (workspace === undefined)\n return [];\n const listed = new Set(sessionIds);\n return workspace.sessionIds.filter((sessionId) => listed.has(sessionId));\n}\nexport function unboundSessionIds(sessionIds, boundSessionIds) {\n const bound = new Set(boundSessionIds);\n return sessionIds.filter((sessionId) => !bound.has(sessionId));\n}\n/**\n * Apply a browser-only membership delta to a DSH Workspace list snapshot.\n * `previousBindings` are removed first so the same function can also undo a\n * projection after a binding is deleted or the plugin is disposed.\n */\nexport function projectVirtualWorkspaceMembership(snapshot, previousBindings, nextBindings) {\n const previousSessionIds = new Set(previousBindings.map((binding) => binding.sessionId));\n const nextByWorkspace = new Map();\n for (const binding of nextBindings) {\n const sessionIds = nextByWorkspace.get(binding.workspaceId) ?? [];\n if (!sessionIds.includes(binding.sessionId))\n sessionIds.push(binding.sessionId);\n nextByWorkspace.set(binding.workspaceId, sessionIds);\n }\n const items = snapshot.items.map((workspace) => {\n const nativeSessionIds = workspace.sessionIds.filter((sessionId) => !previousSessionIds.has(sessionId));\n const virtualSessionIds = nextByWorkspace.get(workspace.workspaceId) ?? [];\n const sessionIds = [\n ...nativeSessionIds,\n ...virtualSessionIds.filter((sessionId) => !nativeSessionIds.includes(sessionId)),\n ];\n if (sessionIds.length === workspace.sessionIds.length &&\n sessionIds.every((sessionId, index) => sessionId === workspace.sessionIds[index])) {\n return workspace;\n }\n return { ...workspace, sessionIds };\n });\n if (items.every((workspace, index) => workspace === snapshot.items[index]))\n return snapshot;\n return { ...snapshot, items };\n}\n/**\n * Select the initial Worktree surface Workspace without navigating DSH:\n * current Session membership wins, then DSH recency, then the first available\n * Workspace keeps the surface usable in an empty/reconnecting fixture.\n */\nexport function initialWorkspaceId(workspaces, sessions) {\n const currentSessionId = sessions.current;\n if (currentSessionId !== undefined) {\n const currentWorkspace = workspaces.items.find((workspace) => workspace.sessionIds.includes(currentSessionId));\n if (currentWorkspace !== undefined)\n return currentWorkspace.workspaceId;\n }\n if (workspaces.recentWorkspaceId !== undefined &&\n workspaces.items.some((workspace) => workspace.workspaceId === workspaces.recentWorkspaceId)) {\n return workspaces.recentWorkspaceId;\n }\n return workspaces.items[0]?.workspaceId;\n}\n//# sourceMappingURL=view-mode.js.map","function detail(error, name) {\n const value = error.details?.[name];\n return typeof value === 'string' ? value : '';\n}\nfunction reason(error, t) {\n return error.message.length > 0 ? error.message : t('error.worktreeDataUnavailable');\n}\nexport function formatWorktreeViewError(error, t) {\n switch (error.code) {\n case 'CLIENT_DISPOSED':\n return t('error.connectionDisposed');\n case 'CONNECTION_CALL_FAILED':\n return t('error.connectionFailed', {\n endpoint: detail(error, 'endpoint'),\n reason: reason(error, t),\n });\n case 'WORKTREE_RPC_INVALID_RESULT':\n return t('error.invalidResult', { endpoint: detail(error, 'endpoint') });\n case 'WORKSPACE_ORDER_UNAVAILABLE':\n return t('error.workspaceOrderingUnavailable');\n case 'SESSION_ORDER_UNAVAILABLE':\n return t('error.sessionOrderingUnavailable');\n case 'SESSION_CREATE_UNAVAILABLE':\n return t('error.sessionCreationUnavailable');\n case 'WORKTREE_CREATED_SESSION_UNAVAILABLE':\n return t('error.worktreeCreatedSessionUnavailable');\n case 'WORKTREE_RECORD_MISSING':\n return t('error.worktreeRecordMissing');\n case 'WORKSPACE_RENAME_UNAVAILABLE':\n return t('error.workspaceRenameUnavailable');\n case 'WORKSPACE_DELETE_UNAVAILABLE':\n return t('error.workspaceDeleteUnavailable');\n case 'SESSION_RENAME_UNAVAILABLE':\n return t('error.sessionRenameUnavailable');\n case 'SESSION_BINDING_FAILED':\n return t('error.sessionBindingFailed', {\n sessionId: detail(error, 'sessionId'),\n reason: reason(error, t),\n });\n default:\n return error.message.length > 0 ? error.message : t('error.worktreeDataUnavailable');\n }\n}\n//# sourceMappingURL=worktree-error-copy.js.map","/** A DSH Session exists even when the external Worktree binding needs repair. */\nexport class WorktreeSessionBindingError extends Error {\n code = 'SESSION_BINDING_FAILED';\n retryable = true;\n sessionId;\n cause;\n constructor(sessionId, cause) {\n const reason = cause instanceof Error ? cause.message : String(cause);\n super(reason);\n this.name = 'WorktreeSessionBindingError';\n this.sessionId = sessionId;\n this.cause = cause;\n }\n}\n/** Reuse the previous ID snapshot when DSH republishes equivalent Workspace items. */\nexport function stableWorkspaceIds(previous, next) {\n if (previous.length !== next.length)\n return next;\n for (let index = 0; index < previous.length; index += 1) {\n if (previous[index] !== next[index])\n return next;\n }\n return previous;\n}\n/** Prefer the branch checked out by the DSH Workspace, then fall back to any local branch. */\nexport function selectDefaultBaseBranch(branches) {\n return branches.find((branch) => branch.isCurrent)?.name ?? branches[0]?.name ?? '';\n}\nfunction browserRandomUuid() {\n const randomUUID = globalThis.crypto?.randomUUID;\n if (typeof randomUUID === 'function')\n return randomUUID.call(globalThis.crypto);\n return `${Date.now().toString(16)}-${Math.random().toString(16).slice(2)}`;\n}\n/** Generate a short, editable default branch name without colliding with known local names. */\nexport function createDefaultWorktreeName(existingNames, randomUuid = browserRandomUuid) {\n const usedNames = new Set([...existingNames].map((name) => name.trim()));\n for (let attempt = 0; attempt < 100; attempt += 1) {\n const suffix = randomUuid().replace(/[^a-z0-9]/gi, '').slice(0, 8).toLowerCase();\n if (suffix.length < 8)\n continue;\n const candidate = `dsh/${suffix}`;\n if (!usedNames.has(candidate))\n return candidate;\n }\n throw new Error('Unable to generate an available default Worktree name.');\n}\n/** Hide DSH-archived Sessions from the browser-local Worktree projection. */\nexport function filterArchivedSessionIds(sessionIds, archivedSessionIds) {\n return sessionIds.filter((sessionId) => !archivedSessionIds.includes(sessionId));\n}\n/** Read all three Worktree projections needed by the surface in one refresh. */\nexport async function loadWorktreeView(manager, workspaceId) {\n const [worktrees, branches, bindings] = await Promise.all([\n manager.listWorktrees({ workspaceId }),\n manager.listBranches({ workspaceId }),\n manager.listBindings({ workspaceId }),\n ]);\n return { worktrees, branches, bindings };\n}\n/** Load one independent projection per DSH Workspace for the flat sidebar hierarchy. */\nexport async function loadWorktreeViews(manager, workspaceIds) {\n return Promise.all(workspaceIds.map(async (workspaceId) => ({\n workspaceId,\n ...(await loadWorktreeView(manager, workspaceId)),\n })));\n}\n/** Keep mutation routing in the browser Consumer while leaving wire details to the adapter. */\nexport async function executeWorktreeAction(manager, action) {\n if (action.type === 'createWorktree') {\n return manager.createWorktree(action.input);\n }\n if (action.type === 'removeWorktree') {\n await manager.removeWorktree(action.input);\n return;\n }\n}\n/**\n * Create a normal DSH Session at a Worktree cwd, then add the external binding.\n * A binding failure deliberately leaves the DSH-created Session intact.\n */\nexport async function createSessionForWorktree(input) {\n const sessionId = await input.createSession({ cwd: input.cwd });\n try {\n await input.manager.bindSession({\n workspaceId: input.workspaceId,\n worktreeId: input.worktreeId,\n sessionId,\n });\n }\n catch (error) {\n throw new WorktreeSessionBindingError(sessionId, error);\n }\n input.beforeOpen?.(sessionId);\n input.openSession(sessionId);\n return sessionId;\n}\nfunction recordDetails(value) {\n if (typeof value !== 'object' || value === null || Array.isArray(value))\n return undefined;\n const details = value.details;\n if (typeof details !== 'object' || details === null || Array.isArray(details))\n return undefined;\n return details;\n}\n/** Convert any adapter/Gateway failure into renderable, retry-aware UI data. */\nexport function toWorktreeViewError(error) {\n if (typeof error === 'object' && error !== null) {\n const candidate = error;\n const details = error instanceof WorktreeSessionBindingError\n ? { ...(recordDetails(error) ?? {}), sessionId: error.sessionId }\n : recordDetails(error);\n return {\n code: typeof candidate.code === 'string' ? candidate.code : 'WORKTREE_VIEW_FAILED',\n message: typeof candidate.message === 'string' ? candidate.message : '',\n retryable: candidate.retryable !== false,\n ...(details === undefined ? {} : { details }),\n };\n }\n return {\n code: 'WORKTREE_VIEW_FAILED',\n message: '',\n retryable: true,\n };\n}\n//# sourceMappingURL=worktree-view.js.map","import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from \"react/jsx-runtime\";\nimport { useCallback, useEffect, useMemo, useRef, useState } from 'react';\nimport { Button, HoverCard, IconArchiveOutline20, IconBranchOutline16, IconChevronDownOutline14, IconChevronRightOutline14, IconCloseOutline16, IconEditOutline16, IconEllipsisOutline16, IconFolderClose16, IconFolderOpen16, IconPlusOutline16, IconSearchOutline16, IconTrashOutline16, Input, Menu, Modal, StateDot, } from '@deepseek-ai/dsh-client-ui-primitives';\nimport { openWorktreeSession } from './navigation.js';\nimport { useSidebarOverlayGeometry } from './sidebar-overlay-geometry.js';\nimport { effectiveViewMode, unboundSessionIds, workspaceSessionIds } from './view-mode.js';\nimport { formatWorktreeViewError } from './worktree-error-copy.js';\nimport { executeWorktreeAction, createDefaultWorktreeName, filterArchivedSessionIds, loadWorktreeViews, selectDefaultBaseBranch, stableWorkspaceIds, toWorktreeViewError, WorktreeSessionBindingError, } from './worktree-view.js';\nimport styles from './worktree.css';\nfunction toNativeWorktreeViewError(error) {\n const viewError = toWorktreeViewError(error);\n if (typeof error === 'object' && error !== null)\n return viewError;\n return { ...viewError, message: String(error) };\n}\nconst EMPTY_READ_STATE = { status: 'idle', views: [] };\nfunction useStableWorkspaceIds(workspaces) {\n const next = workspaces.map((workspace) => workspace.workspaceId);\n const previousRef = useRef([]);\n const stable = stableWorkspaceIds(previousRef.current, next);\n if (stable !== previousRef.current)\n previousRef.current = stable;\n return previousRef.current;\n}\nfunction sessionLabel(sessionId, sessions) {\n return sessions.byId[sessionId]?.displayTitle ?? sessionId;\n}\nfunction rowHalf(event) {\n const rect = event.currentTarget.getBoundingClientRect();\n return event.clientY < rect.top + rect.height / 2 ? 'before' : 'after';\n}\nfunction bindingIdsFor(bindings, worktreeId) {\n return bindings\n .filter((binding) => binding.worktreeId === worktreeId)\n .map((binding) => binding.sessionId);\n}\nfunction includesText(value, query) {\n return value.toLocaleLowerCase().includes(query);\n}\nfunction workspaceMatches(workspace, view, sessions, query) {\n if (query.length === 0)\n return true;\n if (includesText(workspace.title, query))\n return true;\n if (workspace.sessionIds.some((sessionId) => includesText(sessionLabel(sessionId, sessions), query))) {\n return true;\n }\n if (view === undefined)\n return false;\n if (view.worktrees.some((record) => includesText(record.branch, query) || includesText(record.absolutePath, query))) {\n return true;\n }\n return view.bindings.some((binding) => includesText(sessionLabel(binding.sessionId, sessions), query));\n}\n/** Workspace row using the native DSH menu, fixed action column, and drag contract. */\nfunction WorktreeWorkspaceRow({ t, workspace, expanded, actionPending, menuOpen, drag, onToggle, onCreateWorktree, onRename, onDelete, onMenuOpenChange, }) {\n const workspaceMenuItems = [\n {\n id: 'rename',\n label: t('workspace.rename'),\n icon: _jsx(IconEditOutline16, {}),\n disabled: actionPending,\n },\n {\n id: 'delete',\n label: t('workspace.delete'),\n icon: _jsx(IconTrashOutline16, {}),\n danger: true,\n disabled: actionPending,\n },\n ];\n const markerClass = drag.marker === 'before'\n ? styles.dropBefore\n : drag.marker === 'after'\n ? styles.dropAfter\n : '';\n return (_jsxs(\"div\", { className: `${styles.workspaceRow} ${markerClass}`, \"data-workspace-drag\": drag.active ? 'active' : undefined, \"data-menu-open\": menuOpen || undefined, draggable: true, onClick: () => {\n onToggle();\n }, onDragStart: (event) => {\n event.dataTransfer.effectAllowed = 'move';\n event.dataTransfer.setData('text/plain', workspace.workspaceId);\n drag.start();\n }, onDragEnd: drag.end, onDragOver: (event) => {\n if (!drag.active)\n return;\n event.preventDefault();\n event.dataTransfer.dropEffect = 'move';\n drag.hover(rowHalf(event));\n }, onDrop: (event) => {\n if (!drag.active)\n return;\n event.preventDefault();\n drag.drop(rowHalf(event));\n }, children: [_jsx(\"button\", { type: \"button\", className: `${styles.disclosureButton} ${styles.workspaceDisclosure}`, \"aria-label\": t(expanded ? 'workspace.collapse' : 'workspace.expand', {\n name: workspace.title,\n }), \"aria-expanded\": expanded, onClick: (event) => {\n event.stopPropagation();\n onToggle();\n }, 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: () => {\n onMenuOpenChange(false);\n }, items: workspaceMenuItems, onSelect: (id) => {\n onMenuOpenChange(false);\n if (id === 'rename')\n onRename();\n if (id === 'delete')\n onDelete();\n }, 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) => {\n event.stopPropagation();\n onMenuOpenChange(!menuOpen);\n }, children: _jsx(IconEllipsisOutline16, {}) })) }) }), _jsx(\"button\", { type: \"button\", className: styles.iconButton, \"data-add-worktree\": true, \"aria-label\": t('workspace.addWorktree', { name: workspace.title }), onClick: (event) => {\n event.stopPropagation();\n onCreateWorktree();\n }, children: _jsx(IconPlusOutline16, {}) })] })] }));\n}\n/** Shared Main/Worktree group row with parameterized icon, state, and actions. */\nfunction WorktreeGroupRow({ t, kind, label, expanded, icon, workspaceTitle, state, stateLabel, onToggle, onCreateSession, menu, }) {\n const main = kind === 'main';\n const row = (_jsxs(\"div\", { className: styles.worktreeRow, \"data-main-group\": main ? 'true' : undefined, \"data-main-expanded\": main ? String(expanded) : undefined, \"data-menu-open\": menu?.open ? 'true' : undefined, 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) => {\n event.stopPropagation();\n onToggle();\n }, 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: () => {\n menu.onOpenChange(false);\n }, items: [\n {\n id: 'remove',\n label: t('worktree.remove'),\n icon: _jsx(IconTrashOutline16, {}),\n danger: true,\n disabled: menu.disabled,\n },\n ], onSelect: (id) => {\n menu.onOpenChange(false);\n if (id === 'remove')\n menu.onRemove();\n }, 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) => {\n event.stopPropagation();\n menu.onOpenChange(!menu.open);\n }, 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) => {\n event.stopPropagation();\n onCreateSession();\n }, children: _jsx(IconPlusOutline16, {}) }))] })] }));\n if (main)\n return row;\n return (_jsx(HoverCard, { anchor: row, content: _jsx(\"div\", { className: styles.worktreeHoverTitle, children: label }), openDelayMs: 500, disabled: menu?.open === true }));\n}\n/** Worktree-mode Session row with the same trailing options menu as native DSH rows. */\nfunction WorktreeSessionRow({ t, sessionId, label, drag, actionPending, onOpen, onRename, onFork, onArchive, }) {\n const [menuOpen, setMenuOpen] = useState(false);\n const markerClass = drag.marker === 'before'\n ? styles.dropBefore\n : drag.marker === 'after'\n ? styles.dropAfter\n : '';\n const sessionMenuItems = [\n {\n id: 'rename',\n label: t('session.rename'),\n icon: _jsx(IconEditOutline16, {}),\n disabled: onRename === undefined || actionPending,\n },\n {\n id: 'fork',\n label: t('session.fork'),\n icon: _jsx(IconBranchOutline16, {}),\n disabled: onFork === undefined || actionPending,\n },\n {\n id: 'archive',\n label: t('session.archive'),\n icon: _jsx(IconArchiveOutline20, { size: 16 }),\n disabled: onArchive === undefined || actionPending,\n },\n ];\n return (_jsxs(\"div\", { className: `${styles.treeSessionRow} ${markerClass}`, \"data-session-id\": sessionId, \"data-session-drag\": drag.active ? 'active' : undefined, \"data-menu-open\": menuOpen || undefined, role: \"treeitem\", draggable: true, onDragStart: (event) => {\n event.dataTransfer.effectAllowed = 'move';\n event.dataTransfer.setData('text/plain', sessionId);\n drag.start();\n }, onDragEnd: drag.end, onDragOver: (event) => {\n if (!drag.active)\n return;\n event.preventDefault();\n event.dataTransfer.dropEffect = 'move';\n drag.hover(rowHalf(event));\n }, onDrop: (event) => {\n if (!drag.active)\n return;\n event.preventDefault();\n drag.drop(rowHalf(event));\n }, 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 })] }), _jsx(\"span\", { className: styles.rowActions, children: _jsx(Menu, { open: menuOpen, onClose: () => {\n setMenuOpen(false);\n }, items: sessionMenuItems, onSelect: (id) => {\n setMenuOpen(false);\n if (id === 'rename')\n onRename?.(sessionId, label);\n if (id === 'fork')\n onFork?.(sessionId);\n if (id === 'archive')\n onArchive?.(sessionId);\n }, 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) => {\n event.stopPropagation();\n setMenuOpen((current) => !current);\n }, children: _jsx(IconEllipsisOutline16, {}) })) }) })] }));\n}\nfunction WorktreeSessionGroup({ t, groupKey, sessionIds, workspaceId, expanded, actionPending, sessions, dragState, onToggleExpanded, onStartDrag, onHoverDrag, onClearDrag, onFinishDrag, onCommitDrag, onOpen, onRename, onFork, onArchive, }) {\n const visibleSessionIds = expanded ? sessionIds : sessionIds.slice(0, 5);\n const sameGroupDrag = dragState?.groupKey === groupKey;\n return (_jsxs(_Fragment, { children: [visibleSessionIds.map((sessionId) => (_jsx(WorktreeSessionRow, { t: t, sessionId: sessionId, label: sessionLabel(sessionId, sessions), drag: {\n active: sameGroupDrag,\n marker: sameGroupDrag && dragState.over?.sessionId === sessionId\n ? dragState.over.half\n : null,\n start: () => {\n onStartDrag(groupKey, sessionId);\n },\n hover: (half) => {\n onHoverDrag(sessionId, half);\n },\n drop: (half) => {\n if (dragState === undefined)\n return;\n onCommitDrag(dragState, { sessionId, half }, sessionIds, workspaceId);\n },\n end: () => {\n if (dragState?.over !== null && dragState?.over !== undefined) {\n onCommitDrag(dragState, dragState.over, sessionIds, workspaceId);\n }\n else {\n onClearDrag();\n }\n onFinishDrag();\n },\n }, actionPending: actionPending, onOpen: () => {\n onOpen(sessionId);\n }, 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\n ? t('session.collapse')\n : t('session.expandMore', { count: sessionIds.length - 5 }) }))] }));\n}\n/**\n * Peer Worktree navigation surface. It keeps the original DSH Workspace mode\n * intact and renders a browser-local Workspace → Worktree → Session projection.\n */\nexport function WorktreeSurface({ useStore, actions, useSessions, useWorkspaces, t, available, manager, createWorkspace, createSessionForWorktree: createSessionCallback, createMainSession, renameWorkspace, deleteWorkspace, insertWorkspaceBefore, insertSessionBefore, renameSession, forkSession, archiveSession, ensureSessionWorkspace, syncSessionWorkspaces, openSession, }) {\n const preferredMode = useStore((state) => state.viewMode);\n const mode = effectiveViewMode(preferredMode, available && manager !== undefined);\n const sessions = useSessions((state) => state);\n const workspaces = useWorkspaces((state) => state);\n const workspaceIds = useStableWorkspaceIds(workspaces.items);\n const [readState, setReadState] = useState(EMPTY_READ_STATE);\n const [searchQuery, setSearchQuery] = useState('');\n const [expandedWorkspaces, setExpandedWorkspaces] = useState({});\n const [expandedMains, setExpandedMains] = useState({});\n const [expandedWorktrees, setExpandedWorktrees] = useState({});\n const [worktreeModalWorkspaceId, setWorktreeModalWorkspaceId] = useState();\n const [openWorkspaceMenuId, setOpenWorkspaceMenuId] = useState();\n const [openWorktreeMenuId, setOpenWorktreeMenuId] = useState();\n const [worktreeRemoval, setWorktreeRemoval] = useState();\n const [selectedBranch, setSelectedBranch] = useState('');\n const [newBranch, setNewBranch] = useState('');\n const [pendingSessionBinding, setPendingSessionBinding] = useState();\n const [actionError, setActionError] = useState();\n const [actionPending, setActionPending] = useState(false);\n const [sessionRenameTarget, setSessionRenameTarget] = useState();\n const [sessionRenameDraft, setSessionRenameDraft] = useState('');\n const [sessionRenamePending, setSessionRenamePending] = useState(false);\n const [sessionRenameError, setSessionRenameError] = useState();\n const [workspaceDrag, setWorkspaceDrag] = useState();\n const [workspaceRenameTarget, setWorkspaceRenameTarget] = useState();\n const [workspaceRenameDraft, setWorkspaceRenameDraft] = useState('');\n const [workspaceRenamePending, setWorkspaceRenamePending] = useState(false);\n const [workspaceRenameError, setWorkspaceRenameError] = useState();\n const [workspaceDeleteTarget, setWorkspaceDeleteTarget] = useState();\n const [workspaceDeletePending, setWorkspaceDeletePending] = useState(false);\n const [workspaceDeleteError, setWorkspaceDeleteError] = useState();\n const workspaceDropCommitted = useRef(false);\n const [sessionDrag, setSessionDrag] = useState();\n const [expandedSessionGroups, setExpandedSessionGroups] = useState({});\n const sessionDropCommitted = useRef(false);\n const { ref, width, bounds } = useSidebarOverlayGeometry(mode === 'worktree');\n const collapsed = width <= 64;\n const query = searchQuery.trim().toLocaleLowerCase();\n const archivedSessionIds = workspaces.archivedSessionIds ?? [];\n const refresh = useCallback(async () => {\n if (manager === undefined) {\n setReadState(EMPTY_READ_STATE);\n return;\n }\n setReadState({ status: 'loading', views: [] });\n try {\n const views = await loadWorktreeViews(manager, workspaceIds);\n setReadState({ status: 'ready', views });\n }\n catch (error) {\n setReadState({\n status: 'error',\n views: [],\n error: toWorktreeViewError(error),\n });\n }\n }, [manager, workspaceIds]);\n useEffect(() => {\n if (mode === 'worktree') {\n void refresh();\n }\n else {\n setReadState(EMPTY_READ_STATE);\n }\n }, [mode, refresh]);\n useEffect(() => {\n if (readState.status !== 'ready' || syncSessionWorkspaces === undefined)\n return;\n syncSessionWorkspaces(readState.views.flatMap((view) => view.bindings.map((binding) => ({\n workspaceId: binding.workspaceId,\n sessionId: binding.sessionId,\n }))));\n }, [readState.status, readState.views, syncSessionWorkspaces]);\n const viewByWorkspace = useMemo(() => new Map(readState.views.map((view) => [view.workspaceId, view])), [readState.views]);\n const modalWorkspace = workspaces.items.find((workspace) => workspace.workspaceId === worktreeModalWorkspaceId);\n const modalView = worktreeModalWorkspaceId === undefined\n ? undefined\n : viewByWorkspace.get(worktreeModalWorkspaceId);\n const runMutation = async (operation) => {\n setActionPending(true);\n setActionError(undefined);\n try {\n await operation();\n await refresh();\n }\n catch (error) {\n setActionError(toWorktreeViewError(error));\n }\n finally {\n setActionPending(false);\n }\n };\n const workspaceRenameTrimmed = workspaceRenameDraft.trim();\n const workspaceRenameDuplicate = workspaceRenameTarget !== undefined &&\n workspaceRenameTrimmed.length > 0 &&\n workspaces.items.some((workspace) => workspace.workspaceId !== workspaceRenameTarget.workspaceId &&\n workspace.title === workspaceRenameTrimmed);\n const workspaceRenameBlocked = workspaceRenamePending ||\n workspaceRenameTarget === undefined ||\n workspaceRenameTrimmed.length === 0 ||\n workspaceRenameTrimmed === workspaceRenameTarget?.currentTitle ||\n workspaceRenameDuplicate;\n const openWorkspaceRename = (workspace) => {\n setWorkspaceRenameTarget({\n workspaceId: workspace.workspaceId,\n currentTitle: workspace.title,\n });\n setWorkspaceRenameDraft(workspace.title);\n setWorkspaceRenameError(undefined);\n };\n const closeWorkspaceRename = () => {\n if (workspaceRenamePending)\n return;\n setWorkspaceRenameTarget(undefined);\n setWorkspaceRenameError(undefined);\n };\n const confirmWorkspaceRename = async () => {\n const target = workspaceRenameTarget;\n if (workspaceRenameBlocked || target === undefined)\n return;\n if (renameWorkspace === undefined) {\n setWorkspaceRenameError({\n code: 'WORKSPACE_RENAME_UNAVAILABLE',\n message: '',\n retryable: true,\n });\n return;\n }\n setWorkspaceRenamePending(true);\n setWorkspaceRenameError(undefined);\n try {\n await renameWorkspace(target.workspaceId, workspaceRenameTrimmed);\n setWorkspaceRenameTarget(undefined);\n }\n catch (error) {\n setWorkspaceRenameError(toNativeWorktreeViewError(error));\n }\n finally {\n setWorkspaceRenamePending(false);\n }\n };\n const openWorkspaceDelete = (workspace) => {\n setWorkspaceDeleteTarget({ workspaceId: workspace.workspaceId, title: workspace.title });\n setWorkspaceDeleteError(undefined);\n };\n const closeWorkspaceDelete = () => {\n if (workspaceDeletePending)\n return;\n setWorkspaceDeleteTarget(undefined);\n setWorkspaceDeleteError(undefined);\n };\n const confirmWorkspaceDelete = async () => {\n const target = workspaceDeleteTarget;\n if (target === undefined || workspaceDeletePending)\n return;\n if (deleteWorkspace === undefined) {\n setWorkspaceDeleteError({\n code: 'WORKSPACE_DELETE_UNAVAILABLE',\n message: '',\n retryable: true,\n });\n return;\n }\n setWorkspaceDeletePending(true);\n setWorkspaceDeleteError(undefined);\n try {\n await deleteWorkspace(target.workspaceId);\n setWorkspaceDeleteTarget(undefined);\n }\n catch (error) {\n setWorkspaceDeleteError(toNativeWorktreeViewError(error));\n }\n finally {\n setWorkspaceDeletePending(false);\n }\n };\n const commitWorkspaceDrag = (activeDrag, over) => {\n if (workspaceDropCommitted.current)\n return;\n workspaceDropCommitted.current = true;\n setWorkspaceDrag(undefined);\n const rows = workspaces.items;\n const targetIndex = rows.findIndex((workspace) => workspace.workspaceId === over.workspaceId);\n const sourceIndex = rows.findIndex((workspace) => workspace.workspaceId === activeDrag.workspaceId);\n if (targetIndex === -1 || sourceIndex === -1)\n return;\n const beforeWorkspaceId = over.half === 'before'\n ? over.workspaceId\n : rows[targetIndex + 1]?.workspaceId;\n const anchorIndex = beforeWorkspaceId === undefined\n ? rows.length\n : rows.findIndex((workspace) => workspace.workspaceId === beforeWorkspaceId);\n if (beforeWorkspaceId === activeDrag.workspaceId ||\n anchorIndex === sourceIndex ||\n anchorIndex === sourceIndex + 1) {\n return;\n }\n if (insertWorkspaceBefore === undefined) {\n setActionError({\n code: 'WORKSPACE_ORDER_UNAVAILABLE',\n message: '',\n retryable: true,\n });\n return;\n }\n setActionError(undefined);\n void insertWorkspaceBefore(activeDrag.workspaceId, beforeWorkspaceId).catch((error) => {\n setActionError(toWorktreeViewError(error));\n });\n };\n const commitSessionDrag = (activeDrag, over, sessionIds, workspaceId) => {\n if (sessionDropCommitted.current)\n return;\n sessionDropCommitted.current = true;\n setSessionDrag(undefined);\n const targetIndex = sessionIds.indexOf(over.sessionId);\n const sourceIndex = sessionIds.indexOf(activeDrag.sessionId);\n if (targetIndex === -1 || sourceIndex === -1)\n return;\n const beforeSessionId = over.half === 'before'\n ? over.sessionId\n : sessionIds[targetIndex + 1];\n const anchorIndex = beforeSessionId === undefined\n ? sessionIds.length\n : sessionIds.indexOf(beforeSessionId);\n if (beforeSessionId === activeDrag.sessionId ||\n anchorIndex === sourceIndex ||\n anchorIndex === sourceIndex + 1) {\n return;\n }\n if (insertSessionBefore === undefined) {\n setActionError({\n code: 'SESSION_ORDER_UNAVAILABLE',\n message: '',\n retryable: true,\n });\n return;\n }\n setActionError(undefined);\n void insertSessionBefore(workspaceId, activeDrag.sessionId, beforeSessionId).catch((error) => {\n setActionError(toWorktreeViewError(error));\n });\n };\n const openSessionRename = (sessionId, currentTitle) => {\n setSessionRenameTarget({ sessionId, currentTitle });\n setSessionRenameDraft(currentTitle);\n setSessionRenameError(undefined);\n };\n const closeSessionRename = () => {\n if (sessionRenamePending)\n return;\n setSessionRenameTarget(undefined);\n setSessionRenameError(undefined);\n };\n const confirmSessionRename = async () => {\n const target = sessionRenameTarget;\n const title = sessionRenameDraft.trim();\n if (target === undefined || title.length === 0 || sessionRenamePending)\n return;\n if (renameSession === undefined) {\n setSessionRenameError({\n code: 'SESSION_RENAME_UNAVAILABLE',\n message: '',\n retryable: true,\n });\n return;\n }\n setSessionRenamePending(true);\n setSessionRenameError(undefined);\n try {\n await renameSession(target.sessionId, title);\n setSessionRenameTarget(undefined);\n }\n catch (error) {\n setSessionRenameError(toNativeWorktreeViewError(error));\n }\n finally {\n setSessionRenamePending(false);\n }\n };\n const archiveWorktreeSession = async (sessionId) => {\n if (archiveSession === undefined)\n return;\n await runMutation(() => archiveSession(sessionId));\n };\n const toggleWorkspace = (workspaceId) => {\n setExpandedWorkspaces((current) => ({\n ...current,\n [workspaceId]: current[workspaceId] === false,\n }));\n };\n const toggleMain = (workspaceId) => {\n setExpandedMains((current) => ({\n ...current,\n [workspaceId]: current[workspaceId] === false,\n }));\n };\n const toggleWorktree = (worktreeId) => {\n setExpandedWorktrees((current) => ({\n ...current,\n [worktreeId]: current[worktreeId] === false,\n }));\n };\n const openWorktreeCreator = (workspace) => {\n const view = viewByWorkspace.get(workspace.workspaceId);\n const baseBranch = selectDefaultBaseBranch(view?.branches ?? []);\n const existingNames = [\n ...(view?.branches ?? []).map((branch) => branch.name),\n ...(view?.worktrees ?? []).map((worktree) => worktree.branch),\n ];\n setWorktreeModalWorkspaceId(workspace.workspaceId);\n setSelectedBranch(baseBranch);\n setNewBranch(createDefaultWorktreeName(existingNames));\n setActionError(undefined);\n };\n const submitWorktree = async () => {\n const worktreeName = newBranch.trim();\n if (manager === undefined ||\n modalWorkspace === undefined ||\n selectedBranch.length === 0 ||\n worktreeName.length === 0) {\n return;\n }\n const input = {\n workspaceId: modalWorkspace.workspaceId,\n branch: selectedBranch,\n newBranch: worktreeName,\n };\n setActionPending(true);\n setActionError(undefined);\n setPendingSessionBinding(undefined);\n try {\n const createdWorktree = await executeWorktreeAction(manager, {\n type: 'createWorktree',\n input,\n });\n if (createdWorktree === undefined) {\n throw {\n code: 'WORKTREE_RECORD_MISSING',\n message: '',\n retryable: true,\n };\n }\n setWorktreeModalWorkspaceId(undefined);\n if (createSessionCallback === undefined) {\n await refresh();\n setActionError({\n code: 'WORKTREE_CREATED_SESSION_UNAVAILABLE',\n message: '',\n retryable: true,\n });\n return;\n }\n const sessionInput = {\n workspaceId: createdWorktree.workspaceId,\n worktreeId: createdWorktree.worktreeId,\n cwd: createdWorktree.absolutePath,\n };\n try {\n await createSessionCallback(sessionInput);\n }\n catch (error) {\n if (error instanceof WorktreeSessionBindingError) {\n setPendingSessionBinding({ ...sessionInput, sessionId: error.sessionId });\n }\n throw error;\n }\n await refresh();\n }\n catch (error) {\n setActionError(toWorktreeViewError(error));\n }\n finally {\n setActionPending(false);\n }\n };\n const createSession = async (input) => {\n if (createSessionCallback === undefined) {\n setActionError({\n code: 'SESSION_CREATE_UNAVAILABLE',\n message: '',\n retryable: true,\n });\n return;\n }\n setActionPending(true);\n setActionError(undefined);\n setPendingSessionBinding(undefined);\n try {\n await createSessionCallback(input);\n await refresh();\n }\n catch (error) {\n if (error instanceof WorktreeSessionBindingError) {\n setPendingSessionBinding({ ...input, sessionId: error.sessionId });\n }\n setActionError(toWorktreeViewError(error));\n }\n finally {\n setActionPending(false);\n }\n };\n const retrySessionBinding = async () => {\n if (manager === undefined || pendingSessionBinding === undefined)\n return;\n setActionPending(true);\n setActionError(undefined);\n try {\n await manager.bindSession({\n workspaceId: pendingSessionBinding.workspaceId,\n worktreeId: pendingSessionBinding.worktreeId,\n sessionId: pendingSessionBinding.sessionId,\n });\n const sessionId = pendingSessionBinding.sessionId;\n setPendingSessionBinding(undefined);\n ensureSessionWorkspace?.(pendingSessionBinding.workspaceId, sessionId);\n await refresh();\n openSession(sessionId);\n }\n catch (error) {\n setActionError(toWorktreeViewError(error));\n }\n finally {\n setActionPending(false);\n }\n };\n const openWorkspaceSession = (workspaceId, sessionId) => {\n ensureSessionWorkspace?.(workspaceId, sessionId);\n openWorktreeSession({ open: openSession }, sessionId);\n };\n if (mode !== 'worktree')\n return null;\n const visibleWorkspaces = workspaces.items.filter((workspace) => workspaceMatches(workspace, viewByWorkspace.get(workspace.workspaceId), sessions, query));\n return (_jsxs(\"aside\", { ref: ref, className: styles.surface, \"data-worktree-surface\": true, \"data-collapsed\": collapsed || undefined, \"aria-label\": t('mode.navigation'), style: {\n width: `${width}px`,\n ...(bounds.ready\n ? { top: `${bounds.top}px`, height: `${bounds.height}px` }\n : { height: '0px', visibility: 'hidden' }),\n }, children: [_jsxs(\"div\", { className: styles.wideContent, children: [_jsxs(\"header\", { className: styles.header, children: [_jsx(\"span\", { className: styles.title, children: t('worktree.title') }), _jsx(\"button\", { type: \"button\", className: styles.closeButton, \"aria-label\": t('mode.exit'), onClick: () => {\n actions.setViewMode('workspace-session');\n }, children: _jsx(IconCloseOutline16, {}) })] }), _jsxs(\"div\", { className: styles.searchRow, children: [_jsx(\"span\", { className: styles.searchIcon, \"aria-hidden\": \"true\", children: _jsx(IconSearchOutline16, {}) }), _jsx(\"input\", { className: styles.searchInput, \"aria-label\": t('workspace.search'), placeholder: t('workspace.search'), value: searchQuery, onChange: (event) => {\n setSearchQuery(event.currentTarget.value);\n } }), _jsx(\"button\", { type: \"button\", className: styles.iconButton, \"aria-label\": t('workspace.add'), onClick: () => {\n if (createWorkspace !== undefined)\n void runMutation(createWorkspace);\n }, children: _jsx(IconPlusOutline16, {}) })] }), _jsxs(\"div\", { className: styles.content, tabIndex: 0, children: [actionError !== undefined && (_jsxs(\"div\", { className: styles.error, role: \"alert\", \"data-worktree-error\": true, children: [_jsx(\"p\", { className: styles.message, \"data-error\": \"true\", children: formatWorktreeViewError(actionError, t) }), pendingSessionBinding !== undefined && (_jsxs(\"div\", { className: styles.recoveryActions, children: [_jsx(\"button\", { type: \"button\", className: styles.actionButton, disabled: actionPending, onClick: () => {\n void retrySessionBinding();\n }, children: t('action.retryBinding') }), _jsx(\"button\", { type: \"button\", className: styles.actionButton, disabled: actionPending, onClick: () => {\n const sessionId = pendingSessionBinding.sessionId;\n setPendingSessionBinding(undefined);\n setActionError(undefined);\n openSession(sessionId);\n }, children: t('action.openCreatedSession') })] })), actionError.retryable && (_jsx(\"button\", { type: \"button\", className: styles.retryButton, onClick: () => {\n setActionError(undefined);\n void refresh();\n }, children: t('action.retry') }))] })), readState.status === 'loading' && (_jsx(\"p\", { className: styles.message, children: t('status.loading') })), readState.status === 'error' && readState.error !== undefined ? (_jsxs(\"div\", { className: styles.error, role: \"alert\", \"data-worktree-error\": true, children: [_jsx(\"p\", { className: styles.message, \"data-error\": \"true\", children: formatWorktreeViewError(readState.error, t) }), _jsx(\"button\", { type: \"button\", className: styles.retryButton, onClick: () => {\n void refresh();\n }, children: t('action.retry') })] })) : readState.status === 'ready' ? (_jsx(\"div\", { className: styles.workspaceList, children: visibleWorkspaces.length === 0 ? (_jsx(\"p\", { className: styles.empty, children: t('workspace.noMatches') })) : (visibleWorkspaces.map((workspace) => {\n const view = viewByWorkspace.get(workspace.workspaceId);\n const expanded = expandedWorkspaces[workspace.workspaceId] !== false;\n const workspaceMatchesQuery = includesText(workspace.title, query);\n const allWorkspaceSessionIds = filterArchivedSessionIds(workspaceSessionIds(workspaces, workspace.workspaceId, sessions.ids), archivedSessionIds);\n const bindings = view?.bindings ?? [];\n const boundSessionIds = new Set(bindings.map((binding) => binding.sessionId));\n const mainSessionIds = unboundSessionIds(allWorkspaceSessionIds, [\n ...boundSessionIds,\n ]);\n const visibleMainSessionIds = mainSessionIds.filter((sessionId) => workspaceMatchesQuery ||\n includesText(sessionLabel(sessionId, sessions), query));\n const mainExpanded = expandedMains[workspace.workspaceId] !== false;\n const mainGroupKey = `main:${workspace.workspaceId}`;\n const worktrees = view?.worktrees ?? [];\n return (_jsxs(\"section\", { className: styles.workspaceGroup, \"data-workspace-id\": workspace.workspaceId, children: [_jsx(WorktreeWorkspaceRow, { t: t, workspace: workspace, expanded: expanded, actionPending: actionPending, menuOpen: openWorkspaceMenuId === workspace.workspaceId, drag: {\n active: workspaceDrag !== undefined,\n marker: workspaceDrag?.over?.workspaceId === workspace.workspaceId\n ? workspaceDrag.over.half\n : null,\n start: () => {\n workspaceDropCommitted.current = false;\n setWorkspaceDrag({ workspaceId: workspace.workspaceId, over: null });\n },\n hover: (half) => {\n setWorkspaceDrag((current) => current === undefined\n ? current\n : {\n ...current,\n over: { workspaceId: workspace.workspaceId, half },\n });\n },\n drop: (half) => {\n if (workspaceDrag === undefined)\n return;\n commitWorkspaceDrag(workspaceDrag, {\n workspaceId: workspace.workspaceId,\n half,\n });\n },\n end: () => {\n if (workspaceDrag?.over !== null && workspaceDrag?.over !== undefined) {\n commitWorkspaceDrag(workspaceDrag, workspaceDrag.over);\n }\n else {\n setWorkspaceDrag(undefined);\n }\n workspaceDropCommitted.current = false;\n },\n }, onToggle: () => {\n toggleWorkspace(workspace.workspaceId);\n }, onCreateWorktree: () => {\n openWorktreeCreator(workspace);\n }, onRename: () => {\n openWorkspaceRename(workspace);\n }, onDelete: () => {\n openWorkspaceDelete(workspace);\n }, onMenuOpenChange: (open) => {\n setOpenWorkspaceMenuId(open ? workspace.workspaceId : undefined);\n } }), expanded && (_jsxs(\"div\", { className: styles.treeChildren, children: [_jsx(WorktreeGroupRow, { t: t, kind: \"main\", label: t('worktree.main'), expanded: mainExpanded, icon: _jsx(IconBranchOutline16, {}), workspaceTitle: workspace.title, onToggle: () => {\n toggleMain(workspace.workspaceId);\n }, onCreateSession: createMainSession === undefined\n ? undefined\n : () => {\n createMainSession(workspace.workspaceId);\n } }), mainExpanded && (_jsx(WorktreeSessionGroup, { t: t, groupKey: mainGroupKey, sessionIds: visibleMainSessionIds, workspaceId: workspace.workspaceId, expanded: expandedSessionGroups[mainGroupKey] === true, actionPending: actionPending, sessions: sessions, dragState: sessionDrag, onToggleExpanded: () => {\n setExpandedSessionGroups((current) => ({\n ...current,\n [mainGroupKey]: current[mainGroupKey] !== true,\n }));\n }, onStartDrag: (groupKey, sessionId) => {\n sessionDropCommitted.current = false;\n setSessionDrag({ groupKey, sessionId, over: null });\n }, onHoverDrag: (sessionId, half) => {\n setSessionDrag((current) => current === undefined\n ? current\n : { ...current, over: { sessionId, half } });\n }, onClearDrag: () => {\n setSessionDrag(undefined);\n }, onFinishDrag: () => {\n sessionDropCommitted.current = false;\n }, onCommitDrag: commitSessionDrag, onOpen: (sessionId) => {\n openWorktreeSession({ open: openSession }, sessionId);\n }, onRename: renameSession === undefined ? undefined : openSessionRename, onFork: forkSession, onArchive: archiveSession === undefined ? undefined : archiveWorktreeSession })), worktrees.length === 0 && (_jsx(\"p\", { className: styles.emptyNested, children: t('worktree.noWorktrees') })), worktrees.map((record) => {\n const worktreeSessionIds = filterArchivedSessionIds(bindingIdsFor(bindings, record.worktreeId).filter((sessionId) => sessions.ids.includes(sessionId)), archivedSessionIds);\n const worktreeMatchesQuery = workspaceMatchesQuery ||\n includesText(record.branch, query) ||\n includesText(record.absolutePath, query);\n if (query.length > 0 &&\n !worktreeMatchesQuery &&\n !worktreeSessionIds.some((sessionId) => includesText(sessionLabel(sessionId, sessions), query))) {\n return null;\n }\n const visibleWorktreeSessionIds = worktreeSessionIds.filter((sessionId) => worktreeMatchesQuery ||\n includesText(sessionLabel(sessionId, sessions), query));\n const worktreeGroupKey = `worktree:${record.worktreeId}`;\n const state = record.status === 'removed'\n ? 'warning'\n : record.health === 'repair'\n ? 'error'\n : 'done';\n const stateLabel = record.status === 'removed'\n ? t('worktree.detached')\n : record.health === 'repair'\n ? t('worktree.repair')\n : t('worktree.ready');\n const worktreeExpanded = expandedWorktrees[record.worktreeId] !== false;\n return (_jsxs(\"div\", { className: styles.worktreeGroup, \"data-worktree-id\": record.worktreeId, children: [_jsx(WorktreeGroupRow, { t: t, kind: \"worktree\", label: record.branch, expanded: worktreeExpanded, icon: _jsx(IconBranchOutline16, {}), workspaceTitle: workspace.title, state: state, stateLabel: stateLabel, onToggle: () => {\n toggleWorktree(record.worktreeId);\n }, onCreateSession: record.status === 'active'\n ? () => {\n void createSession({\n workspaceId: record.workspaceId,\n worktreeId: record.worktreeId,\n cwd: record.absolutePath,\n });\n }\n : undefined, menu: record.status === 'active'\n ? {\n open: openWorktreeMenuId === record.worktreeId,\n label: record.branch,\n disabled: actionPending,\n onOpenChange: (open) => {\n setOpenWorktreeMenuId(open ? record.worktreeId : undefined);\n },\n onRemove: () => {\n setWorktreeRemoval(record);\n setActionError(undefined);\n },\n }\n : undefined }), worktreeExpanded && (_jsx(WorktreeSessionGroup, { t: t, groupKey: worktreeGroupKey, sessionIds: visibleWorktreeSessionIds, workspaceId: workspace.workspaceId, expanded: expandedSessionGroups[worktreeGroupKey] === true, actionPending: actionPending, sessions: sessions, dragState: sessionDrag, onToggleExpanded: () => {\n setExpandedSessionGroups((current) => ({\n ...current,\n [worktreeGroupKey]: current[worktreeGroupKey] !== true,\n }));\n }, onStartDrag: (groupKey, sessionId) => {\n sessionDropCommitted.current = false;\n setSessionDrag({ groupKey, sessionId, over: null });\n }, onHoverDrag: (sessionId, half) => {\n setSessionDrag((current) => current === undefined\n ? current\n : { ...current, over: { sessionId, half } });\n }, onClearDrag: () => {\n setSessionDrag(undefined);\n }, onFinishDrag: () => {\n sessionDropCommitted.current = false;\n }, onCommitDrag: commitSessionDrag, onOpen: (sessionId) => {\n openWorkspaceSession(workspace.workspaceId, sessionId);\n }, onRename: renameSession === undefined ? undefined : openSessionRename, onFork: forkSession, onArchive: archiveSession === undefined\n ? undefined\n : archiveWorktreeSession }))] }, record.worktreeId));\n })] }))] }, workspace.workspaceId));\n })) })) : null] })] }), _jsx(\"div\", { className: styles.railContent, children: _jsx(\"button\", { type: \"button\", className: styles.railButton, \"aria-label\": t('mode.exit'), onClick: () => {\n actions.setViewMode('workspace-session');\n }, children: \"WT\" }) }), _jsxs(Modal, { open: sessionRenameTarget !== undefined, onClose: closeSessionRename, closeLabel: t('dialog.close'), title: t('session.rename'), footer: (_jsxs(_Fragment, { children: [_jsx(Button, { variant: \"outline\", disabled: sessionRenamePending, onClick: closeSessionRename, children: t('dialog.cancel') }), _jsx(Button, { variant: \"primary\", disabled: sessionRenamePending || sessionRenameDraft.trim().length === 0, onClick: () => {\n void confirmSessionRename();\n }, children: t('dialog.rename') })] })), children: [_jsx(Input, { className: styles.renameInput, value: sessionRenameDraft, \"aria-label\": t('session.name'), autoFocus: true, disabled: sessionRenamePending, onFocus: (event) => {\n event.currentTarget.select();\n }, onChange: (event) => {\n setSessionRenameDraft(event.currentTarget.value);\n setSessionRenameError(undefined);\n }, onKeyDown: (event) => {\n if (event.key === 'Enter' && !event.nativeEvent.isComposing) {\n event.preventDefault();\n void confirmSessionRename();\n }\n } }), sessionRenameError !== undefined && (_jsx(\"p\", { className: styles.renameError, role: \"alert\", children: formatWorktreeViewError(sessionRenameError, t) }))] }), workspaceRenameTarget !== undefined && (_jsxs(Modal, { open: workspaceRenameTarget !== undefined, onClose: closeWorkspaceRename, closeLabel: t('dialog.closeWorkspaceRename'), title: t('workspace.renameTitle'), footer: (_jsxs(_Fragment, { children: [_jsx(Button, { variant: \"outline\", disabled: workspaceRenamePending, onClick: closeWorkspaceRename, children: t('dialog.cancel') }), _jsx(Button, { variant: \"primary\", disabled: workspaceRenameBlocked, onClick: () => {\n void confirmWorkspaceRename();\n }, children: t('dialog.rename') })] })), children: [_jsx(Input, { className: styles.renameInput, value: workspaceRenameDraft, \"aria-label\": t('workspace.name'), autoFocus: true, disabled: workspaceRenamePending, onFocus: (event) => {\n event.currentTarget.select();\n }, onChange: (event) => {\n setWorkspaceRenameDraft(event.currentTarget.value);\n setWorkspaceRenameError(undefined);\n }, onKeyDown: (event) => {\n if (event.key === 'Enter' && !event.nativeEvent.isComposing) {\n event.preventDefault();\n void confirmWorkspaceRename();\n }\n } }), workspaceRenameDuplicate && (_jsx(\"p\", { className: styles.renameError, role: \"alert\", children: t('workspace.duplicate') })), workspaceRenameError !== undefined && (_jsx(\"p\", { className: styles.renameError, role: \"alert\", children: formatWorktreeViewError(workspaceRenameError, t) }))] })), workspaceDeleteTarget !== undefined && (_jsx(Modal, { open: workspaceDeleteTarget !== undefined, onClose: closeWorkspaceDelete, closeLabel: t('dialog.closeWorkspaceDelete'), title: t('workspace.deleteTitle'), description: t('workspace.deleteDescription', { name: workspaceDeleteTarget.title }), footer: (_jsxs(_Fragment, { children: [_jsx(Button, { variant: \"outline\", disabled: workspaceDeletePending, onClick: closeWorkspaceDelete, children: t('dialog.cancel') }), _jsx(Button, { variant: \"outline\", disabled: workspaceDeletePending, onClick: () => {\n void confirmWorkspaceDelete();\n }, children: t('dialog.delete') })] })), children: workspaceDeleteError !== undefined && (_jsx(\"p\", { className: styles.renameError, role: \"alert\", children: formatWorktreeViewError(workspaceDeleteError, t) })) })), worktreeModalWorkspaceId !== undefined && modalWorkspace !== undefined && (_jsxs(Modal, { open: worktreeModalWorkspaceId !== undefined, onClose: () => {\n if (actionPending)\n return;\n setWorktreeModalWorkspaceId(undefined);\n }, closeLabel: t('dialog.closeWorktreeCreate'), title: t('worktree.createTitle'), description: t('worktree.createDescription', { name: modalWorkspace.title }), footer: (_jsxs(_Fragment, { children: [_jsx(Button, { variant: \"outline\", disabled: actionPending, onClick: () => {\n setWorktreeModalWorkspaceId(undefined);\n }, children: t('dialog.cancel') }), _jsx(Button, { variant: \"primary\", disabled: actionPending ||\n selectedBranch.length === 0 ||\n newBranch.trim().length === 0, onClick: () => {\n void submitWorktree();\n }, children: t('worktree.create') })] })), children: [_jsxs(\"label\", { className: styles.modalField, children: [t('worktree.baseBranch'), _jsxs(\"select\", { className: styles.actionSelect, \"aria-label\": t('worktree.baseBranch'), value: selectedBranch, disabled: actionPending, onChange: (event) => {\n setSelectedBranch(event.currentTarget.value);\n }, children: [_jsx(\"option\", { value: \"\", children: t('worktree.noLocalBranch') }), (modalView?.branches ?? []).map((branch) => (_jsxs(\"option\", { value: branch.name, children: [branch.name, branch.isCurrent ? t('branch.current') : '', branch.checkedOut ? t('branch.checkedOut') : ''] }, branch.name)))] })] }), _jsxs(\"label\", { className: styles.modalField, children: [t('worktree.name'), _jsx(Input, { className: styles.renameInput, \"aria-label\": t('worktree.name'), value: newBranch, placeholder: \"dsh/12345678\", disabled: actionPending, onChange: (event) => {\n setNewBranch(event.currentTarget.value);\n } })] }), modalView?.branches.length === 0 && (_jsx(\"p\", { className: styles.empty, children: t('worktree.noBranches') }))] })), worktreeRemoval !== undefined && (_jsx(Modal, { open: worktreeRemoval !== undefined, onClose: () => {\n if (actionPending)\n return;\n setWorktreeRemoval(undefined);\n }, closeLabel: t('dialog.closeWorktreeRemove'), title: t('worktree.remove'), description: t('worktree.removeDescription', { name: worktreeRemoval.branch }), footer: (_jsxs(_Fragment, { children: [_jsx(Button, { variant: \"outline\", disabled: actionPending, onClick: () => {\n setWorktreeRemoval(undefined);\n }, children: t('dialog.cancel') }), _jsx(Button, { variant: \"primary\", disabled: actionPending, onClick: () => {\n if (manager === undefined)\n return;\n const target = worktreeRemoval;\n void runMutation(async () => {\n await executeWorktreeAction(manager, {\n type: 'removeWorktree',\n input: {\n workspaceId: target.workspaceId,\n worktreeId: target.worktreeId,\n },\n });\n setWorktreeRemoval(undefined);\n });\n }, children: t('worktree.remove') })] })) }))] }));\n}\n//# sourceMappingURL=WorktreeSurface.js.map","import { defineStore } from '@deepseek-ai/dsh-client-runtime/client';\nimport { WORKTREE_VIEW_MODE_STORAGE_KEY, } from './view-mode.js';\n/** Create one root-scoped, browser-local view-mode store for the two slot entries. */\nexport function createWorktreeViewStore() {\n return defineStore({\n init: () => ({ viewMode: 'workspace-session' }),\n persist: WORKTREE_VIEW_MODE_STORAGE_KEY,\n actions: {\n setViewMode: (draft, mode) => {\n draft.viewMode = mode;\n },\n },\n });\n}\n//# sourceMappingURL=view-mode-store.js.map","import { projectVirtualWorkspaceMembership, } from './view-mode.js';\nfunction normalizeBindings(bindings) {\n const bySession = new Map();\n for (const binding of bindings) {\n if (binding.workspaceId.length === 0 || binding.sessionId.length === 0)\n continue;\n bySession.set(binding.sessionId, binding);\n }\n return [...bySession.values()];\n}\nfunction sameWorkspaceItems(left, right) {\n if (left.items.length !== right.items.length)\n return false;\n return left.items.every((item, index) => {\n const other = right.items[index];\n if (item === other)\n return true;\n if (typeof item !== 'object' ||\n item === null ||\n typeof other !== 'object' ||\n other === null ||\n !('workspaceId' in item) ||\n !('workspaceId' in other) ||\n !('sessionIds' in item) ||\n !('sessionIds' in other)) {\n return false;\n }\n const leftSessionIds = item.sessionIds;\n const rightSessionIds = other.sessionIds;\n return (item.workspaceId === other.workspaceId &&\n Array.isArray(leftSessionIds) &&\n Array.isArray(rightSessionIds) &&\n leftSessionIds.length === rightSessionIds.length &&\n leftSessionIds.every((sessionId, sessionIndex) => sessionId === rightSessionIds[sessionIndex]));\n });\n}\n/**\n * Maintains a re-playable in-memory overlay over DSH's Workspace list. Native\n * refreshes are observed and the current sidecar bindings are applied again;\n * no DSH Host mutation or persistence is involved.\n */\nexport function createVirtualWorkspaceMembership(list) {\n let bindings = [];\n let disposed = false;\n let applying = false;\n const apply = (nextBindings) => {\n const current = list.getSnapshot();\n const next = projectVirtualWorkspaceMembership(current, bindings, nextBindings);\n if (sameWorkspaceItems(current, next))\n return;\n applying = true;\n try {\n list.set(next);\n }\n finally {\n applying = false;\n }\n };\n const replay = () => {\n if (disposed || applying)\n return;\n apply(bindings);\n };\n const unsubscribe = list.subscribe(replay);\n const sync = (nextBindings) => {\n if (disposed)\n return;\n const normalized = normalizeBindings(nextBindings);\n apply(normalized);\n bindings = normalized;\n };\n return {\n ensure(binding) {\n if (disposed)\n return;\n if (bindings.some((current) => current.workspaceId === binding.workspaceId && current.sessionId === binding.sessionId)) {\n return;\n }\n sync([...bindings.filter((current) => current.sessionId !== binding.sessionId), binding]);\n },\n sync,\n removeSession(sessionId) {\n sync(bindings.filter((binding) => binding.sessionId !== sessionId));\n },\n dispose() {\n if (disposed)\n return;\n apply([]);\n bindings = [];\n disposed = true;\n unsubscribe();\n },\n };\n}\n//# sourceMappingURL=virtual-workspace-membership.js.map","import { WORKTREE_NS, en, zh } from './locales.js';\nimport { createWorktreeConnectionAdapter } from './worktree-connection.js';\nimport { WorktreeModeAction } from './WorktreeModeAction.js';\nimport { WorktreeSurface } from './WorktreeSurface.js';\nimport { createWorktreeViewStore } from './view-mode-store.js';\nimport { createVirtualWorkspaceMembership, } from './virtual-workspace-membership.js';\nimport { createSessionForWorktree } from './worktree-view.js';\nexport { WORKTREE_CONNECTION_CHANNEL, WORKTREE_CONNECTION_ENDPOINTS, WorktreeConnectionError, createWorktreeConnectionAdapter, } from './worktree-connection.js';\n/** Required DSH Client services; Connection is the sole Worktree wire dependency. */\nexport const inject = ['connection', 'locale', 'slots', 'sessions', 'workspaces'];\n/**\n * DSH Client entry. The adapter is composed once per plugin fiber and is disposed\n * with that fiber, so slot consumers share one manager and one request lifetime.\n */\nexport function apply(ctx) {\n ctx.effect(() => ctx.locale.register(WORKTREE_NS, { zh, en }), 'clutch-dsh-worktree: locale dictionaries');\n const manager = createWorktreeConnectionAdapter(ctx.connection.rpc);\n const sessions = ctx.sessions;\n const virtualWorkspaceMembership = createVirtualWorkspaceMembership(ctx.workspaces.list);\n ctx.effect(() => () => manager.dispose(), 'clutch-dsh-worktree: connection cleanup');\n ctx.effect(() => () => virtualWorkspaceMembership.dispose(), 'clutch-dsh-worktree: Workspace membership cleanup');\n const viewStore = createWorktreeViewStore();\n const ensureSessionWorkspace = (workspaceId, sessionId) => {\n virtualWorkspaceMembership.ensure({ workspaceId, sessionId });\n };\n const syncSessionWorkspaces = (bindings) => {\n virtualWorkspaceMembership.sync(bindings);\n };\n ctx.slots.inject('sidebar.footer.action', () => ctx.slots.register({\n name: 'sidebar.footer.action',\n id: 'clutch-dsh-worktree-mode-action',\n store: viewStore,\n locale: WORKTREE_NS,\n inject: () => ({ available: true }),\n }, WorktreeModeAction));\n ctx.slots.inject('shell.overlay', () => ctx.slots.register({\n name: 'shell.overlay',\n id: 'clutch-dsh-worktree-navigation',\n store: viewStore,\n locale: WORKTREE_NS,\n inject: () => ({\n available: true,\n manager,\n createWorkspace: async () => {\n const workspacePath = await ctx.workspaces.pickDirectory();\n if (workspacePath !== null)\n await ctx.workspaces.create({ path: workspacePath });\n },\n createSessionForWorktree: (input) => createSessionForWorktree({\n ...input,\n createSession: (sessionInput) => sessions.create(sessionInput),\n manager,\n beforeOpen: (sessionId) => {\n ensureSessionWorkspace(input.workspaceId, sessionId);\n },\n openSession: (sessionId) => {\n ctx.sessions.open(sessionId);\n },\n }),\n createMainSession: (workspaceId) => {\n ctx.workspaces.startSession(workspaceId);\n },\n renameWorkspace: async (workspaceId, title) => {\n await ctx.workspaces.rename(workspaceId, title);\n },\n deleteWorkspace: async (workspaceId) => {\n await ctx.workspaces.delete(workspaceId);\n },\n insertWorkspaceBefore: async (workspaceId, beforeWorkspaceId) => {\n await ctx.workspaces.insertBefore(workspaceId, beforeWorkspaceId);\n },\n insertSessionBefore: async (workspaceId, sessionId, beforeSessionId) => {\n await ctx.workspaces.insertSessionBefore(workspaceId, sessionId, beforeSessionId);\n },\n renameSession: async (sessionId, title) => {\n const session = ctx.sessions.binding(sessionId)?.session;\n if (session === undefined)\n throw new Error(`unknown session \"${sessionId}\"`);\n const result = await session.rename(title);\n if (!result.ok)\n throw new Error(result.error.message);\n },\n forkSession: (sessionId) => {\n void ctx.sessions.fork({\n sessionId: sessionId,\n increaseTitle: true,\n })\n .then((childId) => {\n ctx.sessions.open(childId);\n })\n .catch(() => {\n // Fork failure leaves the current Session and Worktree projection unchanged.\n });\n },\n archiveSession: (sessionId) => ctx.workspaces.archiveSession(sessionId),\n ensureSessionWorkspace,\n syncSessionWorkspaces,\n openSession: (sessionId) => {\n ctx.sessions.open(sessionId);\n },\n }),\n }, WorktreeSurface));\n}\n//# sourceMappingURL=entry.js.map"],"mappings":"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"}
|
package/package.json
CHANGED