@codingame/monaco-vscode-katex-common 31.0.1 → 32.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (220) hide show
  1. package/package.json +2 -2
  2. package/vscode/src/vs/platform/actionWidget/browser/actionWidgetDropdown.d.ts +15 -3
  3. package/vscode/src/vs/platform/actionWidget/browser/actionWidgetDropdown.js +6 -5
  4. package/vscode/src/vs/platform/actions/browser/buttonbar.d.ts +5 -1
  5. package/vscode/src/vs/platform/actions/browser/buttonbar.js +45 -14
  6. package/vscode/src/vs/platform/sandbox/common/terminalSandboxService.d.ts +15 -1
  7. package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatAccessibilityProvider.js +16 -16
  8. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContinueInAction.js +15 -10
  9. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatElicitationActions.js +1 -1
  10. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatExecuteActions.js +51 -54
  11. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatTitleActions.js +10 -10
  12. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolActions.js +11 -11
  13. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolPicker.js +13 -13
  14. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionHoverWidget.d.ts +3 -1
  15. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionHoverWidget.js +45 -23
  16. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsControl.js +13 -7
  17. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsFilter.js +9 -9
  18. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsOpener.js +5 -3
  19. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsViewer.d.ts +4 -1
  20. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsViewer.js +46 -32
  21. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentModel.js +8 -0
  22. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentWidgets.d.ts +23 -1
  23. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentWidgets.js +155 -46
  24. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatImplicitContext.d.ts +1 -0
  25. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatImplicitContext.js +20 -1
  26. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/implicitContextAttachment.d.ts +4 -1
  27. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/implicitContextAttachment.js +37 -14
  28. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingActions.js +34 -34
  29. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessionPickerActionItem.js +1 -1
  30. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/media/chatSessionPickerActionItem.css +1 -0
  31. package/vscode/src/vs/workbench/contrib/chat/browser/tools/chatToolRiskAssessmentService.d.ts +28 -0
  32. package/vscode/src/vs/workbench/contrib/chat/browser/tools/chatToolRiskAssessmentService.js +250 -0
  33. package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolSetsContribution.js +13 -13
  34. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatAgentHover.js +14 -11
  35. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatArtifactsWidget.js +10 -10
  36. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAgentCommandContentPart.js +1 -1
  37. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAnonymousRateLimitedPart.js +2 -2
  38. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAttachmentsContentPart.js +7 -2
  39. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatChangesSummaryPart.js +1 -1
  40. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCodeCitationContentPart.js +1 -1
  41. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCommandContentPart.js +1 -1
  42. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatConfirmationContentPart.js +7 -3
  43. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatConfirmationWidget.d.ts +12 -2
  44. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatConfirmationWidget.js +51 -20
  45. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatDisabledClaudeHooksContentPart.js +3 -3
  46. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatElicitationContentPart.d.ts +6 -1
  47. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatElicitationContentPart.js +56 -3
  48. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatExtensionsContentPart.js +1 -1
  49. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatHookContentPart.js +1 -1
  50. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/buffers/paragraphBuffer.d.ts +1 -1
  51. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/buffers/paragraphBuffer.js +2 -2
  52. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/chatIncrementalRendering.d.ts +3 -1
  53. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatIncrementalRendering/chatIncrementalRendering.js +4 -0
  54. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatInlineAnchorWidget.js +13 -13
  55. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMarkdownContentPart.js +68 -10
  56. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMcpServersInteractionContentPart.js +8 -8
  57. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMultiDiffContentPart.js +4 -4
  58. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatPlanReviewPart.d.ts +58 -2
  59. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatPlanReviewPart.js +653 -75
  60. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatProgressContentPart.js +28 -10
  61. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatQuestionCarouselPart.d.ts +5 -1
  62. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatQuestionCarouselPart.js +91 -54
  63. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatQuotaExceededPart.js +7 -5
  64. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatReferencesContentPart.js +53 -51
  65. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatResourceGroupWidget.js +5 -5
  66. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatSubagentContentPart.js +11 -11
  67. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatSuggestNextWidget.js +6 -6
  68. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTextEditContentPart.js +1 -1
  69. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatThinkingContentPart.d.ts +4 -1
  70. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatThinkingContentPart.js +42 -22
  71. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTipContentPart.js +9 -9
  72. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTodoListWidget.js +17 -17
  73. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatToolInputOutputContentPart.js +2 -2
  74. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTreeContentPart.js +1 -1
  75. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatWorkspaceEditContentPart.js +3 -3
  76. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/codeBlockPart.d.ts +6 -2
  77. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/codeBlockPart.js +93 -35
  78. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatConfirmationWidget.css +5 -0
  79. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatPlanReview.css +169 -27
  80. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatQuestionCarousel.css +13 -4
  81. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatThinkingContent.css +1 -1
  82. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatToolConfirmationCarousel.css +29 -0
  83. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/abstractToolConfirmationSubPart.d.ts +1 -0
  84. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/abstractToolConfirmationSubPart.js +60 -15
  85. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatExtensionsInstallToolSubPart.js +13 -6
  86. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatMcpAppModel.js +1 -1
  87. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatMcpAppSubPart.js +3 -3
  88. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatMissingSandboxDepsConfirmationSubPart.js +2 -2
  89. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatModifiedFilesConfirmationSubPart.js +15 -8
  90. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolConfirmationSubPart.d.ts +6 -1
  91. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolConfirmationSubPart.js +125 -26
  92. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolProgressPart.d.ts +2 -1
  93. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolProgressPart.js +29 -23
  94. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolConfirmationCarouselPart.d.ts +14 -0
  95. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolConfirmationCarouselPart.js +119 -10
  96. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolConfirmationSubPart.js +6 -6
  97. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolInvocationPart.js +1 -1
  98. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolOutputPart.js +2 -2
  99. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolPartUtilities.js +5 -5
  100. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolPostExecuteConfirmationPart.js +5 -5
  101. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/media/toolRiskBadge.css +77 -0
  102. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/toolRiskBadgeWidget.d.ts +38 -0
  103. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/toolRiskBadgeWidget.js +125 -0
  104. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatDragAndDrop.js +11 -11
  105. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatListRenderer.d.ts +1 -0
  106. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatListRenderer.js +132 -59
  107. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatWidget.d.ts +16 -3
  108. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatWidget.js +156 -67
  109. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatFollowups.js +1 -1
  110. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputNotificationService.d.ts +55 -0
  111. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputNotificationService.js +93 -0
  112. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputNotificationWidget.d.ts +21 -0
  113. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputNotificationWidget.js +133 -0
  114. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputPart.d.ts +53 -8
  115. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputPart.js +288 -125
  116. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelPicker.d.ts +23 -2
  117. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelPicker.js +699 -145
  118. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelSelectionLogic.d.ts +12 -8
  119. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelSelectionLogic.js +12 -11
  120. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatPhoneInputPresenter.d.ts +62 -0
  121. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatPhoneInputPresenter.js +120 -0
  122. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/delegationSessionPickerActionItem.js +5 -5
  123. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/media/chatInputNotificationWidget.css +191 -0
  124. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/media/chatPhoneInputPresenter.css +22 -0
  125. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modePickerActionItem.d.ts +3 -3
  126. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modePickerActionItem.js +9 -25
  127. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPickerActionItem.js +4 -3
  128. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/permissionPickerActionItem.d.ts +20 -1
  129. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/permissionPickerActionItem.js +89 -108
  130. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/sessionTargetPickerActionItem.js +3 -3
  131. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/workspacePickerActionItem.js +3 -3
  132. package/vscode/src/vs/workbench/contrib/chat/browser/widget/media/chat.css +521 -9
  133. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatContextUsageDetails.js +7 -7
  134. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatContextUsageWidget.js +2 -2
  135. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/media/chatContextUsageDetails.css +19 -19
  136. package/vscode/src/vs/workbench/contrib/chat/common/chatImageExtraction.js +6 -6
  137. package/vscode/src/vs/workbench/contrib/chat/common/chatPermissionStorageKeys.d.ts +2 -0
  138. package/vscode/src/vs/workbench/contrib/chat/common/chatPermissionStorageKeys.js +6 -0
  139. package/vscode/src/vs/workbench/contrib/chat/common/chatPermissionWarnings.d.ts +27 -0
  140. package/vscode/src/vs/workbench/contrib/chat/common/chatPermissionWarnings.js +82 -0
  141. package/vscode/src/vs/workbench/contrib/chat/common/widget/chatColors.d.ts +3 -0
  142. package/vscode/src/vs/workbench/contrib/chat/common/widget/chatColors.js +44 -17
  143. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatAffordance.d.ts +1 -3
  144. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatAffordance.js +3 -46
  145. package/vscode/src/vs/workbench/contrib/inlineChat/browser/{inlineChatEditorAffordance.d.ts → inlineChatAffordanceWidget.d.ts} +1 -1
  146. package/vscode/src/vs/workbench/contrib/inlineChat/browser/{inlineChatEditorAffordance.js → inlineChatAffordanceWidget.js} +6 -6
  147. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatController.d.ts +2 -18
  148. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatController.js +19 -400
  149. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionService.d.ts +4 -9
  150. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionService.js +1 -1
  151. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatWidget.d.ts +5 -19
  152. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatWidget.js +47 -133
  153. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatZoneWidget.d.ts +3 -1
  154. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatZoneWidget.js +103 -25
  155. package/vscode/src/vs/workbench/contrib/inlineChat/browser/media/inlineChat.css +29 -0
  156. package/vscode/src/vs/workbench/contrib/inlineChat/common/inlineChat.d.ts +3 -32
  157. package/vscode/src/vs/workbench/contrib/inlineChat/common/inlineChat.js +39 -92
  158. package/vscode/src/vs/workbench/contrib/interactive/browser/replInputHintContentWidget.js +3 -3
  159. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellStatusBar/executionStatusBarItemController.js +7 -7
  160. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/notebookFindWidget.js +2 -2
  161. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/cellOperations.js +2 -2
  162. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/insertCellActions.js +24 -24
  163. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffComponents.js +3 -3
  164. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffElementOutputs.js +7 -7
  165. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffEditor.js +1 -1
  166. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffEditorBrowser.js +5 -5
  167. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffList.js +1 -1
  168. package/vscode/src/vs/workbench/contrib/replNotebook/browser/replEditor.js +1 -1
  169. package/vscode/src/vs/workbench/contrib/replNotebook/browser/replEditorInput.js +1 -1
  170. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/basicExecuteStrategy.d.ts +7 -0
  171. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/basicExecuteStrategy.js +99 -32
  172. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/executeStrategy.d.ts +13 -1
  173. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/executeStrategy.js +76 -14
  174. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/noneExecuteStrategy.js +4 -3
  175. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/richExecuteStrategy.d.ts +9 -1
  176. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/richExecuteStrategy.js +89 -28
  177. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/outputHelpers.js +1 -1
  178. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.d.ts +11 -1
  179. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.js +11 -7
  180. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalToolTelemetry.d.ts +3 -1
  181. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalToolTelemetry.js +7 -3
  182. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/autoApprove/commandLineAutoApprover.js +1 -1
  183. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/autoApprove/npmScriptAutoApprover.js +1 -1
  184. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAnalyzer.d.ts +1 -0
  185. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAutoApproveAnalyzer.js +12 -12
  186. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineFileWriteAnalyzer.d.ts +8 -0
  187. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineFileWriteAnalyzer.js +11 -2
  188. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineBackgroundDetachRewriter.d.ts +20 -0
  189. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineBackgroundDetachRewriter.js +59 -4
  190. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineSandboxRewriter.d.ts +8 -1
  191. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineSandboxRewriter.js +24 -3
  192. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.d.ts +47 -0
  193. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.js +111 -30
  194. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.d.ts +60 -3
  195. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.js +455 -171
  196. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/treeSitterCommandParser.d.ts +33 -0
  197. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/treeSitterCommandParser.js +82 -0
  198. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxCommandRules.d.ts +31 -0
  199. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxCommandRules.js +49 -0
  200. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxReadAllowList.d.ts +18 -0
  201. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxReadAllowList.js +302 -0
  202. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxRuntimeConfigurationPerOperation.d.ts +7 -0
  203. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxRuntimeConfigurationPerOperation.js +118 -0
  204. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxService.d.ts +34 -4
  205. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxService.js +233 -48
  206. package/vscode/src/vs/platform/actions/browser/actionbar.d.ts +0 -16
  207. package/vscode/src/vs/platform/actions/browser/actionbar.js +0 -22
  208. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorActions.d.ts +0 -46
  209. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorActions.js +0 -539
  210. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorOverlay.d.ts +0 -29
  211. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorOverlay.js +0 -386
  212. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingExplanationWidget.d.ts +0 -101
  213. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingExplanationWidget.js +0 -509
  214. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/media/chatEditingEditorOverlay.css +0 -130
  215. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/media/chatEditingExplanationWidget.css +0 -276
  216. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputPartWidgets.d.ts +0 -45
  217. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputPartWidgets.js +0 -93
  218. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatOverlayWidget.d.ts +0 -39
  219. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatOverlayWidget.js +0 -617
  220. package/vscode/src/vs/workbench/contrib/inlineChat/browser/media/inlineChatOverlayWidget.css +0 -231
