@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
@@ -5,7 +5,7 @@ import { foreground, contrastBorder, iconForeground, focusBorder } from './baseC
5
5
  import { editorWidgetBackground } from './editorColors.js';
6
6
  const _moduleId = "vs/platform/theme/common/colors/inputColors";
7
7
  const inputBackground = registerColor('input.background', { dark: '#3C3C3C', light: Color.white, hcDark: Color.black, hcLight: Color.white }, ( localizeWithPath(_moduleId, 0, "Input box background.")));
8
- const inputForeground = registerColor('input.foreground', { dark: foreground, light: foreground, hcDark: foreground, hcLight: foreground }, ( localizeWithPath(_moduleId, 1, "Input box foreground.")));
8
+ const inputForeground = registerColor('input.foreground', foreground, ( localizeWithPath(_moduleId, 1, "Input box foreground.")));
9
9
  const inputBorder = registerColor('input.border', { dark: null, light: null, hcDark: contrastBorder, hcLight: contrastBorder }, ( localizeWithPath(_moduleId, 2, "Input box border.")));
10
10
  const inputActiveOptionBorder = registerColor('inputOption.activeBorder', { dark: '#007ACC', light: '#007ACC', hcDark: contrastBorder, hcLight: contrastBorder }, ( localizeWithPath(_moduleId, 3, "Border color of activated options in input fields.")));
11
11
  registerColor('inputOption.hoverBackground', { dark: '#5a5d5e80', light: '#b8b8b850', hcDark: null, hcLight: null }, ( localizeWithPath(_moduleId, 4, "Background color of activated options in input fields.")));
