@codingame/monaco-vscode-api 6.0.2 → 7.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 (450) hide show
  1. package/README.md +93 -73
  2. package/api.js +1 -1
  3. package/debugProtocol.d.ts +10 -1
  4. package/extensions.d.ts +2 -0
  5. package/missing-services.js +21 -2
  6. package/monaco.d.ts +1 -1
  7. package/monaco.js +1 -1
  8. package/package.json +9 -9
  9. package/service-override/extensions.d.ts +1 -2
  10. package/services.js +4 -2
  11. package/vscode/src/vs/base/browser/dnd.js +1 -1
  12. package/vscode/src/vs/base/browser/dom.js +116 -5
  13. package/vscode/src/vs/base/browser/domObservable.js +16 -0
  14. package/vscode/src/vs/base/browser/markdownRenderer.js +5 -3
  15. package/vscode/src/vs/base/browser/trustedTypes.js +1 -2
  16. package/vscode/src/vs/base/browser/ui/actionbar/actionViewItems.js +1 -1
  17. package/vscode/src/vs/base/browser/ui/actionbar/actionbar.js +1 -1
  18. package/vscode/src/vs/base/browser/ui/button/button.js +2 -2
  19. package/vscode/src/vs/base/browser/ui/contextview/contextview.js +1 -4
  20. package/vscode/src/vs/base/browser/ui/dropdown/dropdown.js +1 -1
  21. package/vscode/src/vs/base/browser/ui/dropdown/dropdownActionViewItem.js +1 -1
  22. package/vscode/src/vs/base/browser/ui/highlightedlabel/highlightedLabel.js +1 -1
  23. package/vscode/src/vs/base/browser/ui/hover/hover.d.ts +32 -16
  24. package/vscode/src/vs/base/browser/ui/hover/hoverDelegate.d.ts +2 -2
  25. package/vscode/src/vs/base/browser/ui/hover/hoverDelegate2.js +2 -2
  26. package/vscode/src/vs/base/browser/ui/hover/hoverWidget.css.js +1 -1
  27. package/vscode/src/vs/base/browser/ui/hover/hoverWidget.js +2 -0
  28. package/vscode/src/vs/base/browser/ui/iconLabel/iconLabel.js +1 -1
  29. package/vscode/src/vs/base/browser/ui/iconLabel/simpleIconLabel.js +1 -1
  30. package/vscode/src/vs/base/browser/ui/inputbox/inputBox.js +1 -1
  31. package/vscode/src/vs/base/browser/ui/keybindingLabel/keybindingLabel.js +1 -1
  32. package/vscode/src/vs/base/browser/ui/list/listView.js +3 -5
  33. package/vscode/src/vs/base/browser/ui/list/rowCache.js +1 -8
  34. package/vscode/src/vs/base/browser/ui/sash/sash.js +1 -1
  35. package/vscode/src/vs/base/browser/ui/selectBox/selectBoxCustom.js +7 -11
  36. package/vscode/src/vs/base/browser/ui/splitview/paneview.js +1 -1
  37. package/vscode/src/vs/base/browser/ui/splitview/splitview.js +1 -1
  38. package/vscode/src/vs/base/browser/ui/table/tableWidget.js +1 -1
  39. package/vscode/src/vs/base/browser/ui/toggle/toggle.js +1 -1
  40. package/vscode/src/vs/base/browser/ui/toolbar/toolbar.d.ts +8 -1
  41. package/vscode/src/vs/base/browser/ui/toolbar/toolbar.js +2 -3
  42. package/vscode/src/vs/base/browser/ui/tree/abstractTree.js +1 -1
  43. package/vscode/src/vs/base/browser/ui/tree/asyncDataTree.js +0 -3
  44. package/vscode/src/vs/base/common/assert.js +1 -1
  45. package/vscode/src/vs/base/common/collections.js +49 -1
  46. package/vscode/src/vs/base/common/equals.js +55 -5
  47. package/vscode/src/vs/base/common/errors.js +14 -1
  48. package/vscode/src/vs/base/common/event.js +2 -1
  49. package/vscode/src/vs/base/common/history.js +7 -4
  50. package/vscode/src/vs/base/common/iterator.js +9 -1
  51. package/vscode/src/vs/base/common/map.d.ts +41 -0
  52. package/vscode/src/vs/base/common/numbers.js +18 -1
  53. package/vscode/src/vs/base/common/observableInternal/api.js +11 -0
  54. package/vscode/src/vs/base/common/observableInternal/autorun.js +18 -1
  55. package/vscode/src/vs/base/common/observableInternal/base.d.ts +8 -1
  56. package/vscode/src/vs/base/common/observableInternal/base.js +2 -5
  57. package/vscode/src/vs/base/common/observableInternal/derived.js +13 -3
  58. package/vscode/src/vs/base/common/observableInternal/lazyObservableValue.js +109 -0
  59. package/vscode/src/vs/base/common/observableInternal/promise.js +3 -0
  60. package/vscode/src/vs/base/common/observableInternal/utils.d.ts +7 -0
  61. package/vscode/src/vs/base/common/observableInternal/utils.js +64 -12
  62. package/vscode/src/vs/base/common/prefixTree.d.ts +52 -0
  63. package/vscode/src/vs/base/common/product.d.ts +1 -0
  64. package/vscode/src/vs/base/parts/ipc/common/ipc.js +1 -1
  65. package/vscode/src/vs/editor/browser/config/charWidthReader.js +1 -1
  66. package/vscode/src/vs/editor/browser/controller/textAreaHandler.js +1 -1
  67. package/vscode/src/vs/editor/browser/coreCommands.js +2 -1
  68. package/vscode/src/vs/editor/browser/observableCodeEditor.js +230 -0
  69. package/vscode/src/vs/editor/browser/services/abstractCodeEditorService.js +1 -1
  70. package/vscode/src/vs/editor/browser/services/hoverService/hoverService.js +26 -26
  71. package/vscode/src/vs/editor/browser/services/hoverService/updatableHoverWidget.js +2 -2
  72. package/vscode/src/vs/editor/browser/view/domLineBreaksComputer.js +1 -1
  73. package/vscode/src/vs/editor/browser/view/viewLayer.js +4 -12
  74. package/vscode/src/vs/editor/browser/viewParts/contentWidgets/contentWidgets.js +1 -1
  75. package/vscode/src/vs/editor/browser/viewParts/glyphMargin/glyphMargin.js +1 -1
  76. package/vscode/src/vs/editor/browser/viewParts/viewZones/viewZones.js +2 -2
  77. package/vscode/src/vs/editor/browser/widget/codeEditor/codeEditorWidget.js +15 -4
  78. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorEditors.js +8 -8
  79. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/diffEditorViewZones.js +4 -4
  80. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorOptions.js +1 -1
  81. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorViewModel.js +1 -1
  82. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorWidget.js +14 -2
  83. package/vscode/src/vs/editor/browser/widget/diffEditor/features/gutterFeature.js +1 -1
  84. package/vscode/src/vs/editor/browser/widget/diffEditor/features/movedBlocksLinesFeature.js +2 -2
  85. package/vscode/src/vs/editor/browser/widget/diffEditor/registrations.contribution.js +2 -2
  86. package/vscode/src/vs/editor/browser/widget/diffEditor/utils/editorGutter.js +3 -3
  87. package/vscode/src/vs/editor/browser/widget/diffEditor/utils.js +2 -2
  88. package/vscode/src/vs/editor/browser/widget/multiDiffEditor/colors.js +1 -1
  89. package/vscode/src/vs/editor/browser/widget/multiDiffEditor/multiDiffEditorWidgetImpl.js +2 -2
  90. package/vscode/src/vs/editor/common/config/editorOptions.d.ts +5 -0
  91. package/vscode/src/vs/editor/common/config/editorOptions.js +83 -65
  92. package/vscode/src/vs/editor/common/core/editorColorRegistry.js +43 -43
  93. package/vscode/src/vs/editor/common/cursor/cursor.js +3 -2
  94. package/vscode/src/vs/editor/common/cursor/cursorTypeEditOperations.js +911 -0
  95. package/vscode/src/vs/editor/common/cursor/cursorTypeOperations.js +36 -799
  96. package/vscode/src/vs/editor/common/cursor/cursorWordOperations.js +6 -5
  97. package/vscode/src/vs/editor/common/languageFeatureRegistry.d.ts +1 -0
  98. package/vscode/src/vs/editor/common/languageFeatureRegistry.js +3 -0
  99. package/vscode/src/vs/editor/common/languages/autoIndent.js +23 -1
  100. package/vscode/src/vs/editor/common/languages.d.ts +20 -3
  101. package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsImpl.js +6 -6
  102. package/vscode/src/vs/editor/common/model/pieceTreeTextBuffer/pieceTreeBase.js +19 -0
  103. package/vscode/src/vs/editor/common/model/pieceTreeTextBuffer/pieceTreeTextBuffer.js +3 -0
  104. package/vscode/src/vs/editor/common/model/textModel.js +6 -2
  105. package/vscode/src/vs/editor/common/model/tokenizationTextModelPart.js +5 -5
  106. package/vscode/src/vs/editor/common/model.d.ts +4 -0
  107. package/vscode/src/vs/editor/common/services/getIconClasses.js +1 -1
  108. package/vscode/src/vs/editor/common/services/semanticTokensProviderStyling.js +2 -15
  109. package/vscode/src/vs/editor/common/standalone/standaloneEnums.js +63 -62
  110. package/vscode/src/vs/editor/common/viewModel/viewModelImpl.js +11 -8
  111. package/vscode/src/vs/editor/contrib/bracketMatching/browser/bracketMatching.js +1 -1
  112. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionController.js +2 -17
  113. package/vscode/src/vs/editor/contrib/codeAction/browser/lightBulbWidget.css.js +1 -1
  114. package/vscode/src/vs/editor/contrib/codeAction/browser/lightBulbWidget.js +18 -5
  115. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorHoverParticipant.js +55 -27
  116. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerWidget.js +7 -4
  117. package/vscode/src/vs/editor/contrib/colorPicker/browser/standaloneColorPickerWidget.js +9 -9
  118. package/vscode/src/vs/editor/contrib/contextmenu/browser/contextmenu.js +1 -1
  119. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/copyPasteController.js +103 -47
  120. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/defaultProviders.js +8 -2
  121. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/dropIntoEditorController.js +18 -10
  122. package/vscode/src/vs/editor/contrib/find/browser/findWidget.js +2 -4
  123. package/vscode/src/vs/editor/contrib/folding/browser/folding.css.js +1 -1
  124. package/vscode/src/vs/editor/contrib/folding/browser/folding.js +33 -13
  125. package/vscode/src/vs/editor/contrib/folding/browser/foldingDecorations.js +12 -7
  126. package/vscode/src/vs/editor/contrib/gotoError/browser/gotoErrorWidget.js +1 -1
  127. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/peek/referencesWidget.js +2 -2
  128. package/vscode/src/vs/editor/contrib/hover/browser/contentHoverController.js +161 -185
  129. package/vscode/src/vs/editor/contrib/hover/browser/contentHoverRendered.js +321 -0
  130. package/vscode/src/vs/editor/contrib/hover/browser/contentHoverStatusBar.js +4 -1
  131. package/vscode/src/vs/editor/contrib/hover/browser/contentHoverTypes.js +6 -21
  132. package/vscode/src/vs/editor/contrib/hover/browser/contentHoverWidget.js +39 -40
  133. package/vscode/src/vs/editor/contrib/hover/browser/hoverAccessibleViews.js +55 -46
  134. package/vscode/src/vs/editor/contrib/hover/browser/hoverActions.js +12 -2
  135. package/vscode/src/vs/editor/contrib/hover/browser/hoverController.js +15 -9
  136. package/vscode/src/vs/editor/contrib/hover/browser/hoverTypes.js +11 -1
  137. package/vscode/src/vs/editor/contrib/hover/browser/markdownHoverParticipant.js +141 -93
  138. package/vscode/src/vs/editor/contrib/hover/browser/markerHoverParticipant.js +24 -7
  139. package/vscode/src/vs/editor/contrib/indentation/browser/indentation.js +36 -1
  140. package/vscode/src/vs/editor/contrib/inlayHints/browser/inlayHintsHover.js +5 -3
  141. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/ghostTextWidget.js +1 -1
  142. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/hoverParticipant.js +25 -12
  143. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsController.js +88 -118
  144. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsHintsWidget.js +1 -1
  145. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsModel.js +34 -33
  146. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsSource.js +2 -2
  147. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/provideInlineCompletions.js +11 -4
  148. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/suggestWidgetInlineCompletionProvider.js +10 -19
  149. package/vscode/src/vs/editor/contrib/inlineEdit/browser/ghostTextWidget.js +1 -1
  150. package/vscode/src/vs/editor/contrib/inlineEdit/browser/hoverParticipant.js +45 -27
  151. package/vscode/src/vs/editor/contrib/inlineEdit/browser/inlineEditController.js +4 -4
  152. package/vscode/src/vs/editor/contrib/inlineEdit/browser/inlineEditHintsWidget.js +1 -1
  153. package/vscode/src/vs/editor/contrib/inlineEdits/browser/commands.js +126 -0
  154. package/vscode/src/vs/editor/contrib/inlineEdits/browser/consts.js +9 -0
  155. package/vscode/src/vs/editor/contrib/inlineEdits/browser/inlineEdits.contribution.js +9 -0
  156. package/vscode/src/vs/editor/contrib/inlineEdits/browser/inlineEditsController.js +82 -0
  157. package/vscode/src/vs/editor/contrib/inlineEdits/browser/inlineEditsModel.js +240 -0
  158. package/vscode/src/vs/editor/contrib/inlineEdits/browser/inlineEditsWidget.css.js +4 -0
  159. package/vscode/src/vs/editor/contrib/inlineEdits/browser/inlineEditsWidget.js +322 -0
  160. package/vscode/src/vs/editor/contrib/inlineProgress/browser/inlineProgress.js +8 -4
  161. package/vscode/src/vs/editor/contrib/linesOperations/browser/linesOperations.js +3 -2
  162. package/vscode/src/vs/editor/contrib/parameterHints/browser/parameterHintsWidget.js +1 -1
  163. package/vscode/src/vs/editor/contrib/peekView/browser/peekView.js +2 -2
  164. package/vscode/src/vs/editor/contrib/placeholderText/browser/placeholderText.contribution.js +60 -0
  165. package/vscode/src/vs/editor/contrib/placeholderText/browser/placeholderText.css.js +4 -0
  166. package/vscode/src/vs/editor/contrib/rename/browser/renameWidget.js +1 -1
  167. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScroll.css.js +1 -1
  168. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollController.js +38 -20
  169. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollWidget.js +3 -0
  170. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidget.js +9 -9
  171. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidgetStatus.js +10 -32
  172. package/vscode/src/vs/editor/contrib/symbolIcons/browser/symbolIcons.js +23 -138
  173. package/vscode/src/vs/editor/contrib/unicodeHighlighter/browser/unicodeHighlighter.js +3 -0
  174. package/vscode/src/vs/editor/contrib/wordHighlighter/browser/highlightDecorations.js +5 -5
  175. package/vscode/src/vs/editor/contrib/wordOperations/browser/wordOperations.js +13 -12
  176. package/vscode/src/vs/editor/contrib/wordPartOperations/browser/wordPartOperations.js +3 -3
  177. package/vscode/src/vs/editor/editor.api.d.ts +31 -5
  178. package/vscode/src/vs/platform/accessibility/browser/accessibilityService.js +21 -0
  179. package/vscode/src/vs/platform/accessibilitySignal/browser/accessibilitySignalService.js +5 -6
  180. package/vscode/src/vs/platform/actionWidget/browser/actionWidget.js +1 -1
  181. package/vscode/src/vs/platform/actions/browser/buttonbar.js +27 -6
  182. package/vscode/src/vs/platform/actions/browser/floatingMenu.js +1 -1
  183. package/vscode/src/vs/platform/actions/browser/menuEntryActionViewItem.css.js +1 -1
  184. package/vscode/src/vs/platform/actions/browser/menuEntryActionViewItem.js +33 -3
  185. package/vscode/src/vs/platform/actions/browser/toolbar.js +2 -1
  186. package/vscode/src/vs/platform/actions/common/actions.d.ts +3 -0
  187. package/vscode/src/vs/platform/actions/common/actions.js +3 -0
  188. package/vscode/src/vs/platform/actions/common/menuService.js +3 -2
  189. package/vscode/src/vs/platform/clipboard/browser/clipboardService.js +1 -1
  190. package/vscode/src/vs/platform/configuration/common/configurationRegistry.d.ts +7 -5
  191. package/vscode/src/vs/platform/configuration/common/configurationRegistry.js +109 -13
  192. package/vscode/src/vs/platform/diagnostics/common/diagnostics.d.ts +2 -0
  193. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.d.ts +12 -6
  194. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.js +2 -0
  195. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.service.d.ts +3 -3
  196. package/vscode/src/vs/platform/extensionManagement/common/extensionsScannerService.js +20 -10
  197. package/vscode/src/vs/platform/extensions/common/extensionValidator.js +46 -8
  198. package/vscode/src/vs/platform/extensions/common/extensions.d.ts +1 -1
  199. package/vscode/src/vs/platform/extensions/common/extensions.js +12 -3
  200. package/vscode/src/vs/platform/extensions/common/extensionsApiProposals.js +368 -0
  201. package/vscode/src/vs/platform/files/common/watcher.js +21 -24
  202. package/vscode/src/vs/platform/list/browser/listService.js +2 -1
  203. package/vscode/src/vs/platform/observable/common/platformObservableUtils.js +2 -2
  204. package/vscode/src/vs/platform/opener/browser/link.js +1 -1
  205. package/vscode/src/vs/platform/product/common/product.js +1 -1
  206. package/vscode/src/vs/platform/quickinput/browser/quickInputTree.js +1 -1
  207. package/vscode/src/vs/platform/remote/common/remoteExtensionsScanner.service.d.ts +0 -2
  208. package/vscode/src/vs/platform/request/common/request.js +18 -8
  209. package/vscode/src/vs/platform/terminal/common/capabilities/capabilities.d.ts +2 -6
  210. package/vscode/src/vs/platform/terminal/common/capabilities/commandDetection/promptInputModel.d.ts +8 -1
  211. package/vscode/src/vs/platform/theme/common/colorUtils.d.ts +1 -1
  212. package/vscode/src/vs/platform/theme/common/colorUtils.js +25 -5
  213. package/vscode/src/vs/platform/theme/common/colors/baseColors.js +1 -1
  214. package/vscode/src/vs/platform/theme/common/colors/chartsColors.js +6 -6
  215. package/vscode/src/vs/platform/theme/common/colors/editorColors.js +35 -35
  216. package/vscode/src/vs/platform/theme/common/colors/inputColors.js +9 -9
  217. package/vscode/src/vs/platform/theme/common/colors/listColors.js +11 -11
  218. package/vscode/src/vs/platform/theme/common/colors/menuColors.js +4 -4
  219. package/vscode/src/vs/platform/theme/common/colors/minimapColors.js +5 -5
  220. package/vscode/src/vs/platform/theme/common/colors/miscColors.js +1 -1
  221. package/vscode/src/vs/platform/theme/common/colors/quickpickColors.js +5 -5
  222. package/vscode/src/vs/platform/tunnel/common/tunnel.js +4 -1
  223. package/vscode/src/vs/platform/userDataProfile/common/userDataProfile.js +75 -19
  224. package/vscode/src/vs/platform/window/common/window.d.ts +2 -2
  225. package/vscode/src/vs/workbench/api/common/extHost.api.impl.js +32 -25
  226. package/vscode/src/vs/workbench/api/common/extHost.common.services.js +2 -0
  227. package/vscode/src/vs/workbench/api/common/extHost.protocol.js +2 -0
  228. package/vscode/src/vs/workbench/api/common/extHostAuthentication.js +5 -11
  229. package/vscode/src/vs/workbench/api/common/extHostChatAgents2.js +5 -15
  230. package/vscode/src/vs/workbench/api/common/extHostChatVariables.js +2 -5
  231. package/vscode/src/vs/workbench/api/common/extHostComments.js +9 -3
  232. package/vscode/src/vs/workbench/api/common/extHostDebugService.js +32 -22
  233. package/vscode/src/vs/workbench/api/common/extHostExtensionService.js +3 -3
  234. package/vscode/src/vs/workbench/api/common/extHostLanguageFeatures.js +109 -40
  235. package/vscode/src/vs/workbench/api/common/extHostLanguageModelTools.js +46 -0
  236. package/vscode/src/vs/workbench/api/common/extHostLanguageModels.js +84 -35
  237. package/vscode/src/vs/workbench/api/common/extHostNotebook.js +2 -2
  238. package/vscode/src/vs/workbench/api/common/extHostSCM.js +50 -41
  239. package/vscode/src/vs/workbench/api/common/extHostSearch.js +2 -2
  240. package/vscode/src/vs/workbench/api/common/extHostSecrets.js +11 -8
  241. package/vscode/src/vs/workbench/api/common/extHostTerminalService.js +7 -6
  242. package/vscode/src/vs/workbench/api/common/extHostTesting.js +63 -70
  243. package/vscode/src/vs/workbench/api/common/extHostTextEditors.js +5 -3
  244. package/vscode/src/vs/workbench/api/common/extHostTypeConverters.js +75 -16
  245. package/vscode/src/vs/workbench/api/common/extHostTypes.js +29 -4
  246. package/vscode/src/vs/workbench/api/common/extHostWorkspace.js +1 -1
  247. package/vscode/src/vs/workbench/browser/actions/developerActions.js +1 -1
  248. package/vscode/src/vs/workbench/browser/parts/editor/editorActions.js +127 -107
  249. package/vscode/src/vs/workbench/browser/parts/editor/editorCommands.js +2 -2
  250. package/vscode/src/vs/workbench/browser/parts/editor/editorPanes.js +1 -1
  251. package/vscode/src/vs/workbench/browser/parts/editor/editorStatus.js +33 -21
  252. package/vscode/src/vs/workbench/browser/parts/editor/sideBySideEditor.js +1 -1
  253. package/vscode/src/vs/workbench/browser/parts/globalCompositeBar.js +5 -5
  254. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsToasts.js +1 -1
  255. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsViewer.js +2 -2
  256. package/vscode/src/vs/workbench/browser/parts/views/checkbox.js +2 -2
  257. package/vscode/src/vs/workbench/browser/parts/views/treeView.js +23 -6
  258. package/vscode/src/vs/workbench/browser/parts/views/viewFilter.js +3 -1
  259. package/vscode/src/vs/workbench/browser/parts/views/viewPane.js +3 -3
  260. package/vscode/src/vs/workbench/browser/parts/views/viewPaneContainer.js +1 -1
  261. package/vscode/src/vs/workbench/browser/web.api.js +8 -0
  262. package/vscode/src/vs/workbench/browser/workbench.contribution.js +199 -194
  263. package/vscode/src/vs/workbench/common/configuration.js +1 -1
  264. package/vscode/src/vs/workbench/common/contributions.js +8 -1
  265. package/vscode/src/vs/workbench/common/editor.js +5 -1
  266. package/vscode/src/vs/workbench/common/theme.js +79 -454
  267. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibilityConfiguration.js +221 -239
  268. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatActions.js +17 -15
  269. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatExecuteActions.js +1 -0
  270. package/vscode/src/vs/workbench/contrib/chat/browser/chatAgentHover.js +4 -0
  271. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatCollections.js +27 -0
  272. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatCommandContentPart.js +35 -0
  273. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatConfirmationContentPart.js +51 -0
  274. package/vscode/src/vs/workbench/contrib/chat/browser/{chatConfirmationWidget.js → chatContentParts/chatConfirmationWidget.js} +9 -9
  275. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatMarkdownContentPart.js +131 -0
  276. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatProgressContentPart.js +37 -0
  277. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatReferencesContentPart.js +263 -0
  278. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatTaskContentPart.js +37 -0
  279. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatTextEditContentPart.js +160 -0
  280. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatTreeContentPart.js +171 -0
  281. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatWarningContentPart.js +34 -0
  282. package/vscode/src/vs/workbench/contrib/chat/browser/{media → chatContentParts/media}/chatConfirmationWidget.css.js +1 -1
  283. package/vscode/src/vs/workbench/contrib/chat/browser/chatInputPart.js +91 -44
  284. package/vscode/src/vs/workbench/contrib/chat/browser/chatListRenderer.js +292 -1019
  285. package/vscode/src/vs/workbench/contrib/chat/browser/chatMarkdownDecorationsRenderer.js +2 -2
  286. package/vscode/src/vs/workbench/contrib/chat/browser/chatMarkdownRenderer.js +1 -1
  287. package/vscode/src/vs/workbench/contrib/chat/browser/chatWidget.js +22 -7
  288. package/vscode/src/vs/workbench/contrib/chat/browser/codeBlockPart.css.js +1 -1
  289. package/vscode/src/vs/workbench/contrib/chat/browser/codeBlockPart.js +61 -54
  290. package/vscode/src/vs/workbench/contrib/chat/browser/contrib/chatDynamicVariables.js +23 -16
  291. package/vscode/src/vs/workbench/contrib/chat/browser/media/chat.css.js +1 -1
  292. package/vscode/src/vs/workbench/contrib/chat/browser/media/chatAgentHover.css.js +1 -1
  293. package/vscode/src/vs/workbench/contrib/chat/common/chatAgents.js +8 -0
  294. package/vscode/src/vs/workbench/contrib/chat/common/chatColors.js +1 -1
  295. package/vscode/src/vs/workbench/contrib/chat/common/chatModel.js +3 -3
  296. package/vscode/src/vs/workbench/contrib/chat/common/chatWordCounter.js +5 -4
  297. package/vscode/src/vs/workbench/contrib/chat/common/codeBlockModelCollection.js +16 -0
  298. package/vscode/src/vs/workbench/contrib/chat/common/languageModelToolsService.service.js +3 -0
  299. package/vscode/src/vs/workbench/contrib/chat/common/languageModels.js +2 -2
  300. package/vscode/src/vs/workbench/contrib/codeActions/browser/codeActionsContribution.js +43 -16
  301. package/vscode/src/vs/workbench/contrib/codeEditor/browser/diffEditorHelper.js +1 -1
  302. package/vscode/src/vs/workbench/contrib/codeEditor/browser/find/simpleFindWidget.js +1 -3
  303. package/vscode/src/vs/workbench/contrib/codeEditor/browser/suggestEnabledInput/suggestEnabledInput.js +1 -1
  304. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleMultiCursorModifier.js +7 -5
  305. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleWordWrap.js +7 -7
  306. package/vscode/src/vs/workbench/contrib/comments/browser/commentColors.js +3 -3
  307. package/vscode/src/vs/workbench/contrib/comments/browser/commentGlyphWidget.js +3 -3
  308. package/vscode/src/vs/workbench/contrib/comments/browser/commentReply.js +2 -2
  309. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadBody.js +1 -1
  310. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadHeader.js +2 -1
  311. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadWidget.js +2 -1
  312. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadZoneWidget.js +1 -1
  313. package/vscode/src/vs/workbench/contrib/comments/browser/commentsController.js +8 -5
  314. package/vscode/src/vs/workbench/contrib/comments/browser/commentsTreeViewer.js +1 -1
  315. package/vscode/src/vs/workbench/contrib/comments/browser/media/panel.css.js +1 -1
  316. package/vscode/src/vs/workbench/contrib/comments/browser/media/review.css.js +1 -1
  317. package/vscode/src/vs/workbench/contrib/comments/browser/timestamp.js +1 -1
  318. package/vscode/src/vs/workbench/contrib/contextmenu/browser/contextmenu.contribution.js +5 -5
  319. package/vscode/src/vs/workbench/contrib/debug/browser/baseDebugView.js +14 -7
  320. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointEditorContribution.js +4 -4
  321. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointWidget.js +8 -7
  322. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointsView.js +19 -16
  323. package/vscode/src/vs/workbench/contrib/debug/browser/debugColors.js +13 -12
  324. package/vscode/src/vs/workbench/contrib/debug/common/debug.d.ts +19 -2
  325. package/vscode/src/vs/workbench/contrib/debug/common/debug.js +9 -4
  326. package/vscode/src/vs/workbench/contrib/debug/common/debugModel.js +10 -5
  327. package/vscode/src/vs/workbench/contrib/debug/common/replModel.js +4 -4
  328. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsActions.js +235 -173
  329. package/vscode/src/vs/workbench/contrib/extensions/browser/media/extensionActions.css.js +1 -1
  330. package/vscode/src/vs/workbench/contrib/extensions/common/extensions.js +2 -1
  331. package/vscode/src/vs/workbench/contrib/files/browser/fileActions.js +17 -5
  332. package/vscode/src/vs/workbench/contrib/files/browser/files.contribution._configuration.js +62 -44
  333. package/vscode/src/vs/workbench/contrib/files/browser/files.contribution._editorPane.js +2 -2
  334. package/vscode/src/vs/workbench/contrib/files/browser/views/openEditorsView.js +2 -2
  335. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.js +114 -107
  336. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatContentWidget.js +33 -25
  337. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatController.js +71 -101
  338. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSession.js +38 -43
  339. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionServiceImpl.js +11 -33
  340. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatStrategies.js +3 -4
  341. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatWidget.js +49 -86
  342. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatZoneWidget.js +60 -71
  343. package/vscode/src/vs/workbench/contrib/inlineChat/browser/media/inlineChat.css.js +1 -1
  344. package/vscode/src/vs/workbench/contrib/inlineChat/browser/media/inlineChatContentWidget.css.js +1 -1
  345. package/vscode/src/vs/workbench/contrib/inlineChat/common/inlineChat.js +116 -113
  346. package/vscode/src/vs/workbench/contrib/markdown/browser/markdownDocumentRenderer.js +6 -10
  347. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditorInputModel.js +2 -2
  348. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/multiDiffEditorInput.js +1 -0
  349. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/scmMultiDiffSourceResolver.js +2 -2
  350. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/findFilters.js +12 -23
  351. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/findMatchDecorationModel.js +0 -2
  352. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/findModel.js +7 -9
  353. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/notebookFindReplaceWidget.js +88 -61
  354. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/notebookFindWidget.js +1 -3
  355. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/cellOutputActions.js +39 -3
  356. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebookChatContext.js +2 -1
  357. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebookChatController.js +12 -11
  358. package/vscode/src/vs/workbench/contrib/notebook/browser/media/notebookCellChat.css.js +1 -1
  359. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookAccessibilityProvider.js +1 -1
  360. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookBrowser.js +3 -2
  361. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditorWidget.js +40 -105
  362. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookIcons.js +27 -26
  363. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookOptions.js +14 -5
  364. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellActionView.js +1 -1
  365. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellComments.js +43 -46
  366. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellDnd.js +1 -1
  367. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellOutput.js +4 -4
  368. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellStatusPart.js +12 -9
  369. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellToolbars.js +19 -14
  370. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCell.js +2 -2
  371. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCellRunToolbar.js +9 -6
  372. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/markupCell.js +1 -1
  373. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/backLayerWebView.js +5 -3
  374. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/cellRenderer.js +3 -3
  375. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/webviewPreloads.js +1 -1
  376. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/baseCellViewModel.js +16 -6
  377. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/codeCellViewModel.js +8 -8
  378. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/notebookOutlineDataSourceFactory.service.js +3 -0
  379. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/notebookViewModelImpl.js +11 -12
  380. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookEditorStickyScroll.js +12 -13
  381. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookEditorToolbar.js +1 -1
  382. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookTopCellToolbar.js +5 -3
  383. package/vscode/src/vs/workbench/contrib/notebook/common/notebookCommon.js +9 -2
  384. package/vscode/src/vs/workbench/contrib/notebook/common/notebookEditorInput.js +37 -36
  385. package/vscode/src/vs/workbench/contrib/notebook/common/notebookEditorModel.js +18 -8
  386. package/vscode/src/vs/workbench/contrib/preferences/browser/preferencesWidgets.js +1 -1
  387. package/vscode/src/vs/workbench/contrib/preferences/browser/settingsTreeModels.js +14 -5
  388. package/vscode/src/vs/workbench/contrib/preferences/common/settingsEditorColorRegistry.js +17 -22
  389. package/vscode/src/vs/workbench/contrib/remote/browser/media/tunnelView.css.js +1 -1
  390. package/vscode/src/vs/workbench/contrib/remote/browser/tunnelView.js +7 -10
  391. package/vscode/src/vs/workbench/contrib/scm/browser/dirtydiffDecorator.js +7 -27
  392. package/vscode/src/vs/workbench/contrib/search/browser/anythingQuickAccess.js +3 -4
  393. package/vscode/src/vs/workbench/contrib/search/browser/notebookSearch/notebookSearchService.js +2 -2
  394. package/vscode/src/vs/workbench/contrib/search/browser/searchActionsFind.js +4 -0
  395. package/vscode/src/vs/workbench/contrib/search/browser/searchModel.js +3 -3
  396. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/xtermTerminal.d.ts +3 -0
  397. package/vscode/src/vs/workbench/contrib/terminal/common/terminal.d.ts +0 -1
  398. package/vscode/src/vs/workbench/contrib/terminal/common/terminalColorRegistry.js +13 -37
  399. package/vscode/src/vs/workbench/contrib/testing/common/testCoverage.d.ts +88 -0
  400. package/vscode/src/vs/workbench/contrib/testing/common/testCoverage.js +48 -31
  401. package/vscode/src/vs/workbench/contrib/testing/common/testId.d.ts +115 -0
  402. package/vscode/src/vs/workbench/contrib/testing/common/testResult.d.ts +226 -0
  403. package/vscode/src/vs/workbench/contrib/testing/common/testTypes.d.ts +319 -0
  404. package/vscode/src/vs/workbench/contrib/testing/common/testTypes.js +2 -3
  405. package/vscode/src/vs/workbench/contrib/testing/common/testingStates.d.ts +10 -0
  406. package/vscode/src/vs/workbench/contrib/webview/browser/webviewWindowDragMonitor.js +21 -2
  407. package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewIconManager.js +7 -8
  408. package/vscode/src/vs/workbench/services/authentication/browser/authenticationService.js +3 -3
  409. package/vscode/src/vs/workbench/services/authentication/common/authentication.d.ts +10 -5
  410. package/vscode/src/vs/workbench/services/editor/common/customEditorLabelService.js +54 -21
  411. package/vscode/src/vs/workbench/services/extensionManagement/common/extensionManagement.service.d.ts +1 -0
  412. package/vscode/src/vs/workbench/services/extensions/browser/extensionService.d.ts +1 -2
  413. package/vscode/src/vs/workbench/services/extensions/common/abstractExtensionService.d.ts +2 -4
  414. package/vscode/src/vs/workbench/services/extensions/common/extensions.js +5 -3
  415. package/vscode/src/vs/workbench/services/extensions/common/extensions.service.d.ts +3 -1
  416. package/vscode/src/vs/workbench/services/extensions/common/extensionsRegistry.js +59 -41
  417. package/vscode/src/vs/workbench/services/extensions/common/rpcProtocol.js +1 -1
  418. package/vscode/src/vs/workbench/services/filesConfiguration/common/filesConfigurationService.js +3 -2
  419. package/vscode/src/vs/workbench/services/host/browser/host.service.d.ts +1 -0
  420. package/vscode/src/vs/workbench/services/language/common/languageService.js +7 -0
  421. package/vscode/src/vs/workbench/services/layout/browser/layoutService.js +1 -1
  422. package/vscode/src/vs/workbench/services/preferences/common/preferences.d.ts +2 -2
  423. package/vscode/src/vs/workbench/services/search/common/search.js +2 -1
  424. package/vscode/src/vs/workbench/services/search/common/textSearchManager.js +2 -2
  425. package/vscode/src/vs/workbench/services/statusbar/browser/statusbar.d.ts +2 -2
  426. package/vscode/src/vs/workbench/services/textfile/common/encoding.js +69 -26
  427. package/vscode/src/vs/workbench/services/textfile/common/textFileEditorModel.js +23 -4
  428. package/vscode/src/vs/workbench/services/textfile/common/textfiles.d.ts +5 -1
  429. package/vscode/src/vs/workbench/services/userDataProfile/common/userDataProfileIcons.js +1 -1
  430. package/vscode/src/vs/workbench/services/views/browser/viewsService.js +12 -5
  431. package/vscode/src/vs/workbench/services/workingCopy/common/storedFileWorkingCopy.js +38 -19
  432. package/vscode/src/vs/workbench/services/workingCopy/common/workingCopyFileService.service.d.ts +2 -1
  433. package/vscode-dts/vscode.proposed.aiTextSearchProvider.d.ts +0 -196
  434. package/vscode-dts/vscode.proposed.attributableCoverage.d.ts +28 -10
  435. package/vscode-dts/vscode.proposed.authGetSessions.d.ts +30 -22
  436. package/vscode-dts/vscode.proposed.chatProvider.d.ts +17 -8
  437. package/vscode-dts/vscode.proposed.chatVariableResolver.d.ts +0 -9
  438. package/vscode-dts/vscode.proposed.commentReveal.d.ts +32 -0
  439. package/vscode-dts/vscode.proposed.commentThreadApplicability.d.ts +10 -0
  440. package/vscode-dts/vscode.proposed.createFileSystemWatcher.d.ts +1 -1
  441. package/vscode-dts/vscode.proposed.fileComments.d.ts +12 -53
  442. package/vscode-dts/vscode.proposed.fileSearchProvider.d.ts +6 -0
  443. package/vscode-dts/vscode.proposed.inlineCompletionsAdditions.d.ts +6 -0
  444. package/vscode-dts/vscode.proposed.lmTools.d.ts +91 -0
  445. package/vscode-dts/vscode.proposed.mappedEditsProvider.d.ts +1 -1
  446. package/vscode-dts/vscode.proposed.scmHistoryProvider.d.ts +10 -6
  447. package/vscode-dts/vscode.proposed.terminalShellIntegration.d.ts +38 -13
  448. package/vscode/src/vs/editor/browser/observableUtilities.js +0 -58
  449. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/notebookOutlineProviderFactory.service.js +0 -3
  450. package/vscode/src/vs/workbench/services/extensions/common/extensionsApiProposals.js +0 -122
