@codingame/monaco-vscode-katex-common 24.1.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 (262) hide show
  1. package/empty.js +1 -0
  2. package/package.json +45 -0
  3. package/vscode/src/vs/platform/actionWidget/browser/actionWidgetDropdown.d.ts +37 -0
  4. package/vscode/src/vs/platform/actionWidget/browser/actionWidgetDropdown.js +127 -0
  5. package/vscode/src/vs/platform/actions/browser/actionWidgetDropdownActionViewItem.d.ts +27 -0
  6. package/vscode/src/vs/platform/actions/browser/actionWidgetDropdownActionViewItem.js +81 -0
  7. package/vscode/src/vs/platform/actions/browser/buttonbar.d.ts +44 -0
  8. package/vscode/src/vs/platform/actions/browser/buttonbar.js +172 -0
  9. package/vscode/src/vs/platform/editor/browser/editor.d.ts +12 -0
  10. package/vscode/src/vs/platform/editor/browser/editor.js +51 -0
  11. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContinueInAction.d.ts +41 -0
  12. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContinueInAction.js +295 -0
  13. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatElicitationActions.d.ts +2 -0
  14. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatElicitationActions.js +60 -0
  15. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatExecuteActions.d.ts +65 -0
  16. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatExecuteActions.js +650 -0
  17. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatTitleActions.d.ts +2 -0
  18. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatTitleActions.js +364 -0
  19. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/implicitContextAttachment.d.ts +38 -0
  20. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/implicitContextAttachment.js +207 -0
  21. package/vscode/src/vs/workbench/contrib/chat/browser/chatAccessibilityProvider.d.ts +17 -0
  22. package/vscode/src/vs/workbench/contrib/chat/browser/chatAccessibilityProvider.js +216 -0
  23. package/vscode/src/vs/workbench/contrib/chat/browser/chatAgentHover.d.ts +24 -0
  24. package/vscode/src/vs/workbench/contrib/chat/browser/chatAgentHover.js +114 -0
  25. package/vscode/src/vs/workbench/contrib/chat/browser/chatAttachmentModel.d.ts +34 -0
  26. package/vscode/src/vs/workbench/contrib/chat/browser/chatAttachmentModel.js +141 -0
  27. package/vscode/src/vs/workbench/contrib/chat/browser/chatAttachmentWidgets.d.ts +169 -0
  28. package/vscode/src/vs/workbench/contrib/chat/browser/chatAttachmentWidgets.js +951 -0
  29. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentMarkdownRenderer.d.ts +19 -0
  30. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentMarkdownRenderer.js +109 -0
  31. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatAgentCommandContentPart.d.ts +12 -0
  32. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatAgentCommandContentPart.js +47 -0
  33. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatAnonymousRateLimitedPart.d.ts +13 -0
  34. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatAnonymousRateLimitedPart.js +49 -0
  35. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatAttachmentsContentPart.d.ts +27 -0
  36. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatAttachmentsContentPart.js +160 -0
  37. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatChangesSummaryPart.d.ts +40 -0
  38. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatChangesSummaryPart.js +286 -0
  39. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatCodeCitationContentPart.d.ts +13 -0
  40. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatCodeCitationContentPart.js +49 -0
  41. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatCollapsibleContentPart.d.ts +34 -0
  42. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatCollapsibleContentPart.js +101 -0
  43. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatCollections.d.ts +14 -0
  44. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatCollections.js +30 -0
  45. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatCommandContentPart.d.ts +11 -0
  46. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatCommandContentPart.js +37 -0
  47. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatConfirmationContentPart.d.ts +17 -0
  48. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatConfirmationContentPart.js +69 -0
  49. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatConfirmationWidget.d.ts +116 -0
  50. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatConfirmationWidget.js +417 -0
  51. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatContentCodePools.d.ts +20 -0
  52. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatContentCodePools.js +66 -0
  53. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatElicitationContentPart.d.ts +25 -0
  54. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatElicitationContentPart.js +123 -0
  55. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatErrorConfirmationPart.d.ts +18 -0
  56. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatErrorConfirmationPart.js +60 -0
  57. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatErrorContentPart.d.ts +16 -0
  58. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatErrorContentPart.js +46 -0
  59. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatExtensionsContentPart.d.ts +19 -0
  60. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatExtensionsContentPart.js +57 -0
  61. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatMarkdownContentPart.d.ts +94 -0
  62. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatMarkdownContentPart.js +567 -0
  63. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatMcpServersInteractionContentPart.d.ts +34 -0
  64. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatMcpServersInteractionContentPart.js +224 -0
  65. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatMultiDiffContentPart.d.ts +34 -0
  66. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatMultiDiffContentPart.js +259 -0
  67. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatProgressContentPart.d.ts +38 -0
  68. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatProgressContentPart.js +160 -0
  69. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatPullRequestContentPart.d.ts +16 -0
  70. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatPullRequestContentPart.js +55 -0
  71. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatQuotaExceededPart.d.ts +17 -0
  72. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatQuotaExceededPart.js +117 -0
  73. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatReferencesContentPart.d.ts +66 -0
  74. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatReferencesContentPart.js +528 -0
  75. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatSuggestNextWidget.d.ts +31 -0
  76. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatSuggestNextWidget.js +160 -0
  77. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatTaskContentPart.d.ts +17 -0
  78. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatTaskContentPart.js +49 -0
  79. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatTextEditContentPart.d.ts +18 -0
  80. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatTextEditContentPart.js +91 -0
  81. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatTextEditContentPart.service.d.ts +13 -0
  82. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatTextEditContentPart.service.js +6 -0
  83. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatThinkingContentPart.d.ts +54 -0
  84. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatThinkingContentPart.js +429 -0
  85. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatTodoListWidget.d.ts +40 -0
  86. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatTodoListWidget.js +347 -0
  87. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatToolInputOutputContentPart.d.ts +56 -0
  88. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatToolInputOutputContentPart.js +164 -0
  89. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatToolOutputContentSubPart.d.ts +32 -0
  90. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatToolOutputContentSubPart.js +224 -0
  91. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatTreeContentPart.d.ts +35 -0
  92. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatTreeContentPart.js +173 -0
  93. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/media/chatConfirmationWidget.css +341 -0
  94. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/media/chatExtensionsContent.css +27 -0
  95. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/media/chatMarkdownPart.css +23 -0
  96. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/media/chatMcpServersInteractionContent.css +14 -0
  97. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/media/chatPullRequestContent.css +75 -0
  98. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/media/chatTerminalToolProgressPart.css +221 -0
  99. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/media/chatThinkingContent.css +162 -0
  100. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/toolInvocationParts/abstractToolConfirmationSubPart.d.ts +41 -0
  101. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/toolInvocationParts/abstractToolConfirmationSubPart.js +94 -0
  102. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/toolInvocationParts/chatExtensionsInstallToolSubPart.d.ts +15 -0
  103. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/toolInvocationParts/chatExtensionsInstallToolSubPart.js +96 -0
  104. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/toolInvocationParts/chatInputOutputMarkdownProgressPart.d.ts +18 -0
  105. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/toolInvocationParts/chatInputOutputMarkdownProgressPart.js +147 -0
  106. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/toolInvocationParts/chatResultListSubPart.d.ts +14 -0
  107. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/toolInvocationParts/chatResultListSubPart.js +23 -0
  108. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/toolInvocationParts/chatTerminalToolConfirmationSubPart.d.ts +68 -0
  109. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/toolInvocationParts/chatTerminalToolConfirmationSubPart.js +353 -0
  110. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/toolInvocationParts/chatTerminalToolProgressPart.d.ts +100 -0
  111. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/toolInvocationParts/chatTerminalToolProgressPart.js +1085 -0
  112. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/toolInvocationParts/chatToolConfirmationSubPart.d.ts +39 -0
  113. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/toolInvocationParts/chatToolConfirmationSubPart.js +275 -0
  114. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/toolInvocationParts/chatToolInvocationPart.d.ts +32 -0
  115. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/toolInvocationParts/chatToolInvocationPart.js +119 -0
  116. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/toolInvocationParts/chatToolInvocationSubPart.d.ts +19 -0
  117. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/toolInvocationParts/chatToolInvocationSubPart.js +36 -0
  118. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/toolInvocationParts/chatToolOutputPart.d.ts +21 -0
  119. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/toolInvocationParts/chatToolOutputPart.js +130 -0
  120. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/toolInvocationParts/chatToolPostExecuteConfirmationPart.d.ts +25 -0
  121. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/toolInvocationParts/chatToolPostExecuteConfirmationPart.js +225 -0
  122. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/toolInvocationParts/chatToolProgressPart.d.ts +24 -0
  123. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/toolInvocationParts/chatToolProgressPart.js +101 -0
  124. package/vscode/src/vs/workbench/contrib/chat/browser/chatDiffBlockPart.d.ts +42 -0
  125. package/vscode/src/vs/workbench/contrib/chat/browser/chatDiffBlockPart.js +127 -0
  126. package/vscode/src/vs/workbench/contrib/chat/browser/chatDragAndDrop.d.ts +43 -0
  127. package/vscode/src/vs/workbench/contrib/chat/browser/chatDragAndDrop.js +388 -0
  128. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingActions.d.ts +49 -0
  129. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingActions.js +721 -0
  130. package/vscode/src/vs/workbench/contrib/chat/browser/chatFollowups.d.ts +13 -0
  131. package/vscode/src/vs/workbench/contrib/chat/browser/chatFollowups.js +52 -0
  132. package/vscode/src/vs/workbench/contrib/chat/browser/chatInlineAnchorWidget.d.ts +39 -0
  133. package/vscode/src/vs/workbench/contrib/chat/browser/chatInlineAnchorWidget.js +409 -0
  134. package/vscode/src/vs/workbench/contrib/chat/browser/chatInputPart.d.ts +334 -0
  135. package/vscode/src/vs/workbench/contrib/chat/browser/chatInputPart.js +2008 -0
  136. package/vscode/src/vs/workbench/contrib/chat/browser/chatInputPartWidgets.d.ts +52 -0
  137. package/vscode/src/vs/workbench/contrib/chat/browser/chatInputPartWidgets.js +93 -0
  138. package/vscode/src/vs/workbench/contrib/chat/browser/chatListRenderer.d.ts +217 -0
  139. package/vscode/src/vs/workbench/contrib/chat/browser/chatListRenderer.js +1573 -0
  140. package/vscode/src/vs/workbench/contrib/chat/browser/chatMarkdownDecorationsRenderer.d.ts +43 -0
  141. package/vscode/src/vs/workbench/contrib/chat/browser/chatMarkdownDecorationsRenderer.js +249 -0
  142. package/vscode/src/vs/workbench/contrib/chat/browser/chatOptions.d.ts +50 -0
  143. package/vscode/src/vs/workbench/contrib/chat/browser/chatOptions.js +84 -0
  144. package/vscode/src/vs/workbench/contrib/chat/browser/chatSelectedTools.d.ts +32 -0
  145. package/vscode/src/vs/workbench/contrib/chat/browser/chatSelectedTools.js +174 -0
  146. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessionPickerActionItem.d.ts +31 -0
  147. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessionPickerActionItem.js +101 -0
  148. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/common.d.ts +19 -0
  149. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/common.js +76 -0
  150. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/media/chatSessionAction.css +39 -0
  151. package/vscode/src/vs/workbench/contrib/chat/browser/chatWidget.d.ts +292 -0
  152. package/vscode/src/vs/workbench/contrib/chat/browser/chatWidget.js +2014 -0
  153. package/vscode/src/vs/workbench/contrib/chat/browser/codeBlockPart.css +171 -0
  154. package/vscode/src/vs/workbench/contrib/chat/browser/codeBlockPart.d.ts +173 -0
  155. package/vscode/src/vs/workbench/contrib/chat/browser/codeBlockPart.js +797 -0
  156. package/vscode/src/vs/workbench/contrib/chat/browser/contrib/chatImplicitContext.d.ts +54 -0
  157. package/vscode/src/vs/workbench/contrib/chat/browser/contrib/chatImplicitContext.js +345 -0
  158. package/vscode/src/vs/workbench/contrib/chat/browser/contrib/chatInputCompletions.d.ts +10 -0
  159. package/vscode/src/vs/workbench/contrib/chat/browser/contrib/chatInputCompletions.js +1069 -0
  160. package/vscode/src/vs/workbench/contrib/chat/browser/contrib/chatInputRelatedFilesContrib.d.ts +34 -0
  161. package/vscode/src/vs/workbench/contrib/chat/browser/contrib/chatInputRelatedFilesContrib.js +139 -0
  162. package/vscode/src/vs/workbench/contrib/chat/browser/media/chat.css +2880 -0
  163. package/vscode/src/vs/workbench/contrib/chat/browser/media/chatAgentHover.css +87 -0
  164. package/vscode/src/vs/workbench/contrib/chat/browser/media/chatCodeBlockPill.css +139 -0
  165. package/vscode/src/vs/workbench/contrib/chat/browser/media/chatInlineAnchorWidget.css +61 -0
  166. package/vscode/src/vs/workbench/contrib/chat/browser/media/chatViewWelcome.css +209 -0
  167. package/vscode/src/vs/workbench/contrib/chat/browser/modelPicker/modePickerActionItem.d.ts +28 -0
  168. package/vscode/src/vs/workbench/contrib/chat/browser/modelPicker/modePickerActionItem.js +135 -0
  169. package/vscode/src/vs/workbench/contrib/chat/browser/modelPicker/modelPickerActionItem.d.ts +28 -0
  170. package/vscode/src/vs/workbench/contrib/chat/browser/modelPicker/modelPickerActionItem.js +147 -0
  171. package/vscode/src/vs/workbench/contrib/chat/browser/viewsWelcome/chatViewWelcomeController.d.ts +71 -0
  172. package/vscode/src/vs/workbench/contrib/chat/browser/viewsWelcome/chatViewWelcomeController.js +279 -0
  173. package/vscode/src/vs/workbench/contrib/chat/browser/viewsWelcome/chatViewsWelcome.d.ts +28 -0
  174. package/vscode/src/vs/workbench/contrib/chat/browser/viewsWelcome/chatViewsWelcome.js +28 -0
  175. package/vscode/src/vs/workbench/contrib/chat/common/chatColors.d.ts +13 -0
  176. package/vscode/src/vs/workbench/contrib/chat/common/chatColors.js +38 -0
  177. package/vscode/src/vs/workbench/contrib/chat/common/chatWidgetHistoryService.d.ts +55 -0
  178. package/vscode/src/vs/workbench/contrib/chat/common/chatWidgetHistoryService.js +176 -0
  179. package/vscode/src/vs/workbench/contrib/chat/common/codeBlockModelCollection.d.ts +45 -0
  180. package/vscode/src/vs/workbench/contrib/chat/common/codeBlockModelCollection.js +207 -0
  181. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/computeAutomaticInstructions.d.ts +48 -0
  182. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/computeAutomaticInstructions.js +373 -0
  183. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatController.d.ts +171 -0
  184. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatController.js +1442 -0
  185. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSession.d.ts +199 -0
  186. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSession.js +482 -0
  187. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionService.d.ts +28 -0
  188. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionService.js +37 -0
  189. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionServiceImpl.d.ts +95 -0
  190. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionServiceImpl.js +497 -0
  191. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatStrategies.d.ts +76 -0
  192. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatStrategies.js +464 -0
  193. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatWidget.d.ts +124 -0
  194. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatWidget.js +562 -0
  195. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatZoneWidget.d.ts +42 -0
  196. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatZoneWidget.js +279 -0
  197. package/vscode/src/vs/workbench/contrib/inlineChat/browser/media/inlineChat.css +411 -0
  198. package/vscode/src/vs/workbench/contrib/inlineChat/browser/utils.d.ts +13 -0
  199. package/vscode/src/vs/workbench/contrib/inlineChat/browser/utils.js +66 -0
  200. package/vscode/src/vs/workbench/contrib/inlineChat/common/inlineChat.d.ts +61 -0
  201. package/vscode/src/vs/workbench/contrib/inlineChat/common/inlineChat.js +154 -0
  202. package/vscode/src/vs/workbench/contrib/markdown/browser/markedKatexSupport.d.ts +19 -0
  203. package/vscode/src/vs/workbench/contrib/markdown/browser/markedKatexSupport.js +201 -0
  204. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpPromptArgumentPick.d.ts +41 -0
  205. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpPromptArgumentPick.js +372 -0
  206. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/chat/notebookChatUtils.d.ts +4 -0
  207. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/chat/notebookChatUtils.js +58 -0
  208. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/cellOperations.d.ts +26 -0
  209. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/cellOperations.js +594 -0
  210. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffCellEditorOptions.d.ts +8 -0
  211. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffCellEditorOptions.js +55 -0
  212. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffComponents.d.ts +273 -0
  213. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffComponents.js +1746 -0
  214. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffElementOutputs.d.ts +50 -0
  215. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffElementOutputs.js +269 -0
  216. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffElementViewModel.d.ts +258 -0
  217. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffElementViewModel.js +806 -0
  218. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffNestedCellViewModel.d.ts +41 -0
  219. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffNestedCellViewModel.js +116 -0
  220. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/editorHeightCalculator.d.ts +17 -0
  221. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/editorHeightCalculator.js +62 -0
  222. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/eventDispatcher.d.ts +27 -0
  223. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/eventDispatcher.js +40 -0
  224. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookCellDiffDecorator.d.ts +23 -0
  225. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookCellDiffDecorator.js +295 -0
  226. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookDeletedCellDecorator.d.ts +51 -0
  227. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookDeletedCellDecorator.js +241 -0
  228. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookInlineDiff.d.ts +24 -0
  229. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookInlineDiff.js +146 -0
  230. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookInlineDiffWidget.d.ts +28 -0
  231. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookInlineDiffWidget.js +90 -0
  232. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookInsertedCellDecorator.d.ts +10 -0
  233. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookInsertedCellDecorator.js +41 -0
  234. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookOriginalCellModelFactory.d.ts +21 -0
  235. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookOriginalCellModelFactory.js +42 -0
  236. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookOriginalModelRefFactory.d.ts +25 -0
  237. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookOriginalModelRefFactory.js +77 -0
  238. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiff.css +469 -0
  239. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffEditor.d.ts +149 -0
  240. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffEditor.js +823 -0
  241. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffEditorBrowser.d.ts +180 -0
  242. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffEditorBrowser.js +29 -0
  243. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffList.d.ts +102 -0
  244. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffList.js +567 -0
  245. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffOverviewRuler.d.ts +30 -0
  246. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffOverviewRuler.js +189 -0
  247. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffViewModel.d.ts +75 -0
  248. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffViewModel.js +439 -0
  249. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookMultiDiffEditor.d.ts +57 -0
  250. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookMultiDiffEditor.js +263 -0
  251. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookMultiDiffEditorInput.d.ts +22 -0
  252. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookMultiDiffEditorInput.js +48 -0
  253. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/unchangedEditorRegions.d.ts +13 -0
  254. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/unchangedEditorRegions.js +39 -0
  255. package/vscode/src/vs/workbench/contrib/notebook/common/model/notebookMetadataTextModel.d.ts +19 -0
  256. package/vscode/src/vs/workbench/contrib/notebook/common/model/notebookMetadataTextModel.js +89 -0
  257. package/vscode/src/vs/workbench/contrib/notebook/common/notebookDiff.d.ts +26 -0
  258. package/vscode/src/vs/workbench/contrib/notebook/common/notebookDiff.js +92 -0
  259. package/vscode/src/vs/workbench/contrib/notebook/common/notebookDiffEditorInput.d.ts +33 -0
  260. package/vscode/src/vs/workbench/contrib/notebook/common/notebookDiffEditorInput.js +108 -0
  261. package/vscode/src/vs/workbench/contrib/terminal/browser/chatTerminalCommandMirror.d.ts +34 -0
  262. package/vscode/src/vs/workbench/contrib/terminal/browser/chatTerminalCommandMirror.js +145 -0
