@codingame/monaco-vscode-api 21.6.0 → 22.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 (446) hide show
  1. package/missing-services.js +68 -78
  2. package/package.json +8 -8
  3. package/services.d.ts +4 -4
  4. package/services.js +5 -4
  5. package/vscode/product.json.js +1 -1
  6. package/vscode/src/vs/base/browser/dom.js +6 -3
  7. package/vscode/src/vs/base/browser/domSanitize.d.ts +8 -0
  8. package/vscode/src/vs/base/browser/domSanitize.js +49 -27
  9. package/vscode/src/vs/base/browser/domStylesheets.js +5 -1
  10. package/vscode/src/vs/base/browser/markdownRenderer.js +7 -5
  11. package/vscode/src/vs/base/browser/ui/codicons/codicon/codicon.ttf +0 -0
  12. package/vscode/src/vs/base/browser/ui/contextview/contextview.js +2 -2
  13. package/vscode/src/vs/base/browser/ui/dropdown/dropdown.js +1 -1
  14. package/vscode/src/vs/base/browser/ui/menu/menu.js +1 -0
  15. package/vscode/src/vs/base/browser/ui/progressbar/progressbar.d.ts +1 -1
  16. package/vscode/src/vs/base/common/async.js +6 -0
  17. package/vscode/src/vs/base/common/cancellation.d.ts +21 -0
  18. package/vscode/src/vs/base/common/cancellation.js +42 -1
  19. package/vscode/src/vs/base/common/codicons.d.ts +3 -0
  20. package/vscode/src/vs/base/common/codiconsLibrary.d.ts +3 -0
  21. package/vscode/src/vs/base/common/codiconsLibrary.js +3 -0
  22. package/vscode/src/vs/base/common/decorators/cancelPreviousCalls.d.ts +84 -0
  23. package/vscode/src/vs/base/common/decorators.d.ts +1 -1
  24. package/vscode/src/vs/base/common/htmlContent.d.ts +2 -0
  25. package/vscode/src/vs/base/common/htmlContent.js +9 -6
  26. package/vscode/src/vs/base/common/lifecycle.js +21 -7
  27. package/vscode/src/vs/base/common/numbers.d.ts +0 -45
  28. package/vscode/src/vs/base/common/oauth.d.ts +33 -0
  29. package/vscode/src/vs/base/common/oauth.js +79 -3
  30. package/vscode/src/vs/base/common/observableInternal/base.d.ts +4 -0
  31. package/vscode/src/vs/base/common/observableInternal/index.js +3 -0
  32. package/vscode/src/vs/base/common/observableInternal/logging/debugGetDependencyGraph.d.ts +4 -0
  33. package/vscode/src/vs/base/common/observableInternal/logging/debugGetDependencyGraph.js +98 -0
  34. package/vscode/src/vs/base/common/observableInternal/observables/baseObservable.d.ts +4 -0
  35. package/vscode/src/vs/base/common/observableInternal/observables/baseObservable.js +8 -1
  36. package/vscode/src/vs/base/common/observableInternal/observables/derivedImpl.d.ts +1 -0
  37. package/vscode/src/vs/base/common/observableInternal/observables/derivedImpl.js +10 -0
  38. package/vscode/src/vs/base/common/observableInternal/observables/observableFromEvent.d.ts +4 -0
  39. package/vscode/src/vs/base/common/observableInternal/observables/observableFromEvent.js +3 -0
  40. package/vscode/src/vs/base/common/observableInternal/reactions/autorunImpl.d.ts +1 -0
  41. package/vscode/src/vs/base/common/observableInternal/reactions/autorunImpl.js +9 -0
  42. package/vscode/src/vs/base/common/product.d.ts +7 -1
  43. package/vscode/src/vs/base/common/strings.d.ts +0 -1
  44. package/vscode/src/vs/base/common/strings.js +9 -4
  45. package/vscode/src/vs/base/common/uriIpc.js +24 -1
  46. package/vscode/src/vs/editor/browser/controller/editContext/native/screenReaderContentRich.js +26 -16
  47. package/vscode/src/vs/editor/browser/controller/editContext/native/screenReaderContentSimple.js +3 -3
  48. package/vscode/src/vs/editor/browser/services/hoverService/hover.css +1 -1
  49. package/vscode/src/vs/editor/browser/widget/diffEditor/commands.d.ts +3 -1
  50. package/vscode/src/vs/editor/browser/widget/diffEditor/commands.js +12 -1
  51. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/diffEditorViewZones.js +8 -8
  52. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorViewModel.js +4 -4
  53. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorWidget.d.ts +1 -0
  54. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorWidget.js +26 -1
  55. package/vscode/src/vs/editor/browser/widget/diffEditor/features/gutterFeature.js +1 -1
  56. package/vscode/src/vs/editor/browser/widget/diffEditor/features/movedBlocksLinesFeature.js +1 -1
  57. package/vscode/src/vs/editor/common/config/editorOptions.d.ts +93 -85
  58. package/vscode/src/vs/editor/common/config/editorOptions.js +386 -351
  59. package/vscode/src/vs/editor/common/core/editorColorRegistry.js +71 -71
  60. package/vscode/src/vs/editor/common/core/ranges/lineRange.d.ts +3 -3
  61. package/vscode/src/vs/editor/common/editorContextKeys.js +46 -46
  62. package/vscode/src/vs/editor/common/languages/modesRegistry.js +1 -1
  63. package/vscode/src/vs/editor/common/languages.d.ts +5 -1
  64. package/vscode/src/vs/editor/common/languages.js +56 -56
  65. package/vscode/src/vs/editor/common/model/editStack.js +1 -1
  66. package/vscode/src/vs/editor/common/standalone/standaloneEnums.d.ts +86 -85
  67. package/vscode/src/vs/editor/common/standalone/standaloneEnums.js +86 -85
  68. package/vscode/src/vs/editor/common/standaloneStrings.js +47 -47
  69. package/vscode/src/vs/editor/common/textModelEditSource.d.ts +1 -0
  70. package/vscode/src/vs/editor/common/viewLayout/viewLineRenderer.js +2 -2
  71. package/vscode/src/vs/editor/common/viewModel/monospaceLineBreaksComputer.js +9 -7
  72. package/vscode/src/vs/editor/common/viewModel/screenReaderSimpleModel.d.ts +1 -0
  73. package/vscode/src/vs/editor/contrib/anchorSelect/browser/anchorSelect.js +6 -6
  74. package/vscode/src/vs/editor/contrib/bracketMatching/browser/bracketMatching.js +6 -6
  75. package/vscode/src/vs/editor/contrib/caretOperations/browser/caretOperations.js +2 -2
  76. package/vscode/src/vs/editor/contrib/caretOperations/browser/transpose.js +1 -1
  77. package/vscode/src/vs/editor/contrib/clipboard/browser/clipboard.js +17 -17
  78. package/vscode/src/vs/editor/contrib/codeAction/browser/codeAction.js +1 -1
  79. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionCommands.js +29 -29
  80. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionContributions.js +3 -3
  81. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionController.js +3 -3
  82. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionMenu.js +8 -8
  83. package/vscode/src/vs/editor/contrib/codeAction/browser/lightBulbWidget.js +9 -9
  84. package/vscode/src/vs/editor/contrib/codelens/browser/codelensController.js +2 -2
  85. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerParts/colorPickerCloseButton.js +1 -1
  86. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerParts/colorPickerHeader.js +1 -1
  87. package/vscode/src/vs/editor/contrib/colorPicker/browser/hoverColorPicker/hoverColorPickerParticipant.js +1 -1
  88. package/vscode/src/vs/editor/contrib/colorPicker/browser/standaloneColorPicker/standaloneColorPickerActions.js +7 -7
  89. package/vscode/src/vs/editor/contrib/comment/browser/comment.js +6 -6
  90. package/vscode/src/vs/editor/contrib/contextmenu/browser/contextmenu.js +10 -10
  91. package/vscode/src/vs/editor/contrib/cursorUndo/browser/cursorUndo.js +2 -2
  92. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/copyPasteContribution.js +4 -4
  93. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/copyPasteController.js +9 -9
  94. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/defaultProviders.js +8 -8
  95. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/dropIntoEditorController.js +3 -3
  96. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/postEditWidget.js +2 -2
  97. package/vscode/src/vs/editor/contrib/editorState/browser/keybindingCancellation.js +1 -1
  98. package/vscode/src/vs/editor/contrib/find/browser/findController.js +16 -16
  99. package/vscode/src/vs/editor/contrib/find/browser/findWidget.js +26 -26
  100. package/vscode/src/vs/editor/contrib/floatingMenu/browser/floatingMenu.contribution.d.ts +1 -0
  101. package/vscode/src/vs/editor/contrib/floatingMenu/browser/floatingMenu.contribution.js +8 -0
  102. package/vscode/src/vs/editor/contrib/floatingMenu/browser/floatingMenu.css +44 -0
  103. package/vscode/src/vs/editor/contrib/floatingMenu/browser/floatingMenu.d.ts +10 -0
  104. package/vscode/src/vs/editor/contrib/floatingMenu/browser/floatingMenu.js +81 -0
  105. package/vscode/src/vs/editor/contrib/folding/browser/folding.js +21 -20
  106. package/vscode/src/vs/editor/contrib/folding/browser/foldingDecorations.js +9 -9
  107. package/vscode/src/vs/editor/contrib/fontZoom/browser/fontZoom.js +3 -3
  108. package/vscode/src/vs/editor/contrib/format/browser/format.js +3 -0
  109. package/vscode/src/vs/editor/contrib/format/browser/formatActions.js +2 -2
  110. package/vscode/src/vs/editor/contrib/gotoError/browser/gotoError.js +8 -8
  111. package/vscode/src/vs/editor/contrib/gotoError/browser/gotoErrorWidget.js +14 -14
  112. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/goToCommands.js +39 -39
  113. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/link/clickLinkGesture.d.ts +4 -1
  114. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/link/clickLinkGesture.js +20 -11
  115. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/link/goToDefinitionAtPosition.js +1 -1
  116. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/peek/referencesController.js +3 -3
  117. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/peek/referencesTree.js +3 -3
  118. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/peek/referencesWidget.js +3 -3
  119. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/referencesModel.js +8 -8
  120. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/symbolNavigation.js +3 -3
  121. package/vscode/src/vs/editor/contrib/gpu/browser/gpuActions.js +4 -4
  122. package/vscode/src/vs/editor/contrib/hover/browser/contentHoverController.js +2 -1
  123. package/vscode/src/vs/editor/contrib/hover/browser/contentHoverRendered.js +3 -3
  124. package/vscode/src/vs/editor/contrib/hover/browser/hoverAccessibleViews.js +2 -2
  125. package/vscode/src/vs/editor/contrib/hover/browser/hoverActionIds.js +2 -2
  126. package/vscode/src/vs/editor/contrib/hover/browser/hoverActions.js +24 -24
  127. package/vscode/src/vs/editor/contrib/hover/browser/markdownHoverParticipant.js +9 -9
  128. package/vscode/src/vs/editor/contrib/hover/browser/markerHoverParticipant.js +5 -5
  129. package/vscode/src/vs/editor/contrib/inPlaceReplace/browser/inPlaceReplace.js +2 -2
  130. package/vscode/src/vs/editor/contrib/indentation/browser/indentation.js +20 -20
  131. package/vscode/src/vs/editor/contrib/inlayHints/browser/inlayHints.js +2 -7
  132. package/vscode/src/vs/editor/contrib/inlayHints/browser/inlayHintsHover.js +8 -8
  133. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/controller/commands.js +19 -19
  134. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/controller/inlineCompletionContextKeys.js +12 -12
  135. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/controller/inlineCompletionsController.js +18 -13
  136. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/hintsWidget/hoverParticipant.js +2 -2
  137. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/hintsWidget/inlineCompletionsHintsWidget.js +5 -5
  138. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/inlineCompletionsModel.d.ts +3 -1
  139. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/inlineCompletionsModel.js +14 -6
  140. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/inlineCompletionsSource.d.ts +7 -1
  141. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/inlineCompletionsSource.js +154 -5
  142. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/inlineSuggestionItem.d.ts +1 -0
  143. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/inlineSuggestionItem.js +3 -0
  144. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/provideInlineCompletions.d.ts +7 -3
  145. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/provideInlineCompletions.js +18 -3
  146. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/telemetry.d.ts +45 -0
  147. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/telemetry.js +7 -0
  148. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/components/gutterIndicatorMenu.js +16 -15
  149. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/components/gutterIndicatorView.js +5 -2
  150. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsModel.js +1 -1
  151. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViewProducer.js +2 -2
  152. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/theme.js +24 -21
  153. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/view.css +13 -4
  154. package/vscode/src/vs/editor/contrib/insertFinalNewLine/browser/insertFinalNewLine.js +1 -1
  155. package/vscode/src/vs/editor/contrib/lineSelection/browser/lineSelection.js +1 -1
  156. package/vscode/src/vs/editor/contrib/linesOperations/browser/linesOperations.d.ts +2 -1
  157. package/vscode/src/vs/editor/contrib/linesOperations/browser/linesOperations.js +36 -35
  158. package/vscode/src/vs/editor/contrib/linkedEditing/browser/linkedEditing.js +2 -2
  159. package/vscode/src/vs/editor/contrib/links/browser/links.js +11 -11
  160. package/vscode/src/vs/editor/contrib/message/browser/messageController.js +1 -1
  161. package/vscode/src/vs/editor/contrib/middleScroll/browser/middleScrollController.js +3 -3
  162. package/vscode/src/vs/editor/contrib/multicursor/browser/multicursor.js +22 -22
  163. package/vscode/src/vs/editor/contrib/parameterHints/browser/parameterHints.js +1 -1
  164. package/vscode/src/vs/editor/contrib/parameterHints/browser/parameterHintsWidget.js +4 -4
  165. package/vscode/src/vs/editor/contrib/peekView/browser/peekView.js +18 -18
  166. package/vscode/src/vs/editor/contrib/placeholderText/browser/placeholderText.contribution.js +1 -1
  167. package/vscode/src/vs/editor/contrib/readOnlyMessage/browser/contribution.js +2 -2
  168. package/vscode/src/vs/editor/contrib/rename/browser/rename.js +11 -11
  169. package/vscode/src/vs/editor/contrib/rename/browser/renameWidget.js +6 -6
  170. package/vscode/src/vs/editor/contrib/smartSelect/browser/smartSelect.js +4 -4
  171. package/vscode/src/vs/editor/contrib/snippet/browser/snippetController2.d.ts +3 -0
  172. package/vscode/src/vs/editor/contrib/snippet/browser/snippetController2.js +13 -4
  173. package/vscode/src/vs/editor/contrib/snippet/browser/snippetVariables.js +4 -4
  174. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollActions.js +11 -11
  175. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollController.js +12 -19
  176. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollProvider.js +10 -1
  177. package/vscode/src/vs/editor/contrib/suggest/browser/suggest.js +8 -8
  178. package/vscode/src/vs/editor/contrib/suggest/browser/suggestController.js +10 -10
  179. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidget.js +18 -18
  180. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidgetDetails.js +2 -2
  181. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidgetRenderer.js +2 -2
  182. package/vscode/src/vs/editor/contrib/suggest/browser/wordContextKey.js +1 -1
  183. package/vscode/src/vs/editor/contrib/symbolIcons/browser/symbolIcons.js +33 -33
  184. package/vscode/src/vs/editor/contrib/toggleTabFocusMode/browser/toggleTabFocusMode.js +4 -4
  185. package/vscode/src/vs/editor/contrib/tokenization/browser/tokenization.js +1 -1
  186. package/vscode/src/vs/editor/contrib/unicodeHighlighter/browser/bannerController.js +1 -1
  187. package/vscode/src/vs/editor/contrib/unicodeHighlighter/browser/unicodeHighlighter.js +26 -26
  188. package/vscode/src/vs/editor/contrib/unusualLineTerminators/browser/unusualLineTerminators.js +5 -5
  189. package/vscode/src/vs/editor/contrib/wordHighlighter/browser/highlightDecorations.js +9 -9
  190. package/vscode/src/vs/editor/contrib/wordHighlighter/browser/wordHighlighter.js +3 -3
  191. package/vscode/src/vs/editor/contrib/wordOperations/browser/wordOperations.js +1 -1
  192. package/vscode/src/vs/editor/standalone/browser/quickInput/standaloneQuickInputService.js +1 -1
  193. package/vscode/src/vs/editor/standalone/browser/standaloneServices.js +0 -1
  194. package/vscode/src/vs/editor/standalone/browser/standaloneThemeService.js +1 -0
  195. package/vscode/src/vs/platform/accessibility/browser/accessibleView.d.ts +1 -1
  196. package/vscode/src/vs/platform/accessibilitySignal/browser/accessibilitySignalService.js +62 -62
  197. package/vscode/src/vs/platform/action/common/actionCommonCategories.js +6 -6
  198. package/vscode/src/vs/platform/actionWidget/browser/actionList.js +9 -6
  199. package/vscode/src/vs/platform/actionWidget/browser/actionWidget.css +13 -14
  200. package/vscode/src/vs/platform/actionWidget/browser/actionWidget.js +7 -7
  201. package/vscode/src/vs/platform/actions/browser/menuEntryActionViewItem.js +5 -5
  202. package/vscode/src/vs/platform/actions/browser/toolbar.d.ts +1 -1
  203. package/vscode/src/vs/platform/actions/browser/toolbar.js +5 -5
  204. package/vscode/src/vs/platform/actions/common/actions.d.ts +2 -0
  205. package/vscode/src/vs/platform/actions/common/actions.js +2 -0
  206. package/vscode/src/vs/platform/actions/common/menuResetAction.js +1 -1
  207. package/vscode/src/vs/platform/actions/common/menuService.js +2 -2
  208. package/vscode/src/vs/platform/assignment/common/assignment.d.ts +6 -1
  209. package/vscode/src/vs/platform/clipboard/browser/clipboardService.js +2 -2
  210. package/vscode/src/vs/platform/configuration/common/configurationRegistry.js +10 -10
  211. package/vscode/src/vs/platform/contextkey/browser/contextKeyService.d.ts +2 -0
  212. package/vscode/src/vs/platform/contextkey/browser/contextKeyService.js +32 -3
  213. package/vscode/src/vs/platform/contextkey/common/contextkey.js +11 -11
  214. package/vscode/src/vs/platform/contextkey/common/contextkeys.d.ts +0 -1
  215. package/vscode/src/vs/platform/contextkey/common/contextkeys.js +10 -11
  216. package/vscode/src/vs/platform/contextkey/common/scanner.js +5 -5
  217. package/vscode/src/vs/platform/dataChannel/browser/forwardingTelemetryService.d.ts +32 -0
  218. package/vscode/src/vs/platform/dataChannel/browser/forwardingTelemetryService.js +86 -0
  219. package/vscode/src/vs/platform/dialogs/common/dialogs.service.d.ts +1 -1
  220. package/vscode/src/vs/platform/dnd/browser/dnd.js +1 -1
  221. package/vscode/src/vs/platform/environment/common/argv.d.ts +1 -0
  222. package/vscode/src/vs/platform/environment/common/environment.service.d.ts +0 -1
  223. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.js +19 -19
  224. package/vscode/src/vs/platform/extensionManagement/common/extensionNls.js +1 -1
  225. package/vscode/src/vs/platform/extensionManagement/common/extensionsScannerService.js +7 -7
  226. package/vscode/src/vs/platform/extensionManagement/common/implicitActivationEvents.d.ts +1 -3
  227. package/vscode/src/vs/platform/extensionManagement/common/implicitActivationEvents.js +1 -1
  228. package/vscode/src/vs/platform/extensions/common/extensionValidator.js +20 -20
  229. package/vscode/src/vs/platform/extensions/common/extensions.d.ts +2 -1
  230. package/vscode/src/vs/platform/extensions/common/extensionsApiProposals.d.ts +4 -3
  231. package/vscode/src/vs/platform/extensions/common/extensionsApiProposals.js +4 -3
  232. package/vscode/src/vs/platform/files/browser/htmlFileSystemProvider.js +2 -2
  233. package/vscode/src/vs/platform/files/common/files.js +6 -6
  234. package/vscode/src/vs/platform/history/browser/contextScopedHistoryWidget.js +1 -1
  235. package/vscode/src/vs/platform/keybinding/common/abstractKeybindingService.js +4 -4
  236. package/vscode/src/vs/platform/list/browser/listService.js +27 -27
  237. package/vscode/src/vs/platform/log/common/log.js +6 -6
  238. package/vscode/src/vs/platform/markers/common/markerService.js +2 -2
  239. package/vscode/src/vs/platform/markers/common/markers.js +6 -6
  240. package/vscode/src/vs/platform/mcp/common/mcpGalleryManifest.d.ts +10 -2
  241. package/vscode/src/vs/platform/mcp/common/mcpGalleryManifest.js +10 -2
  242. package/vscode/src/vs/platform/mcp/common/mcpManagement.service.d.ts +3 -3
  243. package/vscode/src/vs/platform/notification/common/notification.js +3 -3
  244. package/vscode/src/vs/platform/product/common/product.js +3 -3
  245. package/vscode/src/vs/platform/quickinput/browser/quickInput.d.ts +1 -0
  246. package/vscode/src/vs/platform/quickinput/browser/quickInput.js +23 -15
  247. package/vscode/src/vs/platform/quickinput/browser/quickInputActions.js +47 -13
  248. package/vscode/src/vs/platform/quickinput/browser/quickInputController.js +10 -61
  249. package/vscode/src/vs/platform/quickinput/browser/quickInputList.js +1 -1
  250. package/vscode/src/vs/platform/quickinput/browser/quickInputUtils.js +1 -1
  251. package/vscode/src/vs/platform/quickinput/browser/tree/quickInputTreeAccessibilityProvider.js +1 -1
  252. package/vscode/src/vs/platform/quickinput/browser/tree/quickInputTreeController.d.ts +6 -0
  253. package/vscode/src/vs/platform/quickinput/browser/tree/quickInputTreeController.js +10 -0
  254. package/vscode/src/vs/platform/quickinput/browser/tree/quickInputTreeRenderer.js +10 -5
  255. package/vscode/src/vs/platform/quickinput/browser/tree/quickTree.js +4 -1
  256. package/vscode/src/vs/platform/quickinput/common/quickInput.d.ts +10 -1
  257. package/vscode/src/vs/platform/request/common/request.js +34 -18
  258. package/vscode/src/vs/platform/telemetry/common/telemetryUtils.js +1 -1
  259. package/vscode/src/vs/platform/terminal/common/terminal.d.ts +2 -3
  260. package/vscode/src/vs/platform/terminal/common/terminal.js +6 -7
  261. package/vscode/src/vs/platform/theme/common/colorUtils.js +2 -2
  262. package/vscode/src/vs/platform/theme/common/colors/baseColors.js +17 -17
  263. package/vscode/src/vs/platform/theme/common/colors/chartsColors.js +8 -8
  264. package/vscode/src/vs/platform/theme/common/colors/editorColors.js +95 -95
  265. package/vscode/src/vs/platform/theme/common/colors/inputColors.js +47 -47
  266. package/vscode/src/vs/platform/theme/common/colors/listColors.js +36 -36
  267. package/vscode/src/vs/platform/theme/common/colors/menuColors.js +7 -7
  268. package/vscode/src/vs/platform/theme/common/colors/minimapColors.js +11 -11
  269. package/vscode/src/vs/platform/theme/common/colors/miscColors.js +15 -15
  270. package/vscode/src/vs/platform/theme/common/colors/quickpickColors.js +9 -9
  271. package/vscode/src/vs/platform/theme/common/colors/searchColors.js +3 -3
  272. package/vscode/src/vs/platform/theme/common/iconRegistry.js +6 -6
  273. package/vscode/src/vs/platform/undoRedo/common/undoRedoService.js +20 -20
  274. package/vscode/src/vs/platform/userDataProfile/common/userDataProfile.js +1 -1
  275. package/vscode/src/vs/platform/userDataSync/common/userDataSync.js +5 -5
  276. package/vscode/src/vs/platform/workspace/common/workspace.js +1 -1
  277. package/vscode/src/vs/workbench/api/common/extHost.api.impl.js +11 -10
  278. package/vscode/src/vs/workbench/api/common/extHost.protocol.d.ts +25 -24
  279. package/vscode/src/vs/workbench/api/common/extHostAuthentication.d.ts +4 -4
  280. package/vscode/src/vs/workbench/api/common/extHostAuthentication.js +10 -18
  281. package/vscode/src/vs/workbench/api/common/extHostChatAgents2.d.ts +5 -0
  282. package/vscode/src/vs/workbench/api/common/extHostChatAgents2.js +16 -4
  283. package/vscode/src/vs/workbench/api/common/extHostChatSessions.d.ts +1 -3
  284. package/vscode/src/vs/workbench/api/common/extHostChatSessions.js +9 -5
  285. package/vscode/src/vs/workbench/api/common/extHostCustomEditors.d.ts +1 -1
  286. package/vscode/src/vs/workbench/api/common/extHostDebugService.js +0 -3
  287. package/vscode/src/vs/workbench/api/common/extHostDiagnostics.js +1 -1
  288. package/vscode/src/vs/workbench/api/common/extHostExtensionService.js +2 -2
  289. package/vscode/src/vs/workbench/api/common/extHostLanguageFeatures.js +2 -2
  290. package/vscode/src/vs/workbench/api/common/extHostLanguageModelTools.js +9 -4
  291. package/vscode/src/vs/workbench/api/common/extHostLanguageModels.js +7 -2
  292. package/vscode/src/vs/workbench/api/common/extHostLogService.js +1 -1
  293. package/vscode/src/vs/workbench/api/common/extHostMcp.d.ts +97 -9
  294. package/vscode/src/vs/workbench/api/common/extHostMcp.js +66 -62
  295. package/vscode/src/vs/workbench/api/common/extHostNotebook.d.ts +1 -1
  296. package/vscode/src/vs/workbench/api/common/extHostNotebook.js +2 -2
  297. package/vscode/src/vs/workbench/api/common/extHostSCM.d.ts +2 -0
  298. package/vscode/src/vs/workbench/api/common/extHostSCM.js +22 -0
  299. package/vscode/src/vs/workbench/api/common/extHostSecrets.d.ts +0 -1
  300. package/vscode/src/vs/workbench/api/common/extHostSecrets.js +0 -3
  301. package/vscode/src/vs/workbench/api/common/extHostStatusBar.js +2 -2
  302. package/vscode/src/vs/workbench/api/common/extHostTelemetry.js +1 -1
  303. package/vscode/src/vs/workbench/api/common/extHostTerminalService.d.ts +2 -2
  304. package/vscode/src/vs/workbench/api/common/extHostTerminalService.js +8 -8
  305. package/vscode/src/vs/workbench/api/common/extHostTreeViews.js +53 -3
  306. package/vscode/src/vs/workbench/api/common/extHostTunnelService.d.ts +2 -0
  307. package/vscode/src/vs/workbench/api/common/extHostTunnelService.js +5 -2
  308. package/vscode/src/vs/workbench/api/common/extHostTypeConverters.d.ts +6 -2
  309. package/vscode/src/vs/workbench/api/common/extHostTypeConverters.js +60 -9
  310. package/vscode/src/vs/workbench/api/common/extHostTypes.d.ts +18 -14
  311. package/vscode/src/vs/workbench/api/common/extHostTypes.js +7 -7
  312. package/vscode/src/vs/workbench/api/common/extHostWebviewPanels.d.ts +1 -1
  313. package/vscode/src/vs/workbench/api/common/extHostWorkspace.js +1 -1
  314. package/vscode/src/vs/workbench/api/common/jsonValidationExtensionPoint.js +12 -12
  315. package/vscode/src/vs/workbench/browser/actions/developerActions.js +262 -31
  316. package/vscode/src/vs/workbench/browser/actions/textInputActions.js +6 -6
  317. package/vscode/src/vs/workbench/browser/contextkeys.d.ts +5 -7
  318. package/vscode/src/vs/workbench/browser/contextkeys.js +15 -43
  319. package/vscode/src/vs/workbench/common/configuration.js +9 -9
  320. package/vscode/src/vs/workbench/common/contextkeys.js +73 -73
  321. package/vscode/src/vs/workbench/common/editor/diffEditorInput.js +1 -1
  322. package/vscode/src/vs/workbench/common/editor/editorInput.d.ts +1 -1
  323. package/vscode/src/vs/workbench/common/editor/sideBySideEditorInput.js +1 -1
  324. package/vscode/src/vs/workbench/common/editor/textEditorModel.js +1 -1
  325. package/vscode/src/vs/workbench/common/editor.js +4 -4
  326. package/vscode/src/vs/workbench/common/theme.js +167 -167
  327. package/vscode/src/vs/workbench/common/views.js +4 -4
  328. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibilityConfiguration.d.ts +3 -2
  329. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibilityConfiguration.js +175 -158
  330. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibleViewActions.js +12 -12
  331. package/vscode/src/vs/workbench/contrib/chat/browser/chat.service.d.ts +2 -1
  332. package/vscode/src/vs/workbench/contrib/chat/browser/chatAttachmentResolveService.service.d.ts +1 -1
  333. package/vscode/src/vs/workbench/contrib/chat/browser/chatContextPickService.service.d.ts +1 -1
  334. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorContextKeys.d.ts +1 -0
  335. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorContextKeys.js +15 -9
  336. package/vscode/src/vs/workbench/contrib/chat/common/chatContextKeys.d.ts +7 -0
  337. package/vscode/src/vs/workbench/contrib/chat/common/chatContextKeys.js +61 -66
  338. package/vscode/src/vs/workbench/contrib/chat/common/chatEditingService.d.ts +2 -1
  339. package/vscode/src/vs/workbench/contrib/chat/common/chatEditingService.js +2 -2
  340. package/vscode/src/vs/workbench/contrib/chat/common/chatLayoutService.service.d.ts +1 -2
  341. package/vscode/src/vs/workbench/contrib/chat/common/chatService.d.ts +24 -8
  342. package/vscode/src/vs/workbench/contrib/chat/common/chatService.service.d.ts +8 -1
  343. package/vscode/src/vs/workbench/contrib/chat/common/chatSessionsService.d.ts +6 -2
  344. package/vscode/src/vs/workbench/contrib/chat/common/chatSessionsService.service.d.ts +0 -2
  345. package/vscode/src/vs/workbench/contrib/chat/common/chatVariableEntries.d.ts +28 -3
  346. package/vscode/src/vs/workbench/contrib/chat/common/chatVariableEntries.js +35 -6
  347. package/vscode/src/vs/workbench/contrib/chat/common/constants.d.ts +16 -6
  348. package/vscode/src/vs/workbench/contrib/chat/common/constants.js +11 -8
  349. package/vscode/src/vs/workbench/contrib/chat/common/languageModelToolsService.d.ts +9 -2
  350. package/vscode/src/vs/workbench/contrib/chat/common/languageModelToolsService.js +4 -4
  351. package/vscode/src/vs/workbench/contrib/chat/common/languageModelToolsService.service.d.ts +10 -3
  352. package/vscode/src/vs/workbench/contrib/chat/common/languageModels.d.ts +8 -4
  353. package/vscode/src/vs/workbench/contrib/chat/common/languageModels.js +50 -42
  354. package/vscode/src/vs/workbench/contrib/chat/common/modelPicker/modelPickerWidget.js +1 -1
  355. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService.service.d.ts +23 -8
  356. package/vscode/src/vs/workbench/contrib/chat/common/tools/manageTodoListTool.d.ts +4 -3
  357. package/vscode/src/vs/workbench/contrib/chat/common/tools/manageTodoListTool.js +29 -29
  358. package/vscode/src/vs/workbench/contrib/chat/common/tools/tools.js +4 -3
  359. package/vscode/src/vs/workbench/contrib/codeActions/browser/codeActionsContribution.js +13 -13
  360. package/vscode/src/vs/workbench/contrib/codeEditor/browser/dictation/editorDictation.js +4 -4
  361. package/vscode/src/vs/workbench/contrib/codeEditor/browser/diffEditorAccessibilityHelp.js +5 -5
  362. package/vscode/src/vs/workbench/contrib/codeEditor/browser/diffEditorHelper.js +3 -3
  363. package/vscode/src/vs/workbench/contrib/codeEditor/browser/largeFileOptimizations.js +3 -3
  364. package/vscode/src/vs/workbench/contrib/codeEditor/browser/saveParticipants.js +7 -6
  365. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleMinimap.js +2 -2
  366. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleMultiCursorModifier.js +4 -4
  367. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleRenderControlCharacter.js +2 -2
  368. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleRenderWhitespace.js +2 -2
  369. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleWordWrap.js +5 -5
  370. package/vscode/src/vs/workbench/contrib/comments/browser/commentsAccessibility.js +12 -12
  371. package/vscode/src/vs/workbench/contrib/comments/common/commentContextKeys.js +11 -11
  372. package/vscode/src/vs/workbench/contrib/debug/common/abstractDebugAdapter.js +1 -1
  373. package/vscode/src/vs/workbench/contrib/debug/common/debug.js +65 -65
  374. package/vscode/src/vs/workbench/contrib/dropOrPasteInto/browser/commands.js +2 -2
  375. package/vscode/src/vs/workbench/contrib/dropOrPasteInto/browser/configurationSchema.js +4 -4
  376. package/vscode/src/vs/workbench/contrib/editTelemetry/browser/telemetry/aiEditTelemetry/aiEditTelemetryService.d.ts +3 -1
  377. package/vscode/src/vs/workbench/contrib/extensions/common/extensions.js +1 -1
  378. package/vscode/src/vs/workbench/contrib/extensions/common/searchExtensionsTool.js +4 -4
  379. package/vscode/src/vs/workbench/contrib/files/browser/fileConstants.js +6 -6
  380. package/vscode/src/vs/workbench/contrib/folding/browser/folding.contribution.js +3 -3
  381. package/vscode/src/vs/workbench/contrib/format/browser/formatActionsMultiple.js +20 -20
  382. package/vscode/src/vs/workbench/contrib/format/browser/formatActionsNone.js +4 -4
  383. package/vscode/src/vs/workbench/contrib/format/browser/formatModified.js +1 -1
  384. package/vscode/src/vs/workbench/contrib/inlayHints/browser/inlayHintsAccessibilty.js +4 -4
  385. package/vscode/src/vs/workbench/contrib/list/browser/listResizeColumnAction.js +2 -2
  386. package/vscode/src/vs/workbench/contrib/list/browser/tableColumnResizeQuickPick.js +5 -5
  387. package/vscode/src/vs/workbench/contrib/mcp/common/mcpRegistryTypes.d.ts +6 -1
  388. package/vscode/src/vs/workbench/contrib/mcp/common/mcpTypes.d.ts +33 -0
  389. package/vscode/src/vs/workbench/contrib/mcp/common/mcpTypes.js +16 -5
  390. package/vscode/src/vs/workbench/contrib/mcp/common/mcpTypes.service.d.ts +2 -2
  391. package/vscode/src/vs/workbench/contrib/mcp/common/modelContextProtocol.d.ts +217 -60
  392. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/multiDiffSourceResolverService.service.d.ts +1 -1
  393. package/vscode/src/vs/workbench/contrib/scm/common/history.d.ts +2 -0
  394. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetCompletionProvider.js +3 -3
  395. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetsFile.js +3 -3
  396. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetsService.js +9 -9
  397. package/vscode/src/vs/workbench/contrib/speech/common/speechService.js +29 -29
  398. package/vscode/src/vs/workbench/contrib/tasks/common/constants.js +1 -1
  399. package/vscode/src/vs/workbench/contrib/tasks/common/taskDefinitionRegistry.js +7 -7
  400. package/vscode/src/vs/workbench/contrib/tasks/common/taskService.service.d.ts +1 -1
  401. package/vscode/src/vs/workbench/contrib/tasks/common/tasks.d.ts +16 -3
  402. package/vscode/src/vs/workbench/contrib/tasks/common/tasks.js +18 -6
  403. package/vscode/src/vs/workbench/contrib/terminal/browser/terminal.service.d.ts +42 -8
  404. package/vscode/src/vs/workbench/contrib/terminal/browser/terminal.service.js +2 -1
  405. package/vscode/src/vs/workbench/contrib/testing/common/constants.d.ts +1 -0
  406. package/vscode/src/vs/workbench/contrib/testing/common/constants.js +12 -11
  407. package/vscode/src/vs/workbench/contrib/testing/common/testTypes.js +3 -3
  408. package/vscode/src/vs/workbench/services/accounts/common/defaultAccount.js +2 -2
  409. package/vscode/src/vs/workbench/services/activity/common/activity.service.d.ts +1 -1
  410. package/vscode/src/vs/workbench/services/authentication/common/authentication.d.ts +4 -4
  411. package/vscode/src/vs/workbench/services/authentication/common/authentication.js +2 -2
  412. package/vscode/src/vs/workbench/services/authentication/common/authentication.service.d.ts +6 -6
  413. package/vscode/src/vs/workbench/services/chat/common/chatEntitlementService.d.ts +286 -0
  414. package/vscode/src/vs/workbench/services/chat/common/chatEntitlementService.js +861 -0
  415. package/vscode/src/vs/workbench/{contrib → services}/chat/common/chatEntitlementService.service.d.ts +8 -2
  416. package/vscode/src/vs/workbench/services/configurationResolver/common/variableResolver.js +16 -16
  417. package/vscode/src/vs/workbench/services/editor/common/editorResolverService.js +1 -1
  418. package/vscode/src/vs/workbench/services/extensions/common/extensionsRegistry.js +87 -87
  419. package/vscode/src/vs/workbench/services/language/common/languageService.js +30 -30
  420. package/vscode/src/vs/workbench/services/log/common/logConstants.js +1 -1
  421. package/vscode/src/vs/workbench/services/preferences/common/preferences.service.d.ts +1 -1
  422. package/vscode/src/vs/workbench/services/remote/common/remoteExplorerService.js +8 -8
  423. package/vscode/src/vs/workbench/services/remote/common/tunnelModel.js +6 -6
  424. package/vscode/src/vs/workbench/services/search/common/queryBuilder.js +1 -1
  425. package/vscode/src/vs/workbench/services/textfile/common/encoding.js +1 -1
  426. package/vscode/src/vs/workbench/services/themes/common/colorExtensionPoint.js +22 -22
  427. package/vscode/src/vs/workbench/services/themes/common/iconExtensionPoint.js +13 -13
  428. package/vscode/src/vs/workbench/services/userDataSync/common/userDataSync.js +13 -13
  429. package/vscode-dts/vscode.d.ts +92 -47
  430. package/vscode-dts/vscode.proposed.authenticationChallenges.d.ts +7 -80
  431. package/vscode-dts/vscode.proposed.chatParticipantAdditions.d.ts +14 -1
  432. package/vscode-dts/vscode.proposed.chatParticipantPrivate.d.ts +12 -0
  433. package/vscode-dts/vscode.proposed.chatProvider.d.ts +19 -0
  434. package/vscode-dts/vscode.proposed.chatSessionsProvider.d.ts +19 -11
  435. package/vscode-dts/vscode.proposed.d.ts +1 -1
  436. package/vscode-dts/{vscode.proposed.secretStorageKeys.d.ts → vscode.proposed.devDeviceId.d.ts} +3 -4
  437. package/vscode-dts/vscode.proposed.languageModelCapabilities.d.ts +5 -0
  438. package/vscode-dts/vscode.proposed.scmHistoryProvider.d.ts +2 -0
  439. package/vscode-dts/vscode.proposed.terminalCompletionProvider.d.ts +70 -16
  440. package/vscode/src/vs/workbench/contrib/chat/common/chatLayoutService.d.ts +0 -8
  441. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/tokens/index.d.ts +0 -5
  442. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/tokens.d.ts +0 -20
  443. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contentProviders/types.d.ts +0 -55
  444. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/types.d.ts +0 -91
  445. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService.d.ts +0 -125
  446. /package/vscode/src/vs/workbench/{contrib → services}/chat/common/chatEntitlementService.service.js +0 -0