@@ -1,38 +1,33 @@
1
1
  import { __decorate, __param } from '../../../../../../../../../external/tslib/tslib.es6.js';
2
+ import { localizeWithPath } from '../../../../../../nls.js';
2
3
  import { $, trackFocus, addDisposableListener, getTotalWidth } from '../../../../../../base/browser/dom.js';
4
+ import './notebookFindReplaceWidget.css.js';
5
+ import { ActionBar } from '../../../../../../base/browser/ui/actionbar/actionbar.js';
6
+ import { AnchorAlignment } from '../../../../../../base/browser/ui/contextview/contextview.js';
7
+ import { DropdownMenuActionViewItem } from '../../../../../../base/browser/ui/dropdown/dropdownActionViewItem.js';
3
8
  import { FindInput } from '../../../../../../base/browser/ui/findinput/findInput.js';
4
9
  import { ProgressBar } from '../../../../../../base/browser/ui/progressbar/progressbar.js';
10
+ import { Sash, Orientation } from '../../../../../../base/browser/ui/sash/sash.js';
11
+ import { Toggle } from '../../../../../../base/browser/ui/toggle/toggle.js';
5
12
  import { Widget } from '../../../../../../base/browser/ui/widget.js';
13
+ import { Action, ActionRunner, Separator } from '../../../../../../base/common/actions.js';
6
14
  import { Delayer } from '../../../../../../base/common/async.js';
