@codingame/monaco-vscode-api 31.0.1 → 32.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (928) hide show
  1. package/external/@vscode/tree-sitter-wasm/wasm/tree-sitter.js +14 -14
  2. package/external/vscode-semver/semver.js +43 -43
  3. package/external/vscode-textmate/release/main.js +1 -1
  4. package/missing-services.js +143 -47
  5. package/package.json +9 -9
  6. package/services.js +3 -3
  7. package/vscode/product.json.js +1 -1
  8. package/vscode/src/vs/base/browser/animatedValue.d.ts +49 -0
  9. package/vscode/src/vs/{editor/contrib/inlineCompletions/browser/model/animation.js → base/browser/animatedValue.js} +32 -23
  10. package/vscode/src/vs/base/browser/dom.d.ts +42 -2
  11. package/vscode/src/vs/base/browser/dom.js +28 -3
  12. package/vscode/src/vs/base/browser/mouseEvent.js +2 -8
  13. package/vscode/src/vs/base/browser/overlayLayoutElement.d.ts +9 -6
  14. package/vscode/src/vs/base/browser/overlayLayoutElement.js +55 -90
  15. package/vscode/src/vs/base/browser/ui/actionbar/actionbar.d.ts +3 -2
  16. package/vscode/src/vs/base/browser/ui/actionbar/actionbar.js +11 -20
  17. package/vscode/src/vs/base/browser/ui/button/button.d.ts +7 -0
  18. package/vscode/src/vs/base/browser/ui/button/button.js +15 -0
  19. package/vscode/src/vs/base/browser/ui/codicons/codicon/codicon.ttf +0 -0
  20. package/vscode/src/vs/base/browser/ui/findinput/replaceInput.d.ts +0 -1
  21. package/vscode/src/vs/base/browser/ui/findinput/replaceInput.js +0 -3
  22. package/vscode/src/vs/base/browser/ui/toolbar/toolbar.js +1 -1
  23. package/vscode/src/vs/base/common/async.d.ts +2 -0
  24. package/vscode/src/vs/base/common/async.js +8 -2
  25. package/vscode/src/vs/base/common/codicons.d.ts +1 -0
  26. package/vscode/src/vs/base/common/codiconsLibrary.d.ts +3 -0
  27. package/vscode/src/vs/base/common/codiconsLibrary.js +3 -0
  28. package/vscode/src/vs/base/common/event.d.ts +9 -3
  29. package/vscode/src/vs/base/common/event.js +12 -7
  30. package/vscode/src/vs/base/common/filters.js +31 -6
  31. package/vscode/src/vs/base/common/htmlContent.d.ts +9 -0
  32. package/vscode/src/vs/base/common/network.js +2 -2
  33. package/vscode/src/vs/base/common/objects.d.ts +13 -0
  34. package/vscode/src/vs/base/common/objects.js +33 -1
  35. package/vscode/src/vs/base/common/observableInternal/index.d.ts +2 -2
  36. package/vscode/src/vs/base/common/observableInternal/reactions/autorun.d.ts +26 -0
  37. package/vscode/src/vs/base/common/observableInternal/reactions/autorun.js +24 -1
  38. package/vscode/src/vs/base/common/observableInternal/utils/promise.d.ts +13 -0
  39. package/vscode/src/vs/base/common/observableInternal/utils/promise.js +23 -1
  40. package/vscode/src/vs/base/common/platform.d.ts +0 -1
  41. package/vscode/src/vs/base/common/policy.d.ts +12 -1
  42. package/vscode/src/vs/base/common/product.d.ts +8 -6
  43. package/vscode/src/vs/base/common/resources.js +2 -2
  44. package/vscode/src/vs/base/common/yaml.d.ts +24 -0
  45. package/vscode/src/vs/base/common/yaml.js +6 -1
  46. package/vscode/src/vs/base/parts/ipc/common/ipc.net.d.ts +14 -1
  47. package/vscode/src/vs/base/parts/ipc/common/ipc.net.js +29 -1
  48. package/vscode/src/vs/base/parts/storage/common/storage.d.ts +13 -0
  49. package/vscode/src/vs/base/parts/storage/common/storage.js +48 -2
  50. package/vscode/src/vs/editor/browser/config/elementSizeObserver.js +1 -1
  51. package/vscode/src/vs/editor/browser/controller/mouseHandler.d.ts +0 -1
  52. package/vscode/src/vs/editor/browser/controller/mouseHandler.js +0 -3
  53. package/vscode/src/vs/editor/browser/editorDom.d.ts +6 -3
  54. package/vscode/src/vs/editor/browser/editorDom.js +9 -2
  55. package/vscode/src/vs/editor/browser/observableCodeEditor.js +1 -1
  56. package/vscode/src/vs/editor/browser/services/editorWorkerService.d.ts +0 -1
  57. package/vscode/src/vs/editor/browser/services/editorWorkerService.js +0 -3
  58. package/vscode/src/vs/editor/browser/services/inlineCompletionsService.d.ts +1 -0
  59. package/vscode/src/vs/editor/browser/services/inlineCompletionsService.js +56 -9
  60. package/vscode/src/vs/editor/browser/viewParts/blockDecorations/blockDecorations.d.ts +0 -1
  61. package/vscode/src/vs/editor/browser/viewParts/blockDecorations/blockDecorations.js +0 -3
  62. package/vscode/src/vs/editor/browser/viewParts/editorScrollbar/editorScrollbar.d.ts +0 -1
  63. package/vscode/src/vs/editor/browser/viewParts/editorScrollbar/editorScrollbar.js +0 -3
  64. package/vscode/src/vs/editor/browser/viewParts/margin/margin.d.ts +0 -1
  65. package/vscode/src/vs/editor/browser/viewParts/margin/margin.js +0 -3
  66. package/vscode/src/vs/editor/browser/viewParts/rulers/rulers.d.ts +0 -1
  67. package/vscode/src/vs/editor/browser/viewParts/rulers/rulers.js +0 -3
  68. package/vscode/src/vs/editor/browser/viewParts/scrollDecoration/scrollDecoration.d.ts +0 -1
  69. package/vscode/src/vs/editor/browser/viewParts/scrollDecoration/scrollDecoration.js +0 -3
  70. package/vscode/src/vs/editor/browser/widget/codeEditor/codeEditorWidget.js +2 -2
  71. package/vscode/src/vs/editor/browser/widget/diffEditor/commands.js +12 -12
  72. package/vscode/src/vs/editor/browser/widget/diffEditor/components/accessibleDiffViewer.js +12 -12
  73. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorEditors.js +1 -1
  74. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/inlineDiffDeletedCodeMargin.js +4 -4
  75. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditor.contribution.js +5 -5
  76. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorViewModel.js +12 -6
  77. package/vscode/src/vs/editor/browser/widget/diffEditor/features/hideUnchangedRegionsFeature.js +7 -7
  78. package/vscode/src/vs/editor/browser/widget/diffEditor/features/movedBlocksLinesFeature.js +4 -4
  79. package/vscode/src/vs/editor/browser/widget/diffEditor/features/revertButtonsFeature.js +1 -1
  80. package/vscode/src/vs/editor/browser/widget/diffEditor/registrations.contribution.js +5 -5
  81. package/vscode/src/vs/editor/browser/widget/diffEditor/utils/editorGutter.js +1 -1
  82. package/vscode/src/vs/editor/browser/widget/diffEditor/utils.js +5 -1
  83. package/vscode/src/vs/editor/browser/widget/multiDiffEditor/colors.js +3 -3
  84. package/vscode/src/vs/editor/browser/widget/multiDiffEditor/diffEditorItemTemplate.js +1 -1
  85. package/vscode/src/vs/editor/browser/widget/multiDiffEditor/multiDiffEditorViewModel.d.ts +5 -3
  86. package/vscode/src/vs/editor/browser/widget/multiDiffEditor/multiDiffEditorViewModel.js +41 -13
  87. package/vscode/src/vs/editor/browser/widget/multiDiffEditor/multiDiffEditorWidgetImpl.js +1 -1
  88. package/vscode/src/vs/editor/common/config/editorConfigurationSchema.js +73 -55
  89. package/vscode/src/vs/editor/common/config/editorOptions.js +371 -370
  90. package/vscode/src/vs/editor/common/core/editorColorRegistry.js +72 -72
  91. package/vscode/src/vs/editor/common/editorContextKeys.js +49 -49
  92. package/vscode/src/vs/editor/common/languages/modesRegistry.js +1 -1
  93. package/vscode/src/vs/editor/common/languages.js +56 -56
  94. package/vscode/src/vs/editor/common/model/editStack.js +1 -1
  95. package/vscode/src/vs/editor/common/services/languageService.js +2 -1
  96. package/vscode/src/vs/editor/common/standaloneStrings.js +50 -50
  97. package/vscode/src/vs/editor/common/viewLayout/viewLayout.d.ts +0 -1
  98. package/vscode/src/vs/editor/common/viewLayout/viewLayout.js +0 -3
  99. package/vscode/src/vs/editor/common/viewLayout/viewLineRenderer.js +2 -2
  100. package/vscode/src/vs/editor/contrib/anchorSelect/browser/anchorSelect.js +6 -6
  101. package/vscode/src/vs/editor/contrib/bracketMatching/browser/bracketMatching.js +6 -6
  102. package/vscode/src/vs/editor/contrib/caretOperations/browser/caretOperations.js +2 -2
  103. package/vscode/src/vs/editor/contrib/caretOperations/browser/transpose.js +1 -1
  104. package/vscode/src/vs/editor/contrib/clipboard/browser/clipboard.js +17 -17
  105. package/vscode/src/vs/editor/contrib/codeAction/browser/codeAction.js +1 -1
  106. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionCommands.js +18 -18
  107. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionContributions.js +3 -3
  108. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionController.js +3 -3
  109. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionMenu.js +8 -8
  110. package/vscode/src/vs/editor/contrib/codeAction/browser/lightBulbWidget.js +9 -9
  111. package/vscode/src/vs/editor/contrib/codelens/browser/codelensController.js +2 -2
  112. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerParts/colorPickerCloseButton.js +1 -1
  113. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerParts/colorPickerHeader.js +1 -1
  114. package/vscode/src/vs/editor/contrib/colorPicker/browser/hoverColorPicker/hoverColorPickerParticipant.js +1 -1
  115. package/vscode/src/vs/editor/contrib/colorPicker/browser/standaloneColorPicker/standaloneColorPickerActions.js +7 -7
  116. package/vscode/src/vs/editor/contrib/comment/browser/comment.js +6 -6
  117. package/vscode/src/vs/editor/contrib/contextmenu/browser/contextmenu.js +13 -13
  118. package/vscode/src/vs/editor/contrib/cursorUndo/browser/cursorUndo.js +2 -2
  119. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/copyPasteContribution.js +4 -4
  120. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/copyPasteController.js +9 -9
  121. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/defaultProviders.js +5 -5
  122. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/dropIntoEditorController.js +3 -3
  123. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/postEditWidget.js +2 -2
  124. package/vscode/src/vs/editor/contrib/editorState/browser/keybindingCancellation.js +1 -1
  125. package/vscode/src/vs/editor/contrib/find/browser/findController.js +17 -17
  126. package/vscode/src/vs/editor/contrib/find/browser/findWidget.js +28 -28
  127. package/vscode/src/vs/editor/contrib/folding/browser/folding.js +20 -20
  128. package/vscode/src/vs/editor/contrib/folding/browser/foldingDecorations.js +9 -9
  129. package/vscode/src/vs/editor/contrib/fontZoom/browser/fontZoom.js +3 -3
  130. package/vscode/src/vs/editor/contrib/format/browser/formatActions.js +2 -2
  131. package/vscode/src/vs/editor/contrib/gotoError/browser/gotoError.js +8 -8
  132. package/vscode/src/vs/editor/contrib/gotoError/browser/gotoErrorWidget.js +13 -13
  133. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/goToCommands.js +33 -33
  134. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/link/goToDefinitionAtPosition.js +1 -1
  135. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/peek/referencesController.js +3 -3
  136. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/peek/referencesTree.js +3 -3
  137. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/peek/referencesWidget.js +3 -3
  138. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/referencesModel.js +8 -8
  139. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/symbolNavigation.js +3 -3
  140. package/vscode/src/vs/editor/contrib/gpu/browser/gpuActions.js +4 -4
  141. package/vscode/src/vs/editor/contrib/hover/browser/contentHoverRendered.js +3 -3
  142. package/vscode/src/vs/editor/contrib/hover/browser/hoverAccessibleViews.js +2 -2
  143. package/vscode/src/vs/editor/contrib/hover/browser/hoverActionIds.js +2 -2
  144. package/vscode/src/vs/editor/contrib/hover/browser/hoverActions.js +22 -22
  145. package/vscode/src/vs/editor/contrib/hover/browser/hoverCopyButton.js +2 -2
  146. package/vscode/src/vs/editor/contrib/hover/browser/markdownHoverParticipant.js +7 -7
  147. package/vscode/src/vs/editor/contrib/hover/browser/markerHoverParticipant.js +5 -5
  148. package/vscode/src/vs/editor/contrib/inPlaceReplace/browser/inPlaceReplace.js +2 -2
  149. package/vscode/src/vs/editor/contrib/indentation/browser/indentation.js +18 -18
  150. package/vscode/src/vs/editor/contrib/inlayHints/browser/inlayHintsHover.js +5 -5
  151. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/controller/commands.js +21 -21
  152. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/controller/inlineCompletionContextKeys.js +13 -13
  153. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/controller/inlineCompletionsController.js +1 -1
  154. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/hintsWidget/hoverParticipant.js +2 -2
  155. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/hintsWidget/inlineCompletionsHintsWidget.js +4 -4
  156. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/inlineCompletionsModel.js +3 -4
  157. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/renameSymbolProcessor.js +2 -2
  158. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/components/gutterIndicatorMenu.js +6 -6
  159. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/components/gutterIndicatorView.js +2 -2
  160. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsWordReplacementView.js +9 -3
  161. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/theme.js +20 -20
  162. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/utils/utils.js +1 -1
  163. package/vscode/src/vs/editor/contrib/insertFinalNewLine/browser/insertFinalNewLine.js +1 -1
  164. package/vscode/src/vs/editor/contrib/lineSelection/browser/lineSelection.js +1 -1
  165. package/vscode/src/vs/editor/contrib/linesOperations/browser/linesOperations.js +31 -31
  166. package/vscode/src/vs/editor/contrib/linkedEditing/browser/linkedEditing.js +2 -2
  167. package/vscode/src/vs/editor/contrib/links/browser/links.js +6 -6
  168. package/vscode/src/vs/editor/contrib/message/browser/messageController.js +1 -1
  169. package/vscode/src/vs/editor/contrib/middleScroll/browser/middleScrollController.js +1 -1
  170. package/vscode/src/vs/editor/contrib/multicursor/browser/multicursor.js +22 -22
  171. package/vscode/src/vs/editor/contrib/parameterHints/browser/parameterHints.js +1 -1
  172. package/vscode/src/vs/editor/contrib/parameterHints/browser/parameterHintsWidget.js +4 -4
  173. package/vscode/src/vs/editor/contrib/peekView/browser/peekView.js +18 -18
  174. package/vscode/src/vs/editor/contrib/placeholderText/browser/placeholderText.contribution.js +1 -1
  175. package/vscode/src/vs/editor/contrib/quickAccess/browser/editorNavigationQuickAccess.js +1 -1
  176. package/vscode/src/vs/editor/contrib/quickAccess/browser/gotoLineQuickAccess.js +11 -11
  177. package/vscode/src/vs/editor/contrib/quickAccess/browser/gotoSymbolQuickAccess.js +32 -32
  178. package/vscode/src/vs/editor/contrib/readOnlyMessage/browser/contribution.js +2 -2
  179. package/vscode/src/vs/editor/contrib/rename/browser/rename.js +11 -11
  180. package/vscode/src/vs/editor/contrib/rename/browser/renameWidget.js +6 -6
  181. package/vscode/src/vs/editor/contrib/smartSelect/browser/smartSelect.js +4 -4
  182. package/vscode/src/vs/editor/contrib/snippet/browser/snippetController2.js +4 -4
  183. package/vscode/src/vs/editor/contrib/snippet/browser/snippetParser.js +1 -1
  184. package/vscode/src/vs/editor/contrib/snippet/browser/snippetSession.d.ts +1 -0
  185. package/vscode/src/vs/editor/contrib/snippet/browser/snippetSession.js +39 -24
  186. package/vscode/src/vs/editor/contrib/snippet/browser/snippetVariables.d.ts +1 -0
  187. package/vscode/src/vs/editor/contrib/snippet/browser/snippetVariables.js +36 -24
  188. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollActions.js +11 -11
  189. package/vscode/src/vs/editor/contrib/suggest/browser/suggest.js +9 -9
  190. package/vscode/src/vs/editor/contrib/suggest/browser/suggestController.js +11 -11
  191. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidget.js +17 -17
  192. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidgetDetails.js +2 -2
  193. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidgetRenderer.js +2 -2
  194. package/vscode/src/vs/editor/contrib/suggest/browser/wordContextKey.js +1 -1
  195. package/vscode/src/vs/editor/contrib/symbolIcons/browser/symbolIcons.js +33 -33
  196. package/vscode/src/vs/editor/contrib/toggleTabFocusMode/browser/toggleTabFocusMode.js +4 -4
  197. package/vscode/src/vs/editor/contrib/tokenization/browser/tokenization.js +1 -1
  198. package/vscode/src/vs/editor/contrib/unicodeHighlighter/browser/bannerController.js +1 -1
  199. package/vscode/src/vs/editor/contrib/unicodeHighlighter/browser/unicodeHighlighter.js +24 -24
  200. package/vscode/src/vs/editor/contrib/unusualLineTerminators/browser/unusualLineTerminators.js +5 -5
  201. package/vscode/src/vs/editor/contrib/wordHighlighter/browser/highlightDecorations.js +9 -9
  202. package/vscode/src/vs/editor/contrib/wordHighlighter/browser/wordHighlighter.js +3 -3
  203. package/vscode/src/vs/editor/contrib/wordOperations/browser/wordOperations.js +3 -3
  204. package/vscode/src/vs/editor/standalone/browser/standaloneCodeEditor.d.ts +0 -2
  205. package/vscode/src/vs/editor/standalone/browser/standaloneCodeEditor.js +0 -6
  206. package/vscode/src/vs/editor/standalone/browser/standaloneServices.js +5 -0
  207. package/vscode/src/vs/platform/accessibilitySignal/browser/accessibilitySignalService.js +62 -62
  208. package/vscode/src/vs/platform/action/common/actionCommonCategories.js +6 -6
  209. package/vscode/src/vs/platform/actionWidget/browser/actionList.d.ts +52 -10
  210. package/vscode/src/vs/platform/actionWidget/browser/actionList.js +242 -90
  211. package/vscode/src/vs/platform/actionWidget/browser/actionWidget.css +97 -23
  212. package/vscode/src/vs/platform/actionWidget/browser/actionWidget.js +15 -12
  213. package/vscode/src/vs/platform/actions/browser/menuEntryActionViewItem.js +3 -3
  214. package/vscode/src/vs/platform/actions/browser/toolbar.js +2 -2
  215. package/vscode/src/vs/platform/actions/common/actions.d.ts +6 -3
  216. package/vscode/src/vs/platform/actions/common/actions.js +18 -9
  217. package/vscode/src/vs/platform/actions/common/menuResetAction.js +1 -1
  218. package/vscode/src/vs/platform/actions/common/menuService.d.ts +2 -1
  219. package/vscode/src/vs/platform/actions/common/menuService.js +6 -5
  220. package/vscode/src/vs/platform/agentHost/browser/nullAgentHostService.d.ts +21 -18
  221. package/vscode/src/vs/platform/agentHost/browser/nullAgentHostService.js +11 -0
  222. package/vscode/src/vs/platform/agentHost/browser/nullSshRemoteAgentHostService.d.ts +3 -0
  223. package/vscode/src/vs/platform/agentHost/browser/nullSshRemoteAgentHostService.js +6 -0
  224. package/vscode/src/vs/platform/agentHost/common/agentHostPermissionService.service.d.ts +47 -0
  225. package/vscode/src/vs/platform/agentHost/common/agentHostPermissionService.service.js +6 -0
  226. package/vscode/src/vs/platform/agentHost/common/agentHostUri.js +1 -1
  227. package/vscode/src/vs/platform/agentHost/common/agentPluginManager.d.ts +2 -2
  228. package/vscode/src/vs/platform/agentHost/common/agentService.service.d.ts +63 -22
  229. package/vscode/src/vs/platform/agentHost/common/remoteAgentHostService.d.ts +56 -6
  230. package/vscode/src/vs/platform/agentHost/common/remoteAgentHostService.js +49 -4
  231. package/vscode/src/vs/platform/agentHost/common/remoteAgentHostService.service.d.ts +12 -1
  232. package/vscode/src/vs/platform/agentHost/common/sshRemoteAgentHost.d.ts +2 -0
  233. package/vscode/src/vs/platform/agentHost/common/sshRemoteAgentHost.service.d.ts +21 -1
  234. package/vscode/src/vs/platform/agentHost/common/state/protocol/action-origin.generated.d.ts +14 -10
  235. package/vscode/src/vs/platform/agentHost/common/state/protocol/commands.d.ts +957 -0
  236. package/vscode/src/vs/platform/agentHost/common/state/protocol/commands.js +18 -0
  237. package/vscode/src/vs/platform/agentHost/common/state/protocol/messages.d.ts +135 -71
  238. package/vscode/src/vs/platform/agentHost/common/state/protocol/state.d.ts +1673 -0
  239. package/vscode/src/vs/platform/agentHost/common/state/protocol/state.js +126 -0
  240. package/vscode/src/vs/platform/agentHost/common/state/sessionProtocol.d.ts +40 -0
  241. package/vscode/src/vs/platform/agentHost/common/state/sessionProtocol.js +22 -0
  242. package/vscode/src/vs/platform/browserView/common/browserView.d.ts +67 -38
  243. package/vscode/src/vs/platform/browserView/common/browserView.js +57 -0
  244. package/vscode/src/vs/platform/browserView/common/browserViewTelemetry.d.ts +2 -1
  245. package/vscode/src/vs/platform/browserView/common/playwrightService.service.d.ts +24 -7
  246. package/vscode/src/vs/platform/browserView/common/playwrightService.service.js +6 -0
  247. package/vscode/src/vs/platform/configuration/common/configurationRegistry.d.ts +14 -0
  248. package/vscode/src/vs/platform/configuration/common/configurationRegistry.js +10 -10
  249. package/vscode/src/vs/platform/configuration/common/configurations.d.ts +2 -0
  250. package/vscode/src/vs/platform/configuration/common/configurations.js +8 -3
  251. package/vscode/src/vs/platform/contextkey/browser/contextKeyService.js +2 -1
  252. package/vscode/src/vs/platform/contextkey/common/contextkey.js +10 -10
  253. package/vscode/src/vs/platform/contextkey/common/contextkeys.js +9 -9
  254. package/vscode/src/vs/platform/contextkey/common/scanner.js +6 -6
  255. package/vscode/src/vs/platform/defaultAccount/common/defaultAccount.d.ts +1 -1
  256. package/vscode/src/vs/platform/defaultAccount/common/defaultAccount.service.d.ts +2 -1
  257. package/vscode/src/vs/platform/dialogs/common/dialogs.js +9 -9
  258. package/vscode/src/vs/platform/dnd/browser/dnd.js +1 -1
  259. package/vscode/src/vs/platform/editor/common/editor.d.ts +11 -0
  260. package/vscode/src/vs/platform/environment/common/argv.d.ts +4 -1
  261. package/vscode/src/vs/platform/environment/common/environment.service.d.ts +1 -0
  262. package/vscode/src/vs/platform/environment/common/environmentService.d.ts +1 -1
  263. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.js +14 -14
  264. package/vscode/src/vs/platform/extensionManagement/common/extensionNls.js +1 -1
  265. package/vscode/src/vs/platform/extensionManagement/common/extensionsScannerService.js +7 -7
  266. package/vscode/src/vs/platform/extensions/common/extensionValidator.js +21 -21
  267. package/vscode/src/vs/platform/extensions/common/extensionsApiProposals.d.ts +18 -0
  268. package/vscode/src/vs/platform/extensions/common/extensionsApiProposals.js +19 -1
  269. package/vscode/src/vs/platform/files/browser/htmlFileSystemProvider.js +2 -2
  270. package/vscode/src/vs/platform/files/common/files.js +6 -6
  271. package/vscode/src/vs/platform/history/browser/contextScopedHistoryWidget.js +1 -1
  272. package/vscode/src/vs/platform/hover/browser/hoverService.js +15 -9
  273. package/vscode/src/vs/platform/hover/browser/hoverWidget.d.ts +1 -0
  274. package/vscode/src/vs/platform/hover/browser/hoverWidget.js +21 -4
  275. package/vscode/src/vs/platform/hover/browser/updatableHoverWidget.js +1 -1
  276. package/vscode/src/vs/platform/keybinding/common/abstractKeybindingService.d.ts +0 -1
  277. package/vscode/src/vs/platform/keybinding/common/abstractKeybindingService.js +5 -8
  278. package/vscode/src/vs/platform/languagePacks/common/languagePacks.js +1 -1
  279. package/vscode/src/vs/platform/languagePacks/common/localizedStrings.js +3 -3
  280. package/vscode/src/vs/platform/list/browser/listService.js +25 -25
  281. package/vscode/src/vs/platform/log/common/log.d.ts +7 -0
  282. package/vscode/src/vs/platform/log/common/log.js +38 -17
  283. package/vscode/src/vs/platform/markers/common/markerService.js +2 -2
  284. package/vscode/src/vs/platform/markers/common/markers.js +6 -6
  285. package/vscode/src/vs/platform/mcp/common/mcpManagementService.js +1 -1
  286. package/vscode/src/vs/platform/meteredConnection/common/meteredConnection.config.contribution.js +5 -5
  287. package/vscode/src/vs/platform/native/common/native.d.ts +2 -9
  288. package/vscode/src/vs/platform/networkFilter/common/networkFilterService.service.d.ts +5 -3
  289. package/vscode/src/vs/platform/notification/common/notification.js +3 -3
  290. package/vscode/src/vs/platform/policy/common/policy.d.ts +8 -1
  291. package/vscode/src/vs/platform/product/common/product.js +3 -3
  292. package/vscode/src/vs/platform/quickinput/browser/media/quickInput.css +1 -1
  293. package/vscode/src/vs/platform/quickinput/browser/quickInput.js +10 -10
  294. package/vscode/src/vs/platform/quickinput/browser/quickInputActions.js +5 -5
  295. package/vscode/src/vs/platform/quickinput/browser/quickInputController.js +6 -6
  296. package/vscode/src/vs/platform/quickinput/browser/quickInputList.js +1 -1
  297. package/vscode/src/vs/platform/quickinput/browser/quickInputUtils.js +1 -1
  298. package/vscode/src/vs/platform/quickinput/browser/quickPickPin.js +2 -2
  299. package/vscode/src/vs/platform/quickinput/browser/tree/quickInputTreeAccessibilityProvider.js +1 -1
  300. package/vscode/src/vs/platform/quickinput/browser/tree/quickTree.js +1 -1
  301. package/vscode/src/vs/platform/remote/common/remoteAgentConnection.js +1 -1
  302. package/vscode/src/vs/platform/request/common/request.js +20 -20
  303. package/vscode/src/vs/platform/sandbox/common/settings.d.ts +5 -1
  304. package/vscode/src/vs/platform/sandbox/common/settings.js +4 -0
  305. package/vscode/src/vs/platform/sandbox/common/terminalSandboxService.service.d.ts +8 -2
  306. package/vscode/src/vs/platform/storage/common/storage.d.ts +13 -1
  307. package/vscode/src/vs/platform/storage/common/storage.js +48 -0
  308. package/vscode/src/vs/platform/storage/common/storage.service.d.ts +2 -1
  309. package/vscode/src/vs/platform/telemetry/common/telemetry.d.ts +5 -0
  310. package/vscode/src/vs/platform/telemetry/common/telemetry.js +4 -1
  311. package/vscode/src/vs/platform/telemetry/common/telemetryUtils.js +1 -1
  312. package/vscode/src/vs/platform/terminal/common/terminal.d.ts +3 -0
  313. package/vscode/src/vs/platform/terminal/common/terminal.js +3 -0
  314. package/vscode/src/vs/platform/terminal/common/terminalPlatformConfiguration.js +97 -31
  315. package/vscode/src/vs/platform/terminal/common/terminalProfiles.js +1 -1
  316. package/vscode/src/vs/platform/terminal/common/xterm/shellIntegrationAddon.js +6 -0
  317. package/vscode/src/vs/platform/theme/common/colorUtils.js +2 -2
  318. package/vscode/src/vs/platform/theme/common/colors/baseColors.d.ts +1 -0
  319. package/vscode/src/vs/platform/theme/common/colors/baseColors.js +27 -18
  320. package/vscode/src/vs/platform/theme/common/colors/chartsColors.js +8 -8
  321. package/vscode/src/vs/platform/theme/common/colors/editorColors.js +95 -95
  322. package/vscode/src/vs/platform/theme/common/colors/inputColors.js +48 -48
  323. package/vscode/src/vs/platform/theme/common/colors/listColors.js +36 -36
  324. package/vscode/src/vs/platform/theme/common/colors/menuColors.js +7 -7
  325. package/vscode/src/vs/platform/theme/common/colors/minimapColors.js +11 -11
  326. package/vscode/src/vs/platform/theme/common/colors/miscColors.js +16 -16
  327. package/vscode/src/vs/platform/theme/common/colors/quickpickColors.d.ts +1 -0
  328. package/vscode/src/vs/platform/theme/common/colors/quickpickColors.js +18 -10
  329. package/vscode/src/vs/platform/theme/common/colors/searchColors.js +3 -3
  330. package/vscode/src/vs/platform/theme/common/iconRegistry.js +7 -7
  331. package/vscode/src/vs/platform/theme/common/sizes/baseSizes.js +11 -11
  332. package/vscode/src/vs/platform/theme/common/tokenClassificationRegistry.js +42 -42
  333. package/vscode/src/vs/platform/undoRedo/common/undoRedoService.js +20 -20
  334. package/vscode/src/vs/platform/url/common/trustedDomains.d.ts +1 -0
  335. package/vscode/src/vs/platform/url/common/trustedDomains.js +2 -2
  336. package/vscode/src/vs/platform/userDataProfile/common/userDataProfile.d.ts +26 -2
  337. package/vscode/src/vs/platform/userDataProfile/common/userDataProfile.js +35 -31
  338. package/vscode/src/vs/platform/userDataProfile/common/userDataProfileStorageService.service.d.ts +3 -2
  339. package/vscode/src/vs/platform/userDataSync/common/abstractSynchronizer.js +2 -2
  340. package/vscode/src/vs/platform/userDataSync/common/globalStateSync.js +37 -11
  341. package/vscode/src/vs/platform/userDataSync/common/keybindingsSync.js +2 -2
  342. package/vscode/src/vs/platform/userDataSync/common/settingsSync.js +1 -1
  343. package/vscode/src/vs/platform/userDataSync/common/userDataSync.d.ts +2 -0
  344. package/vscode/src/vs/platform/userDataSync/common/userDataSync.js +5 -5
  345. package/vscode/src/vs/platform/userDataSync/common/userDataSyncMachines.js +1 -1
  346. package/vscode/src/vs/platform/webWorker/browser/webWorkerServiceImpl.d.ts +1 -1
  347. package/vscode/src/vs/platform/workspace/common/workspace.d.ts +7 -1
  348. package/vscode/src/vs/platform/workspace/common/workspace.js +9 -3
  349. package/vscode/src/vs/workbench/api/browser/statusBarExtensionPoint.js +12 -12
  350. package/vscode/src/vs/workbench/api/common/extHost.api.impl.js +61 -4
  351. package/vscode/src/vs/workbench/api/common/extHost.protocol.d.ts +86 -5
  352. package/vscode/src/vs/workbench/api/common/extHost.protocol.js +11 -1
  353. package/vscode/src/vs/workbench/api/common/extHostAuthentication.js +5 -5
  354. package/vscode/src/vs/workbench/api/common/extHostChatAgents2.js +29 -9
  355. package/vscode/src/vs/workbench/api/common/extHostChatDebug.js +7 -0
  356. package/vscode/src/vs/workbench/api/common/extHostChatInputNotification.d.ts +9 -0
  357. package/vscode/src/vs/workbench/api/common/extHostChatInputNotification.js +114 -0
  358. package/vscode/src/vs/workbench/api/common/extHostChatSessions.d.ts +2 -0
  359. package/vscode/src/vs/workbench/api/common/extHostChatSessions.js +89 -16
  360. package/vscode/src/vs/workbench/api/common/extHostCustomEditors.d.ts +3 -0
  361. package/vscode/src/vs/workbench/api/common/extHostCustomEditors.js +139 -8
  362. package/vscode/src/vs/workbench/api/common/extHostDiagnostics.js +1 -1
  363. package/vscode/src/vs/workbench/api/common/extHostExtensionActivator.js +2 -2
  364. package/vscode/src/vs/workbench/api/common/extHostExtensionService.js +2 -2
  365. package/vscode/src/vs/workbench/api/common/extHostGitExtensionService.js +3 -3
  366. package/vscode/src/vs/workbench/api/common/extHostLanguageFeatures.js +2 -2
  367. package/vscode/src/vs/workbench/api/common/extHostLanguageModelTools.js +7 -1
  368. package/vscode/src/vs/workbench/api/common/extHostLanguageModels.js +11 -2
  369. package/vscode/src/vs/workbench/api/common/extHostLogService.js +1 -1
  370. package/vscode/src/vs/workbench/api/common/extHostNotebook.js +2 -2
  371. package/vscode/src/vs/workbench/api/common/extHostSCM.js +20 -0
  372. package/vscode/src/vs/workbench/api/common/extHostStatusBar.js +2 -2
  373. package/vscode/src/vs/workbench/api/common/extHostTelemetry.js +1 -1
  374. package/vscode/src/vs/workbench/api/common/extHostTerminalService.js +1 -1
  375. package/vscode/src/vs/workbench/api/common/extHostTreeViews.d.ts +1 -1
  376. package/vscode/src/vs/workbench/api/common/extHostTunnelService.js +2 -2
  377. package/vscode/src/vs/workbench/api/common/extHostTypeConverters.d.ts +5 -1
  378. package/vscode/src/vs/workbench/api/common/extHostTypeConverters.js +20 -3
  379. package/vscode/src/vs/workbench/api/common/extHostTypes.d.ts +14 -0
  380. package/vscode/src/vs/workbench/api/common/extHostTypes.js +17 -1
  381. package/vscode/src/vs/workbench/api/common/extHostWebview.d.ts +11 -0
  382. package/vscode/src/vs/workbench/api/common/extHostWebview.js +9 -0
  383. package/vscode/src/vs/workbench/api/common/extHostWorkspace.js +1 -1
  384. package/vscode/src/vs/workbench/api/common/jsonValidationExtensionPoint.js +11 -11
  385. package/vscode/src/vs/workbench/browser/actions/developerActions.js +59 -35
  386. package/vscode/src/vs/workbench/browser/actions/layoutActions.d.ts +1 -2
  387. package/vscode/src/vs/workbench/browser/actions/layoutActions.js +141 -188
  388. package/vscode/src/vs/workbench/browser/actions/textInputActions.js +6 -6
  389. package/vscode/src/vs/workbench/browser/actions/windowActions.js +34 -34
  390. package/vscode/src/vs/workbench/browser/actions/workspaceActions.js +32 -32
  391. package/vscode/src/vs/workbench/browser/actions/workspaceCommands.js +4 -4
  392. package/vscode/src/vs/workbench/browser/editor.js +2 -2
  393. package/vscode/src/vs/workbench/browser/labels.js +4 -4
  394. package/vscode/src/vs/workbench/browser/parts/activitybar/activitybarPart.js +23 -23
  395. package/vscode/src/vs/workbench/browser/parts/auxiliarybar/auxiliaryBarActions.js +26 -26
  396. package/vscode/src/vs/workbench/browser/parts/auxiliarybar/auxiliaryBarPart.js +4 -4
  397. package/vscode/src/vs/workbench/browser/parts/compositeBar.js +1 -1
  398. package/vscode/src/vs/workbench/browser/parts/compositeBarActions.js +9 -9
  399. package/vscode/src/vs/workbench/browser/parts/compositePart.js +3 -3
  400. package/vscode/src/vs/workbench/browser/parts/dialogs/dialog.js +1 -1
  401. package/vscode/src/vs/workbench/browser/parts/editor/auxiliaryEditorPart.js +3 -3
  402. package/vscode/src/vs/workbench/browser/parts/editor/binaryDiffEditor.js +1 -1
  403. package/vscode/src/vs/workbench/browser/parts/editor/binaryEditor.js +3 -3
  404. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbs.js +41 -38
  405. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbsControl.js +12 -12
  406. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbsPicker.js +1 -1
  407. package/vscode/src/vs/workbench/browser/parts/editor/diffEditorCommands.js +32 -14
  408. package/vscode/src/vs/workbench/browser/parts/editor/editorActions.d.ts +2 -0
  409. package/vscode/src/vs/workbench/browser/parts/editor/editorActions.js +160 -137
  410. package/vscode/src/vs/workbench/browser/parts/editor/editorCommands.js +56 -36
  411. package/vscode/src/vs/workbench/browser/parts/editor/editorCommandsContext.js +2 -1
  412. package/vscode/src/vs/workbench/browser/parts/editor/editorDropTarget.js +1 -1
  413. package/vscode/src/vs/workbench/browser/parts/editor/editorGroupView.js +9 -8
  414. package/vscode/src/vs/workbench/browser/parts/editor/editorGroupWatermark.js +12 -12
  415. package/vscode/src/vs/workbench/browser/parts/editor/editorPanes.js +2 -2
  416. package/vscode/src/vs/workbench/browser/parts/editor/editorPart.js +28 -3
  417. package/vscode/src/vs/workbench/browser/parts/editor/editorParts.js +1 -1
  418. package/vscode/src/vs/workbench/browser/parts/editor/editorPlaceholder.js +10 -10
  419. package/vscode/src/vs/workbench/browser/parts/editor/editorQuickAccess.js +5 -5
  420. package/vscode/src/vs/workbench/browser/parts/editor/editorStatus.js +66 -66
  421. package/vscode/src/vs/workbench/browser/parts/editor/editorTabsControl.d.ts +9 -0
  422. package/vscode/src/vs/workbench/browser/parts/editor/editorTabsControl.js +80 -4
  423. package/vscode/src/vs/workbench/browser/parts/editor/media/modalEditorPart.css +4 -0
  424. package/vscode/src/vs/workbench/browser/parts/editor/media/multieditortabscontrol.css +15 -7
  425. package/vscode/src/vs/workbench/browser/parts/editor/modalEditorPart.d.ts +3 -1
  426. package/vscode/src/vs/workbench/browser/parts/editor/modalEditorPart.js +62 -31
  427. package/vscode/src/vs/workbench/browser/parts/editor/multiEditorTabsControl.d.ts +1 -0
  428. package/vscode/src/vs/workbench/browser/parts/editor/multiEditorTabsControl.js +12 -3
  429. package/vscode/src/vs/workbench/browser/parts/editor/noEditorTabsControl.d.ts +1 -0
  430. package/vscode/src/vs/workbench/browser/parts/editor/noEditorTabsControl.js +6 -0
  431. package/vscode/src/vs/workbench/browser/parts/editor/sideBySideEditor.js +1 -1
  432. package/vscode/src/vs/workbench/browser/parts/editor/singleEditorTabsControl.d.ts +1 -0
  433. package/vscode/src/vs/workbench/browser/parts/editor/singleEditorTabsControl.js +6 -0
  434. package/vscode/src/vs/workbench/browser/parts/editor/textCodeEditor.js +1 -1
  435. package/vscode/src/vs/workbench/browser/parts/editor/textDiffEditor.js +3 -3
  436. package/vscode/src/vs/workbench/browser/parts/editor/textEditor.js +1 -1
  437. package/vscode/src/vs/workbench/browser/parts/globalCompositeBar.js +19 -19
  438. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsActions.js +22 -22
  439. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsAlerts.js +3 -3
  440. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsCenter.js +6 -6
  441. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsCommands.js +13 -13
  442. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsList.js +6 -6
  443. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsStatus.js +13 -13
  444. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsToasts.js +2 -2
  445. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsViewer.js +4 -4
  446. package/vscode/src/vs/workbench/browser/parts/paneCompositeBar.js +4 -4
  447. package/vscode/src/vs/workbench/browser/parts/paneCompositePart.js +3 -3
  448. package/vscode/src/vs/workbench/browser/parts/panel/panelActions.js +27 -27
  449. package/vscode/src/vs/workbench/browser/parts/panel/panelPart.js +3 -3
  450. package/vscode/src/vs/workbench/browser/parts/sidebar/sidebarActions.js +2 -2
  451. package/vscode/src/vs/workbench/browser/parts/sidebar/sidebarPart.js +1 -1
  452. package/vscode/src/vs/workbench/browser/parts/titlebar/menubarControl.js +12 -85
  453. package/vscode/src/vs/workbench/browser/parts/titlebar/titlebarActions.d.ts +7 -0
  454. package/vscode/src/vs/workbench/browser/parts/titlebar/titlebarActions.js +17 -16
  455. package/vscode/src/vs/workbench/browser/parts/titlebar/windowTitle.js +2 -2
  456. package/vscode/src/vs/workbench/browser/parts/views/checkbox.js +1 -1
  457. package/vscode/src/vs/workbench/browser/parts/views/treeView.js +7 -7
  458. package/vscode/src/vs/workbench/browser/parts/views/viewFilter.js +4 -4
  459. package/vscode/src/vs/workbench/browser/parts/views/viewPane.js +5 -5
  460. package/vscode/src/vs/workbench/browser/parts/views/viewPaneContainer.js +6 -6
  461. package/vscode/src/vs/workbench/browser/quickaccess.js +1 -1
  462. package/vscode/src/vs/workbench/browser/window.js +15 -14
  463. package/vscode/src/vs/workbench/browser/workbench.contribution.js +332 -317
  464. package/vscode/src/vs/workbench/common/configuration.js +9 -9
  465. package/vscode/src/vs/workbench/common/contextkeys.d.ts +3 -0
  466. package/vscode/src/vs/workbench/common/contextkeys.js +91 -83
  467. package/vscode/src/vs/workbench/common/editor/diffEditorInput.js +1 -1
  468. package/vscode/src/vs/workbench/common/editor/editorGroupModel.js +2 -1
  469. package/vscode/src/vs/workbench/common/editor/sideBySideEditorInput.js +1 -1
  470. package/vscode/src/vs/workbench/common/editor/textEditorModel.js +1 -1
  471. package/vscode/src/vs/workbench/common/editor.d.ts +8 -0
  472. package/vscode/src/vs/workbench/common/editor.js +4 -4
  473. package/vscode/src/vs/workbench/common/memento.d.ts +1 -0
  474. package/vscode/src/vs/workbench/common/memento.js +19 -0
  475. package/vscode/src/vs/workbench/common/theme.js +161 -161
  476. package/vscode/src/vs/workbench/common/views.d.ts +9 -9
  477. package/vscode/src/vs/workbench/common/views.js +11 -11
  478. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibilityConfiguration.d.ts +2 -1
  479. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibilityConfiguration.js +164 -156
  480. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibleViewActions.js +12 -12
  481. package/vscode/src/vs/workbench/contrib/browserView/common/browserEditorInput.d.ts +25 -5
  482. package/vscode/src/vs/workbench/contrib/browserView/common/browserEditorInput.js +63 -39
  483. package/vscode/src/vs/workbench/contrib/browserView/common/browserView.d.ts +39 -33
  484. package/vscode/src/vs/workbench/contrib/browserView/common/browserView.js +454 -0
  485. package/vscode/src/vs/workbench/contrib/browserView/common/browserView.service.d.ts +20 -10
  486. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatActions.js +97 -67
  487. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionWorkingDirectoryResolver.service.d.ts +2 -1
  488. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessions.d.ts +4 -8
  489. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessions.js +14 -16
  490. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsModel.d.ts +17 -0
  491. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsModel.js +36 -2
  492. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationItemSource.d.ts +129 -0
  493. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationItemsModel.service.d.ts +51 -0
  494. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationItemsModel.service.js +6 -0
  495. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement.d.ts +3 -4
  496. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement.js +20 -5
  497. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentResolveService.service.d.ts +2 -1
  498. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatScreenshotContext.js +1 -1
  499. package/vscode/src/vs/workbench/contrib/chat/browser/chat.d.ts +8 -0
  500. package/vscode/src/vs/workbench/contrib/chat/browser/chat.js +7 -4
  501. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorContextKeys.js +7 -7
  502. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessionDescription.js +2 -2
  503. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessions.contribution.d.ts +13 -1
  504. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessions.contribution.js +103 -67
  505. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetup.js +1 -3
  506. package/vscode/src/vs/workbench/contrib/chat/browser/planReviewFeedback/planReviewFeedbackService.service.d.ts +26 -0
  507. package/vscode/src/vs/workbench/contrib/chat/browser/planReviewFeedback/planReviewFeedbackService.service.js +6 -0
  508. package/vscode/src/vs/workbench/contrib/chat/browser/tools/chatToolRiskAssessmentService.service.d.ts +17 -0
  509. package/vscode/src/vs/workbench/contrib/chat/browser/tools/chatToolRiskAssessmentService.service.js +6 -0
  510. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputNotificationService.service.d.ts +31 -0
  511. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputNotificationService.service.js +6 -0
  512. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatPhoneInputPresenter.service.d.ts +36 -0
  513. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatPhoneInputPresenter.service.js +6 -0
  514. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/editor/chatEditorInput.js +9 -9
  515. package/vscode/src/vs/workbench/contrib/chat/common/actions/chatContextKeys.d.ts +3 -0
  516. package/vscode/src/vs/workbench/contrib/chat/common/actions/chatContextKeys.js +94 -85
  517. package/vscode/src/vs/workbench/contrib/chat/common/attachments/chatVariableEntries.d.ts +14 -1
  518. package/vscode/src/vs/workbench/contrib/chat/common/attachments/chatVariableEntries.js +6 -3
  519. package/vscode/src/vs/workbench/contrib/chat/common/attachments/chatVariables.d.ts +7 -0
  520. package/vscode/src/vs/workbench/contrib/chat/common/chatDebugService.d.ts +4 -0
  521. package/vscode/src/vs/workbench/contrib/chat/common/chatModes.d.ts +26 -30
  522. package/vscode/src/vs/workbench/contrib/chat/common/chatModes.js +94 -54
  523. package/vscode/src/vs/workbench/contrib/chat/common/chatModes.service.d.ts +14 -9
  524. package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatService.d.ts +49 -4
  525. package/vscode/src/vs/workbench/contrib/chat/common/chatSessionsService.d.ts +129 -3
  526. package/vscode/src/vs/workbench/contrib/chat/common/chatSessionsService.js +15 -2
  527. package/vscode/src/vs/workbench/contrib/chat/common/chatSessionsService.service.d.ts +23 -1
  528. package/vscode/src/vs/workbench/contrib/chat/common/constants.d.ts +14 -2
  529. package/vscode/src/vs/workbench/contrib/chat/common/constants.js +15 -3
  530. package/vscode/src/vs/workbench/contrib/chat/common/customizationHarnessService.d.ts +64 -49
  531. package/vscode/src/vs/workbench/contrib/chat/common/customizationHarnessService.js +162 -45
  532. package/vscode/src/vs/workbench/contrib/chat/common/customizationHarnessService.service.d.ts +38 -1
  533. package/vscode/src/vs/workbench/contrib/chat/common/editing/chatEditingService.js +2 -2
  534. package/vscode/src/vs/workbench/contrib/chat/common/enablement.d.ts +3 -3
  535. package/vscode/src/vs/workbench/contrib/chat/common/enablement.js +11 -11
  536. package/vscode/src/vs/workbench/contrib/chat/common/languageModelStats.js +3 -3
  537. package/vscode/src/vs/workbench/contrib/chat/common/languageModels.d.ts +6 -7
  538. package/vscode/src/vs/workbench/contrib/chat/common/languageModels.js +42 -122
  539. package/vscode/src/vs/workbench/contrib/chat/common/languageModels.service.d.ts +7 -1
  540. package/vscode/src/vs/workbench/contrib/chat/common/model/chatModel.d.ts +17 -2
  541. package/vscode/src/vs/workbench/contrib/chat/common/model/chatModel.js +48 -13
  542. package/vscode/src/vs/workbench/contrib/chat/common/model/chatProgressTypes/chatElicitationRequestPart.d.ts +8 -1
  543. package/vscode/src/vs/workbench/contrib/chat/common/model/chatProgressTypes/chatElicitationRequestPart.js +2 -1
  544. package/vscode/src/vs/workbench/contrib/chat/common/model/chatProgressTypes/chatPlanReviewData.d.ts +2 -0
  545. package/vscode/src/vs/workbench/contrib/chat/common/model/chatProgressTypes/chatPlanReviewData.js +9 -0
  546. package/vscode/src/vs/workbench/contrib/chat/common/model/chatProgressTypes/chatQuestionCarouselData.d.ts +5 -0
  547. package/vscode/src/vs/workbench/contrib/chat/common/model/chatProgressTypes/chatQuestionCarouselData.js +13 -0
  548. package/vscode/src/vs/workbench/contrib/chat/common/model/chatProgressTypes/chatToolInvocation.js +1 -1
  549. package/vscode/src/vs/workbench/contrib/chat/common/participants/chatAgents.d.ts +7 -1
  550. package/vscode/src/vs/workbench/contrib/chat/common/participants/chatAgents.js +1 -1
  551. package/vscode/src/vs/workbench/contrib/chat/common/participants/chatSlashCommands.service.d.ts +1 -1
  552. package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginService.d.ts +50 -0
  553. package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginService.js +32 -0
  554. package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginService.service.d.ts +1 -1
  555. package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginGitService.service.d.ts +17 -1
  556. package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginMarketplaceService.service.d.ts +11 -0
  557. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/computeAutomaticInstructions.js +100 -39
  558. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/config/config.d.ts +0 -4
  559. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/config/config.js +1 -2
  560. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/config/promptFileLocations.d.ts +12 -3
  561. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/config/promptFileLocations.js +20 -16
  562. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookClaudeCompat.d.ts +50 -0
  563. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookClaudeCompat.js +77 -0
  564. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookCompatibility.d.ts +77 -0
  565. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookCompatibility.js +120 -0
  566. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookCopilotCliCompat.d.ts +10 -0
  567. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookCopilotCliCompat.js +23 -0
  568. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookSchema.js +18 -18
  569. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookTypes.js +20 -20
  570. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptFileAttributes.js +91 -77
  571. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/promptFileParser.d.ts +2 -0
  572. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/promptFileParser.js +4 -0
  573. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/promptTypes.d.ts +5 -0
  574. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/promptTypes.js +29 -1
  575. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService.d.ts +5 -18
  576. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService.js +1 -4
  577. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService.service.d.ts +1 -1
  578. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.d.ts +234 -0
  579. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.js +1686 -0
  580. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.d.ts +191 -0
  581. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.js +734 -0
  582. package/vscode/src/vs/workbench/contrib/chat/common/requestParser/chatParserTypes.d.ts +2 -1
  583. package/vscode/src/vs/workbench/contrib/chat/common/requestParser/chatParserTypes.js +6 -3
  584. package/vscode/src/vs/workbench/contrib/chat/common/requestParser/chatRequestParser.d.ts +1 -0
  585. package/vscode/src/vs/workbench/contrib/chat/common/requestParser/chatRequestParser.js +14 -3
  586. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/askQuestionsTool.d.ts +4 -2
  587. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/askQuestionsTool.js +55 -36
  588. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/confirmationTool.js +6 -1
  589. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/manageTodoListTool.js +10 -10
  590. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/reviewPlanTool.js +7 -7
  591. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/runSubagentTool.js +3 -3
  592. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/setArtifactRulesTool.js +3 -3
  593. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/setArtifactsTool.js +4 -4
  594. package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsConfirmationService.d.ts +6 -0
  595. package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsContribution.js +22 -22
  596. package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsService.d.ts +25 -5
  597. package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsService.js +3 -3
  598. package/vscode/src/vs/workbench/contrib/chat/common/tools/toolResultCompressor.d.ts +39 -0
  599. package/vscode/src/vs/workbench/contrib/chat/common/tools/toolResultCompressor.service.d.ts +12 -0
  600. package/vscode/src/vs/workbench/contrib/chat/common/tools/toolResultCompressor.service.js +6 -0
  601. package/vscode/src/vs/workbench/contrib/chat/common/widget/input/modelPickerWidget.js +1 -1
  602. package/vscode/src/vs/workbench/contrib/codeActions/browser/codeActionsContribution.js +11 -11
  603. package/vscode/src/vs/workbench/contrib/codeEditor/browser/dictation/editorDictation.js +4 -4
  604. package/vscode/src/vs/workbench/contrib/codeEditor/browser/diffEditorAccessibilityHelp.js +5 -5
  605. package/vscode/src/vs/workbench/contrib/codeEditor/browser/diffEditorHelper.js +3 -3
  606. package/vscode/src/vs/workbench/contrib/codeEditor/browser/find/simpleFindWidget.js +10 -10
  607. package/vscode/src/vs/workbench/contrib/codeEditor/browser/inspectEditorTokens/inspectEditorTokens.js +2 -2
  608. package/vscode/src/vs/workbench/contrib/codeEditor/browser/largeFileOptimizations.js +3 -3
  609. package/vscode/src/vs/workbench/contrib/codeEditor/browser/quickaccess/gotoSymbolQuickAccess.js +6 -6
  610. package/vscode/src/vs/workbench/contrib/codeEditor/browser/saveParticipants.js +4 -4
  611. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleMinimap.js +2 -2
  612. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleMultiCursorModifier.js +3 -3
  613. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleRenderControlCharacter.js +2 -2
  614. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleRenderWhitespace.js +12 -12
  615. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleWordWrap.js +5 -5
  616. package/vscode/src/vs/workbench/contrib/codeEditor/common/languageConfigurationExtensionPoint.js +65 -65
  617. package/vscode/src/vs/workbench/contrib/comments/browser/commentColors.js +7 -7
  618. package/vscode/src/vs/workbench/contrib/comments/browser/commentGlyphWidget.js +7 -7
  619. package/vscode/src/vs/workbench/contrib/comments/browser/commentNode.js +2 -2
  620. package/vscode/src/vs/workbench/contrib/comments/browser/commentReply.js +3 -3
  621. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadBody.js +3 -3
  622. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadHeader.js +3 -3
  623. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadWidget.js +3 -3
  624. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadZoneWidget.js +3 -3
  625. package/vscode/src/vs/workbench/contrib/comments/browser/commentsAccessibility.js +12 -12
  626. package/vscode/src/vs/workbench/contrib/comments/browser/commentsController.d.ts +2 -1
  627. package/vscode/src/vs/workbench/contrib/comments/browser/commentsController.js +22 -13
  628. package/vscode/src/vs/workbench/contrib/comments/browser/commentsModel.js +1 -1
  629. package/vscode/src/vs/workbench/contrib/comments/browser/commentsTreeViewer.js +9 -9
  630. package/vscode/src/vs/workbench/contrib/comments/browser/commentsView.js +14 -14
  631. package/vscode/src/vs/workbench/contrib/comments/browser/commentsViewActions.js +16 -16
  632. package/vscode/src/vs/workbench/contrib/comments/browser/reactionsAction.js +7 -7
  633. package/vscode/src/vs/workbench/contrib/comments/common/commentContextKeys.js +12 -12
  634. package/vscode/src/vs/workbench/contrib/customEditor/browser/customEditorDiffInput.d.ts +101 -0
  635. package/vscode/src/vs/workbench/contrib/customEditor/browser/customEditorDiffInput.js +428 -0
  636. package/vscode/src/vs/workbench/contrib/customEditor/browser/customEditorInput.d.ts +1 -0
  637. package/vscode/src/vs/workbench/contrib/customEditor/browser/customEditorInput.js +7 -13
  638. package/vscode/src/vs/workbench/contrib/debug/browser/baseDebugView.js +1 -1
  639. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointEditorContribution.js +29 -29
  640. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointWidget.js +22 -15
  641. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointsView.js +91 -76
  642. package/vscode/src/vs/workbench/contrib/debug/browser/callStackEditorContribution.js +2 -2
  643. package/vscode/src/vs/workbench/contrib/debug/browser/debugActionViewItems.js +17 -15
  644. package/vscode/src/vs/workbench/contrib/debug/browser/debugColors.js +12 -12
  645. package/vscode/src/vs/workbench/contrib/debug/browser/debugCommands.js +38 -38
  646. package/vscode/src/vs/workbench/contrib/debug/browser/debugEditorContribution.js +2 -2
  647. package/vscode/src/vs/workbench/contrib/debug/browser/debugHover.js +3 -3
  648. package/vscode/src/vs/workbench/contrib/debug/browser/debugIcons.js +57 -57
  649. package/vscode/src/vs/workbench/contrib/debug/browser/debugSessionPicker.js +3 -3
  650. package/vscode/src/vs/workbench/contrib/debug/browser/exceptionWidget.js +4 -4
  651. package/vscode/src/vs/workbench/contrib/debug/browser/linkDetector.js +2 -2
  652. package/vscode/src/vs/workbench/contrib/debug/browser/repl.js +26 -21
  653. package/vscode/src/vs/workbench/contrib/debug/browser/replViewer.js +5 -5
  654. package/vscode/src/vs/workbench/contrib/debug/browser/variablesView.js +9 -9
  655. package/vscode/src/vs/workbench/contrib/debug/common/abstractDebugAdapter.js +1 -1
  656. package/vscode/src/vs/workbench/contrib/debug/common/debug.js +65 -65
  657. package/vscode/src/vs/workbench/contrib/debug/common/debugModel.js +6 -6
  658. package/vscode/src/vs/workbench/contrib/debug/common/debugSource.js +1 -1
  659. package/vscode/src/vs/workbench/contrib/debug/common/disassemblyViewInput.js +2 -2
  660. package/vscode/src/vs/workbench/contrib/debug/common/loadedScriptsPicker.js +1 -1
  661. package/vscode/src/vs/workbench/contrib/debug/common/replModel.js +1 -1
  662. package/vscode/src/vs/workbench/contrib/dropOrPasteInto/browser/commands.js +2 -2
  663. package/vscode/src/vs/workbench/contrib/dropOrPasteInto/browser/configurationSchema.js +4 -4
  664. package/vscode/src/vs/workbench/contrib/editTelemetry/browser/telemetry/aiEditTelemetry/aiEditTelemetryService.d.ts +7 -0
  665. package/vscode/src/vs/workbench/contrib/editTelemetry/browser/telemetry/aiEditTelemetry/aiEditTelemetryService.service.d.ts +2 -1
  666. package/vscode/src/vs/workbench/contrib/extensions/browser/abstractRuntimeExtensionsEditor.js +18 -18
  667. package/vscode/src/vs/workbench/contrib/extensions/browser/configBasedRecommendations.js +1 -1
  668. package/vscode/src/vs/workbench/contrib/extensions/browser/exeBasedRecommendations.js +1 -1
  669. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionEditor.js +42 -48
  670. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionEnablementWorkspaceTrustTransitionParticipant.js +1 -1
  671. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionFeaturesTab.js +15 -15
  672. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionRecommendationNotificationService.js +14 -14
  673. package/vscode/src/vs/workbench/contrib/extensions/browser/extensions.contribution.js +175 -149
  674. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsActions.d.ts +11 -0
  675. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsActions.js +181 -181
  676. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsActivationProgress.js +1 -1
  677. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsCompletionItemsProvider.js +1 -1
  678. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsDependencyChecker.js +5 -5
  679. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsIcons.js +25 -25
  680. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsQuickAccess.js +4 -4
  681. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsViewer.js +7 -7
  682. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsViewlet.js +47 -47
  683. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsViews.js +5 -5
  684. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsWidgets.js +30 -30
  685. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsWorkbenchService.js +76 -76
  686. package/vscode/src/vs/workbench/contrib/extensions/browser/fileBasedRecommendations.js +2 -2
  687. package/vscode/src/vs/workbench/contrib/extensions/browser/webRecommendations.js +1 -1
  688. package/vscode/src/vs/workbench/contrib/extensions/browser/workspaceRecommendations.js +2 -2
  689. package/vscode/src/vs/workbench/contrib/extensions/common/extensions.js +1 -1
  690. package/vscode/src/vs/workbench/contrib/extensions/common/extensionsFileTemplate.js +5 -5
  691. package/vscode/src/vs/workbench/contrib/extensions/common/extensionsInput.js +2 -2
  692. package/vscode/src/vs/workbench/contrib/extensions/common/extensionsUtils.js +3 -3
  693. package/vscode/src/vs/workbench/contrib/extensions/common/runtimeExtensionsInput.js +2 -2
  694. package/vscode/src/vs/workbench/contrib/extensions/common/searchExtensionsTool.js +3 -3
  695. package/vscode/src/vs/workbench/contrib/externalUriOpener/common/configuration.js +4 -4
  696. package/vscode/src/vs/workbench/contrib/externalUriOpener/common/externalUriOpenerService.js +3 -3
  697. package/vscode/src/vs/workbench/contrib/files/browser/editors/binaryFileEditor.js +1 -1
  698. package/vscode/src/vs/workbench/contrib/files/browser/editors/textFileEditor.js +8 -8
  699. package/vscode/src/vs/workbench/contrib/files/browser/editors/textFileSaveErrorHandler.js +18 -18
  700. package/vscode/src/vs/workbench/contrib/files/browser/explorerViewlet.js +14 -14
  701. package/vscode/src/vs/workbench/contrib/files/browser/fileActions.contribution.js +49 -49
  702. package/vscode/src/vs/workbench/contrib/files/browser/fileActions.js +94 -89
  703. package/vscode/src/vs/workbench/contrib/files/browser/fileCommands._save.js +4 -4
  704. package/vscode/src/vs/workbench/contrib/files/browser/fileCommands.js +2 -2
  705. package/vscode/src/vs/workbench/contrib/files/browser/fileConstants.js +6 -6
  706. package/vscode/src/vs/workbench/contrib/files/browser/fileImportExport.js +30 -27
  707. package/vscode/src/vs/workbench/contrib/files/browser/files.contribution._configuration.js +54 -51
  708. package/vscode/src/vs/workbench/contrib/files/browser/files.contribution._editorPane.js +2 -2
  709. package/vscode/src/vs/workbench/contrib/files/browser/views/emptyView.js +1 -1
  710. package/vscode/src/vs/workbench/contrib/files/browser/views/explorerDecorationsProvider.js +4 -4
  711. package/vscode/src/vs/workbench/contrib/files/browser/views/explorerView.js +7 -7
  712. package/vscode/src/vs/workbench/contrib/files/browser/views/explorerViewer.js +17 -17
  713. package/vscode/src/vs/workbench/contrib/files/browser/views/openEditorsView.js +7 -7
  714. package/vscode/src/vs/workbench/contrib/files/browser/workspaceWatcher.js +4 -4
  715. package/vscode/src/vs/workbench/contrib/files/common/dirtyFilesIndicator.js +1 -1
  716. package/vscode/src/vs/workbench/contrib/files/common/files.js +16 -16
  717. package/vscode/src/vs/workbench/contrib/folding/browser/folding.contribution.js +3 -3
  718. package/vscode/src/vs/workbench/contrib/format/browser/formatActionsMultiple.js +20 -20
  719. package/vscode/src/vs/workbench/contrib/format/browser/formatActionsNone.js +4 -4
  720. package/vscode/src/vs/workbench/contrib/format/browser/formatModified.js +1 -1
  721. package/vscode/src/vs/workbench/contrib/inlayHints/browser/inlayHintsAccessibilty.js +4 -4
  722. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionService.service.d.ts +4 -5
  723. package/vscode/src/vs/workbench/contrib/list/browser/listResizeColumnAction.js +2 -2
  724. package/vscode/src/vs/workbench/contrib/list/browser/tableColumnResizeQuickPick.js +5 -5
  725. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpCommandsAddConfiguration.js +67 -66
  726. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpServerActions.js +40 -40
  727. package/vscode/src/vs/workbench/contrib/mcp/common/mcpConfiguration.d.ts +5 -0
  728. package/vscode/src/vs/workbench/contrib/mcp/common/mcpConfiguration.js +49 -43
  729. package/vscode/src/vs/workbench/contrib/mcp/common/mcpServer.js +22 -16
  730. package/vscode/src/vs/workbench/contrib/mcp/common/mcpTypes.d.ts +10 -2
  731. package/vscode/src/vs/workbench/contrib/mcp/common/mcpTypes.js +4 -4
  732. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditorInput.js +4 -4
  733. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditorInputModel.js +23 -23
  734. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/mergeEditorModel.js +2 -2
  735. package/vscode/src/vs/workbench/contrib/mergeEditor/common/mergeEditor.js +8 -8
  736. package/vscode/src/vs/workbench/contrib/meteredConnection/browser/meteredConnection.contribution.js +8 -8
  737. package/vscode/src/vs/workbench/contrib/meteredConnection/browser/meteredConnectionStatus.js +4 -4
  738. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/icons.contribution.js +1 -1
  739. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/multiDiffEditorInput.js +4 -4
  740. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/scmMultiDiffSourceResolver.js +1 -1
  741. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/notebookFindReplaceWidget.js +17 -17
  742. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/cellOutputActions.js +6 -6
  743. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/coreActions.js +4 -4
  744. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/foldingController.js +3 -3
  745. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookAccessibilityProvider.js +3 -3
  746. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditor.js +7 -7
  747. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditorWidget.d.ts +0 -1
  748. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditorWidget.js +34 -48
  749. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookIcons.js +29 -29
  750. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellEditorOptions.js +5 -5
  751. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellOutput.js +7 -7
  752. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCell.js +2 -2
  753. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCellExecutionIcon.js +4 -4
  754. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCellRunToolbar.js +1 -1
  755. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/collapsedCellOutput.js +3 -3
  756. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/foldedCellHint.js +1 -1
  757. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/markupCell.js +2 -2
  758. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/backLayerWebView.js +4 -4
  759. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/cellRenderer.js +1 -1
  760. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookKernelQuickPickStrategy.js +14 -14
  761. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookKernelView.js +2 -2
  762. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookViewZones.js +1 -1
  763. package/vscode/src/vs/workbench/contrib/notebook/common/notebookEditorInput.js +2 -2
  764. package/vscode/src/vs/workbench/contrib/preferences/browser/keybindingWidgets.js +3 -3
  765. package/vscode/src/vs/workbench/contrib/preferences/browser/preferencesIcons.js +13 -13
  766. package/vscode/src/vs/workbench/contrib/preferences/browser/preferencesWidgets.js +11 -11
  767. package/vscode/src/vs/workbench/contrib/preferences/browser/settingsLayout.js +60 -60
  768. package/vscode/src/vs/workbench/contrib/preferences/browser/settingsTreeModels.d.ts +8 -2
  769. package/vscode/src/vs/workbench/contrib/preferences/browser/settingsTreeModels.js +30 -7
  770. package/vscode/src/vs/workbench/contrib/preferences/common/preferences.d.ts +1 -0
  771. package/vscode/src/vs/workbench/contrib/preferences/common/preferences.js +5 -4
  772. package/vscode/src/vs/workbench/contrib/preferences/common/settingsEditorColorRegistry.js +21 -21
  773. package/vscode/src/vs/workbench/contrib/remote/browser/remoteExplorer.js +15 -15
  774. package/vscode/src/vs/workbench/contrib/remote/browser/remoteIcons.js +17 -17
  775. package/vscode/src/vs/workbench/contrib/remote/browser/tunnelView.js +59 -59
  776. package/vscode/src/vs/workbench/contrib/scm/browser/scmHistory.js +11 -11
  777. package/vscode/src/vs/workbench/contrib/scm/browser/scmHistoryChatContext.js +6 -6
  778. package/vscode/src/vs/workbench/contrib/scm/common/quickDiff.js +15 -51
  779. package/vscode/src/vs/workbench/contrib/search/browser/anythingQuickAccess.js +19 -14
  780. package/vscode/src/vs/workbench/contrib/search/browser/patternInputWidget.js +3 -3
  781. package/vscode/src/vs/workbench/contrib/search/browser/searchActionsBase.d.ts +17 -1
  782. package/vscode/src/vs/workbench/contrib/search/browser/searchActionsBase.js +66 -3
  783. package/vscode/src/vs/workbench/contrib/search/browser/searchActionsTopBar.js +9 -9
  784. package/vscode/src/vs/workbench/contrib/search/browser/searchChatContext.js +5 -5
  785. package/vscode/src/vs/workbench/contrib/search/browser/searchFindInput.js +1 -1
  786. package/vscode/src/vs/workbench/contrib/search/browser/searchIcons.js +20 -20
  787. package/vscode/src/vs/workbench/contrib/search/browser/searchMessage.js +2 -2
  788. package/vscode/src/vs/workbench/contrib/search/browser/searchResultsView.js +14 -14
  789. package/vscode/src/vs/workbench/contrib/search/browser/searchView.d.ts +1 -1
  790. package/vscode/src/vs/workbench/contrib/search/browser/searchView.js +57 -57
  791. package/vscode/src/vs/workbench/contrib/search/browser/searchWidget.js +11 -11
  792. package/vscode/src/vs/workbench/contrib/search/browser/symbolsQuickAccess.js +2 -2
  793. package/vscode/src/vs/workbench/contrib/search/common/search.d.ts +5 -5
  794. package/vscode/src/vs/workbench/contrib/searchEditor/browser/searchEditorInput.js +4 -4
  795. package/vscode/src/vs/workbench/contrib/searchEditor/browser/searchEditorSerialization.js +5 -5
  796. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetCompletionProvider.js +3 -3
  797. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetsFile.js +3 -3
  798. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetsService.js +9 -9
  799. package/vscode/src/vs/workbench/contrib/speech/common/speechService.js +29 -29
  800. package/vscode/src/vs/workbench/contrib/tasks/common/constants.js +1 -1
  801. package/vscode/src/vs/workbench/contrib/tasks/common/taskDefinitionRegistry.js +6 -6
  802. package/vscode/src/vs/workbench/contrib/tasks/common/taskService.js +6 -6
  803. package/vscode/src/vs/workbench/contrib/tasks/common/tasks.js +4 -4
  804. package/vscode/src/vs/workbench/contrib/terminal/browser/agentHostTerminalService.service.d.ts +9 -0
  805. package/vscode/src/vs/workbench/contrib/terminal/browser/terminal.service.d.ts +6 -0
  806. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalEditorInput.js +3 -3
  807. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalIcons.js +13 -13
  808. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalMenus.js +40 -40
  809. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/decorationStyles.js +15 -15
  810. package/vscode/src/vs/workbench/contrib/terminal/common/terminal.d.ts +1 -1
  811. package/vscode/src/vs/workbench/contrib/terminal/common/terminal.js +10 -10
  812. package/vscode/src/vs/workbench/contrib/terminal/common/terminalColorRegistry.js +23 -23
  813. package/vscode/src/vs/workbench/contrib/terminal/common/terminalContextKey.js +17 -17
  814. package/vscode/src/vs/workbench/contrib/terminal/common/terminalStrings.js +26 -26
  815. package/vscode/src/vs/workbench/contrib/terminal/terminalContribExports.d.ts +3 -0
  816. package/vscode/src/vs/workbench/contrib/terminal/terminalContribExports.js +3 -0
  817. package/vscode/src/vs/workbench/contrib/terminalContrib/accessibility/common/terminalAccessibilityConfiguration.js +2 -2
  818. package/vscode/src/vs/workbench/contrib/terminalContrib/autoReplies/common/terminalAutoRepliesConfiguration.js +2 -2
  819. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChat.js +9 -9
  820. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalChatAgentToolsConfiguration.js +189 -69
  821. package/vscode/src/vs/workbench/contrib/terminalContrib/commandGuide/common/terminalCommandGuideConfiguration.js +1 -1
  822. package/vscode/src/vs/workbench/contrib/terminalContrib/history/common/terminal.history.js +1 -1
  823. package/vscode/src/vs/workbench/contrib/terminalContrib/inlineHint/common/terminalInitialHintConfiguration.js +6 -3
  824. package/vscode/src/vs/workbench/contrib/terminalContrib/notification/common/terminalNotificationConfiguration.js +1 -1
  825. package/vscode/src/vs/workbench/contrib/terminalContrib/stickyScroll/common/terminalStickyScrollConfiguration.js +3 -3
  826. package/vscode/src/vs/workbench/contrib/terminalContrib/suggest/common/terminalSuggestConfiguration.js +30 -30
  827. package/vscode/src/vs/workbench/contrib/terminalContrib/typeAhead/common/terminalTypeAheadConfiguration.js +5 -5
  828. package/vscode/src/vs/workbench/contrib/terminalContrib/zoom/common/terminal.zoom.js +2 -2
  829. package/vscode/src/vs/workbench/contrib/testing/common/constants.js +11 -11
  830. package/vscode/src/vs/workbench/contrib/testing/common/testResult.js +2 -2
  831. package/vscode/src/vs/workbench/contrib/testing/common/testTypes.js +3 -3
  832. package/vscode/src/vs/workbench/contrib/url/browser/trustedDomains.js +6 -6
  833. package/vscode/src/vs/workbench/contrib/webview/browser/webview.contribution.js +3 -3
  834. package/vscode/src/vs/workbench/contrib/webview/browser/webview.d.ts +2 -4
  835. package/vscode/src/vs/workbench/contrib/webview/browser/webviewFindAccessibilityHelp.js +30 -30
  836. package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewEditor.d.ts +1 -2
  837. package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewEditor.js +9 -24
  838. package/vscode/src/vs/workbench/contrib/welcomeOnboarding/common/onboardingTypes.js +14 -14
  839. package/vscode/src/vs/workbench/contrib/workspace/common/workspace.js +2 -2
  840. package/vscode/src/vs/workbench/services/accounts/browser/defaultAccount.d.ts +2 -1
  841. package/vscode/src/vs/workbench/services/accounts/browser/defaultAccount.js +5 -3
  842. package/vscode/src/vs/workbench/services/authentication/browser/authenticationService.js +11 -11
  843. package/vscode/src/vs/workbench/services/auxiliaryWindow/browser/auxiliaryWindowService.js +5 -5
  844. package/vscode/src/vs/workbench/services/chat/common/chatEntitlementService.d.ts +19 -7
  845. package/vscode/src/vs/workbench/services/chat/common/chatEntitlementService.js +137 -84
  846. package/vscode/src/vs/workbench/services/chat/common/chatEntitlementService.service.d.ts +10 -0
  847. package/vscode/src/vs/workbench/services/configurationResolver/common/configurationResolverSchema.js +16 -16
  848. package/vscode/src/vs/workbench/services/configurationResolver/common/configurationResolverUtils.js +1 -1
  849. package/vscode/src/vs/workbench/services/configurationResolver/common/variableResolver.js +16 -16
  850. package/vscode/src/vs/workbench/services/editor/browser/editorService.d.ts +2 -2
  851. package/vscode/src/vs/workbench/services/editor/browser/editorService.js +7 -3
  852. package/vscode/src/vs/workbench/services/editor/common/editorResolverService.d.ts +7 -4
  853. package/vscode/src/vs/workbench/services/editor/common/editorResolverService.js +14 -3
  854. package/vscode/src/vs/workbench/services/editor/common/editorService.d.ts +8 -0
  855. package/vscode/src/vs/workbench/services/editor/common/editorService.service.d.ts +2 -2
  856. package/vscode/src/vs/workbench/services/environment/browser/environmentService.d.ts +1 -1
  857. package/vscode/src/vs/workbench/services/environment/browser/environmentService.js +9 -9
  858. package/vscode/src/vs/workbench/services/environment/common/environmentService.service.d.ts +0 -1
  859. package/vscode/src/vs/workbench/services/extensionManagement/common/extensionsIcons.js +3 -3
  860. package/vscode/src/vs/workbench/services/extensionRecommendations/common/workspaceExtensionsConfig.js +6 -6
  861. package/vscode/src/vs/workbench/services/extensions/browser/extensionUrlHandler.js +10 -10
  862. package/vscode/src/vs/workbench/services/extensions/common/extensionManifestPropertiesService.d.ts +4 -0
  863. package/vscode/src/vs/workbench/services/extensions/common/extensionManifestPropertiesService.js +39 -1
  864. package/vscode/src/vs/workbench/services/extensions/common/extensionManifestPropertiesService.service.d.ts +1 -0
  865. package/vscode/src/vs/workbench/services/extensions/common/extensionsRegistry.js +88 -88
  866. package/vscode/src/vs/workbench/services/filesConfiguration/common/filesConfigurationService.js +5 -5
  867. package/vscode/src/vs/workbench/services/language/common/languageService.js +24 -24
  868. package/vscode/src/vs/workbench/services/log/common/logConstants.js +1 -1
  869. package/vscode/src/vs/workbench/services/policies/common/accountPolicyService.d.ts +43 -0
  870. package/vscode/src/vs/workbench/services/policies/common/accountPolicyService.js +33 -0
  871. package/vscode/src/vs/workbench/services/policies/common/accountPolicyService.service.d.ts +14 -0
  872. package/vscode/src/vs/workbench/services/policies/common/accountPolicyService.service.js +6 -0
  873. package/vscode/src/vs/workbench/services/preferences/browser/keybindingsEditorInput.js +2 -2
  874. package/vscode/src/vs/workbench/services/preferences/browser/keybindingsEditorModel.js +7 -7
  875. package/vscode/src/vs/workbench/services/preferences/common/preferencesEditorInput.js +4 -4
  876. package/vscode/src/vs/workbench/services/preferences/common/preferencesModels.js +2 -2
  877. package/vscode/src/vs/workbench/services/preferences/common/preferencesValidation.js +30 -30
  878. package/vscode/src/vs/workbench/services/remote/common/remoteExplorerService.js +8 -8
  879. package/vscode/src/vs/workbench/services/remote/common/tunnelModel.js +6 -6
  880. package/vscode/src/vs/workbench/services/search/common/ignoreFile.js +7 -2
  881. package/vscode/src/vs/workbench/services/search/common/queryBuilder.js +3 -3
  882. package/vscode/src/vs/workbench/services/search/common/search.d.ts +1 -1
  883. package/vscode/src/vs/workbench/services/storage/browser/storageService.d.ts +4 -0
  884. package/vscode/src/vs/workbench/services/storage/browser/storageService.js +30 -2
  885. package/vscode/src/vs/workbench/services/textMate/common/TMGrammars.js +9 -9
  886. package/vscode/src/vs/workbench/services/textfile/common/encoding.js +20 -15
  887. package/vscode/src/vs/workbench/services/textfile/common/textFileEditorModel.js +3 -3
  888. package/vscode/src/vs/workbench/services/themes/common/colorExtensionPoint.js +18 -18
  889. package/vscode/src/vs/workbench/services/themes/common/colorThemeData.js +8 -8
  890. package/vscode/src/vs/workbench/services/themes/common/iconExtensionPoint.js +13 -13
  891. package/vscode/src/vs/workbench/services/themes/common/tokenClassificationExtensionPoint.js +24 -24
  892. package/vscode/src/vs/workbench/services/userDataProfile/common/userDataProfile.d.ts +0 -1
  893. package/vscode/src/vs/workbench/services/userDataProfile/common/userDataProfile.js +4 -5
  894. package/vscode/src/vs/workbench/services/userDataProfile/common/userDataProfileIcons.js +1 -1
  895. package/vscode/src/vs/workbench/services/userDataSync/common/userDataSync.js +13 -13
  896. package/vscode/src/vs/workbench/services/workingCopy/common/storedFileWorkingCopy.js +16 -16
  897. package/vscode/src/vs/workbench/services/workspaces/common/workspaceTrust.js +3 -3
  898. package/vscode-dts/vscode.d.ts +3 -1
  899. package/vscode-dts/vscode.proposed.agentsWindowConfiguration.d.ts +8 -0
  900. package/vscode-dts/vscode.proposed.chatDebug.d.ts +31 -0
  901. package/vscode-dts/vscode.proposed.chatInputNotification.d.ts +118 -0
  902. package/vscode-dts/vscode.proposed.chatParticipantAdditions.d.ts +14 -0
  903. package/vscode-dts/vscode.proposed.chatParticipantPrivate.d.ts +32 -0
  904. package/vscode-dts/vscode.proposed.chatPromptFiles.d.ts +29 -0
  905. package/vscode-dts/vscode.proposed.chatProvider.d.ts +2 -8
  906. package/vscode-dts/vscode.proposed.chatSessionCustomizationProvider.d.ts +16 -0
  907. package/vscode-dts/vscode.proposed.chatSessionsProvider.d.ts +68 -10
  908. package/vscode-dts/vscode.proposed.chatStatusItem.d.ts +1 -1
  909. package/vscode-dts/vscode.proposed.customEditorDiffs.d.ts +67 -0
  910. package/vscode-dts/vscode.proposed.customEditorPriority.d.ts +6 -0
  911. package/vscode-dts/vscode.proposed.d.ts +6 -0
  912. package/vscode-dts/vscode.proposed.documentDiff.d.ts +145 -0
  913. package/vscode-dts/vscode.proposed.languageModelPricing.d.ts +70 -0
  914. package/vscode/src/vs/base/common/defaultAccount.d.ts +0 -58
  915. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/animation.d.ts +0 -32
  916. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatHistoryService.service.d.ts +0 -10
  917. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatHistoryService.service.js +0 -6
  918. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpServerEditor.d.ts +0 -72
  919. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpServerEditor.js +0 -998
  920. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpServerEditorInput.d.ts +0 -17
  921. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpServerEditorInput.js +0 -49
  922. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpServerIcons.d.ts +0 -5
  923. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpServerIcons.js +0 -12
  924. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpServerWidgets.d.ts +0 -88
  925. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpServerWidgets.js +0 -464
  926. package/vscode/src/vs/workbench/contrib/mcp/browser/media/mcpServerEditor.css +0 -94
  927. package/vscode/src/vs/workbench/contrib/search/browser/searchActionsFind.d.ts +0 -16
  928. package/vscode/src/vs/workbench/contrib/search/browser/searchActionsFind.js +0 -475
