@codingame/monaco-vscode-api 2.2.2 → 3.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +16 -3
- package/api.js +8 -10
- package/assets/continue-tb.png +0 -0
- package/assets/pause-tb.png +0 -0
- package/assets/restart-tb.png +0 -0
- package/assets/run-with-debugging-tb.png +0 -0
- package/assets/stepinto-tb.png +0 -0
- package/assets/stepout-tb.png +0 -0
- package/assets/stepover-tb.png +0 -0
- package/assets/stop-tb.png +0 -0
- package/contributions.js +5 -3
- package/debugProtocol.d.ts +143 -51
- package/extensions.d.ts +9 -5
- package/external/@xterm/xterm/typings/xterm.d.ts +2 -2
- package/missing-services.js +63 -13
- package/monaco.js +30 -14
- package/package.json +8 -8
- package/service-override/tools/editor.js +31 -8
- package/service-override/tools/editorAssets.js +3 -0
- package/service-override/tools/views.d.ts +5 -6
- package/service-override/tools/views.js +10 -11
- package/services.d.ts +8 -5
- package/services.js +19 -4
- package/vscode/src/vs/base/browser/browser.js +2 -66
- package/vscode/src/vs/base/browser/dom.js +10 -22
- package/vscode/src/vs/base/browser/markdownRenderer.js +13 -5
- package/vscode/src/vs/base/browser/mouseEvent.js +9 -3
- package/vscode/src/vs/base/browser/pixelRatio.js +72 -0
- package/vscode/src/vs/base/browser/ui/actionbar/actionViewItems.js +4 -3
- package/vscode/src/vs/base/browser/ui/actionbar/actionbar.css.js +1 -1
- package/vscode/src/vs/base/browser/ui/actionbar/actionbar.d.ts +1 -1
- package/vscode/src/vs/base/browser/ui/actionbar/actionbar.js +3 -4
- package/vscode/src/vs/base/browser/ui/button/button.js +16 -4
- package/vscode/src/vs/base/browser/ui/codicons/codicon/codicon.css.js +1 -1
- package/vscode/src/vs/base/browser/ui/contextview/contextview.js +1 -3
- package/vscode/src/vs/base/browser/ui/dropdown/dropdown.js +8 -1
- package/vscode/src/vs/base/browser/ui/dropdown/dropdownActionViewItem.js +6 -2
- package/vscode/src/vs/base/browser/ui/hover/hoverDelegate.js +22 -0
- package/vscode/src/vs/base/browser/ui/iconLabel/iconHoverDelegate.d.ts +1 -0
- package/vscode/src/vs/base/browser/ui/iconLabel/iconLabel.js +3 -2
- package/vscode/src/vs/base/browser/ui/iconLabel/iconLabelHover.js +2 -1
- package/vscode/src/vs/base/browser/ui/list/listView.js +27 -42
- package/vscode/src/vs/base/browser/ui/menu/menu.js +0 -4
- package/vscode/src/vs/base/browser/ui/selectBox/selectBoxCustom.js +7 -4
- package/vscode/src/vs/base/browser/ui/table/tableWidget.js +8 -4
- package/vscode/src/vs/base/browser/ui/toggle/toggle.js +4 -2
- package/vscode/src/vs/base/browser/ui/toolbar/toolbar.js +7 -2
- package/vscode/src/vs/base/browser/ui/tree/asyncDataTree.js +1 -0
- package/vscode/src/vs/base/common/actions.js +1 -1
- package/vscode/src/vs/base/common/assert.js +1 -1
- package/vscode/src/vs/base/common/async.js +11 -7
- package/vscode/src/vs/base/common/codicons.d.ts +4 -0
- package/vscode/src/vs/base/common/codicons.js +4 -0
- package/vscode/src/vs/base/common/date.js +55 -1
- package/vscode/src/vs/base/common/event.js +5 -3
- package/vscode/src/vs/base/common/filters.js +1 -1
- package/vscode/src/vs/base/common/hotReload.js +5 -4
- package/vscode/src/vs/base/common/lifecycle.js +158 -1
- package/vscode/src/vs/base/common/network.js +3 -0
- package/vscode/src/vs/base/common/observableInternal/autorun.js +22 -36
- package/vscode/src/vs/base/common/observableInternal/base.js +3 -82
- package/vscode/src/vs/base/common/observableInternal/debugName.js +100 -0
- package/vscode/src/vs/base/common/observableInternal/derived.js +14 -46
- package/vscode/src/vs/base/common/observableInternal/promise.js +94 -0
- package/vscode/src/vs/base/common/observableInternal/utils.js +5 -27
- package/vscode/src/vs/base/common/prefixTree.js +56 -22
- package/vscode/src/vs/base/common/product.d.ts +1 -1
- package/vscode/src/vs/base/common/strings.js +9 -1
- package/vscode/src/vs/editor/browser/config/charWidthReader.js +5 -6
- package/vscode/src/vs/editor/browser/config/editorConfiguration.js +7 -4
- package/vscode/src/vs/editor/browser/config/fontMeasurements.js +39 -26
- package/vscode/src/vs/editor/browser/controller/mouseHandler.js +10 -10
- package/vscode/src/vs/editor/browser/controller/mouseTarget.js +4 -4
- package/vscode/src/vs/editor/browser/controller/textAreaHandler.js +12 -12
- package/vscode/src/vs/editor/browser/coreCommands.js +2 -2
- package/vscode/src/vs/editor/browser/view/viewController.js +3 -3
- package/vscode/src/vs/editor/browser/view/viewLayer.js +1 -1
- package/vscode/src/vs/editor/browser/view/viewOverlays.js +6 -6
- package/vscode/src/vs/editor/browser/view.js +2 -2
- package/vscode/src/vs/editor/browser/viewParts/blockDecorations/blockDecorations.js +1 -1
- package/vscode/src/vs/editor/browser/viewParts/contentWidgets/contentWidgets.js +5 -5
- package/vscode/src/vs/editor/browser/viewParts/currentLineHighlight/currentLineHighlight.js +8 -8
- package/vscode/src/vs/editor/browser/viewParts/decorations/decorations.js +2 -2
- package/vscode/src/vs/editor/browser/viewParts/editorScrollbar/editorScrollbar.js +11 -11
- package/vscode/src/vs/editor/browser/viewParts/glyphMargin/glyphMargin.js +4 -4
- package/vscode/src/vs/editor/browser/viewParts/indentGuides/indentGuides.js +4 -4
- package/vscode/src/vs/editor/browser/viewParts/lineNumbers/lineNumbers.js +4 -4
- package/vscode/src/vs/editor/browser/viewParts/lines/viewLine.js +4 -4
- package/vscode/src/vs/editor/browser/viewParts/lines/viewLines.js +13 -13
- package/vscode/src/vs/editor/browser/viewParts/linesDecorations/linesDecorations.js +2 -2
- package/vscode/src/vs/editor/browser/viewParts/margin/margin.js +2 -2
- package/vscode/src/vs/editor/browser/viewParts/minimap/minimap.js +7 -7
- package/vscode/src/vs/editor/browser/viewParts/overlayWidgets/overlayWidgets.js +2 -2
- package/vscode/src/vs/editor/browser/viewParts/overviewRuler/decorationsOverviewRuler.js +7 -7
- package/vscode/src/vs/editor/browser/viewParts/overviewRuler/overviewRuler.js +6 -6
- package/vscode/src/vs/editor/browser/viewParts/rulers/rulers.js +2 -2
- package/vscode/src/vs/editor/browser/viewParts/scrollDecoration/scrollDecoration.js +3 -3
- package/vscode/src/vs/editor/browser/viewParts/selections/selections.js +4 -4
- package/vscode/src/vs/editor/browser/viewParts/viewCursors/viewCursor.js +2 -2
- package/vscode/src/vs/editor/browser/viewParts/viewCursors/viewCursors.js +2 -2
- package/vscode/src/vs/editor/browser/viewParts/viewZones/viewZones.js +5 -5
- package/vscode/src/vs/editor/browser/viewParts/whitespace/whitespace.js +5 -5
- package/vscode/src/vs/editor/browser/widget/codeEditorContributions.js +2 -2
- package/vscode/src/vs/editor/browser/widget/codeEditorWidget.js +34 -32
- package/vscode/src/vs/editor/browser/widget/diffEditor/components/accessibleDiffViewer.css.js +1 -1
- package/vscode/src/vs/editor/browser/widget/diffEditor/components/accessibleDiffViewer.js +82 -37
- package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorEditors.js +3 -1
- package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/diffEditorViewZones.js +7 -7
- package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/inlineDiffDeletedCodeMargin.js +3 -3
- package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/renderLines.js +6 -6
- package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditor.contribution.js +10 -16
- package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorViewModel.js +2 -1
- package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorWidget.js +12 -12
- package/vscode/src/vs/editor/browser/widget/diffEditor/features/movedBlocksLinesFeature.js +2 -4
- package/vscode/src/vs/editor/browser/widget/diffEditor/features/overviewRulerFeature.js +1 -1
- package/vscode/src/vs/editor/browser/widget/diffEditor/features/revertButtonsFeature.js +17 -18
- package/vscode/src/vs/editor/browser/widget/diffEditor/utils.js +1 -1
- package/vscode/src/vs/editor/browser/widget/embeddedCodeEditorWidget.js +4 -4
- package/vscode/src/vs/editor/browser/widget/markdownRenderer/browser/renderedMarkdown.css.js +1 -1
- package/vscode/src/vs/editor/browser/widget/multiDiffEditorWidget/colors.js +2 -2
- package/vscode/src/vs/editor/browser/widget/multiDiffEditorWidget/diffEditorItemTemplate.js +43 -16
- package/vscode/src/vs/editor/browser/widget/multiDiffEditorWidget/multiDiffEditorWidget.js +3 -0
- package/vscode/src/vs/editor/browser/widget/multiDiffEditorWidget/multiDiffEditorWidgetImpl.js +42 -8
- package/vscode/src/vs/editor/browser/widget/multiDiffEditorWidget/style.css.js +1 -1
- package/vscode/src/vs/editor/common/config/editorOptions.d.ts +18 -1
- package/vscode/src/vs/editor/common/config/editorOptions.js +188 -107
- package/vscode/src/vs/editor/common/config/fontInfo.js +2 -2
- package/vscode/src/vs/editor/common/cursorCommon.js +14 -14
- package/vscode/src/vs/editor/common/editorContextKeys.js +1 -1
- package/vscode/src/vs/editor/common/languageSelector.js +12 -1
- package/vscode/src/vs/editor/common/languages.d.ts +28 -1
- package/vscode/src/vs/editor/common/languages.js +6 -1
- package/vscode/src/vs/editor/common/services/languageFeatures.d.ts +3 -1
- package/vscode/src/vs/editor/common/services/languageFeaturesService.js +2 -0
- package/vscode/src/vs/editor/common/standalone/standaloneEnums.js +96 -86
- package/vscode/src/vs/editor/common/standaloneStrings.js +5 -5
- package/vscode/src/vs/editor/common/viewLayout/viewLayout.js +19 -19
- package/vscode/src/vs/editor/common/viewModel/monospaceLineBreaksComputer.js +2 -2
- package/vscode/src/vs/editor/common/viewModel/viewModelImpl.js +12 -12
- package/vscode/src/vs/editor/contrib/bracketMatching/browser/bracketMatching.js +3 -3
- package/vscode/src/vs/editor/contrib/clipboard/browser/clipboard.js +6 -6
- package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionController.js +5 -1
- package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionModel.js +3 -3
- package/vscode/src/vs/editor/contrib/codeAction/browser/lightBulbWidget.js +2 -2
- package/vscode/src/vs/editor/contrib/codelens/browser/codelensController.js +1 -1
- package/vscode/src/vs/editor/contrib/colorPicker/browser/colorContributions.js +1 -1
- package/vscode/src/vs/editor/contrib/colorPicker/browser/colorDetector.js +3 -3
- package/vscode/src/vs/editor/contrib/colorPicker/browser/colorHoverParticipant.js +2 -2
- package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerWidget.js +3 -3
- package/vscode/src/vs/editor/contrib/colorPicker/browser/standaloneColorPickerActions.js +2 -3
- package/vscode/src/vs/editor/contrib/contextmenu/browser/contextmenu.js +3 -3
- package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/copyPasteController.js +3 -3
- package/vscode/src/vs/editor/contrib/find/browser/findController.js +1 -1
- package/vscode/src/vs/editor/contrib/find/browser/findModel.js +6 -6
- package/vscode/src/vs/editor/contrib/find/browser/findWidget.css.js +1 -1
- package/vscode/src/vs/editor/contrib/find/browser/findWidget.js +9 -62
- package/vscode/src/vs/editor/contrib/folding/browser/folding.js +3 -3
- package/vscode/src/vs/editor/contrib/format/browser/format.js +5 -5
- package/vscode/src/vs/editor/contrib/format/browser/formatActions.js +5 -5
- package/vscode/src/vs/editor/contrib/gotoError/browser/gotoErrorWidget.js +1 -1
- package/vscode/src/vs/editor/contrib/gotoError/browser/markerNavigationService.js +1 -1
- package/vscode/src/vs/editor/contrib/gotoSymbol/browser/goToCommands.js +58 -84
- package/vscode/src/vs/editor/contrib/gotoSymbol/browser/link/clickLinkGesture.js +3 -3
- package/vscode/src/vs/editor/contrib/gotoSymbol/browser/link/goToDefinitionAtPosition.js +1 -1
- package/vscode/src/vs/editor/contrib/gotoSymbol/browser/peek/referencesController.js +8 -2
- package/vscode/src/vs/editor/contrib/hover/browser/contentHover.js +1 -1
- package/vscode/src/vs/editor/contrib/hover/browser/hover.js +1 -1
- package/vscode/src/vs/editor/contrib/hover/browser/marginHover.js +1 -1
- package/vscode/src/vs/editor/contrib/hover/browser/markdownHoverParticipant.js +1 -1
- package/vscode/src/vs/editor/contrib/hover/browser/markerHoverParticipant.js +18 -15
- package/vscode/src/vs/editor/contrib/inlayHints/browser/inlayHintsController.js +3 -3
- package/vscode/src/vs/editor/contrib/inlayHints/browser/inlayHintsHover.js +1 -1
- package/vscode/src/vs/editor/contrib/inlayHints/browser/inlayHintsLocations.js +2 -2
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/commands.js +1 -1
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/ghostText.js +14 -6
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/ghostTextWidget.js +10 -10
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/hoverParticipant.js +1 -1
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionContextKeys.js +3 -3
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsController.js +54 -27
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsHintsWidget.js +1 -1
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsModel.js +115 -45
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsSource.js +1 -1
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/singleTextEdit.js +6 -5
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/utils.js +46 -1
- package/vscode/src/vs/editor/contrib/inlineEdit/browser/commandIds.js +5 -0
- package/vscode/src/vs/editor/contrib/inlineEdit/browser/commands.js +145 -0
- package/vscode/src/vs/editor/contrib/inlineEdit/browser/ghostTextWidget.js +188 -0
- package/vscode/src/vs/editor/contrib/inlineEdit/browser/hoverParticipant.js +91 -0
- package/vscode/src/vs/editor/contrib/inlineEdit/browser/inlineEdit.contribution.js +12 -0
- package/vscode/src/vs/editor/contrib/inlineEdit/browser/inlineEdit.css.js +4 -0
- package/vscode/src/vs/editor/contrib/inlineEdit/browser/inlineEditController.js +309 -0
- package/vscode/src/vs/editor/contrib/inlineEdit/browser/inlineEditHintsWidget.css.js +4 -0
- package/vscode/src/vs/editor/contrib/inlineEdit/browser/inlineEditHintsWidget.js +193 -0
- package/vscode/src/vs/editor/contrib/inlineProgress/browser/inlineProgress.js +2 -2
- package/vscode/src/vs/editor/contrib/linesOperations/browser/linesOperations.js +1 -1
- package/vscode/src/vs/editor/contrib/linkedEditing/browser/linkedEditing.js +2 -2
- package/vscode/src/vs/editor/contrib/links/browser/links.js +5 -5
- package/vscode/src/vs/editor/contrib/longLinesHelper/browser/longLinesHelper.js +1 -1
- package/vscode/src/vs/editor/contrib/multicursor/browser/multicursor.js +10 -10
- package/vscode/src/vs/editor/contrib/parameterHints/browser/parameterHintsModel.js +3 -3
- package/vscode/src/vs/editor/contrib/peekView/browser/peekView.js +1 -1
- package/vscode/src/vs/editor/contrib/quickAccess/browser/gotoLineQuickAccess.js +1 -1
- package/vscode/src/vs/editor/contrib/readOnlyMessage/browser/contribution.js +1 -1
- package/vscode/src/vs/editor/contrib/rename/browser/rename.js +143 -9
- package/vscode/src/vs/editor/contrib/rename/browser/renameInputField.css.js +1 -1
- package/vscode/src/vs/editor/contrib/rename/browser/renameInputField.js +347 -17
- package/vscode/src/vs/editor/contrib/smartSelect/browser/smartSelect.js +1 -1
- package/vscode/src/vs/editor/contrib/snippet/browser/snippetSession.js +2 -2
- package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollActions.js +23 -37
- package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollController.js +11 -10
- package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollProvider.js +2 -2
- package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollWidget.js +8 -8
- package/vscode/src/vs/editor/contrib/suggest/browser/suggestController.js +4 -4
- package/vscode/src/vs/editor/contrib/suggest/browser/suggestInlineCompletions.js +2 -2
- package/vscode/src/vs/editor/contrib/suggest/browser/suggestModel.js +11 -11
- package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidget.js +6 -6
- package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidgetDetails.js +3 -3
- package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidgetRenderer.js +3 -3
- package/vscode/src/vs/editor/contrib/suggest/browser/wordContextKey.js +2 -2
- package/vscode/src/vs/editor/contrib/suggest/browser/wordDistance.js +1 -1
- package/vscode/src/vs/editor/contrib/toggleTabFocusMode/browser/toggleTabFocusMode.js +3 -3
- package/vscode/src/vs/editor/contrib/unicodeHighlighter/browser/unicodeHighlighter.js +3 -3
- package/vscode/src/vs/editor/contrib/unusualLineTerminators/browser/unusualLineTerminators.js +4 -4
- package/vscode/src/vs/editor/contrib/wordHighlighter/browser/wordHighlighter.js +29 -16
- package/vscode/src/vs/editor/contrib/wordOperations/browser/wordOperations.js +3 -3
- package/vscode/src/vs/editor/contrib/zoneWidget/browser/zoneWidget.js +7 -3
- package/vscode/src/vs/editor/editor.api.d.ts +146 -85
- package/vscode/src/vs/editor/standalone/browser/iPadShowKeyboard/iPadShowKeyboard.js +1 -1
- package/vscode/src/vs/editor/standalone/browser/quickInput/standaloneQuickInputService.js +3 -5
- package/vscode/src/vs/editor/standalone/browser/standaloneCodeEditor.js +7 -4
- package/vscode/src/vs/editor/standalone/browser/standaloneServices.js +10 -10
- package/vscode/src/vs/platform/accessibilitySignal/browser/accessibilitySignalService.d.ts +99 -0
- package/vscode/src/vs/platform/accessibilitySignal/browser/accessibilitySignalService.js +608 -0
- package/vscode/src/vs/platform/action/common/actionCommonCategories.d.ts +1 -4
- package/vscode/src/vs/platform/action/common/actionCommonCategories.js +3 -3
- package/vscode/src/vs/platform/actionWidget/browser/actionWidget.js +26 -41
- package/vscode/src/vs/platform/actions/browser/dropdownWithPrimaryActionViewItem.js +6 -4
- package/vscode/src/vs/platform/actions/common/actions.d.ts +11 -0
- package/vscode/src/vs/platform/actions/common/actions.js +11 -0
- package/vscode/src/vs/platform/configuration/common/configuration.d.ts +17 -33
- package/vscode/src/vs/platform/configuration/common/configurationModels.js +42 -29
- package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.js +3 -4
- package/vscode/src/vs/platform/extensions/common/extensions.d.ts +2 -2
- package/vscode/src/vs/platform/hover/browser/hover.js +69 -1
- package/vscode/src/vs/platform/product/common/product.js +1 -1
- package/vscode/src/vs/platform/quickinput/browser/quickInput.js +14 -20
- package/vscode/src/vs/platform/quickinput/browser/quickInputController.js +11 -5
- package/vscode/src/vs/platform/quickinput/browser/quickInputList.js +22 -2
- package/vscode/src/vs/platform/quickinput/browser/quickInputService.js +9 -7
- package/vscode/src/vs/platform/remote/common/remoteAgentConnection.js +2 -5
- package/vscode/src/vs/platform/request/common/request.js +111 -0
- package/vscode/src/vs/platform/terminal/common/capabilities/capabilities.d.ts +1 -0
- package/vscode/src/vs/platform/terminal/common/capabilities/commandDetection/terminalCommand.js +15 -0
- package/vscode/src/vs/platform/terminal/common/capabilities/commandDetectionCapability.js +9 -0
- package/vscode/src/vs/platform/terminal/common/terminal.d.ts +5 -3
- package/vscode/src/vs/platform/theme/common/colorRegistry.js +5 -5
- package/vscode/src/vs/platform/theme/common/tokenClassificationRegistry.js +6 -2
- package/vscode/src/vs/platform/tunnel/common/tunnel.js +267 -1
- package/vscode/src/vs/platform/window/common/window.js +4 -1
- package/vscode/src/vs/platform/workspace/common/workspace.js +2 -1
- package/vscode/src/vs/workbench/api/browser/statusBarExtensionPoint.js +2 -2
- package/vscode/src/vs/workbench/api/browser/viewsExtensionPoint.js +130 -14
- package/vscode/src/vs/workbench/api/common/extHost.api.impl.js +76 -24
- package/vscode/src/vs/workbench/api/common/extHostAuthentication.js +4 -1
- package/vscode/src/vs/workbench/api/common/extHostChat.js +0 -39
- package/vscode/src/vs/workbench/api/common/extHostChatAgents2.js +309 -137
- package/vscode/src/vs/workbench/api/common/extHostChatProvider.js +164 -49
- package/vscode/src/vs/workbench/api/common/extHostChatVariables.js +67 -7
- package/vscode/src/vs/workbench/api/common/extHostComments.js +28 -0
- package/vscode/src/vs/workbench/api/common/extHostDebugService.js +129 -48
- package/vscode/src/vs/workbench/api/common/extHostDocumentData.js +1 -2
- package/vscode/src/vs/workbench/api/common/extHostDocumentsAndEditors.js +1 -1
- package/vscode/src/vs/workbench/api/common/extHostInlineChat.js +5 -4
- package/vscode/src/vs/workbench/api/common/extHostInteractive.js +0 -1
- package/vscode/src/vs/workbench/api/common/extHostLanguageFeatures.js +130 -16
- package/vscode/src/vs/workbench/api/common/extHostNotebook.js +12 -1
- package/vscode/src/vs/workbench/api/common/extHostNotebookDocument.js +3 -4
- package/vscode/src/vs/workbench/api/common/extHostNotebookKernels.js +19 -1
- package/vscode/src/vs/workbench/api/common/extHostSpeech.js +2 -2
- package/vscode/src/vs/workbench/api/common/extHostTypeConverters.js +301 -75
- package/vscode/src/vs/workbench/api/common/extHostTypes.js +127 -45
- package/vscode/src/vs/workbench/api/common/extHostWorkspace.js +46 -7
- package/vscode/src/vs/workbench/api/common/jsonValidationExtensionPoint.js +55 -2
- package/vscode/src/vs/workbench/api/worker/extensionHostWorker.js +1 -1
- package/vscode/src/vs/workbench/browser/actions/developerActions.js +703 -0
- package/vscode/src/vs/workbench/browser/actions/layoutActions.js +146 -99
- package/vscode/src/vs/workbench/browser/actions/listCommands.js +2 -3
- package/vscode/src/vs/workbench/browser/actions/media/actions.css.js +4 -0
- package/vscode/src/vs/workbench/browser/actions/navigationActions.js +300 -0
- package/vscode/src/vs/workbench/browser/actions/textInputActions.js +83 -0
- package/vscode/src/vs/workbench/browser/actions/widgetNavigationCommands.js +3 -4
- package/vscode/src/vs/workbench/browser/actions/windowActions.js +4 -8
- package/vscode/src/vs/workbench/browser/composite.d.ts +2 -1
- package/vscode/src/vs/workbench/browser/composite.js +1 -1
- package/vscode/src/vs/workbench/browser/dnd.js +2 -1
- package/vscode/src/vs/workbench/browser/editor.js +11 -1
- package/vscode/src/vs/workbench/browser/media/style.css.js +1 -1
- package/vscode/src/vs/workbench/browser/panecomposite.d.ts +2 -1
- package/vscode/src/vs/workbench/browser/panecomposite.js +2 -2
- package/vscode/src/vs/workbench/browser/parts/activitybar/activitybarPart.js +4 -6
- package/vscode/src/vs/workbench/browser/parts/activitybar/media/activityaction.css.js +1 -1
- package/vscode/src/vs/workbench/browser/parts/auxiliarybar/auxiliaryBarActions.js +4 -4
- package/vscode/src/vs/workbench/browser/parts/auxiliarybar/auxiliaryBarPart.js +1 -1
- package/vscode/src/vs/workbench/browser/parts/compositeBar.js +1 -1
- package/vscode/src/vs/workbench/browser/parts/compositeBarActions.js +10 -10
- package/vscode/src/vs/workbench/browser/parts/compositePart.js +8 -5
- package/vscode/src/vs/workbench/browser/parts/editor/auxiliaryEditorPart.js +39 -29
- package/vscode/src/vs/workbench/browser/parts/editor/binaryEditor.js +1 -1
- package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbsControl.js +20 -24
- package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbsPicker.js +6 -4
- package/vscode/src/vs/workbench/browser/parts/editor/editor.autosave.contribution.js +2 -3
- package/vscode/src/vs/workbench/browser/parts/editor/editor.contribution.js +52 -54
- package/vscode/src/vs/workbench/browser/parts/editor/editorActions.js +30 -30
- package/vscode/src/vs/workbench/browser/parts/editor/editorAutoSave.js +1 -0
- package/vscode/src/vs/workbench/browser/parts/editor/editorCommands.js +12 -18
- package/vscode/src/vs/workbench/browser/parts/editor/editorConfiguration.js +1 -0
- package/vscode/src/vs/workbench/browser/parts/editor/editorGroupView.js +1 -1
- package/vscode/src/vs/workbench/browser/parts/editor/editorGroupWatermark.js +7 -6
- package/vscode/src/vs/workbench/browser/parts/editor/editorStatus.js +17 -6
- package/vscode/src/vs/workbench/browser/parts/editor/editorTabsControl.js +13 -5
- package/vscode/src/vs/workbench/browser/parts/editor/media/multieditortabscontrol.css.js +1 -1
- package/vscode/src/vs/workbench/browser/parts/editor/multiEditorTabsControl.js +84 -71
- package/vscode/src/vs/workbench/browser/parts/editor/singleEditorTabsControl.js +2 -6
- package/vscode/src/vs/workbench/browser/parts/editor/textDiffEditor.js +4 -1
- package/vscode/src/vs/workbench/browser/parts/editor/textResourceEditor.js +2 -2
- package/vscode/src/vs/workbench/browser/parts/globalCompositeBar.js +350 -35
- package/vscode/src/vs/workbench/browser/parts/media/paneCompositePart.css.js +1 -1
- package/vscode/src/vs/workbench/browser/parts/notifications/notificationsCenter.js +5 -5
- package/vscode/src/vs/workbench/browser/parts/notifications/notificationsCommands.js +3 -3
- package/vscode/src/vs/workbench/browser/parts/paneCompositeBar.js +1 -5
- package/vscode/src/vs/workbench/browser/parts/paneCompositePart.js +9 -6
- package/vscode/src/vs/workbench/browser/parts/panel/panelActions.js +56 -74
- package/vscode/src/vs/workbench/browser/parts/panel/panelPart.js +1 -1
- package/vscode/src/vs/workbench/browser/parts/sidebar/sidebarPart.js +6 -9
- package/vscode/src/vs/workbench/browser/parts/titlebar/menubarControl.js +4 -4
- package/vscode/src/vs/workbench/browser/parts/titlebar/titlebarPart.d.ts +9 -1
- package/vscode/src/vs/workbench/browser/parts/titlebar/windowTitle.js +55 -12
- package/vscode/src/vs/workbench/browser/parts/views/treeView.js +9 -16
- package/vscode/src/vs/workbench/browser/parts/views/viewPane.js +1 -1
- package/vscode/src/vs/workbench/browser/parts/views/viewPaneContainer.d.ts +2 -1
- package/vscode/src/vs/workbench/browser/parts/views/viewPaneContainer.js +4 -4
- package/vscode/src/vs/workbench/browser/quickaccess.js +8 -1
- package/vscode/src/vs/workbench/browser/workbench.contribution.js +22 -20
- package/vscode/src/vs/workbench/common/configuration.js +146 -43
- package/vscode/src/vs/workbench/common/contextkeys.js +4 -4
- package/vscode/src/vs/workbench/common/contributions.d.ts +44 -1
- package/vscode/src/vs/workbench/common/contributions.js +143 -20
- package/vscode/src/vs/workbench/common/editor/diffEditorInput.js +5 -5
- package/vscode/src/vs/workbench/common/editor/editorGroupModel.js +1 -1
- package/vscode/src/vs/workbench/common/editor/editorInput.d.ts +17 -11
- package/vscode/src/vs/workbench/common/editor/editorInput.js +1 -1
- package/vscode/src/vs/workbench/common/editor/sideBySideEditorInput.js +2 -2
- package/vscode/src/vs/workbench/common/editor.d.ts +4 -0
- package/vscode/src/vs/workbench/common/theme.js +11 -1
- package/vscode/src/vs/workbench/common/views.js +1 -3
- package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibilityConfiguration.js +1064 -118
- package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibilityContributions.js +7 -7
- package/vscode/src/vs/workbench/contrib/accessibility/browser/editorAccessibilityHelp.js +5 -5
- package/vscode/src/vs/workbench/contrib/accessibilitySignals/browser/accessibilitySignal.contribution.js +306 -0
- package/vscode/src/vs/workbench/contrib/accessibilitySignals/browser/accessibilitySignalDebuggerContribution.js +46 -0
- package/vscode/src/vs/workbench/contrib/accessibilitySignals/browser/accessibilitySignalLineFeatureContribution.js +177 -0
- package/vscode/src/vs/workbench/contrib/accessibilitySignals/browser/commands.js +163 -0
- package/vscode/src/vs/workbench/contrib/callHierarchy/browser/callHierarchy.contribution.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityHelp.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatActions.js +31 -17
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatExecuteActions.js +11 -17
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQuickInputActions.js +18 -27
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditorInput.js +2 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/chatFollowups.js +34 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/chatInputPart.js +8 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/chatListRenderer.js +142 -109
- package/vscode/src/vs/workbench/contrib/chat/browser/chatMarkdownDecorationsRenderer.js +80 -52
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSlashCommandContentWidget.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatWidget.js +44 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/codeBlockPart.js +230 -74
- package/vscode/src/vs/workbench/contrib/chat/browser/media/chat.css.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/chatAgents.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/common/chatModel.js +87 -29
- package/vscode/src/vs/workbench/contrib/chat/common/chatParserTypes.js +19 -3
- package/vscode/src/vs/workbench/contrib/chat/common/chatProvider.js +18 -3
- package/vscode/src/vs/workbench/contrib/chat/common/chatRequestParser.js +11 -8
- package/vscode/src/vs/workbench/contrib/chat/common/chatService.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/common/chatViewModel.js +11 -5
- package/vscode/src/vs/workbench/contrib/codeActions/browser/codeActions.contribution.js +2 -2
- package/vscode/src/vs/workbench/contrib/codeActions/common/codeActionsExtensionPoint.js +71 -0
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/dictation/editorDictation.css.js +4 -0
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/dictation/editorDictation.js +256 -0
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/diffEditorHelper.js +2 -2
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/editorFeatures.js +3 -4
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/quickaccess/gotoSymbolQuickAccess.js +8 -6
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/saveParticipants.js +11 -11
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleMinimap.js +3 -4
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleRenderControlCharacter.js +2 -3
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleRenderWhitespace.js +2 -3
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleWordWrap.js +9 -10
- package/vscode/src/vs/workbench/contrib/comments/browser/commentFormActions.js +9 -2
- package/vscode/src/vs/workbench/contrib/comments/browser/commentNode.js +27 -13
- package/vscode/src/vs/workbench/contrib/comments/browser/commentReply.js +41 -23
- package/vscode/src/vs/workbench/contrib/comments/browser/commentService.js +15 -7
- package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadAdditionalActions.js +22 -10
- package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadBody.js +1 -1
- package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadWidget.js +1 -0
- package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadZoneWidget.js +3 -3
- package/vscode/src/vs/workbench/contrib/comments/browser/commentsController.js +3 -3
- package/vscode/src/vs/workbench/contrib/comments/browser/commentsView.js +2 -2
- package/vscode/src/vs/workbench/contrib/comments/browser/simpleCommentEditor.js +3 -1
- package/vscode/src/vs/workbench/contrib/customEditor/browser/customEditor.contribution.js +2 -3
- package/vscode/src/vs/workbench/contrib/customEditor/browser/customEditorInputFactory.js +1 -0
- package/vscode/src/vs/workbench/contrib/customEditor/common/extensionPoint.js +66 -2
- package/vscode/src/vs/workbench/contrib/debug/browser/baseDebugView.js +31 -2
- package/vscode/src/vs/workbench/contrib/debug/browser/breakpointEditorContribution.js +2 -2
- package/vscode/src/vs/workbench/contrib/debug/browser/breakpointWidget.js +37 -7
- package/vscode/src/vs/workbench/contrib/debug/browser/breakpointsView.js +118 -25
- package/vscode/src/vs/workbench/contrib/debug/browser/media/all.png.js +11 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/media/breakpointWidget.css.js +1 -1
- package/vscode/src/vs/workbench/contrib/debug/common/debug.d.ts +37 -5
- package/vscode/src/vs/workbench/contrib/debug/common/debug.js +24 -1
- package/vscode/src/vs/workbench/contrib/debug/common/debugModel.d.ts +18 -0
- package/vscode/src/vs/workbench/contrib/debug/common/debugModel.js +237 -140
- package/vscode/src/vs/workbench/contrib/debug/common/debugVisualizers.js +72 -25
- package/vscode/src/vs/workbench/contrib/editSessions/common/editSessions.js +5 -8
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsActions.js +29 -4
- package/vscode/src/vs/workbench/contrib/files/browser/editors/fileEditorHandler.js +1 -0
- package/vscode/src/vs/workbench/contrib/files/browser/editors/textFileEditorTracker.js +1 -0
- package/vscode/src/vs/workbench/contrib/files/browser/editors/textFileSaveErrorHandler.js +2 -1
- package/vscode/src/vs/workbench/contrib/files/browser/explorerViewlet.js +8 -7
- package/vscode/src/vs/workbench/contrib/files/browser/fileActions.js +152 -120
- package/vscode/src/vs/workbench/contrib/files/browser/fileConstants.js +6 -6
- package/vscode/src/vs/workbench/contrib/files/browser/files.editorPane.contribution.js +67 -0
- package/vscode/src/vs/workbench/contrib/files/browser/views/explorerView.js +5 -5
- package/vscode/src/vs/workbench/contrib/files/browser/views/explorerViewer.js +51 -12
- package/vscode/src/vs/workbench/contrib/files/browser/views/media/openeditors.css.js +1 -1
- package/vscode/src/vs/workbench/contrib/files/browser/views/openEditorsView.js +24 -9
- package/vscode/src/vs/workbench/contrib/files/browser/workspaceWatcher.js +1 -1
- package/vscode/src/vs/workbench/contrib/files/common/dirtyFilesIndicator.js +1 -0
- package/vscode/src/vs/workbench/contrib/inlayHints/browser/inlayHintsAccessibilty.js +16 -22
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChat.css.js +1 -1
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatController.js +48 -27
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatLivePreviewWidget.js +2 -2
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSession.js +23 -8
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatStrategies.js +48 -6
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatWidget.js +145 -73
- package/vscode/src/vs/workbench/contrib/inlineChat/common/inlineChat.js +31 -9
- package/vscode/src/vs/workbench/contrib/languageStatus/browser/languageStatus.contribution.js +8 -10
- package/vscode/src/vs/workbench/contrib/list/browser/list.contribution.js +3 -3
- package/vscode/src/vs/workbench/contrib/logs/common/defaultLogLevels.js +140 -0
- package/vscode/src/vs/workbench/contrib/markdown/browser/markdownDocumentRenderer.js +7 -3
- package/vscode/src/vs/workbench/contrib/mergeEditor/browser/commands/commands.js +95 -152
- package/vscode/src/vs/workbench/contrib/mergeEditor/browser/commands/devCommands.js +16 -25
- package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditor.contribution.js +2 -4
- package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/mergeEditorModel.js +2 -1
- package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/textModelDiffs.js +19 -19
- package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/conflictActions.js +1 -1
- package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/mergeEditor.js +1 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/cellOutputActions.js +17 -3
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/editActions.js +102 -15
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/foldingController.js +2 -2
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/notebookIndentationActions.js +234 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditor.js +1 -2
- package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditorWidget.js +48 -24
- package/vscode/src/vs/workbench/contrib/notebook/browser/notebookOptions.js +52 -22
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellActionView.js +62 -3
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellEditorOptions.js +40 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellOutput.js +20 -6
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellToolbars.js +4 -4
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/chat/cellChatPart.js +3 -27
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCell.js +28 -6
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/markupCell.js +28 -3
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/notebookCellList.js +78 -18
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/notebookCellListView.js +208 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/backLayerWebView.js +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/cellRenderer.js +4 -4
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/webviewPreloads.js +85 -71
- package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/baseCellViewModel.js +1 -2
- package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/notebookViewModelImpl.js +1 -4
- package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookEditorStickyScroll.js +2 -3
- package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookEditorToolbar.js +82 -14
- package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookKernelQuickPickStrategy.js +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookKernelView.js +0 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookOverviewRuler.js +4 -3
- package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookTopCellToolbar.js +92 -33
- package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookViewZones.js +136 -0
- package/vscode/src/vs/workbench/contrib/notebook/common/notebookEditorInput.js +6 -1
- package/vscode/src/vs/workbench/contrib/notebook/common/notebookRange.js +5 -1
- package/vscode/src/vs/workbench/contrib/preferences/browser/keybindingWidgets.js +279 -0
- package/vscode/src/vs/workbench/contrib/preferences/browser/keyboardLayoutPicker.js +6 -7
- package/vscode/src/vs/workbench/contrib/preferences/browser/media/keybindings.css.js +4 -0
- package/vscode/src/vs/workbench/contrib/preferences/browser/preferencesIcons.js +64 -0
- package/vscode/src/vs/workbench/contrib/preferences/browser/preferencesWidgets.js +507 -0
- package/vscode/src/vs/workbench/contrib/preferences/browser/settingsLayout.js +478 -0
- package/vscode/src/vs/workbench/contrib/preferences/browser/settingsTreeModels.js +796 -0
- package/vscode/src/vs/workbench/contrib/remote/browser/remoteExplorer.js +8 -10
- package/vscode/src/vs/workbench/contrib/remote/browser/tunnelView.js +14 -20
- package/vscode/src/vs/workbench/contrib/scm/browser/dirtydiffDecorator.js +12 -12
- package/vscode/src/vs/workbench/contrib/search/browser/searchActionsBase.js +3 -3
- package/vscode/src/vs/workbench/contrib/search/browser/searchActionsFind.js +44 -54
- package/vscode/src/vs/workbench/contrib/search/common/constants.js +26 -65
- package/vscode/src/vs/workbench/contrib/snippets/browser/commands/abstractSnippetsActions.js +6 -9
- package/vscode/src/vs/workbench/contrib/snippets/browser/commands/fileTemplateSnippets.js +6 -9
- package/vscode/src/vs/workbench/contrib/snippets/browser/snippetsService.js +2 -2
- package/vscode/src/vs/workbench/contrib/snippets/browser/tabCompletion.js +2 -2
- package/vscode/src/vs/workbench/contrib/speech/common/speechService.js +3 -124
- package/vscode/src/vs/workbench/contrib/tasks/common/taskDefinitionRegistry.js +2 -2
- package/vscode/src/vs/workbench/contrib/tasks/common/tasks.js +2 -2
- package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/decorationAddon.js +5 -5
- package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/decorationStyles.js +61 -24
- package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/xtermTerminal.d.ts +3 -3
- package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/xtermTerminal.js +5 -5
- package/vscode/src/vs/workbench/contrib/terminal/common/terminalContextKey.js +24 -1
- package/vscode/src/vs/workbench/contrib/terminal/common/terminalExtensionPoints.js +1 -1
- package/vscode/src/vs/workbench/contrib/testing/common/testCoverage.js +4 -4
- package/vscode/src/vs/workbench/contrib/testing/common/testTypes.js +10 -10
- package/vscode/src/vs/workbench/contrib/testing/common/testingContinuousRunService.js +45 -20
- package/vscode/src/vs/workbench/contrib/update/common/update.js +2 -1
- package/vscode/src/vs/workbench/contrib/webview/browser/webviewElement.js +3 -4
- package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewCommands.js +3 -3
- package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewEditor.js +1 -1
- package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewEditorInputSerializer.js +1 -1
- package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewPanel.contribution.js +15 -18
- package/vscode/src/vs/workbench/contrib/webviewView/browser/webviewViewPane.js +2 -5
- package/vscode/src/vs/workbench/contrib/webviewView/browser/webviewViewService.js +4 -4
- package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedExtensionPoint.js +2 -2
- package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedService.js +5 -5
- package/vscode/src/vs/workbench/services/authentication/browser/authenticationService.js +193 -54
- package/vscode/src/vs/workbench/services/authentication/common/authentication.js +2 -1
- package/vscode/src/vs/workbench/services/auxiliaryWindow/browser/auxiliaryWindowService.js +9 -3
- package/vscode/src/vs/workbench/services/editor/browser/editorPaneService.js +10 -0
- package/vscode/src/vs/workbench/services/editor/browser/editorService.d.ts +3 -1
- package/vscode/src/vs/workbench/services/editor/browser/editorService.js +5 -0
- package/vscode/src/vs/workbench/services/editor/common/editorGroupsService.d.ts +1 -6
- package/vscode/src/vs/workbench/services/editor/common/editorPaneService.js +3 -0
- package/vscode/src/vs/workbench/services/editor/common/editorService.d.ts +5 -1
- package/vscode/src/vs/workbench/services/extensionManagement/common/extensionFeatures.js +29 -0
- package/vscode/src/vs/workbench/services/extensionManagement/common/extensionManagement.js +1 -1
- package/vscode/src/vs/workbench/services/extensions/browser/extensionUrlHandler.js +3 -4
- package/vscode/src/vs/workbench/services/extensions/common/extensionDescriptionRegistry.js +4 -3
- package/vscode/src/vs/workbench/services/extensions/common/extensionsApiProposals.js +11 -5
- package/vscode/src/vs/workbench/services/extensions/common/workspaceContains.js +5 -5
- package/vscode/src/vs/workbench/services/history/browser/historyService.js +25 -4
- package/vscode/src/vs/workbench/services/history/common/history.d.ts +5 -0
- package/vscode/src/vs/workbench/services/language/common/languageService.js +111 -2
- package/vscode/src/vs/workbench/services/layout/browser/layoutService.d.ts +2 -2
- package/vscode/src/vs/workbench/services/layout/browser/layoutService.js +59 -1
- package/vscode/src/vs/workbench/services/preferences/common/preferencesModels.js +1008 -0
- package/vscode/src/vs/workbench/services/preferences/common/preferencesValidation.js +477 -0
- package/vscode/src/vs/workbench/services/remote/common/remoteExplorerService.js +2 -2
- package/vscode/src/vs/workbench/services/remote/common/tunnelModel.d.ts +4 -1
- package/vscode/src/vs/workbench/services/remote/common/tunnelModel.js +53 -13
- package/vscode/src/vs/workbench/services/search/common/queryBuilder.js +1 -0
- package/vscode/src/vs/workbench/services/textMate/common/TMGrammars.js +2 -2
- package/vscode/src/vs/workbench/services/textfile/common/textFileEditorModel.js +1 -1
- package/vscode/src/vs/workbench/services/textfile/common/textfiles.d.ts +22 -9
- package/vscode/src/vs/workbench/services/themes/common/colorExtensionPoint.js +76 -4
- package/vscode/src/vs/workbench/services/themes/common/iconExtensionPoint.js +2 -2
- package/vscode/src/vs/workbench/services/themes/common/tokenClassificationExtensionPoint.js +7 -7
- package/vscode/src/vs/workbench/services/timer/browser/timerService.js +1 -0
- package/vscode/src/vs/workbench/services/untitled/common/untitledTextEditorHandler.js +3 -2
- package/vscode/src/vs/workbench/services/untitled/common/untitledTextEditorInput.js +1 -1
- package/vscode/src/vs/workbench/services/userDataSync/common/userDataSync.js +2 -2
- package/vscode/src/vs/workbench/services/views/browser/viewDescriptorService.js +6 -9
- package/vscode/src/vs/workbench/services/views/browser/viewsService.js +12 -12
- package/vscode/src/vs/workbench/services/views/common/viewContainerModel.js +6 -1
- package/vscode/src/vs/workbench/services/workingCopy/common/storedFileWorkingCopy.d.ts +43 -4
- package/vscode/src/vs/workbench/services/workingCopy/common/storedFileWorkingCopy.js +1 -1
- package/vscode/src/vs/workbench/services/workingCopy/common/workingCopyFileService.d.ts +16 -7
- package/vscode/src/vs/workbench/services/workspaces/common/workspaceIdentityService.js +102 -0
- package/vscode/src/vs/workbench/services/workspaces/common/workspaceTrust.js +3 -6
- package/vscode-dts/vscode.proposed.activeComment.d.ts +23 -0
- package/vscode-dts/vscode.proposed.chatParticipant.d.ts +509 -0
- package/vscode-dts/vscode.proposed.chatParticipantAdditions.d.ts +288 -0
- package/vscode-dts/vscode.proposed.chatProvider.d.ts +10 -1
- package/vscode-dts/vscode.proposed.chatVariableResolver.d.ts +56 -0
- package/vscode-dts/vscode.proposed.codeActionRanges.d.ts +2 -4
- package/vscode-dts/{vscode.proposed.chat.d.ts → vscode.proposed.contribIssueReporter.d.ts} +2 -20
- package/vscode-dts/vscode.proposed.contribSourceControlHistoryItemGroupMenu.d.ts +2 -0
- package/vscode-dts/vscode.proposed.contribSourceControlTitleMenu.d.ts +7 -0
- package/vscode-dts/vscode.proposed.debugVisualization.d.ts +76 -6
- package/vscode-dts/vscode.proposed.defaultChatParticipant.d.ts +49 -0
- package/vscode-dts/vscode.proposed.findFiles2.d.ts +89 -0
- package/vscode-dts/vscode.proposed.inlineEdit.d.ts +86 -0
- package/vscode-dts/vscode.proposed.interactive.d.ts +6 -3
- package/vscode-dts/vscode.proposed.languageModels.d.ts +184 -0
- package/vscode-dts/vscode.proposed.newSymbolNamesProvider.d.ts +36 -0
- package/vscode-dts/vscode.proposed.notebookVariableProvider.d.ts +6 -0
- package/vscode-dts/vscode.proposed.quickPickSortByLabel.d.ts +3 -0
- package/vscode-dts/vscode.proposed.speech.d.ts +5 -1
- package/vscode-dts/vscode.proposed.testCoverage.d.ts +40 -27
- package/vscode/src/vs/platform/audioCues/browser/audioCueService.d.ts +0 -98
- package/vscode/src/vs/platform/audioCues/browser/audioCueService.js +0 -576
- package/vscode/src/vs/workbench/contrib/files/browser/explorerService.js +0 -430
- package/vscode/src/vs/workbench/contrib/files/browser/fileActions.contribution.js +0 -784
- package/vscode/src/vs/workbench/contrib/files/browser/fileCommands.js +0 -487
- package/vscode/src/vs/workbench/contrib/files/browser/files.contribution.js +0 -521
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/insertCellActions.js +0 -348
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/chat/cellChatActions.js +0 -554
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/chat/cellChatController.js +0 -471
- package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/featuredExtensionService.js +0 -159
- package/vscode-dts/vscode.proposed.chatAgents2.d.ts +0 -440
- package/vscode-dts/vscode.proposed.chatAgents2Additions.d.ts +0 -139
- package/vscode-dts/vscode.proposed.chatRequestAccess.d.ts +0 -105
- package/vscode-dts/vscode.proposed.defaultChatAgent.d.ts +0 -30
|
@@ -17,6 +17,7 @@ import { IUriIdentityService } from '../../../../platform/uriIdentity/common/uri
|
|
|
17
17
|
import { isEqualAuthority } from '../../../../base/common/resources.js';
|
|
18
18
|
import { isWeb } from '../../../../base/common/platform.js';
|
|
19
19
|
import { IFileService } from '../../../../platform/files/common/files.js';
|
|
20
|
+
import { promiseWithResolvers } from '../../../../base/common/async.js';
|
|
20
21
|
const WORKSPACE_TRUST_ENABLED = 'security.workspace.trust.enabled';
|
|
21
22
|
const WORKSPACE_TRUST_STARTUP_PROMPT = 'security.workspace.trust.startupPrompt';
|
|
22
23
|
const WORKSPACE_TRUST_BANNER = 'security.workspace.trust.banner';
|
|
@@ -86,12 +87,8 @@ let WorkspaceTrustManagementService = class WorkspaceTrustManagementService exte
|
|
|
86
87
|
this._canonicalStartupFiles = [];
|
|
87
88
|
this._canonicalUrisResolved = false;
|
|
88
89
|
this._canonicalWorkspace = this.workspaceService.getWorkspace();
|
|
89
|
-
this._workspaceResolvedPromise
|
|
90
|
-
|
|
91
|
-
}));
|
|
92
|
-
this._workspaceTrustInitializedPromise = ( new Promise((resolve) => {
|
|
93
|
-
this._workspaceTrustInitializedPromiseResolve = resolve;
|
|
94
|
-
}));
|
|
90
|
+
({ promise: this._workspaceResolvedPromise, resolve: this._workspaceResolvedPromiseResolve } = promiseWithResolvers());
|
|
91
|
+
({ promise: this._workspaceTrustInitializedPromise, resolve: this._workspaceTrustInitializedPromiseResolve } = promiseWithResolvers());
|
|
95
92
|
this._storedTrustState = ( new WorkspaceTrustMemento(isWeb && this.isEmptyWorkspace() ? undefined : this.storageService));
|
|
96
93
|
this._trustTransitionManager = this._register(( new WorkspaceTrustTransitionManager()));
|
|
97
94
|
this._trustStateInfo = this.loadTrustInfo();
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/*---------------------------------------------------------------------------------------------
|
|
2
|
+
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
3
|
+
* Licensed under the MIT License. See License.txt in the project root for license information.
|
|
4
|
+
*--------------------------------------------------------------------------------------------*/
|
|
5
|
+
|
|
6
|
+
declare module 'vscode' {
|
|
7
|
+
// @alexr00 https://github.com/microsoft/vscode/issues/204484
|
|
8
|
+
|
|
9
|
+
export interface CommentController {
|
|
10
|
+
/**
|
|
11
|
+
* The currently active comment or `undefined`. The active comment is the one
|
|
12
|
+
* that currently has focus or, when none has focus, undefined.
|
|
13
|
+
*/
|
|
14
|
+
// readonly activeComment: Comment | undefined;
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* The currently active comment thread or `undefined`. The active comment thread is the one
|
|
18
|
+
* in the CommentController that most recently had focus or, when a different CommentController's
|
|
19
|
+
* thread has most recently had focus, undefined.
|
|
20
|
+
*/
|
|
21
|
+
readonly activeCommentThread: CommentThread | undefined;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
@@ -0,0 +1,509 @@
|
|
|
1
|
+
/*---------------------------------------------------------------------------------------------
|
|
2
|
+
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
3
|
+
* Licensed under the MIT License. See License.txt in the project root for license information.
|
|
4
|
+
*--------------------------------------------------------------------------------------------*/
|
|
5
|
+
|
|
6
|
+
declare module 'vscode' {
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Represents a user request in chat history.
|
|
10
|
+
*/
|
|
11
|
+
export class ChatRequestTurn {
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* The prompt as entered by the user.
|
|
15
|
+
*
|
|
16
|
+
* Information about variables used in this request is stored in {@link ChatRequestTurn.variables}.
|
|
17
|
+
*
|
|
18
|
+
* *Note* that the {@link ChatParticipant.name name} of the participant and the {@link ChatCommand.name command}
|
|
19
|
+
* are not part of the prompt.
|
|
20
|
+
*/
|
|
21
|
+
readonly prompt: string;
|
|
22
|
+
|
|
23
|
+
/**
|
|
24
|
+
* The name of the chat participant and contributing extension to which this request was directed.
|
|
25
|
+
*/
|
|
26
|
+
readonly participant: { readonly extensionId: string; readonly name: string };
|
|
27
|
+
|
|
28
|
+
/**
|
|
29
|
+
* The name of the {@link ChatCommand command} that was selected for this request.
|
|
30
|
+
*/
|
|
31
|
+
readonly command: string | undefined;
|
|
32
|
+
|
|
33
|
+
/**
|
|
34
|
+
* The variables that were referenced in this message.
|
|
35
|
+
*/
|
|
36
|
+
readonly variables: ChatResolvedVariable[];
|
|
37
|
+
|
|
38
|
+
private constructor(prompt: string, command: string | undefined, variables: ChatResolvedVariable[], participant: { extensionId: string; name: string });
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
/**
|
|
42
|
+
* Represents a chat participant's response in chat history.
|
|
43
|
+
*/
|
|
44
|
+
export class ChatResponseTurn {
|
|
45
|
+
|
|
46
|
+
/**
|
|
47
|
+
* The content that was received from the chat participant. Only the stream parts that represent actual content (not metadata) are represented.
|
|
48
|
+
*/
|
|
49
|
+
readonly response: ReadonlyArray<ChatResponseMarkdownPart | ChatResponseFileTreePart | ChatResponseAnchorPart | ChatResponseCommandButtonPart>;
|
|
50
|
+
|
|
51
|
+
/**
|
|
52
|
+
* The result that was received from the chat participant.
|
|
53
|
+
*/
|
|
54
|
+
readonly result: ChatResult;
|
|
55
|
+
|
|
56
|
+
/**
|
|
57
|
+
* The name of the chat participant and contributing extension that this response came from.
|
|
58
|
+
*/
|
|
59
|
+
readonly participant: { readonly extensionId: string; readonly name: string };
|
|
60
|
+
|
|
61
|
+
/**
|
|
62
|
+
* The name of the command that this response came from.
|
|
63
|
+
*/
|
|
64
|
+
readonly command?: string;
|
|
65
|
+
|
|
66
|
+
private constructor(response: ReadonlyArray<ChatResponseMarkdownPart | ChatResponseFileTreePart | ChatResponseAnchorPart | ChatResponseCommandButtonPart>, result: ChatResult, participant: { extensionId: string; name: string });
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
export interface ChatContext {
|
|
70
|
+
/**
|
|
71
|
+
* All of the chat messages so far in the current chat session.
|
|
72
|
+
*/
|
|
73
|
+
readonly history: ReadonlyArray<ChatRequestTurn | ChatResponseTurn>;
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
/**
|
|
77
|
+
* Represents an error result from a chat request.
|
|
78
|
+
*/
|
|
79
|
+
export interface ChatErrorDetails {
|
|
80
|
+
/**
|
|
81
|
+
* An error message that is shown to the user.
|
|
82
|
+
*/
|
|
83
|
+
message: string;
|
|
84
|
+
|
|
85
|
+
/**
|
|
86
|
+
* If partial markdown content was sent over the {@link ChatRequestHandler handler}'s response stream before the response terminated, then this flag
|
|
87
|
+
* can be set to true and it will be rendered with incomplete markdown features patched up.
|
|
88
|
+
*
|
|
89
|
+
* For example, if the response terminated after sending part of a triple-backtick code block, then the editor will
|
|
90
|
+
* render it as a complete code block.
|
|
91
|
+
*/
|
|
92
|
+
responseIsIncomplete?: boolean;
|
|
93
|
+
|
|
94
|
+
/**
|
|
95
|
+
* If set to true, the response will be partly blurred out.
|
|
96
|
+
*/
|
|
97
|
+
responseIsFiltered?: boolean;
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
/**
|
|
101
|
+
* The result of a chat request.
|
|
102
|
+
*/
|
|
103
|
+
export interface ChatResult {
|
|
104
|
+
/**
|
|
105
|
+
* If the request resulted in an error, this property defines the error details.
|
|
106
|
+
*/
|
|
107
|
+
errorDetails?: ChatErrorDetails;
|
|
108
|
+
|
|
109
|
+
/**
|
|
110
|
+
* Arbitrary metadata for this result. Can be anything, but must be JSON-stringifyable.
|
|
111
|
+
*/
|
|
112
|
+
readonly metadata?: { readonly [key: string]: any };
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
/**
|
|
116
|
+
* Represents the type of user feedback received.
|
|
117
|
+
*/
|
|
118
|
+
export enum ChatResultFeedbackKind {
|
|
119
|
+
/**
|
|
120
|
+
* The user marked the result as helpful.
|
|
121
|
+
*/
|
|
122
|
+
Unhelpful = 0,
|
|
123
|
+
|
|
124
|
+
/**
|
|
125
|
+
* The user marked the result as unhelpful.
|
|
126
|
+
*/
|
|
127
|
+
Helpful = 1,
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
/**
|
|
131
|
+
* Represents user feedback for a result.
|
|
132
|
+
*/
|
|
133
|
+
export interface ChatResultFeedback {
|
|
134
|
+
/**
|
|
135
|
+
* The ChatResult that the user is providing feedback for.
|
|
136
|
+
* This instance has the same properties as the result returned from the participant callback, including `metadata`, but is not the same instance.
|
|
137
|
+
*/
|
|
138
|
+
readonly result: ChatResult;
|
|
139
|
+
|
|
140
|
+
/**
|
|
141
|
+
* The kind of feedback that was received.
|
|
142
|
+
*/
|
|
143
|
+
readonly kind: ChatResultFeedbackKind;
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
export interface ChatCommand {
|
|
147
|
+
/**
|
|
148
|
+
* A short name by which this command is referred to in the UI, e.g. `fix` or
|
|
149
|
+
* `explain` for commands that fix an issue or explain code.
|
|
150
|
+
*
|
|
151
|
+
* **Note**: The name should be unique among the commands provided by this participant.
|
|
152
|
+
*/
|
|
153
|
+
readonly name: string;
|
|
154
|
+
|
|
155
|
+
/**
|
|
156
|
+
* Human-readable description explaining what this command does.
|
|
157
|
+
*/
|
|
158
|
+
readonly description: string;
|
|
159
|
+
|
|
160
|
+
/**
|
|
161
|
+
* When the user clicks this command in `/help`, this text will be submitted to this command
|
|
162
|
+
*/
|
|
163
|
+
readonly sampleRequest?: string;
|
|
164
|
+
|
|
165
|
+
/**
|
|
166
|
+
* Whether executing the command puts the chat into a persistent mode, where the command is automatically added to the chat input for the next message.
|
|
167
|
+
*/
|
|
168
|
+
readonly isSticky?: boolean;
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
/**
|
|
172
|
+
* A ChatCommandProvider returns {@link ChatCommands commands} that can be invoked on a chat participant using `/`. For example, `@participant /command`.
|
|
173
|
+
* These can be used as shortcuts to let the user explicitly invoke different functionalities provided by the participant.
|
|
174
|
+
*/
|
|
175
|
+
export interface ChatCommandProvider {
|
|
176
|
+
/**
|
|
177
|
+
* Returns a list of commands that its participant is capable of handling. A command
|
|
178
|
+
* can be selected by the user and will then be passed to the {@link ChatRequestHandler handler}
|
|
179
|
+
* via the {@link ChatRequest.command command} property.
|
|
180
|
+
*
|
|
181
|
+
*
|
|
182
|
+
* @param token A cancellation token.
|
|
183
|
+
* @returns A list of commands. The lack of a result can be signaled by returning `undefined`, `null`, or
|
|
184
|
+
* an empty array.
|
|
185
|
+
*/
|
|
186
|
+
provideCommands(context: ChatContext, token: CancellationToken): ProviderResult<ChatCommand[]>;
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
/**
|
|
190
|
+
* A followup question suggested by the participant.
|
|
191
|
+
*/
|
|
192
|
+
export interface ChatFollowup {
|
|
193
|
+
/**
|
|
194
|
+
* The message to send to the chat.
|
|
195
|
+
*/
|
|
196
|
+
prompt: string;
|
|
197
|
+
|
|
198
|
+
/**
|
|
199
|
+
* A title to show the user. The prompt will be shown by default, when this is unspecified.
|
|
200
|
+
*/
|
|
201
|
+
label?: string;
|
|
202
|
+
|
|
203
|
+
/**
|
|
204
|
+
* By default, the followup goes to the same participant/command. But this property can be set to invoke a different participant.
|
|
205
|
+
* Followups can only invoke a participant that was contributed by the same extension.
|
|
206
|
+
*/
|
|
207
|
+
participant?: string;
|
|
208
|
+
|
|
209
|
+
/**
|
|
210
|
+
* By default, the followup goes to the same participant/command. But this property can be set to invoke a different command.
|
|
211
|
+
*/
|
|
212
|
+
command?: string;
|
|
213
|
+
}
|
|
214
|
+
|
|
215
|
+
/**
|
|
216
|
+
* Will be invoked once after each request to get suggested followup questions to show the user. The user can click the followup to send it to the chat.
|
|
217
|
+
*/
|
|
218
|
+
export interface ChatFollowupProvider {
|
|
219
|
+
/**
|
|
220
|
+
* Provide followups for the given result.
|
|
221
|
+
* @param result This instance has the same properties as the result returned from the participant callback, including `metadata`, but is not the same instance.
|
|
222
|
+
* @param token A cancellation token.
|
|
223
|
+
*/
|
|
224
|
+
provideFollowups(result: ChatResult, token: CancellationToken): ProviderResult<ChatFollowup[]>;
|
|
225
|
+
}
|
|
226
|
+
|
|
227
|
+
/**
|
|
228
|
+
* A chat request handler is a callback that will be invoked when a request is made to a chat participant.
|
|
229
|
+
*/
|
|
230
|
+
export type ChatRequestHandler = (request: ChatRequest, context: ChatContext, response: ChatResponseStream, token: CancellationToken) => ProviderResult<ChatResult>;
|
|
231
|
+
|
|
232
|
+
/**
|
|
233
|
+
* A chat participant can be invoked by the user in a chat session, using the `@` prefix. When it is invoked, it handles the chat request and is solely
|
|
234
|
+
* responsible for providing a response to the user. A ChatParticipant is created using {@link chat.createChatParticipant}.
|
|
235
|
+
*/
|
|
236
|
+
export interface ChatParticipant {
|
|
237
|
+
/**
|
|
238
|
+
* The short name by which this participant is referred to in the UI, e.g `workspace`.
|
|
239
|
+
*/
|
|
240
|
+
readonly name: string;
|
|
241
|
+
|
|
242
|
+
/**
|
|
243
|
+
* A human-readable description explaining what this participant does.
|
|
244
|
+
*/
|
|
245
|
+
description?: string;
|
|
246
|
+
|
|
247
|
+
/**
|
|
248
|
+
* Icon for the participant shown in UI.
|
|
249
|
+
*/
|
|
250
|
+
iconPath?: Uri | {
|
|
251
|
+
/**
|
|
252
|
+
* The icon path for the light theme.
|
|
253
|
+
*/
|
|
254
|
+
light: Uri;
|
|
255
|
+
/**
|
|
256
|
+
* The icon path for the dark theme.
|
|
257
|
+
*/
|
|
258
|
+
dark: Uri;
|
|
259
|
+
} | ThemeIcon;
|
|
260
|
+
|
|
261
|
+
/**
|
|
262
|
+
* The handler for requests to this participant.
|
|
263
|
+
*/
|
|
264
|
+
requestHandler: ChatRequestHandler;
|
|
265
|
+
|
|
266
|
+
/**
|
|
267
|
+
* This provider will be called to retrieve the participant's commands.
|
|
268
|
+
*/
|
|
269
|
+
commandProvider?: ChatCommandProvider;
|
|
270
|
+
|
|
271
|
+
/**
|
|
272
|
+
* This provider will be called once after each request to retrieve suggested followup questions.
|
|
273
|
+
*/
|
|
274
|
+
followupProvider?: ChatFollowupProvider;
|
|
275
|
+
|
|
276
|
+
/**
|
|
277
|
+
* When the user clicks this participant in `/help`, this text will be submitted to this participant.
|
|
278
|
+
*/
|
|
279
|
+
sampleRequest?: string;
|
|
280
|
+
|
|
281
|
+
/**
|
|
282
|
+
* Whether invoking the participant puts the chat into a persistent mode, where the participant is automatically added to the chat input for the next message.
|
|
283
|
+
*/
|
|
284
|
+
isSticky?: boolean;
|
|
285
|
+
|
|
286
|
+
/**
|
|
287
|
+
* An event that fires whenever feedback for a result is received, e.g. when a user up- or down-votes
|
|
288
|
+
* a result.
|
|
289
|
+
*
|
|
290
|
+
* The passed {@link ChatResultFeedback.result result} is guaranteed to be the same instance that was
|
|
291
|
+
* previously returned from this chat participant.
|
|
292
|
+
*/
|
|
293
|
+
onDidReceiveFeedback: Event<ChatResultFeedback>;
|
|
294
|
+
|
|
295
|
+
/**
|
|
296
|
+
* Dispose this participant and free resources
|
|
297
|
+
*/
|
|
298
|
+
dispose(): void;
|
|
299
|
+
}
|
|
300
|
+
|
|
301
|
+
/**
|
|
302
|
+
* A resolved variable value is a name-value pair as well as the range in the prompt where a variable was used.
|
|
303
|
+
*/
|
|
304
|
+
export interface ChatResolvedVariable {
|
|
305
|
+
/**
|
|
306
|
+
* The name of the variable.
|
|
307
|
+
*
|
|
308
|
+
* *Note* that the name doesn't include the leading `#`-character,
|
|
309
|
+
* e.g `selection` for `#selection`.
|
|
310
|
+
*/
|
|
311
|
+
readonly name: string;
|
|
312
|
+
|
|
313
|
+
/**
|
|
314
|
+
* The start and end index of the variable in the {@link ChatRequest.prompt prompt}.
|
|
315
|
+
*
|
|
316
|
+
* *Note* that the indices take the leading `#`-character into account which means they can
|
|
317
|
+
* used to modify the prompt as-is.
|
|
318
|
+
*/
|
|
319
|
+
readonly range: [start: number, end: number];
|
|
320
|
+
|
|
321
|
+
// TODO@API decouple of resolve API, use `value: string | Uri | (maybe) unknown?`
|
|
322
|
+
readonly values: ChatVariableValue[];
|
|
323
|
+
}
|
|
324
|
+
|
|
325
|
+
export interface ChatRequest {
|
|
326
|
+
/**
|
|
327
|
+
* The prompt as entered by the user.
|
|
328
|
+
*
|
|
329
|
+
* Information about variables used in this request are is stored in {@link ChatRequest.variables}.
|
|
330
|
+
*
|
|
331
|
+
* *Note* that the {@link ChatParticipant.name name} of the participant and the {@link ChatCommand.name command}
|
|
332
|
+
* are not part of the prompt.
|
|
333
|
+
*/
|
|
334
|
+
readonly prompt: string;
|
|
335
|
+
|
|
336
|
+
/**
|
|
337
|
+
* The name of the {@link ChatCommand command} that was selected for this request.
|
|
338
|
+
*/
|
|
339
|
+
readonly command: string | undefined;
|
|
340
|
+
|
|
341
|
+
/**
|
|
342
|
+
* The list of variables and their values that are referenced in the prompt.
|
|
343
|
+
*
|
|
344
|
+
* *Note* that the prompt contains varibale references as authored and that it is up to the participant
|
|
345
|
+
* to further modify the prompt, for instance by inlining variable values or creating links to
|
|
346
|
+
* headings which contain the resolved values. Variables are sorted in reverse by their range
|
|
347
|
+
* in the prompt. That means the last variable in the prompt is the first in this list. This simplifies
|
|
348
|
+
* string-manipulation of the prompt.
|
|
349
|
+
*/
|
|
350
|
+
// TODO@API Q? are there implicit variables that are not part of the prompt?
|
|
351
|
+
readonly variables: readonly ChatResolvedVariable[];
|
|
352
|
+
}
|
|
353
|
+
|
|
354
|
+
/**
|
|
355
|
+
* The ChatResponseStream is how a participant is able to return content to the chat view. It provides several methods for streaming different types of content
|
|
356
|
+
* which will be rendered in an appropriate way in the chat view. A participant can use the helper method for the type of content it wants to return, or it
|
|
357
|
+
* can instantiate a {@link ChatResponsePart} and use the generic {@link ChatResponseStream.push} method to return it.
|
|
358
|
+
*/
|
|
359
|
+
export interface ChatResponseStream {
|
|
360
|
+
/**
|
|
361
|
+
* Push a markdown part to this stream. Short-hand for
|
|
362
|
+
* `push(new ChatResponseMarkdownPart(value))`.
|
|
363
|
+
*
|
|
364
|
+
* @see {@link ChatResponseStream.push}
|
|
365
|
+
* @param value A markdown string or a string that should be interpreted as markdown.
|
|
366
|
+
* @returns This stream.
|
|
367
|
+
*/
|
|
368
|
+
markdown(value: string | MarkdownString): ChatResponseStream;
|
|
369
|
+
|
|
370
|
+
/**
|
|
371
|
+
* Push an anchor part to this stream. Short-hand for
|
|
372
|
+
* `push(new ChatResponseAnchorPart(value, title))`.
|
|
373
|
+
* An anchor is an inline reference to some type of resource.
|
|
374
|
+
*
|
|
375
|
+
* @param value A uri or location
|
|
376
|
+
* @param title An optional title that is rendered with value
|
|
377
|
+
* @returns This stream.
|
|
378
|
+
*/
|
|
379
|
+
anchor(value: Uri | Location, title?: string): ChatResponseStream;
|
|
380
|
+
|
|
381
|
+
/**
|
|
382
|
+
* Push a command button part to this stream. Short-hand for
|
|
383
|
+
* `push(new ChatResponseCommandButtonPart(value, title))`.
|
|
384
|
+
*
|
|
385
|
+
* @param command A Command that will be executed when the button is clicked.
|
|
386
|
+
* @returns This stream.
|
|
387
|
+
*/
|
|
388
|
+
button(command: Command): ChatResponseStream;
|
|
389
|
+
|
|
390
|
+
/**
|
|
391
|
+
* Push a filetree part to this stream. Short-hand for
|
|
392
|
+
* `push(new ChatResponseFileTreePart(value))`.
|
|
393
|
+
*
|
|
394
|
+
* @param value File tree data.
|
|
395
|
+
* @param baseUri The base uri to which this file tree is relative to.
|
|
396
|
+
* @returns This stream.
|
|
397
|
+
*/
|
|
398
|
+
filetree(value: ChatResponseFileTree[], baseUri: Uri): ChatResponseStream;
|
|
399
|
+
|
|
400
|
+
/**
|
|
401
|
+
* Push a progress part to this stream. Short-hand for
|
|
402
|
+
* `push(new ChatResponseProgressPart(value))`.
|
|
403
|
+
*
|
|
404
|
+
* @param value A progress message
|
|
405
|
+
* @returns This stream.
|
|
406
|
+
*/
|
|
407
|
+
progress(value: string): ChatResponseStream;
|
|
408
|
+
|
|
409
|
+
/**
|
|
410
|
+
* Push a reference to this stream. Short-hand for
|
|
411
|
+
* `push(new ChatResponseReferencePart(value))`.
|
|
412
|
+
*
|
|
413
|
+
* *Note* that the reference is not rendered inline with the response.
|
|
414
|
+
*
|
|
415
|
+
* @param value A uri or location
|
|
416
|
+
* @returns This stream.
|
|
417
|
+
*/
|
|
418
|
+
reference(value: Uri | Location): ChatResponseStream;
|
|
419
|
+
|
|
420
|
+
/**
|
|
421
|
+
* Pushes a part to this stream.
|
|
422
|
+
*
|
|
423
|
+
* @param part A response part, rendered or metadata
|
|
424
|
+
*/
|
|
425
|
+
push(part: ChatResponsePart): ChatResponseStream;
|
|
426
|
+
}
|
|
427
|
+
|
|
428
|
+
export class ChatResponseMarkdownPart {
|
|
429
|
+
value: MarkdownString;
|
|
430
|
+
constructor(value: string | MarkdownString);
|
|
431
|
+
}
|
|
432
|
+
|
|
433
|
+
export interface ChatResponseFileTree {
|
|
434
|
+
name: string;
|
|
435
|
+
children?: ChatResponseFileTree[];
|
|
436
|
+
}
|
|
437
|
+
|
|
438
|
+
export class ChatResponseFileTreePart {
|
|
439
|
+
value: ChatResponseFileTree[];
|
|
440
|
+
baseUri: Uri;
|
|
441
|
+
constructor(value: ChatResponseFileTree[], baseUri: Uri);
|
|
442
|
+
}
|
|
443
|
+
|
|
444
|
+
export class ChatResponseAnchorPart {
|
|
445
|
+
value: Uri | Location | SymbolInformation;
|
|
446
|
+
title?: string;
|
|
447
|
+
constructor(value: Uri | Location | SymbolInformation, title?: string);
|
|
448
|
+
}
|
|
449
|
+
|
|
450
|
+
export class ChatResponseProgressPart {
|
|
451
|
+
value: string;
|
|
452
|
+
constructor(value: string);
|
|
453
|
+
}
|
|
454
|
+
|
|
455
|
+
export class ChatResponseReferencePart {
|
|
456
|
+
value: Uri | Location;
|
|
457
|
+
constructor(value: Uri | Location);
|
|
458
|
+
}
|
|
459
|
+
|
|
460
|
+
export class ChatResponseCommandButtonPart {
|
|
461
|
+
value: Command;
|
|
462
|
+
constructor(value: Command);
|
|
463
|
+
}
|
|
464
|
+
|
|
465
|
+
/**
|
|
466
|
+
* Represents the different chat response types.
|
|
467
|
+
*/
|
|
468
|
+
export type ChatResponsePart = ChatResponseMarkdownPart | ChatResponseFileTreePart | ChatResponseAnchorPart
|
|
469
|
+
| ChatResponseProgressPart | ChatResponseReferencePart | ChatResponseCommandButtonPart;
|
|
470
|
+
|
|
471
|
+
|
|
472
|
+
export namespace chat {
|
|
473
|
+
/**
|
|
474
|
+
* Create a new {@link ChatParticipant chat participant} instance.
|
|
475
|
+
*
|
|
476
|
+
* @param name Short name by which the participant is referred to in the UI. The name must be unique for the extension
|
|
477
|
+
* contributing the participant but can collide with names from other extensions.
|
|
478
|
+
* @param handler A request handler for the participant.
|
|
479
|
+
* @returns A new chat participant
|
|
480
|
+
*/
|
|
481
|
+
export function createChatParticipant(name: string, handler: ChatRequestHandler): ChatParticipant;
|
|
482
|
+
}
|
|
483
|
+
|
|
484
|
+
/**
|
|
485
|
+
* The detail level of this chat variable value.
|
|
486
|
+
*/
|
|
487
|
+
export enum ChatVariableLevel {
|
|
488
|
+
Short = 1,
|
|
489
|
+
Medium = 2,
|
|
490
|
+
Full = 3
|
|
491
|
+
}
|
|
492
|
+
|
|
493
|
+
export interface ChatVariableValue {
|
|
494
|
+
/**
|
|
495
|
+
* The detail level of this chat variable value. If possible, variable resolvers should try to offer shorter values that will consume fewer tokens in an LLM prompt.
|
|
496
|
+
*/
|
|
497
|
+
level: ChatVariableLevel;
|
|
498
|
+
|
|
499
|
+
/**
|
|
500
|
+
* The variable's value, which can be included in an LLM prompt as-is, or the chat participant may decide to read the value and do something else with it.
|
|
501
|
+
*/
|
|
502
|
+
value: string | Uri;
|
|
503
|
+
|
|
504
|
+
/**
|
|
505
|
+
* A description of this value, which could be provided to the LLM as a hint.
|
|
506
|
+
*/
|
|
507
|
+
description?: string;
|
|
508
|
+
}
|
|
509
|
+
}
|