15
+ import { Codicon } from '../../../../../../base/common/codicons.js';
7
16
  import { KeyCode } from '../../../../../../base/common/keyCodes.js';
8
- import './notebookFindReplaceWidget.css.js';
17
+ import { Disposable } from '../../../../../../base/common/lifecycle.js';
18
+ import { isSafari } from '../../../../../../base/common/platform.js';
19
+ import { ThemeIcon } from '../../../../../../base/common/themables.js';
9
20
  import { FindReplaceState } from '../../../../../../editor/contrib/find/browser/findState.js';
10
21
  import { SimpleButton, findPreviousMatchIcon, findNextMatchIcon, findSelectionIcon, findReplaceIcon, findReplaceAllIcon } from '../../../../../../editor/contrib/find/browser/findWidget.js';
11
- import { localizeWithPath } from '../../../../../../nls.js';
12
- import { ContextScopedReplaceInput, registerAndCreateHistoryNavigationContext } from '../../../../../../platform/history/browser/contextScopedHistoryWidget.js';
13
- import { IContextKeyService } from '../../../../../../platform/contextkey/common/contextkey.service.js';
14
- import { IContextViewService, IContextMenuService } from '../../../../../../platform/contextview/browser/contextView.service.js';
15
- import { registerIcon, widgetClose } from '../../../../../../platform/theme/common/iconRegistry.js';
16
- import { registerThemingParticipant } from '../../../../../../platform/theme/common/themeService.js';
17
- import { ThemeIcon } from '../../../../../../base/common/themables.js';
18
22
  import { parseReplaceString, ReplacePattern } from '../../../../../../editor/contrib/find/browser/replacePattern.js';