@@ -92,7 +92,9 @@ let ActionItemRenderer = class ActionItemRenderer {
92
92
  _onRemoveItem,
93
93
  _onShowSubmenu,
94
94
  _hasAnySubmenuActions,
95
+ _groupTitleByIndex,
95
96
  _linkHandler,
97
+ _hideDefaultKeybindingTooltip,
96
98
  _keybindingService,
97
99
  _openerService
98
100
  ) {
@@ -100,7 +102,9 @@ let ActionItemRenderer = class ActionItemRenderer {
100
102
  this._onRemoveItem = _onRemoveItem;
101
103
  this._onShowSubmenu = _onShowSubmenu;
102
104
  this._hasAnySubmenuActions = _hasAnySubmenuActions;
105
+ this._groupTitleByIndex = _groupTitleByIndex;
103
106
  this._linkHandler = _linkHandler;
107
+ this._hideDefaultKeybindingTooltip = _hideDefaultKeybindingTooltip;
104
108
  this._keybindingService = _keybindingService;
105
109
  this._openerService = _openerService;
106
110
  }
@@ -118,6 +122,12 @@ let ActionItemRenderer = class ActionItemRenderer {
118
122
  const description = createElement("span");
119
123
  description.className = "description";
120
124
  container.append(description);
125
+ const groupTitle = createElement("span");
126
+ groupTitle.className = "group-title";
127
+ container.append(groupTitle);
128
+ const detail = createElement("span");
129
+ detail.className = "detail";
130
+ container.append(detail);
121
131
  const keybinding = ( new KeybindingLabel(container, OS));
122
132
  const toolbar = createElement("div");
123
133
  toolbar.className = "action-list-item-toolbar";
@@ -130,8 +140,10 @@ let ActionItemRenderer = class ActionItemRenderer {
130
140
  container,
131
141
  icon,
132
142
  text,
143
+ detail,
133
144
  badge,
134
145
  description,
146
+ groupTitle,
135
147
  keybinding,
136
148
  toolbar,
137
149
  submenuIndicator,
@@ -204,6 +216,21 @@ let ActionItemRenderer = class ActionItemRenderer {
204
216
  data.description.textContent = "";
205
217
  data.description.style.display = "none";
206
218
  }
219
+ const groupTitleText = this._groupTitleByIndex.get(_index);
220
+ if (groupTitleText) {
221
+ data.groupTitle.textContent = groupTitleText;
222
+ data.groupTitle.style.display = "";
223
+ } else {
224
+ data.groupTitle.textContent = "";
225
+ data.groupTitle.style.display = "none";
226
+ }
227
+ if (element.detail) {
228
+ data.detail.textContent = stripNewlines(element.detail);
229
+ data.detail.style.display = "";
230
+ } else {
231
+ data.detail.textContent = "";
232
+ data.detail.style.display = "none";
233
+ }
207
234
  const actionTitle = this._keybindingService.lookupKeybinding(acceptSelectedActionCommand)?.getLabel();
208
235
  const previewTitle = this._keybindingService.lookupKeybinding(previewSelectedActionCommand)?.getLabel();
209
236
  data.container.classList.toggle("option-disabled", !!element.disabled);
@@ -213,11 +240,13 @@ let ActionItemRenderer = class ActionItemRenderer {
213
240
  data.container.title = element.tooltip;
214
241
  } else if (element.disabled) {
215
242
  data.container.title = element.label;
243
+ } else if (this._hideDefaultKeybindingTooltip) {
244
+ data.container.title = "";
216
245
  } else if (actionTitle && previewTitle) {
217
246
  if (this._supportsPreview && element.canPreview) {
218
- data.container.title = ( localize(1778, "{0} to Apply, {1} to Preview", actionTitle, previewTitle));
247
+ data.container.title = ( localize(1790, "{0} to Apply, {1} to Preview", actionTitle, previewTitle));
219
248
  } else {
220
- data.container.title = ( localize(1779, "{0} to Apply", actionTitle));
249
+ data.container.title = ( localize(1791, "{0} to Apply", actionTitle));
221
250
  }
222
251
  } else {
223
252
  data.container.title = "";
@@ -227,10 +256,10 @@ let ActionItemRenderer = class ActionItemRenderer {
227
256
  if (element.onRemove) {
228
257
  toolbarActions.push(toAction({
229
258
  id: "actionList.remove",
230
- label: ( localize(1780, "Remove")),
259
+ label: ( localize(1792, "Remove")),
231
260
  class: ThemeIcon.asClassName(Codicon.close),
232
- run: () => {
233
- element.onRemove();
261
+ run: async () => {
262
+ await element.onRemove();
234
263
  this._onRemoveItem?.(element);
235
264
  }
236
265
  }));
@@ -268,7 +297,7 @@ let ActionItemRenderer = class ActionItemRenderer {
268
297
  templateData.elementDisposables.dispose();
269
298
  }
270
299
  };
271
- ActionItemRenderer = ( __decorate([( __param(5, IKeybindingService)), ( __param(6, IOpenerService))], ActionItemRenderer));
300
+ ActionItemRenderer = ( __decorate([( __param(7, IKeybindingService)), ( __param(8, IOpenerService))], ActionItemRenderer));
272
301
  class AcceptSelectedEvent extends UIEvent {
273
302
  constructor() {
274
303
  super("acceptSelectedAction");
@@ -303,7 +332,6 @@ let ActionListWidget = ActionListWidget_1 = class ActionListWidget extends Dispo
303
332
  this._keybindingService = _keybindingService;
304
333
  this._openerService = _openerService;
305
334
  this._instantiationService = _instantiationService;
306
- this._baseLineHeight = 24;
307
335
  this._headerLineHeight = 24;
308
336
  this._separatorLineHeight = 8;
309
337
  this.cts = this._register(( new CancellationTokenSource()));
@@ -313,14 +341,15 @@ let ActionListWidget = ActionListWidget_1 = class ActionListWidget extends Dispo
313
341
  this._suppressHover = false;
314
342
  this._hasLaidOut = false;
315
343
  this._filterCts = this._register(( new MutableDisposable()));
344
+ this._groupTitleByIndex = ( new Map());
316
345
  this._onDidRequestLayout = this._register(( new Emitter()));
317
346
  this.onDidRequestLayout = this._onDidRequestLayout.event;
318
347
  this.domNode = createElement("div");
319
348
  this.domNode.classList.add("actionList");
320
- if (this._options?.descriptionBelow) {
321
- this.domNode.classList.add("description-below");
349
+ if (this._options?.inlineDescription) {
350
+ this.domNode.classList.add("inline-description");
322
351
  }
323
- this._actionLineHeight = this._options?.descriptionBelow ? 48 : 24;
352
+ this._actionLineHeight = 24;
324
353
  this._submenuContainer = createElement("div");
325
354
  this._submenuContainer.className = "action-list-submenu-panel action-widget";
326
355
  this._submenuContainer.style.display = "none";
@@ -353,7 +382,9 @@ let ActionListWidget = ActionListWidget_1 = class ActionListWidget extends Dispo
353
382
  item => this._removeItem(item),
354
383
  item => this._showSubmenuForItem(item),
355
384
  hasAnySubmenuActions,
385
+ this._groupTitleByIndex,
356
386
  this._options?.linkHandler,
387
+ this._options?.hideDefaultKeybindingTooltip ?? false,
357
388
  this._keybindingService,
358
389
  this._openerService
359
390
  )), ( new HeaderRenderer()), ( new SeparatorRenderer())], {
@@ -366,21 +397,27 @@ let ActionListWidget = ActionListWidget_1 = class ActionListWidget extends Dispo
366
397
  getAriaLabel: element => {
367
398
  if (element.kind === ActionListItemKind.Action) {
368
399
  let label = element.label ? stripNewlines(element?.label) : "";
400
+ if (element.detail) {
401
+ label = label + ", " + stripNewlines(element.detail);
402
+ }
369
403
  if (element.description) {
370
404
  const descText = typeof element.description === "string" ? element.description : element.description.value;
371
405
  label = label + ", " + stripNewlines(descText);
372
406
  }
407
+ if (element.group?.title) {
408
+ label = label + ", " + element.group.title;
409
+ }
373
410
  if (element.disabled) {
374
- label = ( localize(1781, "{0}, Disabled Reason: {1}", label, element.disabled));
411
+ label = ( localize(1793, "{0}, Disabled Reason: {1}", label, element.disabled));
375
412
  }
376
413
  if (element.submenuActions?.length) {
377
- label = ( localize(1782, "{0}, use right arrow to access options", label));
414
+ label = ( localize(1794, "{0}, use right arrow to access options", label));
378
415
  }
379
416
  return label;
380
417
  }
381
418
  return null;
382
419
  },
383
- getWidgetAriaLabel: () => ( localize(1783, "Action Widget")),
420
+ getWidgetAriaLabel: () => ( localize(1795, "Action Widget")),
384
421
  getRole: e => {
385
422
  switch (e.kind) {
386
423
  case ActionListItemKind.Action:
@@ -401,29 +438,40 @@ let ActionListWidget = ActionListWidget_1 = class ActionListWidget extends Dispo
401
438
  this._register(this._list.onDidChangeFocus(() => this.onFocus()));
402
439
  this._register(this._list.onDidChangeSelection(e => this.onListSelection(e)));
403
440
  this._allMenuItems = [...items];
404
- if (this._options?.showFilter) {
441
+ if (this._options?.showFilter || this._options?.secondaryHeading) {
405
442
  this._filterContainer = createElement("div");
406
443
  this._filterContainer.className = "action-list-filter";
407
444
  const filterRow = append(this._filterContainer, $(".action-list-filter-row"));
408
- this._filterInput = createElement("input");
409
- this._filterInput.type = "text";
410
- this._filterInput.className = "action-list-filter-input";
411
- this._filterInput.placeholder = this._options?.filterPlaceholder ?? ( localize(1784, "Search..."));
412
- this._filterInput.setAttribute("aria-label", ( localize(1785, "Filter items")));
413
- filterRow.appendChild(this._filterInput);
414
- const filterActions = this._options?.filterActions ?? [];
415
- if (filterActions.length > 0) {
416
- const filterActionsContainer = append(filterRow, $(".action-list-filter-actions"));
417
- const filterActionBar = this._register(( new ActionBar(filterActionsContainer)));
418
- filterActionBar.push(filterActions, {
419
- icon: true,
420
- label: false
421
- });
445
+ if (this._options?.showFilter) {
446
+ this._filterInput = createElement("input");
447
+ this._filterInput.type = "text";
448
+ this._filterInput.className = "action-list-filter-input";
449
+ this._filterInput.placeholder = this._options?.filterPlaceholder ?? ( localize(1796, "Search..."));
450
+ this._filterInput.setAttribute("aria-label", ( localize(1797, "Filter items")));
451
+ filterRow.appendChild(this._filterInput);
452
+ const filterActions = this._options?.filterActions ?? [];
453
+ if (filterActions.length > 0) {
454
+ const filterActionsContainer = append(filterRow, $(".action-list-filter-actions"));
455
+ const filterActionBar = this._register(( new ActionBar(filterActionsContainer)));
456
+ filterActionBar.push(filterActions, {
457
+ icon: true,
458
+ label: false
459
+ });
460
+ }
461
+ this._register(addDisposableListener(this._filterInput, "input", () => {
462
+ this._filterText = this._filterInput.value;
463
+ this._applyOrUpdateFilter();
464
+ }));
422
465
  }
423
- this._register(addDisposableListener(this._filterInput, "input", () => {
424
- this._filterText = this._filterInput.value;
425
- this._applyOrUpdateFilter();
426
- }));
466
+ if (this._options?.secondaryHeading) {
467
+ const filterLabelEl = append(filterRow, $(".action-list-filter-label"));
468
+ filterLabelEl.textContent = this._options.secondaryHeading;
469
+ }
470
+ }
471
+ if (this._options?.footerText) {
472
+ this._footerContainer = createElement("div");
473
+ this._footerContainer.className = "action-list-footer";
474
+ this._footerContainer.textContent = this._options.footerText;
427
475
  }
428
476
  this._applyFilter();
429
477
  if (this._list.length) {
@@ -493,39 +541,59 @@ let ActionListWidget = ActionListWidget_1 = class ActionListWidget extends Dispo
493
541
  if (focusedIndexes.length > 0) {
494
542
  focusedItem = this._list.element(focusedIndexes[0]);
495
543
  }
496
- for (const item of this._allMenuItems) {
497
- if (item.kind === ActionListItemKind.Header) {
498
- if (isFiltering) {
499
- continue;
544
+ if (isFiltering) {
545
+ let pendingSeparator;
546
+ let filteredSectionItems = [];
547
+ let hasMatchingActionInSection = false;
548
+ const flushFilteredSection = () => {
549
+ if (pendingSeparator && hasMatchingActionInSection) {
550
+ visible.push(pendingSeparator);
500
551
  }
501
- visible.push(item);
502
- continue;
503
- }
504
- if (item.kind === ActionListItemKind.Separator) {
505
- if (isFiltering) {
552
+ visible.push(...filteredSectionItems);
553
+ pendingSeparator = undefined;
554
+ filteredSectionItems = [];
555
+ hasMatchingActionInSection = false;
556
+ };
557
+ const matchesFilter = item => {
558
+ const label = (item.label ?? "").toLowerCase();
559
+ const descValue = typeof item.description === "string" ? item.description : (item.description?.value ?? "");
560
+ return label.includes(filterLower) || descValue.toLowerCase().includes(filterLower);
561
+ };
562
+ for (const item of this._allMenuItems) {
563
+ if (item.kind === ActionListItemKind.Header) {
506
564
  continue;
507
565
  }
508
- if (item.section && ( this._collapsedSections.has(item.section))) {
566
+ if (item.kind === ActionListItemKind.Separator) {
567
+ flushFilteredSection();
568
+ pendingSeparator = item.label ? item : undefined;
509
569
  continue;
510
570
  }
511
- visible.push(item);
512
- continue;
513
- }
514
- if (isFiltering) {
515
571
  if (item.showAlways) {
516
- visible.push(item);
572
+ filteredSectionItems.push(item);
517
573
  continue;
518
574
  }
519
575
  if (item.isSectionToggle) {
520
576
  continue;
521
577
  }
522
- const label = (item.label ?? "").toLowerCase();
523
- const descValue = typeof item.description === "string" ? item.description : item.description?.value ?? "";
524
- const desc = descValue.toLowerCase();
525
- if (label.includes(filterLower) || desc.includes(filterLower)) {
578
+ if (matchesFilter(item)) {
579
+ hasMatchingActionInSection = true;
580
+ filteredSectionItems.push(item);
581
+ }
582
+ }
583
+ flushFilteredSection();
584
+ } else {
585
+ for (const item of this._allMenuItems) {
586
+ if (item.kind === ActionListItemKind.Header) {
526
587
  visible.push(item);
588
+ continue;
589
+ }
590
+ if (item.kind === ActionListItemKind.Separator) {
591
+ if (item.section && ( this._collapsedSections.has(item.section))) {
592
+ continue;
593
+ }
594
+ visible.push(item);
595
+ continue;
527
596
  }
528
- } else {
529
597
  if (item.isSectionToggle && item.section) {
530
598
  const collapsed = ( this._collapsedSections.has(item.section));
531
599
  visible.push({
@@ -543,6 +611,41 @@ let ActionListWidget = ActionListWidget_1 = class ActionListWidget extends Dispo
543
611
  visible.push(item);
544
612
  }
545
613
  }
614
+ const hasActionBefore = [];
615
+ let seenAction = false;
616
+ for (let i = 0; i < visible.length; i++) {
617
+ hasActionBefore[i] = seenAction;
618
+ if (visible[i].kind === ActionListItemKind.Action) {
619
+ seenAction = true;
620
+ }
621
+ }
622
+ const hasActionBeforeNextSeparator = [];
623
+ let seenActionInSection = false;
624
+ for (let i = visible.length - 1; i >= 0; i--) {
625
+ if (visible[i].kind === ActionListItemKind.Action) {
626
+ seenActionInSection = true;
627
+ continue;
628
+ }
629
+ if (visible[i].kind !== ActionListItemKind.Separator) {
630
+ continue;
631
+ }
632
+ hasActionBeforeNextSeparator[i] = seenActionInSection;
633
+ seenActionInSection = false;
634
+ }
635
+ for (let i = visible.length - 1; i >= 0; i--) {
636
+ const item = visible[i];
637
+ if (item.kind !== ActionListItemKind.Separator) {
638
+ continue;
639
+ }
640
+ const hasFollowingActionInSection = hasActionBeforeNextSeparator[i];
641
+ const isLeadingUnlabeledDivider = !item.label && !hasActionBefore[i];
642
+ if (!hasFollowingActionInSection || isLeadingUnlabeledDivider) {
643
+ visible.splice(i, 1);
644
+ }
645
+ }
646
+ if (this._options?.showGroupTitleOnFirstItem) {
647
+ this._recomputeGroupTitles(visible);
648
+ }
546
649
  const filterInputHasFocus = this._filterInput && isActiveElement(this._filterInput);
547
650
  this._list.splice(0, this._list.length, visible);
548
651
  this._onDidRequestLayout.fire();
@@ -568,6 +671,9 @@ let ActionListWidget = ActionListWidget_1 = class ActionListWidget extends Dispo
568
671
  get filterContainer() {
569
672
  return this._filterContainer;
570
673
  }
674
+ get footerContainer() {
675
+ return this._footerContainer;
676
+ }
571
677
  get filterInput() {
572
678
  return this._filterInput;
573
679
  }
@@ -583,6 +689,9 @@ let ActionListWidget = ActionListWidget_1 = class ActionListWidget extends Dispo
583
689
  this._list.domFocus();
584
690
  this._focusCheckedOrFirst();
585
691
  }
692
+ clearFocus() {
693
+ this._list.setFocus([]);
694
+ }
586
695
  getFocusedElement() {
587
696
  const focused = this._list.getFocus();
588
697
  if (focused.length > 0) {
@@ -640,12 +749,9 @@ let ActionListWidget = ActionListWidget_1 = class ActionListWidget extends Dispo
640
749
  case ActionListItemKind.Header:
641
750
  return this._headerLineHeight;
642
751
  case ActionListItemKind.Separator:
643
- return this._separatorLineHeight;
752
+ return item.label ? this._actionLineHeight : this._separatorLineHeight;
644
753
  default:
645
- if (this._options?.descriptionBelow && !item.description) {
646
- return this._baseLineHeight;
647
- }
648
- return this._actionLineHeight;
754
+ return item.detail ? (this._options?.detailItemHeight ?? 48) : this._actionLineHeight;
649
755
  }
650
756
  }
651
757
  computeFullHeight() {
@@ -675,10 +781,13 @@ let ActionListWidget = ActionListWidget_1 = class ActionListWidget extends Dispo
675
781
  computeMaxWidth(minWidth) {
676
782
  const visibleCount = this._list.length;
677
783
  const effectiveMinWidth = Math.max(minWidth, this._options?.minWidth ?? 0);
784
+ const rawMaxWidthCap = this._options?.maxWidth ?? Number.POSITIVE_INFINITY;
785
+ const maxWidthCap = Math.max(rawMaxWidthCap, effectiveMinWidth);
786
+ const clamp = w => Math.min(Math.max(w, effectiveMinWidth), maxWidthCap);
678
787
  let maxWidth = effectiveMinWidth;
679
788
  const totalItemCount = this._allMenuItems.length;
680
789
  if (totalItemCount >= 50) {
681
- return Math.max(380, effectiveMinWidth);
790
+ return clamp(380);
682
791
  }
683
792
  if (totalItemCount > visibleCount) {
684
793
  const visibleItems = [];
@@ -702,7 +811,7 @@ let ActionListWidget = ActionListWidget_1 = class ActionListWidget extends Dispo
702
811
  itemWidths.push(width + this._computeToolbarWidth(allItems[i]));
703
812
  }
704
813
  }
705
- maxWidth = Math.max(...itemWidths, effectiveMinWidth);
814
+ maxWidth = clamp(Math.max(...itemWidths));
706
815
  this._list.splice(0, allItems.length, visibleItems);
707
816
  return maxWidth;
708
817
  }
@@ -716,7 +825,7 @@ let ActionListWidget = ActionListWidget_1 = class ActionListWidget extends Dispo
716
825
  itemWidths.push(width + this._computeToolbarWidth(this._list.element(i)));
717
826
  }
718
827
  }
719
- return Math.max(...itemWidths, effectiveMinWidth);
828
+ return clamp(Math.max(...itemWidths));
720
829
  }
721
830
  focusPrevious() {
722
831
  if (this._filterInput && isActiveElement(this._filterInput)) {
@@ -875,6 +984,17 @@ let ActionListWidget = ActionListWidget_1 = class ActionListWidget extends Dispo
875
984
  this._applyFilter();
876
985
  }
877
986
  }
987
+ _recomputeGroupTitles(items) {
988
+ this._groupTitleByIndex.clear();
989
+ const seenTitles = ( new Set());
990
+ for (let i = 0; i < items.length; i++) {
991
+ const item = items[i];
992
+ if (item.kind === ActionListItemKind.Action && item.group?.title && !( seenTitles.has(item.group.title))) {
993
+ seenTitles.add(item.group.title);
994
+ this._groupTitleByIndex.set(i, item.group.title);
995
+ }
996
+ }
997
+ }
878
998
  _computeToolbarWidth(item) {
879
999
  let actionCount = item.toolbarActions?.length ?? 0;
880
1000
  if (item.onRemove) {
@@ -905,7 +1025,7 @@ let ActionListWidget = ActionListWidget_1 = class ActionListWidget extends Dispo
905
1025
  }
906
1026
  return;
907
1027
  }
908
- this._submenuDisposables.clear();
1028
+ this._hideSubmenu();
909
1029
  }
910
1030
  _showSubmenuForItem(item) {
911
1031
  const index = this._list.indexOf(item);
@@ -926,22 +1046,29 @@ let ActionListWidget = ActionListWidget_1 = class ActionListWidget extends Dispo
926
1046
  let hoverHeader;
927
1047
  const hoverContent = element.hover?.content;
928
1048
  if (hoverContent) {
929
- const markdown = typeof hoverContent === "string" ? ( new MarkdownString(hoverContent)) : hoverContent;
930
- const linkHandler = this._options?.linkHandler;
931
- const rendered = renderMarkdown(markdown, {
932
- actionHandler: url => {
933
- const uri = ( URI.parse(url));
934
- if (linkHandler) {
935
- linkHandler(uri, element);
936
- } else {
937
- this._openerService.open(uri, {
938
- allowCommands: true
939
- });
940
- }
1049
+ if (isHTMLElement(hoverContent)) {
1050
+ hoverHeader = hoverContent;
1051
+ if (element.hover?.disposable) {
1052
+ this._submenuDisposables.add(element.hover.disposable);
941
1053
  }
942
- });
943
- this._submenuDisposables.add(rendered);
944
- hoverHeader = rendered.element;
1054
+ } else {
1055
+ const markdown = typeof hoverContent === "string" ? ( new MarkdownString(hoverContent)) : hoverContent;
1056
+ const linkHandler = this._options?.linkHandler;
1057
+ const rendered = renderMarkdown(markdown, {
1058
+ actionHandler: url => {
1059
+ const uri = ( URI.parse(url));
1060
+ if (linkHandler) {
1061
+ linkHandler(uri, element);
1062
+ } else {
1063
+ this._openerService.open(uri, {
1064
+ allowCommands: true
1065
+ });
1066
+ }
1067
+ }
1068
+ });
1069
+ this._submenuDisposables.add(rendered);
1070
+ hoverHeader = rendered.element;
1071
+ }
945
1072
  hoverHeader.classList.add("action-list-submenu-hover-header");
946
1073
  if (element.submenuActions?.length) {
947
1074
  hoverHeader.classList.add("has-submenu");
@@ -974,6 +1101,9 @@ let ActionListWidget = ActionListWidget_1 = class ActionListWidget extends Dispo
974
1101
  }
975
1102
  for (let ci = 0; ci < group.actions.length; ci++) {
976
1103
  const child = group.actions[ci];
1104
+ const extendedChild = child;
1105
+ const icon = extendedChild.icon ?? ThemeIcon.fromId(child.checked ? Codicon.check.id : Codicon.blank.id);
1106
+ const hoverContent = extendedChild.hoverContent;
977
1107
  submenuItems.push({
978
1108
  item: child,
979
1109
  kind: ActionListItemKind.Action,
@@ -981,10 +1111,13 @@ let ActionListWidget = ActionListWidget_1 = class ActionListWidget extends Dispo
981
1111
  description: child.tooltip || undefined,
982
1112
  group: {
983
1113
  title: "",
984
- icon: ThemeIcon.fromId(child.checked ? Codicon.check.id : Codicon.blank.id)
1114
+ icon
985
1115
  },
986
1116
  hideIcon: false,
987
- hover: {}
1117
+ hover: hoverContent ? {
1118
+ content: hoverContent
1119
+ } : {},
1120
+ onRemove: extendedChild.onRemove
988
1121
  });
989
1122
  }
990
1123
  if (gi < groupsWithActions.length - 1) {
@@ -996,6 +1129,7 @@ let ActionListWidget = ActionListWidget_1 = class ActionListWidget extends Dispo
996
1129
  }
997
1130
  for (const action of element.submenuActions) {
998
1131
  if (!(action instanceof SubmenuAction)) {
1132
+ const extendedAction = action;
999
1133
  submenuItems.push({
1000
1134
  item: action,
1001
1135
  kind: ActionListItemKind.Action,
@@ -1005,7 +1139,8 @@ let ActionListWidget = ActionListWidget_1 = class ActionListWidget extends Dispo
1005
1139
  title: ""
1006
1140
  },
1007
1141
  hideIcon: false,
1008
- hover: {}
1142
+ hover: {},
1143
+ onRemove: extendedAction.onRemove
1009
1144
  });
1010
1145
  }
1011
1146
  }
@@ -1032,6 +1167,7 @@ let ActionListWidget = ActionListWidget_1 = class ActionListWidget extends Dispo
1032
1167
  ));
1033
1168
  this._submenuContainer.appendChild(submenuWidget.domNode);
1034
1169
  this._currentSubmenuWidget = submenuWidget;
1170
+ submenuWidget.clearFocus();
1035
1171
  totalHeight = submenuWidget.computeListHeight();
1036
1172
  submenuWidget.layout(totalHeight);
1037
1173
  const submenuMaxWidth = submenuWidget.computeMaxWidth(0);
@@ -1077,11 +1213,15 @@ let ActionListWidget = ActionListWidget_1 = class ActionListWidget extends Dispo
1077
1213
  const hoverHeaderHeight = hoverHeader ? hoverHeader.offsetHeight : 0;
1078
1214
  const totalPanelHeight = totalHeight + hoverHeaderHeight;
1079
1215
  const viewportHeight = targetWindow.innerHeight;
1080
- let top = anchorRect.top - parentRect.top - 4;
1216
+ const anchorHeight = anchorRect.height;
1217
+ let top = anchorRect.top - parentRect.top + (anchorHeight - totalPanelHeight) / 2;
1081
1218
  const panelBottom = parentRect.top + top + totalPanelHeight;
1082
1219
  if (panelBottom > viewportHeight) {
1083
1220
  top -= (panelBottom - viewportHeight + 8);
1084
1221
  }
1222
+ if (parentRect.top + top < 0) {
1223
+ top = -parentRect.top;
1224
+ }
1085
1225
  this._submenuContainer.style.top = `${top}px`;
1086
1226
  }
1087
1227
  _hideSubmenu() {
@@ -1168,8 +1308,13 @@ let ActionListWidget = ActionListWidget_1 = class ActionListWidget extends Dispo
1168
1308
  }
1169
1309
  }
1170
1310
  } else if (element && element.hover?.content && typeof e.index === "number") {
1171
- this._hideSubmenu();
1172
- this._scheduleSubmenuShow(element, e.index);
1311
+ if (this._currentSubmenuElement === element) {
1312
+ this._cancelSubmenuHide();
1313
+ this._cancelSubmenuShow();
1314
+ } else {
1315
+ this._hideSubmenu();
1316
+ this._scheduleSubmenuShow(element, e.index);
1317
+ }
1173
1318
  }
1174
1319
  }
1175
1320
  onListClick(e) {
@@ -1186,6 +1331,9 @@ let ActionList = class ActionList extends Disposable {
1186
1331
  get filterContainer() {
1187
1332
  return this._widget.filterContainer;
1188
1333
  }
1334
+ get footerContainer() {
1335
+ return this._widget.footerContainer;
1336
+ }
1189
1337
  get filterInput() {
1190
1338
  return this._widget.filterInput;
1191
1339
  }
@@ -1263,21 +1411,24 @@ let ActionList = class ActionList extends Disposable {
1263
1411
  computeHeight() {
1264
1412
  const listHeight = this._widget.computeListHeight();
1265
1413
  const filterHeight = this._widget.filterContainer ? 36 : 0;
1266
- const padding = 10;
1414
+ const footerHeight = this._widget.footerContainer ? 32 : 0;
1415
+ const chromeHeight = filterHeight + footerHeight;
1267
1416
  const targetWindow = getWindow(this.domNode);
1268
1417
  let availableHeight;
1269
1418
  if (this.hasDynamicHeight()) {
1270
1419
  const viewportHeight = targetWindow.innerHeight;
1271
1420
  const anchorRect = getAnchorRect(this._anchor);
1272
1421
  const anchorTopInViewport = anchorRect.top - targetWindow.pageYOffset;
1273
- const spaceBelow = viewportHeight - anchorTopInViewport - anchorRect.height - padding;
1274
- const spaceAbove = anchorTopInViewport - padding;
1422
+ const bottomGap = 30;
1423
+ const spaceBelow = viewportHeight - anchorTopInViewport - anchorRect.height - bottomGap;
1424
+ const spaceAbove = anchorTopInViewport;
1275
1425
  if (this._showAbove === undefined) {
1276
- const fullHeight = filterHeight + this._widget.computeFullHeight();
1426
+ const fullHeight = chromeHeight + this._widget.computeFullHeight();
1277
1427
  this._showAbove = fullHeight > spaceBelow && spaceAbove > spaceBelow;
1278
1428
  }
1279
1429
  availableHeight = this._showAbove ? spaceAbove : spaceBelow;
1280
1430
  } else {
1431
+ const padding = 10;
1281
1432
  const windowHeight = this._layoutService.getContainer(targetWindow).clientHeight;
1282
1433
  const widgetTop = this.domNode.getBoundingClientRect().top;
1283
1434
  availableHeight = widgetTop > 0 ? windowHeight - widgetTop - padding : windowHeight * 0.7;
@@ -1285,18 +1436,19 @@ let ActionList = class ActionList extends Disposable {
1285
1436
  const viewportMaxHeight = Math.floor(targetWindow.innerHeight * 0.6);
1286
1437
  const actionLineHeight = this._widget.lineHeight;
1287
1438
  const maxHeight = Math.min(
1288
- Math.max(availableHeight, actionLineHeight * 3 + filterHeight),
1439
+ Math.max(availableHeight, actionLineHeight * 3 + chromeHeight),
1289
1440
  viewportMaxHeight
1290
1441
  );
1291
- const height = Math.min(listHeight + filterHeight, maxHeight);
1292
- return height - filterHeight;
1442
+ const height = Math.min(listHeight + chromeHeight, maxHeight);
1443
+ return height - chromeHeight;
1293
1444
  }
1294
1445
  layout(minWidth) {
1295
1446
  this._hasLaidOut = true;
1296
1447
  this._lastMinWidth = minWidth;
1297
1448
  const listHeight = this.computeHeight();
1298
1449
  this._widget.layout(listHeight);
1299
- this._cachedMaxWidth = this._widget.computeMaxWidth(minWidth);
1450
+ const computedWidth = this._widget.computeMaxWidth(minWidth);
1451
+ this._cachedMaxWidth = computedWidth;
1300
1452
  this._widget.layout(listHeight, this._cachedMaxWidth);
1301
1453
  return this._cachedMaxWidth;
1302
1454
  }