@@ -1,5 +1,6 @@
1
1
 
2
2
  import { __decorate, __param } from '../../../../../../../external/tslib/tslib.es6.js';
3
+ import { SequencerByKey } from '../../../../base/common/async.js';
3
4
  import { CancellationToken } from '../../../../base/common/cancellation.js';
4
5
  import { Emitter } from '../../../../base/common/event.js';
5
6
  import { Iterable } from '../../../../base/common/iterator.js';
@@ -10,6 +11,8 @@ import { IContextKeyService } from '../../../../platform/contextkey/common/conte
10
11
  import { ILogService } from '../../../../platform/log/common/log.service.js';
11
12
  import { StorageScope, StorageTarget } from '../../../../platform/storage/common/storage.js';
12
13
  import { IStorageService } from '../../../../platform/storage/common/storage.service.js';
14
+ import { ChatEntitlement } from '../../../services/chat/common/chatEntitlementService.js';
15
+ import { IChatEntitlementService } from '../../../services/chat/common/chatEntitlementService.service.js';
13
16
  import { IExtensionService } from '../../../services/extensions/common/extensions.service.js';
14
17
  import { ExtensionsRegistry } from '../../../services/extensions/common/extensionsRegistry.js';
15
18
  import { ChatContextKeys } from './chatContextKeys.js';