19
- import { Codicon } from '../../../../../../base/common/codicons.js';
23
+ import { createAndFillInActionBarActions } from '../../../../../../platform/actions/browser/menuEntryActionViewItem.js';
20
24
  import { IConfigurationService } from '../../../../../../platform/configuration/common/configuration.service.js';
21
- import { Action, ActionRunner, Separator } from '../../../../../../base/common/actions.js';
25
+ import { IContextKeyService } from '../../../../../../platform/contextkey/common/contextkey.service.js';
26
+ import { IContextViewService, IContextMenuService } from '../../../../../../platform/contextview/browser/contextView.service.js';
27
+ import { ContextScopedReplaceInput, registerAndCreateHistoryNavigationContext } from '../../../../../../platform/history/browser/contextScopedHistoryWidget.js';
28
+ import { IHoverService } from '../../../../../../platform/hover/browser/hover.service.js';
22
29
  import { IInstantiationService } from '../../../../../../platform/instantiation/common/instantiation.js';
23
- import { createAndFillInActionBarActions } from '../../../../../../platform/actions/browser/menuEntryActionViewItem.js';
24
- import { AnchorAlignment } from '../../../../../../base/browser/ui/contextview/contextview.js';
25
- import { DropdownMenuActionViewItem } from '../../../../../../base/browser/ui/dropdown/dropdownActionViewItem.js';
26
- import { ActionBar } from '../../../../../../base/browser/ui/actionbar/actionbar.js';
27
- import { filterIcon } from '../../../../extensions/browser/extensionsIcons.js';
28
- import { NotebookFindFilters } from './findFilters.js';
29
- import { isSafari } from '../../../../../../base/common/platform.js';
30
- import { Sash, Orientation } from '../../../../../../base/browser/ui/sash/sash.js';
31
30
  import { defaultProgressBarStyles, defaultInputBoxStyles, defaultToggleStyles } from '../../../../../../platform/theme/browser/defaultStyles.js';
