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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (276) hide show
  1. package/package.json +3 -3
  2. package/vscode/src/vs/platform/actions/browser/actionbar.d.ts +16 -0
  3. package/vscode/src/vs/platform/actions/browser/actionbar.js +22 -0
  4. package/vscode/src/vs/platform/actions/browser/buttonbar.js +2 -2
  5. package/vscode/src/vs/platform/networkFilter/common/domainMatcher.d.ts +50 -0
  6. package/vscode/src/vs/platform/networkFilter/common/domainMatcher.js +138 -0
  7. package/vscode/src/vs/platform/networkFilter/common/settings.d.ts +12 -0
  8. package/vscode/src/vs/platform/networkFilter/common/settings.js +14 -0
  9. package/vscode/src/vs/platform/sandbox/common/sandboxHelperIpc.d.ts +18 -0
  10. package/vscode/src/vs/platform/sandbox/common/sandboxHelperIpc.js +13 -0
  11. package/vscode/src/vs/platform/sandbox/common/terminalSandboxService.d.ts +73 -0
  12. package/vscode/src/vs/platform/sandbox/common/terminalSandboxService.js +10 -0
  13. package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatAccessibilityProvider.js +16 -16
  14. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContinueInAction.d.ts +3 -1
  15. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContinueInAction.js +51 -24
  16. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatElicitationActions.js +1 -1
  17. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatExecuteActions.d.ts +2 -1
  18. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatExecuteActions.js +64 -72
  19. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatTitleActions.js +10 -10
  20. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolActions.d.ts +2 -1
  21. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolActions.js +17 -14
  22. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolPicker.js +13 -13
  23. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionApprovalModel.js +1 -1
  24. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionHoverWidget.js +17 -18
  25. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsControl.js +5 -2
  26. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsFilter.d.ts +5 -0
  27. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsFilter.js +73 -9
  28. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsOpener.js +1 -1
  29. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsViewer.js +32 -32
  30. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentModel.d.ts +1 -0
  31. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentModel.js +20 -2
  32. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentWidgets.d.ts +1 -0
  33. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentWidgets.js +73 -49
  34. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/implicitContextAttachment.js +12 -12
  35. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingActions.d.ts +0 -6
  36. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingActions.js +41 -99
  37. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorActions.js +14 -14
  38. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorOverlay.d.ts +2 -1
  39. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorOverlay.js +13 -9
  40. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingExplanationWidget.js +12 -12
  41. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessionPickerActionItem.js +1 -1
  42. package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolSetsContribution.js +14 -15
  43. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatAgentHover.js +2 -2
  44. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatArtifactsWidget.d.ts +11 -12
  45. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatArtifactsWidget.js +339 -161
  46. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentMarkdownRenderer.js +9 -2
  47. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAgentCommandContentPart.js +1 -1
  48. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAnonymousRateLimitedPart.js +2 -2
  49. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAttachmentsContentPart.d.ts +9 -4
  50. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAttachmentsContentPart.js +33 -5
  51. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatChangesSummaryPart.js +1 -1
  52. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCodeCitationContentPart.js +1 -1
  53. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCollections.d.ts +43 -1
  54. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCollections.js +147 -2
  55. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCommandContentPart.js +1 -1
  56. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatConfirmationContentPart.js +2 -2
  57. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatConfirmationWidget.d.ts +4 -0
  58. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatConfirmationWidget.js +55 -6
  59. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatContentCodePools.d.ts +1 -1
  60. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatContentCodePools.js +7 -5
  61. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatContentParts.d.ts +1 -3
  62. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatDiffBlockPart.js +42 -10
  63. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatDisabledClaudeHooksContentPart.js +3 -3
  64. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatExtensionsContentPart.js +1 -1
  65. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatHookContentPart.js +1 -1
  66. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/animations/animation.d.ts +18 -0
  67. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/animations/animationRegistry.d.ts +15 -0
  68. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/animations/animationRegistry.js +16 -0
  69. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/animations/blockAnimations.d.ts +13 -0
  70. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/animations/blockAnimations.js +33 -0
  71. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/buffers/buffer.d.ts +46 -0
  72. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/buffers/bufferRegistry.d.ts +11 -0
  73. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/buffers/bufferRegistry.js +12 -0
  74. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/buffers/offBuffer.d.ts +9 -0
  75. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/buffers/offBuffer.js +12 -0
  76. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/buffers/paragraphBuffer.d.ts +23 -0
  77. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/buffers/paragraphBuffer.js +37 -0
  78. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/buffers/wordBuffer.d.ts +34 -0
  79. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/buffers/wordBuffer.js +68 -0
  80. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/chatIncrementalRendering.d.ts +77 -0
  81. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/chatIncrementalRendering.js +170 -0
  82. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/media/chatIncrementalRendering.css +112 -0
  83. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatInlineAnchorWidget.d.ts +3 -1
  84. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatInlineAnchorWidget.js +26 -16
  85. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMarkdownContentPart.d.ts +24 -6
  86. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMarkdownContentPart.js +111 -145
  87. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMcpServersInteractionContentPart.js +8 -8
  88. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMultiDiffContentPart.js +4 -4
  89. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatPlanReviewPart.d.ts +58 -0
  90. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatPlanReviewPart.js +425 -0
  91. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatProgressContentPart.d.ts +16 -7
  92. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatProgressContentPart.js +68 -25
  93. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatQuestionCarouselPart.d.ts +5 -1
  94. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatQuestionCarouselPart.js +101 -45
  95. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatQuotaExceededPart.js +4 -4
  96. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatReferencesContentPart.js +6 -6
  97. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatResourceGroupWidget.js +5 -5
  98. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatSubagentContentPart.d.ts +36 -4
  99. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatSubagentContentPart.js +217 -25
  100. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatSuggestNextWidget.js +6 -6
  101. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTextEditContentPart.js +1 -1
  102. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatThinkingContentPart.d.ts +23 -3
  103. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatThinkingContentPart.js +168 -60
  104. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTipContentPart.js +10 -10
  105. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTodoListWidget.js +18 -17
  106. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatToolInputOutputContentPart.d.ts +1 -5
  107. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatToolInputOutputContentPart.js +7 -18
  108. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatToolOutputContentSubPart.d.ts +1 -5
  109. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatToolOutputContentSubPart.js +7 -19
  110. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTreeContentPart.js +1 -1
  111. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatWorkspaceEditContentPart.js +3 -3
  112. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/codeBlockPart.d.ts +24 -19
  113. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/codeBlockPart.js +104 -78
  114. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatConfirmationWidget.css +11 -2
  115. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatPlanReview.css +257 -0
  116. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatQuestionCarousel.css +19 -0
  117. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatSubagentContent.css +30 -0
  118. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatTerminalToolProgressPart.css +1 -1
  119. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatThinkingContent.css +12 -0
  120. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatToolConfirmationCarousel.css +286 -0
  121. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/abstractToolConfirmationSubPart.js +1 -1
  122. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatExtensionsInstallToolSubPart.js +4 -4
  123. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatMcpAppModel.js +1 -1
  124. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatMcpAppSubPart.js +3 -3
  125. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatMissingSandboxDepsConfirmationSubPart.js +2 -2
  126. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatModifiedFilesConfirmationSubPart.js +15 -11
  127. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolConfirmationSubPart.d.ts +1 -7
  128. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolConfirmationSubPart.js +25 -47
  129. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolProgressPart.d.ts +29 -53
  130. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolProgressPart.js +258 -321
  131. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolConfirmationCarouselPart.d.ts +53 -0
  132. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolConfirmationCarouselPart.js +392 -0
  133. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolConfirmationSubPart.d.ts +1 -3
  134. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolConfirmationSubPart.js +24 -30
  135. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolInvocationPart.d.ts +2 -3
  136. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolInvocationPart.js +9 -8
  137. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolOutputPart.js +2 -2
  138. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolPartUtilities.js +5 -5
  139. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolPostExecuteConfirmationPart.js +5 -5
  140. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/terminalToolAutoExpand.d.ts +6 -3
  141. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/terminalToolAutoExpand.js +2 -3
  142. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatDragAndDrop.js +11 -11
  143. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatListRenderer.d.ts +38 -11
  144. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatListRenderer.js +577 -113
  145. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatListWidget.d.ts +0 -7
  146. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatListWidget.js +4 -7
  147. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatWidget.d.ts +1 -8
  148. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatWidget.js +58 -75
  149. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatFollowups.js +1 -1
  150. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputPart.d.ts +44 -12
  151. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputPart.js +362 -188
  152. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputPickerActionItem.d.ts +0 -2
  153. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelPicker.d.ts +4 -5
  154. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelPicker.js +42 -95
  155. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelSelectionLogic.d.ts +2 -1
  156. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/delegationSessionPickerActionItem.js +9 -10
  157. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modePickerActionItem.js +57 -38
  158. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPickerActionItem.d.ts +21 -15
  159. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/{modelPickerActionItem2.js → modelPickerActionItem.js} +5 -7
  160. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/permissionPickerActionItem.js +38 -31
  161. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/sessionTargetPickerActionItem.js +4 -5
  162. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/workspacePickerActionItem.js +3 -3
  163. package/vscode/src/vs/workbench/contrib/chat/browser/widget/media/chat.css +94 -40
  164. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatContextUsageDetails.js +7 -7
  165. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatContextUsageWidget.js +2 -2
  166. package/vscode/src/vs/workbench/contrib/chat/common/chatArtifactExtraction.d.ts +16 -0
  167. package/vscode/src/vs/workbench/contrib/chat/common/chatArtifactExtraction.js +218 -0
  168. package/vscode/src/vs/workbench/contrib/chat/common/chatImageExtraction.js +7 -7
  169. package/vscode/src/vs/workbench/contrib/chat/common/widget/annotations.js +6 -1
  170. package/vscode/src/vs/workbench/contrib/chat/common/widget/chatColors.js +15 -15
  171. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatAffordance.js +12 -21
  172. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatController.d.ts +2 -32
  173. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatController.js +355 -156
  174. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatEditorAffordance.d.ts +2 -13
  175. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatEditorAffordance.js +72 -65
  176. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatOverlayWidget.d.ts +4 -43
  177. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatOverlayWidget.js +238 -204
  178. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatWidget.d.ts +4 -19
  179. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatWidget.js +128 -115
  180. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatZoneWidget.d.ts +6 -9
  181. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatZoneWidget.js +152 -49
  182. package/vscode/src/vs/workbench/contrib/inlineChat/browser/media/inlineChat.css +64 -0
  183. package/vscode/src/vs/workbench/contrib/inlineChat/common/inlineChat.js +40 -40
  184. package/vscode/src/vs/workbench/contrib/interactive/browser/replInputHintContentWidget.js +3 -3
  185. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellStatusBar/executionStatusBarItemController.js +7 -7
  186. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/notebookFindWidget.js +2 -2
  187. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/cellOperations.js +2 -2
  188. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/insertCellActions.js +24 -24
  189. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffComponents.js +3 -3
  190. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffElementOutputs.js +7 -7
  191. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffEditor.js +1 -1
  192. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffEditorBrowser.js +5 -5
  193. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffList.js +1 -1
  194. package/vscode/src/vs/workbench/contrib/replNotebook/browser/replEditor.js +1 -1
  195. package/vscode/src/vs/workbench/contrib/replNotebook/browser/replEditorInput.js +1 -1
  196. package/vscode/src/vs/workbench/contrib/terminal/terminalContribChatExports.d.ts +2 -0
  197. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/alternativeRecommendation.d.ts +2 -0
  198. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/alternativeRecommendation.js +41 -0
  199. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/commandParsers/commandFileWriteParser.d.ts +24 -0
  200. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/commandParsers/sedFileWriteParser.d.ts +26 -0
  201. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/commandParsers/sedFileWriteParser.js +142 -0
  202. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/basicExecuteStrategy.d.ts +45 -0
  203. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/basicExecuteStrategy.js +165 -0
  204. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/executeStrategy.d.ts +53 -0
  205. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/executeStrategy.js +163 -0
  206. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/noneExecuteStrategy.d.ts +27 -0
  207. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/noneExecuteStrategy.js +142 -0
  208. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/richExecuteStrategy.d.ts +29 -0
  209. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/richExecuteStrategy.js +144 -0
  210. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/strategyHelpers.d.ts +40 -0
  211. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/strategyHelpers.js +174 -0
  212. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/outputHelpers.d.ts +7 -0
  213. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/outputHelpers.js +43 -0
  214. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.d.ts +42 -0
  215. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.js +256 -0
  216. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalToolTelemetry.d.ts +42 -0
  217. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalToolTelemetry.js +94 -0
  218. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/toolTerminalCreator.d.ts +42 -0
  219. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/toolTerminalCreator.js +221 -0
  220. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/autoApprove/commandLineAutoApprover.d.ts +31 -0
  221. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/autoApprove/commandLineAutoApprover.js +392 -0
  222. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/autoApprove/npmScriptAutoApprover.d.ts +45 -0
  223. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/autoApprove/npmScriptAutoApprover.js +243 -0
  224. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAnalyzer.d.ts +52 -0
  225. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAnalyzer.js +10 -0
  226. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAutoApproveAnalyzer.d.ts +20 -0
  227. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAutoApproveAnalyzer.js +310 -0
  228. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineFileWriteAnalyzer.d.ts +19 -0
  229. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineFileWriteAnalyzer.js +168 -0
  230. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineSandboxAnalyzer.d.ts +11 -0
  231. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineSandboxAnalyzer.js +33 -0
  232. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/commandLinePresenter.d.ts +41 -0
  233. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/nodeCommandLinePresenter.d.ts +19 -0
  234. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/nodeCommandLinePresenter.js +37 -0
  235. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/pythonCommandLinePresenter.d.ts +19 -0
  236. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/pythonCommandLinePresenter.js +37 -0
  237. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/rubyCommandLinePresenter.d.ts +19 -0
  238. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/rubyCommandLinePresenter.js +44 -0
  239. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/sandboxedCommandLinePresenter.d.ts +13 -0
  240. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/sandboxedCommandLinePresenter.js +22 -0
  241. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineBackgroundDetachRewriter.d.ts +22 -0
  242. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineBackgroundDetachRewriter.js +47 -0
  243. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineCdPrefixRewriter.d.ts +5 -0
  244. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineCdPrefixRewriter.js +27 -0
  245. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLinePreventHistoryRewriter.d.ts +14 -0
  246. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLinePreventHistoryRewriter.js +29 -0
  247. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLinePwshChainOperatorRewriter.d.ts +8 -0
  248. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLinePwshChainOperatorRewriter.js +33 -0
  249. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineRewriter.d.ts +24 -0
  250. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineSandboxRewriter.d.ts +8 -0
  251. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineSandboxRewriter.js +32 -0
  252. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.d.ts +108 -0
  253. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.js +412 -0
  254. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/types.d.ts +42 -0
  255. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/types.js +23 -0
  256. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/outputAnalyzer.d.ts +9 -0
  257. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.d.ts +192 -0
  258. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.js +2258 -0
  259. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/sandboxOutputAnalyzer.d.ts +22 -0
  260. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/sandboxOutputAnalyzer.js +43 -0
  261. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/terminalCommandArtifactCollector.d.ts +17 -0
  262. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/terminalCommandArtifactCollector.js +118 -0
  263. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/terminalToolAutoApprove.d.ts +22 -0
  264. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/terminalToolAutoApprove.js +44 -0
  265. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/toolIds.d.ts +1 -0
  266. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/treeSitterCommandParser.d.ts +25 -0
  267. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/treeSitterCommandParser.js +141 -0
  268. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxService.d.ts +85 -0
  269. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxService.js +608 -0
  270. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/searchableOptionPickerActionItem.d.ts +0 -40
  271. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/searchableOptionPickerActionItem.js +0 -196
  272. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPickerActionItem2.d.ts +0 -29
  273. package/vscode/src/vs/workbench/contrib/chat/common/widget/codeBlockModelCollection.d.ts +0 -46
  274. package/vscode/src/vs/workbench/contrib/chat/common/widget/codeBlockModelCollection.js +0 -215
  275. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatGutterAffordance.d.ts +0 -18
  276. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatGutterAffordance.js +0 -107
