@codingame/monaco-vscode-katex-common 27.0.0 → 28.0.1

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.
Files changed (181) hide show
  1. package/package.json +2 -2
  2. package/vscode/src/vs/platform/actionWidget/browser/actionWidgetDropdown.js +2 -0
  3. package/vscode/src/vs/platform/actions/browser/buttonbar.js +2 -2
  4. package/vscode/src/vs/platform/mcp/common/modelContextProtocolApps.d.ts +30 -2
  5. package/vscode/src/vs/platform/mcp/common/modelContextProtocolApps.js +1 -0
  6. package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatAccessibilityProvider.js +15 -15
  7. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContinueInAction.js +17 -11
  8. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatElicitationActions.js +1 -1
  9. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatExecuteActions.d.ts +5 -0
  10. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatExecuteActions.js +90 -43
  11. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatTitleActions.js +10 -10
  12. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionApprovalModel.d.ts +26 -0
  13. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionApprovalModel.js +106 -0
  14. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionHoverWidget.js +8 -8
  15. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsControl.d.ts +6 -0
  16. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsControl.js +63 -10
  17. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsFilter.d.ts +1 -0
  18. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsFilter.js +13 -10
  19. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsOpener.js +2 -2
  20. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsViewer.d.ts +28 -2
  21. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsViewer.js +133 -28
  22. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/media/agentsessionsviewer.css +69 -0
  23. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentWidgets.js +55 -46
  24. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/implicitContextAttachment.js +10 -10
  25. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingActions.js +38 -37
  26. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorActions.js +14 -14
  27. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorOverlay.js +7 -7
  28. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingExplanationWidget.js +12 -12
  29. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/media/chatEditingEditorOverlay.css +5 -5
  30. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/media/chatEditingExplanationWidget.css +1 -1
  31. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessionPickerActionItem.js +1 -1
  32. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessions.contribution.d.ts +2 -2
  33. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessions.contribution.js +72 -57
  34. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/searchableOptionPickerActionItem.js +4 -4
  35. package/vscode/src/vs/workbench/contrib/chat/browser/viewsWelcome/chatViewWelcomeController.d.ts +1 -16
  36. package/vscode/src/vs/workbench/contrib/chat/browser/viewsWelcome/chatViewWelcomeController.js +4 -110
  37. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatAgentHover.js +2 -2
  38. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAgentCommandContentPart.d.ts +1 -1
  39. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAgentCommandContentPart.js +1 -1
  40. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAnonymousRateLimitedPart.d.ts +1 -1
  41. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAnonymousRateLimitedPart.js +2 -2
  42. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatChangesSummaryPart.d.ts +1 -1
  43. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatChangesSummaryPart.js +1 -1
  44. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCodeCitationContentPart.d.ts +1 -1
  45. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCodeCitationContentPart.js +1 -1
  46. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCollapsibleContentPart.d.ts +1 -1
  47. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCollapsibleMarkdownContentPart.d.ts +1 -1
  48. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCommandContentPart.d.ts +1 -1
  49. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCommandContentPart.js +1 -1
  50. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatConfirmationContentPart.d.ts +1 -1
  51. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatConfirmationContentPart.js +2 -2
  52. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatConfirmationWidget.d.ts +1 -1
  53. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatConfirmationWidget.js +1 -1
  54. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatContentParts.d.ts +59 -0
  55. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatContentParts.js +29 -0
  56. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatDisabledClaudeHooksContentPart.d.ts +1 -1
  57. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatDisabledClaudeHooksContentPart.js +2 -2
  58. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatElicitationContentPart.d.ts +1 -1
  59. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatErrorConfirmationPart.d.ts +1 -1
  60. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatErrorContentPart.d.ts +1 -1
  61. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatExtensionsContentPart.d.ts +1 -1
  62. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatExtensionsContentPart.js +1 -1
  63. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatHookContentPart.d.ts +1 -1
  64. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatHookContentPart.js +3 -3
  65. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatInlineAnchorWidget.js +13 -13
  66. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMarkdownContentPart.d.ts +1 -1
  67. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMarkdownContentPart.js +8 -6
  68. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMarkdownTableScrolling.d.ts +15 -0
  69. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMarkdownTableScrolling.js +55 -0
  70. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMcpServersInteractionContentPart.d.ts +1 -1
  71. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMcpServersInteractionContentPart.js +6 -6
  72. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMultiDiffContentPart.d.ts +1 -1
  73. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMultiDiffContentPart.js +4 -4
  74. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatProgressContentPart.d.ts +1 -1
  75. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatProgressContentPart.js +6 -4
  76. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatPullRequestContentPart.d.ts +1 -1
  77. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatQuestionCarouselPart.d.ts +26 -6
  78. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatQuestionCarouselPart.js +290 -126
  79. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatQuotaExceededPart.d.ts +1 -1
  80. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatQuotaExceededPart.js +4 -4
  81. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatReferencesContentPart.d.ts +1 -1
  82. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatReferencesContentPart.js +9 -7
  83. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatResourceGroupWidget.d.ts +22 -0
  84. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatResourceGroupWidget.js +263 -0
  85. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatSubagentContentPart.d.ts +1 -1
  86. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatSubagentContentPart.js +6 -6
  87. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatSuggestNextWidget.js +5 -5
  88. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTaskContentPart.d.ts +1 -1
  89. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTextEditContentPart.d.ts +1 -1
  90. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTextEditContentPart.js +1 -1
  91. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatThinkingContentPart.d.ts +1 -1
  92. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatThinkingContentPart.js +22 -13
  93. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTipContentPart.js +12 -18
  94. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTodoListWidget.js +17 -17
  95. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatToolInputOutputContentPart.d.ts +1 -1
  96. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatToolInputOutputContentPart.js +2 -2
  97. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatToolOutputContentSubPart.d.ts +3 -13
  98. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatToolOutputContentSubPart.js +6 -260
  99. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTreeContentPart.d.ts +1 -1
  100. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTreeContentPart.js +1 -1
  101. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatWorkspaceEditContentPart.d.ts +1 -1
  102. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatWorkspaceEditContentPart.js +3 -3
  103. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/codeBlockPart.js +14 -14
  104. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatConfirmationWidget.css +17 -0
  105. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatQuestionCarousel.css +129 -117
  106. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatTipContent.css +0 -1
  107. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/abstractToolConfirmationSubPart.d.ts +1 -1
  108. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/abstractToolConfirmationSubPart.js +1 -1
  109. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatExtensionsInstallToolSubPart.d.ts +1 -1
  110. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatExtensionsInstallToolSubPart.js +4 -4
  111. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatInputOutputMarkdownProgressPart.d.ts +1 -1
  112. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatMcpAppModel.d.ts +8 -1
  113. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatMcpAppModel.js +56 -3
  114. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatMcpAppSubPart.d.ts +5 -1
  115. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatMcpAppSubPart.js +20 -4
  116. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatResultListSubPart.d.ts +1 -1
  117. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatSimpleToolProgressPart.d.ts +1 -1
  118. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolConfirmationSubPart.d.ts +1 -1
  119. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolConfirmationSubPart.js +15 -15
  120. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolProgressPart.d.ts +43 -1
  121. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolProgressPart.js +42 -41
  122. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolConfirmationSubPart.d.ts +2 -4
  123. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolConfirmationSubPart.js +14 -14
  124. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolInvocationPart.d.ts +1 -1
  125. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolOutputPart.d.ts +1 -1
  126. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolOutputPart.js +2 -2
  127. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolPartUtilities.js +3 -3
  128. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolPostExecuteConfirmationPart.d.ts +1 -1
  129. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolPostExecuteConfirmationPart.js +5 -5
  130. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolProgressPart.d.ts +1 -1
  131. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolStreamingSubPart.d.ts +1 -1
  132. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatDragAndDrop.js +11 -11
  133. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatListRenderer.d.ts +4 -2
  134. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatListRenderer.js +61 -39
  135. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatQuestionCarouselAutoReply.js +7 -8
  136. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatWidget.d.ts +1 -10
  137. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatWidget.js +81 -191
  138. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatFollowups.js +1 -1
  139. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputPart.d.ts +31 -17
  140. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputPart.js +334 -181
  141. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputPickerActionItem.d.ts +1 -1
  142. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputPickerActionItem.js +7 -1
  143. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelPicker.d.ts +3 -0
  144. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelPicker.js +51 -55
  145. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelSelectionLogic.d.ts +104 -0
  146. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelSelectionLogic.js +127 -0
  147. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/delegationSessionPickerActionItem.js +5 -5
  148. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modePickerActionItem.d.ts +2 -1
  149. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modePickerActionItem.js +16 -9
  150. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPickerActionItem2.js +2 -1
  151. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/permissionPickerActionItem.d.ts +22 -0
  152. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/permissionPickerActionItem.js +213 -0
  153. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/sessionTargetPickerActionItem.d.ts +1 -0
  154. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/sessionTargetPickerActionItem.js +10 -16
  155. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/workspacePickerActionItem.js +6 -4
  156. package/vscode/src/vs/workbench/contrib/chat/browser/widget/media/chat.css +174 -10
  157. package/vscode/src/vs/workbench/contrib/chat/browser/widget/media/chatViewWelcome.css +2 -12
  158. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatContextUsageDetails.js +12 -16
  159. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatContextUsageWidget.d.ts +1 -0
  160. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatContextUsageWidget.js +5 -1
  161. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/media/chatContextUsageDetails.css +36 -50
  162. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/media/chatContextUsageWidget.css +19 -4
  163. package/vscode/src/vs/workbench/contrib/chat/common/widget/annotations.js +22 -6
  164. package/vscode/src/vs/workbench/contrib/chat/common/widget/chatColors.js +15 -15
  165. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatAffordance.d.ts +3 -1
  166. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatAffordance.js +24 -4
  167. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatController.js +3 -3
  168. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatOverlayWidget.js +5 -5
  169. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatWidget.js +5 -5
  170. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatZoneWidget.js +1 -1
  171. package/vscode/src/vs/workbench/contrib/inlineChat/browser/media/inlineChat.css +2 -2
  172. package/vscode/src/vs/workbench/contrib/inlineChat/browser/media/inlineChatEditorAffordance.css +1 -1
  173. package/vscode/src/vs/workbench/contrib/inlineChat/browser/media/inlineChatOverlayWidget.css +3 -3
  174. package/vscode/src/vs/workbench/contrib/inlineChat/common/inlineChat.d.ts +1 -1
  175. package/vscode/src/vs/workbench/contrib/inlineChat/common/inlineChat.js +38 -46
  176. package/vscode/src/vs/workbench/contrib/interactive/browser/replInputHintContentWidget.js +3 -3
  177. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellStatusBar/executionStatusBarItemController.js +7 -7
  178. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/notebookFindWidget.js +2 -2
  179. package/vscode/src/vs/workbench/contrib/replNotebook/browser/replEditor.js +1 -1
  180. package/vscode/src/vs/workbench/contrib/replNotebook/browser/replEditorInput.js +1 -1
  181. package/vscode/src/vs/workbench/contrib/terminal/browser/chatTerminalCommandMirror.js +6 -10
