@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,279 @@
1
+
2
+ import { __decorate, __param } from '@codingame/monaco-vscode-api/external/tslib/tslib.es6';
3
+ import { addDisposableListener, Dimension } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/dom';
4
+ import { status } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/ui/aria/aria';
5
+ import { toDisposable, MutableDisposable } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
6
+ import '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/index';
7
+ import { isEqual } from '@codingame/monaco-vscode-api/vscode/vs/base/common/resources';
8
+ import { assertType } from '@codingame/monaco-vscode-api/vscode/vs/base/common/types';
9
+ import { StableEditorBottomScrollState } from '@codingame/monaco-vscode-api/vscode/vs/editor/browser/stableEditorScroll';
10
+ import { EditorOption } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/config/editorOptions';
11
+ import { ScrollType } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/editorCommon';
12
+ import { ZoneWidget } from '@codingame/monaco-vscode-api/vscode/vs/editor/contrib/zoneWidget/browser/zoneWidget';
13
+ import { localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
14
+ import { IContextKeyService } from '@codingame/monaco-vscode-api/vscode/vs/platform/contextkey/common/contextkey.service';
15
+ import { IInstantiationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation';
16
+ import { ILogService } from '@codingame/monaco-vscode-api/vscode/vs/platform/log/common/log.service';
17
+ import { ChatMode } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatModes';
18
+ import { isResponseVM } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatViewModel';
19
+ import { CTX_INLINE_CHAT_OUTER_CURSOR_POSITION, MENU_INLINE_CHAT_SIDE, MENU_INLINE_CHAT_WIDGET_SECONDARY, ACTION_REGENERATE_RESPONSE, ACTION_TOGGLE_DIFF, ACTION_REPORT_ISSUE, MENU_INLINE_CHAT_WIDGET_STATUS } from '../common/inlineChat.js';
20
+ import { EditorBasedInlineChatWidget } from './inlineChatWidget.js';
21
+ import { autorun } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/reactions/autorun';
22
+
23
+ var InlineChatZoneWidget_1;
24
+ let InlineChatZoneWidget = class InlineChatZoneWidget extends ZoneWidget {
25
+ static { InlineChatZoneWidget_1 = this; }
26
+ static { this._options = {
27
+ showFrame: true,
28
+ frameWidth: 1,
29
+ isResizeable: true,
30
+ showArrow: false,
31
+ isAccessible: true,
32
+ className: 'inline-chat-widget',
33
+ keepEditorSelection: true,
34
+ showInHiddenAreas: true,
35
+ ordinal: 50000,
36
+ }; }
37
+ constructor(location, options, editors,
38
+ clearDelegate, _instaService, _logService, contextKeyService) {
39
+ super(editors.editor, InlineChatZoneWidget_1._options);
40
+ this._instaService = _instaService;
41
+ this._logService = _logService;
42
+ this._scrollUp = this._disposables.add(( new ScrollUpState(this.editor)));
43
+ this.notebookEditor = editors.notebookEditor;
44
+ this._ctxCursorPosition = CTX_INLINE_CHAT_OUTER_CURSOR_POSITION.bindTo(contextKeyService);
45
+ this._disposables.add(toDisposable(() => {
46
+ this._ctxCursorPosition.reset();
47
+ }));
48
+ this.widget = this._instaService.createInstance(EditorBasedInlineChatWidget, location, this.editor, {
49
+ statusMenuId: {
50
+ menu: MENU_INLINE_CHAT_WIDGET_STATUS,
51
+ options: {
52
+ buttonConfigProvider: (action, index) => {
53
+ const isSecondary = index > 0;
54
+ if (( ( new Set([ACTION_REGENERATE_RESPONSE, ACTION_TOGGLE_DIFF, ACTION_REPORT_ISSUE])).has(action.id))) {
55
+ return { isSecondary, showIcon: true, showLabel: false };
56
+ }
57
+ else {
58
+ return { isSecondary };
59
+ }
60
+ }
61
+ }
62
+ },
63
+ secondaryMenuId: MENU_INLINE_CHAT_WIDGET_SECONDARY,
64
+ inZoneWidget: true,
65
+ chatWidgetViewOptions: {
66
+ menus: {
67
+ telemetrySource: 'interactiveEditorWidget-toolbar',
68
+ inputSideToolbar: MENU_INLINE_CHAT_SIDE
69
+ },
70
+ clear: clearDelegate,
71
+ ...options,
72
+ rendererOptions: {
73
+ renderTextEditsAsSummary: (uri) => {
74
+ return isEqual(uri, editors.editor.getModel()?.uri);
75
+ },
76
+ renderDetectedCommandsWithRequest: true,
77
+ ...options?.rendererOptions
78
+ },
79
+ defaultMode: ChatMode.Ask
80
+ }
81
+ });
82
+ this._disposables.add(this.widget);
83
+ let revealFn;
84
+ this._disposables.add(this.widget.chatWidget.onWillMaybeChangeHeight(() => {
85
+ if (this.position) {
86
+ revealFn = this._createZoneAndScrollRestoreFn(this.position);
87
+ }
88
+ }));
89
+ this._disposables.add(this.widget.onDidChangeHeight(() => {
90
+ if (this.position && !this._usesResizeHeight) {
91
+ revealFn ??= this._createZoneAndScrollRestoreFn(this.position);
92
+ const height = this._computeHeight();
93
+ this._relayout(height.linesValue);
94
+ revealFn?.();
95
+ revealFn = undefined;
96
+ }
97
+ }));
98
+ this.create();
99
+ this._disposables.add(autorun(r => {
100
+ const isBusy = this.widget.requestInProgress.read(r);
101
+ this.domNode.firstElementChild?.classList.toggle('busy', isBusy);
102
+ }));
103
+ this._disposables.add(addDisposableListener(this.domNode, 'click', e => {
104
+ if (!this.editor.hasWidgetFocus() && !this.widget.hasFocus()) {
105
+ this.editor.focus();
106
+ }
107
+ }, true));
108
+ const updateCursorIsAboveContextKey = () => {
109
+ if (!this.position || !this.editor.hasModel()) {
110
+ this._ctxCursorPosition.reset();
111
+ }
112
+ else if (this.position.lineNumber === this.editor.getPosition().lineNumber) {
113
+ this._ctxCursorPosition.set('above');
114
+ }
115
+ else if (this.position.lineNumber + 1 === this.editor.getPosition().lineNumber) {
116
+ this._ctxCursorPosition.set('below');
117
+ }
118
+ else {
119
+ this._ctxCursorPosition.reset();
120
+ }
121
+ };
122
+ this._disposables.add(this.editor.onDidChangeCursorPosition(e => updateCursorIsAboveContextKey()));
123
+ this._disposables.add(this.editor.onDidFocusEditorText(e => updateCursorIsAboveContextKey()));
124
+ updateCursorIsAboveContextKey();
125
+ }
126
+ _fillContainer(container) {
127
+ container.style.setProperty('--vscode-inlineChat-background', 'var(--vscode-editor-background)');
128
+ container.appendChild(this.widget.domNode);
129
+ }
130
+ _doLayout(heightInPixel) {
131
+ this._updatePadding();
132
+ const info = this.editor.getLayoutInfo();
133
+ const width = info.contentWidth - info.verticalScrollbarWidth;
134
+ this._dimension = ( new Dimension(width, heightInPixel));
135
+ this.widget.layout(this._dimension);
136
+ }
137
+ _computeHeight() {
138
+ const chatContentHeight = this.widget.contentHeight;
139
+ const editorHeight = this.notebookEditor?.getLayoutInfo().height ?? this.editor.getLayoutInfo().height;
140
+ const contentHeight = this._decoratingElementsHeight() + Math.min(chatContentHeight, Math.max(this.widget.minHeight, editorHeight * 0.42));
141
+ const heightInLines = contentHeight / this.editor.getOption(EditorOption.lineHeight);
142
+ return { linesValue: heightInLines, pixelsValue: contentHeight };
143
+ }
144
+ _getResizeBounds() {
145
+ const lineHeight = this.editor.getOption(EditorOption.lineHeight);
146
+ const decoHeight = this._decoratingElementsHeight();
147
+ const minHeightPx = decoHeight + this.widget.minHeight;
148
+ const maxHeightPx = decoHeight + this.widget.contentHeight;
149
+ return {
150
+ minLines: minHeightPx / lineHeight,
151
+ maxLines: maxHeightPx / lineHeight
152
+ };
153
+ }
154
+ _onWidth(_widthInPixel) {
155
+ if (this._dimension) {
156
+ this._doLayout(this._dimension.height);
157
+ }
158
+ }
159
+ show(position) {
160
+ assertType(this.container);
161
+ this._updatePadding();
162
+ const revealZone = this._createZoneAndScrollRestoreFn(position);
163
+ super.show(position, this._computeHeight().linesValue);
164
+ this.widget.chatWidget.setVisible(true);
165
+ this.widget.focus();
166
+ revealZone();
167
+ this._scrollUp.enable();
168
+ }
169
+ _updatePadding() {
170
+ assertType(this.container);
171
+ const info = this.editor.getLayoutInfo();
172
+ const marginWithoutIndentation = info.glyphMarginWidth + info.lineNumbersWidth + info.decorationsWidth;
173
+ this.container.style.paddingLeft = `${marginWithoutIndentation}px`;
174
+ }
175
+ reveal(position) {
176
+ const stickyScroll = this.editor.getOption(EditorOption.stickyScroll);
177
+ const magicValue = stickyScroll.enabled ? stickyScroll.maxLineCount : 0;
178
+ this.editor.revealLines(position.lineNumber + magicValue, position.lineNumber + magicValue, ScrollType.Immediate);
179
+ this._scrollUp.reset();
180
+ this.updatePositionAndHeight(position);
181
+ }
182
+ updatePositionAndHeight(position) {
183
+ const revealZone = this._createZoneAndScrollRestoreFn(position);
184
+ super.updatePositionAndHeight(position, !this._usesResizeHeight ? this._computeHeight().linesValue : undefined);
185
+ revealZone();
186
+ }
187
+ _createZoneAndScrollRestoreFn(position) {
188
+ const scrollState = StableEditorBottomScrollState.capture(this.editor);
189
+ const lineNumber = position.lineNumber <= 1 ? 1 : 1 + position.lineNumber;
190
+ const scrollTop = this.editor.getScrollTop();
191
+ const lineTop = this.editor.getTopForLineNumber(lineNumber);
192
+ const zoneTop = lineTop - this._computeHeight().pixelsValue;
193
+ const hasResponse = this.widget.chatWidget.viewModel?.getItems().find(candidate => {
194
+ return isResponseVM(candidate) && candidate.response.value.length > 0;
195
+ });
196
+ if (hasResponse && zoneTop < scrollTop || this._scrollUp.didScrollUpOrDown) {
197
+ return this._scrollUp.runIgnored(() => {
198
+ scrollState.restore(this.editor);
199
+ });
200
+ }
201
+ return this._scrollUp.runIgnored(() => {
202
+ scrollState.restore(this.editor);
203
+ const scrollTop = this.editor.getScrollTop();
204
+ const lineTop = this.editor.getTopForLineNumber(lineNumber);
205
+ const zoneTop = lineTop - this._computeHeight().pixelsValue;
206
+ const editorHeight = this.editor.getLayoutInfo().height;
207
+ const lineBottom = this.editor.getBottomForLineNumber(lineNumber);
208
+ let newScrollTop = zoneTop;
209
+ let forceScrollTop = false;
210
+ if (lineBottom >= (scrollTop + editorHeight)) {
211
+ newScrollTop = lineBottom - editorHeight;
212
+ forceScrollTop = true;
213
+ }
214
+ if (newScrollTop < scrollTop || forceScrollTop) {
215
+ this._logService.trace('[IE] REVEAL zone', { zoneTop, lineTop, lineBottom, scrollTop, newScrollTop, forceScrollTop });
216
+ this.editor.setScrollTop(newScrollTop, ScrollType.Immediate);
217
+ }
218
+ });
219
+ }
220
+ revealRange(range, isLastLine) {
221
+ }
222
+ hide() {
223
+ const scrollState = StableEditorBottomScrollState.capture(this.editor);
224
+ this._scrollUp.disable();
225
+ this._ctxCursorPosition.reset();
226
+ this.widget.chatWidget.setVisible(false);
227
+ super.hide();
228
+ status(( localize(8325, 'Closed inline chat widget')));
229
+ scrollState.restore(this.editor);
230
+ }
231
+ };
232
+ InlineChatZoneWidget = InlineChatZoneWidget_1 = ( __decorate([
233
+ ( __param(4, IInstantiationService)),
234
+ ( __param(5, ILogService)),
235
+ ( __param(6, IContextKeyService))
236
+ ], InlineChatZoneWidget));
237
+ class ScrollUpState {
238
+ constructor(_editor) {
239
+ this._editor = _editor;
240
+ this._ignoreEvents = false;
241
+ this._listener = ( new MutableDisposable());
242
+ }
243
+ dispose() {
244
+ this._listener.dispose();
245
+ }
246
+ reset() {
247
+ this._didScrollUpOrDown = undefined;
248
+ }
249
+ enable() {
250
+ this._didScrollUpOrDown = undefined;
251
+ this._listener.value = this._editor.onDidScrollChange(e => {
252
+ if (!e.scrollTopChanged || this._ignoreEvents) {
253
+ return;
254
+ }
255
+ this._listener.clear();
256
+ this._didScrollUpOrDown = true;
257
+ });
258
+ }
259
+ disable() {
260
+ this._listener.clear();
261
+ this._didScrollUpOrDown = undefined;
262
+ }
263
+ runIgnored(callback) {
264
+ return () => {
265
+ this._ignoreEvents = true;
266
+ try {
267
+ return callback();
268
+ }
269
+ finally {
270
+ this._ignoreEvents = false;
271
+ }
272
+ };
273
+ }
274
+ get didScrollUpOrDown() {
275
+ return this._didScrollUpOrDown;
276
+ }
277
+ }
278
+
279
+ export { InlineChatZoneWidget };
@@ -0,0 +1,411 @@
1
+ /*---------------------------------------------------------------------------------------------
2
+ * Copyright (c) Microsoft Corporation. All rights reserved.
3
+ * Licensed under the MIT License. See License.txt in the project root for license information.
4
+ *--------------------------------------------------------------------------------------------*/
5
+
6
+
7
+ .monaco-workbench .inline-chat {
8
+ color: inherit;
9
+ border-radius: 4px;
10
+ border: 1px solid var(--vscode-inlineChat-border);
11
+ box-shadow: 0 2px 4px 0 var(--vscode-widget-shadow);
12
+ background: var(--vscode-inlineChat-background);
13
+ padding-top: 3px;
14
+ position: relative;
15
+ }
16
+
17
+ .monaco-workbench .zone-widget.inline-chat-widget {
18
+ z-index: 3;
19
+ }
20
+
21
+ .monaco-workbench .zone-widget.inline-chat-widget .interactive-session {
22
+ max-width: unset;
23
+ }
24
+
25
+ .monaco-workbench .zone-widget.inline-chat-widget .interactive-session .chat-input-container {
26
+ border-color: var(--vscode-inlineChat-border);
27
+ }
28
+
29
+ .monaco-workbench .zone-widget.inline-chat-widget .interactive-session .chat-input-container:focus-within {
30
+ border-color: var(--vscode-focusBorder);
31
+ }
32
+
33
+ .monaco-workbench .zone-widget.inline-chat-widget .interactive-session .chat-input-container .interactive-input-part {
34
+ padding-top: 0px
35
+ }
36
+
37
+ .monaco-workbench .zone-widget.inline-chat-widget > .zone-widget-container {
38
+ background: var(--vscode-inlineChat-background);
39
+ }
40
+
41
+ @property --inline-chat-frame-progress {
42
+ syntax: '<percentage>';
43
+ initial-value: 0%;
44
+ inherits: false;
45
+ }
46
+
47
+ @keyframes shift {
48
+ 0% {
49
+ --inline-chat-frame-progress: 0%;
50
+ }
51
+ 50% {
52
+ --inline-chat-frame-progress: 100%;
53
+ }
54
+ 100% {
55
+ --inline-chat-frame-progress: 0%;
56
+ }
57
+ }
58
+
59
+ .monaco-workbench .zone-widget.inline-chat-widget > .zone-widget-container.busy {
60
+ --inline-chat-frame-progress: 0%;
61
+ border-image: linear-gradient(90deg, var(--vscode-editorGutter-addedBackground) var(--inline-chat-frame-progress), var(--vscode-button-background)) 1;
62
+ animation: 3s shift linear infinite;
63
+ }
64
+
65
+ .monaco-workbench .zone-widget.inline-chat-widget > .zone-widget-container > .inline-chat {
66
+ color: inherit;
67
+ border-radius: unset;
68
+ border: unset;
69
+ box-shadow: unset;
70
+ background: var(--vscode-inlineChat-background);
71
+ position: relative;
72
+ outline: none;
73
+ }
74
+
75
+ .monaco-workbench .inline-chat .chat-widget {
76
+ .checkpoint-container,
77
+ .checkpoint-restore-container {
78
+ display: none;
79
+ }
80
+ }
81
+
82
+ .monaco-workbench .inline-chat .chat-widget .interactive-session .interactive-input-part {
83
+ padding: 4px 0 0 0;
84
+ }
85
+
86
+
87
+ @keyframes pulse-opacity {
88
+ 0%, 100% {
89
+ opacity: 1;
90
+ }
91
+ 33% {
92
+ opacity: .6;
93
+ }
94
+ }
95
+
96
+ .monaco-workbench .zone-widget.inline-chat-widget.inline-chat-2 {
97
+
98
+ .inline-chat .chat-widget .interactive-session .interactive-input-part {
99
+ padding: 8px 0 0 0;
100
+ }
101
+
102
+ .interactive-session .chat-input-container {
103
+ border-color: var(--vscode-input-border, transparent);
104
+ }
105
+
106
+ .interactive-session .chat-input-container:focus-within {
107
+ border-color: var(--vscode-input-border, transparent);
108
+ }
109
+
110
+ .chat-attachments-container > .chat-input-toolbar {
111
+ margin-left: auto;
112
+ margin-right: 16px;
113
+ }
114
+
115
+ /* TODO@jrieken this isn't the nicest selector... */
116
+ .request-in-progress .monaco-editor [class^="ced-chat-session-detail"]::after {
117
+ animation: pulse-opacity 2.5s ease-in-out infinite;
118
+ }
119
+ }
120
+
121
+
122
+ .monaco-workbench .inline-chat .chat-widget .interactive-session .interactive-input-part .interactive-execute-toolbar {
123
+ margin-bottom: 1px;
124
+ }
125
+
126
+ .monaco-workbench .inline-chat .chat-widget .interactive-session .interactive-input-part .interactive-input-and-execute-toolbar {
127
+ width: 100%;
128
+ border-radius: 2px;
129
+ }
130
+
131
+
132
+ .monaco-workbench .inline-chat .chat-widget .interactive-session .interactive-input-part .interactive-input-followups .interactive-session-followups {
133
+ margin: 3px 0 0 4px;
134
+ }
135
+
136
+ .monaco-workbench .inline-chat .chat-widget .interactive-session .interactive-list .monaco-scrollable-element {
137
+ border-top-left-radius: 3px;
138
+ border-top-right-radius: 3px;
139
+ }
140
+
141
+ .monaco-workbench .inline-chat .chat-widget .interactive-session .interactive-list .monaco-scrollable-element .shadow.top {
142
+ box-shadow: none;
143
+ }
144
+
145
+ .monaco-workbench .inline-chat .chat-widget .interactive-session .interactive-list .interactive-item-container.interactive-item-compact {
146
+ gap: 8px;
147
+ padding: 3px 20px 3px 8px;
148
+ }
149
+
150
+ .monaco-workbench .inline-chat .chat-widget .interactive-session .interactive-list .interactive-item-container.interactive-item-compact .header .avatar {
151
+ outline-offset: -1px;
152
+ }
153
+
154
+ .monaco-workbench .inline-chat .chat-widget .interactive-session .interactive-list .interactive-item-container.interactive-item-compact .chat-notification-widget {
155
+ margin-bottom: 0;
156
+ padding: 0;
157
+ border: none;
158
+ }
159
+
160
+ .monaco-workbench .inline-chat .chat-widget .interactive-session .interactive-list .interactive-request {
161
+ border: none;
162
+ }
163
+
164
+ .monaco-workbench .inline-chat .chat-widget .interactive-session .interactive-list .interactive-item-container.minimal > .header {
165
+ top: 5px;
166
+ right: 10px;
167
+ display: none;
168
+ }
169
+
170
+ .monaco-workbench .inline-chat .chat-widget .interactive-session .interactive-list .interactive-item-container.minimal > .chat-footer-toolbar {
171
+ display: none;
172
+ }
173
+
174
+ .monaco-workbench .inline-chat .chat-widget .interactive-session .chat-input-toolbars {
175
+ max-width: 66%;
176
+ }
177
+
178
+ .monaco-workbench .inline-chat .chat-widget .interactive-session .chat-input-toolbars > .chat-execute-toolbar .chat-modelPicker-item {
179
+ min-width: 40px;
180
+ max-width: 132px;
181
+ }
182
+
183
+ /* status */
184
+
185
+ .monaco-workbench .inline-chat > .status {
186
+ display: flex;
187
+ align-items: center;
188
+ padding-right: 16px;
189
+ }
190
+
191
+ .monaco-workbench .inline-chat > .status {
192
+ .label,
193
+ .actions {
194
+ padding: 4px 0;
195
+ }
196
+ }
197
+
198
+ .monaco-workbench .inline-chat .status .actions.hidden {
199
+ display: none;
200
+ }
201
+
202
+ .monaco-workbench .inline-chat .status .label {
203
+ overflow: hidden;
204
+ color: var(--vscode-descriptionForeground);
205
+ font-size: 12px;
206
+ display: flex;
207
+ white-space: nowrap;
208
+ }
209
+
210
+ .monaco-workbench .inline-chat .status .label.info {
211
+ margin-right: auto;
212
+ }
213
+
214
+ .monaco-workbench .inline-chat .status .label.status {
215
+ margin-left: auto;
216
+ padding-right: 8px;
217
+ padding-left: 8px;
218
+ }
219
+
220
+ .monaco-workbench .inline-chat .status .label.hidden,
221
+ .monaco-workbench .inline-chat .status .label:empty {
222
+ display: none;
223
+ }
224
+
225
+ .monaco-workbench .inline-chat .status .label.error {
226
+ color: var(--vscode-errorForeground);
227
+ }
228
+
229
+ .monaco-workbench .inline-chat .status .label.warn {
230
+ color: var(--vscode-editorWarning-foreground);
231
+ }
232
+
233
+ .monaco-workbench .inline-chat .status .label > .codicon {
234
+ padding: 0 3px;
235
+ font-size: 12px;
236
+ line-height: 18px;
237
+ }
238
+
239
+ .monaco-workbench .inline-chat .status .rerun {
240
+ display: inline-flex;
241
+ }
242
+
243
+ .monaco-workbench .inline-chat .status .rerun:not(:empty) {
244
+ padding-top: 8px;
245
+ padding-left: 4px;
246
+ }
247
+
248
+ .monaco-workbench .inline-chat .status .rerun .agentOrSlashCommandDetected A {
249
+ cursor: pointer;
250
+ color: var(--vscode-textLink-foreground);
251
+ }
252
+
253
+ .monaco-workbench .inline-chat .interactive-item-container.interactive-response .detail-container .detail .agentOrSlashCommandDetected,
254
+ .monaco-workbench .inline-chat .interactive-item-container.interactive-response .detail-container .chat-animated-ellipsis {
255
+ display: none;
256
+ }
257
+
258
+ .monaco-workbench .inline-chat .status .actions,
259
+ .monaco-workbench .inline-chat-diff-overlay {
260
+
261
+ display: flex;
262
+ height: 18px;
263
+
264
+ .actions-container {
265
+ gap: 3px
266
+ }
267
+
268
+ .monaco-button-dropdown > .monaco-dropdown-button {
269
+ display: flex;
270
+ align-items: center;
271
+ padding: 0 4px;
272
+ }
273
+
274
+ .monaco-button.codicon {
275
+ display: flex;
276
+ }
277
+
278
+ .monaco-button.codicon::before {
279
+ align-self: center;
280
+ color: var(--vscode-button-foreground);
281
+ }
282
+
283
+ .monaco-button.secondary.codicon::before {
284
+ align-self: center;
285
+ color: var(--vscode-button-secondaryForeground);
286
+ }
287
+
288
+ .monaco-text-button {
289
+ padding: 0 6px;
290
+ font-size: 12px;
291
+ white-space: nowrap;
292
+ }
293
+ }
294
+
295
+ .monaco-workbench .inline-chat .status .actions {
296
+ gap: 4px;
297
+ }
298
+
299
+ .monaco-workbench .inline-chat .status .actions.secondary {
300
+ margin-left: auto;
301
+ display: none;
302
+ }
303
+
304
+ .monaco-workbench .inline-chat .status:hover .actions.secondary:not(.has-no-actions),
305
+ .monaco-workbench .inline-chat:focus .status .actions.secondary:not(.has-no-actions),
306
+ .monaco-workbench .inline-chat .status:focus-within .actions.secondary:not(.has-no-actions) {
307
+ display: inherit;
308
+ }
309
+
310
+ .monaco-workbench .inline-chat-diff-overlay {
311
+
312
+ .monaco-button {
313
+ border-radius: 0;
314
+ }
315
+
316
+ .monaco-button.secondary.checked {
317
+ background-color: var(--vscode-button-secondaryHoverBackground);
318
+ }
319
+
320
+ .monaco-button:first-child {
321
+ border-top-left-radius: 2px;
322
+ border-bottom-left-radius: 2px;
323
+ }
324
+
325
+ .monaco-button:last-child {
326
+ border-top-right-radius: 2px;
327
+ border-bottom-right-radius: 2px;
328
+ }
329
+
330
+ .monaco-button:not(:last-child) {
331
+ border-right: 1px solid var(--vscode-button-foreground);
332
+ }
333
+ }
334
+
335
+ .monaco-workbench .inline-chat .status .disclaimer {
336
+ a {
337
+ color: var(--vscode-textLink-foreground);
338
+ }
339
+
340
+ p {
341
+ margin: 0;
342
+ }
343
+ }
344
+
345
+ /* TODO@jrieken not needed? */
346
+ .monaco-workbench .inline-chat .status .monaco-toolbar .action-label.checked {
347
+ color: var(--vscode-inputOption-activeForeground);
348
+ background-color: var(--vscode-inputOption-activeBackground);
349
+ outline: 1px solid var(--vscode-inputOption-activeBorder);
350
+ }
351
+
352
+
353
+ .monaco-workbench .inline-chat .status .monaco-toolbar .action-item.button-item .action-label:is(:hover, :focus) {
354
+ background-color: var(--vscode-button-hoverBackground);
355
+ }
356
+
357
+ /* accessible diff viewer */
358
+
359
+ .monaco-workbench .inline-chat .diff-review {
360
+ padding: 4px 6px;
361
+ background-color: unset;
362
+ }
363
+
364
+ .monaco-workbench .inline-chat .diff-review.hidden {
365
+ display: none;
366
+ }
367
+
368
+ /* decoration styles */
369
+
370
+ .monaco-workbench .inline-chat-inserted-range {
371
+ background-color: var(--vscode-inlineChatDiff-inserted);
372
+ }
373
+
374
+ .monaco-workbench .inline-chat-inserted-range-linehighlight {
375
+ background-color: var(--vscode-diffEditor-insertedLineBackground);
376
+ }
377
+
378
+ .monaco-workbench .inline-chat-original-zone2 {
379
+ background-color: var(--vscode-diffEditor-removedLineBackground);
380
+ opacity: 0.8;
381
+ }
382
+
383
+ .monaco-workbench .inline-chat-lines-inserted-range {
384
+ background-color: var(--vscode-diffEditor-insertedTextBackground);
385
+ }
386
+
387
+ /* gutter decoration */
388
+
389
+ .monaco-workbench .glyph-margin-widgets .cgmr.codicon-inline-chat-opaque,
390
+ .monaco-workbench .glyph-margin-widgets .cgmr.codicon-inline-chat-transparent {
391
+ display: block;
392
+ cursor: pointer;
393
+ transition: opacity .2s ease-in-out;
394
+ }
395
+
396
+ .monaco-workbench .glyph-margin-widgets .cgmr.codicon-inline-chat-opaque {
397
+ opacity: 0.5;
398
+ }
399
+
400
+ .monaco-workbench .glyph-margin-widgets .cgmr.codicon-inline-chat-transparent {
401
+ opacity: 0;
402
+ }
403
+
404
+ .monaco-workbench .glyph-margin-widgets .cgmr.codicon-inline-chat-opaque:hover,
405
+ .monaco-workbench .glyph-margin-widgets .cgmr.codicon-inline-chat-transparent:hover {
406
+ opacity: 1;
407
+ }
408
+
409
+ .monaco-workbench .inline-chat .chat-attached-context {
410
+ padding: 2px 0px;
411
+ }
@@ -0,0 +1,13 @@
1
+ import { IRange } from "@codingame/monaco-vscode-api/vscode/vs/editor/common/core/range";
2
+ import { IIdentifiedSingleEditOperation, ITextModel, IValidEditOperation } from "@codingame/monaco-vscode-api/vscode/vs/editor/common/model";
3
+ import { IEditObserver } from "./inlineChatStrategies.js";
4
+ import { IProgress } from "@codingame/monaco-vscode-api/vscode/vs/platform/progress/common/progress";
5
+ import { IntervalTimer } from "@codingame/monaco-vscode-api/vscode/vs/base/common/async";
6
+ import { CancellationToken } from "@codingame/monaco-vscode-api/vscode/vs/base/common/cancellation";
7
+ import { TextModelEditSource } from "@codingame/monaco-vscode-api/vscode/vs/editor/common/textModelEditSource";
8
+ export interface AsyncTextEdit {
9
+ readonly range: IRange;
10
+ readonly newText: AsyncIterable<string>;
11
+ }
12
+ export declare function performAsyncTextEdit(model: ITextModel, edit: AsyncTextEdit, progress?: IProgress<IValidEditOperation[]>, obs?: IEditObserver, editSource?: TextModelEditSource): Promise<void>;
13
+ export declare function asProgressiveEdit(interval: IntervalTimer, edit: IIdentifiedSingleEditOperation, wordsPerSec: number, token: CancellationToken): AsyncTextEdit;