@@ -0,0 +1,372 @@
1
+
2
+ import { __decorate, __param } from '@codingame/monaco-vscode-api/external/tslib/tslib.es6';
3
+ import { assertNever } from '@codingame/monaco-vscode-api/vscode/vs/base/common/assert';
4
+ import { timeout, disposableTimeout, RunOnceScheduler } from '@codingame/monaco-vscode-api/vscode/vs/base/common/async';
5
+ import { CancellationTokenSource } from '@codingame/monaco-vscode-api/vscode/vs/base/common/cancellation';
6
+ import { Codicon } from '@codingame/monaco-vscode-api/vscode/vs/base/common/codicons';
7
+ import { Disposable, DisposableStore, toDisposable } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
8
+ import '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/index';
9
+ import { basename } from '@codingame/monaco-vscode-api/vscode/vs/base/common/resources';
10
+ import { ThemeIcon } from '@codingame/monaco-vscode-api/vscode/vs/base/common/themables';
11
+ import { ICodeEditorService } from '@codingame/monaco-vscode-api/vscode/vs/editor/browser/services/codeEditorService.service';
12
+ import { ILanguageService } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/languages/language.service';
13
+ import { getIconClasses } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/services/getIconClasses';
14
+ import { IModelService } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/services/model.service';
15
+ import { localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
16
+ import { IFileService } from '@codingame/monaco-vscode-api/vscode/vs/platform/files/common/files.service';
17
+ import { IInstantiationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation';
18
+ import { ILabelService } from '@codingame/monaco-vscode-api/vscode/vs/platform/label/common/label.service';
19
+ import { IQuickInputService } from '@codingame/monaco-vscode-api/vscode/vs/platform/quickinput/common/quickInput.service';
20
+ import { TerminalCapability } from '@codingame/monaco-vscode-api/vscode/vs/platform/terminal/common/capabilities/capabilities';
21
+ import { TerminalLocation } from '@codingame/monaco-vscode-api/vscode/vs/platform/terminal/common/terminal';
22
+ import { IWorkspaceContextService } from '@codingame/monaco-vscode-api/vscode/vs/platform/workspace/common/workspace.service';
23
+ import { IEditorService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorService.service';
24
+ import { QueryBuilder } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/search/common/queryBuilder';
25
+ import { ISearchService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/search/common/search.service';
26
+ import { ITerminalService, ITerminalGroupService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/terminal/browser/terminal.service';
27
+ import { observableValue } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/observables/observableValue';
28
+ import { autorun } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/reactions/autorun';
29
+ import { observableSignalFromEvent } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/observables/observableSignalFromEvent';
30
+ import { derived } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/observables/derived';
31
+ import { ObservablePromise } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/utils/promise';
32
+
33
+ const SHELL_INTEGRATION_TIMEOUT = 5000;
34
+ const NO_SHELL_INTEGRATION_IDLE = 1000;
35
+ const SUGGEST_DEBOUNCE = 200;
36
+ let McpPromptArgumentPick = class McpPromptArgumentPick extends Disposable {
37
+ constructor(prompt, _quickInputService, _terminalService, _searchService, _workspaceContextService, _labelService, _fileService, _modelService, _languageService, _terminalGroupService, _instantiationService, _codeEditorService, _editorService) {
38
+ super();
39
+ this.prompt = prompt;
40
+ this._quickInputService = _quickInputService;
41
+ this._terminalService = _terminalService;
42
+ this._searchService = _searchService;
43
+ this._workspaceContextService = _workspaceContextService;
44
+ this._labelService = _labelService;
45
+ this._fileService = _fileService;
46
+ this._modelService = _modelService;
47
+ this._languageService = _languageService;
48
+ this._terminalGroupService = _terminalGroupService;
49
+ this._instantiationService = _instantiationService;
50
+ this._codeEditorService = _codeEditorService;
51
+ this._editorService = _editorService;
52
+ this.quickPick = this._register(_quickInputService.createQuickPick({ useSeparators: true }));
53
+ }
54
+ async createArgs(token) {
55
+ const { quickPick, prompt } = this;
56
+ quickPick.totalSteps = prompt.arguments.length;
57
+ quickPick.step = 0;
58
+ quickPick.ignoreFocusOut = true;
59
+ quickPick.sortByLabel = false;
60
+ const args = {};
61
+ const backSnapshots = [];
62
+ for (let i = 0; i < prompt.arguments.length; i++) {
63
+ const arg = prompt.arguments[i];
64
+ const restore = backSnapshots.at(i);
65
+ quickPick.step = i + 1;
66
+ quickPick.placeholder = arg.required ? arg.description : `${arg.description || ''} (${( localize(8849, 'Optional'))})`;
67
+ quickPick.title = ( localize(8850, 'Value for: {0}', arg.title || arg.name));
68
+ quickPick.value = restore?.value ?? ((args.hasOwnProperty(arg.name) && args[arg.name]) || '');
69
+ quickPick.items = restore?.items ?? [];
70
+ quickPick.activeItems = restore?.activeItems ?? [];
71
+ quickPick.buttons = i > 0 ? [this._quickInputService.backButton] : [];
72
+ const value = await this._getArg(arg, !!restore, args, token);
73
+ if (value.type === 'back') {
74
+ i -= 2;
75
+ }
76
+ else if (value.type === 'cancel') {
77
+ return undefined;
78
+ }
79
+ else if (value.type === 'arg') {
80
+ backSnapshots[i] = { value: quickPick.value, items: quickPick.items.slice(), activeItems: quickPick.activeItems.slice() };
81
+ args[arg.name] = value.value;
82
+ }
83
+ else {
84
+ assertNever();
85
+ }
86
+ }
87
+ quickPick.value = '';
88
+ quickPick.placeholder = ( localize(8851, 'Loading...'));
89
+ quickPick.busy = true;
90
+ return args;
91
+ }
92
+ async _getArg(arg, didRestoreState, argsSoFar, token) {
93
+ const { quickPick } = this;
94
+ const store = ( new DisposableStore());
95
+ const input$ = observableValue(this, quickPick.value);
96
+ const asyncPicks = [
97
+ {
98
+ name: ( localize(8852, 'Suggestions')),
99
+ observer: this._promptCompletions(arg, input$, argsSoFar),
100
+ },
101
+ {
102
+ name: ( localize(8853, 'Active File')),
103
+ observer: this._activeFileCompletions(),
104
+ },
105
+ {
106
+ name: ( localize(8854, 'Files')),
107
+ observer: this._fileCompletions(input$),
108
+ }
109
+ ];
110
+ store.add(autorun(reader => {
111
+ if (didRestoreState) {
112
+ input$.read(reader);
113
+ return;
114
+ }
115
+ let items = [];
116
+ items.push({ id: 'insert-text', label: ( localize(8855, 'Insert as text')), iconClass: ThemeIcon.asClassName(Codicon.textSize), action: 'text', alwaysShow: true });
117
+ items.push({ id: 'run-command', label: ( localize(8856, 'Run as Command')), description: ( localize(8857, 'Inserts the command output as the prompt argument')), iconClass: ThemeIcon.asClassName(Codicon.terminal), action: 'command', alwaysShow: true });
118
+ let busy = false;
119
+ for (const pick of asyncPicks) {
120
+ const state = pick.observer.read(reader);
121
+ busy ||= state.busy;
122
+ if (state.picks) {
123
+ items.push({ label: pick.name, type: 'separator' });
124
+ items = items.concat(state.picks);
125
+ }
126
+ }
127
+ const previouslyActive = quickPick.activeItems;
128
+ quickPick.busy = busy;
129
+ quickPick.items = items;
130
+ const lastActive = items.find(i => ( previouslyActive.some(a => a.id === i.id)));
131
+ const serverSuggestions = asyncPicks[0].observer;
132
+ if (lastActive) {
133
+ quickPick.activeItems = [lastActive];
134
+ }
135
+ else if (serverSuggestions.read(reader).picks?.length) {
136
+ quickPick.activeItems = [items[3]];
137
+ }
138
+ else if (busy) {
139
+ quickPick.activeItems = [];
140
+ }
141
+ else {
142
+ quickPick.activeItems = [items[0]];
143
+ }
144
+ }));
145
+ try {
146
+ const value = await ( new Promise(resolve => {
147
+ if (token) {
148
+ store.add(token.onCancellationRequested(() => {
149
+ resolve(undefined);
150
+ }));
151
+ }
152
+ store.add(quickPick.onDidChangeValue(value => {
153
+ quickPick.validationMessage = undefined;
154
+ input$.set(value, undefined);
155
+ }));
156
+ store.add(quickPick.onDidAccept(() => {
157
+ const item = quickPick.selectedItems[0];
158
+ if (!quickPick.value && arg.required && (!item || item.action === 'text' || item.action === 'command')) {
159
+ quickPick.validationMessage = ( localize(8858, "This argument is required"));
160
+ }
161
+ else if (!item) {
162
+ resolve({ id: 'insert-text', label: '', action: 'text' });
163
+ }
164
+ else {
165
+ resolve(item);
166
+ }
167
+ }));
168
+ store.add(quickPick.onDidTriggerButton(() => {
169
+ resolve('back');
170
+ }));
171
+ store.add(quickPick.onDidHide(() => {
172
+ resolve(undefined);
173
+ }));
174
+ quickPick.show();
175
+ }));
176
+ if (value === 'back') {
177
+ return { type: 'back' };
178
+ }
179
+ if (value === undefined) {
180
+ return { type: 'cancel' };
181
+ }
182
+ store.clear();
183
+ const cts = ( new CancellationTokenSource());
184
+ store.add(toDisposable(() => cts.dispose(true)));
185
+ store.add(quickPick.onDidHide(() => store.dispose()));
186
+ switch (value.action) {
187
+ case 'text':
188
+ return { type: 'arg', value: quickPick.value || undefined };
189
+ case 'command':
190
+ if (!quickPick.value) {
191
+ return { type: 'arg', value: undefined };
192
+ }
193
+ quickPick.busy = true;
194
+ return { type: 'arg', value: await this._getTerminalOutput(quickPick.value, cts.token) };
195
+ case 'suggest':
196
+ return { type: 'arg', value: value.label };
197
+ case 'file':
198
+ quickPick.busy = true;
199
+ return { type: 'arg', value: await this._fileService.readFile(value.uri).then(c => ( c.value.toString())) };
200
+ case 'selectedText':
201
+ return { type: 'arg', value: value.selectedText };
202
+ default:
203
+ assertNever(value);
204
+ }
205
+ }
206
+ finally {
207
+ store.dispose();
208
+ }
209
+ }
210
+ _promptCompletions(arg, input, argsSoFar) {
211
+ const alreadyResolved = {};
212
+ for (const [key, value] of Object.entries(argsSoFar)) {
213
+ if (value) {
214
+ alreadyResolved[key] = value;
215
+ }
216
+ }
217
+ return this._asyncCompletions(input, async (i, t) => {
218
+ const items = await this.prompt.complete(arg.name, i, alreadyResolved, t);
219
+ return ( items.map((i) => ({ id: `suggest:${i}`, label: i, action: 'suggest' })));
220
+ });
221
+ }
222
+ _fileCompletions(input) {
223
+ const qb = this._instantiationService.createInstance(QueryBuilder);
224
+ return this._asyncCompletions(input, async (i, token) => {
225
+ if (!i) {
226
+ return [];
227
+ }
228
+ const query = qb.file(this._workspaceContextService.getWorkspace().folders, {
229
+ filePattern: i,
230
+ maxResults: 10,
231
+ });
232
+ const { results } = await this._searchService.fileSearch(query, token);
233
+ return ( results.map((i) => ({
234
+ id: ( i.resource.toString()),
235
+ label: basename(i.resource),
236
+ description: this._labelService.getUriLabel(i.resource),
237
+ iconClasses: getIconClasses(this._modelService, this._languageService, i.resource),
238
+ uri: i.resource,
239
+ action: 'file',
240
+ })));
241
+ });
242
+ }
243
+ _activeFileCompletions() {
244
+ const activeEditorChange = observableSignalFromEvent(this, this._editorService.onDidActiveEditorChange);
245
+ const activeEditor = derived(reader => {
246
+ activeEditorChange.read(reader);
247
+ return this._codeEditorService.getActiveCodeEditor();
248
+ });
249
+ const resourceObs = ( ( activeEditor
250
+ .map(e => e ? ( observableSignalFromEvent(this, e.onDidChangeModel).map(() => e.getModel()?.uri)) : undefined))
251
+ .map((o, reader) => o?.read(reader)));
252
+ const selectionObs = ( ( activeEditor
253
+ .map(e => e ? ( observableSignalFromEvent(this, e.onDidChangeCursorSelection).map(() => ({ range: e.getSelection(), model: e.getModel() }))) : undefined))
254
+ .map((o, reader) => o?.read(reader)));
255
+ return derived(reader => {
256
+ const resource = resourceObs.read(reader);
257
+ if (!resource) {
258
+ return { busy: false, picks: [] };
259
+ }
260
+ const items = [];
261
+ items.push({
262
+ id: 'active-file',
263
+ label: ( localize(8859, 'Active File')),
264
+ description: this._labelService.getUriLabel(resource),
265
+ iconClasses: getIconClasses(this._modelService, this._languageService, resource),
266
+ uri: resource,
267
+ action: 'file',
268
+ });
269
+ const selection = selectionObs.read(reader);
270
+ if (selection && selection.model && selection.range && !selection.range.isEmpty()) {
271
+ const selectedText = selection.model.getValueInRange(selection.range);
272
+ const lineCount = selection.range.endLineNumber - selection.range.startLineNumber + 1;
273
+ const description = lineCount === 1
274
+ ? ( localize(8860, 'line {0}', selection.range.startLineNumber))
275
+ : ( localize(8861, '{0} lines', lineCount));
276
+ items.push({
277
+ id: 'selected-text',
278
+ label: ( localize(8862, 'Selected Text')),
279
+ description,
280
+ selectedText,
281
+ iconClass: ThemeIcon.asClassName(Codicon.selection),
282
+ uri: resource,
283
+ action: 'selectedText',
284
+ });
285
+ }
286
+ return { picks: items, busy: false };
287
+ });
288
+ }
289
+ _asyncCompletions(input, mapper) {
290
+ const promise = derived(reader => {
291
+ const queryValue = input.read(reader);
292
+ const cts = ( new CancellationTokenSource());
293
+ reader.store.add(toDisposable(() => cts.dispose(true)));
294
+ return ( new ObservablePromise(timeout(SUGGEST_DEBOUNCE, cts.token)
295
+ .then(() => mapper(queryValue, cts.token))
296
+ .catch(() => [])));
297
+ });
298
+ return ( promise.map((value, reader) => {
299
+ const result = value.promiseResult.read(reader);
300
+ return { picks: result?.data || [], busy: result === undefined };
301
+ }));
302
+ }
303
+ async _getTerminalOutput(command, token) {
304
+ const terminal = (this._terminal ??= this._register(await this._terminalService.createTerminal({
305
+ config: {
306
+ name: ( localize(8863, "MCP Terminal")),
307
+ isTransient: true,
308
+ forceShellIntegration: true,
309
+ isFeatureTerminal: true,
310
+ },
311
+ location: TerminalLocation.Panel,
312
+ })));
313
+ this._terminalService.setActiveInstance(terminal);
314
+ this._terminalGroupService.showPanel(false);
315
+ const shellIntegration = terminal.capabilities.get(TerminalCapability.CommandDetection);
316
+ if (shellIntegration) {
317
+ return this._getTerminalOutputInner(terminal, command, shellIntegration, token);
318
+ }
319
+ const store = ( new DisposableStore());
320
+ return await ( new Promise(resolve => {
321
+ store.add(terminal.capabilities.onDidAddCapability(e => {
322
+ if (e.id === TerminalCapability.CommandDetection) {
323
+ store.dispose();
324
+ resolve(this._getTerminalOutputInner(terminal, command, e.capability, token));
325
+ }
326
+ }));
327
+ store.add(token.onCancellationRequested(() => {
328
+ store.dispose();
329
+ resolve(undefined);
330
+ }));
331
+ store.add(disposableTimeout(() => {
332
+ store.dispose();
333
+ resolve(this._getTerminalOutputInner(terminal, command, undefined, token));
334
+ }, SHELL_INTEGRATION_TIMEOUT));
335
+ }));
336
+ }
337
+ async _getTerminalOutputInner(terminal, command, shellIntegration, token) {
338
+ const store = ( new DisposableStore());
339
+ return ( new Promise(resolve => {
340
+ let allData = '';
341
+ store.add(terminal.onLineData(d => allData += d + '\n'));
342
+ if (shellIntegration) {
343
+ store.add(shellIntegration.onCommandFinished(e => resolve(e.getOutput() || allData)));
344
+ }
345
+ else {
346
+ const done = store.add(( new RunOnceScheduler(() => resolve(allData), NO_SHELL_INTEGRATION_IDLE)));
347
+ store.add(terminal.onData(() => done.schedule()));
348
+ }
349
+ store.add(token.onCancellationRequested(() => resolve(undefined)));
350
+ store.add(terminal.onDisposed(() => resolve(undefined)));
351
+ terminal.runCommand(command, true);
352
+ })).finally(() => {
353
+ store.dispose();
354
+ });
355
+ }
356
+ };
357
+ McpPromptArgumentPick = ( __decorate([
358
+ ( __param(1, IQuickInputService)),
359
+ ( __param(2, ITerminalService)),
360
+ ( __param(3, ISearchService)),
361
+ ( __param(4, IWorkspaceContextService)),
362
+ ( __param(5, ILabelService)),
363
+ ( __param(6, IFileService)),
364
+ ( __param(7, IModelService)),
365
+ ( __param(8, ILanguageService)),
366
+ ( __param(9, ITerminalGroupService)),
367
+ ( __param(10, IInstantiationService)),
368
+ ( __param(11, ICodeEditorService)),
369
+ ( __param(12, IEditorService))
370
+ ], McpPromptArgumentPick));
371
+
372
+ export { McpPromptArgumentPick };
@@ -0,0 +1,4 @@
1
+ import { INotebookOutputVariableEntry } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatVariableEntries";
2
+ import { ICellOutputViewModel, INotebookEditor } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/notebook/browser/notebookBrowser";
3
+ export declare const NOTEBOOK_CELL_OUTPUT_MIME_TYPE_LIST_FOR_CHAT_CONST: string[];
4
+ export declare function createNotebookOutputVariableEntry(outputViewModel: ICellOutputViewModel, mimeType: string, notebookEditor: INotebookEditor): INotebookOutputVariableEntry | undefined;
@@ -0,0 +1,58 @@
1
+
2
+ import { normalizeDriveLetter } from '@codingame/monaco-vscode-api/vscode/vs/base/common/labels';
3
+ import { basenameOrAuthority } from '@codingame/monaco-vscode-api/vscode/vs/base/common/resources';
4
+ import { ThemeIcon } from '@codingame/monaco-vscode-api/vscode/vs/base/common/themables';
5
+ import { localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
6
+ import { CellUri } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/notebook/common/notebookCommon';
7
+
8
+ const NOTEBOOK_CELL_OUTPUT_MIME_TYPE_LIST_FOR_CHAT_CONST = [
9
+ 'text/plain',
10
+ 'text/html',
11
+ 'application/vnd.code.notebook.error',
12
+ 'application/vnd.code.notebook.stdout',
13
+ 'application/x.notebook.stdout',
14
+ 'application/x.notebook.stream',
15
+ 'application/vnd.code.notebook.stderr',
16
+ 'application/x.notebook.stderr',
17
+ 'image/png',
18
+ 'image/jpeg',
19
+ 'image/svg',
20
+ ];
21
+ function createNotebookOutputVariableEntry(outputViewModel, mimeType, notebookEditor) {
22
+ const cellFromViewModelHandle = outputViewModel.cellViewModel.handle;
23
+ const notebookModel = notebookEditor.textModel;
24
+ const cell = notebookEditor.getCellByHandle(cellFromViewModelHandle);
25
+ if (!cell || cell.outputsViewModels.length === 0 || !notebookModel) {
26
+ return;
27
+ }
28
+ const notebookUri = notebookModel.uri;
29
+ const cellUri = cell.uri;
30
+ const cellIndex = notebookModel.cells.indexOf(cell.model);
31
+ const outputId = outputViewModel?.model.outputId;
32
+ let outputIndex = 0;
33
+ if (outputId !== undefined) {
34
+ outputIndex = cell.outputsViewModels.findIndex(output => {
35
+ return output.model.outputId === outputId;
36
+ });
37
+ }
38
+ const outputCellUri = CellUri.generateCellOutputUriWithIndex(notebookUri, cellUri, outputIndex);
39
+ const fileName = normalizeDriveLetter(basenameOrAuthority(notebookUri));
40
+ const l = {
41
+ value: outputCellUri,
42
+ id: ( outputCellUri.toString()),
43
+ name: ( localize(
44
+ 9228,
45
+ "{0} • Cell {1} • Output {2}",
46
+ fileName,
47
+ `${cellIndex + 1}`,
48
+ `${outputIndex + 1}`
49
+ )),
50
+ icon: mimeType === 'application/vnd.code.notebook.error' ? ThemeIcon.fromId('error') : undefined,
51
+ kind: 'notebookOutput',
52
+ outputIndex,
53
+ mimeType
54
+ };
55
+ return l;
56
+ }
57
+
58
+ export { NOTEBOOK_CELL_OUTPUT_MIME_TYPE_LIST_FOR_CHAT_CONST, createNotebookOutputVariableEntry };
@@ -0,0 +1,26 @@
1
+ import { ResourceEdit } from "@codingame/monaco-vscode-api/vscode/vs/editor/browser/services/bulkEditService";
2
+ import { IBulkEditService } from "@codingame/monaco-vscode-api/vscode/vs/editor/browser/services/bulkEditService.service";
3
+ import { IPosition } from "@codingame/monaco-vscode-api/vscode/vs/editor/common/core/position";
4
+ import { ILanguageService } from "@codingame/monaco-vscode-api/vscode/vs/editor/common/languages/language.service";
5
+ import { INotebookActionContext, INotebookCellActionContext } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/notebook/browser/controller/coreActions";
6
+ import { IActiveNotebookEditor, ICellViewModel } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/notebook/browser/notebookBrowser";
7
+ import { CellViewModel, NotebookViewModel } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/notebook/browser/viewModel/notebookViewModelImpl";
8
+ import { CellKind, IOutputDto, NotebookCellMetadata } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/notebook/common/notebookCommon";
9
+ import { ICellRange } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/notebook/common/notebookRange";
10
+ import { INotificationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/notification/common/notification.service";
11
+ import { INotebookKernelHistoryService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/notebook/common/notebookKernelService.service";
12
+ export declare function changeCellToKind(kind: CellKind, context: INotebookActionContext, language?: string, mime?: string): Promise<void>;
13
+ export declare function runDeleteAction(editor: IActiveNotebookEditor, cell: ICellViewModel): void;
14
+ export declare function moveCellRange(context: INotebookActionContext, direction: "up" | "down"): Promise<void>;
15
+ export declare function copyCellRange(context: INotebookCellActionContext, direction: "up" | "down"): Promise<void>;
16
+ export declare function joinSelectedCells(bulkEditService: IBulkEditService, notificationService: INotificationService, context: INotebookCellActionContext): Promise<void>;
17
+ export declare function joinNotebookCells(editor: IActiveNotebookEditor, range: ICellRange, direction: "above" | "below", constraint?: CellKind): Promise<{
18
+ edits: ResourceEdit[];
19
+ cell: ICellViewModel;
20
+ endFocus: ICellRange;
21
+ endSelections: ICellRange[];
22
+ } | null>;
23
+ export declare function joinCellsWithSurrounds(bulkEditService: IBulkEditService, context: INotebookCellActionContext, direction: "above" | "below"): Promise<void>;
24
+ export declare function computeCellLinesContents(cell: ICellViewModel, splitPoints: IPosition[]): string[] | null;
25
+ export declare function insertCell(languageService: ILanguageService, editor: IActiveNotebookEditor, index: number, type: CellKind, direction?: "above" | "below", initialText?: string, ui?: boolean, kernelHistoryService?: INotebookKernelHistoryService): CellViewModel | null;
26
+ export declare function insertCellAtIndex(viewModel: NotebookViewModel, index: number, source: string, language: string, type: CellKind, metadata: NotebookCellMetadata | undefined, outputs: IOutputDto[], synchronous: boolean, pushUndoStop: boolean): CellViewModel;