@@ -56,7 +56,7 @@ class TodoListRenderer {
56
56
  statusIcon.style.color = this.getStatusIconColor(todo.status);
57
57
  iconLabel.setLabel(todo.title);
58
58
  const statusText = this.getStatusText(todo.status);
59
- const ariaLabel = ( localize(6990, "{0}, {1}", todo.title, statusText));
59
+ const ariaLabel = ( localize(7272, "{0}, {1}", todo.title, statusText));
60
60
  todoElement.setAttribute("aria-label", ariaLabel);
61
61
  }
62
62
  disposeTemplate(templateData) {
@@ -65,12 +65,12 @@ class TodoListRenderer {
65
65
  getStatusText(status) {
66
66
  switch (status) {
67
67
  case "completed":
68
- return localize(6991, "completed");
68
+ return localize(7273, "completed");
69
69
  case "in-progress":
70
- return localize(6992, "in progress");
70
+ return localize(7274, "in progress");
71
71
  case "not-started":
72
72
  default:
73
- return localize(6993, "not started");
73
+ return localize(7275, "not started");
74
74
  }
75
75
  }
76
76
  getStatusIconClass(status) {
@@ -142,7 +142,7 @@ let ChatTodoListWidget = class ChatTodoListWidget extends Disposable {
142
142
  this.expandIcon.setAttribute("aria-hidden", "true");
143
143
  this.titleElement = $(".todo-list-title");
144
144
  this.titleElement.id = "todo-list-title";
145
- this.titleElement.textContent = ( localize(6994, "Todos"));
145
+ this.titleElement.textContent = ( localize(7276, "Todos"));
146
146
  this.clearButtonContainer = $(".todo-clear-button-container");
147
147
  this.createClearButton();
148
148
  titleSection.appendChild(this.expandIcon);
@@ -164,7 +164,7 @@ let ChatTodoListWidget = class ChatTodoListWidget extends Disposable {
164
164
  createClearButton() {
165
165
  this.clearButton = ( new Button(this.clearButtonContainer, {
166
166
  supportIcons: true,
167
- ariaLabel: ( localize(6995, "Clear all todos"))
167
+ ariaLabel: ( localize(7277, "Clear all todos"))
168
168
  }));
169
169
  this.clearButton.element.tabIndex = 0;
170
170
  this.clearButton.icon = Codicon.clearAll;
@@ -249,9 +249,9 @@ let ChatTodoListWidget = class ChatTodoListWidget extends Disposable {
249
249
  accessibilityProvider: {
250
250
  getAriaLabel: todo => {
251
251
  const statusText = this.getStatusText(todo.status);
252
- return localize(6990, "{0}, {1}", todo.title, statusText);
252
+ return localize(7272, "{0}, {1}", todo.title, statusText);
253
253
  },
254
- getWidgetAriaLabel: () => ( localize(6996, "Chat Todo List"))
254
+ getWidgetAriaLabel: () => ( localize(7278, "Chat Todo List"))
255
255
  }
256
256
  }
257
257
  ));
@@ -307,9 +307,9 @@ let ChatTodoListWidget = class ChatTodoListWidget extends Disposable {
307
307
  const shouldDisable = isRequestInProgress && hasInProgressTask;
308
308
  this.clearButton.enabled = !shouldDisable;
309
309
  if (shouldDisable) {
310
- this.clearButton.setTitle(( localize(6997, "Cannot clear todos while a task is in progress")));
310
+ this.clearButton.setTitle(( localize(7279, "Cannot clear todos while a task is in progress")));
311
311
  } else {
312
- this.clearButton.setTitle(( localize(6995, "Clear all todos")));
312
+ this.clearButton.setTitle(( localize(7277, "Clear all todos")));
313
313
  }
314
314
  }
315
315
  updateTitleElement(titleElement, todoList) {
@@ -321,12 +321,12 @@ let ChatTodoListWidget = class ChatTodoListWidget extends Disposable {
321
321
  const notStartedTodos = todoList.filter(todo => todo.status === "not-started");
322
322
  const firstNotStartedTodo = notStartedTodos.length > 0 ? notStartedTodos[0] : undefined;
323
323
  const currentTaskNumber = inProgressTodos.length > 0 ? completedCount + 1 : Math.max(1, completedCount);
324
- const expandButtonLabel = this._isExpanded ? ( localize(6998, "Collapse Todos")) : ( localize(6999, "Expand Todos"));
324
+ const expandButtonLabel = this._isExpanded ? ( localize(7280, "Collapse Todos")) : ( localize(7281, "Expand Todos"));
325
325
  this.expandoButton.element.setAttribute("aria-label", expandButtonLabel);
326
326
  this.expandoButton.element.setAttribute("aria-expanded", this._isExpanded ? "true" : "false");
327
327
  if (this._isExpanded) {
328
328
  const titleText = $("span");
329
- titleText.textContent = totalCount > 0 ? ( localize(7000, "Todos ({0}/{1})", currentTaskNumber, totalCount)) : ( localize(6994, "Todos"));
329
+ titleText.textContent = totalCount > 0 ? ( localize(7282, "Todos ({0}/{1})", currentTaskNumber, totalCount)) : ( localize(7276, "Todos"));
330
330
  titleElement.appendChild(titleText);
331
331
  } else {
332
332
  const todoToShow = firstInProgressTodo || firstNotStartedTodo;
@@ -343,7 +343,7 @@ let ChatTodoListWidget = class ChatTodoListWidget extends Disposable {
343
343
  icon.style.verticalAlign = "middle";
344
344
  titleElement.appendChild(icon);
345
345
  const todoText = $("span");
346
- todoText.textContent = ( localize(7001, "{0} ({1}/{2})", todoToShow.title, currentTaskNumber, totalCount));
346
+ todoText.textContent = ( localize(7283, "{0} ({1}/{2})", todoToShow.title, currentTaskNumber, totalCount));
347
347
  todoText.style.verticalAlign = "middle";
348
348
  todoText.style.overflow = "hidden";
349
349
  todoText.style.textOverflow = "ellipsis";
@@ -353,7 +353,7 @@ let ChatTodoListWidget = class ChatTodoListWidget extends Disposable {
353
353
  }
354
354
  else if (completedCount > 0 && completedCount === totalCount) {
355
355
  const doneText = $("span");
356
- doneText.textContent = ( localize(7000, "Todos ({0}/{1})", totalCount, totalCount));
356
+ doneText.textContent = ( localize(7282, "Todos ({0}/{1})", totalCount, totalCount));
357
357
  doneText.style.verticalAlign = "middle";
358
358
  titleElement.appendChild(doneText);
359
359
  }
@@ -362,12 +362,12 @@ let ChatTodoListWidget = class ChatTodoListWidget extends Disposable {
362
362
  getStatusText(status) {
363
363
  switch (status) {
364
364
  case "completed":
365
- return localize(6991, "completed");
365
+ return localize(7273, "completed");
366
366
  case "in-progress":
367
- return localize(6992, "in progress");
367
+ return localize(7274, "in progress");
368
368
  case "not-started":
369
369
  default:
370
- return localize(6993, "not started");
370
+ return localize(7275, "not started");
371
371
  }
372
372
  }
373
373
  };
@@ -143,13 +143,13 @@ let ChatCollapsibleInputOutputContentPart = class ChatCollapsibleInputOutputCont
143
143
  input,
144
144
  output
145
145
  } = this;
146
- contents.inputTitle.textContent = ( localize(7002, "Input"));
146
+ contents.inputTitle.textContent = ( localize(7284, "Input"));
147
147
  this.addCodeBlock(input, contents.input);
148
148
  if (!output) {
149
149
  contents.output.remove();
150
150
  contents.outputTitle.remove();
151
151
  } else {
152
- contents.outputTitle.textContent = ( localize(7003, "Output"));
152
+ contents.outputTitle.textContent = ( localize(7285, "Output"));
153
153
  const outputSubPart = this._register(
154
154
  this._instantiationService.createInstance(ChatToolOutputContentSubPart, this.context, output.parts)
155
155
  );
@@ -83,7 +83,7 @@ let TreePool = class TreePool extends Disposable {
83
83
  },
84
84
  accessibilityProvider: {
85
85
  getAriaLabel: element => element.label,
86
- getWidgetAriaLabel: () => ( localize(7004, "File Tree"))
86
+ getWidgetAriaLabel: () => ( localize(7286, "File Tree"))
87
87
  },
88
88
  alwaysConsumeMouseWheel: false
89
89
  }
@@ -45,15 +45,15 @@ let ChatWorkspaceEditContentPart = class ChatWorkspaceEditContentPart extends Di
45
45
  for (const edit of workspaceEdit.edits) {
46
46
  if (edit.oldResource && !edit.newResource) {
47
47
  renderEntry(( localize(
48
- 7005,
48
+ 7287,
49
49
  "Deleted `{0}`",
50
50
  this.labelService.getUriBasenameLabel(edit.oldResource)
51
51
  )), Codicon.trash);
52
52
  } else if (!edit.oldResource && edit.newResource) {
53
- renderEntry(( localize(7006, "Created []({0})", (edit.newResource.toString()))), Codicon.newFile);
53
+ renderEntry(( localize(7288, "Created []({0})", (edit.newResource.toString()))), Codicon.newFile);
54
54
  } else if (edit.oldResource && edit.newResource) {
55
55
  renderEntry(( localize(
56
- 7007,
56
+ 7289,
57
57
  "Renamed {0} to []({1})",
58
58
  this.labelService.getUriBasenameLabel(edit.oldResource),
59
59
  (edit.newResource.toString())
@@ -11,7 +11,6 @@ import { IModelService } from "@codingame/monaco-vscode-api/vscode/vs/editor/com
11
11
  import { ITextModelService } from "@codingame/monaco-vscode-api/vscode/vs/editor/common/services/resolverService.service";
12
12
  import { IAccessibilityService } from "@codingame/monaco-vscode-api/vscode/vs/platform/accessibility/common/accessibility.service";
13
13
  import { ILogService } from "@codingame/monaco-vscode-api/vscode/vs/platform/log/common/log.service";
14
- import { MenuWorkbenchToolBar } from "@codingame/monaco-vscode-api/vscode/vs/platform/actions/browser/toolbar";
15
14
  import { MenuId } from "@codingame/monaco-vscode-api/vscode/vs/platform/actions/common/actions";
16
15
  import { IConfigurationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/configuration/common/configuration.service";
17
16
  import { IContextKeyService } from "@codingame/monaco-vscode-api/vscode/vs/platform/contextkey/common/contextkey.service";
@@ -72,7 +71,10 @@ export declare class CodeBlockPart extends Disposable {
72
71
  */
73
72
  static poolKey(elementId: string, codeBlockIndex: number): string;
74
73
  readonly editor: CodeEditorWidget;
75
- protected readonly toolbar: MenuWorkbenchToolBar;
74
+ private toolbar;
75
+ private _toolbarFactory;
76
+ private _pendingToolbarAriaLabel;
77
+ private _pendingToolbarContext;
76
78
  private readonly contextKeyService;
77
79
  readonly element: HTMLElement;
78
80
  private readonly vulnsButton;
@@ -82,6 +84,7 @@ export declare class CodeBlockPart extends Disposable {
82
84
  private currentScrollWidth;
83
85
  private lastLayoutWidth;
84
86
  private _isHovered;
87
+ private _isDropdownVisible;
85
88
  private _toolbarElement;
86
89
  private isDisposed;
87
90
  private resourceContextKey;
@@ -92,6 +95,7 @@ export declare class CodeBlockPart extends Disposable {
92
95
  private createEditor;
93
96
  focus(): void;
94
97
  private updatePaddingForLayout;
98
+ private _ensureToolbar;
95
99
  private _configureForScreenReader;
96
100
  private getEditorOptionsFromConfig;
97
101
  layout(width?: number | undefined): void;
@@ -69,6 +69,7 @@ import { EditorContextKeys } from '@codingame/monaco-vscode-api/vscode/vs/editor
69
69
  registerCss(codeBlockPart);
70
70
  const $ = $$1;
71
71
  const defaultCodeblockPadding = 10;
72
+ const defaultChatScrollbarSize = 7;
72
73
  let CodeBlockPart = class CodeBlockPart extends Disposable {
73
74
  static poolKey(elementId, codeBlockIndex) {
74
75
  return `${elementId}/${codeBlockIndex}`;
@@ -103,6 +104,7 @@ let CodeBlockPart = class CodeBlockPart extends Disposable {
103
104
  this.textModelService = textModelService;
104
105
  this.currentScrollWidth = 0;
105
106
  this._isHovered = false;
107
+ this._isDropdownVisible = false;
106
108
  this.isDisposed = false;
107
109
  this.element = $(".interactive-result-code-block");
108
110
  this.resourceContextKey = instantiationService.createInstance(StaticResourceContextKey);
@@ -133,21 +135,20 @@ let CodeBlockPart = class CodeBlockPart extends Disposable {
133
135
  multipleDefinitions: "goto",
134
136
  multipleImplementations: "goto"
135
137
  },
136
- ariaLabel: ( localize(7008, "Code block")),
138
+ ariaLabel: ( localize(7290, "Code block")),
137
139
  overflowWidgetsDomNode,
138
140
  tabFocusMode: true,
139
141
  ...this.getEditorOptionsFromConfig()
140
142
  });
141
143
  const toolbarElement = append(this.element, $(".interactive-result-code-block-toolbar"));
144
+ this._toolbarElement = toolbarElement;
142
145
  const editorScopedService = this._register(this.editor.contextKeyService.createScoped(toolbarElement));
143
146
  const editorScopedInstantiationService = this._register(scopedInstantiationService.createChild(( new ServiceCollection([IContextKeyService, editorScopedService]))));
144
- this.toolbar = this._register(
145
- editorScopedInstantiationService.createInstance(MenuWorkbenchToolBar, toolbarElement, menuId, {
146
- menuOptions: {
147
- shouldForwardArgs: true
148
- }
149
- })
150
- );
147
+ this._toolbarFactory = () => editorScopedInstantiationService.createInstance(MenuWorkbenchToolBar, toolbarElement, menuId, {
148
+ menuOptions: {
149
+ shouldForwardArgs: true
150
+ }
151
+ });
151
152
  const vulnsContainer = append(this.element, $(".interactive-result-vulns"));
152
153
  const vulnsHeaderElement = append(vulnsContainer, $(".interactive-result-vulns-header", undefined));
153
154
  this.vulnsButton = this._register(( new Button(vulnsHeaderElement, {
@@ -169,23 +170,18 @@ let CodeBlockPart = class CodeBlockPart extends Disposable {
169
170
  this.element.classList.toggle("chat-vulnerabilities-collapsed", !element.vulnerabilitiesListExpanded);
170
171
  this.layout();
171
172
  }));
172
- let isDropdownVisible = false;
173
- this._register(this.toolbar.onDidChangeDropdownVisibility(e => {
174
- isDropdownVisible = e;
175
- toolbarElement.classList.toggle("force-visibility", e || this._isHovered);
176
- }));
177
173
  this._isHovered = false;
178
174
  this._register(addDisposableListener(this.element, "mouseenter", () => {
179
175
  this._isHovered = true;
180
176
  toolbarElement.classList.add("force-visibility");
177
+ this._ensureToolbar();
181
178
  }));
182
179
  this._register(addDisposableListener(this.element, "mouseleave", () => {
183
180
  this._isHovered = false;
184
- if (!isDropdownVisible) {
181
+ if (!this._isDropdownVisible) {
185
182
  toolbarElement.classList.remove("force-visibility");
186
183
  }
187
184
  }));
188
- this._toolbarElement = toolbarElement;
189
185
  this._configureForScreenReader();
190
186
  this._register(
191
187
  this.accessibilityService.onDidChangeScreenReaderOptimized(() => this._configureForScreenReader())
@@ -213,6 +209,7 @@ let CodeBlockPart = class CodeBlockPart extends Disposable {
213
209
  }));
214
210
  this._register(this.editor.onDidFocusEditorWidget(() => {
215
211
  this.element.classList.add("focused");
212
+ this._ensureToolbar();
216
213
  WordHighlighterContribution.get(this.editor)?.restoreViewState(true);
217
214
  }));
218
215
  this._register(
@@ -281,15 +278,60 @@ let CodeBlockPart = class CodeBlockPart extends Disposable {
281
278
  }
282
279
  });
283
280
  }
281
+ _ensureToolbar() {
282
+ if (this.isDisposed) {
283
+ return undefined;
284
+ }
285
+ if (this.currentCodeBlockData?.renderOptions?.hideToolbar) {
286
+ return undefined;
287
+ }
288
+ if (!this.toolbar) {
289
+ const factory = this._toolbarFactory;
290
+ if (!factory) {
291
+ return undefined;
292
+ }
293
+ this._toolbarFactory = undefined;
294
+ const toolbar = this._register(factory());
295
+ this.toolbar = toolbar;
296
+ this._register(toolbar.onDidChangeDropdownVisibility(e => {
297
+ this._isDropdownVisible = e;
298
+ this._toolbarElement.classList.toggle("force-visibility", e || this._isHovered);
299
+ }));
300
+ if (this._pendingToolbarAriaLabel !== undefined) {
301
+ toolbar.setAriaLabel(this._pendingToolbarAriaLabel);
302
+ this._pendingToolbarAriaLabel = undefined;
303
+ }
304
+ if (this._pendingToolbarContext !== undefined) {
305
+ toolbar.context = this._pendingToolbarContext;
306
+ this._pendingToolbarContext = undefined;
307
+ }
308
+ }
309
+ return this.toolbar;
310
+ }
284
311
  _configureForScreenReader() {
285
- const toolbarElt = this.toolbar.getElement();
312
+ const hideToolbar = !!this.currentCodeBlockData?.renderOptions?.hideToolbar;
286
313
  if (this.accessibilityService.isScreenReaderOptimized()) {
287
- toolbarElt.style.display = "block";
314
+ if (hideToolbar) {
315
+ hide(this._toolbarElement);
316
+ } else {
317
+ this._toolbarElement.style.display = "block";
318
+ if (this.currentCodeBlockData) {
319
+ this._ensureToolbar();
320
+ }
321
+ }
322
+ } else if (hideToolbar) {
323
+ hide(this._toolbarElement);
288
324
  } else {
289
- toolbarElt.style.display = "";
325
+ this._toolbarElement.style.display = "";
290
326
  }
291
327
  }
292
328
  getEditorOptionsFromConfig() {
329
+ const renderOptions = this.currentCodeBlockData?.renderOptions;
330
+ const scrollbar = renderOptions?.maxHeightInLines ? {
331
+ vertical: "auto",
332
+ verticalScrollbarSize: defaultChatScrollbarSize,
333
+ ...renderOptions?.editorOptions?.scrollbar
334
+ } : undefined;
293
335
  return {
294
336
  wordWrap: this.editorOptions.configuration.resultEditor.wordWrap,
295
337
  fontLigatures: this.editorOptions.configuration.resultEditor.fontLigatures,
@@ -298,7 +340,10 @@ let CodeBlockPart = class CodeBlockPart extends Disposable {
298
340
  fontSize: this.editorOptions.configuration.resultEditor.fontSize,
299
341
  fontWeight: this.editorOptions.configuration.resultEditor.fontWeight,
300
342
  lineHeight: this.editorOptions.configuration.resultEditor.lineHeight,
301
- ...this.currentCodeBlockData?.renderOptions?.editorOptions
343
+ ...renderOptions?.editorOptions,
344
+ ...(scrollbar ? {
345
+ scrollbar
346
+ } : {})
302
347
  };
303
348
  }
304
349
  layout(width = this.lastLayoutWidth) {
@@ -342,15 +387,23 @@ let CodeBlockPart = class CodeBlockPart extends Disposable {
342
387
  });
343
388
  if (!this.editor.getOption(EditorOption.ariaLabel)) {
344
389
  this.editor.updateOptions({
345
- ariaLabel: ( localize(7009, "Code block {0}", data.codeBlockIndex + 1))
390
+ ariaLabel: ( localize(7291, "Code block {0}", data.codeBlockIndex + 1))
346
391
  });
347
392
  }
348
393
  this.layout(width);
349
- this.toolbar.setAriaLabel(( localize(7010, "Code block {0}", data.codeBlockIndex + 1)));
394
+ const toolbarAriaLabel = ( localize(7292, "Code block {0}", data.codeBlockIndex + 1));
395
+ if (this.toolbar) {
396
+ this.toolbar.setAriaLabel(toolbarAriaLabel);
397
+ } else {
398
+ this._pendingToolbarAriaLabel = toolbarAriaLabel;
399
+ }
350
400
  if (data.renderOptions?.hideToolbar) {
351
- hide(this.toolbar.getElement());
401
+ hide(this._toolbarElement);
352
402
  } else {
353
- show(this.toolbar.getElement());
403
+ show(this._toolbarElement);
404
+ if (this.accessibilityService.isScreenReaderOptimized()) {
405
+ this._ensureToolbar();
406
+ }
354
407
  }
355
408
  if (data.vulns?.length && isResponseVM(data.element)) {
356
409
  clearNode(this.vulnsListElement);
@@ -401,7 +454,7 @@ let CodeBlockPart = class CodeBlockPart extends Disposable {
401
454
  if (!this.currentCodeBlockData || !this.currentCodeBlockData.vulns) {
402
455
  return "";
403
456
  }
404
- const referencesLabel = this.currentCodeBlockData.vulns.length > 1 ? ( localize(7011, "{0} vulnerabilities", this.currentCodeBlockData.vulns.length)) : ( localize(7012, "{0} vulnerability", 1));
457
+ const referencesLabel = this.currentCodeBlockData.vulns.length > 1 ? ( localize(7293, "{0} vulnerabilities", this.currentCodeBlockData.vulns.length)) : ( localize(7294, "{0} vulnerability", 1));
405
458
  const icon = element => element.vulnerabilitiesListExpanded ? Codicon.chevronDown : Codicon.chevronRight;
406
459
  return `${referencesLabel} $(${icon(this.currentCodeBlockData.element).id})`;
407
460
  }
@@ -410,7 +463,7 @@ let CodeBlockPart = class CodeBlockPart extends Disposable {
410
463
  if (!textModel) {
411
464
  return;
412
465
  }
413
- this.toolbar.context = {
466
+ const context = {
414
467
  code: textModel.getTextBuffer().getValueInRange(textModel.getFullModelRange(), EndOfLinePreference.TextDefined),
415
468
  codeBlockIndex: data.codeBlockIndex,
416
469
  element: data.element,
@@ -418,6 +471,11 @@ let CodeBlockPart = class CodeBlockPart extends Disposable {
418
471
  codemapperUri: data.codemapperUri,
419
472
  chatSessionResource: data.chatSessionResource
420
473
  };
474
+ if (this.toolbar) {
475
+ this.toolbar.context = context;
476
+ } else {
477
+ this._pendingToolbarContext = context;
478
+ }
421
479
  this.resourceContextKey.set(textModel.uri);
422
480
  }
423
481
  setText(newText) {
@@ -531,7 +589,7 @@ let CodeCompareBlockPart = class CodeCompareBlockPart extends Disposable {
531
589
  multipleDefinitions: "goto",
532
590
  multipleImplementations: "goto"
533
591
  },
534
- ariaLabel: ( localize(7008, "Code block")),
592
+ ariaLabel: ( localize(7290, "Code block")),
535
593
  overflowWidgetsDomNode,
536
594
  ...this.getEditorOptionsFromConfig()
537
595
  });
@@ -610,8 +668,8 @@ let CodeCompareBlockPart = class CodeCompareBlockPart extends Disposable {
610
668
  stickyScroll: {
611
669
  enabled: false
612
670
  },
613
- originalAriaLabel: ( localize(7013, "Original")),
614
- modifiedAriaLabel: ( localize(7014, "Modified")),
671
+ originalAriaLabel: ( localize(7295, "Original")),
672
+ modifiedAriaLabel: ( localize(7296, "Modified")),
615
673
  diffAlgorithm: "advanced",
616
674
  readOnly: false,
617
675
  isInEmbeddedEditor: true,
@@ -652,7 +710,7 @@ let CodeCompareBlockPart = class CodeCompareBlockPart extends Disposable {
652
710
  const toolbarElt = this.toolbar.getElement();
653
711
  toolbarElt.style.display = "block";
654
712
  if (this.accessibilityService.isScreenReaderOptimized()) {
655
- toolbarElt.ariaLabel = ( localize(7015, "Code block toolbar"));
713
+ toolbarElt.ariaLabel = ( localize(7297, "Code block toolbar"));
656
714
  }
657
715
  }
658
716
  getEditorOptionsFromConfig() {
@@ -693,7 +751,7 @@ let CodeCompareBlockPart = class CodeCompareBlockPart extends Disposable {
693
751
  await this.updateEditor(data, token);
694
752
  this.layout(width);
695
753
  this.diffEditor.updateOptions({
696
- ariaLabel: ( localize(7016, "Code Edits")),
754
+ ariaLabel: ( localize(7298, "Code Edits")),
697
755
  readOnly: !!data.isReadOnly
698
756
  });
699
757
  this.resourceLabel.element.setFile(data.edit.uri, {
@@ -728,12 +786,12 @@ let CodeCompareBlockPart = class CodeCompareBlockPart extends Disposable {
728
786
  });
729
787
  let template;
730
788
  if (data.edit.state.applied === 1) {
731
- template = ( localize(7017, "Applied 1 change in [[``{0}``]]", uriLabel));
789
+ template = ( localize(7299, "Applied 1 change in [[``{0}``]]", uriLabel));
732
790
  } else if (data.edit.state.applied < 0) {
733
- template = ( localize(7018, "Edits in [[``{0}``]] have been rejected", uriLabel));
791
+ template = ( localize(7300, "Edits in [[``{0}``]] have been rejected", uriLabel));
734
792
  } else {
735
793
  template = ( localize(
736
- 7019,
794
+ 7301,
737
795
  "Applied {0} changes in [[``{1}``]]",
738
796
  data.edit.state.applied,
739
797
  uriLabel
@@ -863,8 +921,8 @@ let DefaultChatTextEditor = class DefaultChatTextEditor {
863
921
  async _checkSha1(model, item) {
864
922
  if (item.state?.sha1 && this._sha1.computeSHA1(model) && this._sha1.computeSHA1(model) !== item.state.sha1) {
865
923
  const result = await this.dialogService.confirm({
866
- message: ( localize(7020, "The original file has been modified.")),
867
- detail: ( localize(7021, "Do you want to apply the changes anyway?"))
924
+ message: ( localize(7302, "The original file has been modified.")),
925
+ detail: ( localize(7303, "Do you want to apply the changes anyway?"))
868
926
  });
869
927
  if (!result.confirmed) {
870
928
  return false;
@@ -22,6 +22,11 @@
22
22
  font-size: var(--vscode-chat-font-size-body-s);
23
23
  }
24
24
 
25
+ .chat-confirmation-widget-message {
26
+ -webkit-user-select: text;
27
+ user-select: text;
28
+ }
29
+
25
30
  .chat-confirmation-widget-container .chat-confirmation-widget .chat-confirmation-widget-title {
26
31
  width: 100%;
27
32
  border-radius: 3px;