@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,286 @@
1
+
2
+ import { __decorate, __param } from '@codingame/monaco-vscode-api/external/tslib/tslib.es6';
3
+ import { $, addDisposableListener, EventHelper } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/dom';
4
+ import { Disposable, DisposableStore, toDisposable } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
5
+ import { IInstantiationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation';
6
+ import { IChatService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatService.service';
7
+ import { IEditorService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorService.service';
8
+ import { WorkbenchList } from '@codingame/monaco-vscode-api/vscode/vs/platform/list/browser/listService';
9
+ import { ButtonWithIcon } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/ui/button/button';
10
+ import { Codicon } from '@codingame/monaco-vscode-api/vscode/vs/base/common/codicons';
11
+ import { URI } from '@codingame/monaco-vscode-api/vscode/vs/base/common/uri';
12
+ import { ThemeIcon } from '@codingame/monaco-vscode-api/vscode/vs/base/common/themables';
13
+ import { ResourcePool } from './chatCollections.js';
14
+ import { ResourceLabels } from '@codingame/monaco-vscode-api/vscode/vs/workbench/browser/labels';
15
+ import { FileKind } from '@codingame/monaco-vscode-api/vscode/vs/platform/files/common/files';
16
+ import { createFileIconThemableTreeContainerScope } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/files/browser/views/explorerView';
17
+ import { IThemeService } from '@codingame/monaco-vscode-api/vscode/vs/platform/theme/common/themeService.service';
18
+ import '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/index';
19
+ import { MultiDiffEditorInput } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/multiDiffEditor/browser/multiDiffEditorInput';
20
+ import { MultiDiffEditorItem } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/multiDiffEditor/browser/multiDiffSourceResolverService';
21
+ import { IEditorGroupsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorGroupsService.service';
22
+ import { Emitter } from '@codingame/monaco-vscode-api/vscode/vs/base/common/event';
23
+ import { IHoverService } from '@codingame/monaco-vscode-api/vscode/vs/platform/hover/browser/hover.service';
24
+ import { localize2 } from '@codingame/monaco-vscode-api/vscode/vs/nls';
25
+ import { LocalChatSessionUri } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatUri';
26
+ import { derived } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/observables/derived';
27
+ import { autorun } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/reactions/autorun';
28
+
29
+ let ChatCheckpointFileChangesSummaryContentPart = class ChatCheckpointFileChangesSummaryContentPart extends Disposable {
30
+ constructor(content, context, hoverService, chatService, editorService, editorGroupsService, instantiationService) {
31
+ super();
32
+ this.hoverService = hoverService;
33
+ this.chatService = chatService;
34
+ this.editorService = editorService;
35
+ this.editorGroupsService = editorGroupsService;
36
+ this.instantiationService = instantiationService;
37
+ this.ELEMENT_HEIGHT = 22;
38
+ this.MAX_ITEMS_SHOWN = 6;
39
+ this._onDidChangeHeight = this._register(( new Emitter()));
40
+ this.onDidChangeHeight = this._onDidChangeHeight.event;
41
+ this.diffsBetweenRequests = ( new Map());
42
+ this.isCollapsed = true;
43
+ this.fileChanges = content.fileChanges;
44
+ this.fileChangesDiffsObservable = this.computeFileChangesDiffs(context, content.fileChanges);
45
+ const headerDomNode = $('.checkpoint-file-changes-summary-header');
46
+ this.domNode = $('.checkpoint-file-changes-summary', undefined, headerDomNode);
47
+ this.domNode.tabIndex = 0;
48
+ this._register(this.renderHeader(headerDomNode));
49
+ this._register(this.renderFilesList(this.domNode));
50
+ }
51
+ changeID(change) {
52
+ return `${change.sessionId}-${change.requestId}-${change.reference.path}`;
53
+ }
54
+ computeFileChangesDiffs(context, changes) {
55
+ return derived((r) => {
56
+ const fileChangesDiffs = ( new Map());
57
+ const firstRequestId = changes[0].requestId;
58
+ const lastRequestId = changes[changes.length - 1].requestId;
59
+ for (const change of changes) {
60
+ const sessionId = change.sessionId;
61
+ const session = this.chatService.getSession(LocalChatSessionUri.forSession(sessionId));
62
+ if (!session || !session.editingSession) {
63
+ continue;
64
+ }
65
+ const diff = this.getCachedEntryDiffBetweenRequests(session.editingSession, change.reference, firstRequestId, lastRequestId)?.read(r);
66
+ if (!diff) {
67
+ continue;
68
+ }
69
+ fileChangesDiffs.set(this.changeID(change), diff);
70
+ }
71
+ return fileChangesDiffs;
72
+ });
73
+ }
74
+ getCachedEntryDiffBetweenRequests(editSession, uri, startRequestId, stopRequestId) {
75
+ const key = `${uri}\0${startRequestId}\0${stopRequestId}`;
76
+ let observable = this.diffsBetweenRequests.get(key);
77
+ if (!observable) {
78
+ observable = editSession.getEntryDiffBetweenRequests(uri, startRequestId, stopRequestId);
79
+ this.diffsBetweenRequests.set(key, observable);
80
+ }
81
+ return observable;
82
+ }
83
+ renderHeader(container) {
84
+ const viewListButtonContainer = container.appendChild($('.chat-file-changes-label'));
85
+ const viewListButton = ( new ButtonWithIcon(viewListButtonContainer, {}));
86
+ viewListButton.label = this.fileChanges.length === 1 ? `Changed 1 file` : `Changed ${this.fileChanges.length} files`;
87
+ const setExpansionState = () => {
88
+ viewListButton.icon = this.isCollapsed ? Codicon.chevronRight : Codicon.chevronDown;
89
+ this.domNode.classList.toggle('chat-file-changes-collapsed', this.isCollapsed);
90
+ this._onDidChangeHeight.fire();
91
+ };
92
+ setExpansionState();
93
+ const disposables = ( new DisposableStore());
94
+ disposables.add(viewListButton);
95
+ disposables.add(viewListButton.onDidClick(() => {
96
+ this.isCollapsed = !this.isCollapsed;
97
+ setExpansionState();
98
+ }));
99
+ disposables.add(this.renderViewAllFileChangesButton(viewListButton.element));
100
+ return toDisposable(() => disposables.dispose());
101
+ }
102
+ renderViewAllFileChangesButton(container) {
103
+ const button = container.appendChild($('.chat-view-changes-icon'));
104
+ this.hoverService.setupDelayedHover(button, () => ({
105
+ content: ( localize2(5045, 'View All File Changes'))
106
+ }));
107
+ button.classList.add(...ThemeIcon.asClassNameArray(Codicon.diffMultiple));
108
+ button.setAttribute('role', 'button');
109
+ button.tabIndex = 0;
110
+ return addDisposableListener(button, 'click', (e) => {
111
+ const resources = [];
112
+ for (const fileChange of this.fileChanges) {
113
+ const diffEntry = this.fileChangesDiffsObservable.get().get(this.changeID(fileChange));
114
+ if (diffEntry) {
115
+ resources.push({
116
+ originalUri: diffEntry.originalURI,
117
+ modifiedUri: diffEntry.modifiedURI
118
+ });
119
+ }
120
+ else {
121
+ resources.push({
122
+ originalUri: fileChange.reference
123
+ });
124
+ }
125
+ }
126
+ const source = ( URI.parse(`multi-diff-editor:${( ( new Date()).getMilliseconds().toString()) + ( Math.random().toString())}`));
127
+ const input = this.instantiationService.createInstance(MultiDiffEditorInput, source, 'Checkpoint File Changes', ( resources.map(resource => {
128
+ return ( new MultiDiffEditorItem(resource.originalUri, resource.modifiedUri, undefined));
129
+ })), false);
130
+ this.editorGroupsService.activeGroup.openEditor(input);
131
+ EventHelper.stop(e, true);
132
+ });
133
+ }
134
+ renderFilesList(container) {
135
+ const store = ( new DisposableStore());
136
+ this.list = store.add(this.instantiationService.createInstance(CollapsibleChangesSummaryListPool)).get();
137
+ const listNode = this.list.getHTMLElement();
138
+ const itemsShown = Math.min(this.fileChanges.length, this.MAX_ITEMS_SHOWN);
139
+ const height = itemsShown * this.ELEMENT_HEIGHT;
140
+ this.list.layout(height);
141
+ listNode.style.height = height + 'px';
142
+ this.updateList(this.fileChanges, this.fileChangesDiffsObservable.get());
143
+ container.appendChild(listNode.parentElement);
144
+ store.add(this.list.onDidOpen((item) => {
145
+ const element = item.element;
146
+ if (!element) {
147
+ return;
148
+ }
149
+ const diff = this.fileChangesDiffsObservable.get().get(this.changeID(element));
150
+ if (diff) {
151
+ const input = {
152
+ original: { resource: diff.originalURI },
153
+ modified: { resource: diff.modifiedURI },
154
+ options: { preserveFocus: true }
155
+ };
156
+ this.editorService.openEditor(input);
157
+ }
158
+ else {
159
+ this.editorService.openEditor({ resource: element.reference, options: { preserveFocus: true } });
160
+ }
161
+ }));
162
+ store.add(this.list.onContextMenu(e => {
163
+ EventHelper.stop(e.browserEvent, true);
164
+ }));
165
+ store.add(autorun((r) => {
166
+ this.updateList(this.fileChanges, this.fileChangesDiffsObservable.read(r));
167
+ }));
168
+ return store;
169
+ }
170
+ updateList(fileChanges, fileChangesDiffs) {
171
+ this.list.splice(0, this.list.length, this.computeFileChangeSummaryItems(fileChanges, fileChangesDiffs));
172
+ }
173
+ computeFileChangeSummaryItems(fileChanges, fileChangesDiffs) {
174
+ const items = [];
175
+ for (const fileChange of fileChanges) {
176
+ const diffEntry = fileChangesDiffs.get(this.changeID(fileChange));
177
+ if (diffEntry) {
178
+ const additionalLabels = [];
179
+ if (diffEntry) {
180
+ additionalLabels.push({
181
+ description: ` +${diffEntry.added} `,
182
+ className: 'insertions',
183
+ });
184
+ additionalLabels.push({
185
+ description: ` -${diffEntry.removed} `,
186
+ className: 'deletions',
187
+ });
188
+ }
189
+ const item = {
190
+ ...fileChange,
191
+ additionalLabels
192
+ };
193
+ items.push(item);
194
+ }
195
+ else {
196
+ items.push(fileChange);
197
+ }
198
+ }
199
+ return items;
200
+ }
201
+ hasSameContent(other, followingContent, element) {
202
+ return other.kind === 'changesSummary' && other.fileChanges.length === this.fileChanges.length;
203
+ }
204
+ addDisposable(disposable) {
205
+ this._register(disposable);
206
+ }
207
+ };
208
+ ChatCheckpointFileChangesSummaryContentPart = ( __decorate([
209
+ ( __param(2, IHoverService)),
210
+ ( __param(3, IChatService)),
211
+ ( __param(4, IEditorService)),
212
+ ( __param(5, IEditorGroupsService)),
213
+ ( __param(6, IInstantiationService))
214
+ ], ChatCheckpointFileChangesSummaryContentPart));
215
+ let CollapsibleChangesSummaryListPool = class CollapsibleChangesSummaryListPool extends Disposable {
216
+ constructor(instantiationService, themeService) {
217
+ super();
218
+ this.instantiationService = instantiationService;
219
+ this.themeService = themeService;
220
+ this._resourcePool = this._register(( new ResourcePool(() => this.listFactory())));
221
+ }
222
+ listFactory() {
223
+ const container = $('.chat-summary-list');
224
+ const store = ( new DisposableStore());
225
+ store.add(createFileIconThemableTreeContainerScope(container, this.themeService));
226
+ const resourceLabels = store.add(this.instantiationService.createInstance(ResourceLabels, { onDidChangeVisibility: () => Disposable.None }));
227
+ const list = store.add(this.instantiationService.createInstance((WorkbenchList), 'ChatListRenderer', container, ( new CollapsibleChangesSummaryListDelegate()), [this.instantiationService.createInstance(CollapsibleChangesSummaryListRenderer, resourceLabels)], {
228
+ alwaysConsumeMouseWheel: false
229
+ }));
230
+ return {
231
+ list: list,
232
+ dispose: () => {
233
+ store.dispose();
234
+ }
235
+ };
236
+ }
237
+ get() {
238
+ return this._resourcePool.get().list;
239
+ }
240
+ };
241
+ CollapsibleChangesSummaryListPool = ( __decorate([
242
+ ( __param(0, IInstantiationService)),
243
+ ( __param(1, IThemeService))
244
+ ], CollapsibleChangesSummaryListPool));
245
+ class CollapsibleChangesSummaryListDelegate {
246
+ getHeight(element) {
247
+ return 22;
248
+ }
249
+ getTemplateId(element) {
250
+ return CollapsibleChangesSummaryListRenderer.TEMPLATE_ID;
251
+ }
252
+ }
253
+ class CollapsibleChangesSummaryListRenderer {
254
+ static { this.TEMPLATE_ID = 'collapsibleChangesSummaryListRenderer'; }
255
+ static { this.CHANGES_SUMMARY_CLASS_NAME = 'insertions-and-deletions'; }
256
+ constructor(labels) {
257
+ this.labels = labels;
258
+ this.templateId = CollapsibleChangesSummaryListRenderer.TEMPLATE_ID;
259
+ }
260
+ renderTemplate(container) {
261
+ const label = this.labels.create(container, { supportHighlights: true, supportIcons: true });
262
+ return { label, dispose: () => label.dispose() };
263
+ }
264
+ renderElement(data, index, templateData) {
265
+ const label = templateData.label;
266
+ label.setFile(data.reference, {
267
+ fileKind: FileKind.FILE,
268
+ title: data.reference.path
269
+ });
270
+ const labelElement = label.element;
271
+ labelElement.querySelector(`.${CollapsibleChangesSummaryListRenderer.CHANGES_SUMMARY_CLASS_NAME}`)?.remove();
272
+ if (!data.additionalLabels) {
273
+ return;
274
+ }
275
+ const changesSummary = labelElement.appendChild($(`.${CollapsibleChangesSummaryListRenderer.CHANGES_SUMMARY_CLASS_NAME}`));
276
+ for (const additionalLabel of data.additionalLabels) {
277
+ const element = changesSummary.appendChild($(`.${additionalLabel.className}`));
278
+ element.textContent = additionalLabel.description;
279
+ }
280
+ }
281
+ disposeTemplate(templateData) {
282
+ templateData.dispose();
283
+ }
284
+ }
285
+
286
+ export { ChatCheckpointFileChangesSummaryContentPart };
@@ -0,0 +1,13 @@
1
+ import { Disposable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle";
2
+ import { ITelemetryService } from "@codingame/monaco-vscode-api/vscode/vs/platform/telemetry/common/telemetry.service";
3
+ import { ChatTreeItem } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chat";
4
+ import { IChatContentPart, IChatContentPartRenderContext } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chatContentParts/chatContentParts";
5
+ import { IChatCodeCitations, IChatRendererContent } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatViewModel";
6
+ import { IEditorService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorService.service";
7
+ export declare class ChatCodeCitationContentPart extends Disposable implements IChatContentPart {
8
+ private readonly editorService;
9
+ private readonly telemetryService;
10
+ readonly domNode: HTMLElement;
11
+ constructor(citations: IChatCodeCitations, context: IChatContentPartRenderContext, editorService: IEditorService, telemetryService: ITelemetryService);
12
+ hasSameContent(other: IChatRendererContent, followingContent: IChatRendererContent[], element: ChatTreeItem): boolean;
13
+ }
@@ -0,0 +1,49 @@
1
+
2
+ import { __decorate, __param } from '@codingame/monaco-vscode-api/external/tslib/tslib.es6';
3
+ import { h } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/dom';
4
+ import { Button } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/ui/button/button';
5
+ import { Disposable } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
6
+ import { localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
7
+ import { ITelemetryService } from '@codingame/monaco-vscode-api/vscode/vs/platform/telemetry/common/telemetry.service';
8
+ import { getCodeCitationsMessage } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatModel';
9
+ import { IEditorService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorService.service';
10
+
11
+ let ChatCodeCitationContentPart = class ChatCodeCitationContentPart extends Disposable {
12
+ constructor(citations, context, editorService, telemetryService) {
13
+ super();
14
+ this.editorService = editorService;
15
+ this.telemetryService = telemetryService;
16
+ const label = getCodeCitationsMessage(citations.citations);
17
+ const elements = h('.chat-code-citation-message@root', [
18
+ h('span.chat-code-citation-label@label'),
19
+ h('.chat-code-citation-button-container@button'),
20
+ ]);
21
+ elements.label.textContent = label + ' - ';
22
+ const button = this._register(( new Button(elements.button, {
23
+ buttonBackground: undefined,
24
+ buttonBorder: undefined,
25
+ buttonForeground: undefined,
26
+ buttonHoverBackground: undefined,
27
+ buttonSecondaryBackground: undefined,
28
+ buttonSecondaryForeground: undefined,
29
+ buttonSecondaryHoverBackground: undefined,
30
+ buttonSeparator: undefined
31
+ })));
32
+ button.label = ( localize(5046, "View matches"));
33
+ this._register(button.onDidClick(() => {
34
+ const citationText = `# Code Citations\n\n` + ( citations.citations.map(c => `## License: ${c.license}\n${( c.value.toString())}\n\n\`\`\`\n${c.snippet}\n\`\`\`\n\n`)).join('\n');
35
+ this.editorService.openEditor({ resource: undefined, contents: citationText, languageId: 'markdown' });
36
+ this.telemetryService.publicLog2('openedChatCodeCitations');
37
+ }));
38
+ this.domNode = elements.root;
39
+ }
40
+ hasSameContent(other, followingContent, element) {
41
+ return other.kind === 'codeCitations';
42
+ }
43
+ };
44
+ ChatCodeCitationContentPart = ( __decorate([
45
+ ( __param(2, IEditorService)),
46
+ ( __param(3, ITelemetryService))
47
+ ], ChatCodeCitationContentPart));
48
+
49
+ export { ChatCodeCitationContentPart };
@@ -0,0 +1,34 @@
1
+ import { ButtonWithIcon } from "@codingame/monaco-vscode-api/vscode/vs/base/browser/ui/button/button";
2
+ import { Emitter } from "@codingame/monaco-vscode-api/vscode/vs/base/common/event";
3
+ import { IMarkdownString, MarkdownString } from "@codingame/monaco-vscode-api/vscode/vs/base/common/htmlContent";
4
+ import { Disposable, IDisposable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle";
5
+ import { IObservable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/observable";
6
+ import { IChatRendererContent } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatViewModel";
7
+ import { ChatTreeItem } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chat";
8
+ import { IChatContentPart, IChatContentPartRenderContext } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chatContentParts/chatContentParts";
9
+ import { IChatMarkdownAnchorService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chatContentParts/chatMarkdownAnchorService.service";
10
+ import { IInstantiationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation";
11
+ import { IMarkdownRenderer } from "@codingame/monaco-vscode-api/vscode/vs/platform/markdown/browser/markdownRenderer";
12
+ export declare abstract class ChatCollapsibleContentPart extends Disposable implements IChatContentPart {
13
+ private title;
14
+ protected readonly context: IChatContentPartRenderContext;
15
+ private _domNode?;
16
+ private readonly _renderedTitleWithWidgets;
17
+ protected readonly _onDidChangeHeight: Emitter<void>;
18
+ readonly onDidChangeHeight: import("@codingame/monaco-vscode-api/vscode/vs/base/common/event").Event<void>;
19
+ protected readonly hasFollowingContent: boolean;
20
+ protected _isExpanded: import("@codingame/monaco-vscode-api/vscode/vs/base/common/observable").ISettableObservable<boolean, void>;
21
+ protected _collapseButton: ButtonWithIcon | undefined;
22
+ constructor(title: IMarkdownString | string, context: IChatContentPartRenderContext);
23
+ get domNode(): HTMLElement;
24
+ protected init(): HTMLElement;
25
+ protected abstract initContent(): HTMLElement;
26
+ abstract hasSameContent(other: IChatRendererContent, followingContent: IChatRendererContent[], element: ChatTreeItem): boolean;
27
+ private updateAriaLabel;
28
+ addDisposable(disposable: IDisposable): void;
29
+ get expanded(): IObservable<boolean>;
30
+ protected isExpanded(): boolean;
31
+ protected setExpanded(value: boolean): void;
32
+ protected setTitle(title: string): void;
33
+ protected setTitleWithWidgets(content: MarkdownString, instantiationService: IInstantiationService, chatMarkdownAnchorService: IChatMarkdownAnchorService, chatContentMarkdownRenderer: IMarkdownRenderer): void;
34
+ }
@@ -0,0 +1,101 @@
1
+
2
+ import { $ } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/dom';
3
+ import { ButtonWithIcon } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/ui/button/button';
4
+ import { Codicon } from '@codingame/monaco-vscode-api/vscode/vs/base/common/codicons';
5
+ import { Emitter } from '@codingame/monaco-vscode-api/vscode/vs/base/common/event';
6
+ import { Disposable, MutableDisposable } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
7
+ import '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/index';
8
+ import { localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
9
+ import { renderFileWidgets } from '../chatInlineAnchorWidget.js';
10
+ import { observableValue } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/observables/observableValue';
11
+ import { autorun } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/reactions/autorun';
12
+
13
+ class ChatCollapsibleContentPart extends Disposable {
14
+ constructor(title, context) {
15
+ super();
16
+ this.title = title;
17
+ this.context = context;
18
+ this._renderedTitleWithWidgets = this._register(( new MutableDisposable()));
19
+ this._onDidChangeHeight = this._register(( new Emitter()));
20
+ this.onDidChangeHeight = this._onDidChangeHeight.event;
21
+ this._isExpanded = observableValue(this, false);
22
+ this.hasFollowingContent = this.context.contentIndex + 1 < this.context.content.length;
23
+ }
24
+ get domNode() {
25
+ this._domNode ??= this.init();
26
+ return this._domNode;
27
+ }
28
+ init() {
29
+ const referencesLabel = this.title;
30
+ const buttonElement = $('.chat-used-context-label', undefined);
31
+ const collapseButton = this._register(( new ButtonWithIcon(buttonElement, {
32
+ buttonBackground: undefined,
33
+ buttonBorder: undefined,
34
+ buttonForeground: undefined,
35
+ buttonHoverBackground: undefined,
36
+ buttonSecondaryBackground: undefined,
37
+ buttonSecondaryForeground: undefined,
38
+ buttonSecondaryHoverBackground: undefined,
39
+ buttonSeparator: undefined
40
+ })));
41
+ this._collapseButton = collapseButton;
42
+ this._domNode = $('.chat-used-context', undefined, buttonElement);
43
+ collapseButton.label = referencesLabel;
44
+ this._register(collapseButton.onDidClick(() => {
45
+ const value = this._isExpanded.get();
46
+ this._isExpanded.set(!value, undefined);
47
+ }));
48
+ this._register(autorun(r => {
49
+ const value = this._isExpanded.read(r);
50
+ collapseButton.icon = value ? Codicon.chevronDown : Codicon.chevronRight;
51
+ this._domNode?.classList.toggle('chat-used-context-collapsed', !value);
52
+ this.updateAriaLabel(collapseButton.element, typeof referencesLabel === 'string' ? referencesLabel : referencesLabel.value, this.isExpanded());
53
+ if (this._domNode?.isConnected) {
54
+ queueMicrotask(() => {
55
+ this._onDidChangeHeight.fire();
56
+ });
57
+ }
58
+ }));
59
+ const content = this.initContent();
60
+ this._domNode.appendChild(content);
61
+ return this._domNode;
62
+ }
63
+ updateAriaLabel(element, label, expanded) {
64
+ element.ariaLabel = expanded ? ( localize(5047, "{0}, expanded", label)) : ( localize(5048, "{0}, collapsed", label));
65
+ }
66
+ addDisposable(disposable) {
67
+ this._register(disposable);
68
+ }
69
+ get expanded() {
70
+ return this._isExpanded;
71
+ }
72
+ isExpanded() {
73
+ return this._isExpanded.get();
74
+ }
75
+ setExpanded(value) {
76
+ this._isExpanded.set(value, undefined);
77
+ }
78
+ setTitle(title) {
79
+ this.title = title;
80
+ if (this._collapseButton) {
81
+ this._collapseButton.label = title;
82
+ this.updateAriaLabel(this._collapseButton.element, title, this.isExpanded());
83
+ }
84
+ }
85
+ setTitleWithWidgets(content, instantiationService, chatMarkdownAnchorService, chatContentMarkdownRenderer) {
86
+ if (this._store.isDisposed || !this._collapseButton) {
87
+ return;
88
+ }
89
+ const result = chatContentMarkdownRenderer.render(content);
90
+ result.element.classList.add('collapsible-title-content');
91
+ renderFileWidgets(result.element, instantiationService, chatMarkdownAnchorService, this._store);
92
+ const labelElement = this._collapseButton.labelElement;
93
+ labelElement.textContent = '';
94
+ labelElement.appendChild(result.element);
95
+ const textContent = result.element.textContent || '';
96
+ this.updateAriaLabel(this._collapseButton.element, textContent, this.isExpanded());
97
+ this._renderedTitleWithWidgets.value = result;
98
+ }
99
+ }
100
+
101
+ export { ChatCollapsibleContentPart };
@@ -0,0 +1,14 @@
1
+ import { IDisposable, Disposable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle";
2
+ export declare class ResourcePool<T extends IDisposable> extends Disposable {
3
+ private readonly _itemFactory;
4
+ private readonly pool;
5
+ private _inUse;
6
+ get inUse(): ReadonlySet<T>;
7
+ constructor(_itemFactory: () => T);
8
+ get(): T;
9
+ release(item: T): void;
10
+ }
11
+ export interface IDisposableReference<T> extends IDisposable {
12
+ object: T;
13
+ isStale: () => boolean;
14
+ }
@@ -0,0 +1,30 @@
1
+
2
+ import { Disposable } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
3
+
4
+ class ResourcePool extends Disposable {
5
+ get inUse() {
6
+ return this._inUse;
7
+ }
8
+ constructor(_itemFactory) {
9
+ super();
10
+ this._itemFactory = _itemFactory;
11
+ this.pool = [];
12
+ this._inUse = ( new Set());
13
+ }
14
+ get() {
15
+ if (this.pool.length > 0) {
16
+ const item = this.pool.pop();
17
+ this._inUse.add(item);
18
+ return item;
19
+ }
20
+ const item = this._register(this._itemFactory());
21
+ this._inUse.add(item);
22
+ return item;
23
+ }
24
+ release(item) {
25
+ this._inUse.delete(item);
26
+ this.pool.push(item);
27
+ }
28
+ }
29
+
30
+ export { ResourcePool };
@@ -0,0 +1,11 @@
1
+ import { Disposable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle";
2
+ import { ICommandService } from "@codingame/monaco-vscode-api/vscode/vs/platform/commands/common/commands.service";
3
+ import { IChatContentPart, IChatContentPartRenderContext } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chatContentParts/chatContentParts";
4
+ import { IChatProgressRenderableResponseContent } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatModel";
5
+ import { IChatCommandButton } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatService";
6
+ export declare class ChatCommandButtonContentPart extends Disposable implements IChatContentPart {
7
+ private readonly commandService;
8
+ readonly domNode: HTMLElement;
9
+ constructor(commandButton: IChatCommandButton, context: IChatContentPartRenderContext, commandService: ICommandService);
10
+ hasSameContent(other: IChatProgressRenderableResponseContent): boolean;
11
+ }
@@ -0,0 +1,37 @@
1
+
2
+ import { __decorate, __param } from '@codingame/monaco-vscode-api/external/tslib/tslib.es6';
3
+ import { $ as $$1 } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/dom';
4
+ import { Button } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/ui/button/button';
5
+ import { Disposable } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
6
+ import { localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
7
+ import { ICommandService } from '@codingame/monaco-vscode-api/vscode/vs/platform/commands/common/commands.service';
8
+ import { defaultButtonStyles } from '@codingame/monaco-vscode-api/vscode/vs/platform/theme/browser/defaultStyles';
9
+ import { isResponseVM } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatViewModel';
10
+
11
+ const $ = $$1;
12
+ let ChatCommandButtonContentPart = class ChatCommandButtonContentPart extends Disposable {
13
+ constructor(commandButton, context, commandService) {
14
+ super();
15
+ this.commandService = commandService;
16
+ this.domNode = $('.chat-command-button');
17
+ const enabled = !isResponseVM(context.element) || !context.element.isStale;
18
+ const tooltip = enabled ?
19
+ commandButton.command.tooltip :
20
+ ( localize(5049, "Button not available in restored chat"));
21
+ const button = this._register(( new Button(
22
+ this.domNode,
23
+ { ...defaultButtonStyles, supportIcons: true, title: tooltip }
24
+ )));
25
+ button.label = commandButton.command.title;
26
+ button.enabled = enabled;
27
+ this._register(button.onDidClick(() => this.commandService.executeCommand(commandButton.command.id, ...(commandButton.command.arguments ?? []))));
28
+ }
29
+ hasSameContent(other) {
30
+ return other.kind === 'command';
31
+ }
32
+ };
33
+ ChatCommandButtonContentPart = ( __decorate([
34
+ ( __param(2, ICommandService))
35
+ ], ChatCommandButtonContentPart));
36
+
37
+ export { ChatCommandButtonContentPart };
@@ -0,0 +1,17 @@
1
+ import { Disposable, IDisposable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle";
2
+ import { IInstantiationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation";
3
+ import { IChatProgressRenderableResponseContent } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatModel";
4
+ import { IChatConfirmation } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatService";
5
+ import { IChatService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatService.service";
6
+ import { IChatWidgetService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chat.service";
7
+ import { IChatContentPart, IChatContentPartRenderContext } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chatContentParts/chatContentParts";
8
+ export declare class ChatConfirmationContentPart extends Disposable implements IChatContentPart {
9
+ private readonly instantiationService;
10
+ private readonly chatService;
11
+ readonly domNode: HTMLElement;
12
+ private readonly _onDidChangeHeight;
13
+ readonly onDidChangeHeight: import("@codingame/monaco-vscode-api/vscode/vs/base/common/event").Event<void>;
14
+ constructor(confirmation: IChatConfirmation, context: IChatContentPartRenderContext, instantiationService: IInstantiationService, chatService: IChatService, chatWidgetService: IChatWidgetService);
15
+ hasSameContent(other: IChatProgressRenderableResponseContent): boolean;
16
+ addDisposable(disposable: IDisposable): void;
17
+ }