32
- import { Toggle } from '../../../../../../base/browser/ui/toggle/toggle.js';
33
- import { Disposable } from '../../../../../../base/common/lifecycle.js';
34
- import { NotebookSetting } from '../../../common/notebookCommon.js';
35
- import { IHoverService } from '../../../../../../platform/hover/browser/hover.service.js';
36
31
  import { asCssVariable } from '../../../../../../platform/theme/common/colorUtils.js';
37
32
  import '../../../../../../platform/theme/common/colors/baseColors.js';
38
33
  import '../../../../../../platform/theme/common/colors/chartsColors.js';
@@ -44,12 +39,17 @@ import '../../../../../../platform/theme/common/colors/minimapColors.js';
44
39
  import '../../../../../../platform/theme/common/colors/miscColors.js';
45
40
  import '../../../../../../platform/theme/common/colors/quickpickColors.js';
46
41
  import '../../../../../../platform/theme/common/colors/searchColors.js';
42
+ import { registerIcon, widgetClose } from '../../../../../../platform/theme/common/iconRegistry.js';
43
+ import { registerThemingParticipant } from '../../../../../../platform/theme/common/themeService.js';
44
+ import { filterIcon } from '../../../../extensions/browser/extensionsIcons.js';
45
+ import { NotebookFindFilters } from './findFilters.js';
46
+ import { NotebookSetting, NotebookFindScopeType } from '../../../common/notebookCommon.js';
47
47
  const _moduleId = "vs/workbench/contrib/notebook/browser/contrib/find/notebookFindReplaceWidget";
48
48
  const NLS_FIND_INPUT_LABEL = ( localizeWithPath(_moduleId, 0, "Find"));
49
49
  const NLS_FIND_INPUT_PLACEHOLDER = ( localizeWithPath(_moduleId, 1, "Find"));
50
50
  const NLS_PREVIOUS_MATCH_BTN_LABEL = ( localizeWithPath(_moduleId, 2, "Previous Match"));
51
51
  const NLS_NEXT_MATCH_BTN_LABEL = ( localizeWithPath(_moduleId, 3, "Next Match"));
52
- const NLS_FIND_IN_CELL_SELECTION_BTN_LABEL = ( localizeWithPath(_moduleId, 4, "Find in Cell Selection"));
52
+ const NLS_TOGGLE_SELECTION_FIND_TITLE = ( localizeWithPath(_moduleId, 4, "Find in Selection"));
53
53
  const NLS_CLOSE_BTN_LABEL = ( localizeWithPath(_moduleId, 5, "Close"));
54
54
  const NLS_TOGGLE_REPLACE_MODE_BTN_LABEL = ( localizeWithPath(_moduleId, 6, "Toggle Replace"));
55
55
  const NLS_REPLACE_INPUT_LABEL = ( localizeWithPath(_moduleId, 7, "Replace"));
