@codingame/monaco-vscode-katex-common 24.3.0 → 25.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 (197) hide show
  1. package/package.json +3 -3
  2. package/vscode/src/vs/platform/actions/browser/buttonbar.js +3 -3
  3. package/vscode/src/vs/workbench/contrib/chat/browser/{chatAccessibilityProvider.d.ts → accessibility/chatAccessibilityProvider.d.ts} +1 -1
  4. package/vscode/src/vs/workbench/contrib/chat/browser/{chatAccessibilityProvider.js → accessibility/chatAccessibilityProvider.js} +25 -20
  5. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContinueInAction.js +19 -19
  6. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatElicitationActions.js +4 -4
  7. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatExecuteActions.js +31 -31
  8. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatTitleActions.js +15 -15
  9. package/vscode/src/vs/workbench/contrib/chat/browser/{chatAttachmentModel.d.ts → attachments/chatAttachmentModel.d.ts} +4 -2
  10. package/vscode/src/vs/workbench/contrib/chat/browser/{chatAttachmentModel.js → attachments/chatAttachmentModel.js} +24 -3
  11. package/vscode/src/vs/workbench/contrib/chat/browser/{chatAttachmentWidgets.d.ts → attachments/chatAttachmentWidgets.d.ts} +4 -4
  12. package/vscode/src/vs/workbench/contrib/chat/browser/{chatAttachmentWidgets.js → attachments/chatAttachmentWidgets.js} +80 -89
  13. package/vscode/src/vs/workbench/contrib/chat/browser/{contrib → attachments}/chatImplicitContext.d.ts +4 -4
  14. package/vscode/src/vs/workbench/contrib/chat/browser/{contrib → attachments}/chatImplicitContext.js +23 -11
  15. package/vscode/src/vs/workbench/contrib/chat/browser/{contrib → attachments}/chatInputRelatedFilesContrib.d.ts +1 -1
  16. package/vscode/src/vs/workbench/contrib/chat/browser/{contrib → attachments}/chatInputRelatedFilesContrib.js +2 -2
  17. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/implicitContextAttachment.d.ts +4 -3
  18. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/implicitContextAttachment.js +47 -21
  19. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingActions.d.ts +1 -1
  20. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingActions.js +39 -39
  21. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessionPickerActionItem.js +3 -3
  22. package/vscode/src/vs/workbench/contrib/chat/browser/viewsWelcome/chatViewWelcomeController.js +5 -5
  23. package/vscode/src/vs/workbench/contrib/chat/browser/{chatAgentHover.d.ts → widget/chatAgentHover.d.ts} +3 -3
  24. package/vscode/src/vs/workbench/contrib/chat/browser/{chatAgentHover.js → widget/chatAgentHover.js} +4 -4
  25. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/chatAgentCommandContentPart.d.ts +3 -3
  26. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/chatAgentCommandContentPart.js +2 -2
  27. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/chatAnonymousRateLimitedPart.d.ts +2 -2
  28. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/chatAnonymousRateLimitedPart.js +2 -2
  29. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/chatAttachmentsContentPart.d.ts +2 -2
  30. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/chatAttachmentsContentPart.js +3 -3
  31. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/chatChangesSummaryPart.d.ts +10 -13
  32. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/chatChangesSummaryPart.js +59 -119
  33. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/chatCodeCitationContentPart.d.ts +2 -2
  34. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/chatCodeCitationContentPart.js +2 -2
  35. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/chatCollapsibleContentPart.d.ts +11 -4
  36. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/chatCollapsibleContentPart.js +31 -10
  37. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/chatCommandContentPart.d.ts +3 -3
  38. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/chatCommandContentPart.js +2 -2
  39. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/chatConfirmationContentPart.d.ts +4 -4
  40. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/chatConfirmationContentPart.js +5 -5
  41. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/chatConfirmationWidget.d.ts +9 -18
  42. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/chatConfirmationWidget.js +31 -99
  43. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/chatContentCodePools.d.ts +1 -1
  44. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/chatContentCodePools.js +1 -1
  45. package/vscode/src/vs/workbench/contrib/chat/browser/{chatDiffBlockPart.d.ts → widget/chatContentParts/chatDiffBlockPart.d.ts} +2 -2
  46. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/chatElicitationContentPart.d.ts +3 -3
  47. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/chatElicitationContentPart.js +3 -3
  48. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/chatErrorConfirmationPart.d.ts +4 -4
  49. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/chatErrorConfirmationPart.js +2 -2
  50. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/chatErrorContentPart.d.ts +3 -3
  51. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/chatErrorContentPart.js +1 -1
  52. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/chatExtensionsContentPart.d.ts +3 -3
  53. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/chatExtensionsContentPart.js +1 -1
  54. package/vscode/src/vs/workbench/contrib/chat/browser/{chatInlineAnchorWidget.d.ts → widget/chatContentParts/chatInlineAnchorWidget.d.ts} +2 -2
  55. package/vscode/src/vs/workbench/contrib/chat/browser/{chatInlineAnchorWidget.js → widget/chatContentParts/chatInlineAnchorWidget.js} +18 -15
  56. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/chatMarkdownContentPart.d.ts +6 -6
  57. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/chatMarkdownContentPart.js +15 -15
  58. package/vscode/src/vs/workbench/contrib/chat/browser/{chatMarkdownDecorationsRenderer.d.ts → widget/chatContentParts/chatMarkdownDecorationsRenderer.d.ts} +7 -7
  59. package/vscode/src/vs/workbench/contrib/chat/browser/{chatMarkdownDecorationsRenderer.js → widget/chatContentParts/chatMarkdownDecorationsRenderer.js} +9 -12
  60. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/chatMcpServersInteractionContentPart.d.ts +3 -3
  61. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/chatMcpServersInteractionContentPart.js +7 -7
  62. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/chatMultiDiffContentPart.d.ts +4 -6
  63. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/chatMultiDiffContentPart.js +31 -35
  64. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/chatProgressContentPart.d.ts +5 -5
  65. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/chatProgressContentPart.js +9 -42
  66. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/chatPullRequestContentPart.d.ts +3 -3
  67. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/chatPullRequestContentPart.js +1 -1
  68. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/chatQuotaExceededPart.d.ts +2 -2
  69. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/chatQuotaExceededPart.js +4 -4
  70. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/chatReferencesContentPart.d.ts +7 -6
  71. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/chatReferencesContentPart.js +20 -17
  72. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/chatSuggestNextWidget.js +5 -5
  73. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/chatTaskContentPart.d.ts +3 -3
  74. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/chatTaskContentPart.js +1 -1
  75. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/chatTextEditContentPart.d.ts +2 -2
  76. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/chatTextEditContentPart.js +3 -3
  77. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/chatTextEditContentPart.service.d.ts +2 -2
  78. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/chatThinkingContentPart.d.ts +9 -7
  79. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/chatThinkingContentPart.js +71 -17
  80. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/chatTodoListWidget.d.ts +1 -1
  81. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/chatTodoListWidget.js +23 -23
  82. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/chatToolInputOutputContentPart.d.ts +4 -3
  83. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/chatToolInputOutputContentPart.js +2 -2
  84. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/chatToolOutputContentSubPart.d.ts +6 -3
  85. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/chatToolOutputContentSubPart.js +27 -11
  86. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/chatTreeContentPart.d.ts +3 -3
  87. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/chatTreeContentPart.js +1 -1
  88. package/vscode/src/vs/workbench/contrib/chat/browser/{codeBlockPart.d.ts → widget/chatContentParts/codeBlockPart.d.ts} +5 -5
  89. package/vscode/src/vs/workbench/contrib/chat/browser/{codeBlockPart.js → widget/chatContentParts/codeBlockPart.js} +19 -18
  90. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/media/chatThinkingContent.css +17 -14
  91. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/toolInvocationParts/abstractToolConfirmationSubPart.d.ts +3 -3
  92. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/toolInvocationParts/abstractToolConfirmationSubPart.js +4 -4
  93. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/toolInvocationParts/chatExtensionsInstallToolSubPart.d.ts +2 -2
  94. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/toolInvocationParts/chatExtensionsInstallToolSubPart.js +7 -7
  95. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/toolInvocationParts/chatInputOutputMarkdownProgressPart.d.ts +3 -3
  96. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/toolInvocationParts/chatInputOutputMarkdownProgressPart.js +4 -32
  97. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/toolInvocationParts/chatResultListSubPart.d.ts +2 -2
  98. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/toolInvocationParts/chatResultListSubPart.js +4 -1
  99. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/toolInvocationParts/chatTerminalToolConfirmationSubPart.d.ts +4 -3
  100. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/toolInvocationParts/chatTerminalToolConfirmationSubPart.js +107 -39
  101. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/toolInvocationParts/chatTerminalToolProgressPart.d.ts +3 -3
  102. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/toolInvocationParts/chatTerminalToolProgressPart.js +19 -132
  103. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/toolInvocationParts/chatToolConfirmationSubPart.d.ts +6 -6
  104. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/toolInvocationParts/chatToolConfirmationSubPart.js +13 -13
  105. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/toolInvocationParts/chatToolInvocationPart.d.ts +4 -4
  106. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/toolInvocationParts/chatToolInvocationPart.js +2 -2
  107. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/toolInvocationParts/chatToolInvocationSubPart.d.ts +1 -1
  108. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/toolInvocationParts/chatToolInvocationSubPart.js +1 -1
  109. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/toolInvocationParts/chatToolOutputPart.d.ts +2 -2
  110. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/toolInvocationParts/chatToolOutputPart.js +3 -3
  111. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolPartUtilities.d.ts +14 -0
  112. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolPartUtilities.js +46 -0
  113. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/toolInvocationParts/chatToolPostExecuteConfirmationPart.d.ts +4 -4
  114. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/toolInvocationParts/chatToolPostExecuteConfirmationPart.js +11 -10
  115. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/toolInvocationParts/chatToolProgressPart.d.ts +2 -2
  116. package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/toolInvocationParts/chatToolProgressPart.js +1 -1
  117. package/vscode/src/vs/workbench/contrib/chat/browser/{chatDragAndDrop.d.ts → widget/chatDragAndDrop.d.ts} +3 -3
  118. package/vscode/src/vs/workbench/contrib/chat/browser/{chatDragAndDrop.js → widget/chatDragAndDrop.js} +13 -13
  119. package/vscode/src/vs/workbench/contrib/chat/browser/{chatListRenderer.d.ts → widget/chatListRenderer.d.ts} +5 -5
  120. package/vscode/src/vs/workbench/contrib/chat/browser/{chatListRenderer.js → widget/chatListRenderer.js} +41 -53
  121. package/vscode/src/vs/workbench/contrib/chat/browser/{chatWidget.d.ts → widget/chatWidget.d.ts} +18 -16
  122. package/vscode/src/vs/workbench/contrib/chat/browser/{chatWidget.js → widget/chatWidget.js} +77 -57
  123. package/vscode/src/vs/workbench/contrib/chat/browser/{chatFollowups.d.ts → widget/input/chatFollowups.d.ts} +2 -2
  124. package/vscode/src/vs/workbench/contrib/chat/browser/{chatFollowups.js → widget/input/chatFollowups.js} +3 -3
  125. package/vscode/src/vs/workbench/contrib/chat/browser/{chatInputPart.d.ts → widget/input/chatInputPart.d.ts} +14 -13
  126. package/vscode/src/vs/workbench/contrib/chat/browser/{chatInputPart.js → widget/input/chatInputPart.js} +75 -59
  127. package/vscode/src/vs/workbench/contrib/chat/browser/{chatSelectedTools.d.ts → widget/input/chatSelectedTools.d.ts} +3 -3
  128. package/vscode/src/vs/workbench/contrib/chat/browser/{chatSelectedTools.js → widget/input/chatSelectedTools.js} +2 -2
  129. package/vscode/src/vs/workbench/contrib/chat/browser/{contrib → widget/input/editor}/chatInputCompletions.js +36 -24
  130. package/vscode/src/vs/workbench/contrib/chat/browser/{modelPicker → widget/input}/modePickerActionItem.d.ts +2 -2
  131. package/vscode/src/vs/workbench/contrib/chat/browser/{modelPicker → widget/input}/modePickerActionItem.js +9 -7
  132. package/vscode/src/vs/workbench/contrib/chat/browser/{modelPicker → widget/input}/modelPickerActionItem.d.ts +4 -2
  133. package/vscode/src/vs/workbench/contrib/chat/browser/{modelPicker → widget/input}/modelPickerActionItem.js +21 -14
  134. package/vscode/src/vs/workbench/contrib/chat/browser/{media → widget/media}/chat.css +17 -16
  135. package/vscode/src/vs/workbench/contrib/chat/browser/{media → widget/media}/chatViewWelcome.css +3 -1
  136. package/vscode/src/vs/workbench/contrib/chat/common/{chatColors.js → widget/chatColors.js} +13 -13
  137. package/vscode/src/vs/workbench/contrib/chat/common/{chatWidgetHistoryService.d.ts → widget/chatWidgetHistoryService.d.ts} +2 -2
  138. package/vscode/src/vs/workbench/contrib/chat/common/{chatWidgetHistoryService.js → widget/chatWidgetHistoryService.js} +2 -2
  139. package/vscode/src/vs/workbench/contrib/chat/common/{codeBlockModelCollection.d.ts → widget/codeBlockModelCollection.d.ts} +2 -2
  140. package/vscode/src/vs/workbench/contrib/chat/common/{codeBlockModelCollection.js → widget/codeBlockModelCollection.js} +4 -3
  141. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatController.d.ts +7 -8
  142. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatController.js +63 -63
  143. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSession.d.ts +2 -2
  144. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionService.d.ts +2 -2
  145. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionService.js +1 -1
  146. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionServiceImpl.d.ts +3 -4
  147. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionServiceImpl.js +16 -18
  148. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatStrategies.d.ts +1 -5
  149. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatStrategies.js +8 -18
  150. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatWidget.d.ts +3 -3
  151. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatWidget.js +12 -12
  152. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatZoneWidget.d.ts +1 -1
  153. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatZoneWidget.js +2 -2
  154. package/vscode/src/vs/workbench/contrib/inlineChat/browser/utils.js +1 -1
  155. package/vscode/src/vs/workbench/contrib/inlineChat/common/inlineChat.d.ts +0 -1
  156. package/vscode/src/vs/workbench/contrib/inlineChat/common/inlineChat.js +35 -54
  157. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpPromptArgumentPick.js +14 -14
  158. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/chat/notebookChatUtils.d.ts +1 -1
  159. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/chat/notebookChatUtils.js +1 -1
  160. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/cellOperations.js +2 -2
  161. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffComponents.js +4 -4
  162. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffElementOutputs.js +7 -7
  163. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookOriginalModelRefFactory.d.ts +1 -1
  164. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffEditor.js +1 -1
  165. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffEditorBrowser.js +5 -5
  166. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffList.js +1 -1
  167. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookMultiDiffEditor.js +3 -3
  168. package/vscode/src/vs/workbench/contrib/terminal/browser/chatTerminalCommandMirror.d.ts +35 -4
  169. package/vscode/src/vs/workbench/contrib/terminal/browser/chatTerminalCommandMirror.js +129 -31
  170. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/common.d.ts +0 -19
  171. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/common.js +0 -76
  172. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/computeAutomaticInstructions.d.ts +0 -48
  173. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/computeAutomaticInstructions.js +0 -373
  174. /package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/media/{chatSessionAction.css → chatSessionPickerActionItem.css} +0 -0
  175. /package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentMarkdownRenderer.d.ts → widget/chatContentMarkdownRenderer.d.ts} +0 -0
  176. /package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentMarkdownRenderer.js → widget/chatContentMarkdownRenderer.js} +0 -0
  177. /package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/chatCollections.d.ts +0 -0
  178. /package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/chatCollections.js +0 -0
  179. /package/vscode/src/vs/workbench/contrib/chat/browser/{chatDiffBlockPart.js → widget/chatContentParts/chatDiffBlockPart.js} +0 -0
  180. /package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/chatSuggestNextWidget.d.ts +0 -0
  181. /package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/chatTextEditContentPart.service.js +0 -0
  182. /package/vscode/src/vs/workbench/contrib/chat/browser/{media → widget/chatContentParts/media}/chatCodeBlockPill.css +0 -0
  183. /package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/media/chatConfirmationWidget.css +0 -0
  184. /package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/media/chatExtensionsContent.css +0 -0
  185. /package/vscode/src/vs/workbench/contrib/chat/browser/{media → widget/chatContentParts/media}/chatInlineAnchorWidget.css +0 -0
  186. /package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/media/chatMarkdownPart.css +0 -0
  187. /package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/media/chatMcpServersInteractionContent.css +0 -0
  188. /package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/media/chatPullRequestContent.css +0 -0
  189. /package/vscode/src/vs/workbench/contrib/chat/browser/{chatContentParts → widget/chatContentParts}/media/chatTerminalToolProgressPart.css +0 -0
  190. /package/vscode/src/vs/workbench/contrib/chat/browser/{codeBlockPart.css → widget/chatContentParts/media/codeBlockPart.css} +0 -0
  191. /package/vscode/src/vs/workbench/contrib/chat/browser/{chatOptions.d.ts → widget/chatOptions.d.ts} +0 -0
  192. /package/vscode/src/vs/workbench/contrib/chat/browser/{chatOptions.js → widget/chatOptions.js} +0 -0
  193. /package/vscode/src/vs/workbench/contrib/chat/browser/{chatInputPartWidgets.d.ts → widget/input/chatInputPartWidgets.d.ts} +0 -0
  194. /package/vscode/src/vs/workbench/contrib/chat/browser/{chatInputPartWidgets.js → widget/input/chatInputPartWidgets.js} +0 -0
  195. /package/vscode/src/vs/workbench/contrib/chat/browser/{contrib → widget/input/editor}/chatInputCompletions.d.ts +0 -0
  196. /package/vscode/src/vs/workbench/contrib/chat/browser/{media → widget/media}/chatAgentHover.css +0 -0
  197. /package/vscode/src/vs/workbench/contrib/chat/common/{chatColors.d.ts → widget/chatColors.d.ts} +0 -0