@@ -0,0 +1,170 @@
1
+
2
+ import { registerCss } from '@codingame/monaco-vscode-api/css';
3
+ import { __decorate, __param } from '@codingame/monaco-vscode-api/external/tslib/tslib.es6';
4
+ import * as chatIncrementalRendering from './media/chatIncrementalRendering.css';
5
+ import { getWindow } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/dom';
6
+ import { Disposable } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
7
+ import { IConfigurationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/configuration/common/configuration.service';
8
+ import { ChatConfiguration } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/constants';
9
+ import { WordBuffer } from './buffers/wordBuffer.js';
10
+ import { BUFFER_MODES } from './buffers/bufferRegistry.js';
11
+ import { ANIMATION_STYLES } from './animations/animationRegistry.js';
12
+ import { ANIMATION_DURATION_MS } from './animations/blockAnimations.js';
13
+
14
+ registerCss(chatIncrementalRendering);
15
+ let IncrementalDOMMorpher = class IncrementalDOMMorpher extends Disposable {
16
+ constructor(_domNode, _configService) {
17
+ super();
18
+ this._domNode = _domNode;
19
+ this._configService = _configService;
20
+ this._lastMarkdown = "";
21
+ this._renderedMarkdown = "";
22
+ this._revealedChildCount = 0;
23
+ this._animationStartTime = 0;
24
+ this._batchChildCount = 0;
25
+ this._rafScheduled = false;
26
+ this._buffer = this._createBuffer();
27
+ this._animation = this._createAnimation();
28
+ this._register(this._configService.onDidChangeConfiguration(e => {
29
+ if (e.affectsConfiguration(ChatConfiguration.IncrementalRenderingStyle)) {
30
+ this._animation = this._createAnimation();
31
+ }
32
+ if (e.affectsConfiguration(ChatConfiguration.IncrementalRenderingBuffering)) {
33
+ this._buffer.dispose?.();
34
+ this._buffer = this._createBuffer();
35
+ }
36
+ }));
37
+ }
38
+ _createBuffer() {
39
+ const raw = this._configService.getValue(ChatConfiguration.IncrementalRenderingBuffering);
40
+ const factory = Object.prototype.hasOwnProperty.call(BUFFER_MODES, raw) ? BUFFER_MODES[raw] : BUFFER_MODES.paragraph;
41
+ return factory(this._domNode);
42
+ }
43
+ _createAnimation() {
44
+ const raw = this._configService.getValue(ChatConfiguration.IncrementalRenderingStyle);
45
+ const factory = Object.prototype.hasOwnProperty.call(ANIMATION_STYLES, raw) ? ANIMATION_STYLES[raw] : ANIMATION_STYLES.fade;
46
+ return factory();
47
+ }
48
+ setRenderCallback(cb) {
49
+ this._renderCallback = cb;
50
+ }
51
+ updateStreamRate(rate, isComplete) {
52
+ if (this._buffer instanceof WordBuffer) {
53
+ this._buffer.setRate(rate, isComplete);
54
+ }
55
+ }
56
+ seed(markdown, animateInitial) {
57
+ this._lastMarkdown = markdown;
58
+ this._animationStartTime = 0;
59
+ if (this._buffer.handlesFlush && markdown.length > 0) {
60
+ this._renderedMarkdown = "";
61
+ this._revealedChildCount = 0;
62
+ while (this._domNode.firstChild) {
63
+ this._domNode.removeChild(this._domNode.firstChild);
64
+ }
65
+ this._pendingMarkdown = markdown;
66
+ this._scheduleRender();
67
+ return;
68
+ }
69
+ this._renderedMarkdown = markdown;
70
+ this._revealedChildCount = animateInitial ? 0 : this._domNode.children.length;
71
+ if (animateInitial) {
72
+ this._animateNewChildren();
73
+ }
74
+ }
75
+ tryMorph(newMarkdown) {
76
+ if (!newMarkdown.startsWith(this._lastMarkdown)) {
77
+ return false;
78
+ }
79
+ const appended = newMarkdown.slice(this._lastMarkdown.length);
80
+ if (appended.length === 0) {
81
+ return true;
82
+ }
83
+ this._lastMarkdown = newMarkdown;
84
+ if (this._buffer.handlesFlush) {
85
+ this._pendingMarkdown = newMarkdown;
86
+ this._scheduleRender();
87
+ return true;
88
+ }
89
+ const renderable = this._buffer.getRenderable(newMarkdown, this._renderedMarkdown);
90
+ if (renderable.length > this._renderedMarkdown.length) {
91
+ this._renderedMarkdown = renderable;
92
+ this._pendingMarkdown = renderable;
93
+ this._scheduleRender();
94
+ }
95
+ return true;
96
+ }
97
+ _scheduleRender() {
98
+ if (this._rafScheduled) {
99
+ return;
100
+ }
101
+ this._rafScheduled = true;
102
+ const win = getWindow(this._domNode);
103
+ this._rafHandle = win.requestAnimationFrame(() => {
104
+ this._rafScheduled = false;
105
+ this._rafHandle = undefined;
106
+ this._flushRender();
107
+ });
108
+ }
109
+ _flushRender() {
110
+ let markdown = this._pendingMarkdown;
111
+ this._pendingMarkdown = undefined;
112
+ if (markdown === undefined || !this._renderCallback) {
113
+ return;
114
+ }
115
+ if (this._buffer.filterFlush) {
116
+ const filtered = this._buffer.filterFlush(markdown);
117
+ if (filtered === undefined) {
118
+ if (this._buffer.needsNextFrame) {
119
+ this._pendingMarkdown = markdown;
120
+ this._scheduleRender();
121
+ }
122
+ return;
123
+ }
124
+ markdown = filtered;
125
+ }
126
+ this._renderedMarkdown = markdown;
127
+ this._renderCallback(markdown);
128
+ this._animateNewChildren();
129
+ if (this._buffer.needsNextFrame) {
130
+ this._pendingMarkdown = this._lastMarkdown;
131
+ this._scheduleRender();
132
+ }
133
+ }
134
+ _animateNewChildren() {
135
+ const children = this._domNode.children;
136
+ const currentCount = children.length;
137
+ if (currentCount <= this._revealedChildCount) {
138
+ return;
139
+ }
140
+ const now = Date.now();
141
+ if (this._animationStartTime !== 0 && (now - this._animationStartTime) >= ANIMATION_DURATION_MS) {
142
+ this._revealedChildCount = this._batchChildCount;
143
+ this._animationStartTime = 0;
144
+ this._batchChildCount = 0;
145
+ }
146
+ if (currentCount <= this._revealedChildCount) {
147
+ return;
148
+ }
149
+ if (this._animationStartTime === 0) {
150
+ this._animationStartTime = now;
151
+ }
152
+ this._batchChildCount = currentCount;
153
+ const elapsed = now - this._animationStartTime;
154
+ this._animation.animate(children, this._revealedChildCount, currentCount, elapsed);
155
+ }
156
+ dispose() {
157
+ if (this._rafHandle !== undefined) {
158
+ getWindow(this._domNode).cancelAnimationFrame(this._rafHandle);
159
+ this._rafHandle = undefined;
160
+ }
161
+ this._rafScheduled = false;
162
+ this._pendingMarkdown = undefined;
163
+ this._renderCallback = undefined;
164
+ this._buffer.dispose?.();
165
+ super.dispose();
166
+ }
167
+ };
168
+ IncrementalDOMMorpher = ( __decorate([( __param(1, IConfigurationService))], IncrementalDOMMorpher));
169
+
170
+ export { IncrementalDOMMorpher };
@@ -0,0 +1,112 @@
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
+ /* ---- Smooth streaming block-level animations ---- */
7
+
8
+ /*
9
+ * Applied to newly inserted top-level children (paragraphs, code blocks,
10
+ * list items, etc.) as a post-processing decoration after they have been
11
+ * correctly rendered through the standard markdown pipeline.
12
+ *
13
+ * Each new child receives a staggered animation-delay so the batch
14
+ * reveals sequentially from top to bottom. Animating individual
15
+ * children (rather than wrapping them in a container div) avoids
16
+ * margin-collapsing changes that cause layout shifts during scrolling.
17
+ *
18
+ * The animation class and custom properties are removed after completion
19
+ * via an `animationend` listener in the renderer.
20
+ */
21
+
22
+ /* ---- fade (default) ---- */
23
+ .chat-smooth-animate-fade {
24
+ opacity: 0;
25
+ animation: chatSmoothFade var(--chat-smooth-duration, 600ms) ease-out var(--chat-smooth-delay, 0ms) forwards;
26
+ }
27
+ @keyframes chatSmoothFade {
28
+ from { opacity: 0; }
29
+ to { opacity: 1; }
30
+ }
31
+
32
+ /* ---- rise ---- */
33
+ .chat-smooth-animate-rise {
34
+ opacity: 0;
35
+ transform: translateY(4px);
36
+ animation: chatSmoothRise var(--chat-smooth-duration, 600ms) cubic-bezier(0.0, 0.0, 0.2, 1) var(--chat-smooth-delay, 0ms) forwards;
37
+ }
38
+ @keyframes chatSmoothRise {
39
+ from { opacity: 0; transform: translateY(4px); }
40
+ to { opacity: 1; transform: translateY(0); }
41
+ }
42
+
43
+ /* ---- blur ---- */
44
+ .chat-smooth-animate-blur {
45
+ opacity: 0;
46
+ filter: blur(2px);
47
+ animation: chatSmoothBlur var(--chat-smooth-duration, 600ms) cubic-bezier(0.0, 0.0, 0.2, 1) var(--chat-smooth-delay, 0ms) forwards;
48
+ }
49
+ @keyframes chatSmoothBlur {
50
+ from { opacity: 0; filter: blur(2px); }
51
+ to { opacity: 1; filter: blur(0); }
52
+ }
53
+
54
+ /* ---- scale ---- */
55
+ .chat-smooth-animate-scale {
56
+ opacity: 0;
57
+ transform: scale(0.95);
58
+ animation: chatSmoothScale var(--chat-smooth-duration, 600ms) cubic-bezier(0.0, 0.0, 0.2, 1) var(--chat-smooth-delay, 0ms) forwards;
59
+ }
60
+ @keyframes chatSmoothScale {
61
+ from { opacity: 0; transform: scale(0.95); }
62
+ to { opacity: 1; transform: scale(1); }
63
+ }
64
+
65
+ /* ---- slide ---- */
66
+ .chat-smooth-animate-slide {
67
+ opacity: 0;
68
+ transform: translateX(-4px);
69
+ animation: chatSmoothSlide var(--chat-smooth-duration, 600ms) cubic-bezier(0.0, 0.0, 0.2, 1) var(--chat-smooth-delay, 0ms) forwards;
70
+ }
71
+ @keyframes chatSmoothSlide {
72
+ from { opacity: 0; transform: translateX(-4px); }
73
+ to { opacity: 1; transform: translateX(0); }
74
+ }
75
+
76
+ /* ---- reveal ---- */
77
+ .chat-smooth-animate-reveal {
78
+ -webkit-mask-image: linear-gradient(to bottom, black calc(100% - 48px), transparent);
79
+ mask-image: linear-gradient(to bottom, black calc(100% - 48px), transparent);
80
+ -webkit-mask-size: 100% 0%;
81
+ mask-size: 100% 0%;
82
+ -webkit-mask-repeat: no-repeat;
83
+ mask-repeat: no-repeat;
84
+ animation: chatSmoothReveal var(--chat-smooth-duration, 600ms) cubic-bezier(0.0, 0.0, 0.2, 1) var(--chat-smooth-delay, 0ms) forwards;
85
+ }
86
+ @keyframes chatSmoothReveal {
87
+ from {
88
+ -webkit-mask-size: 100% 0%;
89
+ mask-size: 100% 0%;
90
+ }
91
+ to {
92
+ -webkit-mask-size: 100% calc(100% + 48px);
93
+ mask-size: 100% calc(100% + 48px);
94
+ }
95
+ }
96
+
97
+ /* ---- Respect prefers-reduced-motion ---- */
98
+ @media (prefers-reduced-motion: reduce) {
99
+ .chat-smooth-animate-fade,
100
+ .chat-smooth-animate-rise,
101
+ .chat-smooth-animate-blur,
102
+ .chat-smooth-animate-scale,
103
+ .chat-smooth-animate-slide,
104
+ .chat-smooth-animate-reveal {
105
+ animation: none !important;
106
+ opacity: 1 !important;
107
+ transform: none !important;
108
+ filter: none !important;
109
+ -webkit-mask-image: none !important;
110
+ mask-image: none !important;
111
+ }
112
+ }
@@ -13,6 +13,7 @@ import { ILabelService } from "@codingame/monaco-vscode-api/vscode/vs/platform/l
13
13
  import { IOpenerService } from "@codingame/monaco-vscode-api/vscode/vs/platform/opener/common/opener.service";
14
14
  import { ITelemetryService } from "@codingame/monaco-vscode-api/vscode/vs/platform/telemetry/common/telemetry.service";
15
15
  import { IThemeService } from "@codingame/monaco-vscode-api/vscode/vs/platform/theme/common/themeService.service";
16
+ import { IEditorService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorService.service";
16
17
  import { INotebookDocumentService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/notebook/common/notebookDocumentService.service";
17
18
  import { IWorkspaceSymbol } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/search/common/search";
18
19
  import { IChatContentInlineReference } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatService/chatService";
@@ -45,9 +46,10 @@ export declare class InlineAnchorWidget extends Disposable {
45
46
  private readonly configurationService;
46
47
  private readonly notebookDocumentService;
47
48
  private readonly openerService;
49
+ private readonly editorService;
48
50
  static readonly className = "chat-inline-anchor-widget";
49
51
  readonly data: ContentRefData;
50
- constructor(element: HTMLAnchorElement | HTMLElement, inlineReference: IChatContentInlineReference, metadata: InlineAnchorWidgetMetadata | undefined, chatImageCarouselService: IChatImageCarouselService, configurationService: IConfigurationService, originalContextKeyService: IContextKeyService, contextMenuService: IContextMenuService, fileService: IFileService, hoverService: IHoverService, instantiationService: IInstantiationService, labelService: ILabelService, languageService: ILanguageService, menuService: IMenuService, modelService: IModelService, telemetryService: ITelemetryService, themeService: IThemeService, notebookDocumentService: INotebookDocumentService, openerService: IOpenerService);
52
+ constructor(element: HTMLAnchorElement | HTMLElement, inlineReference: IChatContentInlineReference, metadata: InlineAnchorWidgetMetadata | undefined, chatImageCarouselService: IChatImageCarouselService, configurationService: IConfigurationService, originalContextKeyService: IContextKeyService, contextMenuService: IContextMenuService, fileService: IFileService, hoverService: IHoverService, instantiationService: IInstantiationService, labelService: ILabelService, languageService: ILanguageService, menuService: IMenuService, modelService: IModelService, telemetryService: ITelemetryService, themeService: IThemeService, notebookDocumentService: INotebookDocumentService, openerService: IOpenerService, editorService: IEditorService);
51
53
  getHTMLElement(): HTMLElement;
52
54
  private getCellIndex;
53
55
  }
@@ -47,6 +47,9 @@ import { IChatMarkdownAnchorService } from '@codingame/monaco-vscode-api/vscode/
47
47
  import { IConfigurationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/configuration/common/configuration.service';
48
48
  import { ChatConfiguration } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/constants';
49
49
  import { getMediaMime } from '@codingame/monaco-vscode-api/vscode/vs/base/common/mime';
50
+ import { Schemas } from '@codingame/monaco-vscode-api/vscode/vs/base/common/network';
51
+ import { Codicon } from '@codingame/monaco-vscode-api/vscode/vs/base/common/codicons';
52
+ import { BrowserEditorInput } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/browserView/common/browserEditorInput';
50
53
 
51
54
  var InlineAnchorWidget_1;
52
55
  registerCss(chatInlineAnchorWidget);
@@ -126,7 +129,8 @@ let InlineAnchorWidget = class InlineAnchorWidget extends Disposable {
126
129
  telemetryService,
127
130
  themeService,
128
131
  notebookDocumentService,
129
- openerService
132
+ openerService,
133
+ editorService
130
134
  ) {
131
135
  super();
132
136
  this.element = element;
@@ -136,6 +140,7 @@ let InlineAnchorWidget = class InlineAnchorWidget extends Disposable {
136
140
  this.configurationService = configurationService;
137
141
  this.notebookDocumentService = notebookDocumentService;
138
142
  this.openerService = openerService;
143
+ this.editorService = editorService;
139
144
  this.data = "uri" in inlineReference.inlineReference ? inlineReference.inlineReference : "name" in inlineReference.inlineReference ? {
140
145
  kind: "symbol",
141
146
  symbol: inlineReference.inlineReference
@@ -167,11 +172,16 @@ let InlineAnchorWidget = class InlineAnchorWidget extends Disposable {
167
172
  } else {
168
173
  location = this.data;
169
174
  const filePathLabel = this.metadata?.linkText ?? labelService.getUriBasenameLabel(location.uri);
175
+ let defaultIcon;
170
176
  if (location.range && this.data.kind !== "symbol") {
171
177
  const suffix = location.range.startLineNumber === location.range.endLineNumber ? `:${location.range.startLineNumber}` : `:${location.range.startLineNumber}-${location.range.endLineNumber}`;
172
178
  iconText = [filePathLabel, $("span.label-suffix", undefined, suffix)];
173
179
  } else if (location.uri.scheme === "vscode-notebook-cell" && this.data.kind !== "symbol") {
174
180
  iconText = [`${filePathLabel} • cell${this.getCellIndex(location.uri)}`];
181
+ } else if (location.uri.scheme === Schemas.vscodeBrowser) {
182
+ defaultIcon = Codicon.globe;
183
+ const editorName = this.editorService.findEditors(location.uri)[0]?.editor?.getName() ?? BrowserEditorInput.DEFAULT_LABEL;
184
+ iconText = [editorName];
175
185
  } else {
176
186
  iconText = [filePathLabel];
177
187
  }
@@ -181,7 +191,7 @@ let InlineAnchorWidget = class InlineAnchorWidget extends Disposable {
181
191
  languageService,
182
192
  location.uri,
183
193
  fileKind,
184
- fileKind === FileKind.FOLDER && !themeService.getFileIconTheme().hasFolderIcons ? FolderThemeIcon : undefined
194
+ fileKind === FileKind.FOLDER && !themeService.getFileIconTheme().hasFolderIcons ? FolderThemeIcon : defaultIcon
185
195
  );
186
196
  iconClasses = recomputeIconClasses();
187
197
  const refreshIconClasses = () => {
@@ -236,10 +246,10 @@ let InlineAnchorWidget = class InlineAnchorWidget extends Disposable {
236
246
  );
237
247
  if (location.range) {
238
248
  if (location.range.startLineNumber === location.range.endLineNumber) {
239
- element.setAttribute("aria-label", ( localize(6734, "{0} line {1}", filePathLabel, location.range.startLineNumber)));
249
+ element.setAttribute("aria-label", ( localize(6820, "{0} line {1}", filePathLabel, location.range.startLineNumber)));
240
250
  } else {
241
251
  element.setAttribute("aria-label", ( localize(
242
- 6735,
252
+ 6821,
243
253
  "{0} lines {1} to {2}",
244
254
  filePathLabel,
245
255
  location.range.startLineNumber,
@@ -301,7 +311,7 @@ let InlineAnchorWidget = class InlineAnchorWidget extends Disposable {
301
311
  return index >= 0 ? ` ${index + 1}` : "";
302
312
  }
303
313
  };
304
- InlineAnchorWidget = InlineAnchorWidget_1 = ( __decorate([( __param(3, IChatImageCarouselService)), ( __param(4, IConfigurationService)), ( __param(5, IContextKeyService)), ( __param(6, IContextMenuService)), ( __param(7, IFileService)), ( __param(8, IHoverService)), ( __param(9, IInstantiationService)), ( __param(10, ILabelService)), ( __param(11, ILanguageService)), ( __param(12, IMenuService)), ( __param(13, IModelService)), ( __param(14, ITelemetryService)), ( __param(15, IThemeService)), ( __param(16, INotebookDocumentService)), ( __param(17, IOpenerService))], InlineAnchorWidget));
314
+ InlineAnchorWidget = InlineAnchorWidget_1 = ( __decorate([( __param(3, IChatImageCarouselService)), ( __param(4, IConfigurationService)), ( __param(5, IContextKeyService)), ( __param(6, IContextMenuService)), ( __param(7, IFileService)), ( __param(8, IHoverService)), ( __param(9, IInstantiationService)), ( __param(10, ILabelService)), ( __param(11, ILanguageService)), ( __param(12, IMenuService)), ( __param(13, IModelService)), ( __param(14, ITelemetryService)), ( __param(15, IThemeService)), ( __param(16, INotebookDocumentService)), ( __param(17, IOpenerService)), ( __param(18, IEditorService))], InlineAnchorWidget));
305
315
  registerAction2(class AddFileToChatAction extends Action2 {
306
316
  static {
307
317
  this.id = "chat.inlineResourceAnchor.addFileToChat";
@@ -309,7 +319,7 @@ registerAction2(class AddFileToChatAction extends Action2 {
309
319
  constructor() {
310
320
  super({
311
321
  id: AddFileToChatAction.id,
312
- title: ( localize2(6736, "Add File to Chat")),
322
+ title: ( localize2(6822, "Add File to Chat")),
313
323
  menu: [{
314
324
  id: MenuId.ChatInlineResourceAnchorContext,
315
325
  group: "chat",
@@ -333,7 +343,7 @@ registerAction2(class CopyResourceAction extends Action2 {
333
343
  constructor() {
334
344
  super({
335
345
  id: CopyResourceAction.id,
336
- title: ( localize2(6737, "Copy")),
346
+ title: ( localize2(6823, "Copy")),
337
347
  f1: false,
338
348
  precondition: chatAttachmentResourceContextKey,
339
349
  keybinding: {
@@ -360,7 +370,7 @@ registerAction2(class OpenToSideResourceAction extends Action2 {
360
370
  constructor() {
361
371
  super({
362
372
  id: OpenToSideResourceAction.id,
363
- title: ( localize2(6738, "Open to the Side")),
373
+ title: ( localize2(6824, "Open to the Side")),
364
374
  f1: false,
365
375
  precondition: chatAttachmentResourceContextKey,
366
376
  keybinding: {
@@ -426,8 +436,8 @@ registerAction2(class GoToDefinitionAction extends Action2 {
426
436
  super({
427
437
  id: GoToDefinitionAction.id,
428
438
  title: {
429
- ...( localize2(6739, "Go to Definition")),
430
- mnemonicTitle: ( localize(6740, "Go to &&Definition"))
439
+ ...( localize2(6825, "Go to Definition")),
440
+ mnemonicTitle: ( localize(6826, "Go to &&Definition"))
431
441
  },
432
442
  menu: ( [
433
443
  MenuId.ChatInlineSymbolAnchorContext,
@@ -484,8 +494,8 @@ registerAction2(class GoToTypeDefinitionsAction extends Action2 {
484
494
  super({
485
495
  id: GoToTypeDefinitionsAction.id,
486
496
  title: {
487
- ...( localize2(6741, "Go to Type Definitions")),
488
- mnemonicTitle: ( localize(6742, "Go to &&Type Definitions"))
497
+ ...( localize2(6827, "Go to Type Definitions")),
498
+ mnemonicTitle: ( localize(6828, "Go to &&Type Definitions"))
489
499
  },
490
500
  menu: ( [
491
501
  MenuId.ChatInlineSymbolAnchorContext,
@@ -510,8 +520,8 @@ registerAction2(class GoToImplementations extends Action2 {
510
520
  super({
511
521
  id: GoToImplementations.id,
512
522
  title: {
513
- ...( localize2(6743, "Go to Implementations")),
514
- mnemonicTitle: ( localize(6744, "Go to &&Implementations"))
523
+ ...( localize2(6829, "Go to Implementations")),
524
+ mnemonicTitle: ( localize(6830, "Go to &&Implementations"))
515
525
  },
516
526
  menu: ( [
517
527
  MenuId.ChatInlineSymbolAnchorContext,
@@ -536,8 +546,8 @@ registerAction2(class GoToReferencesAction extends Action2 {
536
546
  super({
537
547
  id: GoToReferencesAction.id,
538
548
  title: {
539
- ...( localize2(6745, "Go to References")),
540
- mnemonicTitle: ( localize(6746, "Go to &&References"))
549
+ ...( localize2(6831, "Go to References")),
550
+ mnemonicTitle: ( localize(6832, "Go to &&References"))
541
551
  },
542
552
  menu: ( [
543
553
  MenuId.ChatInlineSymbolAnchorContext,
@@ -4,7 +4,6 @@ import { Event } from "@codingame/monaco-vscode-api/vscode/vs/base/common/event"
4
4
  import { URI } from "@codingame/monaco-vscode-api/vscode/vs/base/common/uri";
5
5
  import { ILanguageService } from "@codingame/monaco-vscode-api/vscode/vs/editor/common/languages/language.service";
6
6
  import { IModelService } from "@codingame/monaco-vscode-api/vscode/vs/editor/common/services/model.service";
7
- import { ITextModelService } from "@codingame/monaco-vscode-api/vscode/vs/editor/common/services/resolverService.service";
8
7
  import { IMenuService } from "@codingame/monaco-vscode-api/vscode/vs/platform/actions/common/actions.service";
9
8
  import { IConfigurationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/configuration/common/configuration.service";
10
9
  import { IContextKeyService } from "@codingame/monaco-vscode-api/vscode/vs/platform/contextkey/common/contextkey.service";
@@ -19,7 +18,6 @@ import { IEditSessionDiffStats, IEditSessionEntryDiff } from "@codingame/monaco-
19
18
  import { IChatProgressRenderableResponseContent } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/model/chatModel";
20
19
  import { IChatMarkdownContent } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatService/chatService";
21
20
  import { IChatService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatService/chatService.service";
22
- import { CodeBlockModelCollection } from "../../../common/widget/codeBlockModelCollection.js";
23
21
  import { IChatCodeBlockInfo } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chat";
24
22
  import { ICodeBlockRenderOptions } from "./codeBlockPart.js";
25
23
  import { EditorPool } from "./chatContentCodePools.js";
@@ -37,11 +35,9 @@ export interface IChatMarkdownContentPartOptions {
37
35
  };
38
36
  }
39
37
  export declare class ChatMarkdownContentPart extends Disposable implements IChatContentPart {
40
- private readonly markdown;
38
+ private markdown;
41
39
  private readonly editorPool;
42
- private readonly codeBlockModelCollection;
43
40
  private readonly rendererOptions;
44
- private readonly textModelService;
45
41
  private readonly instantiationService;
46
42
  private readonly aiEditTelemetryService;
47
43
  private static ID_POOL;
@@ -59,12 +55,34 @@ export declare class ChatMarkdownContentPart extends Disposable implements IChat
59
55
  private readonly _codeblocks;
60
56
  get codeblocks(): IChatCodeBlockInfo[];
61
57
  private readonly mathLayoutParticipants;
62
- constructor(markdown: IChatMarkdownContent, context: IChatContentPartRenderContext, editorPool: EditorPool, fillInIncompleteTokens: boolean | undefined, codeBlockStartIndex: number | undefined, renderer: IMarkdownRenderer, markdownRenderOptions: MarkdownRenderOptions | undefined, currentWidth: number, codeBlockModelCollection: CodeBlockModelCollection, rendererOptions: IChatMarkdownContentPartOptions, contextKeyService: IContextKeyService, configurationService: IConfigurationService, textModelService: ITextModelService, instantiationService: IInstantiationService, aiEditTelemetryService: IAiEditTelemetryService);
58
+ /** Incremental rendering morpher only created when the experiment is enabled. */
59
+ private _incrementalMorpher;
60
+ constructor(markdown: IChatMarkdownContent, context: IChatContentPartRenderContext, editorPool: EditorPool, fillInIncompleteTokens: boolean | undefined, codeBlockStartIndex: number | undefined, renderer: IMarkdownRenderer, markdownRenderOptions: MarkdownRenderOptions | undefined, currentWidth: number, rendererOptions: IChatMarkdownContentPartOptions, contextKeyService: IContextKeyService, configurationService: IConfigurationService, instantiationService: IInstantiationService, aiEditTelemetryService: IAiEditTelemetryService);
63
61
  dispose(): void;
64
62
  private renderCodeBlockPill;
65
63
  private fireAggregatedDiff;
66
64
  private renderCodeBlock;
67
65
  hasSameContent(other: IChatProgressRenderableResponseContent): boolean;
66
+ /**
67
+ * Attempts an incremental DOM update for smooth streaming instead of
68
+ * tearing down and rebuilding the entire markdown part.
69
+ *
70
+ * The morpher checks that the new content is a pure append, then
71
+ * schedules a rAF-batched re-render through the full markdown
72
+ * pipeline. Code blocks, tables, and all markdown features are
73
+ * rendered correctly because the update goes through the standard
74
+ * `doRenderMarkdown()` path.
75
+ *
76
+ * @param newMarkdown The new (appended) markdown content.
77
+ * @returns `true` if the incremental update succeeded and the caller
78
+ * should treat this part as unchanged. `false` if a full
79
+ * re-render is needed.
80
+ */
81
+ tryIncrementalUpdate(newMarkdown: IChatMarkdownContent): boolean;
82
+ /**
83
+ * Forward the stream's word-rate estimate to the morpher's buffer.
84
+ */
85
+ updateStreamRate(rate: number, isComplete: boolean): void;
68
86
  layout(width: number): void;
69
87
  onDidRemount(): void;
70
88
  addDisposable(disposable: IDisposable): void;