@codingame/monaco-vscode-katex-common 29.1.1 → 30.0.0

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 (180) hide show
  1. package/package.json +2 -2
  2. package/vscode/src/vs/platform/actions/browser/buttonbar.js +14 -13
  3. package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatAccessibilityProvider.js +16 -16
  4. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContinueInAction.js +9 -9
  5. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatElicitationActions.js +1 -1
  6. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatExecuteActions.js +34 -34
  7. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatTitleActions.js +12 -20
  8. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolActions.d.ts +14 -0
  9. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolActions.js +208 -0
  10. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolPicker.d.ts +22 -0
  11. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolPicker.js +637 -0
  12. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionApprovalModel.d.ts +1 -0
  13. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionApprovalModel.js +1 -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 +9 -1
  16. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsControl.js +202 -13
  17. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsFilter.d.ts +4 -0
  18. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsFilter.js +17 -8
  19. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsOpener.js +1 -1
  20. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsViewer.d.ts +53 -5
  21. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsViewer.js +296 -63
  22. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/media/agentsessionsviewer.css +59 -23
  23. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentWidgets.js +55 -42
  24. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/implicitContextAttachment.js +12 -12
  25. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingActions.js +110 -59
  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/chatSessions/chatSessionPickerActionItem.js +1 -1
  30. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/searchableOptionPickerActionItem.js +5 -4
  31. package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolSetsContribution.d.ts +24 -0
  32. package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolSetsContribution.js +384 -0
  33. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatAgentHover.js +2 -2
  34. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatArtifactsWidget.d.ts +12 -7
  35. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatArtifactsWidget.js +220 -61
  36. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentMarkdownRenderer.js +1 -2
  37. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAgentCommandContentPart.js +1 -1
  38. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAnonymousRateLimitedPart.js +2 -2
  39. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAttachmentsContentPart.d.ts +6 -0
  40. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAttachmentsContentPart.js +14 -1
  41. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatChangesSummaryPart.js +1 -1
  42. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCodeCitationContentPart.js +1 -1
  43. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCommandContentPart.js +1 -1
  44. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatConfirmationContentPart.js +2 -2
  45. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatConfirmationWidget.js +1 -1
  46. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatContentCodePools.js +5 -4
  47. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatDisabledClaudeHooksContentPart.js +3 -3
  48. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatExtensionsContentPart.js +1 -1
  49. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatHookContentPart.js +1 -1
  50. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatInlineAnchorWidget.d.ts +5 -0
  51. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatInlineAnchorWidget.js +14 -14
  52. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMarkdownContentPart.d.ts +11 -0
  53. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMarkdownContentPart.js +40 -12
  54. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMcpServersInteractionContentPart.js +8 -8
  55. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMultiDiffContentPart.js +4 -4
  56. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatProgressContentPart.js +2 -2
  57. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatQuestionCarouselPart.d.ts +1 -0
  58. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatQuestionCarouselPart.js +97 -54
  59. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatQuotaExceededPart.js +5 -4
  60. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatReferencesContentPart.js +6 -6
  61. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatResourceGroupWidget.js +5 -5
  62. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatSubagentContentPart.js +6 -6
  63. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatSuggestNextWidget.js +8 -7
  64. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTextEditContentPart.js +1 -1
  65. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatThinkingContentPart.d.ts +15 -2
  66. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatThinkingContentPart.js +155 -22
  67. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTipContentPart.js +9 -9
  68. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTodoListWidget.d.ts +3 -1
  69. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTodoListWidget.js +36 -19
  70. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatToolInputOutputContentPart.js +2 -2
  71. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTreeContentPart.js +1 -1
  72. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatWorkspaceEditContentPart.js +3 -3
  73. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/codeBlockPart.js +14 -14
  74. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatThinkingContent.css +13 -0
  75. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/abstractToolConfirmationSubPart.js +1 -1
  76. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatExtensionsInstallToolSubPart.js +4 -4
  77. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatMcpAppModel.js +1 -1
  78. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatMcpAppSubPart.js +3 -3
  79. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatMissingSandboxDepsConfirmationSubPart.d.ts +17 -0
  80. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatMissingSandboxDepsConfirmationSubPart.js +68 -0
  81. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatModifiedFilesConfirmationSubPart.js +6 -6
  82. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolConfirmationSubPart.js +16 -16
  83. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolProgressPart.js +33 -25
  84. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolConfirmationSubPart.js +7 -7
  85. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolInvocationPart.js +12 -3
  86. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolOutputPart.js +2 -2
  87. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolPartUtilities.js +5 -5
  88. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolPostExecuteConfirmationPart.js +5 -5
  89. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatDragAndDrop.js +11 -11
  90. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatListRenderer.d.ts +4 -13
  91. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatListRenderer.js +37 -113
  92. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatListWidget.js +1 -1
  93. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatWidget.d.ts +10 -3
  94. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatWidget.js +66 -39
  95. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatFollowups.js +1 -1
  96. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputPart.d.ts +13 -2
  97. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputPart.js +103 -61
  98. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelPicker.d.ts +2 -1
  99. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelPicker.js +35 -23
  100. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/delegationSessionPickerActionItem.d.ts +4 -4
  101. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/delegationSessionPickerActionItem.js +6 -6
  102. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modePickerActionItem.js +5 -5
  103. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPickerActionItem2.d.ts +1 -0
  104. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPickerActionItem2.js +4 -1
  105. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/permissionPickerActionItem.d.ts +2 -1
  106. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/permissionPickerActionItem.js +39 -24
  107. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/sessionTargetPickerActionItem.d.ts +6 -5
  108. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/sessionTargetPickerActionItem.js +44 -18
  109. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/workspacePickerActionItem.js +3 -3
  110. package/vscode/src/vs/workbench/contrib/chat/browser/widget/media/chat.css +60 -10
  111. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatContextUsageDetails.js +7 -7
  112. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatContextUsageWidget.js +2 -2
  113. package/vscode/src/vs/workbench/contrib/chat/common/chatImageExtraction.js +6 -6
  114. package/vscode/src/vs/workbench/contrib/chat/common/widget/chatColors.js +15 -15
  115. package/vscode/src/vs/workbench/contrib/chat/common/widget/codeBlockModelCollection.js +4 -0
  116. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatController.js +4 -4
  117. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatOverlayWidget.js +5 -5
  118. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionService.d.ts +4 -1
  119. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionService.js +5 -2
  120. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatWidget.js +6 -11
  121. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatZoneWidget.js +1 -1
  122. package/vscode/src/vs/workbench/contrib/inlineChat/common/inlineChat.js +39 -39
  123. package/vscode/src/vs/workbench/contrib/interactive/browser/replInputHintContentWidget.js +3 -3
  124. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellStatusBar/executionStatusBarItemController.js +7 -7
  125. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/notebookFindWidget.js +2 -2
  126. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/cellOperations.d.ts +26 -0
  127. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/cellOperations.js +746 -0
  128. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/insertCellActions.d.ts +13 -0
  129. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/insertCellActions.js +300 -0
  130. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffCellEditorOptions.d.ts +8 -0
  131. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffCellEditorOptions.js +55 -0
  132. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffComponents.d.ts +273 -0
  133. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffComponents.js +1963 -0
  134. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffElementOutputs.d.ts +50 -0
  135. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffElementOutputs.js +314 -0
  136. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffElementViewModel.d.ts +258 -0
  137. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffElementViewModel.js +886 -0
  138. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffNestedCellViewModel.d.ts +41 -0
  139. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffNestedCellViewModel.js +118 -0
  140. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/editorHeightCalculator.d.ts +17 -0
  141. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/editorHeightCalculator.js +71 -0
  142. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/eventDispatcher.d.ts +27 -0
  143. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/eventDispatcher.js +40 -0
  144. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookCellDiffDecorator.d.ts +23 -0
  145. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookCellDiffDecorator.js +313 -0
  146. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookDeletedCellDecorator.d.ts +51 -0
  147. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookDeletedCellDecorator.js +265 -0
  148. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookInlineDiff.d.ts +24 -0
  149. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookInlineDiff.js +185 -0
  150. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookInlineDiffWidget.d.ts +28 -0
  151. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookInlineDiffWidget.js +104 -0
  152. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookInsertedCellDecorator.d.ts +10 -0
  153. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookInsertedCellDecorator.js +43 -0
  154. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookOriginalCellModelFactory.d.ts +21 -0
  155. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookOriginalCellModelFactory.js +41 -0
  156. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookOriginalModelRefFactory.d.ts +25 -0
  157. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookOriginalModelRefFactory.js +69 -0
  158. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiff.css +469 -0
  159. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffEditor.d.ts +149 -0
  160. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffEditor.js +933 -0
  161. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffEditorBrowser.d.ts +180 -0
  162. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffEditorBrowser.js +32 -0
  163. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffList.d.ts +102 -0
  164. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffList.js +643 -0
  165. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffOverviewRuler.d.ts +30 -0
  166. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffOverviewRuler.js +197 -0
  167. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffViewModel.d.ts +75 -0
  168. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffViewModel.js +539 -0
  169. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/unchangedEditorRegions.d.ts +13 -0
  170. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/unchangedEditorRegions.js +39 -0
  171. package/vscode/src/vs/workbench/contrib/notebook/common/model/notebookMetadataTextModel.d.ts +19 -0
  172. package/vscode/src/vs/workbench/contrib/notebook/common/model/notebookMetadataTextModel.js +90 -0
  173. package/vscode/src/vs/workbench/contrib/notebook/common/notebookDiff.d.ts +26 -0
  174. package/vscode/src/vs/workbench/contrib/notebook/common/notebookDiff.js +92 -0
  175. package/vscode/src/vs/workbench/contrib/replNotebook/browser/replEditor.js +1 -1
  176. package/vscode/src/vs/workbench/contrib/replNotebook/browser/replEditorInput.js +1 -1
  177. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessions.contribution.d.ts +0 -152
  178. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessions.contribution.js +0 -1317
  179. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/internalCustomizations/internalPromptFileSystem.d.ts +0 -47
  180. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/internalCustomizations/internalPromptFileSystem.js +0 -95