@@ -63,16 +66,16 @@ const languageModelChatProviderType = {
63
66
  properties: {
64
67
  vendor: {
65
68
  type: 'string',
66
- description: ( localize(5556, "A globally unique vendor of language model chat provider."))
69
+ description: ( localize(5612, "A globally unique vendor of language model chat provider."))
67
70
  },
68
71
  displayName: {
69
72
  type: 'string',
70
- description: ( localize(5557, "The display name of the language model chat provider."))
73
+ description: ( localize(5613, "The display name of the language model chat provider."))
71
74
  },
72
75
  managementCommand: {
73
76
  type: 'string',
74
77
  description: ( localize(
75
- 5558,
78
+ 5614,
76
79
  "A command to manage the language model chat provider, e.g. 'Manage Copilot models'. This is used in the chat model picker. If not provided, a gear icon is not rendered during vendor selection."
77
80
  ))
78
81
  }
@@ -81,7 +84,7 @@ const languageModelChatProviderType = {
81
84
  const languageModelChatProviderExtensionPoint = ExtensionsRegistry.registerExtensionPoint({
82
85
  extensionPoint: 'languageModelChatProviders',
83
86
  jsonSchema: {
84
- description: ( localize(5559, "Contribute language model chat providers of a specific vendor.")),
87
+ description: ( localize(5615, "Contribute language model chat providers of a specific vendor.")),
85
88
  oneOf: [
86
89
  languageModelChatProviderType,
87
90
  {
@@ -90,26 +93,39 @@ const languageModelChatProviderExtensionPoint = ExtensionsRegistry.registerExten
90
93
  }
91
94
  ]
92
95
  },
93
- activationEventsGenerator: (contribs, result) => {
96
+ activationEventsGenerator: function* (contribs) {
94
97
  for (const contrib of contribs) {
95
- result.push(`onLanguageModelChatProvider:${contrib.vendor}`);
98
+ yield `onLanguageModelChatProvider:${contrib.vendor}`;
96
99
  }
97
100
  }
98
101
  });
99
102
  let LanguageModelsService = class LanguageModelsService {
100
- constructor(_extensionService, _logService, _storageService, _contextKeyService) {
103
+ constructor(_extensionService, _logService, _storageService, _contextKeyService, _chatEntitlementService) {
101
104
  this._extensionService = _extensionService;
102
105
  this._logService = _logService;
103
106
  this._storageService = _storageService;
107
+ this._chatEntitlementService = _chatEntitlementService;
104
108
  this._store = ( new DisposableStore());
105
109
  this._providers = ( new Map());
106
110
  this._modelCache = ( new Map());
107
111
  this._vendors = ( new Map());
112
+ this._resolveLMSequencer = ( new SequencerByKey());
108
113
  this._modelPickerUserPreferences = {};
109
114
  this._onLanguageModelChange = this._store.add(( new Emitter()));
110
115
  this.onDidChangeLanguageModels = this._onLanguageModelChange.event;
111
116
  this._hasUserSelectableModels = ChatContextKeys.languageModelsAreUserSelectable.bindTo(_contextKeyService);
112
117
  this._modelPickerUserPreferences = this._storageService.getObject('chatModelPickerPreferences', StorageScope.PROFILE, this._modelPickerUserPreferences);
118
+ const entitlementChangeHandler = () => {
119
+ if ((this._chatEntitlementService.entitlement === ChatEntitlement.Business || this._chatEntitlementService.entitlement === ChatEntitlement.Enterprise) && !this._chatEntitlementService.isInternal) {
120
+ this._modelPickerUserPreferences = {};
121
+ this._storageService.store('chatModelPickerPreferences', this._modelPickerUserPreferences, StorageScope.PROFILE, StorageTarget.USER);
122
+ }
123
+ else if (this._chatEntitlementService.entitlement === ChatEntitlement.Unknown) {
124
+ this._modelPickerUserPreferences = {};
125
+ }
126
+ };
127
+ entitlementChangeHandler();
128
+ this._store.add(this._chatEntitlementService.onDidChangeEntitlement(entitlementChangeHandler));
113
129
  this._store.add(this.onDidChangeLanguageModels(() => {
114
130
  this._hasUserSelectableModels.set(this._modelCache.size > 0 && ( Array.from(( this._modelCache.values())).some(model => model.isUserSelectable)));
115
131
  }));
@@ -119,22 +135,22 @@ let LanguageModelsService = class LanguageModelsService {
119
135
  for (const item of Iterable.wrap(extension.value)) {
120
136
  if (( this._vendors.has(item.vendor))) {
121
137
  extension.collector.error(( localize(
122
- 5560,
138
+ 5616,
123
139
  "The vendor '{0}' is already registered and cannot be registered twice",
124
140
  item.vendor
125
141
  )));
126
142
  continue;
127
143
  }
128
144
  if (isFalsyOrWhitespace(item.vendor)) {
129
- extension.collector.error(( localize(5561, "The vendor field cannot be empty.")));
145
+ extension.collector.error(( localize(5617, "The vendor field cannot be empty.")));
130
146
  continue;
131
147
  }
132
148
  if (item.vendor.trim() !== item.vendor) {
133
- extension.collector.error(( localize(5562, "The vendor field cannot start or end with whitespace.")));
149
+ extension.collector.error(( localize(5618, "The vendor field cannot start or end with whitespace.")));
134
150
  continue;
135
151
  }
136
152
  this._vendors.set(item.vendor, item);
137
- if (this._hasStoredModelForvendor(item.vendor)) {
153
+ if (this._hasStoredModelForVendor(item.vendor)) {
138
154
  this._extensionService.activateByEvent(`onLanguageModelChatProvider:${item.vendor}`);
139
155
  }
140
156
  }
@@ -146,7 +162,7 @@ let LanguageModelsService = class LanguageModelsService {
146
162
  }
147
163
  }));
148
164
  }
149
- _hasStoredModelForvendor(vendor) {
165
+ _hasStoredModelForVendor(vendor) {
150
166
  return ( ( Object.keys(this._modelPickerUserPreferences)).some(modelId => {
151
167
  return modelId.startsWith(vendor);
152
168
  }));
@@ -185,38 +201,27 @@ let LanguageModelsService = class LanguageModelsService {
185
201
  }
186
202
  return model;
187
203
  }
188
- _clearModelCache(vendors) {
189
- if (typeof vendors === 'string') {
190
- vendors = [vendors];
191
- }
192
- for (const vendor of vendors) {
193
- for (const [id, model] of this._modelCache.entries()) {
194
- if (model.vendor === vendor) {
195
- this._modelCache.delete(id);
196
- }
204
+ _clearModelCache(vendor) {
205
+ for (const [id, model] of this._modelCache.entries()) {
206
+ if (model.vendor === vendor) {
207
+ this._modelCache.delete(id);
197
208
  }
198
209
  }
199
210
  }
200
- async resolveLanguageModels(vendors, silent) {
201
- if (typeof vendors === 'string') {
202
- vendors = [vendors];
211
+ async _resolveLanguageModels(vendor, silent) {
212
+ await this._extensionService.activateByEvent(`onLanguageModelChatProvider:${vendor}`);
213
+ const provider = this._providers.get(vendor);
214
+ if (!provider) {
215
+ this._logService.warn(`[LM] No provider registered for vendor ${vendor}`);
216
+ return;
203
217
  }
204
- const all = ( vendors.map(
205
- vendor => this._extensionService.activateByEvent(`onLanguageModelChatProvider:${vendor}`)
206
- ));
207
- await Promise.all(all);
208
- this._clearModelCache(vendors);
209
- for (const vendor of vendors) {
210
- const provider = this._providers.get(vendor);
211
- if (!provider) {
212
- this._logService.warn(`[LM] No provider registered for vendor ${vendor}`);
213
- continue;
214
- }
218
+ return this._resolveLMSequencer.queue(vendor, async () => {
215
219
  try {
216
220
  let modelsAndIdentifiers = await provider.provideLanguageModelChatInfo({ silent }, CancellationToken.None);
217
221
  if (!silent && ( modelsAndIdentifiers.some(m => m.metadata.isUserSelectable))) {
218
222
  modelsAndIdentifiers = modelsAndIdentifiers.filter(m => m.metadata.isUserSelectable || this._modelPickerUserPreferences[m.identifier] === true);
219
223
  }
224
+ this._clearModelCache(vendor);
220
225
  for (const modelAndIdentifier of modelsAndIdentifiers) {
221
226
  if (( this._modelCache.has(modelAndIdentifier.identifier))) {
222
227
  this._logService.warn(`[LM] Model ${modelAndIdentifier.identifier} is already registered. Skipping.`);
@@ -229,16 +234,16 @@ let LanguageModelsService = class LanguageModelsService {
229
234
  catch (error) {
230
235
  this._logService.error(`[LM] Error resolving language models for vendor ${vendor}:`, error);
231
236
  }
232
- }
233
- this._onLanguageModelChange.fire();
237
+ this._onLanguageModelChange.fire();
238
+ });
234
239
  }
235
240
  async selectLanguageModels(selector, allowPromptingUser) {
236
241
  if (selector.vendor) {
237
- await this.resolveLanguageModels([selector.vendor], !allowPromptingUser);
242
+ await this._resolveLanguageModels(selector.vendor, !allowPromptingUser);
238
243
  }
239
244
  else {
240
245
  const allVendors = Array.from(( this._vendors.keys()));
241
- await this.resolveLanguageModels(allVendors, !allowPromptingUser);
246
+ await Promise.all(( allVendors.map(vendor => this._resolveLanguageModels(vendor, !allowPromptingUser))));
242
247
  }
243
248
  const result = [];
244
249
  for (const [internalModelIdentifier, model] of this._modelCache) {
@@ -261,13 +266,15 @@ let LanguageModelsService = class LanguageModelsService {
261
266
  throw ( new Error(`Chat model provider for vendor ${vendor} is already registered.`));
262
267
  }
263
268
  this._providers.set(vendor, provider);
264
- this.resolveLanguageModels(vendor, true).then(() => {
265
- this._onLanguageModelChange.fire();
269
+ this._resolveLanguageModels(vendor, true);
270
+ const modelChangeListener = provider.onDidChange(async () => {
271
+ await this._resolveLanguageModels(vendor, true);
266
272
  });
267
273
  return toDisposable(() => {
268
274
  this._logService.trace('[LM] UNregistered language model provider', vendor);
269
275
  this._clearModelCache(vendor);
270
276
  this._providers.delete(vendor);
277
+ modelChangeListener.dispose();
271
278
  });
272
279
  }
273
280
  async sendChatRequest(modelId, from, messages, options, token) {
@@ -293,7 +300,8 @@ LanguageModelsService = ( __decorate([
293
300
  ( __param(0, IExtensionService)),
294
301
  ( __param(1, ILogService)),
295
302
  ( __param(2, IStorageService)),
296
- ( __param(3, IContextKeyService))
303
+ ( __param(3, IContextKeyService)),
304
+ ( __param(4, IChatEntitlementService))
297
305
  ], LanguageModelsService));
298
306
 
299
307
  export { ChatImageMimeType, ChatMessageRole, ILanguageModelChatMetadata, ImageDetailLevel, LanguageModelPartAudience, LanguageModelsService, languageModelChatProviderExtensionPoint };
@@ -1,6 +1,6 @@
1
1
 
2
2
  import { localize } from '../../../../../nls.js';
3
3
 
4
- const DEFAULT_MODEL_PICKER_CATEGORY = { label: ( localize(5563, "Other Models")), order: Number.MAX_SAFE_INTEGER };
4
+ const DEFAULT_MODEL_PICKER_CATEGORY = { label: ( localize(5619, "Other Models")), order: Number.MAX_SAFE_INTEGER };
5
5
 
6
6
  export { DEFAULT_MODEL_PICKER_CATEGORY };
@@ -3,8 +3,10 @@ import { Event } from "../../../../../../base/common/event.js";
3
3
  import { IDisposable } from "../../../../../../base/common/lifecycle.js";
4
4
  import { URI } from "../../../../../../base/common/uri.js";
5
5
  import { ITextModel } from "../../../../../../editor/common/model.js";
6
+ import { IExtensionDescription } from "../../../../../../platform/extensions/common/extensions.js";
6
7
  import { PromptsType } from "@codingame/monaco-vscode-e28ac690-06d5-5ee9-92d1-02df70296354-common/vscode/vs/workbench/contrib/chat/common/promptSyntax/promptTypes";
7
- import { TSharedPrompt, IPromptPath, IChatPromptSlashCommand, IPromptParserResult, ICustomChatMode } from "./promptsService.js";
8
+ import { ParsedPromptFile } from "@codingame/monaco-vscode-chat-service-override/vscode/vs/workbench/contrib/chat/common/promptSyntax/service/newPromptsParser";
9
+ import { IPromptPath, PromptsStorage, IChatPromptSlashCommand, ICustomChatMode } from "@codingame/monaco-vscode-chat-service-override/vscode/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService";
8
10
  /**
9
11
  * Provides prompt services.
10
12
  */
@@ -15,17 +17,19 @@ export declare const IPromptsService: import("../../../../../../platform/instant
15
17
  export interface IPromptsService extends IDisposable {
16
18
  readonly _serviceBrand: undefined;
17
19
  /**
18
- * Get a prompt syntax parser for the provided text model.
19
- * See {@link TextModelPromptParser} for more info on the parser API.
20
+ * The parsed prompt file for the provided text model.
21
+ * @param textModel Returns the parsed prompt file.
20
22
  */
21
- getSyntaxParserFor(model: ITextModel): TSharedPrompt & {
22
- isDisposed: false;
23
- };
23
+ getParsedPromptFile(textModel: ITextModel): ParsedPromptFile;
24
24
  /**
25
25
  * List all available prompt files.
26
26
  */
27
27
  listPromptFiles(type: PromptsType, token: CancellationToken): Promise<readonly IPromptPath[]>;
28
28
  /**
29
+ * List all available prompt files.
30
+ */
31
+ listPromptFilesForStorage(type: PromptsType, storage: PromptsStorage, token: CancellationToken): Promise<readonly IPromptPath[]>;
32
+ /**
29
33
  * Get a list of prompt source folders based on the provided prompt type.
30
34
  */
31
35
  getSourceFolders(type: PromptsType): readonly IPromptPath[];
@@ -37,12 +41,16 @@ export interface IPromptsService extends IDisposable {
37
41
  /**
38
42
  * Gets the prompt file for a slash command.
39
43
  */
40
- resolvePromptSlashCommand(data: IChatPromptSlashCommand, _token: CancellationToken): Promise<IPromptParserResult | undefined>;
44
+ resolvePromptSlashCommand(data: IChatPromptSlashCommand, _token: CancellationToken): Promise<ParsedPromptFile | undefined>;
41
45
  /**
42
46
  * Returns a prompt command if the command name is valid.
43
47
  */
44
48
  findPromptSlashCommands(): Promise<IChatPromptSlashCommand[]>;
45
49
  /**
50
+ * Returns the prompt command name for the given URI.
51
+ */
52
+ getPromptCommandName(uri: URI): Promise<string>;
53
+ /**
46
54
  * Event that is triggered when the list of custom chat modes changes.
47
55
  */
48
56
  readonly onDidChangeCustomChatModes: Event<void>;
@@ -54,10 +62,17 @@ export interface IPromptsService extends IDisposable {
54
62
  * Parses the provided URI
55
63
  * @param uris
56
64
  */
57
- parse(uri: URI, type: PromptsType, token: CancellationToken): Promise<IPromptParserResult>;
65
+ parseNew(uri: URI, token: CancellationToken): Promise<ParsedPromptFile>;
58
66
  /**
59
67
  * Returns the prompt file type for the given URI.
60
68
  * @param resource the URI of the resource
61
69
  */
62
70
  getPromptFileType(resource: URI): PromptsType | undefined;
71
+ /**
72
+ * Internal: register a contributed file. Returns a disposable that removes the contribution.
73
+ * Not intended for extension authors; used by contribution point handler.
74
+ */
75
+ registerContributedFile(type: PromptsType, name: string, description: string, uri: URI, extension: IExtensionDescription): IDisposable;
76
+ getPromptLocationLabel(promptPath: IPromptPath): string;
77
+ findAgentMDsInWorkspace(token: CancellationToken): Promise<URI[]>;
63
78
  }
@@ -4,17 +4,18 @@ import { IToolData, IToolImpl, IToolInvocation, IToolResult, IToolInvocationPrep
4
4
  import { ILogService } from "../../../../../platform/log/common/log.service.js";
5
5
  import { ITelemetryService } from "../../../../../platform/telemetry/common/telemetry.service.js";
6
6
  import { IChatTodoListService } from "../chatTodoListService.service.js";
7
- export declare const TodoListToolSettingId = "chat.todoListTool.enabled";
8
7
  export declare const TodoListToolWriteOnlySettingId = "chat.todoListTool.writeOnly";
8
+ export declare const TodoListToolDescriptionFieldSettingId = "chat.todoListTool.descriptionField";
9
9
  export declare const ManageTodoListToolToolId = "manage_todo_list";
10
- export declare function createManageTodoListToolData(writeOnly: boolean): IToolData;
10
+ export declare function createManageTodoListToolData(writeOnly: boolean, includeDescription?: boolean): IToolData;
11
11
  export declare const ManageTodoListToolData: IToolData;
12
12
  export declare class ManageTodoListTool extends Disposable implements IToolImpl {
13
13
  private readonly writeOnly;
14
+ private readonly includeDescription;
14
15
  private readonly chatTodoListService;
15
16
  private readonly logService;
16
17
  private readonly telemetryService;
17
- constructor(writeOnly: boolean, chatTodoListService: IChatTodoListService, logService: ILogService, telemetryService: ITelemetryService);
18
+ constructor(writeOnly: boolean, includeDescription: boolean, chatTodoListService: IChatTodoListService, logService: ILogService, telemetryService: ITelemetryService);
18
19
  invoke(invocation: IToolInvocation, _countTokens: any, _progress: any, _token: CancellationToken): Promise<IToolResult>;
19
20
  prepareToolInvocation(context: IToolInvocationPreparationContext, _token: CancellationToken): Promise<IPreparedToolInvocation | undefined>;
20
21
  private generatePastTenseMessage;
@@ -7,15 +7,13 @@ import { ToolDataSource } from '../languageModelToolsService.js';
7
7
  import { ILogService } from '../../../../../platform/log/common/log.service.js';
8
8
  import { ITelemetryService } from '../../../../../platform/telemetry/common/telemetry.service.js';
9
9
  import { IChatTodoListService } from '../chatTodoListService.service.js';
10
- import { ContextKeyExpr } from '../../../../../platform/contextkey/common/contextkey.js';
11
- import { IsSimulationContext } from '../../../../../platform/contextkey/common/contextkeys.js';
12
10
  import { localize } from '../../../../../nls.js';
13
11
  import { MarkdownString } from '../../../../../base/common/htmlContent.js';
14
12
 
15
- const TodoListToolSettingId = 'chat.todoListTool.enabled';
16
13
  const TodoListToolWriteOnlySettingId = 'chat.todoListTool.writeOnly';
14
+ const TodoListToolDescriptionFieldSettingId = 'chat.todoListTool.descriptionField';
17
15
  const ManageTodoListToolToolId = 'manage_todo_list';
18
- function createManageTodoListToolData(writeOnly) {
16
+ function createManageTodoListToolData(writeOnly, includeDescription = true) {
19
17
  const baseProperties = {
20
18
  todoList: {
21
19
  type: 'array',
@@ -33,17 +31,19 @@ function createManageTodoListToolData(writeOnly) {
33
31
  type: 'string',
34
32
  description: 'Concise action-oriented todo label (3-7 words). Displayed in UI.'
35
33
  },
36
- description: {
37
- type: 'string',
38
- description: 'Detailed context, requirements, or implementation notes. Include file paths, specific methods, or acceptance criteria.'
39
- },
34
+ ...(includeDescription && {
35
+ description: {
36
+ type: 'string',
37
+ description: 'Detailed context, requirements, or implementation notes. Include file paths, specific methods, or acceptance criteria.'
38
+ }
39
+ }),
40
40
  status: {
41
41
  type: 'string',
42
42
  enum: ['not-started', 'in-progress', 'completed'],
43
43
  description: 'not-started: Not begun | in-progress: Currently working (max 1) | completed: Fully finished with no blockers'
44
44
  },
45
45
  },
46
- required: ['id', 'title', 'description', 'status']
46
+ required: includeDescription ? ['id', 'title', 'description', 'status'] : ['id', 'title', 'status']
47
47
  }
48
48
  }
49
49
  };
@@ -59,11 +59,10 @@ function createManageTodoListToolData(writeOnly) {
59
59
  return {
60
60
  id: ManageTodoListToolToolId,
61
61
  toolReferenceName: 'todos',
62
- when: ( ContextKeyExpr.or(( ContextKeyExpr.equals(`config.${TodoListToolSettingId}`, true)), IsSimulationContext)),
63
62
  canBeReferencedInPrompt: true,
64
63
  icon: ThemeIcon.fromId(Codicon.checklist.id),
65
- displayName: ( localize(5642, 'Manage and track todo items for task planning')),
66
- userDescription: ( localize(5643, 'Tool for managing and tracking todo items for task planning')),
64
+ displayName: ( localize(5711, 'Manage and track todo items for task planning')),
65
+ userDescription: ( localize(5712, 'Tool for managing and tracking todo items for task planning')),
67
66
  modelDescription: 'Manage a structured todo list to track progress and plan tasks throughout your coding session. Use this tool VERY frequently to ensure task visibility and proper planning.\n\nWhen to use this tool:\n- Complex multi-step work requiring planning and tracking\n- When user provides multiple tasks or requests (numbered/comma-separated)\n- After receiving new instructions that require multiple steps\n- BEFORE starting work on any todo (mark as in-progress)\n- IMMEDIATELY after completing each todo (mark completed individually)\n- When breaking down larger tasks into smaller actionable steps\n- To give users visibility into your progress and planning\n\nWhen NOT to use:\n- Single, trivial tasks that can be completed in one step\n- Purely conversational/informational requests\n- When just reading files or performing simple searches\n\nCRITICAL workflow:\n1. Plan tasks by writing todo list with specific, actionable items\n2. Mark ONE todo as in-progress before starting work\n3. Complete the work for that specific todo\n4. Mark that todo as completed IMMEDIATELY\n5. Move to next todo and repeat\n\nTodo states:\n- not-started: Todo not yet begun\n- in-progress: Currently working (limit ONE at a time)\n- completed: Finished successfully\n\nIMPORTANT: Mark todos completed as soon as they are done. Do not batch completions.',
68
67
  source: ToolDataSource.Internal,
69
68
  inputSchema: {
@@ -75,9 +74,10 @@ function createManageTodoListToolData(writeOnly) {
75
74
  }
76
75
  createManageTodoListToolData(false);
77
76
  let ManageTodoListTool = class ManageTodoListTool extends Disposable {
78
- constructor(writeOnly, chatTodoListService, logService, telemetryService) {
77
+ constructor(writeOnly, includeDescription, chatTodoListService, logService, telemetryService) {
79
78
  super();
80
79
  this.writeOnly = writeOnly;
80
+ this.includeDescription = includeDescription;
81
81
  this.chatTodoListService = chatTodoListService;
82
82
  this.logService = logService;
83
83
  this.telemetryService = telemetryService;
@@ -137,7 +137,7 @@ let ManageTodoListTool = class ManageTodoListTool extends Disposable {
137
137
  break;
138
138
  }
139
139
  case 'read': {
140
- message = ( localize(5644, "Read todo list"));
140
+ message = ( localize(5713, "Read todo list"));
141
141
  break;
142
142
  }
143
143
  }
@@ -145,11 +145,11 @@ let ManageTodoListTool = class ManageTodoListTool extends Disposable {
145
145
  const todoList = ( items.map(todo => ({
146
146
  id: ( todo.id.toString()),
147
147
  title: todo.title,
148
- description: todo.description,
148
+ description: todo.description || '',
149
149
  status: todo.status
150
150
  })));
151
151
  return {
152
- pastTenseMessage: ( new MarkdownString(message ?? ( localize(5645, "Updated todo list")))),
152
+ pastTenseMessage: ( new MarkdownString(message ?? ( localize(5714, "Updated todo list")))),
153
153
  toolSpecificData: {
154
154
  kind: 'todoList',
155
155
  sessionId: chatSessionId,
@@ -160,8 +160,8 @@ let ManageTodoListTool = class ManageTodoListTool extends Disposable {
160
160
  generatePastTenseMessage(currentTodos, newTodos) {
161
161
  if (currentTodos.length === 0) {
162
162
  return newTodos.length === 1
163
- ? ( localize(5646, "Created 1 todo"))
164
- : ( localize(5647, "Created {0} todos", newTodos.length));
163
+ ? ( localize(5715, "Created 1 todo"))
164
+ : ( localize(5716, "Created {0} todos", newTodos.length));
165
165
  }
166
166
  const currentTodoMap = ( new Map(( currentTodos.map(todo => [todo.id, todo]))));
167
167
  const startedTodos = newTodos.filter(newTodo => {
@@ -173,7 +173,7 @@ let ManageTodoListTool = class ManageTodoListTool extends Disposable {
173
173
  const totalTodos = newTodos.length;
174
174
  const currentPosition = newTodos.findIndex(todo => todo.id === startedTodo.id) + 1;
175
175
  return localize(
176
- 5648,
176
+ 5717,
177
177
  "Starting ({0}/{1}) *{2}*",
178
178
  currentPosition,
179
179
  totalTodos,
@@ -189,7 +189,7 @@ let ManageTodoListTool = class ManageTodoListTool extends Disposable {
189
189
  const totalTodos = newTodos.length;
190
190
  const currentPosition = newTodos.findIndex(todo => todo.id === completedTodo.id) + 1;
191
191
  return localize(
192
- 5649,
192
+ 5718,
193
193
  "Completed ({0}/{1}) *{2}*",
194
194
  currentPosition,
195
195
  totalTodos,
@@ -199,10 +199,10 @@ let ManageTodoListTool = class ManageTodoListTool extends Disposable {
199
199
  const addedTodos = newTodos.filter(newTodo => !( currentTodoMap.has(newTodo.id)));
200
200
  if (addedTodos.length > 0) {
201
201
  return addedTodos.length === 1
202
- ? ( localize(5650, "Added 1 todo"))
203
- : ( localize(5651, "Added {0} todos", addedTodos.length));
202
+ ? ( localize(5719, "Added 1 todo"))
203
+ : ( localize(5720, "Added {0} todos", addedTodos.length));
204
204
  }
205
- return localize(5652, "Updated todo list");
205
+ return localize(5721, "Updated todo list");
206
206
  }
207
207
  handleRead(todoItems, sessionId) {
208
208
  if (todoItems.length === 0) {
@@ -241,7 +241,7 @@ let ManageTodoListTool = class ManageTodoListTool extends Disposable {
241
241
  const todoList = ( args.todoList.map((parsedTodo) => ({
242
242
  id: parsedTodo.id,
243
243
  title: parsedTodo.title,
244
- description: parsedTodo.description,
244
+ description: parsedTodo.description || '',
245
245
  status: parsedTodo.status
246
246
  })));
247
247
  const existingTodos = this.chatTodoListService.getTodos(chatSessionId);
@@ -297,7 +297,7 @@ let ManageTodoListTool = class ManageTodoListTool extends Disposable {
297
297
  break;
298
298
  }
299
299
  const lines = [`- ${checkbox} ${todo.title}`];
300
- if (todo.description && todo.description.trim()) {
300
+ if (this.includeDescription && todo.description && todo.description.trim()) {
301
301
  lines.push(` - ${todo.description.trim()}`);
302
302
  }
303
303
  return lines.join('\n');
@@ -320,9 +320,9 @@ let ManageTodoListTool = class ManageTodoListTool extends Disposable {
320
320
  }
321
321
  };
322
322
  ManageTodoListTool = ( __decorate([
323
- ( __param(1, IChatTodoListService)),
324
- ( __param(2, ILogService)),
325
- ( __param(3, ITelemetryService))
323
+ ( __param(2, IChatTodoListService)),
324
+ ( __param(3, ILogService)),
325
+ ( __param(4, ITelemetryService))
326
326
  ], ManageTodoListTool));
327
327
 
328
- export { ManageTodoListTool, ManageTodoListToolToolId, TodoListToolSettingId, TodoListToolWriteOnlySettingId, createManageTodoListToolData };
328
+ export { ManageTodoListTool, ManageTodoListToolToolId, TodoListToolDescriptionFieldSettingId, TodoListToolWriteOnlySettingId, createManageTodoListToolData };
@@ -6,7 +6,7 @@ import { IInstantiationService } from '../../../../../platform/instantiation/com
6
6
  import { ILanguageModelToolsService } from '../languageModelToolsService.service.js';
7
7
  import { ConfirmationTool, ConfirmationToolData } from './confirmationTool.js';
8
8
  import { EditTool, EditToolData } from './editFileTool.js';
9
- import { TodoListToolWriteOnlySettingId, createManageTodoListToolData, ManageTodoListTool } from './manageTodoListTool.js';
9
+ import { TodoListToolWriteOnlySettingId, TodoListToolDescriptionFieldSettingId, createManageTodoListToolData, ManageTodoListTool } from './manageTodoListTool.js';
10
10
 
11
11
  let BuiltinToolsContribution = class BuiltinToolsContribution extends Disposable {
12
12
  static { this.ID = 'chat.builtinTools'; }
@@ -16,8 +16,9 @@ let BuiltinToolsContribution = class BuiltinToolsContribution extends Disposable
16
16
  const editTool = instantiationService.createInstance(EditTool);
17
17
  this._register(toolsService.registerTool(EditToolData, editTool));
18
18
  const writeOnlyMode = this.configurationService.getValue(TodoListToolWriteOnlySettingId) === true;
19
- const todoToolData = createManageTodoListToolData(writeOnlyMode);
20
- const manageTodoListTool = instantiationService.createInstance(ManageTodoListTool, writeOnlyMode);
19
+ const includeDescription = this.configurationService.getValue(TodoListToolDescriptionFieldSettingId) !== false;
20
+ const todoToolData = createManageTodoListToolData(writeOnlyMode, includeDescription);
21
+ const manageTodoListTool = this._register(instantiationService.createInstance(ManageTodoListTool, writeOnlyMode, includeDescription));
21
22
  this._register(toolsService.registerTool(todoToolData, manageTodoListTool));
22
23
  const confirmationTool = instantiationService.createInstance(ConfirmationTool);
23
24
  this._register(toolsService.registerTool(ConfirmationToolData, confirmationTool));
@@ -18,17 +18,17 @@ const createCodeActionsAutoSave = (description) => {
18
18
  enum: ['always', 'explicit', 'never', true, false],
19
19
  enumDescriptions: [
20
20
  ( localize(
21
- 5654,
21
+ 5723,
22
22
  'Triggers Code Actions on explicit saves and auto saves triggered by window or focus changes.'
23
23
  )),
24
- ( localize(5655, 'Triggers Code Actions only when explicitly saved')),
25
- ( localize(5656, 'Never triggers Code Actions on save')),
24
+ ( localize(5724, 'Triggers Code Actions only when explicitly saved')),
25
+ ( localize(5725, 'Never triggers Code Actions on save')),
26
26
  ( localize(
27
- 5657,
27
+ 5726,
28
28
  'Triggers Code Actions only when explicitly saved. This value will be deprecated in favor of "explicit".'
29
29
  )),
30
30
  ( localize(
31
- 5658,
31
+ 5727,
32
32
  'Never triggers Code Actions on save. This value will be deprecated in favor of "never".'
33
33
  ))
34
34
  ],
@@ -41,14 +41,14 @@ const createNotebookCodeActionsAutoSave = (description) => {
41
41
  type: ['string', 'boolean'],
42
42
  enum: ['explicit', 'never', true, false],
43
43
  enumDescriptions: [
44
- ( localize(5659, 'Triggers Code Actions only when explicitly saved.')),
45
- ( localize(5660, 'Never triggers Code Actions on save.')),
44
+ ( localize(5728, 'Triggers Code Actions only when explicitly saved.')),
45
+ ( localize(5729, 'Never triggers Code Actions on save.')),
46
46
  ( localize(
47
- 5661,
47
+ 5730,
48
48
  'Triggers Code Actions only when explicitly saved. This value will be deprecated in favor of "explicit".'
49
49
  )),
50
50
  ( localize(
51
- 5662,
51
+ 5731,
52
52
  'Triggers Code Actions only when explicitly saved. This value will be deprecated in favor of "never".'
53
53
  ))
54
54
  ],
@@ -70,7 +70,7 @@ const codeActionsOnSaveSchema = {
70
70
  }
71
71
  ],
72
72
  markdownDescription: ( localize(
73
- 5663,
73
+ 5732,
74
74
  'Run Code Actions for the editor on save. Code Actions must be specified and the editor must not be shutting down. When {0} is set to `afterDelay`, Code Actions will only be run when the file is saved explicitly. Example: `"source.organizeImports": "explicit" `',
75
75
  '`#files.autoSave#`'
76
76
  )),
@@ -102,7 +102,7 @@ const notebookCodeActionsOnSaveSchema = {
102
102
  }
103
103
  ],
104
104
  markdownDescription: ( localize(
105
- 5664,
105
+ 5733,
106
106
  'Run a series of Code Actions for a notebook on save. Code Actions must be specified and the editor must not be shutting down. When {0} is set to `afterDelay`, Code Actions will only be run when the file is saved explicitly. Example: `"notebook.source.organizeImports": "explicit"`',
107
107
  '`#files.autoSave#`'
108
108
  )),
@@ -150,12 +150,12 @@ let CodeActionsContribution = class CodeActionsContribution extends Disposable {
150
150
  for (const codeActionKind of allProvidedKinds) {
151
151
  if (CodeActionKind.Source.contains(codeActionKind) && !properties[codeActionKind.value]) {
152
152
  properties[codeActionKind.value] = createCodeActionsAutoSave(( localize(
153
- 5665,
153
+ 5734,
154
154
  "Controls whether '{0}' actions should be run on file save.",
155
155
  codeActionKind.value
156
156
  )));
157
157
  notebookProperties[codeActionKind.value] = createNotebookCodeActionsAutoSave(( localize(
158
- 5665,
158
+ 5734,
159
159
  "Controls whether '{0}' actions should be run on file save.",
160
160
  codeActionKind.value
161
161
  )));
@@ -32,12 +32,12 @@ import { isWindows } from '../../../../../base/common/platform.js';
32
32
  var EditorDictation_1;
33
33
  registerCss(editorDictation);
34
34
  const EDITOR_DICTATION_IN_PROGRESS = ( new RawContextKey('editorDictation.inProgress', false));
35
- const VOICE_CATEGORY = ( localize2(5668, "Voice"));
35
+ const VOICE_CATEGORY = ( localize2(5737, "Voice"));
36
36
  class EditorDictationStartAction extends EditorAction2 {
37
37
  constructor() {
38
38
  super({
39
39
  id: 'workbench.action.editorDictation.start',
40
- title: ( localize2(5669, "Start Dictation in Editor")),
40
+ title: ( localize2(5738, "Start Dictation in Editor")),
41
41
  category: VOICE_CATEGORY,
42
42
  precondition: ( ContextKeyExpr.and(HasSpeechProvider, ( SpeechToTextInProgress.toNegated()), (
43
43
  EditorContextKeys.readOnly.toNegated()))),
@@ -74,7 +74,7 @@ class EditorDictationStopAction extends EditorAction2 {
74
74
  constructor() {
75
75
  super({
76
76
  id: EditorDictationStopAction.ID,
77
- title: ( localize2(5670, "Stop Dictation in Editor")),
77
+ title: ( localize2(5739, "Stop Dictation in Editor")),
78
78
  category: VOICE_CATEGORY,
79
79
  precondition: EDITOR_DICTATION_IN_PROGRESS,
80
80
  f1: true,
@@ -99,7 +99,7 @@ class DictationWidget extends Disposable {
99
99
  const stopActionKeybinding = keybindingService.lookupKeybinding(EditorDictationStopAction.ID)?.getLabel();
100
100
  actionBar.push(toAction({
101
101
  id: EditorDictationStopAction.ID,
102
- label: stopActionKeybinding ? ( localize(5671, "Stop Dictation ({0})", stopActionKeybinding)) : ( localize(5672, "Stop Dictation")),
102
+ label: stopActionKeybinding ? ( localize(5740, "Stop Dictation ({0})", stopActionKeybinding)) : ( localize(5741, "Stop Dictation")),
103
103
  class: ThemeIcon.asClassName(Codicon.micFilled),
104
104
  run: () => EditorDictation.get(editor)?.stop()
105
105
  }), { icon: true, label: false, keybinding: stopActionKeybinding });