@@ -62,7 +62,7 @@ const NOTEBOOK_FIND_IN_MARKUP_INPUT = ( localizeWithPath(_moduleId, 13, "Markdow
62
62
  const NOTEBOOK_FIND_IN_MARKUP_PREVIEW = ( localizeWithPath(_moduleId, 14, "Rendered Markdown"));
63
63
  const NOTEBOOK_FIND_IN_CODE_INPUT = ( localizeWithPath(_moduleId, 15, "Code Cell Source"));
64
64
  const NOTEBOOK_FIND_IN_CODE_OUTPUT = ( localizeWithPath(_moduleId, 16, "Code Cell Output"));
65
- const NOTEBOOK_FIND_WIDGET_INITIAL_WIDTH = 318;
65
+ const NOTEBOOK_FIND_WIDGET_INITIAL_WIDTH = 419;
66
66
  const NOTEBOOK_FIND_WIDGET_INITIAL_HORIZONTAL_PADDING = 4;
67
67
  let NotebookFindFilterActionViewItem = class NotebookFindFilterActionViewItem extends DropdownMenuActionViewItem {
68
68
  constructor(filters, action, options, actionRunner, contextMenuService) {
@@ -261,15 +261,15 @@ let SimpleFindReplaceWidget = class SimpleFindReplaceWidget extends Widget {
261
261
  this._isVisible = false;
262
262
  this._isReplaceVisible = false;
263
263
  this.foundMatch = false;
264
- this.selectionDecorationIds = [];
264
+ this.cellSelectionDecorationIds = [];
265
+ this.textSelectionDecorationIds = [];
265
266
  const findFilters = this._configurationService.getValue(NotebookSetting.findFilters) ?? { markupSource: true, markupPreview: true, codeSource: true, codeOutput: true };
266
267
  this._filters = ( (new NotebookFindFilters(
267
268
  findFilters.markupSource,
268
269
  findFilters.markupPreview,
269
270
  findFilters.codeSource,
270
271
  findFilters.codeOutput,
271
- false,
272
- []
272
+ { findScopeType: NotebookFindScopeType.None }
273
273
  )));
274
274
  this._state.change({ filters: this._filters }, false);
275
275
  this._filters.onDidChange(() => {
@@ -371,22 +371,47 @@ let SimpleFindReplaceWidget = class SimpleFindReplaceWidget extends Widget {
371
371
  }, hoverService))));
372
372
  this.inSelectionToggle = this._register(( (new Toggle({
373
373
  icon: findSelectionIcon,
374
- title: NLS_FIND_IN_CELL_SELECTION_BTN_LABEL,
374
+ title: NLS_TOGGLE_SELECTION_FIND_TITLE,
375
375
  isChecked: false,
376
376
  inputActiveOptionBackground: asCssVariable(inputActiveOptionBackground),
377
377
  inputActiveOptionBorder: asCssVariable(inputActiveOptionBorder),
378
378
  inputActiveOptionForeground: asCssVariable(inputActiveOptionForeground),
379
379
  }))));
380
+ this.inSelectionToggle.domNode.style.display = 'inline';
380
381
  this.inSelectionToggle.onChange(() => {
381
382
  const checked = this.inSelectionToggle.checked;
382
- this._filters.searchInRanges = checked;
383
383
  if (checked) {
384
- this._filters.selectedRanges = this._notebookEditor.getSelections();
385
- this.setCellSelectionDecorations();
384
+ const cellSelection = this._notebookEditor.getSelections();
385
+ const textSelection = this._notebookEditor.getSelectionViewModels()[0].getSelections();
386
+ if (cellSelection.length > 1 || ( (cellSelection.some(range => range.end - range.start > 1)))) {
387
+ this._filters.findScope = {
388
+ findScopeType: NotebookFindScopeType.Cells,
389
+ selectedCellRanges: cellSelection
390
+ };
391
+ this.setCellSelectionDecorations();
392
+ }
393
+ else if (textSelection.length > 1 || ( (textSelection.some(range => range.endLineNumber - range.startLineNumber >= 1)))) {
394
+ this._filters.findScope = {
395
+ findScopeType: NotebookFindScopeType.Text,
396
+ selectedCellRanges: cellSelection,
397
+ selectedTextRanges: textSelection
398
+ };
399
+ this.setTextSelectionDecorations(textSelection, this._notebookEditor.getSelectionViewModels()[0]);
400
+ }
401
+ else {
402
+ this._filters.findScope = {
403
+ findScopeType: NotebookFindScopeType.Cells,
404
+ selectedCellRanges: cellSelection
405
+ };
406
+ this.setCellSelectionDecorations();
407
+ }
386
408
  }
387
409
  else {
388
- this._filters.selectedRanges = [];
410
+ this._filters.findScope = {
411
+ findScopeType: NotebookFindScopeType.None
412
+ };
389
413
  this.clearCellSelectionDecorations();
414
+ this.clearTextSelectionDecorations();
390
415
  }
391
416
  });
392
417
  const closeBtn = this._register(( (new SimpleButton({
@@ -402,21 +427,6 @@ let SimpleFindReplaceWidget = class SimpleFindReplaceWidget extends Widget {
402
427
  this._innerFindDomNode.appendChild(this.nextBtn.domNode);
403
428
  this._innerFindDomNode.appendChild(this.inSelectionToggle.domNode);
404
429
  this._innerFindDomNode.appendChild(closeBtn.domNode);
405
- this.searchInSelectionEnabled = this._configurationService.getValue(NotebookSetting.findScope);
406
- this.inSelectionToggle.domNode.style.display = this.searchInSelectionEnabled ? 'inline' : 'none';
407
- this._configurationService.onDidChangeConfiguration(e => {
408
- if (e.affectsConfiguration(NotebookSetting.findScope)) {
409
- this.searchInSelectionEnabled = this._configurationService.getValue(NotebookSetting.findScope);
410
- if (this.searchInSelectionEnabled) {
411
- this.inSelectionToggle.domNode.style.display = 'inline';
412
- }
413
- else {
414
- this.inSelectionToggle.domNode.style.display = 'none';
415
- this.inSelectionToggle.checked = false;
416
- this.clearCellSelectionDecorations();
417
- }
418
- }
419
- });
420
430
  this._domNode.appendChild(this._innerFindDomNode);
421
431
  this.onkeyup(this._innerFindDomNode, e => {
422
432
  if (e.equals(KeyCode.Escape)) {
@@ -559,18 +569,40 @@ let SimpleFindReplaceWidget = class SimpleFindReplaceWidget extends Widget {
559
569
  options: { className: 'nb-multiCellHighlight', outputClassName: 'nb-multiCellHighlight' }
560
570
  });
561
571
  }
562
- this.selectionDecorationIds = this._notebookEditor.deltaCellDecorations([], decorations);
572
+ this.cellSelectionDecorationIds = this._notebookEditor.deltaCellDecorations([], decorations);
563
573
  }
564
574
  clearCellSelectionDecorations() {
565
- this._notebookEditor.deltaCellDecorations(this.selectionDecorationIds, []);
575
+ this._notebookEditor.deltaCellDecorations(this.cellSelectionDecorationIds, []);
576
+ }
577
+ setTextSelectionDecorations(textRanges, cell) {
578
+ this._notebookEditor.changeModelDecorations(changeAccessor => {
579
+ const decorations = [];
580
+ for (const range of textRanges) {
581
+ decorations.push({
582
+ ownerId: cell.handle,
583
+ decorations: [{
584
+ range: range,
585
+ options: {
586
+ description: 'text search range for notebook search scope',
587
+ isWholeLine: true,
588
+ className: 'nb-findScope'
589
+ }
590
+ }]
591
+ });
592
+ }
593
+ this.textSelectionDecorationIds = changeAccessor.deltaDecorations([], decorations);
594
+ });
595
+ }
596
+ clearTextSelectionDecorations() {
597
+ this._notebookEditor.changeModelDecorations(changeAccessor => {
598
+ changeAccessor.deltaDecorations(this.textSelectionDecorationIds, []);
599
+ });
566
600
  }
567
601
  _updateMatchesCount() {
568
602
  }
569
603
  dispose() {
570
604
  super.dispose();
571
- if (this._domNode && this._domNode.parentElement) {
572
- this._domNode.parentElement.removeChild(this._domNode);
573
- }
605
+ this._domNode.remove();
574
606
  }
575
607
  getDomNode() {
576
608
  return this._domNode;
@@ -598,14 +630,6 @@ let SimpleFindReplaceWidget = class SimpleFindReplaceWidget extends Widget {
598
630
  if (initialInput) {
599
631
  this._findInput.setValue(initialInput);
600
632
  }
601
- if (this.searchInSelectionEnabled && options?.searchInRanges !== undefined) {
602
- this._filters.searchInRanges = options.searchInRanges;
603
- this.inSelectionToggle.checked = options.searchInRanges;
604
- if (options.searchInRanges && options.selectedRanges) {
605
- this._filters.selectedRanges = options.selectedRanges;
606
- this.setCellSelectionDecorations();
607
- }
608
- }
609
633
  this._isVisible = true;
610
634
  setTimeout(() => {
611
635
  this._domNode.classList.add('visible', 'visible-transition');
@@ -645,7 +669,10 @@ let SimpleFindReplaceWidget = class SimpleFindReplaceWidget extends Widget {
645
669
  hide() {
646
670
  if (this._isVisible) {
647
671
  this.inSelectionToggle.checked = false;
648
- this._notebookEditor.deltaCellDecorations(this.selectionDecorationIds, []);
672
+ this._notebookEditor.deltaCellDecorations(this.cellSelectionDecorationIds, []);
673
+ this._notebookEditor.changeModelDecorations(changeAccessor => {
674
+ changeAccessor.deltaDecorations(this.textSelectionDecorationIds, []);
675
+ });
649
676
  this._domNode.classList.remove('visible-transition');
650
677
  this._domNode.setAttribute('aria-hidden', 'true');
651
678
  setTimeout(() => {
@@ -255,9 +255,7 @@ let NotebookFindWidget = class NotebookFindWidget extends SimpleFindReplaceWidge
255
255
  }
256
256
  this._matchesCount.style.width = MAX_MATCHES_COUNT_WIDTH + 'px';
257
257
  this._matchesCount.title = '';
258
- if (this._matchesCount.firstChild) {
259
- this._matchesCount.removeChild(this._matchesCount.firstChild);
260
- }
258
+ this._matchesCount.firstChild?.remove();
261
259
  let label;
262
260
  if (this._state.matchesCount > 0) {
263
261
  let matchesCount = String(this._state.matchesCount);
@@ -1,6 +1,7 @@
1
1
  import { localizeWithPath } from '../../../../../nls.js';
2
2
  import { registerAction2, Action2, MenuId } from '../../../../../platform/actions/common/actions.js';
3
3
  import { IClipboardService } from '../../../../../platform/clipboard/common/clipboardService.service.js';
4
+ import { IOpenerService } from '../../../../../platform/opener/common/opener.service.js';
4
5
  import { NOTEBOOK_ACTIONS_CATEGORY } from './coreActions.js';
5
6
  import { NOTEBOOK_CELL_HAS_OUTPUTS } from '../../common/notebookContextKeys.js';
6
7
  import { copyIcon } from '../notebookIcons.js';
@@ -8,7 +9,7 @@ import { ILogService } from '../../../../../platform/log/common/log.service.js';
8
9
  import { copyCellOutput } from '../contrib/clipboard/cellOutputClipboard.js';
9
10
  import { IEditorService } from '../../../../services/editor/common/editorService.service.js';
10
11
  import { getNotebookEditorFromEditorPane } from '../notebookBrowser.js';
11
- import { CellKind } from '../../common/notebookCommon.js';
12
+ import { CellKind, CellUri } from '../../common/notebookCommon.js';
12
13
  const _moduleId = "vs/workbench/contrib/notebook/browser/controller/cellOutputActions";
13
14
  const COPY_OUTPUT_COMMAND_ID = 'notebook.cellOutput.copy';
14
15
  registerAction2(class CopyCellOutputAction extends Action2 {
@@ -77,7 +78,7 @@ function getOutputViewModelFromId(outputId, notebookEditor) {
77
78
  if (notebookViewModel) {
78
79
  const codeCells = notebookViewModel.viewCells.filter(cell => cell.cellKind === CellKind.Code);
79
80
  for (const cell of codeCells) {
80
- const output = cell.outputsViewModels.find(output => output.model.outputId === outputId);
81
+ const output = cell.outputsViewModels.find(output => output.model.outputId === outputId || output.model.alternativeOutputId === outputId);
81
82
  if (output) {
82
83
  return output;
83
84
  }
@@ -85,4 +86,39 @@ function getOutputViewModelFromId(outputId, notebookEditor) {
85
86
  }
86
87
  return undefined;
87
88
  }
88
- export { COPY_OUTPUT_COMMAND_ID };
89
+ const OPEN_OUTPUT_COMMAND_ID = 'notebook.cellOutput.openInTextEditor';
90
+ registerAction2(class OpenCellOutputInEditorAction extends Action2 {
91
+ constructor() {
92
+ super({
93
+ id: OPEN_OUTPUT_COMMAND_ID,
94
+ title: ( localizeWithPath(_moduleId, 1, "Open Cell Output in Text Editor")),
95
+ f1: false,
96
+ category: NOTEBOOK_ACTIONS_CATEGORY,
97
+ icon: copyIcon,
98
+ });
99
+ }
100
+ getNoteboookEditor(editorService, outputContext) {
101
+ if (outputContext && 'notebookEditor' in outputContext) {
102
+ return outputContext.notebookEditor;
103
+ }
104
+ return getNotebookEditorFromEditorPane(editorService.activeEditorPane);
105
+ }
106
+ async run(accessor, outputContext) {
107
+ const notebookEditor = this.getNoteboookEditor(accessor.get(IEditorService), outputContext);
108
+ if (!notebookEditor) {
109
+ return;
110
+ }
111
+ let outputViewModel;
112
+ if (outputContext && 'outputId' in outputContext && typeof outputContext.outputId === 'string') {
113
+ outputViewModel = getOutputViewModelFromId(outputContext.outputId, notebookEditor);
114
+ }
115
+ else if (outputContext && 'outputViewModel' in outputContext) {
116
+ outputViewModel = outputContext.outputViewModel;
117
+ }
118
+ const openerService = accessor.get(IOpenerService);
119
+ if (outputViewModel?.model.outputId && notebookEditor.textModel?.uri) {
120
+ openerService.open(CellUri.generateCellOutputUri(notebookEditor.textModel.uri, outputViewModel.model.outputId));
121
+ }
122
+ }
123
+ });
124
+ export { COPY_OUTPUT_COMMAND_ID, OPEN_OUTPUT_COMMAND_ID };
@@ -19,4 +19,5 @@ const MENU_CELL_CHAT_WIDGET = MenuId.for('cellChatWidget');
19
19
  const MENU_CELL_CHAT_WIDGET_STATUS = MenuId.for('cellChatWidget.status');
20
20
  MenuId.for('cellChatWidget.feedback');
21
21
  MenuId.for('cellChatWidget.toolbar');
22
- export { CTX_NOTEBOOK_CELL_CHAT_FOCUSED, CTX_NOTEBOOK_CHAT_HAS_ACTIVE_REQUEST, CTX_NOTEBOOK_CHAT_OUTER_FOCUS_POSITION, CTX_NOTEBOOK_CHAT_USER_DID_EDIT, MENU_CELL_CHAT_INPUT, MENU_CELL_CHAT_WIDGET, MENU_CELL_CHAT_WIDGET_STATUS };
22
+ const CTX_NOTEBOOK_CHAT_HAS_AGENT = ( (new RawContextKey('notebookChatAgentRegistered', false, ( localizeWithPath(_moduleId, 4, "Whether a chat agent for notebook is registered")))));
23
+ export { CTX_NOTEBOOK_CELL_CHAT_FOCUSED, CTX_NOTEBOOK_CHAT_HAS_ACTIVE_REQUEST, CTX_NOTEBOOK_CHAT_HAS_AGENT, CTX_NOTEBOOK_CHAT_OUTER_FOCUS_POSITION, CTX_NOTEBOOK_CHAT_USER_DID_EDIT, MENU_CELL_CHAT_INPUT, MENU_CELL_CHAT_WIDGET, MENU_CELL_CHAT_WIDGET_STATUS };
@@ -18,7 +18,6 @@ import { ILanguageService } from '../../../../../../editor/common/languages/lang
18
18
  import { IEditorWorkerService } from '../../../../../../editor/common/services/editorWorker.js';
19
19
  import { IModelService } from '../../../../../../editor/common/services/model.js';
20
20
  import { localizeWithPath } from '../../../../../../nls.js';
21
- import { MenuId } from '../../../../../../platform/actions/common/actions.js';
22
21
  import { IContextKeyService } from '../../../../../../platform/contextkey/common/contextkey.service.js';
23
22
  import { IInstantiationService } from '../../../../../../platform/instantiation/common/instantiation.js';
24
23
  import { StorageScope, StorageTarget } from '../../../../../../platform/storage/common/storage.js';
@@ -28,7 +27,6 @@ import { IChatService } from '../../../../chat/common/chatService.service.js';
28
27
  import { countWords } from '../../../../chat/common/chatWordCounter.js';
29
28
  import { InlineChatWidget } from '../../../../inlineChat/browser/inlineChatWidget.js';
30
29
  import { performAsyncTextEdit, asProgressiveEdit } from '../../../../inlineChat/browser/utils.js';
31
- import { MENU_INLINE_CHAT_WIDGET } from '../../../../inlineChat/common/inlineChat.js';
32
30
  import { insertCell, runDeleteAction } from '../cellOperations.js';
33
31
  import { CTX_NOTEBOOK_CHAT_HAS_ACTIVE_REQUEST, CTX_NOTEBOOK_CELL_CHAT_FOCUSED, CTX_NOTEBOOK_CHAT_USER_DID_EDIT, CTX_NOTEBOOK_CHAT_OUTER_FOCUS_POSITION, MENU_CELL_CHAT_WIDGET_STATUS } from './notebookChatContext.js';
34
32
  import { registerNotebookContribution } from '../../notebookEditorExtensions.js';
@@ -316,14 +314,16 @@ let NotebookChatController = class NotebookChatController extends Disposable {
316
314
  const result = this._modelService.createModel('', null, inputUri, false);
317
315
  fakeParentEditor.setModel(result);
318
316
  const inlineChatWidget = this._widgetDisposableStore.add(this._instantiationService.createInstance(InlineChatWidget, ChatAgentLocation.Notebook, {
319
- telemetrySource: 'notebook-generate-cell',
320
- inputMenuId: MenuId.ChatExecute,
321
- widgetMenuId: MENU_INLINE_CHAT_WIDGET,
322
317
  statusMenuId: MENU_CELL_CHAT_WIDGET_STATUS,
323
- rendererOptions: {
324
- renderTextEditsAsSummary: (uri) => {
325
- return isEqual(uri, this._widget?.parentEditor.getModel()?.uri)
326
- || isEqual(uri, this._notebookEditor.textModel?.uri);
318
+ chatWidgetViewOptions: {
319
+ rendererOptions: {
320
+ renderTextEditsAsSummary: (uri) => {
321
+ return isEqual(uri, this._widget?.parentEditor.getModel()?.uri)
322
+ || isEqual(uri, this._notebookEditor.textModel?.uri);
323
+ }
324
+ },
325
+ menus: {
326
+ telemetrySource: 'notebook-generate-cell'
327
327
  }
328
328
  }
329
329
  }));
@@ -362,6 +362,9 @@ let NotebookChatController = class NotebookChatController extends Disposable {
362
362
  }, 0, this._store);
363
363
  this._sessionCtor = createCancelablePromise(async (token) => {
364
364
  await this._startSession(token);
365
+ assertType(this._model.value);
366
+ const model = this._model.value;
367
+ this._widget?.inlineChatWidget.setChatModel(model);
365
368
  if (fakeParentEditor.hasModel()) {
366
369
  if (this._widget) {
367
370
  this._focusWidget();
@@ -422,8 +425,6 @@ let NotebookChatController = class NotebookChatController extends Disposable {
422
425
  await this._sessionCtor;
423
426
  assertType(this._model.value);
424
427
  assertType(this._strategy);
425
- const model = this._model.value;
426
- this._widget.inlineChatWidget.setChatModel(model);
427
428
  const lastInput = this._widget.inlineChatWidget.value;
428
429
  this._historyUpdate(lastInput);
429
430
  const editor = this._widget.parentEditor;
@@ -1,4 +1,4 @@
1
1
  import n from '../../../../../../../../external/rollup-plugin-styles/dist/runtime/inject-css.js';
2
- var css = ".monaco-workbench .notebookOverlay .cell-chat-part{background:var(--vscode-inlineChat-background);border:1px solid var(--vscode-inlineChat-border);border-radius:6px;color:inherit;display:none;padding:6px}.monaco-workbench .notebookOverlay .cell-chat-part .cell-chat-container{padding:8px 8px 0}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat{color:inherit}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .body{display:flex}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .body .content{border-radius:2px;box-sizing:border-box;display:flex;outline:1px solid var(--vscode-inlineChatInput-border);outline-offset:-1px}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .body .content.synthetic-focus{outline:1px solid var(--vscode-inlineChatInput-focusBorder)}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .body .content .input{align-items:center;background-color:var(--vscode-inlineChatInput-background);cursor:text;display:flex;justify-content:space-between;padding:2px 2px 2px 6px}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .body .content .input .monaco-editor-background{background-color:var(--vscode-inlineChatInput-background)}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .body .content .input .editor-placeholder{color:var(--vscode-inlineChatInput-placeholderForeground);overflow:hidden;position:absolute;text-overflow:ellipsis;white-space:nowrap;z-index:1}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .body .content .input .editor-placeholder.hidden{display:none}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .body .content .input .editor-container{vertical-align:middle}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .body .toolbar{align-self:stretch;background:var(--vscode-inlineChatInput-background);border-bottom-right-radius:2px;border-top-right-radius:2px;display:flex;flex-direction:column;padding-right:4px}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .body .toolbar .actions-container{display:flex;flex-direction:row;gap:4px}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .body>.widget-toolbar{padding-left:4px}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .progress{left:19px;position:relative;width:calc(100% - 18px)}.monaco-workbench .part.editor>.content .monaco-editor .inline-chat .progress .monaco-progress-container{top:0}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .status{align-items:center;display:flex;justify-content:space-between;margin-top:4px}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .status.actions{margin-top:4px}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .status .actions.hidden{display:none}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .status .label{align-self:baseline;color:var(--vscode-descriptionForeground);display:flex;font-size:11px;overflow:hidden}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .status .label.hidden{display:none}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .status .label.info{margin-right:auto;padding-left:2px}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .status .label.info>.codicon{font-size:12px;line-height:18px;padding:0 5px}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .status .label.status{align-self:center;margin-left:auto;padding-left:10px;padding-right:4px}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .status .label .slash-command-pill CODE{background-color:var(--vscode-chat-slashCommandBackground);border-radius:3px;color:var(--vscode-chat-slashCommandForeground);padding:0 1px}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .markdownMessage{padding:10px 5px}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .markdownMessage.hidden{display:none}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .markdownMessage .message *{margin:unset}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .markdownMessage .message code{background-color:var(--vscode-textPreformat-background);border-radius:4px;color:var(--vscode-textPreformat-foreground);font-family:var(--monaco-monospace-font);font-size:12px;padding:1px 3px}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .markdownMessage .message .interactive-result-code-block{margin:16px 0}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .markdownMessage .message{-webkit-line-clamp:none;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden;-webkit-user-select:text;user-select:text}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .markdownMessage .message[state=cropped]{-webkit-line-clamp:var(--vscode-inline-chat-cropped,3)}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .markdownMessage .message[state=expanded]{-webkit-line-clamp:var(--vscode-inline-chat-expanded,10)}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .status .label A{color:var(--vscode-textLink-foreground);cursor:pointer}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .status .label.error{color:var(--vscode-errorForeground)}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .status .label.warn{color:var(--vscode-editorWarning-foreground)}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .status .actions{display:flex}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .status .actions>.monaco-button,.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .status .actions>.monaco-button-dropdown{margin-right:6px}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .status .actions>.monaco-button-dropdown>.monaco-dropdown-button{align-items:center;display:flex;padding:0 4px}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .status .actions>.monaco-button.codicon{display:flex}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .status .actions>.monaco-button.codicon:before{align-self:center}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .status .actions .monaco-text-button{padding:2px 4px;white-space:nowrap}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .status .monaco-toolbar .action-item{padding:0 2px}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .status .monaco-toolbar .action-label.checked{background-color:var(--vscode-inputOption-activeBackground);color:var(--vscode-inputOption-activeForeground);outline:1px solid var(--vscode-inputOption-activeBorder)}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .status .monaco-toolbar .action-item.button-item .action-label:is(:hover,:focus){background-color:var(--vscode-button-hoverBackground)}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .preview{display:none}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .previewDiff{border:1px solid var(--vscode-inlineChat-border);border-bottom-left-radius:2px;border-bottom-right-radius:2px;border-top:none;display:inherit;margin:0 2px 6px;padding:6px}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .previewCreateTitle{padding-top:6px}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .previewCreate{border:1px solid var(--vscode-inlineChat-border);border-radius:2px;display:inherit;margin:0 2px 6px;padding:6px}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .previewCreate.hidden,.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .previewCreateTitle.hidden,.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .previewDiff.hidden{display:none}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat-lines-deleted-range-inline{background-color:var(--vscode-diffEditor-removedTextBackground);opacity:.6;text-decoration:line-through}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat-lines-inserted-range{background-color:var(--vscode-diffEditor-insertedTextBackground)}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat-block-selection{background-color:var(--vscode-inlineChat-regionHighlight)}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat-slash-command{opacity:0}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat-slash-command-detail{opacity:.5}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat-diff-widget .monaco-diff-editor .monaco-editor .margin-view-overlays,.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat-diff-widget .monaco-diff-editor .monaco-editor-background{background-color:var(--vscode-inlineChat-regionHighlight)}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat-newfile-widget{background-color:var(--vscode-inlineChat-regionHighlight);padding:3px 0 6px}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat-newfile-widget .title{align-items:center;display:flex;justify-content:space-between;padding:3px 6px 3px 0}.monaco-workbench .notebookOverlay .cell-chat-part .glyph-margin-widgets .cgmr.codicon-inline-chat-opaque,.monaco-workbench .notebookOverlay .cell-chat-part .glyph-margin-widgets .cgmr.codicon-inline-chat-transparent{cursor:pointer;display:block;transition:opacity .2s ease-in-out}.monaco-workbench .notebookOverlay .cell-chat-part .glyph-margin-widgets .cgmr.codicon-inline-chat-opaque{opacity:.5}.monaco-workbench .notebookOverlay .cell-chat-part .glyph-margin-widgets .cgmr.codicon-inline-chat-transparent{opacity:0}.monaco-workbench .notebookOverlay .cell-chat-part .glyph-margin-widgets .cgmr.codicon-inline-chat-opaque:hover,.monaco-workbench .notebookOverlay .cell-chat-part .glyph-margin-widgets .cgmr.codicon-inline-chat-transparent:hover{opacity:1}";
2
+ var css = ".monaco-workbench .notebookOverlay .cell-chat-part{background:var(--vscode-inlineChat-background);border:1px solid var(--vscode-inlineChat-border);border-radius:6px;color:inherit;display:none;padding:6px}.monaco-workbench .notebookOverlay .cell-chat-part .cell-chat-container{padding:8px 8px 0}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat{color:inherit}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .body{display:flex}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .body .content{border-radius:2px;box-sizing:border-box;display:flex;outline:1px solid var(--vscode-inlineChatInput-border);outline-offset:-1px}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .body .content.synthetic-focus{outline:1px solid var(--vscode-inlineChatInput-focusBorder)}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .body .content .input{align-items:center;background-color:var(--vscode-inlineChatInput-background);cursor:text;display:flex;justify-content:space-between;padding:2px 2px 2px 6px}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .body .content .input .monaco-editor-background{background-color:var(--vscode-inlineChatInput-background)}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .body .content .input .editor-placeholder{color:var(--vscode-inlineChatInput-placeholderForeground);overflow:hidden;position:absolute;text-overflow:ellipsis;white-space:nowrap;z-index:1}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .body .content .input .editor-placeholder.hidden{display:none}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .body .content .input .editor-container{vertical-align:middle}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .body .toolbar{align-self:stretch;background:var(--vscode-inlineChatInput-background);border-bottom-right-radius:2px;border-top-right-radius:2px;display:flex;flex-direction:column;padding-right:4px}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .body .toolbar .actions-container{display:flex;flex-direction:row;gap:4px}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .body>.widget-toolbar{padding-left:4px}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .progress{left:19px;position:relative;width:calc(100% - 18px)}.monaco-workbench .part.editor>.content .monaco-editor .inline-chat .progress .monaco-progress-container{top:0}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .status{align-items:center;display:flex;justify-content:space-between;margin-top:4px}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .status.actions{margin-top:4px}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .status .actions.hidden{display:none}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .status .label{align-self:baseline;color:var(--vscode-descriptionForeground);display:flex;font-size:11px;overflow:hidden}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .status .label.hidden{display:none}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .status .label.info{margin-right:auto;padding-left:2px}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .status .label.info>.codicon{font-size:12px;line-height:18px;padding:0 5px}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .status .label.status{align-self:center;margin-left:auto;padding-left:10px;padding-right:4px}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .status .label .slash-command-pill CODE{background-color:var(--vscode-chat-slashCommandBackground);border-radius:3px;color:var(--vscode-chat-slashCommandForeground);padding:0 1px}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .markdownMessage{padding:10px 5px}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .markdownMessage.hidden{display:none}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .markdownMessage .message *{margin:unset}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .markdownMessage .message code{background-color:var(--vscode-textPreformat-background);border-radius:4px;color:var(--vscode-textPreformat-foreground);font-family:var(--monaco-monospace-font);font-size:12px;padding:1px 3px}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .markdownMessage .message .interactive-result-code-block{margin:16px 0}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .markdownMessage .message{-webkit-line-clamp:none;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden;-webkit-user-select:text;user-select:text}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .status .label A{color:var(--vscode-textLink-foreground);cursor:pointer}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .status .label.error{color:var(--vscode-errorForeground)}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .status .label.warn{color:var(--vscode-editorWarning-foreground)}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .status .actions{display:flex}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .status .actions>.monaco-button,.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .status .actions>.monaco-button-dropdown{margin-right:6px}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .status .actions>.monaco-button-dropdown>.monaco-dropdown-button{align-items:center;display:flex;padding:0 4px}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .status .actions>.monaco-button.codicon{display:flex}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .status .actions>.monaco-button.codicon:before{align-self:center}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .status .actions .monaco-text-button{padding:2px 4px;white-space:nowrap}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .status .monaco-toolbar .action-item{padding:0 2px}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .status .monaco-toolbar .action-label.checked{background-color:var(--vscode-inputOption-activeBackground);color:var(--vscode-inputOption-activeForeground);outline:1px solid var(--vscode-inputOption-activeBorder)}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .status .monaco-toolbar .action-item.button-item .action-label:is(:hover,:focus){background-color:var(--vscode-button-hoverBackground)}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .preview{display:none}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .previewDiff{border:1px solid var(--vscode-inlineChat-border);border-bottom-left-radius:2px;border-bottom-right-radius:2px;border-top:none;display:inherit;margin:0 2px 6px;padding:6px}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .previewCreateTitle{padding-top:6px}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .previewCreate{border:1px solid var(--vscode-inlineChat-border);border-radius:2px;display:inherit;margin:0 2px 6px;padding:6px}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .previewCreate.hidden,.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .previewCreateTitle.hidden,.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat .previewDiff.hidden{display:none}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat-lines-deleted-range-inline{background-color:var(--vscode-diffEditor-removedTextBackground);opacity:.6;text-decoration:line-through}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat-lines-inserted-range{background-color:var(--vscode-diffEditor-insertedTextBackground)}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat-block-selection{background-color:var(--vscode-inlineChat-regionHighlight)}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat-slash-command{opacity:0}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat-slash-command-detail{opacity:.5}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat-diff-widget .monaco-diff-editor .monaco-editor .margin-view-overlays,.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat-diff-widget .monaco-diff-editor .monaco-editor-background{background-color:var(--vscode-inlineChat-regionHighlight)}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat-newfile-widget{background-color:var(--vscode-inlineChat-regionHighlight);padding:3px 0 6px}.monaco-workbench .notebookOverlay .cell-chat-part .inline-chat-newfile-widget .title{align-items:center;display:flex;justify-content:space-between;padding:3px 6px 3px 0}.monaco-workbench .notebookOverlay .cell-chat-part .glyph-margin-widgets .cgmr.codicon-inline-chat-opaque,.monaco-workbench .notebookOverlay .cell-chat-part .glyph-margin-widgets .cgmr.codicon-inline-chat-transparent{cursor:pointer;display:block;transition:opacity .2s ease-in-out}.monaco-workbench .notebookOverlay .cell-chat-part .glyph-margin-widgets .cgmr.codicon-inline-chat-opaque{opacity:.5}.monaco-workbench .notebookOverlay .cell-chat-part .glyph-margin-widgets .cgmr.codicon-inline-chat-transparent{opacity:0}.monaco-workbench .notebookOverlay .cell-chat-part .glyph-margin-widgets .cgmr.codicon-inline-chat-opaque:hover,.monaco-workbench .notebookOverlay .cell-chat-part .glyph-margin-widgets .cgmr.codicon-inline-chat-transparent:hover{opacity:1}";
3
3
  n(css,{});
4
4
  export { css, css as default };
@@ -34,7 +34,7 @@ class NotebookAccessibilityProvider extends Disposable {
34
34
  }
35
35
  getAriaLabel(element) {
36
36
  const event = Event.filter(this.onDidAriaLabelChange, e => e === element);
37
- return observableFromEvent(event, () => {
37
+ return observableFromEvent(this, event, () => {
38
38
  const viewModel = this.viewModel();
39
39
  if (!viewModel) {
40
40
  return '';
@@ -1,4 +1,4 @@
1
- import { NOTEBOOK_EDITOR_ID } from '../common/notebookCommon.js';
1
+ import { NOTEBOOK_EDITOR_ID, REPL_EDITOR_ID } from '../common/notebookCommon.js';
2
2
  import { isCompositeNotebookEditorInput } from '../common/notebookEditorInput.js';
3
3
  import { cellRangesToIndexes, reduceCellRanges } from '../common/notebookRange.js';
4
4
  const EXPAND_CELL_INPUT_COMMAND_ID = 'notebook.cell.expandCellInput';
@@ -98,7 +98,8 @@ function getNotebookEditorFromEditorPane(editorPane) {
98
98
  return editorPane.getControl();
99
99
  }
100
100
  const input = editorPane.input;
101
- if (input && isCompositeNotebookEditorInput(input)) {
101
+ const isInteractiveEditor = input && isCompositeNotebookEditorInput(input);
102
+ if (isInteractiveEditor || editorPane.getId() === REPL_EDITOR_ID) {
102
103
  return editorPane.getControl()?.notebookEditor;
103
104
  }
104
105
  return undefined;