dsh-coding-sidebar 1.0.7 → 1.0.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/lib/client-editor.js +436 -227
- package/lib/client-registry.js +627 -7391
- package/lib/client-terminal.js +234 -182
- package/lib/client.js +634 -7398
- package/lib/index.js +367 -67
- package/lib/types/agent-pty.d.ts +62 -4
- package/lib/types/bundle-route.d.ts +1 -1
- package/lib/types/client/EditorHost.d.ts +1 -1
- package/lib/types/client/FileTree.d.ts +2 -2
- package/lib/types/client/TreePanel.d.ts +1 -1
- package/lib/types/client/chunk-loader.d.ts +1 -1
- package/lib/types/client/chunks/locale.d.ts +3 -0
- package/lib/types/client/conversation-draft.d.ts +85 -4
- package/lib/types/client/locales.d.ts +1 -20
- package/lib/types/client/selection-popup.d.ts +58 -0
- package/lib/types/client/service.d.ts +1 -1
- package/lib/types/client/terminal-font.d.ts +25 -2
- package/lib/types/context-types.d.ts +3 -1
- package/lib/types/index.d.ts +9 -0
- package/lib/types/prefs-shared.d.ts +7 -5
- package/lib/types/pty-manager.d.ts +53 -0
- package/lib/types/wire.d.ts +6 -2
- package/package.json +1 -1
- package/src/agent-pty.ts +221 -33
- package/src/bundle-route.ts +1 -1
- package/src/client/EditorHost.tsx +1 -1
- package/src/client/FileTree.tsx +4 -4
- package/src/client/Sidebar.tsx +41 -22
- package/src/client/TerminalView.tsx +13 -0
- package/src/client/TextEditor.tsx +27 -45
- package/src/client/TreePanel.tsx +16 -1
- package/src/client/chunk-loader.ts +1 -1
- package/src/client/chunks/locale.tsx +60 -0
- package/src/client/conversation-draft.ts +233 -7
- package/src/client/index.tsx +19 -8
- package/src/client/locales-ar.ts +5 -4
- package/src/client/locales-de.ts +5 -4
- package/src/client/locales-fr.ts +5 -4
- package/src/client/locales-hi.ts +5 -4
- package/src/client/locales-id.ts +5 -4
- package/src/client/locales-it.ts +5 -4
- package/src/client/locales-ja.ts +5 -4
- package/src/client/locales-ko.ts +5 -4
- package/src/client/locales-nl.ts +5 -4
- package/src/client/locales-pl.ts +5 -4
- package/src/client/locales-pt.ts +5 -4
- package/src/client/locales-ru.ts +5 -4
- package/src/client/locales-sv.ts +5 -4
- package/src/client/locales-th.ts +5 -4
- package/src/client/locales-tr.ts +5 -4
- package/src/client/locales-vi.ts +5 -4
- package/src/client/locales-zh-HK.ts +5 -4
- package/src/client/locales-zh-MO.ts +5 -4
- package/src/client/locales-zh-TW.ts +5 -4
- package/src/client/locales.ts +17 -51
- package/src/client/selection-popup.ts +155 -0
- package/src/client/service.ts +1 -1
- package/src/client/state.ts +14 -7
- package/src/client/terminal-font.ts +34 -3
- package/src/context-types.ts +3 -2
- package/src/git.ts +17 -1
- package/src/index.ts +39 -6
- package/src/open-external.ts +3 -4
- package/src/prefs-shared.ts +7 -5
- package/src/pty-manager.ts +176 -5
- package/src/sidechat-routes.ts +13 -1
- package/src/tools.ts +24 -6
- package/src/wire.ts +3 -0
package/lib/client-terminal.js
CHANGED
|
@@ -7363,6 +7363,7 @@ globalThis.__dshChunks__["terminal"] = (require) => {
|
|
|
7363
7363
|
terminalDepsFailed: "终端依赖 node-pty 加载失败",
|
|
7364
7364
|
terminalDepsHint: "在 DSH 所在环境的终端或 cmd 中执行以下命令修复,然后点重试(node-pty 与 DSH 核心保持同一版本):",
|
|
7365
7365
|
terminalDepsProfile: "(检测到 profile:{profile})",
|
|
7366
|
+
terminalShellNotFound: "未找到配置的 Shell:{name},请到 设置 → 侧边卡片 → 终端 检查 Shell 路径",
|
|
7366
7367
|
refresh: "刷新",
|
|
7367
7368
|
refreshUnsavedConfirm: "文件已在磁盘更新,刷新将丢弃未保存编辑。继续吗?",
|
|
7368
7369
|
save: "保存",
|
|
@@ -7486,10 +7487,10 @@ globalThis.__dshChunks__["terminal"] = (require) => {
|
|
|
7486
7487
|
settingsConflict: "设置已被其他窗口修改,请重试",
|
|
7487
7488
|
binaryNoPreview: "此文件类型不支持预览",
|
|
7488
7489
|
downloadToView: "下载查看",
|
|
7489
|
-
settingsSubagentTitle: "
|
|
7490
|
-
settingsSubagentDesc: "
|
|
7491
|
-
settingsJobsTitle: "
|
|
7492
|
-
settingsJobsDesc: "
|
|
7490
|
+
settingsSubagentTitle: "检测到子代理时自动激活任务管理页",
|
|
7491
|
+
settingsSubagentDesc: "当前会话产生新的子代理时,自动激活任务管理页;宽屏同时展开侧边栏,窄屏不强制展开全屏抽屉;关闭后需手动打开",
|
|
7492
|
+
settingsJobsTitle: "有新后台任务时自动激活后台任务页",
|
|
7493
|
+
settingsJobsDesc: "当前会话出现新的后台任务时,自动激活后台任务页(每个新任务都会触发);宽屏同时展开侧边栏,窄屏不强制展开全屏抽屉;关闭后需手动打开",
|
|
7493
7494
|
settingsToolsTitle: "为模型注入终端工具",
|
|
7494
7495
|
settingsToolsDesc: "开启后,模型可通过 terminal_create 等 8 个工具创建并操作侧边栏终端(默认关闭)",
|
|
7495
7496
|
settingsFontFamilyTitle: "终端字体",
|
|
@@ -7698,6 +7699,7 @@ globalThis.__dshChunks__["terminal"] = (require) => {
|
|
|
7698
7699
|
terminalDepsFailed: "Terminal dependency node-pty failed to load",
|
|
7699
7700
|
terminalDepsHint: "Run the command below in a terminal or cmd on the DSH machine to repair it, then retry (node-pty stays in sync with the DSH core version):",
|
|
7700
7701
|
terminalDepsProfile: " (detected profile: {profile})",
|
|
7702
|
+
terminalShellNotFound: "Configured shell not found: {name} — check the shell path under Settings → Side card → Terminal",
|
|
7701
7703
|
refresh: "Refresh",
|
|
7702
7704
|
refreshUnsavedConfirm: "The file changed on disk. Refreshing will discard unsaved edits. Continue?",
|
|
7703
7705
|
save: "Save",
|
|
@@ -7821,10 +7823,10 @@ globalThis.__dshChunks__["terminal"] = (require) => {
|
|
|
7821
7823
|
settingsConflict: "The setting changed in another window — please retry",
|
|
7822
7824
|
binaryNoPreview: "This file type cannot be previewed",
|
|
7823
7825
|
downloadToView: "Download to view",
|
|
7824
|
-
settingsSubagentTitle: "Auto-
|
|
7825
|
-
settingsSubagentDesc: "
|
|
7826
|
-
settingsJobsTitle: "Auto-
|
|
7827
|
-
settingsJobsDesc: "
|
|
7826
|
+
settingsSubagentTitle: "Auto-activate the Tasks page when a subagent appears",
|
|
7827
|
+
settingsSubagentDesc: "Activate the Tasks page when the current conversation spawns a new subagent; on wide screens the side card expands with it, narrow screens never force the full-screen drawer; turn off to open it manually",
|
|
7828
|
+
settingsJobsTitle: "Auto-activate the Jobs page on a new background job",
|
|
7829
|
+
settingsJobsDesc: "Activate the Jobs page whenever a new background job appears for the current conversation (every new job triggers); on wide screens the side card expands with it, narrow screens never force the full-screen drawer; turn off to open it manually",
|
|
7828
7830
|
settingsToolsTitle: "Inject terminal tools for the model",
|
|
7829
7831
|
settingsToolsDesc: "When enabled, the model can create and drive sidebar terminals through the 8 terminal_* tools (off by default)",
|
|
7830
7832
|
settingsFontFamilyTitle: "Terminal font family",
|
|
@@ -8329,6 +8331,16 @@ globalThis.__dshChunks__["terminal"] = (require) => {
|
|
|
8329
8331
|
observer.disconnect();
|
|
8330
8332
|
};
|
|
8331
8333
|
}
|
|
8334
|
+
//#endregion
|
|
8335
|
+
//#region src/client/terminal-font.ts
|
|
8336
|
+
/**
|
|
8337
|
+
* Terminal font resolution: the user's custom font prefs (SidebarPrefs,
|
|
8338
|
+
* configured under the terminal card's secondary settings) turned into the
|
|
8339
|
+
* xterm options. Kept as a pure module (no DOM, no xterm) so the fallback
|
|
8340
|
+
* chain and clamping are unit-testable without mounting a terminal.
|
|
8341
|
+
*/
|
|
8342
|
+
/** The built-in fallback stack when neither the user nor the theme sets one. */
|
|
8343
|
+
const DEFAULT_TERMINAL_FONT_FAMILY = "\"SF Mono\", Menlo, Consolas, \"Liberation Mono\", monospace";
|
|
8332
8344
|
/**
|
|
8333
8345
|
* Icon fonts appended to whichever base stack wins, so shell prompts that
|
|
8334
8346
|
* draw glyphs from the Nerd Font Private Use Areas resolve to a real glyph
|
|
@@ -8520,11 +8532,41 @@ globalThis.__dshChunks__["terminal"] = (require) => {
|
|
|
8520
8532
|
return trimmed;
|
|
8521
8533
|
}
|
|
8522
8534
|
/**
|
|
8535
|
+
* Guarantee the stack ends in a generic family, so a font the browser cannot
|
|
8536
|
+
* resolve degrades to a monospace one.
|
|
8537
|
+
*
|
|
8538
|
+
* Without this a stack of unresolvable names (a misspelled family, or one only
|
|
8539
|
+
* installed on the machine running the shell rather than the one running the
|
|
8540
|
+
* browser) falls through to the browser's *standard* font, which is
|
|
8541
|
+
* proportional — xterm then measures its cell from a proportional advance and
|
|
8542
|
+
* the whole grid breaks, rather than merely losing the requested typeface.
|
|
8543
|
+
*
|
|
8544
|
+
* This does not sniff whether the named families exist (an explicit non-goal
|
|
8545
|
+
* of the terminal font design): it only terminates the stack. A stack that
|
|
8546
|
+
* already names a generic family is returned untouched, so a user who
|
|
8547
|
+
* deliberately wrote one keeps it. Generics are matched unquoted only — a
|
|
8548
|
+
* quoted `"monospace"` is a family *name*, not the keyword.
|
|
8549
|
+
*
|
|
8550
|
+
* @param stack - the resolved font-family value.
|
|
8551
|
+
* @returns the stack, ending in a generic family.
|
|
8552
|
+
*/
|
|
8553
|
+
function withMonospaceFallback(stack) {
|
|
8554
|
+
const families = splitFamilies(stack);
|
|
8555
|
+
if (families.length === 0) return DEFAULT_TERMINAL_FONT_FAMILY;
|
|
8556
|
+
const only = families.length === 1 ? families[0] : void 0;
|
|
8557
|
+
if (only !== void 0 && CSS_WIDE_KEYWORDS.has(only.toLowerCase())) return DEFAULT_TERMINAL_FONT_FAMILY;
|
|
8558
|
+
if (families.some((family) => GENERIC_FAMILIES.has(family.toLowerCase()))) return families.join(", ");
|
|
8559
|
+
return `${families.join(", ")}, monospace`;
|
|
8560
|
+
}
|
|
8561
|
+
/**
|
|
8523
8562
|
* Resolve the xterm font options for the given prefs.
|
|
8524
8563
|
*
|
|
8525
8564
|
* The base family keeps its existing precedence — user pref > theme code
|
|
8526
|
-
* font > built-in stack
|
|
8527
|
-
*
|
|
8565
|
+
* font > built-in stack. {@link withMonospaceFallback} then terminates the
|
|
8566
|
+
* stack with a generic family so an unresolvable name degrades to a
|
|
8567
|
+
* monospace instead of the proportional standard font, and finally
|
|
8568
|
+
* {@link withIconFontFallbacks} tops it up so prompt icons resolve
|
|
8569
|
+
* regardless of which base won.
|
|
8528
8570
|
*
|
|
8529
8571
|
* @param prefs - the current side card preferences.
|
|
8530
8572
|
* @param themeFontFamily - the app's theme code font (`--ds-font-family-code`
|
|
@@ -8533,7 +8575,7 @@ globalThis.__dshChunks__["terminal"] = (require) => {
|
|
|
8533
8575
|
*/
|
|
8534
8576
|
function resolveTerminalFont(prefs, themeFontFamily) {
|
|
8535
8577
|
return {
|
|
8536
|
-
fontFamily: withIconFontFallbacks(usableBase(prefs.terminalFontFamily) || usableBase(themeFontFamily) || "\"SF Mono\", Menlo, Consolas, \"Liberation Mono\", monospace"),
|
|
8578
|
+
fontFamily: withIconFontFallbacks(withMonospaceFallback(usableBase(prefs.terminalFontFamily) || usableBase(themeFontFamily) || "\"SF Mono\", Menlo, Consolas, \"Liberation Mono\", monospace")),
|
|
8537
8579
|
fontSize: clampTerminalFontSize(prefs.terminalFontSize)
|
|
8538
8580
|
};
|
|
8539
8581
|
}
|
|
@@ -8711,207 +8753,207 @@ globalThis.__dshChunks__["terminal"] = (require) => {
|
|
|
8711
8753
|
document.head.appendChild(tag);
|
|
8712
8754
|
}
|
|
8713
8755
|
var sidebar_module_css_default = {
|
|
8714
|
-
"
|
|
8715
|
-
"
|
|
8716
|
-
"
|
|
8756
|
+
"floatTitle": "S5HVoW_floatTitle",
|
|
8757
|
+
"tabBar": "S5HVoW_tabBar",
|
|
8758
|
+
"editorBanner": "S5HVoW_editorBanner",
|
|
8759
|
+
"openWithPin": "S5HVoW_openWithPin",
|
|
8760
|
+
"terminalRepairCommand": "S5HVoW_terminalRepairCommand",
|
|
8761
|
+
"editorCm": "S5HVoW_editorCm",
|
|
8762
|
+
"gitPlaceholder": "S5HVoW_gitPlaceholder",
|
|
8763
|
+
"gitCommitInput": "S5HVoW_gitCommitInput",
|
|
8764
|
+
"gitCommit": "S5HVoW_gitCommit",
|
|
8765
|
+
"editorBody": "S5HVoW_editorBody",
|
|
8766
|
+
"browserBlocked": "S5HVoW_browserBlocked",
|
|
8767
|
+
"tabBarPlus": "S5HVoW_tabBarPlus",
|
|
8768
|
+
"gitDiffTabTitle": "S5HVoW_gitDiffTabTitle",
|
|
8769
|
+
"editorTreeResize": "S5HVoW_editorTreeResize",
|
|
8770
|
+
"producedLabel": "S5HVoW_producedLabel",
|
|
8771
|
+
"sandboxStatus": "S5HVoW_sandboxStatus",
|
|
8772
|
+
"dropLeft": "S5HVoW_dropLeft",
|
|
8773
|
+
"splitCol": "S5HVoW_splitCol",
|
|
8774
|
+
"tabClose": "S5HVoW_tabClose",
|
|
8775
|
+
"editorTreeToggleActive": "S5HVoW_editorTreeToggleActive",
|
|
8776
|
+
"editorSearchInput": "S5HVoW_editorSearchInput",
|
|
8777
|
+
"divider": "S5HVoW_divider",
|
|
8778
|
+
"terminal": "S5HVoW_terminal",
|
|
8779
|
+
"gitHeader": "S5HVoW_gitHeader",
|
|
8780
|
+
"gitWorktreeLabel": "S5HVoW_gitWorktreeLabel",
|
|
8781
|
+
"gitBadge": "S5HVoW_gitBadge",
|
|
8782
|
+
"editorBinaryNotice": "S5HVoW_editorBinaryNotice",
|
|
8717
8783
|
"splitRow": "S5HVoW_splitRow",
|
|
8718
|
-
"terminalDepsNote": "S5HVoW_terminalDepsNote",
|
|
8719
|
-
"explorerRoot": "S5HVoW_explorerRoot",
|
|
8720
|
-
"floatDropHintLabel": "S5HVoW_floatDropHintLabel",
|
|
8721
|
-
"explorerBody": "S5HVoW_explorerBody",
|
|
8722
|
-
"uploadOverlayTitle": "S5HVoW_uploadOverlayTitle",
|
|
8723
|
-
"browserBlockedActions": "S5HVoW_browserBlockedActions",
|
|
8724
8784
|
"explorerBroken": "S5HVoW_explorerBroken",
|
|
8725
|
-
"
|
|
8726
|
-
"
|
|
8727
|
-
"
|
|
8728
|
-
"dropDown": "S5HVoW_dropDown",
|
|
8785
|
+
"uploadOverlay": "S5HVoW_uploadOverlay",
|
|
8786
|
+
"uploadDropZone": "S5HVoW_uploadDropZone",
|
|
8787
|
+
"selectionPopup": "S5HVoW_selectionPopup",
|
|
8729
8788
|
"gitDiffFileTag": "S5HVoW_gitDiffFileTag",
|
|
8730
|
-
"
|
|
8731
|
-
"
|
|
8789
|
+
"tabTitle": "S5HVoW_tabTitle",
|
|
8790
|
+
"gitDiffHunkHeader": "S5HVoW_gitDiffHunkHeader",
|
|
8732
8791
|
"openWithLabel": "S5HVoW_openWithLabel",
|
|
8733
|
-
"
|
|
8734
|
-
"browserLiveCanvas": "S5HVoW_browserLiveCanvas",
|
|
8735
|
-
"workbench": "S5HVoW_workbench",
|
|
8736
|
-
"pinnedTab": "S5HVoW_pinnedTab",
|
|
8737
|
-
"dropLeft": "S5HVoW_dropLeft",
|
|
8738
|
-
"dirtyDot": "S5HVoW_dirtyDot",
|
|
8792
|
+
"tabBarDrop": "S5HVoW_tabBarDrop",
|
|
8739
8793
|
"editorTreeSearch": "S5HVoW_editorTreeSearch",
|
|
8740
|
-
"tab": "S5HVoW_tab",
|
|
8741
|
-
"editorTreeDock": "S5HVoW_editorTreeDock",
|
|
8742
|
-
"editorSearchInput": "S5HVoW_editorSearchInput",
|
|
8743
|
-
"gitLogHash": "S5HVoW_gitLogHash",
|
|
8744
|
-
"gitRow": "S5HVoW_gitRow",
|
|
8745
|
-
"gitLogMeta": "S5HVoW_gitLogMeta",
|
|
8746
8794
|
"producedRow": "S5HVoW_producedRow",
|
|
8795
|
+
"gitDiffAdd": "S5HVoW_gitDiffAdd",
|
|
8796
|
+
"toggleCluster": "S5HVoW_toggleCluster",
|
|
8797
|
+
"dropUp": "S5HVoW_dropUp",
|
|
8747
8798
|
"explorerCopied": "S5HVoW_explorerCopied",
|
|
8748
|
-
"
|
|
8749
|
-
"
|
|
8750
|
-
"
|
|
8751
|
-
"
|
|
8752
|
-
"
|
|
8753
|
-
"
|
|
8754
|
-
"gitLogSubject": "S5HVoW_gitLogSubject",
|
|
8755
|
-
"uploadOverlayProgress": "S5HVoW_uploadOverlayProgress",
|
|
8799
|
+
"dsh-toc-flash": "S5HVoW_dsh-toc-flash",
|
|
8800
|
+
"uploadOverlayStatus": "S5HVoW_uploadOverlayStatus",
|
|
8801
|
+
"dsh-row-in": "S5HVoW_dsh-row-in",
|
|
8802
|
+
"floatDropHintLabel": "S5HVoW_floatDropHintLabel",
|
|
8803
|
+
"explorerRowRevealed": "S5HVoW_explorerRowRevealed",
|
|
8804
|
+
"sandboxStatusOn": "S5HVoW_sandboxStatusOn",
|
|
8756
8805
|
"sandboxDot": "S5HVoW_sandboxDot",
|
|
8757
|
-
"
|
|
8806
|
+
"uploadOverlayCancel": "S5HVoW_uploadOverlayCancel",
|
|
8807
|
+
"uploadDropChatHint": "S5HVoW_uploadDropChatHint",
|
|
8808
|
+
"uploadDropZoneText": "S5HVoW_uploadDropZoneText",
|
|
8809
|
+
"sandboxStatusOff": "S5HVoW_sandboxStatusOff",
|
|
8758
8810
|
"paneEmptyCards": "S5HVoW_paneEmptyCards",
|
|
8759
|
-
"terminalWrap": "S5HVoW_terminalWrap",
|
|
8760
|
-
"gitDiffFileChevron": "S5HVoW_gitDiffFileChevron",
|
|
8761
|
-
"gitSectionHeader": "S5HVoW_gitSectionHeader",
|
|
8762
8811
|
"explorerName": "S5HVoW_explorerName",
|
|
8763
|
-
"editorPlaceholder": "S5HVoW_editorPlaceholder",
|
|
8764
|
-
"floatWindowDragging": "S5HVoW_floatWindowDragging",
|
|
8765
|
-
"editorTreePanelFull": "S5HVoW_editorTreePanelFull",
|
|
8766
|
-
"terminalDepsCommandRow": "S5HVoW_terminalDepsCommandRow",
|
|
8767
|
-
"uploadDropZoneText": "S5HVoW_uploadDropZoneText",
|
|
8768
|
-
"orphanedType": "S5HVoW_orphanedType",
|
|
8769
|
-
"terminalBanner": "S5HVoW_terminalBanner",
|
|
8770
|
-
"explorer": "S5HVoW_explorer",
|
|
8771
|
-
"gitDiffFileChevronExpanded": "S5HVoW_gitDiffFileChevronExpanded",
|
|
8772
|
-
"producedChip": "S5HVoW_producedChip",
|
|
8773
|
-
"editor": "S5HVoW_editor",
|
|
8774
|
-
"gitCommit": "S5HVoW_gitCommit",
|
|
8775
|
-
"gitDiffMetaText": "S5HVoW_gitDiffMetaText",
|
|
8776
|
-
"gitBadge": "S5HVoW_gitBadge",
|
|
8777
|
-
"paneTabHidden": "S5HVoW_paneTabHidden",
|
|
8778
|
-
"dropOverlay": "S5HVoW_dropOverlay",
|
|
8779
|
-
"editorStatusError": "S5HVoW_editorStatusError",
|
|
8780
|
-
"splitChild": "S5HVoW_splitChild",
|
|
8781
|
-
"tabClose": "S5HVoW_tabClose",
|
|
8782
|
-
"browserBlockedButton": "S5HVoW_browserBlockedButton",
|
|
8783
8812
|
"gitDiffTab": "S5HVoW_gitDiffTab",
|
|
8784
|
-
"
|
|
8785
|
-
"
|
|
8786
|
-
"
|
|
8787
|
-
"
|
|
8788
|
-
"
|
|
8789
|
-
"
|
|
8790
|
-
"
|
|
8791
|
-
"
|
|
8792
|
-
"
|
|
8793
|
-
"
|
|
8794
|
-
"
|
|
8795
|
-
"
|
|
8796
|
-
"
|
|
8797
|
-
"
|
|
8798
|
-
"
|
|
8799
|
-
"
|
|
8800
|
-
"
|
|
8801
|
-
"
|
|
8802
|
-
"producedMore": "S5HVoW_producedMore",
|
|
8803
|
-
"gitError": "S5HVoW_gitError",
|
|
8804
|
-
"panelResizeActive": "S5HVoW_panelResizeActive",
|
|
8805
|
-
"panel": "S5HVoW_panel",
|
|
8806
|
-
"tabBarDrop": "S5HVoW_tabBarDrop",
|
|
8807
|
-
"gitRowMain": "S5HVoW_gitRowMain",
|
|
8808
|
-
"editorMain": "S5HVoW_editorMain",
|
|
8809
|
-
"floatClose": "S5HVoW_floatClose",
|
|
8810
|
-
"tabTitle": "S5HVoW_tabTitle",
|
|
8813
|
+
"pane": "S5HVoW_pane",
|
|
8814
|
+
"gitDiffFileChevronExpanded": "S5HVoW_gitDiffFileChevronExpanded",
|
|
8815
|
+
"terminalBanner": "S5HVoW_terminalBanner",
|
|
8816
|
+
"gitConfirmDesc": "S5HVoW_gitConfirmDesc",
|
|
8817
|
+
"gitLogRow": "S5HVoW_gitLogRow",
|
|
8818
|
+
"gitLogRef": "S5HVoW_gitLogRef",
|
|
8819
|
+
"editorHeader": "S5HVoW_editorHeader",
|
|
8820
|
+
"gitLogMeta": "S5HVoW_gitLogMeta",
|
|
8821
|
+
"terminalDepsNote": "S5HVoW_terminalDepsNote",
|
|
8822
|
+
"gitDiffCode": "S5HVoW_gitDiffCode",
|
|
8823
|
+
"gitLogMore": "S5HVoW_gitLogMore",
|
|
8824
|
+
"browserLiveCanvas": "S5HVoW_browserLiveCanvas",
|
|
8825
|
+
"editorError": "S5HVoW_editorError",
|
|
8826
|
+
"gitLogSubject": "S5HVoW_gitLogSubject",
|
|
8827
|
+
"paneTab": "S5HVoW_paneTab",
|
|
8828
|
+
"editorTreeDock": "S5HVoW_editorTreeDock",
|
|
8829
|
+
"editorTreePanel": "S5HVoW_editorTreePanel",
|
|
8830
|
+
"browserMessage": "S5HVoW_browserMessage",
|
|
8811
8831
|
"explorerRow": "S5HVoW_explorerRow",
|
|
8832
|
+
"gitDiffNum": "S5HVoW_gitDiffNum",
|
|
8833
|
+
"tabBoundaryError": "S5HVoW_tabBoundaryError",
|
|
8834
|
+
"tab": "S5HVoW_tab",
|
|
8835
|
+
"gitDiffFilePath": "S5HVoW_gitDiffFilePath",
|
|
8836
|
+
"uploadOverlayTitle": "S5HVoW_uploadOverlayTitle",
|
|
8837
|
+
"gitLogHash": "S5HVoW_gitLogHash",
|
|
8838
|
+
"editorBinary": "S5HVoW_editorBinary",
|
|
8839
|
+
"terminalDepsTitle": "S5HVoW_terminalDepsTitle",
|
|
8840
|
+
"explorerBody": "S5HVoW_explorerBody",
|
|
8841
|
+
"explorerSymlink": "S5HVoW_explorerSymlink",
|
|
8842
|
+
"floatWindow": "S5HVoW_floatWindow",
|
|
8843
|
+
"terminalRetry": "S5HVoW_terminalRetry",
|
|
8844
|
+
"uploadDropHero": "S5HVoW_uploadDropHero",
|
|
8845
|
+
"dropDown": "S5HVoW_dropDown",
|
|
8812
8846
|
"browserInput": "S5HVoW_browserInput",
|
|
8813
|
-
"
|
|
8814
|
-
"
|
|
8815
|
-
"
|
|
8816
|
-
"
|
|
8847
|
+
"gitDiffExpand": "S5HVoW_gitDiffExpand",
|
|
8848
|
+
"tabList": "S5HVoW_tabList",
|
|
8849
|
+
"gitDiff": "S5HVoW_gitDiff",
|
|
8850
|
+
"floatWindowDragging": "S5HVoW_floatWindowDragging",
|
|
8851
|
+
"explorerError": "S5HVoW_explorerError",
|
|
8852
|
+
"gitError": "S5HVoW_gitError",
|
|
8853
|
+
"gitDiffFileOld": "S5HVoW_gitDiffFileOld",
|
|
8854
|
+
"panelResizeActive": "S5HVoW_panelResizeActive",
|
|
8855
|
+
"uploadDropZonePill": "S5HVoW_uploadDropZonePill",
|
|
8856
|
+
"editorPlaceholder": "S5HVoW_editorPlaceholder",
|
|
8817
8857
|
"paneCard": "S5HVoW_paneCard",
|
|
8818
|
-
"
|
|
8819
|
-
"
|
|
8820
|
-
"
|
|
8821
|
-
"
|
|
8822
|
-
"
|
|
8858
|
+
"split": "S5HVoW_split",
|
|
8859
|
+
"browserBar": "S5HVoW_browserBar",
|
|
8860
|
+
"boundaryError": "S5HVoW_boundaryError",
|
|
8861
|
+
"gitDiffLine": "S5HVoW_gitDiffLine",
|
|
8862
|
+
"terminalDepsHint": "S5HVoW_terminalDepsHint",
|
|
8863
|
+
"explorerRef": "S5HVoW_explorerRef",
|
|
8864
|
+
"iconButton": "S5HVoW_iconButton",
|
|
8865
|
+
"tabBadge": "S5HVoW_tabBadge",
|
|
8866
|
+
"gitRowSelected": "S5HVoW_gitRowSelected",
|
|
8867
|
+
"floatHeader": "S5HVoW_floatHeader",
|
|
8868
|
+
"splitChild": "S5HVoW_splitChild",
|
|
8869
|
+
"floatContent": "S5HVoW_floatContent",
|
|
8823
8870
|
"dividerCol": "S5HVoW_dividerCol",
|
|
8824
|
-
"
|
|
8825
|
-
"
|
|
8826
|
-
"
|
|
8827
|
-
"
|
|
8828
|
-
"uploadDropChatCard": "S5HVoW_uploadDropChatCard",
|
|
8871
|
+
"terminalDepsBanner": "S5HVoW_terminalDepsBanner",
|
|
8872
|
+
"terminalBannerUrl": "S5HVoW_terminalBannerUrl",
|
|
8873
|
+
"gitDiffMeta": "S5HVoW_gitDiffMeta",
|
|
8874
|
+
"browserBlockedTitle": "S5HVoW_browserBlockedTitle",
|
|
8829
8875
|
"panelResize": "S5HVoW_panelResize",
|
|
8876
|
+
"dropRight": "S5HVoW_dropRight",
|
|
8830
8877
|
"dropCenter": "S5HVoW_dropCenter",
|
|
8831
|
-
"
|
|
8832
|
-
"producedLabel": "S5HVoW_producedLabel",
|
|
8833
|
-
"openWithChevron": "S5HVoW_openWithChevron",
|
|
8834
|
-
"uploadOverlayCard": "S5HVoW_uploadOverlayCard",
|
|
8835
|
-
"editorBody": "S5HVoW_editorBody",
|
|
8836
|
-
"uploadOverlayProgressFill": "S5HVoW_uploadOverlayProgressFill",
|
|
8837
|
-
"gitDiffCtx": "S5HVoW_gitDiffCtx",
|
|
8838
|
-
"gitLogMore": "S5HVoW_gitLogMore",
|
|
8839
|
-
"pane": "S5HVoW_pane",
|
|
8878
|
+
"paneTabHidden": "S5HVoW_paneTabHidden",
|
|
8840
8879
|
"editorSearchResult": "S5HVoW_editorSearchResult",
|
|
8841
|
-
"
|
|
8842
|
-
"
|
|
8843
|
-
"
|
|
8844
|
-
"openWithName": "S5HVoW_openWithName",
|
|
8845
|
-
"editorBinary": "S5HVoW_editorBinary",
|
|
8846
|
-
"tabList": "S5HVoW_tabList",
|
|
8847
|
-
"sandboxStatus": "S5HVoW_sandboxStatus",
|
|
8880
|
+
"tabActive": "S5HVoW_tabActive",
|
|
8881
|
+
"explorerHidden": "S5HVoW_explorerHidden",
|
|
8882
|
+
"editorTreePanelFull": "S5HVoW_editorTreePanelFull",
|
|
8848
8883
|
"browserStart": "S5HVoW_browserStart",
|
|
8884
|
+
"workbench": "S5HVoW_workbench",
|
|
8885
|
+
"editorStatus": "S5HVoW_editorStatus",
|
|
8886
|
+
"terminalWrap": "S5HVoW_terminalWrap",
|
|
8887
|
+
"gitSectionHeader": "S5HVoW_gitSectionHeader",
|
|
8849
8888
|
"gitLink": "S5HVoW_gitLink",
|
|
8850
|
-
"
|
|
8851
|
-
"
|
|
8852
|
-
"
|
|
8853
|
-
"tabBadge": "S5HVoW_tabBadge",
|
|
8889
|
+
"gitRow": "S5HVoW_gitRow",
|
|
8890
|
+
"explorerEmpty": "S5HVoW_explorerEmpty",
|
|
8891
|
+
"gitDiffTabHeader": "S5HVoW_gitDiffTabHeader",
|
|
8854
8892
|
"gitDiffFile": "S5HVoW_gitDiffFile",
|
|
8855
|
-
"
|
|
8856
|
-
"
|
|
8857
|
-
"
|
|
8858
|
-
"
|
|
8859
|
-
"
|
|
8860
|
-
"tabBar": "S5HVoW_tabBar",
|
|
8861
|
-
"sandboxStatusOff": "S5HVoW_sandboxStatusOff",
|
|
8862
|
-
"splitCol": "S5HVoW_splitCol",
|
|
8893
|
+
"explorerRoot": "S5HVoW_explorerRoot",
|
|
8894
|
+
"editorDownloadLink": "S5HVoW_editorDownloadLink",
|
|
8895
|
+
"terminalDepsActions": "S5HVoW_terminalDepsActions",
|
|
8896
|
+
"browserLive": "S5HVoW_browserLive",
|
|
8897
|
+
"toggleButton": "S5HVoW_toggleButton",
|
|
8863
8898
|
"floatDropHint": "S5HVoW_floatDropHint",
|
|
8864
|
-
"
|
|
8865
|
-
"
|
|
8866
|
-
"
|
|
8899
|
+
"dropOverlay": "S5HVoW_dropOverlay",
|
|
8900
|
+
"explorer": "S5HVoW_explorer",
|
|
8901
|
+
"gitDiffFileChevron": "S5HVoW_gitDiffFileChevron",
|
|
8902
|
+
"gitDiffDel": "S5HVoW_gitDiffDel",
|
|
8867
8903
|
"gitLogLine2": "S5HVoW_gitLogLine2",
|
|
8868
|
-
"
|
|
8869
|
-
"
|
|
8870
|
-
"
|
|
8871
|
-
"
|
|
8872
|
-
"dividerRow": "S5HVoW_dividerRow",
|
|
8873
|
-
"gitWorktreeLabel": "S5HVoW_gitWorktreeLabel",
|
|
8874
|
-
"terminalDepsHint": "S5HVoW_terminalDepsHint",
|
|
8875
|
-
"gitDiffHunkSection": "S5HVoW_gitDiffHunkSection",
|
|
8876
|
-
"editorSearchHint": "S5HVoW_editorSearchHint",
|
|
8877
|
-
"explorerHidden": "S5HVoW_explorerHidden",
|
|
8878
|
-
"gitDiff": "S5HVoW_gitDiff",
|
|
8879
|
-
"gitDiffCode": "S5HVoW_gitDiffCode",
|
|
8880
|
-
"gitConfirmDesc": "S5HVoW_gitConfirmDesc",
|
|
8881
|
-
"split": "S5HVoW_split",
|
|
8882
|
-
"selectionPopup": "S5HVoW_selectionPopup",
|
|
8883
|
-
"floatHeader": "S5HVoW_floatHeader",
|
|
8884
|
-
"explorerDir": "S5HVoW_explorerDir",
|
|
8885
|
-
"iconButton": "S5HVoW_iconButton",
|
|
8886
|
-
"gitRowSelected": "S5HVoW_gitRowSelected",
|
|
8887
|
-
"floatWindow": "S5HVoW_floatWindow",
|
|
8888
|
-
"explorerRef": "S5HVoW_explorerRef",
|
|
8889
|
-
"tabActive": "S5HVoW_tabActive",
|
|
8890
|
-
"editorHeader": "S5HVoW_editorHeader",
|
|
8891
|
-
"dsh-row-in": "S5HVoW_dsh-row-in",
|
|
8904
|
+
"uploadDropChatCard": "S5HVoW_uploadDropChatCard",
|
|
8905
|
+
"gitBranchSelect": "S5HVoW_gitBranchSelect",
|
|
8906
|
+
"editorMain": "S5HVoW_editorMain",
|
|
8907
|
+
"gitRowMain": "S5HVoW_gitRowMain",
|
|
8892
8908
|
"gitLogLine1": "S5HVoW_gitLogLine1",
|
|
8893
|
-
"browserLiveStatus": "S5HVoW_browserLiveStatus",
|
|
8894
8909
|
"browserLiveTarget": "S5HVoW_browserLiveTarget",
|
|
8895
|
-
"
|
|
8896
|
-
"
|
|
8897
|
-
"
|
|
8898
|
-
"
|
|
8899
|
-
"
|
|
8910
|
+
"browserBlockedDesc": "S5HVoW_browserBlockedDesc",
|
|
8911
|
+
"sandboxAction": "S5HVoW_sandboxAction",
|
|
8912
|
+
"producedChip": "S5HVoW_producedChip",
|
|
8913
|
+
"editorSearchHint": "S5HVoW_editorSearchHint",
|
|
8914
|
+
"producedMore": "S5HVoW_producedMore",
|
|
8915
|
+
"dividerActive": "S5HVoW_dividerActive",
|
|
8916
|
+
"openWithChevron": "S5HVoW_openWithChevron",
|
|
8917
|
+
"paneContent": "S5HVoW_paneContent",
|
|
8918
|
+
"paneDrop": "S5HVoW_paneDrop",
|
|
8900
8919
|
"editorPathInput": "S5HVoW_editorPathInput",
|
|
8920
|
+
"floatClose": "S5HVoW_floatClose",
|
|
8921
|
+
"gitCommitButton": "S5HVoW_gitCommitButton",
|
|
8922
|
+
"orphanedType": "S5HVoW_orphanedType",
|
|
8923
|
+
"panel": "S5HVoW_panel",
|
|
8924
|
+
"panelBody": "S5HVoW_panelBody",
|
|
8925
|
+
"uploadOverlayCard": "S5HVoW_uploadOverlayCard",
|
|
8926
|
+
"uploadOverlayProgress": "S5HVoW_uploadOverlayProgress",
|
|
8927
|
+
"dirtyDot": "S5HVoW_dirtyDot",
|
|
8928
|
+
"gitName": "S5HVoW_gitName",
|
|
8929
|
+
"browserLiveStatus": "S5HVoW_browserLiveStatus",
|
|
8930
|
+
"pinnedTab": "S5HVoW_pinnedTab",
|
|
8901
8931
|
"gitEmpty": "S5HVoW_gitEmpty",
|
|
8902
|
-
"
|
|
8932
|
+
"explorerHeader": "S5HVoW_explorerHeader",
|
|
8933
|
+
"explorerDir": "S5HVoW_explorerDir",
|
|
8934
|
+
"browserBlockedActions": "S5HVoW_browserBlockedActions",
|
|
8903
8935
|
"gitDiffHunk": "S5HVoW_gitDiffHunk",
|
|
8904
|
-
"
|
|
8905
|
-
"
|
|
8906
|
-
"
|
|
8936
|
+
"openWithName": "S5HVoW_openWithName",
|
|
8937
|
+
"uploadOverlayProgressFill": "S5HVoW_uploadOverlayProgressFill",
|
|
8938
|
+
"git": "S5HVoW_git",
|
|
8939
|
+
"browser": "S5HVoW_browser",
|
|
8940
|
+
"gitWorktreeRow": "S5HVoW_gitWorktreeRow",
|
|
8941
|
+
"gitDiffMetaText": "S5HVoW_gitDiffMetaText",
|
|
8942
|
+
"editorStatusError": "S5HVoW_editorStatusError",
|
|
8907
8943
|
"openWithPinActive": "S5HVoW_openWithPinActive",
|
|
8908
|
-
"
|
|
8909
|
-
"
|
|
8910
|
-
"uploadDropZonePill": "S5HVoW_uploadDropZonePill",
|
|
8911
|
-
"editorTreeResize": "S5HVoW_editorTreeResize",
|
|
8912
|
-
"floatContent": "S5HVoW_floatContent",
|
|
8944
|
+
"browserBlockedButton": "S5HVoW_browserBlockedButton",
|
|
8945
|
+
"explorerRowDropTarget": "S5HVoW_explorerRowDropTarget",
|
|
8913
8946
|
"sandboxStatusText": "S5HVoW_sandboxStatusText",
|
|
8914
|
-
"
|
|
8947
|
+
"gitDiffCtx": "S5HVoW_gitDiffCtx",
|
|
8948
|
+
"terminalDepsCommandRow": "S5HVoW_terminalDepsCommandRow",
|
|
8949
|
+
"editor": "S5HVoW_editor",
|
|
8950
|
+
"panelHidden": "S5HVoW_panelHidden",
|
|
8951
|
+
"browserFrame": "S5HVoW_browserFrame",
|
|
8952
|
+
"gitSection": "S5HVoW_gitSection",
|
|
8953
|
+
"gitDiffHunkSection": "S5HVoW_gitDiffHunkSection",
|
|
8954
|
+
"floatResize": "S5HVoW_floatResize",
|
|
8955
|
+
"dividerRow": "S5HVoW_dividerRow",
|
|
8956
|
+
"editorTitle": "S5HVoW_editorTitle"
|
|
8915
8957
|
};
|
|
8916
8958
|
//#endregion
|
|
8917
8959
|
//#region src/client/TerminalView.tsx
|
|
@@ -8958,6 +9000,12 @@ globalThis.__dshChunks__["terminal"] = (require) => {
|
|
|
8958
9000
|
*/
|
|
8959
9001
|
const PTY_DEPS_MISSING = "pty-deps-missing";
|
|
8960
9002
|
/**
|
|
9003
|
+
* The WS close-reason prefix the host sends when the CONFIGURED shell was
|
|
9004
|
+
* not found (mirror of src/index.ts wsCloseReasonOf; wire contract, keep the
|
|
9005
|
+
* literal in lockstep). The view renders a localized, actionable banner.
|
|
9006
|
+
*/
|
|
9007
|
+
const SHELL_NOT_FOUND_PREFIX = "shell-not-found:";
|
|
9008
|
+
/**
|
|
8961
9009
|
* Curated ANSI palettes for the terminal. The surface colors (background,
|
|
8962
9010
|
* foreground, cursor, selection) ride the theme tokens so the terminal
|
|
8963
9011
|
* blends with the panel in both schemes; the 16 ANSI colors are the same
|
|
@@ -9117,6 +9165,10 @@ globalThis.__dshChunks__["terminal"] = (require) => {
|
|
|
9117
9165
|
});
|
|
9118
9166
|
return;
|
|
9119
9167
|
}
|
|
9168
|
+
if (event.code === 1011 && event.reason.startsWith(SHELL_NOT_FOUND_PREFIX)) {
|
|
9169
|
+
setFatal(t("terminalShellNotFound", { name: event.reason.slice(16) || "?" }));
|
|
9170
|
+
return;
|
|
9171
|
+
}
|
|
9120
9172
|
if (event.code === 1011 && event.reason !== "") {
|
|
9121
9173
|
setFatal(event.reason);
|
|
9122
9174
|
return;
|