@@ -33,23 +33,23 @@ const selectBackground = registerColor('dropdown.background', { dark: '#3C3C3C',
33
33
  const selectListBackground = registerColor('dropdown.listBackground', { dark: null, light: null, hcDark: Color.black, hcLight: Color.white }, ( localizeWithPath(_moduleId, 18, "Dropdown list background.")));
34
34
  const selectForeground = registerColor('dropdown.foreground', { dark: '#F0F0F0', light: foreground, hcDark: Color.white, hcLight: foreground }, ( localizeWithPath(_moduleId, 19, "Dropdown foreground.")));
35
35
  const selectBorder = registerColor('dropdown.border', { dark: selectBackground, light: '#CECECE', hcDark: contrastBorder, hcLight: contrastBorder }, ( localizeWithPath(_moduleId, 20, "Dropdown border.")));
36
- const buttonForeground = registerColor('button.foreground', { dark: Color.white, light: Color.white, hcDark: Color.white, hcLight: Color.white }, ( localizeWithPath(_moduleId, 21, "Button foreground color.")));
37
- const buttonSeparator = registerColor('button.separator', { dark: ( (transparent(buttonForeground, .4))), light: ( (transparent(buttonForeground, .4))), hcDark: ( (transparent(buttonForeground, .4))), hcLight: ( (transparent(buttonForeground, .4))) }, ( localizeWithPath(_moduleId, 22, "Button separator color.")));
36
+ const buttonForeground = registerColor('button.foreground', Color.white, ( localizeWithPath(_moduleId, 21, "Button foreground color.")));
37
+ const buttonSeparator = registerColor('button.separator', ( (transparent(buttonForeground, .4))), ( localizeWithPath(_moduleId, 22, "Button separator color.")));
38
38
  const buttonBackground = registerColor('button.background', { dark: '#0E639C', light: '#007ACC', hcDark: null, hcLight: '#0F4A85' }, ( localizeWithPath(_moduleId, 23, "Button background color.")));
39
39
  const buttonHoverBackground = registerColor('button.hoverBackground', { dark: ( (lighten(buttonBackground, 0.2))), light: ( (darken(buttonBackground, 0.2))), hcDark: buttonBackground, hcLight: buttonBackground }, ( localizeWithPath(_moduleId, 24, "Button background color when hovering.")));
40
- const buttonBorder = registerColor('button.border', { dark: contrastBorder, light: contrastBorder, hcDark: contrastBorder, hcLight: contrastBorder }, ( localizeWithPath(_moduleId, 25, "Button border color.")));
40
+ const buttonBorder = registerColor('button.border', contrastBorder, ( localizeWithPath(_moduleId, 25, "Button border color.")));
41
41
  const buttonSecondaryForeground = registerColor('button.secondaryForeground', { dark: Color.white, light: Color.white, hcDark: Color.white, hcLight: foreground }, ( localizeWithPath(_moduleId, 26, "Secondary button foreground color.")));
42
42
  const buttonSecondaryBackground = registerColor('button.secondaryBackground', { dark: '#3A3D41', light: '#5F6A79', hcDark: null, hcLight: Color.white }, ( localizeWithPath(_moduleId, 27, "Secondary button background color.")));
43
43
  const buttonSecondaryHoverBackground = registerColor('button.secondaryHoverBackground', { dark: ( (lighten(buttonSecondaryBackground, 0.2))), light: ( (darken(buttonSecondaryBackground, 0.2))), hcDark: null, hcLight: null }, ( localizeWithPath(_moduleId, 28, "Secondary button background color when hovering.")));
44
- const checkboxBackground = registerColor('checkbox.background', { dark: selectBackground, light: selectBackground, hcDark: selectBackground, hcLight: selectBackground }, ( localizeWithPath(_moduleId, 29, "Background color of checkbox widget.")));
45
- registerColor('checkbox.selectBackground', { dark: editorWidgetBackground, light: editorWidgetBackground, hcDark: editorWidgetBackground, hcLight: editorWidgetBackground }, ( localizeWithPath(
44
+ const checkboxBackground = registerColor('checkbox.background', selectBackground, ( localizeWithPath(_moduleId, 29, "Background color of checkbox widget.")));
45
+ registerColor('checkbox.selectBackground', editorWidgetBackground, ( localizeWithPath(
46
46
  _moduleId,
47
47
  30,
48
48
  "Background color of checkbox widget when the element it's in is selected."
49
49
  )));
50
- const checkboxForeground = registerColor('checkbox.foreground', { dark: selectForeground, light: selectForeground, hcDark: selectForeground, hcLight: selectForeground }, ( localizeWithPath(_moduleId, 31, "Foreground color of checkbox widget.")));
51
- const checkboxBorder = registerColor('checkbox.border', { dark: selectBorder, light: selectBorder, hcDark: selectBorder, hcLight: selectBorder }, ( localizeWithPath(_moduleId, 32, "Border color of checkbox widget.")));
52
- registerColor('checkbox.selectBorder', { dark: iconForeground, light: iconForeground, hcDark: iconForeground, hcLight: iconForeground }, ( localizeWithPath(
50
+ const checkboxForeground = registerColor('checkbox.foreground', selectForeground, ( localizeWithPath(_moduleId, 31, "Foreground color of checkbox widget.")));
51
+ const checkboxBorder = registerColor('checkbox.border', selectBorder, ( localizeWithPath(_moduleId, 32, "Border color of checkbox widget.")));
52
+ registerColor('checkbox.selectBorder', iconForeground, ( localizeWithPath(
53
53
  _moduleId,
54
54
  33,
55
55
  "Border color of checkbox widget when the element it's in is selected."
@@ -4,12 +4,12 @@ import { registerColor, ifDefinedThenElse, darken, lighten, transparent } from '
4
4
  import { focusBorder, activeContrastBorder, iconForeground, contrastBorder, foreground } from './baseColors.js';
5
5
  import { editorWidgetBackground, widgetShadow, editorFindMatchHighlight, editorFindMatchHighlightBorder } from './editorColors.js';
6
6
  const _moduleId = "vs/platform/theme/common/colors/listColors";
7
- const listFocusBackground = registerColor('list.focusBackground', { dark: null, light: null, hcDark: null, hcLight: null }, ( localizeWithPath(
7
+ const listFocusBackground = registerColor('list.focusBackground', null, ( localizeWithPath(
8
8
  _moduleId,
9
9
  0,
10
10
  "List/Tree background color for the focused item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not."
11
11
  )));
12
- const listFocusForeground = registerColor('list.focusForeground', { dark: null, light: null, hcDark: null, hcLight: null }, ( localizeWithPath(
12
+ const listFocusForeground = registerColor('list.focusForeground', null, ( localizeWithPath(
13
13
  _moduleId,
14
14
  1,
15
15
  "List/Tree foreground color for the focused item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not."
@@ -19,7 +19,7 @@ const listFocusOutline = registerColor('list.focusOutline', { dark: focusBorder,
19
19
  2,
20
20
  "List/Tree outline color for the focused item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not."
21
21
  )));
22
- const listFocusAndSelectionOutline = registerColor('list.focusAndSelectionOutline', { dark: null, light: null, hcDark: null, hcLight: null }, ( localizeWithPath(
22
+ const listFocusAndSelectionOutline = registerColor('list.focusAndSelectionOutline', null, ( localizeWithPath(
23
23
  _moduleId,
24
24
  3,
25
25
  "List/Tree outline color for the focused item when the list/tree is active and selected. An active list/tree has keyboard focus, an inactive does not."
@@ -34,7 +34,7 @@ const listActiveSelectionForeground = registerColor('list.activeSelectionForegro
34
34
  5,
35
35
  "List/Tree foreground color for the selected item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not."
36
36
  )));
37
- const listActiveSelectionIconForeground = registerColor('list.activeSelectionIconForeground', { dark: null, light: null, hcDark: null, hcLight: null }, ( localizeWithPath(
37
+ const listActiveSelectionIconForeground = registerColor('list.activeSelectionIconForeground', null, ( localizeWithPath(
38
38
  _moduleId,
39
39
  6,
40
40
  "List/Tree icon foreground color for the selected item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not."
@@ -44,22 +44,22 @@ const listInactiveSelectionBackground = registerColor('list.inactiveSelectionBac
44
44
  7,
45
45
  "List/Tree background color for the selected item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not."
46
46
  )));
47
- const listInactiveSelectionForeground = registerColor('list.inactiveSelectionForeground', { dark: null, light: null, hcDark: null, hcLight: null }, ( localizeWithPath(
47
+ const listInactiveSelectionForeground = registerColor('list.inactiveSelectionForeground', null, ( localizeWithPath(
48
48
  _moduleId,
49
49
  8,
50
50
  "List/Tree foreground color for the selected item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not."
51
51
  )));
52
- const listInactiveSelectionIconForeground = registerColor('list.inactiveSelectionIconForeground', { dark: null, light: null, hcDark: null, hcLight: null }, ( localizeWithPath(
52
+ const listInactiveSelectionIconForeground = registerColor('list.inactiveSelectionIconForeground', null, ( localizeWithPath(
53
53
  _moduleId,
54
54
  9,
55
55
  "List/Tree icon foreground color for the selected item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not."
56
56
  )));
57
- const listInactiveFocusBackground = registerColor('list.inactiveFocusBackground', { dark: null, light: null, hcDark: null, hcLight: null }, ( localizeWithPath(
57
+ const listInactiveFocusBackground = registerColor('list.inactiveFocusBackground', null, ( localizeWithPath(
58
58
  _moduleId,
59
59
  10,
60
60
  "List/Tree background color for the focused item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not."
61
61
  )));
62
- const listInactiveFocusOutline = registerColor('list.inactiveFocusOutline', { dark: null, light: null, hcDark: null, hcLight: null }, ( localizeWithPath(
62
+ const listInactiveFocusOutline = registerColor('list.inactiveFocusOutline', null, ( localizeWithPath(
63
63
  _moduleId,
64
64
  11,
65
65
  "List/Tree outline color for the focused item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not."
@@ -69,7 +69,7 @@ const listHoverBackground = registerColor('list.hoverBackground', { dark: '#2A2D
69
69
  12,
70
70
  "List/Tree background when hovering over items using the mouse."
71
71
  )));
72
- const listHoverForeground = registerColor('list.hoverForeground', { dark: null, light: null, hcDark: null, hcLight: null }, ( localizeWithPath(
72
+ const listHoverForeground = registerColor('list.hoverForeground', null, ( localizeWithPath(
73
73
  _moduleId,
74
74
  13,
75
75
  "List/Tree foreground when hovering over items using the mouse."
@@ -116,7 +116,7 @@ const listFilterWidgetNoMatchesOutline = registerColor('listFilterWidget.noMatch
116
116
  23,
117
117
  'Outline color of the type filter widget in lists and trees, when there are no matches.'
118
118
  )));
119
- const listFilterWidgetShadow = registerColor('listFilterWidget.shadow', { dark: widgetShadow, light: widgetShadow, hcDark: widgetShadow, hcLight: widgetShadow }, ( localizeWithPath(
119
+ const listFilterWidgetShadow = registerColor('listFilterWidget.shadow', widgetShadow, ( localizeWithPath(
120
120
  _moduleId,
121
121
  24,
122
122
  'Shadow color of the type filter widget in lists and trees.'
@@ -129,7 +129,7 @@ const listDeemphasizedForeground = registerColor('list.deemphasizedForeground',
129
129
  "List/Tree foreground color for items that are deemphasized."
130
130
  )));
131
131
  const treeIndentGuidesStroke = registerColor('tree.indentGuidesStroke', { dark: '#585858', light: '#a9a9a9', hcDark: '#a9a9a9', hcLight: '#a5a5a5' }, ( localizeWithPath(_moduleId, 28, "Tree stroke color for the indentation guides.")));
132
- const treeInactiveIndentGuidesStroke = registerColor('tree.inactiveIndentGuidesStroke', { dark: ( (transparent(treeIndentGuidesStroke, 0.4))), light: ( (transparent(treeIndentGuidesStroke, 0.4))), hcDark: ( (transparent(treeIndentGuidesStroke, 0.4))), hcLight: ( (transparent(treeIndentGuidesStroke, 0.4))) }, ( localizeWithPath(
132
+ const treeInactiveIndentGuidesStroke = registerColor('tree.inactiveIndentGuidesStroke', ( (transparent(treeIndentGuidesStroke, 0.4))), ( localizeWithPath(
133
133
  _moduleId,
134
134
  29,
135
135
  "Tree stroke color for the indentation guides that are not active."
@@ -5,10 +5,10 @@ import { selectForeground, selectBackground } from './inputColors.js';
5
5
  import { listActiveSelectionForeground, listActiveSelectionBackground } from './listColors.js';
6
6
  const _moduleId = "vs/platform/theme/common/colors/menuColors";
7
7
  const menuBorder = registerColor('menu.border', { dark: null, light: null, hcDark: contrastBorder, hcLight: contrastBorder }, ( localizeWithPath(_moduleId, 0, "Border color of menus.")));
8
- const menuForeground = registerColor('menu.foreground', { dark: selectForeground, light: selectForeground, hcDark: selectForeground, hcLight: selectForeground }, ( localizeWithPath(_moduleId, 1, "Foreground color of menu items.")));
9
- const menuBackground = registerColor('menu.background', { dark: selectBackground, light: selectBackground, hcDark: selectBackground, hcLight: selectBackground }, ( localizeWithPath(_moduleId, 2, "Background color of menu items.")));
10
- const menuSelectionForeground = registerColor('menu.selectionForeground', { dark: listActiveSelectionForeground, light: listActiveSelectionForeground, hcDark: listActiveSelectionForeground, hcLight: listActiveSelectionForeground }, ( localizeWithPath(_moduleId, 3, "Foreground color of the selected menu item in menus.")));
11
- const menuSelectionBackground = registerColor('menu.selectionBackground', { dark: listActiveSelectionBackground, light: listActiveSelectionBackground, hcDark: listActiveSelectionBackground, hcLight: listActiveSelectionBackground }, ( localizeWithPath(_moduleId, 4, "Background color of the selected menu item in menus.")));
8
+ const menuForeground = registerColor('menu.foreground', selectForeground, ( localizeWithPath(_moduleId, 1, "Foreground color of menu items.")));
9
+ const menuBackground = registerColor('menu.background', selectBackground, ( localizeWithPath(_moduleId, 2, "Background color of menu items.")));
10
+ const menuSelectionForeground = registerColor('menu.selectionForeground', listActiveSelectionForeground, ( localizeWithPath(_moduleId, 3, "Foreground color of the selected menu item in menus.")));
11
+ const menuSelectionBackground = registerColor('menu.selectionBackground', listActiveSelectionBackground, ( localizeWithPath(_moduleId, 4, "Background color of the selected menu item in menus.")));
12
12
  const menuSelectionBorder = registerColor('menu.selectionBorder', { dark: null, light: null, hcDark: activeContrastBorder, hcLight: activeContrastBorder }, ( localizeWithPath(_moduleId, 5, "Border color of the selected menu item in menus.")));
13
13
  const menuSeparatorBackground = registerColor('menu.separatorBackground', { dark: '#606060', light: '#D4D4D4', hcDark: contrastBorder, hcLight: contrastBorder }, ( localizeWithPath(_moduleId, 6, "Color of a separator menu item in menus.")));
14
14
  export { menuBackground, menuBorder, menuForeground, menuSelectionBackground, menuSelectionBorder, menuSelectionForeground, menuSeparatorBackground };
@@ -10,13 +10,13 @@ const minimapSelection = registerColor('minimap.selectionHighlight', { light: '#
10
10
  const minimapInfo = registerColor('minimap.infoHighlight', { dark: editorInfoForeground, light: editorInfoForeground, hcDark: editorInfoBorder, hcLight: editorInfoBorder }, ( localizeWithPath(_moduleId, 3, 'Minimap marker color for infos.')));
11
11
  const minimapWarning = registerColor('minimap.warningHighlight', { dark: editorWarningForeground, light: editorWarningForeground, hcDark: editorWarningBorder, hcLight: editorWarningBorder }, ( localizeWithPath(_moduleId, 4, 'Minimap marker color for warnings.')));
12
12
  const minimapError = registerColor('minimap.errorHighlight', { dark: ( (new Color( (new RGBA(255, 18, 18, 0.7))))), light: ( (new Color( (new RGBA(255, 18, 18, 0.7))))), hcDark: ( (new Color( (new RGBA(255, 50, 50, 1))))), hcLight: '#B5200D' }, ( localizeWithPath(_moduleId, 5, 'Minimap marker color for errors.')));
13
- const minimapBackground = registerColor('minimap.background', { dark: null, light: null, hcDark: null, hcLight: null }, ( localizeWithPath(_moduleId, 6, "Minimap background color.")));
14
- const minimapForegroundOpacity = registerColor('minimap.foregroundOpacity', { dark: ( (Color.fromHex('#000f'))), light: ( (Color.fromHex('#000f'))), hcDark: ( (Color.fromHex('#000f'))), hcLight: ( (Color.fromHex('#000f'))) }, ( localizeWithPath(
13
+ const minimapBackground = registerColor('minimap.background', null, ( localizeWithPath(_moduleId, 6, "Minimap background color.")));
14
+ const minimapForegroundOpacity = registerColor('minimap.foregroundOpacity', ( (Color.fromHex('#000f'))), ( localizeWithPath(
15
15
  _moduleId,
16
16
  7,
17
17
  'Opacity of foreground elements rendered in the minimap. For example, "#000000c0" will render the elements with 75% opacity.'
18
18
  )));
19
- registerColor('minimapSlider.background', { light: ( (transparent(scrollbarSliderBackground, 0.5))), dark: ( (transparent(scrollbarSliderBackground, 0.5))), hcDark: ( (transparent(scrollbarSliderBackground, 0.5))), hcLight: ( (transparent(scrollbarSliderBackground, 0.5))) }, ( localizeWithPath(_moduleId, 8, "Minimap slider background color.")));
20
- registerColor('minimapSlider.hoverBackground', { light: ( (transparent(scrollbarSliderHoverBackground, 0.5))), dark: ( (transparent(scrollbarSliderHoverBackground, 0.5))), hcDark: ( (transparent(scrollbarSliderHoverBackground, 0.5))), hcLight: ( (transparent(scrollbarSliderHoverBackground, 0.5))) }, ( localizeWithPath(_moduleId, 9, "Minimap slider background color when hovering.")));
21
- registerColor('minimapSlider.activeBackground', { light: ( (transparent(scrollbarSliderActiveBackground, 0.5))), dark: ( (transparent(scrollbarSliderActiveBackground, 0.5))), hcDark: ( (transparent(scrollbarSliderActiveBackground, 0.5))), hcLight: ( (transparent(scrollbarSliderActiveBackground, 0.5))) }, ( localizeWithPath(_moduleId, 10, "Minimap slider background color when clicked on.")));
19
+ registerColor('minimapSlider.background', ( (transparent(scrollbarSliderBackground, 0.5))), ( localizeWithPath(_moduleId, 8, "Minimap slider background color.")));
20
+ registerColor('minimapSlider.hoverBackground', ( (transparent(scrollbarSliderHoverBackground, 0.5))), ( localizeWithPath(_moduleId, 9, "Minimap slider background color when hovering.")));
21
+ registerColor('minimapSlider.activeBackground', ( (transparent(scrollbarSliderActiveBackground, 0.5))), ( localizeWithPath(_moduleId, 10, "Minimap slider background color when clicked on.")));
22
22
  export { minimapBackground, minimapError, minimapFindMatch, minimapForegroundOpacity, minimapInfo, minimapSelection, minimapSelectionOccurrenceHighlight, minimapWarning };
@@ -3,7 +3,7 @@ import { Color } from '../../../../base/common/color.js';
3
3
  import { registerColor, transparent } from '../colorUtils.js';
4
4
  import { focusBorder, contrastBorder } from './baseColors.js';
5
5
  const _moduleId = "vs/platform/theme/common/colors/miscColors";
6
- registerColor('sash.hoverBorder', { dark: focusBorder, light: focusBorder, hcDark: focusBorder, hcLight: focusBorder }, ( localizeWithPath(_moduleId, 0, "Border color of active sashes.")));
6
+ registerColor('sash.hoverBorder', focusBorder, ( localizeWithPath(_moduleId, 0, "Border color of active sashes.")));
7
7
  const badgeBackground = registerColor('badge.background', { dark: '#4D4D4D', light: '#C4C4C4', hcDark: Color.black, hcLight: '#0F4A85' }, ( localizeWithPath(
8
8
  _moduleId,
9
9
  1,
@@ -4,12 +4,12 @@ import { registerColor, oneOf } from '../colorUtils.js';
4
4
  import { editorWidgetBackground, editorWidgetForeground } from './editorColors.js';
5
5
  import { listActiveSelectionForeground, listActiveSelectionIconForeground, listActiveSelectionBackground } from './listColors.js';
6
6
  const _moduleId = "vs/platform/theme/common/colors/quickpickColors";
7
- const quickInputBackground = registerColor('quickInput.background', { dark: editorWidgetBackground, light: editorWidgetBackground, hcDark: editorWidgetBackground, hcLight: editorWidgetBackground }, ( localizeWithPath(
7
+ const quickInputBackground = registerColor('quickInput.background', editorWidgetBackground, ( localizeWithPath(
8
8
  _moduleId,
9
9
  0,
10
10
  "Quick picker background color. The quick picker widget is the container for pickers like the command palette."
11
11
  )));
12
- const quickInputForeground = registerColor('quickInput.foreground', { dark: editorWidgetForeground, light: editorWidgetForeground, hcDark: editorWidgetForeground, hcLight: editorWidgetForeground }, ( localizeWithPath(
12
+ const quickInputForeground = registerColor('quickInput.foreground', editorWidgetForeground, ( localizeWithPath(
13
13
  _moduleId,
14
14
  1,
15
15
  "Quick picker foreground color. The quick picker widget is the container for pickers like the command palette."
@@ -21,8 +21,8 @@ const quickInputTitleBackground = registerColor('quickInputTitle.background', {
21
21
  )));
22
22
  const pickerGroupForeground = registerColor('pickerGroup.foreground', { dark: '#3794FF', light: '#0066BF', hcDark: Color.white, hcLight: '#0F4A85' }, ( localizeWithPath(_moduleId, 3, "Quick picker color for grouping labels.")));
23
23
  const pickerGroupBorder = registerColor('pickerGroup.border', { dark: '#3F3F46', light: '#CCCEDB', hcDark: Color.white, hcLight: '#0F4A85' }, ( localizeWithPath(_moduleId, 4, "Quick picker color for grouping borders.")));
24
- const _deprecatedQuickInputListFocusBackground = registerColor('quickInput.list.focusBackground', { dark: null, light: null, hcDark: null, hcLight: null }, '', undefined, ( localizeWithPath(_moduleId, 5, "Please use quickInputList.focusBackground instead")));
25
- const quickInputListFocusForeground = registerColor('quickInputList.focusForeground', { dark: listActiveSelectionForeground, light: listActiveSelectionForeground, hcDark: listActiveSelectionForeground, hcLight: listActiveSelectionForeground }, ( localizeWithPath(_moduleId, 6, "Quick picker foreground color for the focused item.")));
26
- const quickInputListFocusIconForeground = registerColor('quickInputList.focusIconForeground', { dark: listActiveSelectionIconForeground, light: listActiveSelectionIconForeground, hcDark: listActiveSelectionIconForeground, hcLight: listActiveSelectionIconForeground }, ( localizeWithPath(_moduleId, 7, "Quick picker icon foreground color for the focused item.")));
24
+ const _deprecatedQuickInputListFocusBackground = registerColor('quickInput.list.focusBackground', null, '', undefined, ( localizeWithPath(_moduleId, 5, "Please use quickInputList.focusBackground instead")));
25
+ const quickInputListFocusForeground = registerColor('quickInputList.focusForeground', listActiveSelectionForeground, ( localizeWithPath(_moduleId, 6, "Quick picker foreground color for the focused item.")));
26
+ const quickInputListFocusIconForeground = registerColor('quickInputList.focusIconForeground', listActiveSelectionIconForeground, ( localizeWithPath(_moduleId, 7, "Quick picker icon foreground color for the focused item.")));
27
27
  const quickInputListFocusBackground = registerColor('quickInputList.focusBackground', { dark: oneOf(_deprecatedQuickInputListFocusBackground, listActiveSelectionBackground), light: oneOf(_deprecatedQuickInputListFocusBackground, listActiveSelectionBackground), hcDark: null, hcLight: null }, ( localizeWithPath(_moduleId, 8, "Quick picker background color for the focused item.")));
28
28
  export { _deprecatedQuickInputListFocusBackground, pickerGroupBorder, pickerGroupForeground, quickInputBackground, quickInputForeground, quickInputListFocusBackground, quickInputListFocusForeground, quickInputListFocusIconForeground, quickInputTitleBackground };
@@ -1,5 +1,6 @@
1
1
  import { __decorate, __param } from '../../../../../../external/tslib/tslib.es6.js';
2
2
  import { Emitter } from '../../../base/common/event.js';
3
+ import { Disposable } from '../../../base/common/lifecycle.js';
3
4
  import '../../../base/common/platform.js';
4
5
  import '../../../base/common/charCode.js';
5
6
  import '../../../base/common/marshallingIds.js';
@@ -63,8 +64,9 @@ class DisposableTunnel {
63
64
  return this._dispose();
64
65
  }
65
66
  }
66
- let AbstractTunnelService = class AbstractTunnelService {
67
+ let AbstractTunnelService = class AbstractTunnelService extends Disposable {
67
68
  constructor(logService, configurationService) {
69
+ super();
68
70
  this.logService = logService;
69
71
  this.configurationService = configurationService;
70
72
  this._onTunnelOpened = ( new Emitter());
@@ -140,6 +142,7 @@ let AbstractTunnelService = class AbstractTunnelService {
140
142
  return tunnels;
141
143
  }
142
144
  async dispose() {
145
+ super.dispose();
143
146
  for (const portMap of ( this._tunnels.values())) {
144
147
  for (const { value } of ( portMap.values())) {
145
148
  await value.then(tunnel => typeof tunnel !== 'string' ? tunnel?.dispose() : undefined);
@@ -101,6 +101,7 @@ let UserDataProfilesService = class UserDataProfilesService extends Disposable {
101
101
  this.profileCreationPromises = ( (new Map()));
102
102
  this.transientProfilesObject = {
103
103
  profiles: [],
104
+ folders: ( (new ResourceMap())),
104
105
  workspaces: ( (new ResourceMap())),
105
106
  emptyWindows: ( (new Map()))
106
107
  };
@@ -309,6 +310,7 @@ let UserDataProfilesService = class UserDataProfilesService extends Disposable {
309
310
  this.updateWorkspaceAssociation(workspaceIdentifier, undefined, transient);
310
311
  }
311
312
  async resetWorkspaces() {
313
+ this.transientProfilesObject.folders.clear();
312
314
  this.transientProfilesObject.workspaces.clear();
313
315
  this.transientProfilesObject.emptyWindows.clear();
314
316
  this.profilesObject.workspaces.clear();
@@ -336,7 +338,17 @@ let UserDataProfilesService = class UserDataProfilesService extends Disposable {
336
338
  }
337
339
  getProfileForWorkspace(workspaceIdentifier) {
338
340
  const workspace = this.getWorkspace(workspaceIdentifier);
339
- return URI.isUri(workspace) ? this.transientProfilesObject.workspaces.get(workspace) ?? this.profilesObject.workspaces.get(workspace) : this.transientProfilesObject.emptyWindows.get(workspace) ?? this.profilesObject.emptyWindows.get(workspace);
341
+ const profile = URI.isUri(workspace) ? this.profilesObject.workspaces.get(workspace) : this.profilesObject.emptyWindows.get(workspace);
342
+ if (profile) {
343
+ return profile;
344
+ }
345
+ if (isSingleFolderWorkspaceIdentifier(workspaceIdentifier)) {
346
+ return this.transientProfilesObject.folders.get(workspaceIdentifier.uri);
347
+ }
348
+ if (isWorkspaceIdentifier(workspaceIdentifier)) {
349
+ return this.transientProfilesObject.workspaces.get(workspaceIdentifier.configPath);
350
+ }
351
+ return this.transientProfilesObject.emptyWindows.get(workspaceIdentifier.id);
340
352
  }
341
353
  getWorkspace(workspaceIdentifier) {
342
354
  if (isSingleFolderWorkspaceIdentifier(workspaceIdentifier)) {
@@ -348,22 +360,27 @@ let UserDataProfilesService = class UserDataProfilesService extends Disposable {
348
360
  return workspaceIdentifier.id;
349
361
  }
350
362
  isProfileAssociatedToWorkspace(profile) {
351
- if (( ([...( (this.transientProfilesObject.emptyWindows.values()))].some(
363
+ if (( ([...( (this.profilesObject.emptyWindows.values()))].some(
352
364
  windowProfile => this.uriIdentityService.extUri.isEqual(windowProfile.location, profile.location)
353
365
  )))) {
354
366
  return true;
355
367
  }
356
- if (( ([...( (this.transientProfilesObject.workspaces.values()))].some(
368
+ if (( ([...( (this.profilesObject.workspaces.values()))].some(
357
369
  workspaceProfile => this.uriIdentityService.extUri.isEqual(workspaceProfile.location, profile.location)
358
370
  )))) {
359
371
  return true;
360
372
  }
361
- if (( ([...( (this.profilesObject.emptyWindows.values()))].some(
373
+ if (( ([...( (this.transientProfilesObject.emptyWindows.values()))].some(
362
374
  windowProfile => this.uriIdentityService.extUri.isEqual(windowProfile.location, profile.location)
363
375
  )))) {
364
376
  return true;
365
377
  }
366
- if (( ([...( (this.profilesObject.workspaces.values()))].some(
378
+ if (( ([...( (this.transientProfilesObject.workspaces.values()))].some(
379
+ workspaceProfile => this.uriIdentityService.extUri.isEqual(workspaceProfile.location, profile.location)
380
+ )))) {
381
+ return true;
382
+ }
383
+ if (( ([...( (this.transientProfilesObject.folders.values()))].some(
367
384
  workspaceProfile => this.uriIdentityService.extUri.isEqual(workspaceProfile.location, profile.location)
368
385
  )))) {
369
386
  return true;
@@ -373,6 +390,7 @@ let UserDataProfilesService = class UserDataProfilesService extends Disposable {
373
390
  updateProfiles(added, removed, updated) {
374
391
  const allProfiles = [...this.profiles, ...added];
375
392
  const storedProfiles = [];
393
+ const transientProfiles = this.transientProfilesObject.profiles;
376
394
  this.transientProfilesObject.profiles = [];
377
395
  for (let profile of allProfiles) {
378
396
  if (profile.isDefault) {
@@ -382,10 +400,31 @@ let UserDataProfilesService = class UserDataProfilesService extends Disposable {
382
400
  continue;
383
401
  }
384
402
  profile = updated.find(p => profile.id === p.id) ?? profile;
403
+ const transientProfile = transientProfiles.find(p => profile.id === p.id);
385
404
  if (profile.isTransient) {
386
405
  this.transientProfilesObject.profiles.push(profile);
387
406
  }
388
407
  else {
408
+ if (transientProfile) {
409
+ for (const [windowId, p] of this.transientProfilesObject.emptyWindows.entries()) {
410
+ if (profile.id === p.id) {
411
+ this.updateWorkspaceAssociation({ id: windowId }, profile);
412
+ break;
413
+ }
414
+ }
415
+ for (const [workspace, p] of this.transientProfilesObject.workspaces.entries()) {
416
+ if (profile.id === p.id) {
417
+ this.updateWorkspaceAssociation({ id: '', configPath: workspace }, profile);
418
+ break;
419
+ }
420
+ }
421
+ for (const [folder, p] of this.transientProfilesObject.folders.entries()) {
422
+ if (profile.id === p.id) {
423
+ this.updateWorkspaceAssociation({ id: '', uri: folder }, profile);
424
+ break;
425
+ }
426
+ }
427
+ }
389
428
  storedProfiles.push({ location: profile.location, name: profile.name, shortName: profile.shortName, icon: profile.icon, useDefaultFlags: profile.useDefaultFlags });
390
429
  }
391
430
  }
@@ -398,24 +437,41 @@ let UserDataProfilesService = class UserDataProfilesService extends Disposable {
398
437
  }
399
438
  updateWorkspaceAssociation(workspaceIdentifier, newProfile, transient) {
400
439
  transient = newProfile?.isTransient ? true : transient;
401
- if (!transient) {
402
- this.updateWorkspaceAssociation(workspaceIdentifier, undefined, true);
403
- }
404
- const workspace = this.getWorkspace(workspaceIdentifier);
405
- const profilesObject = transient ? this.transientProfilesObject : this.profilesObject;
406
- if (URI.isUri(workspace)) {
407
- profilesObject.workspaces.delete(workspace);
408
- if (newProfile) {
409
- profilesObject.workspaces.set(workspace, newProfile);
440
+ if (transient) {
441
+ if (isSingleFolderWorkspaceIdentifier(workspaceIdentifier)) {
442
+ this.transientProfilesObject.folders.delete(workspaceIdentifier.uri);
443
+ if (newProfile) {
444
+ this.transientProfilesObject.folders.set(workspaceIdentifier.uri, newProfile);
445
+ }
446
+ }
447
+ else if (isWorkspaceIdentifier(workspaceIdentifier)) {
448
+ this.transientProfilesObject.workspaces.delete(workspaceIdentifier.configPath);
449
+ if (newProfile) {
450
+ this.transientProfilesObject.workspaces.set(workspaceIdentifier.configPath, newProfile);
451
+ }
452
+ }
453
+ else {
454
+ this.transientProfilesObject.emptyWindows.delete(workspaceIdentifier.id);
455
+ if (newProfile) {
456
+ this.transientProfilesObject.emptyWindows.set(workspaceIdentifier.id, newProfile);
457
+ }
410
458
  }
411
459
  }
412
460
  else {
413
- profilesObject.emptyWindows.delete(workspace);
414
- if (newProfile) {
415
- profilesObject.emptyWindows.set(workspace, newProfile);
461
+ this.updateWorkspaceAssociation(workspaceIdentifier, undefined, true);
462
+ const workspace = this.getWorkspace(workspaceIdentifier);
463
+ if (URI.isUri(workspace)) {
464
+ this.profilesObject.workspaces.delete(workspace);
465
+ if (newProfile) {
466
+ this.profilesObject.workspaces.set(workspace, newProfile);
467
+ }
468
+ }
469
+ else {
470
+ this.profilesObject.emptyWindows.delete(workspace);
471
+ if (newProfile) {
472
+ this.profilesObject.emptyWindows.set(workspace, newProfile);
473
+ }
416
474
  }
417
- }
418
- if (!transient) {
419
475
  this.updateStoredProfileAssociations();
420
476
  }
421
477
  }
@@ -23,6 +23,8 @@ interface IBaseOpenWindowsOptions {
23
23
  * If not set, defaults to the remote authority of the current window.
24
24
  */
25
25
  readonly remoteAuthority?: string | null;
26
+ readonly forceProfile?: string;
27
+ readonly forceTempProfile?: boolean;
26
28
  }
27
29
  interface IOpenWindowOptions extends IBaseOpenWindowsOptions {
28
30
  readonly forceNewWindow?: boolean;
@@ -33,8 +35,6 @@ interface IOpenWindowOptions extends IBaseOpenWindowsOptions {
33
35
  readonly mergeMode?: boolean;
34
36
  readonly gotoLineMode?: boolean;
35
37
  readonly waitMarkerFileURI?: URI;
36
- readonly forceProfile?: string;
37
- readonly forceTempProfile?: boolean;
38
38
  }
39
39
  interface IOpenEmptyWindowOptions extends IBaseOpenWindowsOptions {
40
40
  }
@@ -9,7 +9,7 @@ import { TextEditorCursorStyle } from '../../../editor/common/config/editorOptio
9
9
  import { targetsNotebooks, score } from '../../../editor/common/languageSelector.js';
10
10
  import { IndentAction } from '../../../editor/common/languages/languageConfiguration.js';
11
11
  import { OverviewRulerLane } from '../../../editor/common/model.js';
12
- import { ExtensionIdentifier, ExtensionIdentifierSet } from '../../../platform/extensions/common/extensions.js';
12
+ import { ExtensionIdentifierSet } from '../../../platform/extensions/common/extensions.js';
13
13
  import { FileType, FilePermission } from '../../../platform/files/common/files.js';
14
14
  import { LogLevel } from '../../../platform/log/common/log.js';
15
15
  import { ILoggerService, ILogService } from '../../../platform/log/common/log.service.js';
@@ -50,6 +50,7 @@ import { IExtHostInitDataService } from './extHostInitDataService.js';
50
50
  import { ExtHostInteractive } from './extHostInteractive.js';
51
51
  import { ExtHostLabelService } from './extHostLabelService.js';
52
52
  import { ExtHostLanguageFeatures } from './extHostLanguageFeatures.js';
53
+ import { ExtHostLanguageModelTools } from './extHostLanguageModelTools.js';
53
54
  import { IExtHostLanguageModels } from './extHostLanguageModels.js';
54
55
  import { ExtHostLanguages } from './extHostLanguages.js';
55
56
  import { IExtHostLocalizationService } from './extHostLocalizationService.js';
@@ -79,14 +80,14 @@ import { IExtHostTask } from './extHostTask.js';
79
80
  import { IExtHostTelemetry, isNewAppInstall, ExtHostTelemetryLogger } from './extHostTelemetry.js';
80
81
  import { IExtHostTerminalService } from './extHostTerminalService.js';
81
82
  import { IExtHostTerminalShellIntegration } from './extHostTerminalShellIntegration.js';
82
- import { ExtHostTesting } from './extHostTesting.js';
83
+ import { IExtHostTesting } from './extHostTesting.js';
83
84
  import { ExtHostEditors } from './extHostTextEditors.js';
84
85
  import { ExtHostTheming } from './extHostTheming.js';
85
86
  import { ExtHostTimeline } from './extHostTimeline.js';
86
87
  import { ExtHostTreeViews } from './extHostTreeViews.js';
87
88
  import { IExtHostTunnelService } from './extHostTunnelService.js';
88
89
  import { LanguageSelector } from './extHostTypeConverters.js';
89
- import { Breakpoint, TerminalOutputAnchor, ChatResultFeedbackKind, ChatVariableLevel, ChatCompletionItem, CallHierarchyIncomingCall, CallHierarchyItem, CallHierarchyOutgoingCall, CodeAction, CodeActionKind, CodeActionTriggerKind, CodeLens, Color, ColorInformation, ColorPresentation, ColorThemeKind, CommentMode, CommentState, CommentThreadCollapsibleState, CommentThreadState, CommentThreadApplicability, CompletionItem, CompletionItemKind, CompletionItemTag, CompletionList, CompletionTriggerKind, ConfigurationTarget, CustomExecution, DebugAdapterExecutable, DebugAdapterInlineImplementation, DebugAdapterNamedPipeServer, DebugAdapterServer, DebugConsoleMode, DebugVisualization, DecorationRangeBehavior, Diagnostic, DiagnosticRelatedInformation, DiagnosticSeverity, DiagnosticTag, Disposable, DocumentHighlight, DocumentHighlightKind, MultiDocumentHighlight, DocumentLink, DocumentSymbol, EndOfLine, EnvironmentVariableMutatorType, EvaluatableExpression, InlineValueText, InlineValueVariableLookup, InlineValueEvaluatableExpression, InlineCompletionTriggerKind, ExtensionKind, ExtensionMode, ExternalUriOpenerPriority, FileChangeType, FileDecoration, FileSystemError, FoldingRange, FoldingRangeKind, FunctionBreakpoint, InlineSuggestion, InlineSuggestionList, Hover, VerboseHover, HoverVerbosityAction, Location, MarkdownString, ParameterInformation, PortAutoForwardAction, Position, ProcessExecution, ProgressLocation, QuickInputButtons, Range, RelativePattern, Selection, SelectionRange, SemanticTokens, SemanticTokensBuilder, SemanticTokensEdit, SemanticTokensEdits, SemanticTokensLegend, ShellExecution, ShellQuoting, SignatureHelp, SignatureHelpTriggerKind, SignatureInformation, SnippetString, SourceBreakpoint, StandardTokenType, StatusBarAlignment, SymbolInformation, SymbolKind, SymbolTag, Task, TaskGroup, TaskPanelKind, TaskRevealKind, TaskScope, TerminalLink, TerminalQuickFixCommand, TerminalQuickFixOpener, TerminalLocation, TerminalProfile, TerminalExitReason, TerminalShellExecutionCommandLineConfidence, TextDocumentSaveReason, TextEdit, SnippetTextEdit, TextEditorLineNumbersStyle, TextEditorRevealType, TextEditorSelectionChangeKind, SyntaxTokenType, TextDocumentChangeReason, ThemeColor, ThemeIcon, TreeItem, TreeItemCheckboxState, TreeItemCollapsibleState, TypeHierarchyItem, ViewColumn, WorkspaceEdit, DocumentPasteTriggerKind, DocumentDropEdit, DocumentDropOrPasteEditKind, DocumentPasteEdit, InlayHint, InlayHintLabelPart, InlayHintKind, RemoteAuthorityResolverError, ResolvedAuthority, ManagedResolvedAuthority, SourceControlInputBoxValidationType, ExtensionRuntime, TimelineItem, NotebookRange, NotebookCellKind, NotebookCellExecutionState, NotebookCellData, NotebookData, NotebookRendererScript, NotebookCellStatusBarAlignment, NotebookEditorRevealType, NotebookCellOutput, NotebookCellOutputItem, NotebookCellStatusBarItem, NotebookControllerAffinity, NotebookControllerAffinity2, NotebookEdit, NotebookKernelSourceAction, NotebookVariablesRequestKind, PortAttributes, LinkedEditingRanges, TestResultState, TestRunRequest, TestMessage, TestTag, TestRunProfileKind, DataTransfer, DataTransferItem, TestCoverageCount, FileCoverage, StatementCoverage, BranchCoverage, DeclarationCoverage, WorkspaceTrustState, LanguageStatusSeverity, QuickPickItemKind, InputBoxValidationSeverity, TextTabInput, TextDiffTabInput, TextMergeTabInput, CustomEditorTabInput, NotebookEditorTabInput, NotebookDiffEditorTabInput, WebviewEditorTabInput, TerminalEditorTabInput, InteractiveWindowInput, ChatEditorTabInput, TextMultiDiffTabInput, InteractiveSessionVoteDirection, ChatCopyKind, InteractiveEditorResponseFeedbackKind, DebugStackFrame, DebugThread, RelatedInformationType, SpeechToTextStatus, TextToSpeechStatus, PartialAcceptTriggerKind, KeywordRecognitionStatus, ChatResponseMarkdownPart, ChatResponseFileTreePart, ChatResponseAnchorPart, ChatResponseProgressPart, ChatResponseProgressPart2, ChatResponseReferencePart, ChatResponseWarningPart, ChatResponseTextEditPart, ChatResponseMarkdownWithVulnerabilitiesPart, ChatResponseCommandButtonPart, ChatResponseDetectedParticipantPart, ChatResponseConfirmationPart, ChatRequestTurn, ChatResponseTurn, ChatLocation, LanguageModelChatMessageRole, LanguageModelChatMessage, LanguageModelChatSystemMessage, LanguageModelChatUserMessage, LanguageModelChatAssistantMessage, LanguageModelError, NewSymbolName, NewSymbolNameTag, NewSymbolNameTriggerKind, InlineEdit, InlineEditTriggerKind } from './extHostTypes.js';
90
+ import { Breakpoint, TerminalOutputAnchor, ChatResultFeedbackKind, ChatVariableLevel, ChatCompletionItem, CallHierarchyIncomingCall, CallHierarchyItem, CallHierarchyOutgoingCall, CodeAction, CodeActionKind, CodeActionTriggerKind, CodeLens, Color, ColorInformation, ColorPresentation, ColorThemeKind, CommentMode, CommentState, CommentThreadCollapsibleState, CommentThreadState, CommentThreadApplicability, CompletionItem, CompletionItemKind, CompletionItemTag, CompletionList, CompletionTriggerKind, ConfigurationTarget, CustomExecution, DebugAdapterExecutable, DebugAdapterInlineImplementation, DebugAdapterNamedPipeServer, DebugAdapterServer, DebugConsoleMode, DebugVisualization, DecorationRangeBehavior, Diagnostic, DiagnosticRelatedInformation, DiagnosticSeverity, DiagnosticTag, Disposable, DocumentHighlight, DocumentHighlightKind, MultiDocumentHighlight, DocumentLink, DocumentSymbol, EndOfLine, EnvironmentVariableMutatorType, EvaluatableExpression, InlineValueText, InlineValueVariableLookup, InlineValueEvaluatableExpression, InlineCompletionTriggerKind, ExtensionKind, ExtensionMode, ExternalUriOpenerPriority, FileChangeType, FileDecoration, FileSystemError, FoldingRange, FoldingRangeKind, FunctionBreakpoint, InlineSuggestion, InlineSuggestionList, Hover, VerboseHover, HoverVerbosityAction, Location, MarkdownString, ParameterInformation, PortAutoForwardAction, Position, ProcessExecution, ProgressLocation, QuickInputButtons, Range, RelativePattern, Selection, SelectionRange, SemanticTokens, SemanticTokensBuilder, SemanticTokensEdit, SemanticTokensEdits, SemanticTokensLegend, ShellExecution, ShellQuoting, SignatureHelp, SignatureHelpTriggerKind, SignatureInformation, SnippetString, SourceBreakpoint, StandardTokenType, StatusBarAlignment, SymbolInformation, SymbolKind, SymbolTag, Task, TaskGroup, TaskPanelKind, TaskRevealKind, TaskScope, TerminalLink, TerminalQuickFixCommand, TerminalQuickFixOpener, TerminalLocation, TerminalProfile, TerminalExitReason, TerminalShellExecutionCommandLineConfidence, TextDocumentSaveReason, TextEdit, SnippetTextEdit, TextEditorLineNumbersStyle, TextEditorRevealType, TextEditorSelectionChangeKind, SyntaxTokenType, TextDocumentChangeReason, ThemeColor, ThemeIcon, TreeItem, TreeItemCheckboxState, TreeItemCollapsibleState, TypeHierarchyItem, ViewColumn, WorkspaceEdit, DocumentPasteTriggerKind, DocumentDropEdit, DocumentDropOrPasteEditKind, DocumentPasteEdit, InlayHint, InlayHintLabelPart, InlayHintKind, RemoteAuthorityResolverError, ResolvedAuthority, ManagedResolvedAuthority, SourceControlInputBoxValidationType, ExtensionRuntime, TimelineItem, NotebookRange, NotebookCellKind, NotebookCellExecutionState, NotebookCellData, NotebookData, NotebookRendererScript, NotebookCellStatusBarAlignment, NotebookEditorRevealType, NotebookCellOutput, NotebookCellOutputItem, NotebookCellStatusBarItem, NotebookControllerAffinity, NotebookControllerAffinity2, NotebookEdit, NotebookKernelSourceAction, NotebookVariablesRequestKind, PortAttributes, LinkedEditingRanges, TestResultState, TestRunRequest, TestMessage, TestTag, TestRunProfileKind, DataTransfer, DataTransferItem, TestCoverageCount, FileCoverage, StatementCoverage, BranchCoverage, DeclarationCoverage, WorkspaceTrustState, LanguageStatusSeverity, QuickPickItemKind, InputBoxValidationSeverity, TextTabInput, TextDiffTabInput, TextMergeTabInput, CustomEditorTabInput, NotebookEditorTabInput, NotebookDiffEditorTabInput, WebviewEditorTabInput, TerminalEditorTabInput, InteractiveWindowInput, ChatEditorTabInput, TextMultiDiffTabInput, InteractiveSessionVoteDirection, ChatCopyKind, InteractiveEditorResponseFeedbackKind, DebugStackFrame, DebugThread, RelatedInformationType, SpeechToTextStatus, TextToSpeechStatus, PartialAcceptTriggerKind, KeywordRecognitionStatus, ChatResponseMarkdownPart, ChatResponseFileTreePart, ChatResponseAnchorPart, ChatResponseProgressPart, ChatResponseProgressPart2, ChatResponseReferencePart, ChatResponseWarningPart, ChatResponseTextEditPart, ChatResponseMarkdownWithVulnerabilitiesPart, ChatResponseCommandButtonPart, ChatResponseDetectedParticipantPart, ChatResponseConfirmationPart, ChatRequestTurn, ChatResponseTurn, ChatLocation, LanguageModelChatMessageRole, LanguageModelChatMessage, LanguageModelFunctionResultPart, LanguageModelTextPart, LanguageModelFunctionUsePart, LanguageModelChatSystemMessage, LanguageModelChatUserMessage, LanguageModelChatAssistantMessage, LanguageModelError, NewSymbolName, NewSymbolNameTag, NewSymbolNameTriggerKind, InlineEdit, InlineEditTriggerKind } from './extHostTypes.js';
90
91
  import { ExtHostUriOpeners } from './extHostUriOpener.js';
91
92
  import { IURITransformerService } from './extHostUriTransformerService.js';
92
93
  import { ExtHostUrls } from './extHostUrls.js';
@@ -210,12 +211,7 @@ function createApiFactoryAndRegisterActors(accessor) {
210
211
  extHostWebviewPanels
211
212
  )));
212
213
  const extHostWebviewViews = rpcProtocol.set(ExtHostContext.ExtHostWebviewViews, ( new ExtHostWebviewViews(rpcProtocol, extHostWebviews)));
213
- const extHostTesting = rpcProtocol.set(ExtHostContext.ExtHostTesting, ( new ExtHostTesting(
214
- rpcProtocol,
215
- extHostLogService,
216
- extHostCommands,
217
- extHostDocumentsAndEditors
218
- )));
214
+ const extHostTesting = rpcProtocol.set(ExtHostContext.ExtHostTesting, accessor.get(IExtHostTesting));
219
215
  const extHostUriOpeners = rpcProtocol.set(ExtHostContext.ExtHostUriOpeners, ( new ExtHostUriOpeners(rpcProtocol)));
220
216
  const extHostProfileContentHandlers = rpcProtocol.set(ExtHostContext.ExtHostProfileContentHandlers, ( new ExtHostProfileContentHandlers(rpcProtocol)));
221
217
  rpcProtocol.set(ExtHostContext.ExtHostInteractive, ( new ExtHostInteractive(
@@ -225,8 +221,9 @@ function createApiFactoryAndRegisterActors(accessor) {
225
221
  extHostCommands,
226
222
  extHostLogService
227
223
  )));
228
- const extHostChatAgents2 = rpcProtocol.set(ExtHostContext.ExtHostChatAgents2, ( new ExtHostChatAgents2(rpcProtocol, extHostLogService, extHostCommands, initData.quality)));
224
+ const extHostChatAgents2 = rpcProtocol.set(ExtHostContext.ExtHostChatAgents2, ( new ExtHostChatAgents2(rpcProtocol, extHostLogService, extHostCommands)));
229
225
  const extHostChatVariables = rpcProtocol.set(ExtHostContext.ExtHostChatVariables, ( new ExtHostChatVariables(rpcProtocol)));
226
+ const extHostLanguageModelTools = rpcProtocol.set(ExtHostContext.ExtHostLanguageModelTools, ( new ExtHostLanguageModelTools(rpcProtocol)));
230
227
  const extHostAiRelatedInformation = rpcProtocol.set(ExtHostContext.ExtHostAiRelatedInformation, ( new ExtHostRelatedInformation(rpcProtocol)));
231
228
  const extHostAiEmbeddingVector = rpcProtocol.set(ExtHostContext.ExtHostAiEmbeddingVector, ( new ExtHostAiEmbeddingVector(rpcProtocol)));
232
229
  const extHostStatusBar = rpcProtocol.set(ExtHostContext.ExtHostStatusBar, ( new ExtHostStatusBar(rpcProtocol, extHostCommands.converter)));
@@ -290,11 +287,14 @@ function createApiFactoryAndRegisterActors(accessor) {
290
287
  if (typeof options?.forceNewSession === 'object' && options.forceNewSession.learnMore) {
291
288
  checkProposedApiEnabled(extension, 'authLearnMore');
292
289
  }
290
+ if (options?.account) {
291
+ checkProposedApiEnabled(extension, 'authGetSessions');
292
+ }
293
293
  return extHostAuthentication.getSession(extension, providerId, scopes, options);
294
294
  },
295
- getSessions(providerId, scopes) {
295
+ getAccounts(providerId) {
296
296
  checkProposedApiEnabled(extension, 'authGetSessions');
297
- return extHostAuthentication.getSessions(extension, providerId, scopes);
297
+ return extHostAuthentication.getAccounts(providerId);
298
298
  },
299
299
  async hasSession(providerId, scopes) {
300
300
  checkProposedApiEnabled(extension, 'authSession');
@@ -1377,26 +1377,18 @@ function createApiFactoryAndRegisterActors(accessor) {
1377
1377
  checkProposedApiEnabled(extension, 'chatParticipantPrivate');
1378
1378
  return extHostChatAgents2.createDynamicChatAgent(extension, id, dynamicProps, handler);
1379
1379
  },
1380
- attachContext(name, value, location) {
1381
- checkProposedApiEnabled(extension, 'chatVariableResolver');
1382
- return extHostChatVariables.attachContext(name, value, location);
1383
- }
1384
1380
  };
1385
1381
  const lm = {
1386
1382
  selectChatModels: (selector) => {
1387
- if (initData.quality === 'stable') {
1388
- console.warn(`[${ExtensionIdentifier.toKey(extension.identifier)}] This API is disabled in '${initData.environment.appName}'-stable.`);
1389
- return Promise.resolve([]);
1390
- }
1391
1383
  return extHostLanguageModels.selectLanguageModels(extension, selector ?? {});
1392
1384
  },
1393
1385
  onDidChangeChatModels: (listener, thisArgs, disposables) => {
1394
- if (initData.quality === 'stable') {
1395
- console.warn(`[${ExtensionIdentifier.toKey(extension.identifier)}] This API is disabled in '${initData.environment.appName}'-stable.`);
1396
- return Event.None(listener, thisArgs, disposables);
1397
- }
1398
1386
  return extHostLanguageModels.onDidChangeProviders(listener, thisArgs, disposables);
1399
1387
  },
1388
+ registerChatModelProvider: (id, provider, metadata) => {
1389
+ checkProposedApiEnabled(extension, 'chatProvider');
1390
+ return extHostLanguageModels.registerLanguageModel(extension, id, provider, metadata);
1391
+ },
1400
1392
  get embeddingModels() {
1401
1393
  checkProposedApiEnabled(extension, 'embeddings');
1402
1394
  return extHostEmbeddings.embeddingsModels;
@@ -1417,7 +1409,19 @@ function createApiFactoryAndRegisterActors(accessor) {
1417
1409
  else {
1418
1410
  return extHostEmbeddings.computeEmbeddings(embeddingsModel, input, token);
1419
1411
  }
1420
- }
1412
+ },
1413
+ registerTool(toolId, tool) {
1414
+ checkProposedApiEnabled(extension, 'lmTools');
1415
+ return extHostLanguageModelTools.registerTool(extension, toolId, tool);
1416
+ },
1417
+ invokeTool(toolId, parameters, token) {
1418
+ checkProposedApiEnabled(extension, 'lmTools');
1419
+ return extHostLanguageModelTools.invokeTool(toolId, parameters, token);
1420
+ },
1421
+ get tools() {
1422
+ checkProposedApiEnabled(extension, 'lmTools');
1423
+ return extHostLanguageModelTools.tools;
1424
+ },
1421
1425
  };
1422
1426
  const speech = {
1423
1427
  registerSpeechProvider(id, provider) {
@@ -1672,6 +1676,9 @@ function createApiFactoryAndRegisterActors(accessor) {
1672
1676
  ChatLocation: ChatLocation,
1673
1677
  LanguageModelChatMessageRole: LanguageModelChatMessageRole,
1674
1678
  LanguageModelChatMessage: LanguageModelChatMessage,
1679
+ LanguageModelChatMessageFunctionResultPart: LanguageModelFunctionResultPart,
1680
+ LanguageModelChatResponseTextPart: LanguageModelTextPart,
1681
+ LanguageModelChatResponseFunctionUsePart: LanguageModelFunctionUsePart,
1675
1682
  LanguageModelChatMessage2: LanguageModelChatMessage,
1676
1683
  LanguageModelChatSystemMessage: LanguageModelChatSystemMessage,
1677
1684
  LanguageModelChatUserMessage: LanguageModelChatUserMessage,
@@ -26,6 +26,7 @@ import { ExtHostManagedSockets, IExtHostManagedSockets } from './extHostManagedS
26
26
  import { ExtHostAuthentication, IExtHostAuthentication } from './extHostAuthentication.js';
27
27
  import { ExtHostLanguageModels, IExtHostLanguageModels } from './extHostLanguageModels.js';
28
28
  import { ExtHostTerminalShellIntegration, IExtHostTerminalShellIntegration } from './extHostTerminalShellIntegration.js';
29
+ import { ExtHostTesting, IExtHostTesting } from './extHostTesting.js';
29
30
  registerSingleton(IExtHostLocalizationService, ExtHostLocalizationService, InstantiationType.Delayed);
30
31
  registerSingleton(ILoggerService, ExtHostLoggerService, InstantiationType.Delayed);
31
32
  registerSingleton(IExtHostApiDeprecationService, ExtHostApiDeprecationService, InstantiationType.Delayed);
@@ -34,6 +35,7 @@ registerSingleton(IExtHostAuthentication, ExtHostAuthentication, InstantiationTy
34
35
  registerSingleton(IExtHostLanguageModels, ExtHostLanguageModels, InstantiationType.Eager);
35
36
  registerSingleton(IExtHostConfiguration, ExtHostConfiguration, InstantiationType.Eager);
36
37
  registerSingleton(IExtHostConsumerFileSystem, ExtHostConsumerFileSystem, InstantiationType.Eager);
38
+ registerSingleton(IExtHostTesting, ExtHostTesting, InstantiationType.Eager);
37
39
  registerSingleton(IExtHostDebugService, WorkerExtHostDebugService, InstantiationType.Eager);
38
40
  registerSingleton(IExtHostDecorations, ExtHostDecorations, InstantiationType.Eager);
39
41
  registerSingleton(IExtHostDocumentsAndEditors, ExtHostDocumentsAndEditors, InstantiationType.Eager);
@@ -91,6 +91,7 @@ const MainContext = {
91
91
  MainThreadEmbeddings: ( createProxyIdentifier('MainThreadEmbeddings')),
92
92
  MainThreadChatAgents2: ( createProxyIdentifier('MainThreadChatAgents2')),
93
93
  MainThreadChatVariables: ( createProxyIdentifier('MainThreadChatVariables')),
94
+ MainThreadLanguageModelTools: ( createProxyIdentifier('MainThreadChatSkills')),
94
95
  MainThreadClipboard: ( createProxyIdentifier('MainThreadClipboard')),
95
96
  MainThreadCommands: ( createProxyIdentifier('MainThreadCommands')),
96
97
  MainThreadComments: ( createProxyIdentifier('MainThreadComments')),
@@ -209,6 +210,7 @@ const ExtHostContext = {
209
210
  ExtHostInteractive: ( createProxyIdentifier('ExtHostInteractive')),
210
211
  ExtHostChatAgents2: ( createProxyIdentifier('ExtHostChatAgents')),
211
212
  ExtHostChatVariables: ( createProxyIdentifier('ExtHostChatVariables')),
213
+ ExtHostLanguageModelTools: ( createProxyIdentifier('ExtHostChatSkills')),
212
214
  ExtHostChatProvider: ( createProxyIdentifier('ExtHostChatProvider')),
213
215
  ExtHostSpeech: ( createProxyIdentifier('ExtHostSpeech')),
214
216
  ExtHostEmbeddings: ( createProxyIdentifier('ExtHostEmbeddings')),