@@ -222,10 +222,10 @@ let InlineAnchorWidget = class InlineAnchorWidget extends Disposable {
222
222
  );
223
223
  if (location.range) {
224
224
  if (location.range.startLineNumber === location.range.endLineNumber) {
225
- element.setAttribute("aria-label", ( localize(6417, "{0} line {1}", filePathLabel, location.range.startLineNumber)));
225
+ element.setAttribute("aria-label", ( localize(6507, "{0} line {1}", filePathLabel, location.range.startLineNumber)));
226
226
  } else {
227
227
  element.setAttribute("aria-label", ( localize(
228
- 6418,
228
+ 6508,
229
229
  "{0} lines {1} to {2}",
230
230
  filePathLabel,
231
231
  location.range.startLineNumber,
@@ -301,7 +301,7 @@ registerAction2(class AddFileToChatAction extends Action2 {
301
301
  constructor() {
302
302
  super({
303
303
  id: AddFileToChatAction.id,
304
- title: ( localize2(6419, "Add File to Chat")),
304
+ title: ( localize2(6509, "Add File to Chat")),
305
305
  menu: [{
306
306
  id: MenuId.ChatInlineResourceAnchorContext,
307
307
  group: "chat",
@@ -325,7 +325,7 @@ registerAction2(class CopyResourceAction extends Action2 {
325
325
  constructor() {
326
326
  super({
327
327
  id: CopyResourceAction.id,
328
- title: ( localize2(6420, "Copy")),
328
+ title: ( localize2(6510, "Copy")),
329
329
  f1: false,
330
330
  precondition: chatAttachmentResourceContextKey,
331
331
  keybinding: {
@@ -352,7 +352,7 @@ registerAction2(class OpenToSideResourceAction extends Action2 {
352
352
  constructor() {
353
353
  super({
354
354
  id: OpenToSideResourceAction.id,
355
- title: ( localize2(6421, "Open to the Side")),
355
+ title: ( localize2(6511, "Open to the Side")),
356
356
  f1: false,
357
357
  precondition: chatAttachmentResourceContextKey,
358
358
  keybinding: {
@@ -418,8 +418,8 @@ registerAction2(class GoToDefinitionAction extends Action2 {
418
418
  super({
419
419
  id: GoToDefinitionAction.id,
420
420
  title: {
421
- ...( localize2(6422, "Go to Definition")),
422
- mnemonicTitle: ( localize(6423, "Go to &&Definition"))
421
+ ...( localize2(6512, "Go to Definition")),
422
+ mnemonicTitle: ( localize(6513, "Go to &&Definition"))
423
423
  },
424
424
  menu: ( [
425
425
  MenuId.ChatInlineSymbolAnchorContext,
@@ -476,8 +476,8 @@ registerAction2(class GoToTypeDefinitionsAction extends Action2 {
476
476
  super({
477
477
  id: GoToTypeDefinitionsAction.id,
478
478
  title: {
479
- ...( localize2(6424, "Go to Type Definitions")),
480
- mnemonicTitle: ( localize(6425, "Go to &&Type Definitions"))
479
+ ...( localize2(6514, "Go to Type Definitions")),
480
+ mnemonicTitle: ( localize(6515, "Go to &&Type Definitions"))
481
481
  },
482
482
  menu: ( [
483
483
  MenuId.ChatInlineSymbolAnchorContext,
@@ -502,8 +502,8 @@ registerAction2(class GoToImplementations extends Action2 {
502
502
  super({
503
503
  id: GoToImplementations.id,
504
504
  title: {
505
- ...( localize2(6426, "Go to Implementations")),
506
- mnemonicTitle: ( localize(6427, "Go to &&Implementations"))
505
+ ...( localize2(6516, "Go to Implementations")),
506
+ mnemonicTitle: ( localize(6517, "Go to &&Implementations"))
507
507
  },
508
508
  menu: ( [
509
509
  MenuId.ChatInlineSymbolAnchorContext,
@@ -528,8 +528,8 @@ registerAction2(class GoToReferencesAction extends Action2 {
528
528
  super({
529
529
  id: GoToReferencesAction.id,
530
530
  title: {
531
- ...( localize2(6428, "Go to References")),
532
- mnemonicTitle: ( localize(6429, "Go to &&References"))
531
+ ...( localize2(6518, "Go to References")),
532
+ mnemonicTitle: ( localize(6519, "Go to &&References"))
533
533
  },
534
534
  menu: ( [
535
535
  MenuId.ChatInlineSymbolAnchorContext,
@@ -22,7 +22,7 @@ import { CodeBlockModelCollection } from "../../../common/widget/codeBlockModelC
22
22
  import { IChatCodeBlockInfo } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chat";
23
23
  import { ICodeBlockRenderOptions } from "./codeBlockPart.js";
24
24
  import { EditorPool } from "./chatContentCodePools.js";
25
- import { IChatContentPart, IChatContentPartRenderContext } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatContentParts";
25
+ import { IChatContentPart, IChatContentPartRenderContext } from "./chatContentParts.js";
26
26
  export interface IChatMarkdownContentPartOptions {
27
27
  readonly codeBlockRenderOptions?: ICodeBlockRenderOptions;
28
28
  readonly allowInlineDiffs?: boolean;
@@ -8,6 +8,7 @@ import { status } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/ui/a
8
8
  import { HoverStyle } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/ui/hover/hover';
9
9
  import { HoverPosition } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/ui/hover/hoverWidget';
10
10
  import { DomScrollableElement } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/ui/scrollbar/scrollableElement';
11
+ import { wrapTablesWithScrollable } from './chatMarkdownTableScrolling.js';
11
12
  import { coalesce } from '@codingame/monaco-vscode-api/vscode/vs/base/common/arrays';
12
13
  import { findLast } from '@codingame/monaco-vscode-api/vscode/vs/base/common/arraysFind';
13
14
  import { Codicon } from '@codingame/monaco-vscode-api/vscode/vs/base/common/codicons';
@@ -361,6 +362,7 @@ let ChatMarkdownContentPart = class ChatMarkdownContentPart extends Disposable {
361
362
  });
362
363
  scrollable.scanDomNode();
363
364
  }
365
+ orderedDisposablesList.push(wrapTablesWithScrollable(this.domNode, layoutParticipants));
364
366
  orderedDisposablesList.reverse().forEach(d => store.add(d));
365
367
  };
366
368
  doRenderMarkdown();
@@ -590,7 +592,7 @@ let CollapsedCodeBlock = class CollapsedCodeBlock extends Disposable {
590
592
  statusIconEl.classList.add(...statusIconClasses);
591
593
  const entry = editSession.readEntry(uri, r);
592
594
  const rwRatio = Math.floor((entry?.rewriteRatio.read(r) || 0) * 100);
593
- statusLabelEl.textContent = ( localize(6430, "Applying edits"));
595
+ statusLabelEl.textContent = ( localize(6520, "Applying edits"));
594
596
  const showAnimation = this.configurationService.getValue(ChatConfiguration.ShowCodeBlockProgressAnimation);
595
597
  if (showAnimation) {
596
598
  progressFill.style.width = `${rwRatio}%`;
@@ -599,13 +601,13 @@ let CollapsedCodeBlock = class CollapsedCodeBlock extends Disposable {
599
601
  } else {
600
602
  progressFill.style.width = "0%";
601
603
  this.pillElement.classList.remove("progress-filling");
602
- labelDetail.textContent = rwRatio === 0 || !rwRatio ? ( localize(6431, "Generating edits...")) : ( localize(6432, "({0}%)...", rwRatio));
604
+ labelDetail.textContent = rwRatio === 0 || !rwRatio ? ( localize(6521, "Generating edits...")) : ( localize(6522, "({0}%)...", rwRatio));
603
605
  }
604
606
  } else {
605
607
  const statusCodeicon = Codicon.check;
606
608
  statusIconClasses = ThemeIcon.asClassNameArray(statusCodeicon);
607
609
  statusIconEl.classList.add(...statusIconClasses);
608
- statusLabelEl.textContent = ( localize(6433, "Edited"));
610
+ statusLabelEl.textContent = ( localize(6523, "Edited"));
609
611
  const fileKind = uri.path.endsWith("/") ? FileKind.FOLDER : FileKind.FILE;
610
612
  pillIconClasses = getIconClasses(this.modelService, this.languageService, uri, fileKind);
611
613
  iconEl.classList.add(...pillIconClasses);
@@ -625,10 +627,10 @@ let CollapsedCodeBlock = class CollapsedCodeBlock extends Disposable {
625
627
  this.currentDiff = changes;
626
628
  labelAdded.textContent = `+${changes.added}`;
627
629
  labelRemoved.textContent = `-${changes.removed}`;
628
- const insertionsFragment = changes.added === 1 ? ( localize(6434, "1 insertion")) : ( localize(6435, "{0} insertions", changes.added));
629
- const deletionsFragment = changes.removed === 1 ? ( localize(6436, "1 deletion")) : ( localize(6437, "{0} deletions", changes.removed));
630
+ const insertionsFragment = changes.added === 1 ? ( localize(6524, "1 insertion")) : ( localize(6525, "{0} insertions", changes.added));
631
+ const deletionsFragment = changes.removed === 1 ? ( localize(6526, "1 deletion")) : ( localize(6527, "{0} deletions", changes.removed));
630
632
  const summary = ( localize(
631
- 6438,
633
+ 6528,
632
634
  "Edited {0}, {1}, {2}",
633
635
  iconText,
634
636
  insertionsFragment,
@@ -0,0 +1,15 @@
1
+ import { Lazy } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lazy";
2
+ import { DisposableStore } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle";
3
+ /**
4
+ * Finds all tables in `domNode` and wraps each in a {@link DomScrollableElement}
5
+ * so they scroll horizontally with the custom VS Code scrollbar instead of the
6
+ * native one. Each wrapped table is pushed onto `orderedDisposablesList` and a
7
+ * `scanDomNode` callback is registered on `layoutParticipants` so the scrollbar
8
+ * re-measures whenever the container is resized.
9
+ *
10
+ * Each column's `min-width` is also set to the maximum character count across
11
+ * all cells in that column (in `ch` units), preventing short-content columns
12
+ * like "001" from being squeezed to one character wide. Single-character columns
13
+ * are left unchanged. This is layout-free: only `textContent` lengths are read.
14
+ */
15
+ export declare function wrapTablesWithScrollable(domNode: HTMLElement, layoutParticipants: Lazy<Set<() => void>>): DisposableStore;
@@ -0,0 +1,55 @@
1
+
2
+ import { isHTMLElement, createElement } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/dom';
3
+ import { DomScrollableElement } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/ui/scrollbar/scrollableElement';
4
+ import { DisposableStore } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
5
+ import { ScrollbarVisibility } from '@codingame/monaco-vscode-api/vscode/vs/base/common/scrollable';
6
+
7
+ function wrapTablesWithScrollable(domNode, layoutParticipants) {
8
+ const store = ( new DisposableStore());
9
+ for (const table of domNode.querySelectorAll("table")) {
10
+ if (!isHTMLElement(table)) {
11
+ continue;
12
+ }
13
+ applyTableColumnMinWidths(table);
14
+ const parent = table.parentElement;
15
+ const nextSibling = table.nextSibling;
16
+ const tableContainer = createElement("div");
17
+ tableContainer.appendChild(table);
18
+ const scrollable = store.add(( new DomScrollableElement(tableContainer, {
19
+ vertical: ScrollbarVisibility.Hidden,
20
+ horizontal: ScrollbarVisibility.Auto
21
+ })));
22
+ const scrollNode = scrollable.getDomNode();
23
+ scrollNode.classList.add("rendered-markdown-table-scroll-wrapper");
24
+ parent?.insertBefore(scrollNode, nextSibling);
25
+ layoutParticipants.value.add(() => {
26
+ scrollable.scanDomNode();
27
+ });
28
+ scrollable.scanDomNode();
29
+ }
30
+ return store;
31
+ }
32
+ const TABLE_COLUMN_MIN_WIDTH_CAP_CH = 3;
33
+ function applyTableColumnMinWidths(table) {
34
+ const rows = table.rows;
35
+ const colMaxChars = [];
36
+ for (const row of rows) {
37
+ for (let c = 0; c < row.cells.length; c++) {
38
+ const len = row.cells[c].textContent?.length ?? 0;
39
+ if (len > (colMaxChars[c] ?? 0)) {
40
+ colMaxChars[c] = len;
41
+ }
42
+ }
43
+ }
44
+ const firstRow = rows[0];
45
+ if (firstRow) {
46
+ for (let c = 0; c < firstRow.cells.length; c++) {
47
+ const minCh = colMaxChars[c];
48
+ if (minCh !== undefined && minCh > 1) {
49
+ firstRow.cells[c].style.minWidth = Math.min(minCh, TABLE_COLUMN_MIN_WIDTH_CAP_CH) + "ch";
50
+ }
51
+ }
52
+ }
53
+ }
54
+
55
+ export { wrapTablesWithScrollable };
@@ -5,7 +5,7 @@ import { IOpenerService } from "@codingame/monaco-vscode-api/vscode/vs/platform/
5
5
  import { IMcpService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/mcp/common/mcpTypes.service";
6
6
  import { IChatMcpServersStarting, IChatMcpServersStartingSerialized } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatService/chatService";
7
7
  import { IChatRendererContent } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/model/chatViewModel";
8
- import { IChatContentPart, IChatContentPartRenderContext } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatContentParts";
8
+ import { IChatContentPart, IChatContentPartRenderContext } from "./chatContentParts.js";
9
9
  export declare class ChatMcpServersInteractionContentPart extends Disposable implements IChatContentPart {
10
10
  private readonly data;
11
11
  private readonly context;
@@ -96,19 +96,19 @@ let ChatMcpServersInteractionContentPart = class ChatMcpServersInteractionConten
96
96
  }
97
97
  updateDetailedProgress(state) {
98
98
  const skipText = createMarkdownCommandLink({
99
- title: ( localize(6439, "Skip?")),
99
+ title: ( localize(6529, "Skip?")),
100
100
  id: McpCommandIds.SkipCurrentAutostart
101
101
  });
102
102
  let content;
103
103
  if (state.starting.length === 0) {
104
104
  content = ( new MarkdownString(undefined, {
105
105
  isTrusted: true
106
- })).appendText(( localize(6440, "Activating MCP extensions...")) + " ").appendMarkdown(skipText);
106
+ })).appendText(( localize(6530, "Activating MCP extensions...")) + " ").appendMarkdown(skipText);
107
107
  } else {
108
108
  const serverLinks = this.createServerCommandLinks(state.starting);
109
109
  content = ( new MarkdownString(undefined, {
110
110
  isTrusted: true
111
- })).appendMarkdown(( localize(6441, "Starting MCP servers {0}...", serverLinks)) + " ").appendMarkdown(skipText);
111
+ })).appendMarkdown(( localize(6531, "Starting MCP servers {0}...", serverLinks)) + " ").appendMarkdown(skipText);
112
112
  }
113
113
  if (this.workingProgressPart) {
114
114
  this.workingProgressPart.updateMessage(content);
@@ -147,12 +147,12 @@ let ChatMcpServersInteractionContentPart = class ChatMcpServersInteractionConten
147
147
  const count = serversRequiringInteraction.length;
148
148
  const links = this.createServerCommandLinks(serversRequiringInteraction);
149
149
  const content = count === 1 ? ( localize(
150
- 6442,
150
+ 6532,
151
151
  "The MCP server {0} may have new tools and requires interaction to start. [Start it now?]({1})",
152
152
  links,
153
153
  "#start"
154
154
  )) : ( localize(
155
- 6443,
155
+ 6533,
156
156
  "The MCP servers {0} may have new tools and require interaction to start. [Start them now?]({1})",
157
157
  links,
158
158
  "#start"
@@ -194,7 +194,7 @@ let ChatMcpServersInteractionContentPart = class ChatMcpServersInteractionConten
194
194
  const serversToStart = state.serversRequiringInteraction;
195
195
  for (let i = 0; i < serversToStart.length; i++) {
196
196
  const serverInfo = serversToStart[i];
197
- startLink.textContent = ( localize(6444, "Starting {0}...", serverInfo.label));
197
+ startLink.textContent = ( localize(6534, "Starting {0}...", serverInfo.label));
198
198
  const server = this.mcpService.servers.get().find(s => s.definition.id === serverInfo.id);
199
199
  if (server) {
200
200
  await startServerAndWaitForLiveTools(server, {
@@ -6,7 +6,7 @@ import { IEditorService } from "@codingame/monaco-vscode-api/vscode/vs/workbench
6
6
  import { IChatMultiDiffData, IChatMultiDiffDataSerialized } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatService/chatService";
7
7
  import { IChatRendererContent } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/model/chatViewModel";
8
8
  import { ChatTreeItem } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chat";
9
- import { IChatContentPart } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatContentParts";
9
+ import { IChatContentPart } from "./chatContentParts.js";
10
10
  export declare class ChatMultiDiffContentPart extends Disposable implements IChatContentPart {
11
11
  private readonly content;
12
12
  private readonly _element;
@@ -64,7 +64,7 @@ let ChatMultiDiffContentPart = class ChatMultiDiffContentPart extends Disposable
64
64
  const viewListButton = ( new ButtonWithIcon(viewListButtonContainer, {}));
65
65
  this._register(autorun(reader => {
66
66
  const fileCount = this.diffData.read(reader).resources.length;
67
- viewListButton.label = fileCount === 1 ? ( localize(6445, "Changed 1 file")) : ( localize(6446, "Changed {0} files", fileCount));
67
+ viewListButton.label = fileCount === 1 ? ( localize(6535, "Changed 1 file")) : ( localize(6536, "Changed {0} files", fileCount));
68
68
  }));
69
69
  const setExpansionState = () => {
70
70
  viewListButton.icon = this.isCollapsed ? Codicon.chevronRight : Codicon.chevronDown;
@@ -86,7 +86,7 @@ let ChatMultiDiffContentPart = class ChatMultiDiffContentPart extends Disposable
86
86
  renderViewAllFileChangesButton(container) {
87
87
  const button = container.appendChild($(".chat-view-changes-icon"));
88
88
  button.classList.add(...ThemeIcon.asClassNameArray(Codicon.diffMultiple));
89
- button.title = ( localize(6447, "Open Changes"));
89
+ button.title = ( localize(6537, "Open Changes"));
90
90
  return addDisposableListener(button, "click", e => {
91
91
  const source = ( URI.parse(`multi-diff-editor:${( ( new Date()).getMilliseconds().toString()) + ( Math.random().toString())}`));
92
92
  const {
@@ -143,7 +143,7 @@ let ChatMultiDiffContentPart = class ChatMultiDiffContentPart extends Disposable
143
143
  alwaysConsumeMouseWheel: false,
144
144
  accessibilityProvider: {
145
145
  getAriaLabel: element => element.uri.path,
146
- getWidgetAriaLabel: () => ( localize(6448, "File Changes"))
146
+ getWidgetAriaLabel: () => ( localize(6538, "File Changes"))
147
147
  }
148
148
  })
149
149
  );
@@ -259,7 +259,7 @@ class ChatMultiDiffListRenderer {
259
259
  const removedElement = changesSummary.appendChild($(".deletions"));
260
260
  removedElement.textContent = `-${element.diff.removed}`;
261
261
  changesSummary.setAttribute("aria-label", ( localize(
262
- 6449,
262
+ 6539,
263
263
  "{0} lines added, {1} lines removed",
264
264
  element.diff.added,
265
265
  element.diff.removed
@@ -6,7 +6,7 @@ import { IInstantiationService } from "@codingame/monaco-vscode-api/vscode/vs/pl
6
6
  import { IChatProgressMessage, IChatTask, IChatTaskSerialized, IChatToolInvocation, IChatToolInvocationSerialized } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatService/chatService";
7
7
  import { IChatRendererContent } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/model/chatViewModel";
8
8
  import { ChatTreeItem } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chat";
9
- import { IChatContentPart, IChatContentPartRenderContext } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatContentParts";
9
+ import { IChatContentPart, IChatContentPartRenderContext } from "./chatContentParts.js";
10
10
  import { IChatMarkdownAnchorService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMarkdownAnchorService.service";
11
11
  import { IConfigurationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/configuration/common/configuration.service";
12
12
  import { IHoverService } from "@codingame/monaco-vscode-api/vscode/vs/platform/hover/browser/hover.service";
@@ -1,9 +1,11 @@
1
1
 
2
2
  import { __decorate, __param } from '@codingame/monaco-vscode-api/external/tslib/tslib.es6';
3
3
  import { $, append } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/dom';
4
+ import { renderAsPlaintext } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/markdownRenderer';
4
5
  import { alert } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/ui/aria/aria';
5
6
  import { Codicon } from '@codingame/monaco-vscode-api/vscode/vs/base/common/codicons';
6
7
  import { MarkdownString } from '@codingame/monaco-vscode-api/vscode/vs/base/common/htmlContent';
8
+ import { stripIcons } from '@codingame/monaco-vscode-api/vscode/vs/base/common/iconLabels';
7
9
  import { Disposable, MutableDisposable, DisposableStore } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
8
10
  import { ThemeIcon } from '@codingame/monaco-vscode-api/vscode/vs/base/common/themables';
9
11
  import { IInstantiationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation';
@@ -49,8 +51,8 @@ let ChatProgressContentPart = class ChatProgressContentPart extends Disposable {
49
51
  this.domNode = $("");
50
52
  return;
51
53
  }
52
- if (this.showSpinner && !this.configurationService.getValue(AccessibilityWorkbenchSettingId.VerboseChatProgressUpdates)) {
53
- alert(progress.content.value);
54
+ if (this.showSpinner && this.configurationService.getValue(AccessibilityWorkbenchSettingId.VerboseChatProgressUpdates)) {
55
+ alert(stripIcons(renderAsPlaintext(progress.content)));
54
56
  }
55
57
  const isLoadingIcon = icon && ThemeIcon.isEqual(icon, ThemeIcon.modify(Codicon.loading, "spin"));
56
58
  const useShimmer = (shimmer ?? (!icon || isLoadingIcon)) && this.showSpinner;
@@ -145,7 +147,7 @@ let ChatWorkingProgressContentPart = class ChatWorkingProgressContentPart extend
145
147
  ) {
146
148
  const progressMessage = {
147
149
  kind: "progressMessage",
148
- content: ( new MarkdownString()).appendText(( localize(6450, "Working")))
150
+ content: ( new MarkdownString()).appendText(( localize(6540, "Working")))
149
151
  };
150
152
  super(
151
153
  progressMessage,
@@ -162,7 +164,7 @@ let ChatWorkingProgressContentPart = class ChatWorkingProgressContentPart extend
162
164
  );
163
165
  this._register(languageModelToolsService.onDidPrepareToolCallBecomeUnresponsive(e => {
164
166
  if (isEqual(context.element.sessionResource, e.sessionResource)) {
165
- this.updateMessage(( new MarkdownString(( localize(6451, "Waiting for tool '{0}' to respond...", e.toolData.displayName)))));
167
+ this.updateMessage(( new MarkdownString(( localize(6541, "Waiting for tool '{0}' to respond...", e.toolData.displayName)))));
166
168
  }
167
169
  }));
168
170
  }
@@ -2,7 +2,7 @@ import { Disposable, IDisposable } from "@codingame/monaco-vscode-api/vscode/vs/
2
2
  import { IChatPullRequestContent } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatService/chatService";
3
3
  import { IChatRendererContent } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/model/chatViewModel";
4
4
  import { ChatTreeItem } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chat";
5
- import { IChatContentPart } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatContentParts";
5
+ import { IChatContentPart } from "./chatContentParts.js";
6
6
  import { ICommandService } from "@codingame/monaco-vscode-api/vscode/vs/platform/commands/common/commands.service";
7
7
  export declare class ChatPullRequestContentPart extends Disposable implements IChatContentPart {
8
8
  private readonly pullRequestContent;
@@ -3,7 +3,7 @@ import { Disposable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/l
3
3
  import { IAccessibilityService } from "@codingame/monaco-vscode-api/vscode/vs/platform/accessibility/common/accessibility.service";
4
4
  import { IMarkdownRendererService } from "@codingame/monaco-vscode-api/vscode/vs/platform/markdown/browser/markdownRenderer.service";
5
5
  import { IChatQuestionCarousel } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatService/chatService";
6
- import { IChatContentPart, IChatContentPartRenderContext } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatContentParts";
6
+ import { IChatContentPart, IChatContentPartRenderContext } from "./chatContentParts.js";
7
7
  import { IChatRendererContent } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/model/chatViewModel";
8
8
  import { ChatTreeItem } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chat";
9
9
  import { IHoverService } from "@codingame/monaco-vscode-api/vscode/vs/platform/hover/browser/hover.service";
@@ -30,10 +30,10 @@ export declare class ChatQuestionCarouselPart extends Disposable implements ICha
30
30
  private _closeButtonContainer;
31
31
  private _footerRow;
32
32
  private _stepIndicator;
33
- private _navigationButtons;
33
+ private _submitHint;
34
+ private _submitButton;
34
35
  private _prevButton;
35
36
  private _nextButton;
36
- private readonly _nextButtonHover;
37
37
  private _skipAllButton;
38
38
  private _isSkipped;
39
39
  private readonly _textInputBoxes;
@@ -42,6 +42,7 @@ export declare class ChatQuestionCarouselPart extends Disposable implements ICha
42
42
  private readonly _freeformTextareas;
43
43
  private readonly _inputBoxes;
44
44
  private readonly _questionRenderStore;
45
+ private _inputScrollable;
45
46
  /**
46
47
  * Disposable store for interactive UI components (header, nav buttons, etc.)
47
48
  * that should be disposed when transitioning to summary view.
@@ -53,16 +54,21 @@ export declare class ChatQuestionCarouselPart extends Disposable implements ICha
53
54
  * Saves the current question's answer to the answers map.
54
55
  */
55
56
  private saveCurrentAnswer;
57
+ private persistDraftState;
56
58
  /**
57
59
  * Navigates the carousel by the given delta.
58
60
  * @param delta Negative for previous, positive for next
59
61
  */
60
62
  private navigate;
61
63
  /**
62
- * Handles the next/submit button action.
63
- * Either advances to the next question or submits.
64
+ * Handles the next/submit behavior for keyboard and option selection flows.
65
+ * Either advances to the next question or submits when on the last question.
64
66
  */
65
- private handleNext;
67
+ private handleNextOrSubmit;
68
+ /**
69
+ * Handles explicit submit action from the dedicated submit button.
70
+ */
71
+ private submit;
66
72
  /**
67
73
  * Focuses the container element and announces the question for screen reader users.
68
74
  */
@@ -76,6 +82,7 @@ export declare class ChatQuestionCarouselPart extends Disposable implements ICha
76
82
  * and resets references to disposed elements.
77
83
  */
78
84
  private clearInteractiveResources;
85
+ private layoutInputScrollable;
79
86
  /**
80
87
  * Skips the carousel with default values - called when user wants to proceed quickly.
81
88
  * Returns defaults for all questions.
@@ -114,6 +121,18 @@ export declare class ChatQuestionCarouselPart extends Disposable implements ICha
114
121
  navigateToPreviousQuestion(): boolean;
115
122
  navigateToNextQuestion(): boolean;
116
123
  private renderCurrentQuestion;
124
+ /**
125
+ * Renders or updates the persistent footer with nav arrows, step indicator, and submit button.
126
+ */
127
+ private renderFooter;
128
+ /**
129
+ * Updates the footer nav button enabled state and step indicator text.
130
+ */
131
+ private updateFooterState;
132
+ /**
133
+ * Renders a simplified footer with just a submit button for single-question multi-select carousels.
134
+ */
135
+ private renderSingleQuestionFooter;
117
136
  private getLabelWithKeybinding;
118
137
  private renderInput;
119
138
  /**
@@ -142,4 +161,5 @@ export declare class ChatQuestionCarouselPart extends Disposable implements ICha
142
161
  addDisposable(disposable: {
143
162
  dispose(): void;
144
163
  }): void;
164
+ dispose(): void;
145
165
  }