@chatcode/cco-better-sidebar 0.18.0-rc.5 → 0.18.0-rc.7

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/lib/client.js CHANGED
@@ -2020,13 +2020,29 @@ window.__ModuleLoader__.load({
2020
2020
  pluginMarketUser: "ユーザー",
2021
2021
  pluginMarketInstalled: "プラグインをインストールしました。",
2022
2022
  pluginMarketUninstalled: "プラグインをアンインストールしました。",
2023
- pluginMarketSubtitle: "マーケットを参照し、プロジェクトまたはユーザー環境にインストールします。",
2023
+ pluginMarketSubtitle: "マーケットを参照し、プロジェクトディレクトリを選ぶかユーザー環境にインストールします。",
2024
+ pluginMarketChooseProject: "プロジェクトディレクトリを選択",
2025
+ pluginMarketProjectHint: "プロジェクトにインストールする場合は対象フォルダーを選択してください。",
2026
+ pluginMarketChoosingDirectory: "ディレクトリを選択中…",
2027
+ pluginMarketAwaitingConfirmation: "確認待ち…",
2028
+ pluginMarketConfirmProjectInstall: "プロジェクトへのインストールを確認",
2029
+ pluginMarketConfirmProjectDescription: "{name} を以下のプロジェクトディレクトリにインストールします。変更する場合はキャンセルし、ページ上部でディレクトリを選択してください。",
2030
+ pluginMarketConfirmInstall: "インストールを確認",
2031
+ pluginMarketInstalledAt: "プラグインのインストール先:{path}",
2032
+ pluginMarketInstallPath: "{scope}のインストール先:{path}",
2033
+ pluginMarketDirectoryPath: "ディレクトリパス",
2034
+ pluginMarketOpenDirectory: "ディレクトリを開く",
2035
+ pluginMarketSelectDirectory: "このディレクトリを選択",
2036
+ pluginMarketHomeDirectory: "ホーム",
2037
+ pluginMarketDirectoryTruncated: "一部のフォルダーのみ表示しています。完全なパスを入力してプロジェクトを開けます。",
2024
2038
  pluginMarketSearch: "マーケットやプラグインを検索",
2025
2039
  pluginMarketDefault: "デフォルト",
2026
2040
  pluginMarketBrowse: "プラグインを見る",
2027
2041
  pluginMarketNoDescription: "説明なし",
2028
2042
  pluginMarketInstalling: "インストール中…",
2029
2043
  pluginMarketUninstalling: "アンインストール中…",
2044
+ pluginMarketInstallProgress: "{name} をインストールしています。しばらくお待ちください…",
2045
+ pluginMarketUninstallProgress: "{name} をアンインストールしています。しばらくお待ちください…",
2030
2046
  accountMenuSettings: "設定",
2031
2047
  accountMenuLogout: "ログアウト",
2032
2048
  accountMenuLogoutConfirmTitle: "ログアウトしますか?",
@@ -9619,13 +9635,29 @@ window.__ModuleLoader__.load({
9619
9635
  pluginMarketUser: "用户级",
9620
9636
  pluginMarketInstalled: "插件安装成功。",
9621
9637
  pluginMarketUninstalled: "插件卸载成功。",
9622
- pluginMarketSubtitle: "浏览插件市场,选择安装到当前项目或用户环境。",
9638
+ pluginMarketSubtitle: "浏览插件市场,选择项目目录安装,或安装到用户环境。",
9639
+ pluginMarketChooseProject: "选择项目目录",
9640
+ pluginMarketProjectHint: "安装到项目时,请先选择目标项目文件夹。",
9641
+ pluginMarketChoosingDirectory: "正在选择目录…",
9642
+ pluginMarketAwaitingConfirmation: "等待确认…",
9643
+ pluginMarketConfirmProjectInstall: "确认项目级安装",
9644
+ pluginMarketConfirmProjectDescription: "将把 {name} 安装到以下项目目录。如需更改,请取消后在顶部选择项目目录。",
9645
+ pluginMarketConfirmInstall: "确认安装",
9646
+ pluginMarketInstalledAt: "插件已安装到:{path}",
9647
+ pluginMarketInstallPath: "{scope}安装目录:{path}",
9648
+ pluginMarketDirectoryPath: "目录路径",
9649
+ pluginMarketOpenDirectory: "打开目录",
9650
+ pluginMarketSelectDirectory: "选择此目录",
9651
+ pluginMarketHomeDirectory: "主目录",
9652
+ pluginMarketDirectoryTruncated: "目录过多,仅显示部分结果;可输入完整路径打开项目。",
9623
9653
  pluginMarketSearch: "搜索市场或插件",
9624
9654
  pluginMarketDefault: "默认",
9625
9655
  pluginMarketBrowse: "查看插件",
9626
9656
  pluginMarketNoDescription: "暂无描述",
9627
9657
  pluginMarketInstalling: "安装中…",
9628
9658
  pluginMarketUninstalling: "卸载中…",
9659
+ pluginMarketInstallProgress: "正在安装 {name},请稍候…",
9660
+ pluginMarketUninstallProgress: "正在卸载 {name},请稍候…",
9629
9661
  accountMenuSettings: "设置",
9630
9662
  accountMenuLogout: "退出登录",
9631
9663
  accountMenuLogoutConfirmTitle: "退出登录?",
@@ -10112,13 +10144,29 @@ window.__ModuleLoader__.load({
10112
10144
  pluginMarketUser: "User",
10113
10145
  pluginMarketInstalled: "Plugin installed.",
10114
10146
  pluginMarketUninstalled: "Plugin uninstalled.",
10115
- pluginMarketSubtitle: "Browse marketplaces and install plugins for your project or user.",
10147
+ pluginMarketSubtitle: "Browse marketplaces, choose a project directory, or install for your user.",
10148
+ pluginMarketChooseProject: "Choose project directory",
10149
+ pluginMarketProjectHint: "Choose a target project folder when installing for a project.",
10150
+ pluginMarketChoosingDirectory: "Choosing directory…",
10151
+ pluginMarketAwaitingConfirmation: "Awaiting confirmation…",
10152
+ pluginMarketConfirmProjectInstall: "Confirm project installation",
10153
+ pluginMarketConfirmProjectDescription: "{name} will be installed in the project directory below. To change it, cancel and choose a project directory at the top of the page.",
10154
+ pluginMarketConfirmInstall: "Confirm installation",
10155
+ pluginMarketInstalledAt: "Plugin installed at: {path}",
10156
+ pluginMarketInstallPath: "{scope} installation directory: {path}",
10157
+ pluginMarketDirectoryPath: "Directory path",
10158
+ pluginMarketOpenDirectory: "Open directory",
10159
+ pluginMarketSelectDirectory: "Select this directory",
10160
+ pluginMarketHomeDirectory: "Home",
10161
+ pluginMarketDirectoryTruncated: "Only some folders are shown. Enter the full path to open your project.",
10116
10162
  pluginMarketSearch: "Search marketplaces or plugins",
10117
10163
  pluginMarketDefault: "Default",
10118
10164
  pluginMarketBrowse: "Browse plugins",
10119
10165
  pluginMarketNoDescription: "No description",
10120
10166
  pluginMarketInstalling: "Installing…",
10121
10167
  pluginMarketUninstalling: "Uninstalling…",
10168
+ pluginMarketInstallProgress: "Installing {name}, please wait…",
10169
+ pluginMarketUninstallProgress: "Uninstalling {name}, please wait…",
10122
10170
  accountMenuSettings: "Settings",
10123
10171
  accountMenuLogout: "Log out",
10124
10172
  accountMenuLogoutConfirmTitle: "Log out?",
@@ -10595,6 +10643,43 @@ window.__ModuleLoader__.load({
10595
10643
  */
10596
10644
  const LOCALE_NS = "betterSidebar";
10597
10645
  const accountAndModelFallback = {
10646
+ pluginMarketTitle: en$1.pluginMarketTitle,
10647
+ pluginMarketProjectDirectory: en$1.pluginMarketProjectDirectory,
10648
+ pluginMarketInstalledTab: en$1.pluginMarketInstalledTab,
10649
+ pluginMarketRefresh: en$1.pluginMarketRefresh,
10650
+ pluginMarketLoading: en$1.pluginMarketLoading,
10651
+ pluginMarketRefreshing: en$1.pluginMarketRefreshing,
10652
+ pluginMarketEmpty: en$1.pluginMarketEmpty,
10653
+ pluginMarketBack: en$1.pluginMarketBack,
10654
+ pluginMarketInstall: en$1.pluginMarketInstall,
10655
+ pluginMarketUninstall: en$1.pluginMarketUninstall,
10656
+ pluginMarketProject: en$1.pluginMarketProject,
10657
+ pluginMarketUser: en$1.pluginMarketUser,
10658
+ pluginMarketInstalled: en$1.pluginMarketInstalled,
10659
+ pluginMarketUninstalled: en$1.pluginMarketUninstalled,
10660
+ pluginMarketSubtitle: en$1.pluginMarketSubtitle,
10661
+ pluginMarketChooseProject: en$1.pluginMarketChooseProject,
10662
+ pluginMarketProjectHint: en$1.pluginMarketProjectHint,
10663
+ pluginMarketChoosingDirectory: en$1.pluginMarketChoosingDirectory,
10664
+ pluginMarketAwaitingConfirmation: en$1.pluginMarketAwaitingConfirmation,
10665
+ pluginMarketConfirmProjectInstall: en$1.pluginMarketConfirmProjectInstall,
10666
+ pluginMarketConfirmProjectDescription: en$1.pluginMarketConfirmProjectDescription,
10667
+ pluginMarketConfirmInstall: en$1.pluginMarketConfirmInstall,
10668
+ pluginMarketInstalledAt: en$1.pluginMarketInstalledAt,
10669
+ pluginMarketInstallPath: en$1.pluginMarketInstallPath,
10670
+ pluginMarketDirectoryPath: en$1.pluginMarketDirectoryPath,
10671
+ pluginMarketOpenDirectory: en$1.pluginMarketOpenDirectory,
10672
+ pluginMarketSelectDirectory: en$1.pluginMarketSelectDirectory,
10673
+ pluginMarketHomeDirectory: en$1.pluginMarketHomeDirectory,
10674
+ pluginMarketDirectoryTruncated: en$1.pluginMarketDirectoryTruncated,
10675
+ pluginMarketSearch: en$1.pluginMarketSearch,
10676
+ pluginMarketDefault: en$1.pluginMarketDefault,
10677
+ pluginMarketBrowse: en$1.pluginMarketBrowse,
10678
+ pluginMarketNoDescription: en$1.pluginMarketNoDescription,
10679
+ pluginMarketInstalling: en$1.pluginMarketInstalling,
10680
+ pluginMarketUninstalling: en$1.pluginMarketUninstalling,
10681
+ pluginMarketInstallProgress: en$1.pluginMarketInstallProgress,
10682
+ pluginMarketUninstallProgress: en$1.pluginMarketUninstallProgress,
10598
10683
  accountMenuLogoutConfirmTitle: en$1.accountMenuLogoutConfirmTitle,
10599
10684
  accountMenuLogoutConfirmDescription: en$1.accountMenuLogoutConfirmDescription,
10600
10685
  chatcodeGateChecking: en$1.chatcodeGateChecking,
@@ -12170,300 +12255,300 @@ window.__ModuleLoader__.load({
12170
12255
  document.head.appendChild(tag);
12171
12256
  }
12172
12257
  var sidebar_module_css_default = {
12173
- "gitLogMeta": "FV0QMq_gitLogMeta",
12174
- "panelResize": "FV0QMq_panelResize",
12175
- "browserBlockedButton": "FV0QMq_browserBlockedButton",
12176
- "mermaidModalHint": "FV0QMq_mermaidModalHint",
12177
- "dropUp": "FV0QMq_dropUp",
12178
- "editorPlaceholder": "FV0QMq_editorPlaceholder",
12179
- "editorTreeSearch": "FV0QMq_editorTreeSearch",
12180
- "mermaidInfo": "FV0QMq_mermaidInfo",
12181
- "selectionPopup": "FV0QMq_selectionPopup",
12182
- "tabBar": "FV0QMq_tabBar",
12183
- "pinnedSessionsList": "FV0QMq_pinnedSessionsList",
12184
- "accountName": "FV0QMq_accountName",
12185
- "panel": "FV0QMq_panel",
12186
- "floatDropHintLabel": "FV0QMq_floatDropHintLabel",
12187
- "editorTreePanelFull": "FV0QMq_editorTreePanelFull",
12188
- "producedChip": "FV0QMq_producedChip",
12189
- "updateErrorText": "FV0QMq_updateErrorText",
12190
- "explorerEmpty": "FV0QMq_explorerEmpty",
12191
- "floatResize": "FV0QMq_floatResize",
12192
- "accountLogoutActions": "FV0QMq_accountLogoutActions",
12193
- "iconButton": "FV0QMq_iconButton",
12194
- "gitSectionHeader": "FV0QMq_gitSectionHeader",
12195
- "uploadDropHero": "FV0QMq_uploadDropHero",
12258
+ "editorBinaryNotice": "FV0QMq_editorBinaryNotice",
12259
+ "tabBarPlus": "FV0QMq_tabBarPlus",
12260
+ "editorBanner": "FV0QMq_editorBanner",
12261
+ "browserBlockedActions": "FV0QMq_browserBlockedActions",
12262
+ "editorError": "FV0QMq_editorError",
12263
+ "editorModeButton": "FV0QMq_editorModeButton",
12264
+ "sandboxAction": "FV0QMq_sandboxAction",
12265
+ "terminalBannerUrl": "FV0QMq_terminalBannerUrl",
12266
+ "uploadDropZone": "FV0QMq_uploadDropZone",
12267
+ "releaseNotesFooter": "FV0QMq_releaseNotesFooter",
12268
+ "editorTreeToggleActive": "FV0QMq_editorTreeToggleActive",
12269
+ "editorSearchInput": "FV0QMq_editorSearchInput",
12270
+ "terminalDepsHint": "FV0QMq_terminalDepsHint",
12271
+ "mermaidBody": "FV0QMq_mermaidBody",
12272
+ "accountDropdownHeader": "FV0QMq_accountDropdownHeader",
12273
+ "bottomPanelHidden": "FV0QMq_bottomPanelHidden",
12274
+ "openWithLabel": "FV0QMq_openWithLabel",
12275
+ "tocItemText": "FV0QMq_tocItemText",
12276
+ "floatWindow": "FV0QMq_floatWindow",
12277
+ "tabBoundaryError": "FV0QMq_tabBoundaryError",
12278
+ "editorHeader": "FV0QMq_editorHeader",
12279
+ "editorCm": "FV0QMq_editorCm",
12280
+ "editorModeActive": "FV0QMq_editorModeActive",
12281
+ "accountDropdown": "FV0QMq_accountDropdown",
12282
+ "gitDiffCtx": "FV0QMq_gitDiffCtx",
12283
+ "updateCommand": "FV0QMq_updateCommand",
12196
12284
  "divider": "FV0QMq_divider",
12197
- "openWithPinActive": "FV0QMq_openWithPinActive",
12198
- "explorerCopied": "FV0QMq_explorerCopied",
12199
- "pinnedSessionTitle": "FV0QMq_pinnedSessionTitle",
12200
- "mermaidModalButton": "FV0QMq_mermaidModalButton",
12201
- "gitDiffTabHeader": "FV0QMq_gitDiffTabHeader",
12202
- "mermaidError": "FV0QMq_mermaidError",
12203
- "editorPdfStage": "FV0QMq_editorPdfStage",
12204
- "gitWorktreeLabel": "FV0QMq_gitWorktreeLabel",
12205
- "gitDiffFilePath": "FV0QMq_gitDiffFilePath",
12206
- "updateSettingsDesc": "FV0QMq_updateSettingsDesc",
12207
- "dirtyDot": "FV0QMq_dirtyDot",
12208
- "tab": "FV0QMq_tab",
12209
- "pinnedSessionRow": "FV0QMq_pinnedSessionRow",
12210
- "floatHeader": "FV0QMq_floatHeader",
12211
- "floatTitle": "FV0QMq_floatTitle",
12212
- "uploadOverlayProgressFill": "FV0QMq_uploadOverlayProgressFill",
12213
- "pane": "FV0QMq_pane",
12214
- "uploadOverlayProgress": "FV0QMq_uploadOverlayProgress",
12215
- "gitDiffHunkHeader": "FV0QMq_gitDiffHunkHeader",
12285
+ "panelBody": "FV0QMq_panelBody",
12286
+ "releaseNotesOverlay": "FV0QMq_releaseNotesOverlay",
12287
+ "editorStatus": "FV0QMq_editorStatus",
12288
+ "gitHeader": "FV0QMq_gitHeader",
12289
+ "editorTreePanel": "FV0QMq_editorTreePanel",
12290
+ "tocItem": "FV0QMq_tocItem",
12291
+ "gitLogLine2": "FV0QMq_gitLogLine2",
12292
+ "gitDiffMeta": "FV0QMq_gitDiffMeta",
12293
+ "explorerRoot": "FV0QMq_explorerRoot",
12216
12294
  "accountPresence": "FV0QMq_accountPresence",
12217
- "editorBanner": "FV0QMq_editorBanner",
12218
- "gitDiffFileChevron": "FV0QMq_gitDiffFileChevron",
12219
- "tabBarDrop": "FV0QMq_tabBarDrop",
12220
- "gitDiffMetaText": "FV0QMq_gitDiffMetaText",
12221
- "producedLabel": "FV0QMq_producedLabel",
12295
+ "pane": "FV0QMq_pane",
12296
+ "explorerBody": "FV0QMq_explorerBody",
12297
+ "panelHidden": "FV0QMq_panelHidden",
12298
+ "updateFooter": "FV0QMq_updateFooter",
12299
+ "editorModeToggle": "FV0QMq_editorModeToggle",
12300
+ "updateBody": "FV0QMq_updateBody",
12301
+ "panelResize": "FV0QMq_panelResize",
12222
12302
  "dropOverlay": "FV0QMq_dropOverlay",
12223
- "dropDown": "FV0QMq_dropDown",
12224
- "editor": "FV0QMq_editor",
12225
- "editorBinary": "FV0QMq_editorBinary",
12226
- "browserBlockedActions": "FV0QMq_browserBlockedActions",
12227
- "chatcodeGateActions": "FV0QMq_chatcodeGateActions",
12303
+ "accountAvatar": "FV0QMq_accountAvatar",
12304
+ "gitLogHash": "FV0QMq_gitLogHash",
12305
+ "chatcodeGateContent": "FV0QMq_chatcodeGateContent",
12306
+ "editorPptxButton": "FV0QMq_editorPptxButton",
12307
+ "paneEmptyCards": "FV0QMq_paneEmptyCards",
12308
+ "gitDiffAdd": "FV0QMq_gitDiffAdd",
12309
+ "uploadOverlay": "FV0QMq_uploadOverlay",
12310
+ "editorSearchResult": "FV0QMq_editorSearchResult",
12311
+ "sandboxStatusOff": "FV0QMq_sandboxStatusOff",
12312
+ "releaseNotesIconButton": "FV0QMq_releaseNotesIconButton",
12313
+ "editorImage": "FV0QMq_editorImage",
12314
+ "accountItem": "FV0QMq_accountItem",
12315
+ "toggleClusterNative": "FV0QMq_toggleClusterNative",
12316
+ "dsh-toc-flash": "FV0QMq_dsh-toc-flash",
12317
+ "mermaidModal": "FV0QMq_mermaidModal",
12318
+ "updateVersions": "FV0QMq_updateVersions",
12319
+ "gitBranchSelect": "FV0QMq_gitBranchSelect",
12320
+ "gitDiffHunk": "FV0QMq_gitDiffHunk",
12228
12321
  "dsh-row-in": "FV0QMq_dsh-row-in",
12229
- "updateError": "FV0QMq_updateError",
12230
- "editorPdfFrame": "FV0QMq_editorPdfFrame",
12231
- "releaseNotesDialog": "FV0QMq_releaseNotesDialog",
12232
- "explorerBody": "FV0QMq_explorerBody",
12233
12322
  "gitLogSubject": "FV0QMq_gitLogSubject",
12234
- "editorStatusError": "FV0QMq_editorStatusError",
12235
- "dropCenter": "FV0QMq_dropCenter",
12236
- "terminalRetry": "FV0QMq_terminalRetry",
12323
+ "dropLeft": "FV0QMq_dropLeft",
12324
+ "explorerError": "FV0QMq_explorerError",
12325
+ "paneTab": "FV0QMq_paneTab",
12326
+ "editorTreeSearch": "FV0QMq_editorTreeSearch",
12327
+ "uploadOverlayProgress": "FV0QMq_uploadOverlayProgress",
12328
+ "browserStart": "FV0QMq_browserStart",
12329
+ "bottomClose": "FV0QMq_bottomClose",
12330
+ "iconButton": "FV0QMq_iconButton",
12331
+ "paneTabHidden": "FV0QMq_paneTabHidden",
12332
+ "cornerHandle": "FV0QMq_cornerHandle",
12333
+ "tabClose": "FV0QMq_tabClose",
12237
12334
  "workbench": "FV0QMq_workbench",
12238
- "editorPdfToolbar": "FV0QMq_editorPdfToolbar",
12239
- "gitDiffFileChevronExpanded": "FV0QMq_gitDiffFileChevronExpanded",
12240
- "explorerSymlink": "FV0QMq_explorerSymlink",
12241
- "gitBranchSelect": "FV0QMq_gitBranchSelect",
12242
- "dividerActive": "FV0QMq_dividerActive",
12243
12335
  "releaseNotesButton": "FV0QMq_releaseNotesButton",
12244
- "tabBarPlus": "FV0QMq_tabBarPlus",
12245
- "tocItem": "FV0QMq_tocItem",
12246
- "accountItem": "FV0QMq_accountItem",
12247
- "updateBody": "FV0QMq_updateBody",
12248
- "explorerError": "FV0QMq_explorerError",
12249
- "pinnedSessionsHeading": "FV0QMq_pinnedSessionsHeading",
12250
- "sandboxAction": "FV0QMq_sandboxAction",
12336
+ "pinnedSessionOpen": "FV0QMq_pinnedSessionOpen",
12337
+ "updateSettingsDesc": "FV0QMq_updateSettingsDesc",
12251
12338
  "gitDiffTab": "FV0QMq_gitDiffTab",
12339
+ "toggleButton": "FV0QMq_toggleButton",
12340
+ "accountName": "FV0QMq_accountName",
12341
+ "mermaidError": "FV0QMq_mermaidError",
12342
+ "gitLogMore": "FV0QMq_gitLogMore",
12343
+ "tabBar": "FV0QMq_tabBar",
12344
+ "dividerCol": "FV0QMq_dividerCol",
12345
+ "chatcodeGate": "FV0QMq_chatcodeGate",
12346
+ "dividerActive": "FV0QMq_dividerActive",
12347
+ "pinnedSessionsHeading": "FV0QMq_pinnedSessionsHeading",
12348
+ "sandboxStatusOn": "FV0QMq_sandboxStatusOn",
12349
+ "uploadDropZoneText": "FV0QMq_uploadDropZoneText",
12350
+ "dropRight": "FV0QMq_dropRight",
12351
+ "accountLogoutDialog": "FV0QMq_accountLogoutDialog",
12352
+ "gitDiffFileChevron": "FV0QMq_gitDiffFileChevron",
12252
12353
  "explorerRowRevealed": "FV0QMq_explorerRowRevealed",
12253
- "gitLogHash": "FV0QMq_gitLogHash",
12254
- "editorCm": "FV0QMq_editorCm",
12255
- "tabBoundaryError": "FV0QMq_tabBoundaryError",
12256
- "sandboxDot": "FV0QMq_sandboxDot",
12257
- "mermaidModalToolbar": "FV0QMq_mermaidModalToolbar",
12258
- "updateSettingsRow": "FV0QMq_updateSettingsRow",
12259
- "paneCard": "FV0QMq_paneCard",
12260
- "editorPdfDragShield": "FV0QMq_editorPdfDragShield",
12261
- "mermaidCopy": "FV0QMq_mermaidCopy",
12354
+ "mermaidWrap": "FV0QMq_mermaidWrap",
12355
+ "gitSectionHeader": "FV0QMq_gitSectionHeader",
12356
+ "producedLabel": "FV0QMq_producedLabel",
12262
12357
  "gitDiffCode": "FV0QMq_gitDiffCode",
12263
- "git": "FV0QMq_git",
12264
- "paneTab": "FV0QMq_paneTab",
12265
- "mermaidBody": "FV0QMq_mermaidBody",
12266
- "bottomPanelHidden": "FV0QMq_bottomPanelHidden",
12267
- "accountLogoutDialog": "FV0QMq_accountLogoutDialog",
12268
- "accountLogoutDescription": "FV0QMq_accountLogoutDescription",
12269
- "bottomResize": "FV0QMq_bottomResize",
12270
- "pinnedSessionDot": "FV0QMq_pinnedSessionDot",
12271
- "accountMenuDivider": "FV0QMq_accountMenuDivider",
12272
- "fenceError": "FV0QMq_fenceError",
12273
- "terminalDepsNote": "FV0QMq_terminalDepsNote",
12274
- "explorerRef": "FV0QMq_explorerRef",
12358
+ "producedChip": "FV0QMq_producedChip",
12359
+ "browserMessage": "FV0QMq_browserMessage",
12360
+ "chatcodeGateCard": "FV0QMq_chatcodeGateCard",
12361
+ "editorTitle": "FV0QMq_editorTitle",
12275
12362
  "tabActive": "FV0QMq_tabActive",
12276
- "tabBadge": "FV0QMq_tabBadge",
12277
- "dividerCol": "FV0QMq_dividerCol",
12278
- "browserInput": "FV0QMq_browserInput",
12279
- "gitDiffAdd": "FV0QMq_gitDiffAdd",
12280
- "accountLogoutTitle": "FV0QMq_accountLogoutTitle",
12281
- "gitLogRef": "FV0QMq_gitLogRef",
12282
- "updateVersions": "FV0QMq_updateVersions",
12363
+ "dropUp": "FV0QMq_dropUp",
12364
+ "gitLink": "FV0QMq_gitLink",
12365
+ "editorMain": "FV0QMq_editorMain",
12366
+ "mermaidHeader": "FV0QMq_mermaidHeader",
12367
+ "editorDownloadLink": "FV0QMq_editorDownloadLink",
12368
+ "uploadDropZonePill": "FV0QMq_uploadDropZonePill",
12369
+ "explorerCopied": "FV0QMq_explorerCopied",
12370
+ "openWithPinActive": "FV0QMq_openWithPinActive",
12371
+ "openWithChevron": "FV0QMq_openWithChevron",
12283
12372
  "gitRowSelected": "FV0QMq_gitRowSelected",
12284
- "editorSearchInput": "FV0QMq_editorSearchInput",
12285
- "gitError": "FV0QMq_gitError",
12286
- "gitDiffFile": "FV0QMq_gitDiffFile",
12373
+ "gitDiffTabHeader": "FV0QMq_gitDiffTabHeader",
12374
+ "updateInline": "FV0QMq_updateInline",
12375
+ "releaseNotesHeader": "FV0QMq_releaseNotesHeader",
12376
+ "gitDiffDel": "FV0QMq_gitDiffDel",
12377
+ "editorTreeResize": "FV0QMq_editorTreeResize",
12378
+ "gitDiff": "FV0QMq_gitDiff",
12379
+ "mermaidModalButton": "FV0QMq_mermaidModalButton",
12287
12380
  "explorerDir": "FV0QMq_explorerDir",
12288
- "editorBinaryNotice": "FV0QMq_editorBinaryNotice",
12289
- "gitDiffFileOld": "FV0QMq_gitDiffFileOld",
12290
- "openWithPin": "FV0QMq_openWithPin",
12381
+ "pinnedTab": "FV0QMq_pinnedTab",
12382
+ "uploadOverlayTitle": "FV0QMq_uploadOverlayTitle",
12383
+ "editorPdfDragShieldActive": "FV0QMq_editorPdfDragShieldActive",
12384
+ "pinnedSessionDot": "FV0QMq_pinnedSessionDot",
12385
+ "terminalDepsTitle": "FV0QMq_terminalDepsTitle",
12386
+ "gitDiffLine": "FV0QMq_gitDiffLine",
12387
+ "editorDocxZoomRange": "FV0QMq_editorDocxZoomRange",
12388
+ "editorBody": "FV0QMq_editorBody",
12389
+ "uploadOverlayProgressFill": "FV0QMq_uploadOverlayProgressFill",
12390
+ "browserBlockedDesc": "FV0QMq_browserBlockedDesc",
12391
+ "mermaidMarkdown": "FV0QMq_mermaidMarkdown",
12392
+ "editorSearchHint": "FV0QMq_editorSearchHint",
12393
+ "editorPdfToolbar": "FV0QMq_editorPdfToolbar",
12394
+ "mermaidCopy": "FV0QMq_mermaidCopy",
12395
+ "terminalDepsBanner": "FV0QMq_terminalDepsBanner",
12396
+ "editorTreeDock": "FV0QMq_editorTreeDock",
12397
+ "explorerRef": "FV0QMq_explorerRef",
12398
+ "editorBinary": "FV0QMq_editorBinary",
12399
+ "terminalRepairCommand": "FV0QMq_terminalRepairCommand",
12400
+ "paneCard": "FV0QMq_paneCard",
12291
12401
  "gitLogLine1": "FV0QMq_gitLogLine1",
12292
- "sandboxStatusText": "FV0QMq_sandboxStatusText",
12293
- "pinnedSessionOpen": "FV0QMq_pinnedSessionOpen",
12294
- "accountLogoutConfirm": "FV0QMq_accountLogoutConfirm",
12402
+ "terminalRetry": "FV0QMq_terminalRetry",
12403
+ "dirtyDot": "FV0QMq_dirtyDot",
12404
+ "orphanedType": "FV0QMq_orphanedType",
12405
+ "explorerSymlink": "FV0QMq_explorerSymlink",
12406
+ "splitChild": "FV0QMq_splitChild",
12295
12407
  "paneContent": "FV0QMq_paneContent",
12296
- "explorerRowDropTarget": "FV0QMq_explorerRowDropTarget",
12408
+ "sandboxStatusText": "FV0QMq_sandboxStatusText",
12409
+ "gitName": "FV0QMq_gitName",
12410
+ "gitDiffHunkSection": "FV0QMq_gitDiffHunkSection",
12411
+ "floatResize": "FV0QMq_floatResize",
12412
+ "updateSettingsTitle": "FV0QMq_updateSettingsTitle",
12413
+ "explorer": "FV0QMq_explorer",
12414
+ "gitDiffNum": "FV0QMq_gitDiffNum",
12297
12415
  "browserFrame": "FV0QMq_browserFrame",
12298
- "browserBlockedDesc": "FV0QMq_browserBlockedDesc",
12299
- "explorerName": "FV0QMq_explorerName",
12300
- "gitRowMain": "FV0QMq_gitRowMain",
12301
- "uploadDropZoneText": "FV0QMq_uploadDropZoneText",
12302
- "editorStatus": "FV0QMq_editorStatus",
12303
- "panelBody": "FV0QMq_panelBody",
12304
- "tabList": "FV0QMq_tabList",
12305
- "gitCommit": "FV0QMq_gitCommit",
12416
+ "pinnedSessionMenuDivider": "FV0QMq_pinnedSessionMenuDivider",
12417
+ "releaseNotesDialog": "FV0QMq_releaseNotesDialog",
12306
12418
  "updateSettingsText": "FV0QMq_updateSettingsText",
12307
- "toggleButton": "FV0QMq_toggleButton",
12308
- "terminalBannerUrl": "FV0QMq_terminalBannerUrl",
12309
- "tabClose": "FV0QMq_tabClose",
12310
- "tocFlash": "FV0QMq_tocFlash",
12311
- "gitWorktreeRow": "FV0QMq_gitWorktreeRow",
12312
- "browser": "FV0QMq_browser",
12313
- "gitName": "FV0QMq_gitName",
12314
- "mermaidCode": "FV0QMq_mermaidCode",
12419
+ "accountLogoutTitle": "FV0QMq_accountLogoutTitle",
12420
+ "splitCol": "FV0QMq_splitCol",
12421
+ "tabList": "FV0QMq_tabList",
12422
+ "fenceError": "FV0QMq_fenceError",
12423
+ "boundaryError": "FV0QMq_boundaryError",
12424
+ "gitBadge": "FV0QMq_gitBadge",
12425
+ "openWithName": "FV0QMq_openWithName",
12426
+ "manualButton": "FV0QMq_manualButton",
12427
+ "gitWorktreeLabel": "FV0QMq_gitWorktreeLabel",
12428
+ "explorerEmpty": "FV0QMq_explorerEmpty",
12429
+ "tocPanel": "FV0QMq_tocPanel",
12430
+ "panelResizeActive": "FV0QMq_panelResizeActive",
12431
+ "editorImageWrap": "FV0QMq_editorImageWrap",
12432
+ "gitRowMain": "FV0QMq_gitRowMain",
12433
+ "floatContent": "FV0QMq_floatContent",
12434
+ "explorerName": "FV0QMq_explorerName",
12435
+ "uploadOverlayCard": "FV0QMq_uploadOverlayCard",
12436
+ "gitLogRef": "FV0QMq_gitLogRef",
12437
+ "updateSettingsRow": "FV0QMq_updateSettingsRow",
12438
+ "gitPlaceholder": "FV0QMq_gitPlaceholder",
12439
+ "panel": "FV0QMq_panel",
12440
+ "editorCmHidden": "FV0QMq_editorCmHidden",
12441
+ "pinnedSessionsList": "FV0QMq_pinnedSessionsList",
12442
+ "uploadOverlayCancel": "FV0QMq_uploadOverlayCancel",
12443
+ "editorStatusError": "FV0QMq_editorStatusError",
12444
+ "editorHtml": "FV0QMq_editorHtml",
12315
12445
  "pinnedSessionMore": "FV0QMq_pinnedSessionMore",
12316
- "accountTrigger": "FV0QMq_accountTrigger",
12317
- "accountDropdownHeader": "FV0QMq_accountDropdownHeader",
12318
- "gitLink": "FV0QMq_gitLink",
12319
- "gitDiffDel": "FV0QMq_gitDiffDel",
12320
- "gitSection": "FV0QMq_gitSection",
12321
- "editorModeButton": "FV0QMq_editorModeButton",
12322
- "terminalDepsHint": "FV0QMq_terminalDepsHint",
12323
- "openWithChevron": "FV0QMq_openWithChevron",
12324
- "updateList": "FV0QMq_updateList",
12325
- "gitDiffNum": "FV0QMq_gitDiffNum",
12326
- "browserBlocked": "FV0QMq_browserBlocked",
12327
- "editorModeActive": "FV0QMq_editorModeActive",
12328
- "terminal": "FV0QMq_terminal",
12329
- "gitRow": "FV0QMq_gitRow",
12446
+ "uploadDropChatHint": "FV0QMq_uploadDropChatHint",
12447
+ "editor": "FV0QMq_editor",
12448
+ "releaseNotesContent": "FV0QMq_releaseNotesContent",
12449
+ "mermaidCode": "FV0QMq_mermaidCode",
12330
12450
  "producedRow": "FV0QMq_producedRow",
12451
+ "browserBlockedTitle": "FV0QMq_browserBlockedTitle",
12452
+ "editorHtmlBlock": "FV0QMq_editorHtmlBlock",
12453
+ "uploadDropChatCard": "FV0QMq_uploadDropChatCard",
12454
+ "tabBadge": "FV0QMq_tabBadge",
12455
+ "tabTitle": "FV0QMq_tabTitle",
12456
+ "paneDrop": "FV0QMq_paneDrop",
12457
+ "mermaidInfo": "FV0QMq_mermaidInfo",
12458
+ "explorerHidden": "FV0QMq_explorerHidden",
12459
+ "split": "FV0QMq_split",
12460
+ "gitLogMeta": "FV0QMq_gitLogMeta",
12461
+ "browserBlocked": "FV0QMq_browserBlocked",
12462
+ "dropCenter": "FV0QMq_dropCenter",
12463
+ "floatHeader": "FV0QMq_floatHeader",
12464
+ "tab": "FV0QMq_tab",
12465
+ "chatcodeGateError": "FV0QMq_chatcodeGateError",
12466
+ "accountLogoutConfirm": "FV0QMq_accountLogoutConfirm",
12467
+ "accountLogoutActions": "FV0QMq_accountLogoutActions",
12468
+ "openWithPin": "FV0QMq_openWithPin",
12469
+ "editorPlaceholder": "FV0QMq_editorPlaceholder",
12470
+ "gitDiffFilePath": "FV0QMq_gitDiffFilePath",
12471
+ "gitDiffHunkHeader": "FV0QMq_gitDiffHunkHeader",
12472
+ "terminalBanner": "FV0QMq_terminalBanner",
12331
12473
  "floatDropHint": "FV0QMq_floatDropHint",
12332
- "editorModeToggle": "FV0QMq_editorModeToggle",
12333
- "openWithLabel": "FV0QMq_openWithLabel",
12474
+ "editorPdfStage": "FV0QMq_editorPdfStage",
12475
+ "gitConfirmDesc": "FV0QMq_gitConfirmDesc",
12476
+ "accountMenuDivider": "FV0QMq_accountMenuDivider",
12477
+ "gitCommit": "FV0QMq_gitCommit",
12478
+ "sandboxDot": "FV0QMq_sandboxDot",
12479
+ "floatClose": "FV0QMq_floatClose",
12480
+ "gitDiffFileChevronExpanded": "FV0QMq_gitDiffFileChevronExpanded",
12481
+ "floatTitle": "FV0QMq_floatTitle",
12482
+ "explorerBroken": "FV0QMq_explorerBroken",
12483
+ "terminalDepsActions": "FV0QMq_terminalDepsActions",
12484
+ "explorerHeader": "FV0QMq_explorerHeader",
12485
+ "browserBlockedButton": "FV0QMq_browserBlockedButton",
12486
+ "selectionPopup": "FV0QMq_selectionPopup",
12487
+ "terminalDepsCommandRow": "FV0QMq_terminalDepsCommandRow",
12488
+ "gitRow": "FV0QMq_gitRow",
12489
+ "pinnedSessions": "FV0QMq_pinnedSessions",
12490
+ "updateErrorText": "FV0QMq_updateErrorText",
12491
+ "browserBar": "FV0QMq_browserBar",
12492
+ "gitCommitInput": "FV0QMq_gitCommitInput",
12493
+ "updateOk": "FV0QMq_updateOk",
12494
+ "accountMenu": "FV0QMq_accountMenu",
12495
+ "chatcodeGateActions": "FV0QMq_chatcodeGateActions",
12496
+ "editorPdfDragShield": "FV0QMq_editorPdfDragShield",
12497
+ "bottomResizeActive": "FV0QMq_bottomResizeActive",
12498
+ "browserInput": "FV0QMq_browserInput",
12499
+ "tocBar": "FV0QMq_tocBar",
12500
+ "floatDropHintLabel": "FV0QMq_floatDropHintLabel",
12501
+ "bottomResize": "FV0QMq_bottomResize",
12502
+ "gitDiffTabTitle": "FV0QMq_gitDiffTabTitle",
12503
+ "terminal": "FV0QMq_terminal",
12504
+ "splitRow": "FV0QMq_splitRow",
12505
+ "gitDiffMetaText": "FV0QMq_gitDiffMetaText",
12506
+ "terminalWrap": "FV0QMq_terminalWrap",
12507
+ "gitCommitButton": "FV0QMq_gitCommitButton",
12508
+ "producedMore": "FV0QMq_producedMore",
12509
+ "gitWorktreeRow": "FV0QMq_gitWorktreeRow",
12510
+ "tocFlash": "FV0QMq_tocFlash",
12511
+ "updateError": "FV0QMq_updateError",
12512
+ "explorerRowDropTarget": "FV0QMq_explorerRowDropTarget",
12334
12513
  "editorPdf": "FV0QMq_editorPdf",
12335
- "releaseNotesIconButton": "FV0QMq_releaseNotesIconButton",
12336
- "paneDrop": "FV0QMq_paneDrop",
12514
+ "updateSettingsBlock": "FV0QMq_updateSettingsBlock",
12515
+ "gitDiffExpand": "FV0QMq_gitDiffExpand",
12516
+ "dividerRow": "FV0QMq_dividerRow",
12337
12517
  "explorerRow": "FV0QMq_explorerRow",
12338
- "uploadDropZonePill": "FV0QMq_uploadDropZonePill",
12339
- "dsh-toc-flash": "FV0QMq_dsh-toc-flash",
12340
- "producedMore": "FV0QMq_producedMore",
12341
- "editorImageWrap": "FV0QMq_editorImageWrap",
12342
- "panelResizeActive": "FV0QMq_panelResizeActive",
12518
+ "gitSection": "FV0QMq_gitSection",
12519
+ "dropDown": "FV0QMq_dropDown",
12520
+ "gitDiffFile": "FV0QMq_gitDiffFile",
12343
12521
  "bottomPanel": "FV0QMq_bottomPanel",
12344
- "updateSettingsBlock": "FV0QMq_updateSettingsBlock",
12345
- "editorMd": "FV0QMq_editorMd",
12346
- "gitCommitButton": "FV0QMq_gitCommitButton",
12347
- "tocButton": "FV0QMq_tocButton",
12348
- "pinnedTab": "FV0QMq_pinnedTab",
12522
+ "gitError": "FV0QMq_gitError",
12349
12523
  "gitEmpty": "FV0QMq_gitEmpty",
12350
- "editorPdfFrameBlocked": "FV0QMq_editorPdfFrameBlocked",
12524
+ "gitLogRow": "FV0QMq_gitLogRow",
12525
+ "pinnedSessionRow": "FV0QMq_pinnedSessionRow",
12526
+ "terminalDepsNote": "FV0QMq_terminalDepsNote",
12527
+ "updateList": "FV0QMq_updateList",
12528
+ "sandboxStatus": "FV0QMq_sandboxStatus",
12529
+ "mermaidModalStage": "FV0QMq_mermaidModalStage",
12530
+ "pinnedSessionMenu": "FV0QMq_pinnedSessionMenu",
12531
+ "accountLogoutDescription": "FV0QMq_accountLogoutDescription",
12532
+ "accountTrigger": "FV0QMq_accountTrigger",
12533
+ "mermaidModalToolbar": "FV0QMq_mermaidModalToolbar",
12534
+ "pinnedSessionTitle": "FV0QMq_pinnedSessionTitle",
12535
+ "mermaidModalHint": "FV0QMq_mermaidModalHint",
12351
12536
  "toggleCluster": "FV0QMq_toggleCluster",
12352
- "dropLeft": "FV0QMq_dropLeft",
12353
- "uploadDropChatHint": "FV0QMq_uploadDropChatHint",
12354
- "terminalWrap": "FV0QMq_terminalWrap",
12355
- "editorTreePanel": "FV0QMq_editorTreePanel",
12356
- "floatClose": "FV0QMq_floatClose",
12357
- "gitDiffHunk": "FV0QMq_gitDiffHunk",
12358
- "gitDiffExpand": "FV0QMq_gitDiffExpand",
12359
- "tocPanel": "FV0QMq_tocPanel",
12360
- "gitCommitInput": "FV0QMq_gitCommitInput",
12361
- "tabTitle": "FV0QMq_tabTitle",
12362
- "toggleClusterNative": "FV0QMq_toggleClusterNative",
12363
- "updateInline": "FV0QMq_updateInline",
12364
- "browserBar": "FV0QMq_browserBar",
12365
- "editorPptxButton": "FV0QMq_editorPptxButton",
12366
- "paneEmptyCards": "FV0QMq_paneEmptyCards",
12367
- "dividerRow": "FV0QMq_dividerRow",
12368
- "editorDownloadLink": "FV0QMq_editorDownloadLink",
12369
- "editorPdfDragShieldActive": "FV0QMq_editorPdfDragShieldActive",
12370
- "uploadOverlayCancel": "FV0QMq_uploadOverlayCancel",
12371
- "explorerBroken": "FV0QMq_explorerBroken",
12372
- "uploadOverlayTitle": "FV0QMq_uploadOverlayTitle",
12373
- "accountMenu": "FV0QMq_accountMenu",
12374
- "mermaidHeader": "FV0QMq_mermaidHeader",
12375
- "releaseNotesHeader": "FV0QMq_releaseNotesHeader",
12376
- "floatContent": "FV0QMq_floatContent",
12377
- "manualButton": "FV0QMq_manualButton",
12378
- "gitDiffHunkSection": "FV0QMq_gitDiffHunkSection",
12379
- "chatcodeGateContent": "FV0QMq_chatcodeGateContent",
12380
- "uploadOverlayCard": "FV0QMq_uploadOverlayCard",
12381
- "gitBadge": "FV0QMq_gitBadge",
12382
- "editorCmHidden": "FV0QMq_editorCmHidden",
12383
- "gitDiff": "FV0QMq_gitDiff",
12384
- "editorTitle": "FV0QMq_editorTitle",
12537
+ "editorPdfFrame": "FV0QMq_editorPdfFrame",
12385
12538
  "tocItemLevel": "FV0QMq_tocItemLevel",
12386
- "editorDocxZoomRange": "FV0QMq_editorDocxZoomRange",
12387
- "terminalBanner": "FV0QMq_terminalBanner",
12388
- "chatcodeGate": "FV0QMq_chatcodeGate",
12389
- "chatcodeGateCard": "FV0QMq_chatcodeGateCard",
12390
- "gitLogLine2": "FV0QMq_gitLogLine2",
12391
- "sandboxStatusOff": "FV0QMq_sandboxStatusOff",
12392
- "releaseNotesFooter": "FV0QMq_releaseNotesFooter",
12393
- "chatcodeGateError": "FV0QMq_chatcodeGateError",
12394
- "boundaryError": "FV0QMq_boundaryError",
12395
- "orphanedType": "FV0QMq_orphanedType",
12396
- "editorSearchResult": "FV0QMq_editorSearchResult",
12397
- "split": "FV0QMq_split",
12398
- "explorerRoot": "FV0QMq_explorerRoot",
12539
+ "editorPdfFrameBlocked": "FV0QMq_editorPdfFrameBlocked",
12540
+ "gitDiffFileOld": "FV0QMq_gitDiffFileOld",
12541
+ "uploadDropHero": "FV0QMq_uploadDropHero",
12399
12542
  "editorPathInput": "FV0QMq_editorPathInput",
12400
- "editorMain": "FV0QMq_editorMain",
12401
- "mermaidMarkdown": "FV0QMq_mermaidMarkdown",
12402
- "gitHeader": "FV0QMq_gitHeader",
12403
- "updateFooter": "FV0QMq_updateFooter",
12404
- "floatWindow": "FV0QMq_floatWindow",
12405
- "floatWindowDragging": "FV0QMq_floatWindowDragging",
12406
- "editorSearchHint": "FV0QMq_editorSearchHint",
12407
- "gitDiffFileTag": "FV0QMq_gitDiffFileTag",
12408
- "explorerHidden": "FV0QMq_explorerHidden",
12409
- "dropRight": "FV0QMq_dropRight",
12410
- "uploadOverlay": "FV0QMq_uploadOverlay",
12411
- "updateOk": "FV0QMq_updateOk",
12412
- "editorImage": "FV0QMq_editorImage",
12413
- "editorTreeToggleActive": "FV0QMq_editorTreeToggleActive",
12414
- "gitDiffMeta": "FV0QMq_gitDiffMeta",
12415
- "cornerHandle": "FV0QMq_cornerHandle",
12416
- "openWithName": "FV0QMq_openWithName",
12417
- "editorHeader": "FV0QMq_editorHeader",
12418
- "releaseNotesOverlay": "FV0QMq_releaseNotesOverlay",
12419
- "terminalDepsCommandRow": "FV0QMq_terminalDepsCommandRow",
12420
- "terminalDepsTitle": "FV0QMq_terminalDepsTitle",
12421
- "gitDiffLine": "FV0QMq_gitDiffLine",
12422
- "splitChild": "FV0QMq_splitChild",
12423
- "mermaidWrap": "FV0QMq_mermaidWrap",
12424
- "editorHtmlBlock": "FV0QMq_editorHtmlBlock",
12543
+ "tabBarDrop": "FV0QMq_tabBarDrop",
12544
+ "editorTreePanelFull": "FV0QMq_editorTreePanelFull",
12425
12545
  "uploadOverlayStatus": "FV0QMq_uploadOverlayStatus",
12426
- "splitRow": "FV0QMq_splitRow",
12427
- "sandboxStatus": "FV0QMq_sandboxStatus",
12428
- "accountDropdown": "FV0QMq_accountDropdown",
12429
- "editorTreeResize": "FV0QMq_editorTreeResize",
12430
- "mermaidModal": "FV0QMq_mermaidModal",
12431
- "pinnedSessionMenu": "FV0QMq_pinnedSessionMenu",
12432
- "gitConfirmDesc": "FV0QMq_gitConfirmDesc",
12433
- "gitDiffTabTitle": "FV0QMq_gitDiffTabTitle",
12434
- "uploadDropChatCard": "FV0QMq_uploadDropChatCard",
12435
- "releaseNotesContent": "FV0QMq_releaseNotesContent",
12436
- "sandboxStatusOn": "FV0QMq_sandboxStatusOn",
12437
- "editorBody": "FV0QMq_editorBody",
12438
- "tocBar": "FV0QMq_tocBar",
12439
- "pinnedSessionMenuDivider": "FV0QMq_pinnedSessionMenuDivider",
12440
- "accountAvatar": "FV0QMq_accountAvatar",
12441
- "bottomResizeActive": "FV0QMq_bottomResizeActive",
12442
- "paneTabHidden": "FV0QMq_paneTabHidden",
12443
- "browserMessage": "FV0QMq_browserMessage",
12444
- "bottomClose": "FV0QMq_bottomClose",
12445
- "terminalDepsActions": "FV0QMq_terminalDepsActions",
12446
- "gitPlaceholder": "FV0QMq_gitPlaceholder",
12447
- "uploadDropZone": "FV0QMq_uploadDropZone",
12448
- "editorTreeDock": "FV0QMq_editorTreeDock",
12449
- "editorHtml": "FV0QMq_editorHtml",
12450
- "updateCommand": "FV0QMq_updateCommand",
12451
- "terminalRepairCommand": "FV0QMq_terminalRepairCommand",
12452
- "gitDiffCtx": "FV0QMq_gitDiffCtx",
12453
- "tocItemText": "FV0QMq_tocItemText",
12454
- "editorError": "FV0QMq_editorError",
12455
- "panelHidden": "FV0QMq_panelHidden",
12456
- "gitLogMore": "FV0QMq_gitLogMore",
12457
- "splitCol": "FV0QMq_splitCol",
12458
- "pinnedSessions": "FV0QMq_pinnedSessions",
12459
- "explorer": "FV0QMq_explorer",
12460
- "browserStart": "FV0QMq_browserStart",
12461
- "terminalDepsBanner": "FV0QMq_terminalDepsBanner",
12462
- "browserBlockedTitle": "FV0QMq_browserBlockedTitle",
12463
- "explorerHeader": "FV0QMq_explorerHeader",
12464
- "updateSettingsTitle": "FV0QMq_updateSettingsTitle",
12465
- "mermaidModalStage": "FV0QMq_mermaidModalStage",
12466
- "gitLogRow": "FV0QMq_gitLogRow"
12546
+ "git": "FV0QMq_git",
12547
+ "tocButton": "FV0QMq_tocButton",
12548
+ "editorMd": "FV0QMq_editorMd",
12549
+ "browser": "FV0QMq_browser",
12550
+ "gitDiffFileTag": "FV0QMq_gitDiffFileTag",
12551
+ "floatWindowDragging": "FV0QMq_floatWindowDragging"
12467
12552
  };
12468
12553
  //#endregion
12469
12554
  //#region src/client/intercept.tsx
@@ -12726,19 +12811,23 @@ window.__ModuleLoader__.load({
12726
12811
  /** The sidebar API surface (session scope threaded through every call). */
12727
12812
  const api = {
12728
12813
  pluginMarketContext: (scope, signal) => call("plugins.context", scopePayload(scope, {}), signal),
12814
+ pluginProjectPick: (signal) => call("plugins.project.pick", {}, signal),
12815
+ pluginProjectDirectories: (path, signal) => call("plugins.project.directories", { path }, signal),
12729
12816
  pluginMarketplaces: (signal) => call("plugins.marketplaces", {}, signal),
12730
12817
  pluginCatalog: (marketplaceId, signal) => call("plugins.catalog", {
12731
12818
  marketplaceId,
12732
12819
  includeMetadata: true
12733
12820
  }, signal),
12734
- pluginsInstalled: (scope, signal) => call("plugins.installed", scopePayload(scope, {}), signal),
12735
- pluginInstall: (scope, pluginId, installScope) => call("plugins.install", scopePayload(scope, {
12821
+ pluginsInstalled: (scope, signal, projectPath) => call("plugins.installed", scopePayload(scope, { projectPath }), signal),
12822
+ pluginInstall: (scope, pluginId, installScope, projectPath) => call("plugins.install", scopePayload(scope, {
12736
12823
  pluginId,
12737
- scope: installScope
12824
+ scope: installScope,
12825
+ projectPath
12738
12826
  })),
12739
- pluginUninstall: (scope, pluginId, installScope) => call("plugins.uninstall", scopePayload(scope, {
12827
+ pluginUninstall: (scope, pluginId, installScope, projectPath) => call("plugins.uninstall", scopePayload(scope, {
12740
12828
  pluginId,
12741
- scope: installScope
12829
+ scope: installScope,
12830
+ projectPath
12742
12831
  })),
12743
12832
  chatcodeStatus: (signal) => call("chatcode.status", {}, signal),
12744
12833
  chatcodeStart: () => call("chatcode.start", {}),
@@ -15050,72 +15139,72 @@ window.__ModuleLoader__.load({
15050
15139
  document.head.appendChild(tag);
15051
15140
  }
15052
15141
  var SideCardSection_module_css_default = {
15053
- "intro": "N4aF0W_intro",
15054
- "rowGear": "N4aF0W_rowGear",
15055
- "openWithEditorRow": "N4aF0W_openWithEditorRow",
15056
- "popupRow": "N4aF0W_popupRow",
15142
+ "desc": "N4aF0W_desc",
15143
+ "openWithEditorInput": "N4aF0W_openWithEditorInput",
15144
+ "selectOptionIcon": "N4aF0W_selectOptionIcon",
15057
15145
  "cardTitle": "N4aF0W_cardTitle",
15058
- "pluginTopicBtn": "N4aF0W_pluginTopicBtn",
15146
+ "cardDesc": "N4aF0W_cardDesc",
15147
+ "group": "N4aF0W_group",
15148
+ "cardOn": "N4aF0W_cardOn",
15149
+ "suffix": "N4aF0W_suffix",
15059
15150
  "pluginDesc": "N4aF0W_pluginDesc",
15060
- "groupHeading": "N4aF0W_groupHeading",
15151
+ "control": "N4aF0W_control",
15152
+ "selectAnchorIcon": "N4aF0W_selectAnchorIcon",
15153
+ "selectOption": "N4aF0W_selectOption",
15154
+ "cardMain": "N4aF0W_cardMain",
15155
+ "title": "N4aF0W_title",
15061
15156
  "switch": "N4aF0W_switch",
15062
- "cardSwitchTrack": "N4aF0W_cardSwitchTrack",
15063
- "pluginEmpty": "N4aF0W_pluginEmpty",
15064
- "pluginJumpBtn": "N4aF0W_pluginJumpBtn",
15065
- "pluginInstall": "N4aF0W_pluginInstall",
15066
- "cardSwitchThumb": "N4aF0W_cardSwitchThumb",
15067
15157
  "popupRows": "N4aF0W_popupRows",
15068
- "selectOptionIcon": "N4aF0W_selectOptionIcon",
15069
- "pluginEntryHead": "N4aF0W_pluginEntryHead",
15070
- "openWithFamily": "N4aF0W_openWithFamily",
15071
- "cardIconChip": "N4aF0W_cardIconChip",
15158
+ "switchTrack": "N4aF0W_switchTrack",
15159
+ "percentInput": "N4aF0W_percentInput",
15072
15160
  "error": "N4aF0W_error",
15161
+ "pluginTopicBtn": "N4aF0W_pluginTopicBtn",
15073
15162
  "pluginSearch": "N4aF0W_pluginSearch",
15074
- "pluginList": "N4aF0W_pluginList",
15075
- "typedInput": "N4aF0W_typedInput",
15076
- "cardDesc": "N4aF0W_cardDesc",
15077
- "rowText": "N4aF0W_rowText",
15163
+ "selectAnchorText": "N4aF0W_selectAnchorText",
15164
+ "cardSwitchThumb": "N4aF0W_cardSwitchThumb",
15078
15165
  "typedInputNumber": "N4aF0W_typedInputNumber",
15079
15166
  "cardSettings": "N4aF0W_cardSettings",
15080
- "openWithHint": "N4aF0W_openWithHint",
15081
- "grid": "N4aF0W_grid",
15082
- "switchTrack": "N4aF0W_switchTrack",
15083
- "pluginEntries": "N4aF0W_pluginEntries",
15084
- "title": "N4aF0W_title",
15085
- "addCard": "N4aF0W_addCard",
15086
- "card": "N4aF0W_card",
15087
- "selectAnchor": "N4aF0W_selectAnchor",
15088
- "selectOption": "N4aF0W_selectOption",
15089
- "section": "N4aF0W_section",
15090
- "selectAnchorText": "N4aF0W_selectAnchorText",
15091
- "switchThumb": "N4aF0W_switchThumb",
15092
- "selectAnchorIcon": "N4aF0W_selectAnchorIcon",
15093
- "control": "N4aF0W_control",
15094
- "pluginCopyBtn": "N4aF0W_pluginCopyBtn",
15095
- "pluginEntry": "N4aF0W_pluginEntry",
15096
- "pluginGroupHeading": "N4aF0W_pluginGroupHeading",
15097
- "group": "N4aF0W_group",
15167
+ "done": "N4aF0W_done",
15098
15168
  "openWithRemove": "N4aF0W_openWithRemove",
15099
- "suffix": "N4aF0W_suffix",
15169
+ "pluginList": "N4aF0W_pluginList",
15100
15170
  "pluginName": "N4aF0W_pluginName",
15101
- "done": "N4aF0W_done",
15102
- "row": "N4aF0W_row",
15171
+ "switchInput": "N4aF0W_switchInput",
15103
15172
  "pluginModal": "N4aF0W_pluginModal",
15104
- "pluginEntryActions": "N4aF0W_pluginEntryActions",
15105
- "cardTop": "N4aF0W_cardTop",
15106
- "pluginGroup": "N4aF0W_pluginGroup",
15107
- "popupDialog": "N4aF0W_popupDialog",
15173
+ "grid": "N4aF0W_grid",
15174
+ "pluginEntry": "N4aF0W_pluginEntry",
15108
15175
  "cardSwitch": "N4aF0W_cardSwitch",
15109
- "cardOn": "N4aF0W_cardOn",
15110
- "percentInput": "N4aF0W_percentInput",
15111
- "switchInput": "N4aF0W_switchInput",
15112
- "openWithEditorInput": "N4aF0W_openWithEditorInput",
15176
+ "rowText": "N4aF0W_rowText",
15177
+ "rowGear": "N4aF0W_rowGear",
15178
+ "popupRow": "N4aF0W_popupRow",
15179
+ "cardTop": "N4aF0W_cardTop",
15180
+ "pluginEntryHead": "N4aF0W_pluginEntryHead",
15181
+ "selectOptionText": "N4aF0W_selectOptionText",
15182
+ "openWithHint": "N4aF0W_openWithHint",
15183
+ "pluginGroupHeading": "N4aF0W_pluginGroupHeading",
15184
+ "openWithFamily": "N4aF0W_openWithFamily",
15185
+ "pluginEmpty": "N4aF0W_pluginEmpty",
15186
+ "card": "N4aF0W_card",
15187
+ "cardIconChip": "N4aF0W_cardIconChip",
15188
+ "row": "N4aF0W_row",
15189
+ "pluginCopyBtn": "N4aF0W_pluginCopyBtn",
15190
+ "selectAnchor": "N4aF0W_selectAnchor",
15191
+ "pluginEntries": "N4aF0W_pluginEntries",
15192
+ "section": "N4aF0W_section",
15193
+ "typedInput": "N4aF0W_typedInput",
15113
15194
  "cssTextArea": "N4aF0W_cssTextArea",
15195
+ "addCard": "N4aF0W_addCard",
15196
+ "intro": "N4aF0W_intro",
15197
+ "groupHeading": "N4aF0W_groupHeading",
15198
+ "cardSwitchTrack": "N4aF0W_cardSwitchTrack",
15199
+ "pluginJumpBtn": "N4aF0W_pluginJumpBtn",
15114
15200
  "openWithEditorTemplate": "N4aF0W_openWithEditorTemplate",
15115
- "desc": "N4aF0W_desc",
15116
- "cardMain": "N4aF0W_cardMain",
15117
- "selectOptionText": "N4aF0W_selectOptionText",
15118
- "count": "N4aF0W_count"
15201
+ "count": "N4aF0W_count",
15202
+ "pluginGroup": "N4aF0W_pluginGroup",
15203
+ "popupDialog": "N4aF0W_popupDialog",
15204
+ "switchThumb": "N4aF0W_switchThumb",
15205
+ "pluginEntryActions": "N4aF0W_pluginEntryActions",
15206
+ "openWithEditorRow": "N4aF0W_openWithEditorRow",
15207
+ "pluginInstall": "N4aF0W_pluginInstall"
15119
15208
  };
15120
15209
  //#endregion
15121
15210
  //#region src/client/open-with-settings.tsx
@@ -17084,7 +17173,7 @@ window.__ModuleLoader__.load({
17084
17173
  }
17085
17174
  //#endregion
17086
17175
  //#region \0dsh-css:/Users/shiguifeng/IdeaProjects/chonggou/DSH-better-sidebar/src/client/PluginMarketView.module.css.mjs
17087
- const css$4 = ".wFPghq_root{box-sizing:border-box;height:100%;color:var(--dsw-alias-label-primary);font:var(--dsw-font-s-14);padding:4px;overflow:auto}.wFPghq_head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:8px;display:flex}.wFPghq_head>span{box-sizing:border-box;flex:1;min-width:220px;max-width:380px}.wFPghq_title{margin:0;font-size:16px;font-weight:600;line-height:24px}.wFPghq_subtitle,.wFPghq_project,.wFPghq_meta,.wFPghq_state{color:var(--dsw-alias-label-tertiary);margin:2px 0;font-size:12px;line-height:18px}.wFPghq_project{overflow-wrap:anywhere}.wFPghq_toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin:16px 0 12px;display:flex}.wFPghq_tabs{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.wFPghq_tabs button{white-space:nowrap}.wFPghq_tabs button[aria-pressed=true]{background:var(--dsw-alias-interactive-bg-hover);color:var(--dsw-alias-label-primary);font-weight:600}.wFPghq_breadcrumb{color:var(--dsw-alias-label-secondary);overflow-wrap:anywhere;align-items:center;gap:8px;margin:4px 0 12px;display:flex}.wFPghq_breadcrumb button{white-space:nowrap;flex-shrink:0}.wFPghq_breadcrumb>span:last-child{min-width:0}.wFPghq_warning{border:1px solid var(--dsw-alias-border-l2);color:var(--dsw-alias-label-secondary);border-radius:8px;margin:10px 0;padding:8px 10px;font-size:12px}.wFPghq_error,.wFPghq_notice{overflow-wrap:anywhere;border-radius:8px;margin:10px 0;padding:8px 10px;font-size:12px}.wFPghq_error{color:var(--dsw-alias-state-danger-primary);background:var(--dsw-alias-state-danger-bg)}.wFPghq_notice{color:var(--dsw-alias-state-success-primary);background:var(--dsw-alias-state-success-bg)}.wFPghq_grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr));gap:10px;margin-top:12px;display:grid}.wFPghq_card{border:1px solid var(--dsw-alias-border-l2);background:var(--dsw-alias-bg-layer-1);border-radius:10px;flex-direction:column;min-width:0;min-height:150px;padding:12px;display:flex}.wFPghq_cardHead{justify-content:space-between;align-items:center;gap:8px;display:flex}.wFPghq_card h3{overflow-wrap:anywhere;margin:0;font-size:14px;font-weight:600;line-height:20px}.wFPghq_description{color:var(--dsw-alias-label-secondary);-webkit-line-clamp:3;overflow-wrap:anywhere;-webkit-box-orient:vertical;flex:1;margin:8px 0;font-size:12px;line-height:18px;display:-webkit-box;overflow:hidden}.wFPghq_meta{overflow-wrap:anywhere;min-height:18px}.wFPghq_actions{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.wFPghq_projectInstall.wFPghq_projectInstall{background:var(--dsw-alias-button-primary-fill);color:var(--dsw-alias-label-primary-foreground)}.wFPghq_projectInstall.wFPghq_projectInstall:hover:not(:disabled){background-color:var(--dsw-alias-button-primary-fill)!important;color:var(--dsw-alias-label-primary-foreground)!important}.wFPghq_marketCard{text-align:left;color:inherit;font:inherit;cursor:pointer;width:100%}.wFPghq_marketCard:hover:not(:disabled){border-color:var(--dsw-alias-border-l1);background:var(--dsw-alias-interactive-bg-hover)}.wFPghq_marketCard:disabled{cursor:not-allowed;opacity:.5}.wFPghq_spinning{animation:1s linear infinite wFPghq_marketRefresh;display:inline-flex}@keyframes wFPghq_marketRefresh{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.wFPghq_spinning{animation:none}}.wFPghq_marketCard:focus-visible{outline:2px solid var(--dsw-alias-state-business-primary);outline-offset:2px}.wFPghq_enter{color:var(--dsw-alias-label-secondary);justify-content:space-between;align-items:center;gap:8px;font-size:12px;line-height:18px;display:flex}@media (width<=640px){.wFPghq_head{flex-direction:column}.wFPghq_head>span{width:100%;min-width:0;max-width:none}}";
17176
+ const css$4 = ".wFPghq_root{box-sizing:border-box;height:100%;color:var(--dsw-alias-label-primary);font:var(--dsw-font-s-14);padding:4px;overflow:auto}.wFPghq_head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:8px;display:flex}.wFPghq_head>span{box-sizing:border-box;flex:1;min-width:220px;max-width:380px}.wFPghq_title{margin:0;font-size:16px;font-weight:600;line-height:24px}.wFPghq_subtitle,.wFPghq_project,.wFPghq_meta,.wFPghq_state{color:var(--dsw-alias-label-tertiary);margin:2px 0;font-size:12px;line-height:18px}.wFPghq_project{overflow-wrap:anywhere}.wFPghq_projectRow{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.wFPghq_projectRow>p{flex:1;min-width:min(100%,200px)}.wFPghq_projectRow>button{flex-shrink:0}.wFPghq_installPath{overflow-wrap:anywhere;color:var(--dsw-alias-label-tertiary);margin:4px 0;font-size:12px;line-height:18px}.wFPghq_projectPicker{width:min(620px,100vw - 32px)}.wFPghq_confirmPath{border:1px solid var(--dsw-alias-border-l2);color:var(--dsw-alias-label-primary);overflow-wrap:anywhere;white-space:pre-wrap;border-radius:8px;margin:0;padding:12px}.wFPghq_directoryPath{align-items:center;gap:8px;display:flex}.wFPghq_directoryPath>span{flex:1;min-width:0}.wFPghq_directoryCrumbs{flex-wrap:wrap;gap:4px;margin:12px 0;display:flex}.wFPghq_directoryList{min-height:100px;max-height:320px;overflow:auto}.wFPghq_directoryList>button{width:100%;color:var(--dsw-alias-label-primary);font:inherit;text-align:left;cursor:pointer;overflow-wrap:anywhere;background:0 0;border:0;border-radius:6px;align-items:center;gap:8px;padding:8px;display:flex}.wFPghq_directoryList>button:hover,.wFPghq_directoryList>button:focus-visible{background:var(--dsw-alias-interactive-bg-hover)}.wFPghq_toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin:16px 0 12px;display:flex}.wFPghq_tabs{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.wFPghq_tabs button{white-space:nowrap}.wFPghq_tabs button[aria-pressed=true]{background:var(--dsw-alias-interactive-bg-hover);color:var(--dsw-alias-label-primary);font-weight:600}.wFPghq_breadcrumb{color:var(--dsw-alias-label-secondary);overflow-wrap:anywhere;align-items:center;gap:8px;margin:4px 0 12px;display:flex}.wFPghq_breadcrumb button{white-space:nowrap;flex-shrink:0}.wFPghq_breadcrumb>span:last-child{min-width:0}.wFPghq_operation{z-index:1;border:1px solid var(--dsw-alias-state-business-primary);background:var(--dsw-alias-bg-layer-1);color:var(--dsw-alias-state-business-primary);border-radius:10px;align-items:center;gap:10px;margin:12px 0;padding:16px;font-weight:500;display:flex;position:sticky;top:0}.wFPghq_operation>span:first-child{flex-shrink:0}.wFPghq_operation>span:last-child{overflow-wrap:anywhere;min-width:0}.wFPghq_warning{border:1px solid var(--dsw-alias-border-l2);color:var(--dsw-alias-label-secondary);border-radius:8px;margin:10px 0;padding:8px 10px;font-size:12px}.wFPghq_error,.wFPghq_notice{overflow-wrap:anywhere;border-radius:8px;margin:10px 0;padding:8px 10px;font-size:12px}.wFPghq_error{color:var(--dsw-alias-state-danger-primary);background:var(--dsw-alias-state-danger-bg)}.wFPghq_notice{color:var(--dsw-alias-state-success-primary);background:var(--dsw-alias-state-success-bg)}.wFPghq_grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr));gap:10px;margin-top:12px;display:grid}.wFPghq_card{border:1px solid var(--dsw-alias-border-l2);background:var(--dsw-alias-bg-layer-1);border-radius:10px;flex-direction:column;min-width:0;min-height:150px;padding:12px;display:flex}.wFPghq_cardHead{justify-content:space-between;align-items:center;gap:8px;display:flex}.wFPghq_card h3{overflow-wrap:anywhere;margin:0;font-size:14px;font-weight:600;line-height:20px}.wFPghq_description{color:var(--dsw-alias-label-secondary);-webkit-line-clamp:3;overflow-wrap:anywhere;-webkit-box-orient:vertical;flex:1;margin:8px 0;font-size:12px;line-height:18px;display:-webkit-box;overflow:hidden}.wFPghq_meta{overflow-wrap:anywhere;min-height:18px}.wFPghq_actions{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.wFPghq_projectInstall.wFPghq_projectInstall{background:var(--dsw-alias-button-primary-fill);color:var(--dsw-alias-label-primary-foreground)}.wFPghq_projectInstall.wFPghq_projectInstall:hover:not(:disabled){background-color:var(--dsw-alias-button-primary-fill)!important;color:var(--dsw-alias-label-primary-foreground)!important}.wFPghq_marketCard{text-align:left;color:inherit;font:inherit;cursor:pointer;width:100%}.wFPghq_marketCard:hover:not(:disabled){border-color:var(--dsw-alias-border-l1);background:var(--dsw-alias-interactive-bg-hover)}.wFPghq_marketCard:disabled{cursor:not-allowed;opacity:.5}.wFPghq_spinning{animation:1s linear infinite wFPghq_marketRefresh;display:inline-flex}@keyframes wFPghq_marketRefresh{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.wFPghq_spinning{animation:none}}.wFPghq_marketCard:focus-visible{outline:2px solid var(--dsw-alias-state-business-primary);outline-offset:2px}.wFPghq_enter{color:var(--dsw-alias-label-secondary);justify-content:space-between;align-items:center;gap:8px;font-size:12px;line-height:18px;display:flex}@media (width<=640px){.wFPghq_head{flex-direction:column}.wFPghq_head>span{width:100%;min-width:0;max-width:none}}";
17088
17177
  const tagId$4 = "@chatcode/cco-better-sidebar/PluginMarketView.module.css";
17089
17178
  if (typeof document !== "undefined" && document.querySelector("style[data-plugin-css=" + JSON.stringify(tagId$4) + "]") === null) {
17090
17179
  const tag = document.createElement("style");
@@ -17094,31 +17183,191 @@ window.__ModuleLoader__.load({
17094
17183
  document.head.appendChild(tag);
17095
17184
  }
17096
17185
  var PluginMarketView_module_css_default = {
17097
- "actions": "wFPghq_actions",
17186
+ "notice": "wFPghq_notice",
17187
+ "marketRefresh": "wFPghq_marketRefresh",
17188
+ "directoryCrumbs": "wFPghq_directoryCrumbs",
17098
17189
  "tabs": "wFPghq_tabs",
17099
- "notice": "wFPghq_notice",
17100
- "state": "wFPghq_state",
17190
+ "actions": "wFPghq_actions",
17191
+ "marketCard": "wFPghq_marketCard",
17192
+ "directoryPath": "wFPghq_directoryPath",
17193
+ "project": "wFPghq_project",
17194
+ "card": "wFPghq_card",
17195
+ "root": "wFPghq_root",
17196
+ "grid": "wFPghq_grid",
17101
17197
  "head": "wFPghq_head",
17198
+ "projectPicker": "wFPghq_projectPicker",
17199
+ "confirmPath": "wFPghq_confirmPath",
17102
17200
  "subtitle": "wFPghq_subtitle",
17103
- "marketCard": "wFPghq_marketCard",
17104
- "marketRefresh": "wFPghq_marketRefresh",
17105
- "error": "wFPghq_error",
17106
- "breadcrumb": "wFPghq_breadcrumb",
17107
17201
  "toolbar": "wFPghq_toolbar",
17202
+ "title": "wFPghq_title",
17108
17203
  "warning": "wFPghq_warning",
17204
+ "breadcrumb": "wFPghq_breadcrumb",
17205
+ "installPath": "wFPghq_installPath",
17206
+ "projectRow": "wFPghq_projectRow",
17207
+ "state": "wFPghq_state",
17208
+ "directoryList": "wFPghq_directoryList",
17109
17209
  "cardHead": "wFPghq_cardHead",
17110
- "card": "wFPghq_card",
17111
- "grid": "wFPghq_grid",
17210
+ "description": "wFPghq_description",
17112
17211
  "spinning": "wFPghq_spinning",
17113
- "title": "wFPghq_title",
17114
- "meta": "wFPghq_meta",
17212
+ "operation": "wFPghq_operation",
17115
17213
  "projectInstall": "wFPghq_projectInstall",
17116
- "root": "wFPghq_root",
17117
- "project": "wFPghq_project",
17118
- "description": "wFPghq_description",
17119
- "enter": "wFPghq_enter"
17214
+ "meta": "wFPghq_meta",
17215
+ "enter": "wFPghq_enter",
17216
+ "error": "wFPghq_error"
17120
17217
  };
17121
17218
  //#endregion
17219
+ //#region src/client/PluginProjectPicker.tsx
17220
+ /** Native chooser first; the host browse backend supplies the remote Web dialog. */
17221
+ function PluginProjectPicker({ request, initialPath, onPicked, onCancel, onError }) {
17222
+ const [browse, setBrowse] = (0, react.useState)(false);
17223
+ const [path, setPath] = (0, react.useState)(initialPath ?? "");
17224
+ const [draft, setDraft] = (0, react.useState)(initialPath ?? "");
17225
+ const [listing, setListing] = (0, react.useState)();
17226
+ const [loading, setLoading] = (0, react.useState)(true);
17227
+ const [error, setError] = (0, react.useState)("");
17228
+ const [revision, setRevision] = (0, react.useState)(0);
17229
+ const callbacks = (0, react.useRef)({
17230
+ onPicked,
17231
+ onCancel,
17232
+ onError
17233
+ });
17234
+ callbacks.current = {
17235
+ onPicked,
17236
+ onCancel,
17237
+ onError
17238
+ };
17239
+ (0, react.useEffect)(() => {
17240
+ let active = true;
17241
+ request.result.then((result) => {
17242
+ if (!active) return;
17243
+ if (result.kind === "browse") setBrowse(true);
17244
+ else if (result.path === null) callbacks.current.onCancel();
17245
+ else callbacks.current.onPicked(result.path);
17246
+ }).catch((cause) => {
17247
+ if (active) callbacks.current.onError(cause instanceof Error ? cause.message : String(cause));
17248
+ });
17249
+ return () => {
17250
+ active = false;
17251
+ };
17252
+ }, [request]);
17253
+ (0, react.useEffect)(() => {
17254
+ if (!browse) return;
17255
+ const controller = new AbortController();
17256
+ let active = true;
17257
+ setLoading(true);
17258
+ setListing(void 0);
17259
+ setError("");
17260
+ api.pluginProjectDirectories(path || void 0, controller.signal).then((value) => {
17261
+ if (active) {
17262
+ setListing(value);
17263
+ setDraft(value.path);
17264
+ setLoading(false);
17265
+ }
17266
+ }).catch((cause) => {
17267
+ if (active) {
17268
+ setError(cause instanceof Error ? cause.message : String(cause));
17269
+ setLoading(false);
17270
+ }
17271
+ });
17272
+ return () => {
17273
+ active = false;
17274
+ controller.abort();
17275
+ };
17276
+ }, [
17277
+ browse,
17278
+ path,
17279
+ revision
17280
+ ]);
17281
+ const navigate = (next) => {
17282
+ setLoading(true);
17283
+ setListing(void 0);
17284
+ setPath(next);
17285
+ setRevision((value) => value + 1);
17286
+ };
17287
+ if (!browse) return null;
17288
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(_deepseek_ai_dsh_client_ui_primitives.Modal, {
17289
+ open: true,
17290
+ title: t("pluginMarketChooseProject"),
17291
+ description: t("pluginMarketProjectHint"),
17292
+ closeLabel: t("cancel"),
17293
+ onClose: onCancel,
17294
+ className: PluginMarketView_module_css_default.projectPicker,
17295
+ footer: /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(react_jsx_runtime.Fragment, { children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.Button, {
17296
+ variant: "outline",
17297
+ onClick: onCancel,
17298
+ children: t("cancel")
17299
+ }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.Button, {
17300
+ variant: "primary",
17301
+ disabled: loading || !listing,
17302
+ onClick: () => {
17303
+ if (listing) onPicked(listing.path);
17304
+ },
17305
+ children: t("pluginMarketSelectDirectory")
17306
+ })] }),
17307
+ children: [
17308
+ /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("form", {
17309
+ className: PluginMarketView_module_css_default.directoryPath,
17310
+ onSubmit: (event) => {
17311
+ event.preventDefault();
17312
+ navigate(draft);
17313
+ },
17314
+ children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.Input, {
17315
+ "data-modal-autofocus": true,
17316
+ disabled: loading,
17317
+ "aria-label": t("pluginMarketDirectoryPath"),
17318
+ value: draft,
17319
+ onChange: (event) => setDraft(event.target.value)
17320
+ }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.Button, {
17321
+ type: "submit",
17322
+ variant: "outline",
17323
+ disabled: loading,
17324
+ children: t("pluginMarketOpenDirectory")
17325
+ })]
17326
+ }),
17327
+ /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("nav", {
17328
+ className: PluginMarketView_module_css_default.directoryCrumbs,
17329
+ "aria-label": t("pluginMarketDirectoryPath"),
17330
+ children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.Button, {
17331
+ size: "sm",
17332
+ variant: "ghost",
17333
+ disabled: loading,
17334
+ onClick: () => navigate(""),
17335
+ children: t("pluginMarketHomeDirectory")
17336
+ }), listing?.crumbs.map((crumb) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.Button, {
17337
+ size: "sm",
17338
+ variant: "ghost",
17339
+ disabled: loading,
17340
+ onClick: () => navigate(crumb.path),
17341
+ children: crumb.name
17342
+ }, crumb.path))]
17343
+ }),
17344
+ error ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)("p", {
17345
+ className: PluginMarketView_module_css_default.error,
17346
+ role: "alert",
17347
+ children: error
17348
+ }) : null,
17349
+ loading ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)("p", {
17350
+ className: PluginMarketView_module_css_default.state,
17351
+ role: "status",
17352
+ children: t("pluginMarketLoading")
17353
+ }) : null,
17354
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
17355
+ className: PluginMarketView_module_css_default.directoryList,
17356
+ "aria-busy": loading,
17357
+ children: listing?.entries.map((entry) => /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("button", {
17358
+ type: "button",
17359
+ onClick: () => navigate(entry.path),
17360
+ children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)(IconFolderOpen16, {}), entry.name]
17361
+ }, entry.path))
17362
+ }),
17363
+ listing?.truncated ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)("p", {
17364
+ className: PluginMarketView_module_css_default.state,
17365
+ children: t("pluginMarketDirectoryTruncated")
17366
+ }) : null
17367
+ ]
17368
+ });
17369
+ }
17370
+ //#endregion
17122
17371
  //#region src/client/PluginMarketView.tsx
17123
17372
  /** Two catalog levels with project/user actions directly on plugin cards. */
17124
17373
  function PluginMarketView({ scope, visible, catalog }) {
@@ -17126,24 +17375,33 @@ window.__ModuleLoader__.load({
17126
17375
  const [marketId, setMarketId] = (0, react.useState)(null);
17127
17376
  const [tab, setTab] = (0, react.useState)("markets");
17128
17377
  const [query, setQuery] = (0, react.useState)("");
17129
- const [installed, setInstalled] = (0, react.useState)([]);
17130
- const [recordsReady, setRecordsReady] = (0, react.useState)(false);
17131
- const [recordsError, setRecordsError] = (0, react.useState)("");
17378
+ const [recordState, setRecordState] = (0, react.useState)();
17132
17379
  const [message, setMessage] = (0, react.useState)();
17133
17380
  const [working, setWorking] = (0, react.useState)();
17381
+ const [confirmation, setConfirmation] = (0, react.useState)();
17382
+ const confirmationRef = (0, react.useRef)();
17383
+ const [selection, setSelection] = (0, react.useState)();
17384
+ const [picker, setPicker] = (0, react.useState)();
17385
+ const pickerRef = (0, react.useRef)();
17134
17386
  const [revision, setRevision] = (0, react.useState)(0);
17135
17387
  const pending = (0, react.useRef)(false);
17136
17388
  const breadcrumbNode = (0, react.useRef)(null);
17137
17389
  const mutationVersion = (0, react.useRef)(0);
17138
17390
  const focusBack = (0, react.useRef)(false);
17139
17391
  const scopeKey = `${scope.sessionId}\0${scope.cwd ?? ""}`;
17392
+ const projectPath = selection?.key === scopeKey ? selection.path : scope.cwd;
17393
+ const recordsKey = `${scopeKey}\0${projectPath ?? ""}`;
17394
+ const installed = recordState?.key === recordsKey ? recordState.records : [];
17395
+ const recordsReady = recordState?.key === recordsKey && recordState.ready;
17396
+ const recordsError = recordState?.key === recordsKey ? recordState.error : "";
17140
17397
  const latestScope = (0, react.useRef)(scopeKey);
17141
17398
  latestScope.current = scopeKey;
17142
17399
  const markets = snapshot.markets?.data?.marketplaces ?? [];
17143
17400
  const market = markets.find((item) => item.id === marketId);
17144
17401
  const catalogEntry = tab === "markets" && marketId ? snapshot.plugins[marketId] : snapshot.markets;
17145
17402
  const loading = snapshot.refresh?.status === "loading" || tab === "markets" && (!catalogEntry || catalogEntry.status === "loading");
17146
- const blocked = loading || snapshot.refresh?.status === "error";
17403
+ const operating = !!working && !working.confirming;
17404
+ const blocked = loading || snapshot.refresh?.status === "error" || !!working;
17147
17405
  (0, react.useEffect)(() => {
17148
17406
  if (!visible) return;
17149
17407
  catalog.start();
@@ -17164,11 +17422,18 @@ window.__ModuleLoader__.load({
17164
17422
  }
17165
17423
  }, [marketId]);
17166
17424
  (0, react.useEffect)(() => {
17167
- setInstalled([]);
17168
- setRecordsReady(false);
17169
- setRecordsError("");
17170
17425
  setMessage(void 0);
17171
17426
  }, [scopeKey]);
17427
+ (0, react.useEffect)(() => {
17428
+ confirmationRef.current?.finish(false);
17429
+ confirmationRef.current = void 0;
17430
+ setConfirmation(void 0);
17431
+ }, [scopeKey, visible]);
17432
+ (0, react.useEffect)(() => () => {
17433
+ pickerRef.current?.controller.abort();
17434
+ pickerRef.current?.finish(null);
17435
+ confirmationRef.current?.finish(false);
17436
+ }, []);
17172
17437
  (0, react.useEffect)(() => {
17173
17438
  if (!visible) return;
17174
17439
  const controller = new AbortController();
@@ -17179,14 +17444,20 @@ window.__ModuleLoader__.load({
17179
17444
  reading = true;
17180
17445
  const version = mutationVersion.current;
17181
17446
  try {
17182
- const records = await api.pluginsInstalled(scope, controller.signal);
17183
- if (active && !pending.current && version === mutationVersion.current) {
17184
- setInstalled(records);
17185
- setRecordsReady(true);
17186
- setRecordsError("");
17187
- }
17447
+ const records = await api.pluginsInstalled(scope, controller.signal, projectPath);
17448
+ if (active && !pending.current && version === mutationVersion.current) setRecordState({
17449
+ key: recordsKey,
17450
+ records,
17451
+ ready: true,
17452
+ error: ""
17453
+ });
17188
17454
  } catch (cause) {
17189
- if (active && version === mutationVersion.current) setRecordsError(cause instanceof Error ? cause.message : String(cause));
17455
+ if (active && version === mutationVersion.current) setRecordState((previous) => ({
17456
+ key: recordsKey,
17457
+ records: previous?.key === recordsKey ? previous.records : [],
17458
+ ready: previous?.key === recordsKey && previous.ready,
17459
+ error: cause instanceof Error ? cause.message : String(cause)
17460
+ }));
17190
17461
  } finally {
17191
17462
  reading = false;
17192
17463
  }
@@ -17201,32 +17472,113 @@ window.__ModuleLoader__.load({
17201
17472
  controller.abort();
17202
17473
  };
17203
17474
  }, [
17204
- scopeKey,
17475
+ recordsKey,
17205
17476
  visible,
17206
17477
  revision
17207
17478
  ]);
17479
+ const chooseDirectory = () => new Promise((finish) => {
17480
+ const controller = new AbortController();
17481
+ const request = {
17482
+ result: api.pluginProjectPick(controller.signal),
17483
+ controller,
17484
+ finish
17485
+ };
17486
+ pickerRef.current = request;
17487
+ setPicker(request);
17488
+ });
17489
+ const finishPicker = (path) => {
17490
+ pickerRef.current?.finish(path);
17491
+ pickerRef.current?.controller.abort();
17492
+ pickerRef.current = void 0;
17493
+ setPicker(void 0);
17494
+ };
17495
+ const confirmProjectInstall = (name, path) => new Promise((finish) => {
17496
+ const request = {
17497
+ name,
17498
+ path,
17499
+ finish
17500
+ };
17501
+ confirmationRef.current = request;
17502
+ setConfirmation(request);
17503
+ });
17504
+ const finishConfirmation = (confirmed) => {
17505
+ const request = confirmationRef.current;
17506
+ confirmationRef.current = void 0;
17507
+ setConfirmation(void 0);
17508
+ request?.finish(confirmed);
17509
+ };
17510
+ const chooseProject = async () => {
17511
+ if (pending.current || blocked) return;
17512
+ pending.current = true;
17513
+ mutationVersion.current++;
17514
+ setMessage(void 0);
17515
+ const key = scopeKey;
17516
+ try {
17517
+ const path = await chooseDirectory();
17518
+ if (path && latestScope.current === key) setSelection({
17519
+ key,
17520
+ path
17521
+ });
17522
+ } finally {
17523
+ pending.current = false;
17524
+ setRevision((value) => value + 1);
17525
+ }
17526
+ };
17208
17527
  const perform = async (plugin, installScope) => {
17209
17528
  const refreshStatus = catalog.getSnapshot().refresh?.status;
17210
17529
  if (pending.current || !recordsReady || blocked || refreshStatus === "loading" || refreshStatus === "error") return;
17211
17530
  const key = scopeKey;
17212
- const present = installed.some((item) => item.id === plugin.id && item.scope === installScope);
17531
+ const record = installed.find((item) => item.id === plugin.id && item.scope === installScope);
17532
+ const present = !!record;
17533
+ if (installScope === "project" && !present && !projectPath) {
17534
+ setMessage({
17535
+ text: t("pluginMarketProjectHint"),
17536
+ error: true
17537
+ });
17538
+ return;
17539
+ }
17213
17540
  pending.current = true;
17214
17541
  mutationVersion.current++;
17215
- setWorking({
17542
+ const operation = {
17216
17543
  id: plugin.id,
17217
- scope: installScope
17544
+ name: plugin.name,
17545
+ scope: installScope,
17546
+ uninstall: present
17547
+ };
17548
+ setWorking({
17549
+ ...operation,
17550
+ confirming: installScope === "project" && !present
17218
17551
  });
17219
17552
  setMessage(void 0);
17220
17553
  try {
17221
- if (present) await api.pluginUninstall(scope, plugin.id, installScope);
17222
- else await api.pluginInstall(scope, plugin.id, installScope);
17223
- const records = await api.pluginsInstalled(scope);
17554
+ let target = record?.scope === "project" ? record.projectPath : projectPath;
17555
+ if (installScope === "project" && !present) {
17556
+ if (!await confirmProjectInstall(plugin.name, target) || latestScope.current !== key) return;
17557
+ setWorking(operation);
17558
+ }
17559
+ let installedPath = "";
17560
+ if (present) await api.pluginUninstall(scope, plugin.id, installScope, target);
17561
+ else {
17562
+ const result = await api.pluginInstall(scope, plugin.id, installScope, target);
17563
+ installedPath = result.installPath;
17564
+ if (installScope === "project") {
17565
+ target = result.projectPath;
17566
+ if (latestScope.current === key) setSelection({
17567
+ key,
17568
+ path: target
17569
+ });
17570
+ }
17571
+ }
17572
+ const records = await api.pluginsInstalled(scope, void 0, target);
17224
17573
  if (latestScope.current === key) {
17225
- setInstalled(records);
17226
- setRecordsReady(true);
17227
- setRecordsError("");
17574
+ setRecordState({
17575
+ key: `${key}\0${target ?? ""}`,
17576
+ records,
17577
+ ready: true,
17578
+ error: ""
17579
+ });
17228
17580
  setMessage({
17229
- text: t(present ? "pluginMarketUninstalled" : "pluginMarketInstalled"),
17581
+ text: present ? t("pluginMarketUninstalled") : t("pluginMarketInstalledAt", { path: installedPath }),
17230
17582
  error: false
17231
17583
  });
17232
17584
  }
@@ -17238,6 +17590,7 @@ window.__ModuleLoader__.load({
17238
17590
  } finally {
17239
17591
  pending.current = false;
17240
17592
  setWorking(void 0);
17593
+ setRevision((value) => value + 1);
17241
17594
  }
17242
17595
  };
17243
17596
  const refresh = () => {
@@ -17257,7 +17610,7 @@ window.__ModuleLoader__.load({
17257
17610
  return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("section", {
17258
17611
  className: PluginMarketView_module_css_default.root,
17259
17612
  "aria-label": t("pluginMarketTitle"),
17260
- "aria-busy": loading,
17613
+ "aria-busy": loading || operating,
17261
17614
  "data-chatcode-plugin-market": true,
17262
17615
  children: [
17263
17616
  /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("header", {
@@ -17276,10 +17629,21 @@ window.__ModuleLoader__.load({
17276
17629
  "aria-label": t("pluginMarketSearch")
17277
17630
  })]
17278
17631
  }),
17279
- scope.cwd ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)("p", {
17280
- className: PluginMarketView_module_css_default.project,
17281
- children: t("pluginMarketProjectDirectory", { path: scope.cwd })
17282
- }) : null,
17632
+ /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
17633
+ className: PluginMarketView_module_css_default.projectRow,
17634
+ children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("p", {
17635
+ className: PluginMarketView_module_css_default.project,
17636
+ children: projectPath ? t("pluginMarketProjectDirectory", { path: projectPath }) : t("pluginMarketProjectHint")
17637
+ }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.Button, {
17638
+ size: "sm",
17639
+ variant: "outline",
17640
+ disabled: blocked || !!working || !!picker,
17641
+ onClick: () => {
17642
+ chooseProject();
17643
+ },
17644
+ children: t("pluginMarketChooseProject")
17645
+ })]
17646
+ }),
17283
17647
  /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
17284
17648
  className: PluginMarketView_module_css_default.toolbar,
17285
17649
  children: [/* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
@@ -17312,6 +17676,15 @@ window.__ModuleLoader__.load({
17312
17676
  }), t(loading ? "pluginMarketRefreshing" : "pluginMarketRefresh")]
17313
17677
  })]
17314
17678
  }),
17679
+ operating ? /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
17680
+ className: PluginMarketView_module_css_default.operation,
17681
+ role: "status",
17682
+ children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
17683
+ className: PluginMarketView_module_css_default.spinning,
17684
+ "aria-hidden": "true",
17685
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(IconRefreshOutline14, {})
17686
+ }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", { children: t(working.uninstall ? "pluginMarketUninstallProgress" : "pluginMarketInstallProgress", { name: working.name }) })]
17687
+ }) : null,
17315
17688
  warning && tab === "markets" ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)("p", {
17316
17689
  className: PluginMarketView_module_css_default.warning,
17317
17690
  role: "status",
@@ -17352,7 +17725,7 @@ window.__ModuleLoader__.load({
17352
17725
  }) : null,
17353
17726
  /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
17354
17727
  className: PluginMarketView_module_css_default.grid,
17355
- "aria-busy": loading,
17728
+ "aria-busy": loading || operating,
17356
17729
  children: showMarkets ? filteredMarkets.map((item) => /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("button", {
17357
17730
  type: "button",
17358
17731
  disabled: blocked,
@@ -17395,6 +17768,13 @@ window.__ModuleLoader__.load({
17395
17768
  className: PluginMarketView_module_css_default.meta,
17396
17769
  children: [marketName, tab === "installed" && records[0]?.version ? ` · ${records[0].version}` : ""]
17397
17770
  }),
17771
+ records.map((record) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)("p", {
17772
+ className: PluginMarketView_module_css_default.installPath,
17773
+ children: t("pluginMarketInstallPath", {
17774
+ scope: t(record.scope === "project" ? "pluginMarketProject" : "pluginMarketUser"),
17775
+ path: record.installPath
17776
+ })
17777
+ }, record.scope)),
17398
17778
  /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
17399
17779
  className: PluginMarketView_module_css_default.actions,
17400
17780
  children: ["project", "user"].map((installScope) => {
@@ -17409,7 +17789,12 @@ window.__ModuleLoader__.load({
17409
17789
  perform(item, installScope);
17410
17790
  },
17411
17791
  children: [
17412
- t(busy ? present ? "pluginMarketUninstalling" : "pluginMarketInstalling" : present ? "pluginMarketUninstall" : "pluginMarketInstall"),
17792
+ busy && operating ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
17793
+ className: PluginMarketView_module_css_default.spinning,
17794
+ "aria-hidden": "true",
17795
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(IconRefreshOutline14, {})
17796
+ }) : null,
17797
+ t(busy ? working?.confirming ? "pluginMarketAwaitingConfirmation" : working?.uninstall ? "pluginMarketUninstalling" : "pluginMarketInstalling" : present ? "pluginMarketUninstall" : "pluginMarketInstall"),
17413
17798
  " · ",
17414
17799
  t(installScope === "project" ? "pluginMarketProject" : "pluginMarketUser")
17415
17800
  ]
@@ -17423,6 +17808,41 @@ window.__ModuleLoader__.load({
17423
17808
  !loading && hasData && (showMarkets ? filteredMarkets : filteredPlugins).length === 0 ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)("p", {
17424
17809
  className: PluginMarketView_module_css_default.state,
17425
17810
  children: t("pluginMarketEmpty")
17811
+ }) : null,
17812
+ confirmation ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.Modal, {
17813
+ open: true,
17814
+ title: t("pluginMarketConfirmProjectInstall"),
17815
+ description: t("pluginMarketConfirmProjectDescription", { name: confirmation.name }),
17816
+ closeLabel: t("cancel"),
17817
+ onClose: () => finishConfirmation(false),
17818
+ className: PluginMarketView_module_css_default.projectPicker,
17819
+ footer: /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(react_jsx_runtime.Fragment, { children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.Button, {
17820
+ variant: "outline",
17821
+ "data-modal-autofocus": true,
17822
+ onClick: () => finishConfirmation(false),
17823
+ children: t("cancel")
17824
+ }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.Button, {
17825
+ variant: "primary",
17826
+ onClick: () => finishConfirmation(true),
17827
+ children: t("pluginMarketConfirmInstall")
17828
+ })] }),
17829
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)("p", {
17830
+ className: PluginMarketView_module_css_default.confirmPath,
17831
+ children: confirmation.path
17832
+ })
17833
+ }) : null,
17834
+ picker ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)(PluginProjectPicker, {
17835
+ request: picker,
17836
+ initialPath: projectPath,
17837
+ onPicked: finishPicker,
17838
+ onCancel: () => finishPicker(null),
17839
+ onError: (text) => {
17840
+ setMessage({
17841
+ text,
17842
+ error: true
17843
+ });
17844
+ finishPicker(null);
17845
+ }
17426
17846
  }) : null
17427
17847
  ]
17428
17848
  });
@@ -22364,21 +22784,21 @@ window.__ModuleLoader__.load({
22364
22784
  document.head.appendChild(tag);
22365
22785
  }
22366
22786
  var CodingPlanModelsSettings_module_css_default = {
22787
+ "modelDescription": "kn_HcG_modelDescription",
22788
+ "status": "kn_HcG_status",
22789
+ "refresh": "kn_HcG_refresh",
22367
22790
  "meta": "kn_HcG_meta",
22368
- "model": "kn_HcG_model",
22369
- "modelSelected": "kn_HcG_modelSelected",
22370
- "modelTop": "kn_HcG_modelTop",
22371
22791
  "description": "kn_HcG_description",
22372
- "status": "kn_HcG_status",
22373
- "group": "kn_HcG_group",
22374
22792
  "heading": "kn_HcG_heading",
22793
+ "group": "kn_HcG_group",
22794
+ "headingRow": "kn_HcG_headingRow",
22375
22795
  "modelId": "kn_HcG_modelId",
22796
+ "modelName": "kn_HcG_modelName",
22797
+ "model": "kn_HcG_model",
22376
22798
  "models": "kn_HcG_models",
22377
- "headingRow": "kn_HcG_headingRow",
22378
- "modelDescription": "kn_HcG_modelDescription",
22379
- "selected": "kn_HcG_selected",
22380
- "refresh": "kn_HcG_refresh",
22381
- "modelName": "kn_HcG_modelName"
22799
+ "modelTop": "kn_HcG_modelTop",
22800
+ "modelSelected": "kn_HcG_modelSelected",
22801
+ "selected": "kn_HcG_selected"
22382
22802
  };
22383
22803
  //#endregion
22384
22804
  //#region src/client/CodingPlanModelsSettings.tsx
@@ -23547,48 +23967,48 @@ window.__ModuleLoader__.load({
23547
23967
  document.head.appendChild(tag);
23548
23968
  }
23549
23969
  var UsageHeatmapSection_module_css_default = {
23550
- "retry": "iUwB6a_retry",
23551
- "total": "iUwB6a_total",
23552
- "legendSwatch": "iUwB6a_legendSwatch",
23970
+ "dshSidebarUsageSpin": "iUwB6a_dshSidebarUsageSpin",
23971
+ "todayDot": "iUwB6a_todayDot",
23972
+ "stats": "iUwB6a_stats",
23973
+ "tooltipDate": "iUwB6a_tooltipDate",
23974
+ "gridBody": "iUwB6a_gridBody",
23553
23975
  "totalNumber": "iUwB6a_totalNumber",
23554
- "empty": "iUwB6a_empty",
23976
+ "tooltipBelow": "iUwB6a_tooltipBelow",
23977
+ "tooltipToday": "iUwB6a_tooltipToday",
23978
+ "state": "iUwB6a_state",
23555
23979
  "totalUnit": "iUwB6a_totalUnit",
23556
- "cellToday": "iUwB6a_cellToday",
23557
- "cell": "iUwB6a_cell",
23980
+ "weekdays": "iUwB6a_weekdays",
23981
+ "stat": "iUwB6a_stat",
23558
23982
  "headerRow": "iUwB6a_headerRow",
23559
- "section": "iUwB6a_section",
23560
- "overview": "iUwB6a_overview",
23561
- "todayDot": "iUwB6a_todayDot",
23562
- "gridBody": "iUwB6a_gridBody",
23983
+ "totalValue": "iUwB6a_totalValue",
23984
+ "statLabel": "iUwB6a_statLabel",
23985
+ "cellDay": "iUwB6a_cellDay",
23986
+ "legendSwatch": "iUwB6a_legendSwatch",
23987
+ "monthLabel": "iUwB6a_monthLabel",
23988
+ "cell": "iUwB6a_cell",
23989
+ "total": "iUwB6a_total",
23563
23990
  "stateError": "iUwB6a_stateError",
23564
- "monthNav": "iUwB6a_monthNav",
23565
- "legend": "iUwB6a_legend",
23566
- "tooltipTokens": "iUwB6a_tooltipTokens",
23567
23991
  "grid": "iUwB6a_grid",
23568
- "refreshButton": "iUwB6a_refreshButton",
23569
- "dshSidebarUsageSpin": "iUwB6a_dshSidebarUsageSpin",
23570
- "state": "iUwB6a_state",
23571
- "todayLabel": "iUwB6a_todayLabel",
23572
- "tooltipDate": "iUwB6a_tooltipDate",
23573
- "tooltipToday": "iUwB6a_tooltipToday",
23574
- "tooltip": "iUwB6a_tooltip",
23575
- "cellTokens": "iUwB6a_cellTokens",
23992
+ "overview": "iUwB6a_overview",
23993
+ "section": "iUwB6a_section",
23576
23994
  "cellHover": "iUwB6a_cellHover",
23577
- "stat": "iUwB6a_stat",
23578
- "weekdays": "iUwB6a_weekdays",
23579
- "tooltipBelow": "iUwB6a_tooltipBelow",
23580
- "spin": "iUwB6a_spin",
23995
+ "tooltip": "iUwB6a_tooltip",
23996
+ "legend": "iUwB6a_legend",
23581
23997
  "tooltipSplit": "iUwB6a_tooltipSplit",
23582
- "statLabel": "iUwB6a_statLabel",
23583
- "totalValue": "iUwB6a_totalValue",
23584
- "cellDay": "iUwB6a_cellDay",
23585
- "cellFuture": "iUwB6a_cellFuture",
23586
23998
  "monthButton": "iUwB6a_monthButton",
23999
+ "empty": "iUwB6a_empty",
24000
+ "cellTokens": "iUwB6a_cellTokens",
24001
+ "tooltipTokens": "iUwB6a_tooltipTokens",
24002
+ "todayLabel": "iUwB6a_todayLabel",
24003
+ "retry": "iUwB6a_retry",
24004
+ "monthNav": "iUwB6a_monthNav",
24005
+ "spin": "iUwB6a_spin",
23587
24006
  "statValue": "iUwB6a_statValue",
23588
- "monthLabel": "iUwB6a_monthLabel",
23589
- "stats": "iUwB6a_stats",
24007
+ "cellFuture": "iUwB6a_cellFuture",
23590
24008
  "footer": "iUwB6a_footer",
23591
- "group": "iUwB6a_group"
24009
+ "cellToday": "iUwB6a_cellToday",
24010
+ "group": "iUwB6a_group",
24011
+ "refreshButton": "iUwB6a_refreshButton"
23592
24012
  };
23593
24013
  //#endregion
23594
24014
  //#region src/client/UsageHeatmapSection.tsx
@@ -23964,34 +24384,34 @@ window.__ModuleLoader__.load({
23964
24384
  document.head.appendChild(tag);
23965
24385
  }
23966
24386
  var AiRatioSection_module_css_default = {
23967
- "dateInput": "JtMahq_dateInput",
23968
- "stateError": "JtMahq_stateError",
24387
+ "adoptedValue": "JtMahq_adoptedValue",
24388
+ "ratioBar": "JtMahq_ratioBar",
23969
24389
  "ratioCardLow": "JtMahq_ratioCardLow",
23970
- "primaryButton": "JtMahq_primaryButton",
23971
24390
  "cardRatio": "JtMahq_cardRatio",
23972
- "adoptedValue": "JtMahq_adoptedValue",
23973
- "dash": "JtMahq_dash",
23974
- "num": "JtMahq_num",
23975
- "cardLabel": "JtMahq_cardLabel",
24391
+ "table": "JtMahq_table",
24392
+ "primaryButton": "JtMahq_primaryButton",
24393
+ "exportButton": "JtMahq_exportButton",
23976
24394
  "addedValue": "JtMahq_addedValue",
24395
+ "pageInfo": "JtMahq_pageInfo",
24396
+ "card": "JtMahq_card",
24397
+ "ratioValue": "JtMahq_ratioValue",
23977
24398
  "dateCell": "JtMahq_dateCell",
23978
- "queryRow": "JtMahq_queryRow",
23979
- "exportButton": "JtMahq_exportButton",
23980
24399
  "pager": "JtMahq_pager",
24400
+ "cardLabel": "JtMahq_cardLabel",
24401
+ "queryRow": "JtMahq_queryRow",
24402
+ "num": "JtMahq_num",
24403
+ "stateError": "JtMahq_stateError",
23981
24404
  "tableWrap": "JtMahq_tableWrap",
23982
- "ratioCardHigh": "JtMahq_ratioCardHigh",
23983
24405
  "state": "JtMahq_state",
23984
- "cardValue": "JtMahq_cardValue",
23985
- "commitsValue": "JtMahq_commitsValue",
23986
- "card": "JtMahq_card",
23987
- "section": "JtMahq_section",
24406
+ "dash": "JtMahq_dash",
23988
24407
  "tableHeading": "JtMahq_tableHeading",
23989
- "table": "JtMahq_table",
23990
- "overview": "JtMahq_overview",
23991
24408
  "aiValue": "JtMahq_aiValue",
23992
- "ratioBar": "JtMahq_ratioBar",
23993
- "pageInfo": "JtMahq_pageInfo",
23994
- "ratioValue": "JtMahq_ratioValue"
24409
+ "section": "JtMahq_section",
24410
+ "dateInput": "JtMahq_dateInput",
24411
+ "overview": "JtMahq_overview",
24412
+ "cardValue": "JtMahq_cardValue",
24413
+ "commitsValue": "JtMahq_commitsValue",
24414
+ "ratioCardHigh": "JtMahq_ratioCardHigh"
23995
24415
  };
23996
24416
  //#endregion
23997
24417
  //#region src/client/AiRatioSection.tsx