@@ -4,7 +4,6 @@ import { $ as $$1, append, addDisposableListener, EventType, createElement, Disp
4
4
  import { renderFormattedText } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/formattedTextRenderer';
5
5
  import { StandardKeyboardEvent } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/keyboardEvent';
6
6
  import { alert } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/ui/aria/aria';
7
- import { DropdownMenuActionViewItem } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/ui/dropdown/dropdownActionViewItem';
8
7
  import { getDefaultHoverDelegate } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/ui/hover/hoverDelegateFactory';
9
8
  import { CachedListVirtualDelegate } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/ui/list/list';
10
9
  import { coalesce, distinct } from '@codingame/monaco-vscode-api/vscode/vs/base/common/arrays';
@@ -29,7 +28,6 @@ import { MenuId, MenuItemAction } from '@codingame/monaco-vscode-api/vscode/vs/p
29
28
  import { ICommandService } from '@codingame/monaco-vscode-api/vscode/vs/platform/commands/common/commands.service';
30
29
  import { IConfigurationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/configuration/common/configuration.service';
31
30
  import { IContextKeyService } from '@codingame/monaco-vscode-api/vscode/vs/platform/contextkey/common/contextkey.service';
32
- import { IContextMenuService } from '@codingame/monaco-vscode-api/vscode/vs/platform/contextview/browser/contextView.service';
33
31
  import { IHoverService } from '@codingame/monaco-vscode-api/vscode/vs/platform/hover/browser/hover.service';
34
32
  import { IInstantiationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation';
35
33
  import { ServiceCollection } from '@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/serviceCollection';
@@ -39,13 +37,12 @@ import { IThemeService } from '@codingame/monaco-vscode-api/vscode/vs/platform/t
39
37
  import { AccessibilitySignal } from '@codingame/monaco-vscode-api/vscode/vs/platform/accessibilitySignal/browser/accessibilitySignalService';
40
38
  import { IAccessibilitySignalService } from '@codingame/monaco-vscode-api/vscode/vs/platform/accessibilitySignal/browser/accessibilitySignalService.service';
41
39
  import { IChatEntitlementService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/chat/common/chatEntitlementService.service';
42
- import { IWorkbenchIssueService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/issue/common/issue.service';
43
40
  import { CodiconActionViewItem } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/notebook/browser/view/cellParts/cellActionView';
44
41
  import { annotateSpecialMarkdownContent, hasEditCodeblockUriTag, hasCodeblockUriTag, extractSubAgentInvocationIdFromText } from '../../common/widget/annotations.js';
45
42
  import { checkModeOption } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chat';
46
43
  import { ChatContextKeys } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/actions/chatContextKeys';
47
44
  import { chatSubcommandLeader } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/requestParser/chatParserTypes';
48
- import { ChatAgentVoteDirection, ChatRequestQueueKind, IChatToolInvocation, isChatFollowup, ChatErrorLevel, ChatAgentVoteDownReason } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatService/chatService';
45
+ import { ChatAgentVoteDirection, ChatRequestQueueKind, IChatToolInvocation, isChatFollowup, ChatErrorLevel } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatService/chatService';
49
46
  import { IChatService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatService/chatService.service';
50
47
  import { ChatQuestionCarouselData } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/model/chatProgressTypes/chatQuestionCarouselData';
51
48
  import { localChatSessionType } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatSessionsService';
@@ -55,7 +52,7 @@ import { getNWords } from '@codingame/monaco-vscode-api/vscode/vs/workbench/cont
55
52
  import { CodeBlockModelCollection } from '../../common/widget/codeBlockModelCollection.js';
56
53
  import { ChatConfiguration, ChatAgentLocation, CollapsedToolsDisplayMode, ThinkingDisplayMode, ChatModeKind } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/constants';
57
54
  import { ClickAnimation } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/ui/animations/animations';
58
- import { MarkUnhelpfulActionId, MarkHelpfulActionId } from '../actions/chatTitleActions.js';
55
+ import { MarkHelpfulActionId } from '../actions/chatTitleActions.js';
59
56
  import { IChatWidgetService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chat.service';
60
57
  import { ChatAgentHover, getChatAgentHoverOptions } from './chatAgentHover.js';
61
58
  import { ChatContentMarkdownRenderer } from './chatContentMarkdownRenderer.js';
@@ -98,12 +95,14 @@ import { HookType } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contr
98
95
  import { IWorkbenchEnvironmentService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/environment/common/environmentService.service';
99
96
  import { AccessibilityWorkbenchSettingId } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/accessibility/browser/accessibilityConfiguration';
100
97
  import { isMcpToolInvocation } from './chatContentParts/toolInvocationParts/chatToolPartUtilities.js';
98
+ import { isAgentHostTarget } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/agentSessions/agentSessions';
101
99
  import { observableValue } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/observables/observableValue';
102
100
  import { autorun } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/reactions/autorun';
103
101
 
104
102
  var ChatListItemRenderer_1;
105
103
  const $ = $$1;
106
104
  const COPILOT_USERNAME = "GitHub Copilot";
105
+ const WORKING_CAUGHT_UP_DEBOUNCE_MS = 50;
107
106
  const mostRecentResponseClassName = "chat-most-recent-response";
108
107
  function upvoteAnimationSettingToEnum(value) {
109
108
  switch (value) {
@@ -445,9 +444,6 @@ let ChatListItemRenderer = class ChatListItemRenderer extends Disposable {
445
444
  shouldInlineSubmenu: submenu => submenu.actions.length <= 1
446
445
  },
447
446
  actionViewItemProvider: (action, options) => {
448
- if (action instanceof MenuItemAction && action.item.id === MarkUnhelpfulActionId) {
449
- return scopedInstantiationService.createInstance(ChatVoteDownButton, action, options);
450
- }
451
447
  if (action instanceof MenuItemAction && action.item.id === MarkHelpfulActionId) {
452
448
  const animation = upvoteAnimationSettingToEnum(this.configService.getValue("chat.upvoteAnimation"));
453
449
  return scopedInstantiationService.createInstance(MenuEntryActionViewItem, action, {
@@ -464,7 +460,7 @@ let ChatListItemRenderer = class ChatListItemRenderer extends Disposable {
464
460
  const checkpointRestoreContainer = append(rowContainer, $(".checkpoint-restore-container"));
465
461
  append(checkpointRestoreContainer, $(".checkpoint-line-left"));
466
462
  const label = append(checkpointRestoreContainer, $("span.checkpoint-label-text"));
467
- label.textContent = ( localize(6933, "Checkpoint Restored"));
463
+ label.textContent = ( localize(6996, "Checkpoint Restored"));
468
464
  const dot = append(checkpointRestoreContainer, $("span.checkpoint-dot-separator"));
469
465
  dot.textContent = "·";
470
466
  dot.setAttribute("aria-hidden", "true");
@@ -633,6 +629,9 @@ let ChatListItemRenderer = class ChatListItemRenderer extends Disposable {
633
629
  ChatContextKeys.isResponse.bindTo(templateData.contextKeyService).set(isResponseVM(element));
634
630
  ChatContextKeys.itemId.bindTo(templateData.contextKeyService).set(element.id);
635
631
  ChatContextKeys.isRequest.bindTo(templateData.contextKeyService).set(isRequestVM(element));
632
+ ChatContextKeys.isFirstRequest.bindTo(templateData.contextKeyService).set(
633
+ isRequestVM(element) && this.viewModel?.model.getRequests()[0]?.id === element.id
634
+ );
636
635
  ChatContextKeys.isPendingRequest.bindTo(templateData.contextKeyService).set(isRequestVM(element) && !!element.pendingKind);
637
636
  ChatContextKeys.responseDetectedAgentCommand.bindTo(templateData.contextKeyService).set(isResponseVM(element) && element.agentOrSlashCommandDetected);
638
637
  if (isResponseVM(element)) {
@@ -814,11 +813,11 @@ let ChatListItemRenderer = class ChatListItemRenderer extends Disposable {
814
813
  const dividerContent = $$1(".pending-divider-content");
815
814
  const label = append(dividerContent, $$1("span.pending-divider-label"));
816
815
  if (element.dividerKind === ChatRequestQueueKind.Steering) {
817
- label.textContent = ( localize(6934, "Steering"));
818
- label.title = ( localize(6935, "Steering message will be sent after the next tool call happens"));
816
+ label.textContent = ( localize(6997, "Steering"));
817
+ label.title = ( localize(6998, "Steering message will be sent after the next tool call happens"));
819
818
  } else {
820
- label.textContent = ( localize(6936, "Queued"));
821
- label.title = ( localize(6937, "Queued messages will be sent after the current request completes"));
819
+ label.textContent = ( localize(6999, "Queued"));
820
+ label.title = ( localize(7000, "Queued messages will be sent after the current request completes"));
822
821
  }
823
822
  templateData.value.appendChild(dividerContent);
824
823
  }
@@ -826,10 +825,10 @@ let ChatListItemRenderer = class ChatListItemRenderer extends Disposable {
826
825
  clearNode(templateData.detail);
827
826
  if (element.agentOrSlashCommandDetected) {
828
827
  const msg = element.slashCommand ? ( localize(
829
- 6938,
828
+ 7001,
830
829
  "used {0} [[(rerun without)]]",
831
830
  `${chatSubcommandLeader}${element.slashCommand.name}`
832
- )) : ( localize(6939, "[[(rerun without)]]"));
831
+ )) : ( localize(7002, "[[(rerun without)]]"));
833
832
  reset(templateData.detail, renderFormattedText(msg, {
834
833
  actionHandler: {
835
834
  disposables: templateData.elementDisposables,
@@ -842,7 +841,7 @@ let ChatListItemRenderer = class ChatListItemRenderer extends Disposable {
842
841
  this.delegate.currentChatMode(),
843
842
  this.rendererOptions.progressMessageAtBottomOfResponse
844
843
  )) {
845
- templateData.detail.textContent = ( localize(6940, "Working"));
844
+ templateData.detail.textContent = ( localize(7003, "Working"));
846
845
  }
847
846
  }
848
847
  renderConfirmationAction(element, templateData) {
@@ -851,7 +850,7 @@ let ChatListItemRenderer = class ChatListItemRenderer extends Disposable {
851
850
  append(templateData.detail, $("span.codicon.codicon-check", {
852
851
  "aria-hidden": "true"
853
852
  }));
854
- append(templateData.detail, $("span.confirmation-text", undefined, ( localize(6941, "Selected \"{0}\"", element.confirmation))));
853
+ append(templateData.detail, $("span.confirmation-text", undefined, ( localize(7004, "Selected \"{0}\"", element.confirmation))));
855
854
  templateData.header?.classList.remove("header-disabled");
856
855
  templateData.header?.classList.add("partially-disabled");
857
856
  }
@@ -969,13 +968,20 @@ let ChatListItemRenderer = class ChatListItemRenderer extends Disposable {
969
968
  if (this.getSubagentPart(templateData.renderedParts)) {
970
969
  return false;
971
970
  }
972
- if (!lastPart || lastPart.kind === "references" || (lastPart.kind === "markdownContent" && !moreContentAvailable) || ((lastPart.kind === "toolInvocation" || lastPart.kind === "toolInvocationSerialized") && (IChatToolInvocation.isComplete(lastPart) || lastPart.presentation === "hidden")) || ((lastPart.kind === "textEditGroup" || lastPart.kind === "notebookEditGroup") && lastPart.done && !( partsToRender.some(
971
+ if (!lastPart || lastPart.kind === "references" || (lastPart.kind === "markdownContent" && !moreContentAvailable && this.hasBeenCaughtUpLongEnough(element)) || ((lastPart.kind === "toolInvocation" || lastPart.kind === "toolInvocationSerialized") && (IChatToolInvocation.isComplete(lastPart) || lastPart.presentation === "hidden")) || ((lastPart.kind === "textEditGroup" || lastPart.kind === "notebookEditGroup") && lastPart.done && !( partsToRender.some(
973
972
  part => part.kind === "toolInvocation" && !IChatToolInvocation.isComplete(part)
974
973
  ))) || (lastPart.kind === "progressTask" && lastPart.deferred.isSettled) || lastPart.kind === "mcpServersStarting" || lastPart.kind === "disabledClaudeHooks" || lastPart.kind === "hook") {
975
974
  return true;
976
975
  }
977
976
  return false;
978
977
  }
978
+ hasBeenCaughtUpLongEnough(element) {
979
+ const lastRenderTime = element.renderData?.lastRenderTime;
980
+ if (typeof lastRenderTime !== "number" || lastRenderTime === 0) {
981
+ return false;
982
+ }
983
+ return (Date.now() - lastRenderTime) >= WORKING_CAUGHT_UP_DEBOUNCE_MS;
984
+ }
979
985
  getChatFileChangesSummaryPart(element) {
980
986
  if (!this.shouldShowFileChangesSummary(element)) {
981
987
  return undefined;
@@ -1084,7 +1090,7 @@ let ChatListItemRenderer = class ChatListItemRenderer extends Disposable {
1084
1090
  parts.push(cmdPart);
1085
1091
  inlineSlashCommandRendered = true;
1086
1092
  }
1087
- if (newPart.domNode) {
1093
+ if (newPart.domNode && !newPart.domNode.parentElement) {
1088
1094
  templateData.value.appendChild(newPart.domNode);
1089
1095
  }
1090
1096
  parts.push(newPart);
@@ -1324,7 +1330,8 @@ let ChatListItemRenderer = class ChatListItemRenderer extends Disposable {
1324
1330
  };
1325
1331
  }
1326
1332
  shouldShowFileChangesSummary(element) {
1327
- const isLocalSession = getChatSessionType(element.sessionResource) === localChatSessionType;
1333
+ const sessionType = getChatSessionType(element.sessionResource);
1334
+ const isLocalSession = sessionType === localChatSessionType || isAgentHostTarget(sessionType);
1328
1335
  return element.isComplete && isLocalSession && this.configService.getValue("chat.checkpoints.showFileChanges");
1329
1336
  }
1330
1337
  getDataForProgressiveRender(element) {
@@ -1636,7 +1643,7 @@ let ChatListItemRenderer = class ChatListItemRenderer extends Disposable {
1636
1643
  "ChatListItemRenderer#renderChatContentPart: error rendering content",
1637
1644
  toErrorMessage(err, true)
1638
1645
  );
1639
- const errorPart = this.instantiationService.createInstance(ChatErrorContentPart, ChatErrorLevel.Error, ( new MarkdownString(( localize(6942, "Failed to render content")) + `: ${toErrorMessage(err, false)}`)), content, this.chatContentMarkdownRenderer);
1646
+ const errorPart = this.instantiationService.createInstance(ChatErrorContentPart, ChatErrorLevel.Error, ( new MarkdownString(( localize(7005, "Failed to render content")) + `: ${toErrorMessage(err, false)}`)), content, this.chatContentMarkdownRenderer);
1640
1647
  return {
1641
1648
  dispose: () => errorPart.dispose(),
1642
1649
  domNode: errorPart.domNode,
@@ -1921,7 +1928,7 @@ let ChatListItemRenderer = class ChatListItemRenderer extends Disposable {
1921
1928
  }
1922
1929
  const shouldPinToThinking = hookPart.hookType === HookType.PreToolUse || hookPart.hookType === HookType.PostToolUse;
1923
1930
  if (shouldPinToThinking) {
1924
- const hookTitle = hookPart.stopReason ? (hookPart.toolDisplayName ? ( localize(6943, "Blocked {0}", hookPart.toolDisplayName)) : ( localize(6944, "Blocked by hook"))) : (hookPart.toolDisplayName ? ( localize(6945, "Used {0}, but received a warning", hookPart.toolDisplayName)) : ( localize(6946, "Tool call received a warning")));
1931
+ const hookTitle = hookPart.stopReason ? (hookPart.toolDisplayName ? ( localize(7006, "Blocked {0}", hookPart.toolDisplayName)) : ( localize(7007, "Blocked by hook"))) : (hookPart.toolDisplayName ? ( localize(7008, "Used {0}, but received a warning", hookPart.toolDisplayName)) : ( localize(7009, "Tool call received a warning")));
1925
1932
  let thinkingPart = this.getLastThinkingPart(templateData.renderedParts);
1926
1933
  if (!thinkingPart) {
1927
1934
  const newThinking = this.renderThinkingPart({
@@ -2078,10 +2085,10 @@ let ChatListItemRenderer = class ChatListItemRenderer extends Disposable {
2078
2085
  return;
2079
2086
  }
2080
2087
  const questionCount = carousel.questions.length;
2081
- const question = carousel.questions.length > 0 && carousel.questions[0].message ? carousel.questions[0].message : ( localize(6947, "Chat input required."));
2088
+ const question = carousel.questions.length > 0 && carousel.questions[0].message ? carousel.questions[0].message : ( localize(7010, "Chat input required."));
2082
2089
  const stringQuestion = typeof question === "string" ? question : question.value;
2083
- const alertMessage = questionCount === 1 ? ( localize(6948, "Chat input required (1 question): {0}", stringQuestion)) : ( localize(
2084
- 6949,
2090
+ const alertMessage = questionCount === 1 ? ( localize(7011, "Chat input required (1 question): {0}", stringQuestion)) : ( localize(
2091
+ 7012,
2085
2092
  "Chat input required ({0} questions): {1}",
2086
2093
  questionCount,
2087
2094
  stringQuestion
@@ -2090,7 +2097,7 @@ let ChatListItemRenderer = class ChatListItemRenderer extends Disposable {
2090
2097
  if (stableKey) {
2091
2098
  this._notifiedQuestionCarousels.add(stableKey);
2092
2099
  }
2093
- const signalMessage = questionCount === 1 ? ( localize(6950, "Chat needs your input (1 question).")) : ( localize(6951, "Chat needs your input ({0} questions).", questionCount));
2100
+ const signalMessage = questionCount === 1 ? ( localize(7013, "Chat needs your input (1 question).")) : ( localize(7014, "Chat needs your input ({0} questions).", questionCount));
2094
2101
  this.accessibilitySignalService.playSignal(AccessibilitySignal.chatUserActionRequired, {
2095
2102
  allowManyInParallel: true,
2096
2103
  customAlertMessage: signalMessage
@@ -2181,7 +2188,7 @@ let ChatListItemRenderer = class ChatListItemRenderer extends Disposable {
2181
2188
  })
2182
2189
  );
2183
2190
  markdownPart.addDisposable(
2184
- this.hoverService.setupManagedHover(getDefaultHoverDelegate("element"), markdownPart.domNode, ( localize(6952, "Click to Edit")), {
2191
+ this.hoverService.setupManagedHover(getDefaultHoverDelegate("element"), markdownPart.domNode, ( localize(7015, "Click to Edit")), {
2185
2192
  trapFocus: true
2186
2193
  })
2187
2194
  );
@@ -2221,7 +2228,7 @@ let ChatListItemRenderer = class ChatListItemRenderer extends Disposable {
2221
2228
  thinkingPart.appendItem(() => ({
2222
2229
  domNode: markdownPart.domNode,
2223
2230
  disposable: markdownPart
2224
- }), markdownPart.codeblocksPartId, markdown, templateData.value);
2231
+ }), markdownPart.codeblocksPartId, markdown, templateData.value, markdownPart.onDidChangeDiff);
2225
2232
  }
2226
2233
  return thinkingPart;
2227
2234
  }
@@ -2230,7 +2237,7 @@ let ChatListItemRenderer = class ChatListItemRenderer extends Disposable {
2230
2237
  lastThinking.appendItem(() => ({
2231
2238
  domNode: markdownPart.domNode,
2232
2239
  disposable: markdownPart
2233
- }), markdownPart.codeblocksPartId, markdown, templateData.value);
2240
+ }), markdownPart.codeblocksPartId, markdown, templateData.value, markdownPart.onDidChangeDiff);
2234
2241
  }
2235
2242
  } else if (!this.shouldPinPart(markdown, context.element) && !isBlankMarkdown && !hasPendingEditCodeblock) {
2236
2243
  this.finalizeCurrentThinkingPart(context, templateData);
@@ -2342,89 +2349,6 @@ class ChatListDelegate extends CachedListVirtualDelegate {
2342
2349
  return true;
2343
2350
  }
2344
2351
  }
2345
- const voteDownDetailLabels = {
2346
- [ChatAgentVoteDownReason.IncorrectCode]: ( localize(6953, "Suggested incorrect code")),
2347
- [ChatAgentVoteDownReason.DidNotFollowInstructions]: ( localize(6954, "Didn't follow instructions")),
2348
- [ChatAgentVoteDownReason.MissingContext]: ( localize(6955, "Missing context")),
2349
- [ChatAgentVoteDownReason.OffensiveOrUnsafe]: ( localize(6956, "Offensive or unsafe")),
2350
- [ChatAgentVoteDownReason.PoorlyWrittenOrFormatted]: ( localize(6957, "Poorly written or formatted")),
2351
- [ChatAgentVoteDownReason.RefusedAValidRequest]: ( localize(6958, "Refused a valid request")),
2352
- [ChatAgentVoteDownReason.IncompleteCode]: ( localize(6959, "Incomplete code")),
2353
- [ChatAgentVoteDownReason.WillReportIssue]: ( localize(6960, "Report an issue")),
2354
- [ChatAgentVoteDownReason.Other]: ( localize(6961, "Other"))
2355
- };
2356
- let ChatVoteDownButton = class ChatVoteDownButton extends DropdownMenuActionViewItem {
2357
- constructor(
2358
- action,
2359
- options,
2360
- commandService,
2361
- issueService,
2362
- logService,
2363
- contextMenuService
2364
- ) {
2365
- super(action, {
2366
- getActions: () => this.getActions()
2367
- }, contextMenuService, {
2368
- ...options,
2369
- classNames: ThemeIcon.asClassNameArray(Codicon.thumbsdown)
2370
- });
2371
- this.commandService = commandService;
2372
- this.issueService = issueService;
2373
- this.logService = logService;
2374
- }
2375
- getActions() {
2376
- return [
2377
- this.getVoteDownDetailAction(ChatAgentVoteDownReason.IncorrectCode),
2378
- this.getVoteDownDetailAction(ChatAgentVoteDownReason.DidNotFollowInstructions),
2379
- this.getVoteDownDetailAction(ChatAgentVoteDownReason.IncompleteCode),
2380
- this.getVoteDownDetailAction(ChatAgentVoteDownReason.MissingContext),
2381
- this.getVoteDownDetailAction(ChatAgentVoteDownReason.PoorlyWrittenOrFormatted),
2382
- this.getVoteDownDetailAction(ChatAgentVoteDownReason.RefusedAValidRequest),
2383
- this.getVoteDownDetailAction(ChatAgentVoteDownReason.OffensiveOrUnsafe),
2384
- this.getVoteDownDetailAction(ChatAgentVoteDownReason.Other),
2385
- {
2386
- id: "reportIssue",
2387
- label: voteDownDetailLabels[ChatAgentVoteDownReason.WillReportIssue],
2388
- tooltip: "",
2389
- enabled: true,
2390
- class: undefined,
2391
- run: async context => {
2392
- if (!isResponseVM(context)) {
2393
- this.logService.error("ChatVoteDownButton#run: invalid context");
2394
- return;
2395
- }
2396
- await this.commandService.executeCommand(MarkUnhelpfulActionId, context, ChatAgentVoteDownReason.WillReportIssue);
2397
- await this.issueService.openReporter({
2398
- extensionId: context.agent?.extensionId.value
2399
- });
2400
- }
2401
- }
2402
- ];
2403
- }
2404
- render(container) {
2405
- super.render(container);
2406
- this.element?.classList.toggle("checked", this.action.checked);
2407
- }
2408
- getVoteDownDetailAction(reason) {
2409
- const label = voteDownDetailLabels[reason];
2410
- return {
2411
- id: MarkUnhelpfulActionId,
2412
- label,
2413
- tooltip: "",
2414
- enabled: true,
2415
- checked: this._context.voteDownReason === reason,
2416
- class: undefined,
2417
- run: async context => {
2418
- if (!isResponseVM(context)) {
2419
- this.logService.error("ChatVoteDownButton#getVoteDownDetailAction: invalid context");
2420
- return;
2421
- }
2422
- await this.commandService.executeCommand(MarkUnhelpfulActionId, context, reason);
2423
- }
2424
- };
2425
- }
2426
- };
2427
- ChatVoteDownButton = ( __decorate([( __param(2, ICommandService)), ( __param(3, IWorkbenchIssueService)), ( __param(4, ILogService)), ( __param(5, IContextMenuService))], ChatVoteDownButton));
2428
2352
  function isParentSubagentTool(invocation) {
2429
2353
  return invocation.toolSpecificData?.kind === "subagent" && !invocation.subAgentInvocationId;
2430
2354
  }
@@ -2438,4 +2362,4 @@ function isSubagentToolInvocation(invocation) {
2438
2362
  return !!getSubagentId(invocation);
2439
2363
  }
2440
2364
 
2441
- export { ChatListDelegate, ChatListItemRenderer, ChatVoteDownButton };
2365
+ export { ChatListDelegate, ChatListItemRenderer };
@@ -287,7 +287,7 @@ let ChatListWidget = class ChatListWidget extends Disposable {
287
287
  const selected = e.element;
288
288
  const target = e.browserEvent.target;
289
289
  const isKatexElement = target.closest(`.${katexContainerClassName}`) !== null;
290
- const scopedContextKeyService = this.contextKeyService.createOverlay([[
290
+ const scopedContextKeyService = this.contextKeyService.createOverlay([[ChatContextKeys.isResponse.key, isResponseVM(selected)], [
291
291
  ChatContextKeys.responseIsFiltered.key,
292
292
  isResponseVM(selected) && !!selected.errorDetails?.responseIsFiltered
293
293
  ], [ChatContextKeys.isKatexMathElement.key, isKatexElement]]);
@@ -24,7 +24,6 @@ import { IChatLocationData, IChatSendRequestOptions } from "@codingame/monaco-vs
24
24
  import { IChatService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatService/chatService.service";
25
25
  import { IChatSessionsService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatSessionsService.service";
26
26
  import { IChatSlashCommandService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/participants/chatSlashCommands.service";
27
- import { IChatArtifactsService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/tools/chatArtifactsService.service";
28
27
  import { IChatTodoListService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/tools/chatTodoListService.service";
29
28
  import { ChatViewModel, IChatResponseViewModel } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/model/chatViewModel";
30
29
  import { ChatAgentLocation } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/constants";
@@ -85,7 +84,6 @@ export declare class ChatWidget extends Disposable implements IChatWidget {
85
84
  private readonly chatSessionsService;
86
85
  private readonly agentSessionsService;
87
86
  private readonly chatTodoListService;
88
- private readonly chatArtifactsService;
89
87
  private readonly lifecycleService;
90
88
  private readonly chatAttachmentResolveService;
91
89
  private readonly chatTipService;
@@ -136,6 +134,7 @@ export declare class ChatWidget extends Disposable implements IChatWidget {
136
134
  get domNode(): HTMLElement;
137
135
  private listWidget;
138
136
  private readonly _codeBlockModelCollection;
137
+ private inputPartMaxHeightOverride;
139
138
  private readonly visibilityTimeoutDisposable;
140
139
  private readonly visibilityAnimationFrameDisposable;
141
140
  private readonly inputPartDisposable;
@@ -181,7 +180,7 @@ export declare class ChatWidget extends Disposable implements IChatWidget {
181
180
  readonly viewContext: IChatWidgetViewContext;
182
181
  get supportsChangingModes(): boolean;
183
182
  get locationData(): IChatLocationData | undefined;
184
- constructor(location: ChatAgentLocation | IChatWidgetLocationOptions, viewContext: IChatWidgetViewContext | undefined, viewOptions: IChatWidgetViewOptions, styles: IChatWidgetStyles, codeEditorService: ICodeEditorService, configurationService: IConfigurationService, dialogService: IDialogService, contextKeyService: IContextKeyService, instantiationService: IInstantiationService, chatService: IChatService, chatAgentService: IChatAgentService, chatWidgetService: IChatWidgetService, chatAccessibilityService: IChatAccessibilityService, logService: ILogService, themeService: IThemeService, chatSlashCommandService: IChatSlashCommandService, chatEditingService: IChatEditingService, telemetryService: ITelemetryService, promptsService: IPromptsService, toolsService: ILanguageModelToolsService, chatModeService: IChatModeService, chatLayoutService: IChatLayoutService, chatEntitlementService: IChatEntitlementService, chatSessionsService: IChatSessionsService, agentSessionsService: IAgentSessionsService, chatTodoListService: IChatTodoListService, chatArtifactsService: IChatArtifactsService, lifecycleService: ILifecycleService, chatAttachmentResolveService: IChatAttachmentResolveService, chatTipService: IChatTipService, chatDebugService: IChatDebugService);
183
+ constructor(location: ChatAgentLocation | IChatWidgetLocationOptions, viewContext: IChatWidgetViewContext | undefined, viewOptions: IChatWidgetViewOptions, styles: IChatWidgetStyles, codeEditorService: ICodeEditorService, configurationService: IConfigurationService, dialogService: IDialogService, contextKeyService: IContextKeyService, instantiationService: IInstantiationService, chatService: IChatService, chatAgentService: IChatAgentService, chatWidgetService: IChatWidgetService, chatAccessibilityService: IChatAccessibilityService, logService: ILogService, themeService: IThemeService, chatSlashCommandService: IChatSlashCommandService, chatEditingService: IChatEditingService, telemetryService: ITelemetryService, promptsService: IPromptsService, toolsService: ILanguageModelToolsService, chatModeService: IChatModeService, chatLayoutService: IChatLayoutService, chatEntitlementService: IChatEntitlementService, chatSessionsService: IChatSessionsService, agentSessionsService: IAgentSessionsService, chatTodoListService: IChatTodoListService, lifecycleService: ILifecycleService, chatAttachmentResolveService: IChatAttachmentResolveService, chatTipService: IChatTipService, chatDebugService: IChatDebugService);
185
184
  private _lastSelectedAgent;
186
185
  set lastSelectedAgent(agent: IChatAgentData | undefined);
187
186
  get lastSelectedAgent(): IChatAgentData | undefined;
@@ -285,7 +284,15 @@ export declare class ChatWidget extends Disposable implements IChatWidget {
285
284
  getFileTreeInfosForResponse(response: IChatResponseViewModel): IChatFileTreeInfo[];
286
285
  getLastFocusedFileTreeForResponse(response: IChatResponseViewModel): IChatFileTreeInfo | undefined;
287
286
  focusResponseItem(lastFocused?: boolean): void;
287
+ setInputPartMaxHeightOverride(maxHeight: number | undefined): void;
288
288
  layout(height: number, width: number): void;
289
+ /**
290
+ * Re-layout just the list, welcome container, and list container to match
291
+ * the current input-part height. Called both from {@link layout} and from
292
+ * the inputPart.height autorun so we never re-enter inputPart.layout when
293
+ * only the input height changed.
294
+ */
295
+ private _layoutListForInputHeight;
289
296
  private _dynamicMessageLayoutData?;
290
297
  setDynamicChatTreeItemLayout(numOfChatTreeItems: number, maxHeight: number): void;
291
298
  updateDynamicChatTreeItemLayout(numOfChatTreeItems: number, maxHeight: number): void;