@@ -29,6 +29,7 @@ import { URI } from '@codingame/monaco-vscode-api/vscode/vs/base/common/uri';
29
29
  import { EditorExtensionsRegistry } from '@codingame/monaco-vscode-api/vscode/vs/editor/browser/editorExtensions';
30
30
  import { CodeEditorWidget } from '@codingame/monaco-vscode-api/vscode/vs/editor/browser/widget/codeEditor/codeEditorWidget';
31
31
  import { EditorOptions } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/config/editorOptions';
32
+ import { Range } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/core/range';
32
33
  import { isLocation } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/languages';
33
34
  import { IModelService } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/services/model.service';
34
35
  import { ITextModelService } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/services/resolverService.service';
@@ -40,7 +41,7 @@ import { LinkDetector } from '@codingame/monaco-vscode-api/vscode/vs/editor/cont
40
41
  import { SuggestController } from '@codingame/monaco-vscode-api/vscode/vs/editor/contrib/suggest/browser/suggestController';
41
42
  import { localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
42
43
  import { IAccessibilityService } from '@codingame/monaco-vscode-api/vscode/vs/platform/accessibility/common/accessibility.service';
43
- import { MenuWorkbenchButtonBar } from '../../../../platform/actions/browser/buttonbar.js';
44
+ import { MenuWorkbenchButtonBar } from '../../../../../../platform/actions/browser/buttonbar.js';
44
45
  import { MenuWorkbenchToolBar, HiddenItemStrategy } from '@codingame/monaco-vscode-api/vscode/vs/platform/actions/browser/toolbar';
45
46
  import { MenuId, MenuItemAction } from '@codingame/monaco-vscode-api/vscode/vs/platform/actions/common/actions';
46
47
  import { IConfigurationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/configuration/common/configuration.service';
@@ -66,42 +67,42 @@ import { IEditorService } from '@codingame/monaco-vscode-api/vscode/vs/workbench
66
67
  import { AccessibilityVerbositySettingId } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/accessibility/browser/accessibilityConfiguration';
67
68
  import { AccessibilityCommandId } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/accessibility/common/accessibilityCommands';
68
69
  import { getSimpleEditorOptions, getSimpleCodeEditorWidgetOptions, setupSimpleEditorSelectionStyling } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/codeEditor/browser/simpleEditorOptions';
69
- import { InlineChatConfigKeys } from '../../inlineChat/common/inlineChat.js';
70
- import { IChatAgentService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatAgents.service';
71
- import { ChatContextKeys } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatContextKeys';
72
- import { ModifiedFileEntryState } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatEditingService';
70
+ import { InlineChatConfigKeys } from '../../../../inlineChat/common/inlineChat.js';
71
+ import { IChatAgentService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/participants/chatAgents.service';
72
+ import { ChatContextKeys } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/actions/chatContextKeys';
73
+ import { ModifiedFileEntryState } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/editing/chatEditingService';
73
74
  import { ChatMode } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatModes';
74
75
  import { IChatModeService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatModes.service';
75
- import { IChatService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatService.service';
76
+ import { IChatService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatService/chatService.service';
76
77
  import { localChatSessionType } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatSessionsService';
77
78
  import { IChatSessionsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatSessionsService.service';
78
- import { getChatSessionType } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatUri';
79
- import { ChatRequestVariableSet, isImageVariableEntry, isNotebookOutputVariableEntry, isPromptFileVariableEntry, isPromptTextVariableEntry, isElementVariableEntry, isPasteVariableEntry, isSCMHistoryItemVariableEntry, isSCMHistoryItemChangeVariableEntry, isSCMHistoryItemChangeRangeVariableEntry, isStringVariableEntry } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatVariableEntries';
80
- import { ChatHistoryNavigator } from '../common/chatWidgetHistoryService.js';
79
+ import { getChatSessionType } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/model/chatUri';
80
+ import { ChatRequestVariableSet, isImageVariableEntry, isNotebookOutputVariableEntry, isPromptFileVariableEntry, isPromptTextVariableEntry, isElementVariableEntry, isPasteVariableEntry, isSCMHistoryItemVariableEntry, isSCMHistoryItemChangeVariableEntry, isSCMHistoryItemChangeRangeVariableEntry, isStringVariableEntry } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/attachments/chatVariableEntries';
81
+ import { ChatHistoryNavigator } from '../../../common/widget/chatWidgetHistoryService.js';
81
82
  import { ChatModeKind, ChatConfiguration, validateChatMode, ChatAgentLocation } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/constants';
82
83
  import { ILanguageModelChatMetadata } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/languageModels';
83
84
  import { ILanguageModelsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/languageModels.service';
84
- import { ILanguageModelToolsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/languageModelToolsService.service';
85
- import { ContinueChatInSessionAction, ChatContinueInSessionActionItem, ActionLocation } from './actions/chatContinueInAction.js';
86
- import { ChatSubmitAction, ChatOpenModelPickerActionId, OpenModePickerAction, ChatSessionPrimaryPickerAction } from './actions/chatExecuteActions.js';
85
+ import { ILanguageModelToolsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/tools/languageModelToolsService.service';
86
+ import { ContinueChatInSessionAction, ChatContinueInSessionActionItem, ActionLocation } from '../../actions/chatContinueInAction.js';
87
+ import { ChatSubmitAction, ChatOpenModelPickerActionId, OpenModePickerAction, ChatSessionPrimaryPickerAction } from '../../actions/chatExecuteActions.js';
87
88
  import { IAgentSessionsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsService.service';
88
- import { ImplicitContextAttachmentWidget } from './attachments/implicitContextAttachment.js';
89
- import { ChatAttachmentModel } from './chatAttachmentModel.js';
90
- import { ToolSetOrToolItemAttachmentWidget, NotebookCellOutputChatAttachmentWidget, PromptFileAttachmentWidget, PromptTextAttachmentWidget, FileAttachmentWidget, TerminalCommandAttachmentWidget, ImageAttachmentWidget, ElementChatAttachmentWidget, PasteAttachmentWidget, SCMHistoryItemAttachmentWidget, SCMHistoryItemChangeAttachmentWidget, SCMHistoryItemChangeRangeAttachmentWidget, DefaultChatAttachmentWidget } from './chatAttachmentWidgets.js';
91
- import { CollapsibleListPool } from './chatContentParts/chatReferencesContentPart.js';
92
- import { ChatTodoListWidget } from './chatContentParts/chatTodoListWidget.js';
93
- import { IChatContextService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chatContextService.service';
94
- import { ChatDragAndDrop } from './chatDragAndDrop.js';
95
- import { ChatEditingShowChangesAction, ViewPreviousEditsAction, ViewAllSessionChangesAction } from './chatEditing/chatEditingActions.js';
89
+ import { ImplicitContextAttachmentWidget } from '../../attachments/implicitContextAttachment.js';
90
+ import { ChatAttachmentModel } from '../../attachments/chatAttachmentModel.js';
91
+ import { ToolSetOrToolItemAttachmentWidget, NotebookCellOutputChatAttachmentWidget, PromptFileAttachmentWidget, PromptTextAttachmentWidget, FileAttachmentWidget, TerminalCommandAttachmentWidget, ImageAttachmentWidget, ElementChatAttachmentWidget, PasteAttachmentWidget, SCMHistoryItemAttachmentWidget, SCMHistoryItemChangeAttachmentWidget, SCMHistoryItemChangeRangeAttachmentWidget, DefaultChatAttachmentWidget } from '../../attachments/chatAttachmentWidgets.js';
92
+ import { CollapsibleListPool } from '../chatContentParts/chatReferencesContentPart.js';
93
+ import { ChatTodoListWidget } from '../chatContentParts/chatTodoListWidget.js';
94
+ import { IChatContextService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/contextContrib/chatContextService.service';
95
+ import { ChatDragAndDrop } from '../chatDragAndDrop.js';
96
+ import { ChatEditingShowChangesAction, ViewPreviousEditsAction, ViewAllSessionChangesAction } from '../../chatEditing/chatEditingActions.js';
96
97
  import { ChatFollowups } from './chatFollowups.js';
97
98
  import { ChatInputPartWidgetController } from './chatInputPartWidgets.js';
98
99
  import { ChatSelectedTools } from './chatSelectedTools.js';
99
- import { ChatSessionPickerActionItem } from './chatSessions/chatSessionPickerActionItem.js';
100
- import { ChatImplicitContext } from './contrib/chatImplicitContext.js';
101
- import { ChatRelatedFiles } from './contrib/chatInputRelatedFilesContrib.js';
102
- import { resizeImage } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/imageUtils';
103
- import { ModelPickerActionItem } from './modelPicker/modelPickerActionItem.js';
104
- import { ModePickerActionItem } from './modelPicker/modePickerActionItem.js';
100
+ import { ChatSessionPickerActionItem } from '../../chatSessions/chatSessionPickerActionItem.js';
101
+ import { ChatImplicitContext } from '../../attachments/chatImplicitContext.js';
102
+ import { ChatRelatedFiles } from '../../attachments/chatInputRelatedFilesContrib.js';
103
+ import { resizeImage } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chatImageUtils';
104
+ import { ModelPickerActionItem } from './modelPickerActionItem.js';
105
+ import { ModePickerActionItem } from './modePickerActionItem.js';
105
106
  import { observableValue } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/observables/observableValue';
106
107
  import { autorun } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/reactions/autorun';
107
108
  import { derivedOpts, derived } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/observables/derived';
@@ -707,44 +708,44 @@ let ChatInputPart = class ChatInputPart extends Disposable {
707
708
  }
708
709
  const mode = this._currentModeObservable.get();
709
710
  const modelName = this._currentLanguageModel?.metadata.name;
710
- const modelInfo = modelName ? ( localize(5307, ", {0}. ", modelName)) : '';
711
+ const modelInfo = modelName ? ( localize(5812, ", {0}. ", modelName)) : '';
711
712
  let modeLabel = '';
712
713
  if (!mode.isBuiltin) {
713
714
  const mode = this.currentModeObs.get();
714
- modeLabel = ( localize(5308, "({0}), {1}", mode.label.get(), mode.description.get()));
715
+ modeLabel = ( localize(5813, "({0}), {1}", mode.label.get(), mode.description.get()));
715
716
  }
716
717
  else {
717
718
  switch (this.currentModeKind) {
718
719
  case ChatModeKind.Agent:
719
- modeLabel = ( localize(5309, "(Agent), edit files in your workspace."));
720
+ modeLabel = ( localize(5814, "(Agent), edit files in your workspace."));
720
721
  break;
721
722
  case ChatModeKind.Edit:
722
- modeLabel = ( localize(5310, "(Edit), edit files in your workspace."));
723
+ modeLabel = ( localize(5815, "(Edit), edit files in your workspace."));
723
724
  break;
724
725
  case ChatModeKind.Ask:
725
726
  default:
726
- modeLabel = ( localize(5311, "(Ask), ask questions or type / for topics."));
727
+ modeLabel = ( localize(5816, "(Ask), ask questions or type / for topics."));
727
728
  break;
728
729
  }
729
730
  }
730
731
  if (verbose) {
731
732
  return kbLabel
732
733
  ? ( localize(
733
- 5312,
734
+ 5817,
734
735
  "Chat Input {0}{1} Press Enter to send out the request. Use {2} for Chat Accessibility Help.",
735
736
  modeLabel,
736
737
  modelInfo,
737
738
  kbLabel
738
739
  ))
739
740
  : ( localize(
740
- 5313,
741
+ 5818,
741
742
  "Chat Input {0}{1} Press Enter to send out the request. Use the Chat Accessibility Help command for more information.",
742
743
  modeLabel,
743
744
  modelInfo
744
745
  ));
745
746
  }
746
747
  else {
747
- return localize(5314, "Chat Input {0}{1}.", modeLabel, modelInfo);
748
+ return localize(5819, "Chat Input {0}{1}.", modeLabel, modelInfo);
748
749
  }
749
750
  }
750
751
  validateCurrentChatMode() {
@@ -1113,7 +1114,6 @@ let ChatInputPart = class ChatInputPart extends Disposable {
1113
1114
  this._implicitContext = undefined;
1114
1115
  }
1115
1116
  this.tryUpdateWidgetController();
1116
- this.renderAttachedContext();
1117
1117
  this._register(this._attachmentModel.onDidChange((e) => {
1118
1118
  if (e.added.length > 0) {
1119
1119
  this._indexOfLastAttachedContextDeletedWithKeyboard = -1;
@@ -1351,12 +1351,13 @@ let ChatInputPart = class ChatInputPart extends Disposable {
1351
1351
  return undefined;
1352
1352
  }
1353
1353
  }));
1354
- this.addFilesToolbar.context = { widget, placeholder: ( localize(5315, 'Search for files and context to add to your request')) };
1354
+ this.addFilesToolbar.context = { widget, placeholder: ( localize(5820, 'Search for files and context to add to your request')) };
1355
1355
  this._register(this.addFilesToolbar.onDidChangeMenuItems(() => {
1356
1356
  if (this.cachedDimensions) {
1357
1357
  this._onDidChangeHeight.fire();
1358
1358
  }
1359
1359
  }));
1360
+ this.renderAttachedContext();
1360
1361
  }
1361
1362
  toggleChatInputOverlay(editing) {
1362
1363
  this.chatInputOverlay.classList.toggle('disabled', editing);
@@ -1455,17 +1456,9 @@ let ChatInputPart = class ChatInputPart extends Disposable {
1455
1456
  const implicitValue = this.implicitContext?.value;
1456
1457
  if (isSuggestedEnabled && implicitValue) {
1457
1458
  const targetUri = this.implicitContext.uri;
1458
- const currentlyAttached = ( attachments.some(([, attachment]) => {
1459
- let uri;
1460
- if (URI.isUri(attachment.value)) {
1461
- uri = attachment.value;
1462
- }
1463
- else if (isStringVariableEntry(attachment)) {
1464
- uri = attachment.uri;
1465
- }
1466
- return uri && isEqual(uri, targetUri);
1467
- }));
1468
- const shouldShowImplicit = !isLocation(implicitValue) ? !currentlyAttached : implicitValue.range;
1459
+ const targetRange = isLocation(implicitValue) ? implicitValue.range : undefined;
1460
+ const currentlyAttached = this.isAttachmentAlreadyAttached(targetUri, targetRange, ( attachments.map(([, a]) => a)));
1461
+ const shouldShowImplicit = !currentlyAttached;
1469
1462
  if (shouldShowImplicit) {
1470
1463
  const implicitPart = store.add(this.instantiationService.createInstance(ImplicitContextAttachmentWidget, () => this._widget, this.implicitContext, this._contextResourceLabels, this._attachmentModel));
1471
1464
  container.appendChild(implicitPart.domNode);
@@ -1489,13 +1482,36 @@ let ChatInputPart = class ChatInputPart extends Disposable {
1489
1482
  const isUri = URI.isUri(implicit);
1490
1483
  if (isUri || isLocation(implicit)) {
1491
1484
  const targetUri = isUri ? implicit : implicit.uri;
1492
- const attachments = [...this._attachmentModel.attachments.entries()];
1493
- const currentlyAttached = ( attachments.some(([, a]) => URI.isUri(a.value) && isEqual(a.value, targetUri)));
1494
- const shouldShowImplicit = isUri ? !currentlyAttached : implicit.range;
1495
- return !!shouldShowImplicit;
1485
+ const targetRange = isLocation(implicit) ? implicit.range : undefined;
1486
+ const attachments = [...( this._attachmentModel.attachments.values())];
1487
+ const currentlyAttached = this.isAttachmentAlreadyAttached(targetUri, targetRange, attachments);
1488
+ return !currentlyAttached;
1496
1489
  }
1497
1490
  return false;
1498
1491
  }
1492
+ isAttachmentAlreadyAttached(targetUri, targetRange, attachments) {
1493
+ return ( attachments.some((attachment) => {
1494
+ let uri;
1495
+ let range;
1496
+ if (URI.isUri(attachment.value)) {
1497
+ uri = attachment.value;
1498
+ }
1499
+ else if (isLocation(attachment.value)) {
1500
+ uri = attachment.value.uri;
1501
+ range = attachment.value.range;
1502
+ }
1503
+ else if (isStringVariableEntry(attachment)) {
1504
+ uri = attachment.uri;
1505
+ }
1506
+ if (!uri || !isEqual(uri, targetUri)) {
1507
+ return false;
1508
+ }
1509
+ if (targetRange) {
1510
+ return range && Range.equalsRange(range, targetRange);
1511
+ }
1512
+ return true;
1513
+ }));
1514
+ }
1499
1515
  handleAttachmentDeletion(e, index, attachment) {
1500
1516
  if (isKeyboardEvent(e)) {
1501
1517
  this._indexOfLastAttachedContextDeletedWithKeyboard = index;
@@ -1659,7 +1675,7 @@ let ChatInputPart = class ChatInputPart extends Disposable {
1659
1675
  const button = this._chatEditsActionsDisposables.add(( new ButtonWithIcon(overviewTitle, {
1660
1676
  supportIcons: true,
1661
1677
  secondary: true,
1662
- ariaLabel: ( localize(5316, 'Toggle changed files.')),
1678
+ ariaLabel: ( localize(5821, 'Toggle changed files.')),
1663
1679
  })));
1664
1680
  const topLevelStats = derived(reader => {
1665
1681
  let added = 0;
@@ -1671,7 +1687,7 @@ let ChatInputPart = class ChatInputPart extends Disposable {
1671
1687
  removed += entry.linesRemoved.read(reader);
1672
1688
  }
1673
1689
  }
1674
- let baseLabel = entries.length === 1 ? ( localize(5317, '1 file changed')) : ( localize(5318, '{0} files changed', entries.length));
1690
+ let baseLabel = entries.length === 1 ? ( localize(5822, '1 file changed')) : ( localize(5823, '{0} files changed', entries.length));
1675
1691
  let shouldShowEditingSession = added > 0 || removed > 0;
1676
1692
  let topLevelIsSessionMenu = false;
1677
1693
  if (added === 0 && removed === 0) {
@@ -1681,7 +1697,7 @@ let ChatInputPart = class ChatInputPart extends Disposable {
1681
1697
  removed += entry.deletions;
1682
1698
  }
1683
1699
  shouldShowEditingSession = sessionValue.length > 0;
1684
- baseLabel = sessionValue.length === 1 ? ( localize(5319, '1 file ready to merge')) : ( localize(5320, '{0} files ready to merge', sessionValue.length));
1700
+ baseLabel = sessionValue.length === 1 ? ( localize(5824, '1 file ready to merge')) : ( localize(5825, '{0} files ready to merge', sessionValue.length));
1685
1701
  topLevelIsSessionMenu = true;
1686
1702
  }
1687
1703
  button.label = baseLabel;
@@ -1711,7 +1727,7 @@ let ChatInputPart = class ChatInputPart extends Disposable {
1711
1727
  button.label = baseLabel;
1712
1728
  this._workingSetLinesAddedSpan.value.textContent = `+${added}`;
1713
1729
  this._workingSetLinesRemovedSpan.value.textContent = `-${removed}`;
1714
- button.element.setAttribute('aria-label', ( localize(5321, '{0}, {1} lines added, {2} lines removed', baseLabel, added, removed)));
1730
+ button.element.setAttribute('aria-label', ( localize(5826, '{0}, {1} lines added, {2} lines removed', baseLabel, added, removed)));
1715
1731
  setVisibility(shouldShowEditingSession, this.chatEditingSessionWidgetContainer);
1716
1732
  if (!shouldShowEditingSession) {
1717
1733
  this._onDidChangeHeight.fire();
@@ -1786,7 +1802,7 @@ let ChatInputPart = class ChatInputPart extends Disposable {
1786
1802
  if (editEntries.length > 0) {
1787
1803
  allEntries.push({
1788
1804
  kind: 'divider',
1789
- label: ( localize(5322, 'Worktree Changes')),
1805
+ label: ( localize(5827, 'Worktree Changes')),
1790
1806
  menuId: MenuId.ChatEditingSessionChangesToolbar,
1791
1807
  menuArg: sessionResource,
1792
1808
  scopedInstantiationService,
@@ -1822,7 +1838,7 @@ let ChatInputPart = class ChatInputPart extends Disposable {
1822
1838
  uriLabel.label = this.labelService.getUriBasenameLabel(uri);
1823
1839
  uriLabel.element.classList.add('monaco-icon-label');
1824
1840
  uriLabel.element.title = ( localize(
1825
- 5323,
1841
+ 5828,
1826
1842
  "{0} - {1}",
1827
1843
  this.labelService.getUriLabel(uri, { relative: true }),
1828
1844
  description ?? ''
@@ -1837,13 +1853,13 @@ let ChatInputPart = class ChatInputPart extends Disposable {
1837
1853
  secondary: true,
1838
1854
  hoverDelegate,
1839
1855
  ariaLabel: ( localize(
1840
- 5324,
1856
+ 5829,
1841
1857
  'Add suggestion {0}',
1842
1858
  this.labelService.getUriLabel(uri, { relative: true })
1843
1859
  )),
1844
1860
  })));
1845
1861
  addButton.icon = Codicon.add;
1846
- addButton.setTitle(( localize(5325, 'Add suggestion')));
1862
+ addButton.setTitle(( localize(5830, 'Add suggestion')));
1847
1863
  this._chatEditsActionsDisposables.add(addButton.onDidClick(async () => {
1848
1864
  group.remove();
1849
1865
  await this._attachmentModel.addFile(uri);
@@ -2,10 +2,10 @@ import { Disposable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/l
2
2
  import { IObservable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/observable";
3
3
  import { IInstantiationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation";
4
4
  import { IStorageService } from "@codingame/monaco-vscode-api/vscode/vs/platform/storage/common/storage.service";
5
- import { UserSelectedTools } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatAgents";
5
+ import { UserSelectedTools } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/participants/chatAgents";
6
6
  import { IChatMode } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatModes";
7
- import { IToolAndToolSetEnablementMap } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/languageModelToolsService";
8
- import { ILanguageModelToolsService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/languageModelToolsService.service";
7
+ import { IToolAndToolSetEnablementMap } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/tools/languageModelToolsService";
8
+ import { ILanguageModelToolsService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/tools/languageModelToolsService.service";
9
9
  export declare enum ToolsScope {
10
10
  Global = 0,
11
11
  Session = 1,
@@ -9,8 +9,8 @@ import { observableMemento } from '@codingame/monaco-vscode-api/vscode/vs/platfo
9
9
  import { StorageScope, StorageTarget } from '@codingame/monaco-vscode-api/vscode/vs/platform/storage/common/storage';
10
10
  import { IStorageService } from '@codingame/monaco-vscode-api/vscode/vs/platform/storage/common/storage.service';
11
11
  import { ChatModeKind } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/constants';
12
- import { ToolSet } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/languageModelToolsService';
13
- import { ILanguageModelToolsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/languageModelToolsService.service';
12
+ import { ToolSet } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/tools/languageModelToolsService';
13
+ import { ILanguageModelToolsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/tools/languageModelToolsService.service';
14
14
  import { PromptsStorage } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService';
15
15
  import { PromptFileRewriter } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/promptSyntax/promptFileRewriter';
16
16
  import { ObservableMap } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/map';
@@ -5,6 +5,7 @@ import { raceTimeout } from '@codingame/monaco-vscode-api/vscode/vs/base/common/
5
5
  import { decodeBase64 } from '@codingame/monaco-vscode-api/vscode/vs/base/common/buffer';
6
6
  import { CancellationTokenSource } from '@codingame/monaco-vscode-api/vscode/vs/base/common/cancellation';
7
7
  import { Codicon } from '@codingame/monaco-vscode-api/vscode/vs/base/common/codicons';
8
+ import { StopWatch } from '@codingame/monaco-vscode-api/vscode/vs/base/common/stopwatch';
8
9
  import { isPatternInWord } from '@codingame/monaco-vscode-api/vscode/vs/base/common/filters';
9
10
  import { Disposable, DisposableStore, toDisposable } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
10
11
  import { ResourceSet } from '@codingame/monaco-vscode-api/vscode/vs/base/common/map';
@@ -33,28 +34,28 @@ import { INotificationService } from '@codingame/monaco-vscode-api/vscode/vs/pla
33
34
  import { Registry } from '@codingame/monaco-vscode-api/vscode/vs/platform/registry/common/platform';
34
35
  import { IWorkspaceContextService } from '@codingame/monaco-vscode-api/vscode/vs/platform/workspace/common/workspace.service';
35
36
  import { Extensions } from '@codingame/monaco-vscode-api/vscode/vs/workbench/common/contributions';
36
- import { EditorsOrder } from '@codingame/monaco-vscode-api/vscode/vs/workbench/common/editor';
37
+ import { EditorsOrder, isDiffEditorInput } from '@codingame/monaco-vscode-api/vscode/vs/workbench/common/editor';
37
38
  import { IEditorService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorService.service';
38
39
  import { IHistoryService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/history/common/history.service';
39
40
  import { LifecyclePhase } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/lifecycle/common/lifecycle';
40
41
  import { ISearchService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/search/common/search.service';
41
- import { McpPromptArgumentPick } from '../../../mcp/browser/mcpPromptArgumentPick.js';
42
+ import { McpPromptArgumentPick } from '../../../../../mcp/browser/mcpPromptArgumentPick.js';
42
43
  import { McpResourceURI } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/mcp/common/mcpTypes';
43
44
  import { IMcpService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/mcp/common/mcpTypes.service';
44
45
  import { searchFilesAndFolders } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/search/browser/searchChatContext';
45
- import { getFullyQualifiedId } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatAgents';
46
- import { IChatAgentService, IChatAgentNameService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatAgents.service';
47
- import { IChatEditingService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatEditingService.service';
48
- import { getAttachableImageExtension } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatModel';
49
- import { ChatRequestAgentPart, chatSubcommandLeader, chatAgentLeader, ChatRequestAgentSubcommandPart, ChatRequestSlashPromptPart, ChatRequestTextPart, chatVariableLeader, ChatRequestToolPart, ChatRequestToolSetPart } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatParserTypes';
50
- import { IChatSlashCommandService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatSlashCommands.service';
46
+ import { getFullyQualifiedId } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/participants/chatAgents';
47
+ import { IChatAgentService, IChatAgentNameService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/participants/chatAgents.service';
48
+ import { IChatEditingService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/editing/chatEditingService.service';
49
+ import { getAttachableImageExtension } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/model/chatModel';
50
+ import { ChatRequestAgentPart, chatSubcommandLeader, chatAgentLeader, ChatRequestAgentSubcommandPart, ChatRequestSlashPromptPart, ChatRequestTextPart, chatVariableLeader, ChatRequestToolPart, ChatRequestToolSetPart } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/requestParser/chatParserTypes';
51
+ import { IChatSlashCommandService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/participants/chatSlashCommands.service';
51
52
  import { ChatAgentLocation, ChatModeKind, isSupportedChatFileScheme } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/constants';
52
- import { ToolSet } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/languageModelToolsService';
53
+ import { ToolSet } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/tools/languageModelToolsService';
53
54
  import { IPromptsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService.service';
54
- import { ChatSubmitAction } from '../actions/chatExecuteActions.js';
55
+ import { ChatSubmitAction } from '../../../actions/chatExecuteActions.js';
55
56
  import { IChatWidgetService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chat.service';
56
- import { resizeImage } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/imageUtils';
57
- import { ChatDynamicVariableModel } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/contrib/chatDynamicVariables';
57
+ import { resizeImage } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chatImageUtils';
58
+ import { ChatDynamicVariableModel } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/attachments/chatDynamicVariables';
58
59
 
59
60
  var BuiltinDynamicCompletions_1, ToolCompletions_1;
60
61
  let SlashCommandCompletions = class SlashCommandCompletions extends Disposable {
@@ -419,7 +420,7 @@ let AgentCompletions = class AgentCompletions extends Disposable {
419
420
  if (!isEmptyUpToCompletionWord(model, range)) {
420
421
  return;
421
422
  }
422
- const label = ( localize(5687, "Install Chat Extensions..."));
423
+ const label = ( localize(5837, "Install Chat Extensions..."));
423
424
  const item = {
424
425
  label,
425
426
  insertText: '',
@@ -556,7 +557,7 @@ class StartParameterizedPromptAction extends Action2 {
556
557
  }
557
558
  catch (e) {
558
559
  if (!cts.token.isCancellationRequested) {
559
- notificationService.error(( localize(5688, "Error resolving prompt: {0}", String(e))));
560
+ notificationService.error(( localize(5838, "Error resolving prompt: {0}", String(e))));
560
561
  }
561
562
  replaceTextWith('');
562
563
  return;
@@ -587,7 +588,7 @@ class StartParameterizedPromptAction extends Action2 {
587
588
  id: generateUuid(),
588
589
  kind: 'generic',
589
590
  value: contents,
590
- name: ( localize(5689, 'Prompt Resource')),
591
+ name: ( localize(5839, 'Prompt Resource')),
591
592
  });
592
593
  }
593
594
  }
@@ -596,8 +597,8 @@ class StartParameterizedPromptAction extends Action2 {
596
597
  .catch(() => decodeBase64(contents).buffer);
597
598
  chatWidget.attachmentModel.addContext({
598
599
  id: generateUuid(),
599
- name: ( localize(5690, 'Prompt Image')),
600
- fullName: ( localize(5690, 'Prompt Image')),
600
+ name: ( localize(5840, 'Prompt Image')),
601
+ fullName: ( localize(5840, 'Prompt Image')),
601
602
  value: resized,
602
603
  kind: 'image',
603
604
  references: validURI && [{ reference: validURI, kind: 'reference' }],
@@ -793,7 +794,7 @@ let BuiltinDynamicCompletions = class BuiltinDynamicCompletions extends Disposab
793
794
  const text = `${chatVariableLeader}file:${basename}`;
794
795
  const uriLabel = this.labelService.getUriLabel(resource, { relative: true });
795
796
  const labelDescription = description
796
- ? ( localize(5691, '{0} ({1})', uriLabel, description))
797
+ ? ( localize(5841, '{0} ({1})', uriLabel, description))
797
798
  : uriLabel;
798
799
  const sortText = boostPriority ? ' ' : '!';
799
800
  return {
@@ -821,17 +822,18 @@ let BuiltinDynamicCompletions = class BuiltinDynamicCompletions extends Disposab
821
822
  const seen = ( new ResourceSet());
822
823
  const len = result.suggestions.length;
823
824
  for (const [i, item] of this.historyService.getHistory().entries()) {
824
- if (!item.resource || ( seen.has(item.resource)) || !this.instantiationService.invokeFunction(accessor => isSupportedChatFileScheme(accessor, item.resource.scheme))) {
825
+ const resource = isDiffEditorInput(item) ? item.modified.resource : item.resource;
826
+ if (!resource || ( seen.has(resource)) || !this.instantiationService.invokeFunction(accessor => isSupportedChatFileScheme(accessor, resource.scheme))) {
825
827
  continue;
826
828
  }
827
829
  if (pattern) {
828
- const basename = this.labelService.getUriBasenameLabel(item.resource).toLowerCase();
830
+ const basename = this.labelService.getUriBasenameLabel(resource).toLowerCase();
829
831
  if (!isPatternInWord(pattern, 0, pattern.length, basename, 0, basename.length)) {
830
832
  continue;
831
833
  }
832
834
  }
833
- seen.add(item.resource);
834
- const newLen = result.suggestions.push(makeCompletionItem(item.resource, FileKind.FILE, i === 0 ? ( localize(5692, 'Active file')) : undefined, i === 0));
835
+ seen.add(resource);
836
+ const newLen = result.suggestions.push(makeCompletionItem(resource, FileKind.FILE, i === 0 ? ( localize(5842, 'Active file')) : undefined, i === 0));
835
837
  if (newLen - len >= 5) {
836
838
  break;
837
839
  }
@@ -869,6 +871,8 @@ let BuiltinDynamicCompletions = class BuiltinDynamicCompletions extends Disposab
869
871
  result.incomplete = true;
870
872
  }
871
873
  addSymbolEntries(widget, result, info, token) {
874
+ const timeoutMs = 100;
875
+ const stopwatch = ( new StopWatch());
872
876
  const makeSymbolCompletionItem = (symbolItem, pattern) => {
873
877
  const text = `${chatVariableLeader}sym:${symbolItem.name}`;
874
878
  const resource = symbolItem.location.uri;
@@ -903,10 +907,15 @@ let BuiltinDynamicCompletions = class BuiltinDynamicCompletions extends Disposab
903
907
  symbolsToAdd.push({ symbol, uri: outlineModel.uri });
904
908
  }
905
909
  }
910
+ let timedOut = false;
906
911
  for (const symbol of symbolsToAdd) {
912
+ if (stopwatch.elapsed() > timeoutMs || token.isCancellationRequested) {
913
+ timedOut = true;
914
+ break;
915
+ }
907
916
  result.suggestions.push(makeSymbolCompletionItem({ ...symbol.symbol, location: { uri: symbol.uri, range: symbol.symbol.range } }, pattern ?? ''));
908
917
  }
909
- result.incomplete = !!pattern;
918
+ result.incomplete = !!pattern || timedOut;
910
919
  }
911
920
  updateCacheKey() {
912
921
  if (this.cacheKey && Date.now() - this.cacheKey.time > 60000) {
@@ -1031,6 +1040,7 @@ let ToolCompletions = class ToolCompletions extends Disposable {
1031
1040
  continue;
1032
1041
  }
1033
1042
  let detail;
1043
+ let documentation;
1034
1044
  let name;
1035
1045
  if (item instanceof ToolSet) {
1036
1046
  detail = item.description;
@@ -1038,8 +1048,9 @@ let ToolCompletions = class ToolCompletions extends Disposable {
1038
1048
  }
1039
1049
  else {
1040
1050
  const source = item.source;
1041
- detail = ( localize(5693, "{0}: {1}", source.label, item.displayName));
1051
+ detail = ( localize(5843, "{0}: {1}", source.label, item.displayName));
1042
1052
  name = item.toolReferenceName ?? item.displayName;
1053
+ documentation = item.userDescription ?? item.modelDescription;
1043
1054
  }
1044
1055
  if (( usedNames.has(name))) {
1045
1056
  continue;
@@ -1049,6 +1060,7 @@ let ToolCompletions = class ToolCompletions extends Disposable {
1049
1060
  label: withLeader,
1050
1061
  range,
1051
1062
  detail,
1063
+ documentation,
1052
1064
  insertText: withLeader + ' ',
1053
1065
  kind: CompletionItemKind.Tool,
1054
1066
  sortText: 'z',
@@ -1,7 +1,7 @@
1
1
  import { IDisposable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle";
2
2
  import { IObservable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/observable";
3
3
  import { URI } from "@codingame/monaco-vscode-api/vscode/vs/base/common/uri";
4
- import { ActionWidgetDropdownActionViewItem } from "../../../../../platform/actions/browser/actionWidgetDropdownActionViewItem.js";
4
+ import { ActionWidgetDropdownActionViewItem } from "../../../../../../platform/actions/browser/actionWidgetDropdownActionViewItem.js";
5
5
  import { MenuItemAction } from "@codingame/monaco-vscode-api/vscode/vs/platform/actions/common/actions";
6
6
  import { IMenuService } from "@codingame/monaco-vscode-api/vscode/vs/platform/actions/common/actions.service";
7
7
  import { IActionWidgetService } from "@codingame/monaco-vscode-api/vscode/vs/platform/actionWidget/browser/actionWidget.service";
@@ -10,7 +10,7 @@ import { IConfigurationService } from "@codingame/monaco-vscode-api/vscode/vs/pl
10
10
  import { IContextKeyService } from "@codingame/monaco-vscode-api/vscode/vs/platform/contextkey/common/contextkey.service";
11
11
  import { IKeybindingService } from "@codingame/monaco-vscode-api/vscode/vs/platform/keybinding/common/keybinding.service";
12
12
  import { IProductService } from "@codingame/monaco-vscode-api/vscode/vs/platform/product/common/productService.service";
13
- import { IChatAgentService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatAgents.service";
13
+ import { IChatAgentService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/participants/chatAgents.service";
14
14
  import { IChatMode } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatModes";
15
15
  import { IChatModeService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatModes.service";
16
16
  export interface IModePickerDelegate {
@@ -8,7 +8,7 @@ import { groupBy } from '@codingame/monaco-vscode-api/vscode/vs/base/common/coll
8
8
  import '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/index';
9
9
  import { ThemeIcon } from '@codingame/monaco-vscode-api/vscode/vs/base/common/themables';
10
10
  import { localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
11
- import { ActionWidgetDropdownActionViewItem } from '../../../../../platform/actions/browser/actionWidgetDropdownActionViewItem.js';
11
+ import { ActionWidgetDropdownActionViewItem } from '../../../../../../platform/actions/browser/actionWidgetDropdownActionViewItem.js';
12
12
  import { getFlatActionBarActions } from '@codingame/monaco-vscode-api/vscode/vs/platform/actions/browser/menuEntryActionViewItem';
13
13
  import { MenuId } from '@codingame/monaco-vscode-api/vscode/vs/platform/actions/common/actions';
14
14
  import { IMenuService } from '@codingame/monaco-vscode-api/vscode/vs/platform/actions/common/actions.service';
@@ -18,20 +18,20 @@ import { IConfigurationService } from '@codingame/monaco-vscode-api/vscode/vs/pl
18
18
  import { IContextKeyService } from '@codingame/monaco-vscode-api/vscode/vs/platform/contextkey/common/contextkey.service';
19
19
  import { IKeybindingService } from '@codingame/monaco-vscode-api/vscode/vs/platform/keybinding/common/keybinding.service';
20
20
  import { IProductService } from '@codingame/monaco-vscode-api/vscode/vs/platform/product/common/productService.service';
21
- import { IChatAgentService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatAgents.service';
21
+ import { IChatAgentService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/participants/chatAgents.service';
22
22
  import { ChatMode } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatModes';
23
23
  import { IChatModeService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatModes.service';
24
24
  import { ChatConfiguration, ChatModeKind, ChatAgentLocation } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/constants';
25
25
  import { PromptsStorage, ExtensionAgentSourceType } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService';
26
26
  import { getOpenChatActionIdForMode } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/actions/chatActions';
27
- import { ToggleAgentModeActionId } from '../actions/chatExecuteActions.js';
27
+ import { ToggleAgentModeActionId } from '../../actions/chatExecuteActions.js';
28
28
  import { autorun } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/reactions/autorun';
29
29
 
30
30
  let ModePickerActionItem = class ModePickerActionItem extends ActionWidgetDropdownActionViewItem {
31
31
  constructor(action, delegate, actionWidgetService, chatAgentService, keybindingService, configurationService, contextKeyService, chatModeService, menuService, commandService, productService) {
32
- const builtInCategory = { label: ( localize(5739, "Built-In")), order: 0 };
33
- const customCategory = { label: ( localize(5740, "Custom")), order: 1 };
34
- const policyDisabledCategory = { label: ( localize(5741, "Managed by your organization")), order: 999, showHeader: true };
32
+ const builtInCategory = { label: ( localize(5852, "Built-In")), order: 0 };
33
+ const customCategory = { label: ( localize(5853, "Custom")), order: 1 };
34
+ const policyDisabledCategory = { label: ( localize(5854, "Managed by your organization")), order: 999, showHeader: true };
35
35
  const agentModeDisabledViaPolicy = configurationService.inspect(ChatConfiguration.AgentEnabled).policyValue === false;
36
36
  const makeAction = (mode, currentMode) => {
37
37
  const isDisabledViaPolicy = mode.kind === ChatModeKind.Agent &&
@@ -51,7 +51,9 @@ let ModePickerActionItem = class ModePickerActionItem extends ActionWidgetDropdo
51
51
  return;
52
52
  }
53
53
  const result = await commandService.executeCommand(ToggleAgentModeActionId, { modeId: mode.id, sessionResource: this.delegate.sessionResource() });
54
- this.renderLabel(this.element);
54
+ if (this.element) {
55
+ this.renderLabel(this.element);
56
+ }
55
57
  return result;
56
58
  },
57
59
  category: isDisabledViaPolicy ? policyDisabledCategory : builtInCategory
@@ -2,15 +2,16 @@ import { IAction } from "@codingame/monaco-vscode-api/vscode/vs/base/common/acti
2
2
  import { Event } from "@codingame/monaco-vscode-api/vscode/vs/base/common/event";
3
3
  import { ILanguageModelChatMetadataAndIdentifier } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/languageModels";
4
4
  import { IDisposable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle";
5
- import { ActionWidgetDropdownActionViewItem } from "../../../../../platform/actions/browser/actionWidgetDropdownActionViewItem.js";
5
+ import { ActionWidgetDropdownActionViewItem } from "../../../../../../platform/actions/browser/actionWidgetDropdownActionViewItem.js";
6
6
  import { IActionWidgetService } from "@codingame/monaco-vscode-api/vscode/vs/platform/actionWidget/browser/actionWidget.service";
7
- import { IActionWidgetDropdownOptions } from "../../../../../platform/actionWidget/browser/actionWidgetDropdown.js";
7
+ import { IActionWidgetDropdownOptions } from "../../../../../../platform/actionWidget/browser/actionWidgetDropdown.js";
8
8
  import { IContextKeyService } from "@codingame/monaco-vscode-api/vscode/vs/platform/contextkey/common/contextkey.service";
9
9
  import { ICommandService } from "@codingame/monaco-vscode-api/vscode/vs/platform/commands/common/commands.service";
10
10
  import { IChatEntitlementService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/chat/common/chatEntitlementService.service";
11
11
  import { IKeybindingService } from "@codingame/monaco-vscode-api/vscode/vs/platform/keybinding/common/keybinding.service";
12
12
  import { ITelemetryService } from "@codingame/monaco-vscode-api/vscode/vs/platform/telemetry/common/telemetry.service";
13
13
  import { IProductService } from "@codingame/monaco-vscode-api/vscode/vs/platform/product/common/productService.service";
14
+ import { IManagedHoverContent } from "@codingame/monaco-vscode-api/vscode/vs/base/browser/ui/hover/hover";
14
15
  export interface IModelPickerDelegate {
15
16
  readonly onDidChangeModel: Event<ILanguageModelChatMetadataAndIdentifier>;
16
17
  getCurrentModel(): ILanguageModelChatMetadataAndIdentifier | undefined;
@@ -23,6 +24,7 @@ export interface IModelPickerDelegate {
23
24
  export declare class ModelPickerActionItem extends ActionWidgetDropdownActionViewItem {
24
25
  protected currentModel: ILanguageModelChatMetadataAndIdentifier | undefined;
25
26
  constructor(action: IAction, currentModel: ILanguageModelChatMetadataAndIdentifier | undefined, widgetOptions: Omit<IActionWidgetDropdownOptions, "label" | "labelRenderer"> | undefined, delegate: IModelPickerDelegate, actionWidgetService: IActionWidgetService, contextKeyService: IContextKeyService, commandService: ICommandService, chatEntitlementService: IChatEntitlementService, keybindingService: IKeybindingService, telemetryService: ITelemetryService, productService: IProductService);
27
+ protected getHoverContents(): IManagedHoverContent | undefined;
26
28
  protected renderLabel(element: HTMLElement): IDisposable | null;
27
29
  render(container: HTMLElement): void;
28
30
  }