@codingame/monaco-vscode-katex-common 29.1.1 → 30.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.
- package/package.json +2 -2
- package/vscode/src/vs/platform/actions/browser/buttonbar.js +14 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatAccessibilityProvider.js +16 -16
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContinueInAction.js +9 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatElicitationActions.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatExecuteActions.js +34 -34
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatTitleActions.js +12 -20
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolActions.d.ts +14 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolActions.js +208 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolPicker.d.ts +22 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolPicker.js +637 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionApprovalModel.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionApprovalModel.js +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionHoverWidget.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsControl.d.ts +9 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsControl.js +202 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsFilter.d.ts +4 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsFilter.js +17 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsOpener.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsViewer.d.ts +53 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsViewer.js +296 -63
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/media/agentsessionsviewer.css +59 -23
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentWidgets.js +55 -42
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/implicitContextAttachment.js +12 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingActions.js +110 -59
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorActions.js +14 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorOverlay.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingExplanationWidget.js +12 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessionPickerActionItem.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/searchableOptionPickerActionItem.js +5 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolSetsContribution.d.ts +24 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolSetsContribution.js +384 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatAgentHover.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatArtifactsWidget.d.ts +12 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatArtifactsWidget.js +220 -61
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentMarkdownRenderer.js +1 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAgentCommandContentPart.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAnonymousRateLimitedPart.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAttachmentsContentPart.d.ts +6 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAttachmentsContentPart.js +14 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatChangesSummaryPart.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCodeCitationContentPart.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCommandContentPart.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatConfirmationContentPart.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatConfirmationWidget.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatContentCodePools.js +5 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatDisabledClaudeHooksContentPart.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatExtensionsContentPart.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatHookContentPart.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatInlineAnchorWidget.d.ts +5 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatInlineAnchorWidget.js +14 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMarkdownContentPart.d.ts +11 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMarkdownContentPart.js +40 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMcpServersInteractionContentPart.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMultiDiffContentPart.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatProgressContentPart.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatQuestionCarouselPart.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatQuestionCarouselPart.js +97 -54
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatQuotaExceededPart.js +5 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatReferencesContentPart.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatResourceGroupWidget.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatSubagentContentPart.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatSuggestNextWidget.js +8 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTextEditContentPart.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatThinkingContentPart.d.ts +15 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatThinkingContentPart.js +155 -22
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTipContentPart.js +9 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTodoListWidget.d.ts +3 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTodoListWidget.js +36 -19
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatToolInputOutputContentPart.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTreeContentPart.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatWorkspaceEditContentPart.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/codeBlockPart.js +14 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatThinkingContent.css +13 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/abstractToolConfirmationSubPart.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatExtensionsInstallToolSubPart.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatMcpAppModel.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatMcpAppSubPart.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatMissingSandboxDepsConfirmationSubPart.d.ts +17 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatMissingSandboxDepsConfirmationSubPart.js +68 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatModifiedFilesConfirmationSubPart.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolConfirmationSubPart.js +16 -16
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolProgressPart.js +33 -25
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolConfirmationSubPart.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolInvocationPart.js +12 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolOutputPart.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolPartUtilities.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolPostExecuteConfirmationPart.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatDragAndDrop.js +11 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatListRenderer.d.ts +4 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatListRenderer.js +37 -113
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatListWidget.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatWidget.d.ts +10 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatWidget.js +66 -39
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatFollowups.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputPart.d.ts +13 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputPart.js +103 -61
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelPicker.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelPicker.js +35 -23
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/delegationSessionPickerActionItem.d.ts +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/delegationSessionPickerActionItem.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modePickerActionItem.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPickerActionItem2.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPickerActionItem2.js +4 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/permissionPickerActionItem.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/permissionPickerActionItem.js +39 -24
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/sessionTargetPickerActionItem.d.ts +6 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/sessionTargetPickerActionItem.js +44 -18
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/workspacePickerActionItem.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/media/chat.css +60 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatContextUsageDetails.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatContextUsageWidget.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/common/chatImageExtraction.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/common/widget/chatColors.js +15 -15
- package/vscode/src/vs/workbench/contrib/chat/common/widget/codeBlockModelCollection.js +4 -0
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatController.js +4 -4
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatOverlayWidget.js +5 -5
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionService.d.ts +4 -1
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionService.js +5 -2
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatWidget.js +6 -11
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatZoneWidget.js +1 -1
- package/vscode/src/vs/workbench/contrib/inlineChat/common/inlineChat.js +39 -39
- package/vscode/src/vs/workbench/contrib/interactive/browser/replInputHintContentWidget.js +3 -3
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellStatusBar/executionStatusBarItemController.js +7 -7
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/notebookFindWidget.js +2 -2
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/cellOperations.d.ts +26 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/cellOperations.js +746 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/insertCellActions.d.ts +13 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/insertCellActions.js +300 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffCellEditorOptions.d.ts +8 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffCellEditorOptions.js +55 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffComponents.d.ts +273 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffComponents.js +1963 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffElementOutputs.d.ts +50 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffElementOutputs.js +314 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffElementViewModel.d.ts +258 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffElementViewModel.js +886 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffNestedCellViewModel.d.ts +41 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffNestedCellViewModel.js +118 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/editorHeightCalculator.d.ts +17 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/editorHeightCalculator.js +71 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/eventDispatcher.d.ts +27 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/eventDispatcher.js +40 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookCellDiffDecorator.d.ts +23 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookCellDiffDecorator.js +313 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookDeletedCellDecorator.d.ts +51 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookDeletedCellDecorator.js +265 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookInlineDiff.d.ts +24 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookInlineDiff.js +185 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookInlineDiffWidget.d.ts +28 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookInlineDiffWidget.js +104 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookInsertedCellDecorator.d.ts +10 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookInsertedCellDecorator.js +43 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookOriginalCellModelFactory.d.ts +21 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookOriginalCellModelFactory.js +41 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookOriginalModelRefFactory.d.ts +25 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookOriginalModelRefFactory.js +69 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiff.css +469 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffEditor.d.ts +149 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffEditor.js +933 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffEditorBrowser.d.ts +180 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffEditorBrowser.js +32 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffList.d.ts +102 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffList.js +643 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffOverviewRuler.d.ts +30 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffOverviewRuler.js +197 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffViewModel.d.ts +75 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffViewModel.js +539 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/unchangedEditorRegions.d.ts +13 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/unchangedEditorRegions.js +39 -0
- package/vscode/src/vs/workbench/contrib/notebook/common/model/notebookMetadataTextModel.d.ts +19 -0
- package/vscode/src/vs/workbench/contrib/notebook/common/model/notebookMetadataTextModel.js +90 -0
- package/vscode/src/vs/workbench/contrib/notebook/common/notebookDiff.d.ts +26 -0
- package/vscode/src/vs/workbench/contrib/notebook/common/notebookDiff.js +92 -0
- package/vscode/src/vs/workbench/contrib/replNotebook/browser/replEditor.js +1 -1
- package/vscode/src/vs/workbench/contrib/replNotebook/browser/replEditorInput.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessions.contribution.d.ts +0 -152
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessions.contribution.js +0 -1317
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/internalCustomizations/internalPromptFileSystem.d.ts +0 -47
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/internalCustomizations/internalPromptFileSystem.js +0 -95
|
@@ -8,7 +8,7 @@ import { IKeybindingService } from "@codingame/monaco-vscode-api/vscode/vs/platf
|
|
|
8
8
|
import { IOpenerService } from "@codingame/monaco-vscode-api/vscode/vs/platform/opener/common/opener.service";
|
|
9
9
|
import { ITelemetryService } from "@codingame/monaco-vscode-api/vscode/vs/platform/telemetry/common/telemetry.service";
|
|
10
10
|
import { IChatSessionsService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatSessionsService.service";
|
|
11
|
-
import {
|
|
11
|
+
import { AgentSessionTarget } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/agentSessions/agentSessions";
|
|
12
12
|
import { ISessionTypePickerDelegate } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chat";
|
|
13
13
|
import { IChatInputPickerOptions } from "./chatInputPickerActionItem.js";
|
|
14
14
|
import { ISessionTypeItem, SessionTypePickerActionItem } from "./sessionTargetPickerActionItem.js";
|
|
@@ -22,10 +22,10 @@ export declare class DelegationSessionPickerActionItem extends SessionTypePicker
|
|
|
22
22
|
private readonly _isSessionsWindow;
|
|
23
23
|
constructor(action: MenuItemAction, chatSessionPosition: "sidebar" | "editor", delegate: ISessionTypePickerDelegate, pickerOptions: IChatInputPickerOptions, actionWidgetService: IActionWidgetService, keybindingService: IKeybindingService, contextKeyService: IContextKeyService, chatSessionsService: IChatSessionsService, commandService: ICommandService, openerService: IOpenerService, telemetryService: ITelemetryService, gitService: IGitService);
|
|
24
24
|
protected _run(sessionTypeItem: ISessionTypeItem): void;
|
|
25
|
-
protected _getSelectedSessionType():
|
|
26
|
-
protected _isSessionTypeEnabled(type:
|
|
25
|
+
protected _getSelectedSessionType(): AgentSessionTarget | undefined;
|
|
26
|
+
protected _isSessionTypeEnabled(type: AgentSessionTarget): boolean;
|
|
27
27
|
private _hasGitRepository;
|
|
28
|
-
protected _isVisible(type:
|
|
28
|
+
protected _isVisible(type: AgentSessionTarget): boolean;
|
|
29
29
|
protected _getSessionCategory(sessionTypeItem: ISessionTypeItem): {
|
|
30
30
|
label: string;
|
|
31
31
|
order: number;
|
|
@@ -96,20 +96,20 @@ let DelegationSessionPickerActionItem = class DelegationSessionPickerActionItem
|
|
|
96
96
|
_getSessionCategory(sessionTypeItem) {
|
|
97
97
|
if (isFirstPartyAgentSessionProvider(sessionTypeItem.type)) {
|
|
98
98
|
return {
|
|
99
|
-
label: ( localize(
|
|
99
|
+
label: ( localize(7074, "Continue In")),
|
|
100
100
|
order: 1,
|
|
101
101
|
showHeader: true
|
|
102
102
|
};
|
|
103
103
|
}
|
|
104
104
|
return {
|
|
105
|
-
label: ( localize(
|
|
105
|
+
label: ( localize(7075, "Continue In (Third Party)")),
|
|
106
106
|
order: 2,
|
|
107
107
|
showHeader: false
|
|
108
108
|
};
|
|
109
109
|
}
|
|
110
110
|
_getSessionDescription(sessionTypeItem) {
|
|
111
111
|
if (this._isSessionsWindow && sessionTypeItem.type === AgentSessionProviders.Cloud && !this._hasGitRepository()) {
|
|
112
|
-
return localize(
|
|
112
|
+
return localize(7076, "Requires a Git repository");
|
|
113
113
|
}
|
|
114
114
|
return undefined;
|
|
115
115
|
}
|
|
@@ -117,7 +117,7 @@ let DelegationSessionPickerActionItem = class DelegationSessionPickerActionItem
|
|
|
117
117
|
const learnMoreUrl = "https://aka.ms/vscode-continue-chat-in";
|
|
118
118
|
return {
|
|
119
119
|
id: "workbench.action.chat.agentOverview.learnMoreHandOff",
|
|
120
|
-
label: ( localize(
|
|
120
|
+
label: ( localize(7077, "Learn about agent handoff...")),
|
|
121
121
|
tooltip: learnMoreUrl,
|
|
122
122
|
class: undefined,
|
|
123
123
|
enabled: true,
|
|
@@ -133,7 +133,7 @@ let DelegationSessionPickerActionItem = class DelegationSessionPickerActionItem
|
|
|
133
133
|
return [{
|
|
134
134
|
id: "newChatSession",
|
|
135
135
|
class: undefined,
|
|
136
|
-
label: ( localize(
|
|
136
|
+
label: ( localize(7078, "New Chat Session")),
|
|
137
137
|
tooltip: "",
|
|
138
138
|
hover: {
|
|
139
139
|
content: "",
|
|
@@ -143,7 +143,7 @@ let DelegationSessionPickerActionItem = class DelegationSessionPickerActionItem
|
|
|
143
143
|
icon: Codicon.plus,
|
|
144
144
|
enabled: true,
|
|
145
145
|
category: {
|
|
146
|
-
label: ( localize(
|
|
146
|
+
label: ( localize(7079, "New Chat Session")),
|
|
147
147
|
order: 0,
|
|
148
148
|
showHeader: false
|
|
149
149
|
},
|
|
@@ -68,15 +68,15 @@ let ModePickerActionItem = class ModePickerActionItem extends ChatInputPickerAct
|
|
|
68
68
|
});
|
|
69
69
|
const customAgentTarget = delegate.customAgentTarget?.() ?? Target.Undefined;
|
|
70
70
|
const builtInCategory = {
|
|
71
|
-
label: ( localize(
|
|
71
|
+
label: ( localize(7100, "Built-In")),
|
|
72
72
|
order: 0
|
|
73
73
|
};
|
|
74
74
|
const customCategory = {
|
|
75
|
-
label: ( localize(
|
|
75
|
+
label: ( localize(7101, "Custom")),
|
|
76
76
|
order: 1
|
|
77
77
|
};
|
|
78
78
|
const policyDisabledCategory = {
|
|
79
|
-
label: ( localize(
|
|
79
|
+
label: ( localize(7102, "Managed by your organization")),
|
|
80
80
|
order: 999,
|
|
81
81
|
showHeader: true
|
|
82
82
|
};
|
|
@@ -91,11 +91,11 @@ let ModePickerActionItem = class ModePickerActionItem extends ChatInputPickerAct
|
|
|
91
91
|
if (mode.source?.storage === PromptsStorage.extension) {
|
|
92
92
|
icon = Codicon.file;
|
|
93
93
|
id = `viewAgent:${mode.id}`;
|
|
94
|
-
label = ( localize(
|
|
94
|
+
label = ( localize(7103, "View {0} agent", mode.label.get()));
|
|
95
95
|
} else {
|
|
96
96
|
icon = Codicon.edit;
|
|
97
97
|
id = `editAgent:${mode.id}`;
|
|
98
|
-
label = ( localize(
|
|
98
|
+
label = ( localize(7104, "Edit {0} agent", mode.label.get()));
|
|
99
99
|
}
|
|
100
100
|
const modeResource = mode.uri;
|
|
101
101
|
toolbarActions.push({
|
package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPickerActionItem2.d.ts
CHANGED
|
@@ -22,6 +22,7 @@ export declare class EnhancedModelPickerActionItem extends BaseActionViewItem {
|
|
|
22
22
|
private _getAnchorElement;
|
|
23
23
|
openModelPicker(): void;
|
|
24
24
|
show(): void;
|
|
25
|
+
setEnabled(enabled: boolean): void;
|
|
25
26
|
private _showPicker;
|
|
26
27
|
private _updateTooltip;
|
|
27
28
|
private _getHoverContents;
|
|
@@ -57,6 +57,9 @@ let EnhancedModelPickerActionItem = class EnhancedModelPickerActionItem extends
|
|
|
57
57
|
show() {
|
|
58
58
|
this._showPicker();
|
|
59
59
|
}
|
|
60
|
+
setEnabled(enabled) {
|
|
61
|
+
this._pickerWidget.setEnabled(enabled);
|
|
62
|
+
}
|
|
60
63
|
_showPicker() {
|
|
61
64
|
this._pickerWidget.show(this._getAnchorElement());
|
|
62
65
|
}
|
|
@@ -72,7 +75,7 @@ let EnhancedModelPickerActionItem = class EnhancedModelPickerActionItem extends
|
|
|
72
75
|
}
|
|
73
76
|
}
|
|
74
77
|
_getHoverContents() {
|
|
75
|
-
let label = ( localize(
|
|
78
|
+
let label = ( localize(7105, "Pick Model"));
|
|
76
79
|
const keybindingLabel = this.keybindingService.lookupKeybinding(this._action.id, this._contextKeyService)?.getLabel();
|
|
77
80
|
if (keybindingLabel) {
|
|
78
81
|
label += ` (${keybindingLabel})`;
|
package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/permissionPickerActionItem.d.ts
CHANGED
|
@@ -9,6 +9,7 @@ import { MenuItemAction } from "@codingame/monaco-vscode-api/vscode/vs/platform/
|
|
|
9
9
|
import { IConfigurationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/configuration/common/configuration.service";
|
|
10
10
|
import { IDialogService } from "@codingame/monaco-vscode-api/vscode/vs/platform/dialogs/common/dialogs.service";
|
|
11
11
|
import { ChatInputPickerActionViewItem, IChatInputPickerOptions } from "./chatInputPickerActionItem.js";
|
|
12
|
+
import { IOpenerService } from "@codingame/monaco-vscode-api/vscode/vs/platform/opener/common/opener.service";
|
|
12
13
|
export interface IPermissionPickerDelegate {
|
|
13
14
|
readonly currentPermissionLevel: IObservable<ChatPermissionLevel>;
|
|
14
15
|
readonly setPermissionLevel: (level: ChatPermissionLevel) => void;
|
|
@@ -16,7 +17,7 @@ export interface IPermissionPickerDelegate {
|
|
|
16
17
|
export declare class PermissionPickerActionItem extends ChatInputPickerActionViewItem {
|
|
17
18
|
private readonly delegate;
|
|
18
19
|
private readonly dialogService;
|
|
19
|
-
constructor(action: MenuItemAction, delegate: IPermissionPickerDelegate, pickerOptions: IChatInputPickerOptions, actionWidgetService: IActionWidgetService, keybindingService: IKeybindingService, contextKeyService: IContextKeyService, telemetryService: ITelemetryService, configurationService: IConfigurationService, dialogService: IDialogService);
|
|
20
|
+
constructor(action: MenuItemAction, delegate: IPermissionPickerDelegate, pickerOptions: IChatInputPickerOptions, actionWidgetService: IActionWidgetService, keybindingService: IKeybindingService, contextKeyService: IContextKeyService, telemetryService: ITelemetryService, configurationService: IConfigurationService, dialogService: IDialogService, openerService: IOpenerService);
|
|
20
21
|
protected renderLabel(element: HTMLElement): IDisposable | null;
|
|
21
22
|
refresh(): void;
|
|
22
23
|
}
|
package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/permissionPickerActionItem.js
CHANGED
|
@@ -15,6 +15,8 @@ import { IDialogService } from '@codingame/monaco-vscode-api/vscode/vs/platform/
|
|
|
15
15
|
import Severity from '@codingame/monaco-vscode-api/vscode/vs/base/common/severity';
|
|
16
16
|
import { MarkdownString } from '@codingame/monaco-vscode-api/vscode/vs/base/common/htmlContent';
|
|
17
17
|
import { ChatInputPickerActionViewItem } from './chatInputPickerActionItem.js';
|
|
18
|
+
import { IOpenerService } from '@codingame/monaco-vscode-api/vscode/vs/platform/opener/common/opener.service';
|
|
19
|
+
import { URI } from '@codingame/monaco-vscode-api/vscode/vs/base/common/uri';
|
|
18
20
|
|
|
19
21
|
const shownWarnings = ( new Set());
|
|
20
22
|
function hasShownElevatedWarning(level) {
|
|
@@ -36,7 +38,8 @@ let PermissionPickerActionItem = class PermissionPickerActionItem extends ChatIn
|
|
|
36
38
|
contextKeyService,
|
|
37
39
|
telemetryService,
|
|
38
40
|
configurationService,
|
|
39
|
-
dialogService
|
|
41
|
+
dialogService,
|
|
42
|
+
openerService
|
|
40
43
|
) {
|
|
41
44
|
const isAutoApprovePolicyRestricted = () => configurationService.inspect(ChatConfiguration.GlobalAutoApprove).policyValue === false;
|
|
42
45
|
const isAutopilotEnabled = () => configurationService.getValue(ChatConfiguration.AutopilotEnabled) !== false;
|
|
@@ -47,13 +50,13 @@ let PermissionPickerActionItem = class PermissionPickerActionItem extends ChatIn
|
|
|
47
50
|
const actions = [{
|
|
48
51
|
...action,
|
|
49
52
|
id: "chat.permissions.default",
|
|
50
|
-
label: ( localize(
|
|
51
|
-
description: ( localize(
|
|
53
|
+
label: ( localize(7106, "Default Approvals")),
|
|
54
|
+
description: ( localize(7107, "Copilot uses your configured settings")),
|
|
52
55
|
icon: ThemeIcon.fromId(Codicon.shield.id),
|
|
53
56
|
checked: currentLevel === ChatPermissionLevel.Default,
|
|
54
57
|
tooltip: "",
|
|
55
58
|
hover: {
|
|
56
|
-
content: ( localize(
|
|
59
|
+
content: ( localize(7108, "Use configured approval settings")),
|
|
57
60
|
position: pickerOptions.hoverPosition
|
|
58
61
|
},
|
|
59
62
|
run: async () => {
|
|
@@ -65,33 +68,33 @@ let PermissionPickerActionItem = class PermissionPickerActionItem extends ChatIn
|
|
|
65
68
|
}, {
|
|
66
69
|
...action,
|
|
67
70
|
id: "chat.permissions.autoApprove",
|
|
68
|
-
label: ( localize(
|
|
69
|
-
description: ( localize(
|
|
71
|
+
label: ( localize(7109, "Bypass Approvals")),
|
|
72
|
+
description: ( localize(7110, "All tool calls are auto-approved")),
|
|
70
73
|
icon: ThemeIcon.fromId(Codicon.warning.id),
|
|
71
74
|
checked: currentLevel === ChatPermissionLevel.AutoApprove,
|
|
72
75
|
enabled: !policyRestricted,
|
|
73
|
-
tooltip: policyRestricted ? ( localize(
|
|
76
|
+
tooltip: policyRestricted ? ( localize(7111, "Disabled by enterprise policy")) : "",
|
|
74
77
|
hover: {
|
|
75
|
-
content: policyRestricted ? ( localize(
|
|
78
|
+
content: policyRestricted ? ( localize(7112, "Disabled by enterprise policy")) : ( localize(7113, "Auto-approve all tool calls and retry on errors")),
|
|
76
79
|
position: pickerOptions.hoverPosition
|
|
77
80
|
},
|
|
78
81
|
run: async () => {
|
|
79
82
|
if (!hasShownElevatedWarning(ChatPermissionLevel.AutoApprove)) {
|
|
80
83
|
const result = await this.dialogService.prompt({
|
|
81
84
|
type: Severity.Warning,
|
|
82
|
-
message: ( localize(
|
|
85
|
+
message: ( localize(7114, "Enable Bypass Approvals?")),
|
|
83
86
|
buttons: [{
|
|
84
|
-
label: ( localize(
|
|
87
|
+
label: ( localize(7115, "Enable")),
|
|
85
88
|
run: () => true
|
|
86
89
|
}, {
|
|
87
|
-
label: ( localize(
|
|
90
|
+
label: ( localize(7116, "Cancel")),
|
|
88
91
|
run: () => false
|
|
89
92
|
}],
|
|
90
93
|
custom: {
|
|
91
94
|
icon: Codicon.warning,
|
|
92
95
|
markdownDetails: [{
|
|
93
96
|
markdown: ( new MarkdownString(( localize(
|
|
94
|
-
|
|
97
|
+
7117,
|
|
95
98
|
"Bypass Approvals will auto-approve all tool calls without asking for confirmation. This includes file edits, terminal commands, and external tool calls."
|
|
96
99
|
))))
|
|
97
100
|
}]
|
|
@@ -112,33 +115,33 @@ let PermissionPickerActionItem = class PermissionPickerActionItem extends ChatIn
|
|
|
112
115
|
actions.push({
|
|
113
116
|
...action,
|
|
114
117
|
id: "chat.permissions.autopilot",
|
|
115
|
-
label: ( localize(
|
|
116
|
-
description: ( localize(
|
|
118
|
+
label: ( localize(7118, "Autopilot (Preview)")),
|
|
119
|
+
description: ( localize(7119, "Autonomously iterates from start to finish")),
|
|
117
120
|
icon: ThemeIcon.fromId(Codicon.rocket.id),
|
|
118
121
|
checked: currentLevel === ChatPermissionLevel.Autopilot,
|
|
119
122
|
enabled: !policyRestricted,
|
|
120
|
-
tooltip: policyRestricted ? ( localize(
|
|
123
|
+
tooltip: policyRestricted ? ( localize(7120, "Disabled by enterprise policy")) : "",
|
|
121
124
|
hover: {
|
|
122
|
-
content: policyRestricted ? ( localize(
|
|
125
|
+
content: policyRestricted ? ( localize(7121, "Disabled by enterprise policy")) : ( localize(7122, "Auto-approve all tool calls and continue until the task is done")),
|
|
123
126
|
position: pickerOptions.hoverPosition
|
|
124
127
|
},
|
|
125
128
|
run: async () => {
|
|
126
129
|
if (!hasShownElevatedWarning(ChatPermissionLevel.Autopilot)) {
|
|
127
130
|
const result = await this.dialogService.prompt({
|
|
128
131
|
type: Severity.Warning,
|
|
129
|
-
message: ( localize(
|
|
132
|
+
message: ( localize(7123, "Enable Autopilot?")),
|
|
130
133
|
buttons: [{
|
|
131
|
-
label: ( localize(
|
|
134
|
+
label: ( localize(7124, "Enable")),
|
|
132
135
|
run: () => true
|
|
133
136
|
}, {
|
|
134
|
-
label: ( localize(
|
|
137
|
+
label: ( localize(7125, "Cancel")),
|
|
135
138
|
run: () => false
|
|
136
139
|
}],
|
|
137
140
|
custom: {
|
|
138
141
|
icon: Codicon.rocket,
|
|
139
142
|
markdownDetails: [{
|
|
140
143
|
markdown: ( new MarkdownString(( localize(
|
|
141
|
-
|
|
144
|
+
7126,
|
|
142
145
|
"Autopilot will auto-approve all tool calls and continue working autonomously until the task is complete. This includes terminal commands, file edits, and external tool calls. The agent will make decisions on your behalf without asking for confirmation.\n\nYou can stop the agent at any time by clicking the stop button. This applies to the current session only."
|
|
143
146
|
))))
|
|
144
147
|
}]
|
|
@@ -161,6 +164,18 @@ let PermissionPickerActionItem = class PermissionPickerActionItem extends ChatIn
|
|
|
161
164
|
};
|
|
162
165
|
super(action, {
|
|
163
166
|
actionProvider,
|
|
167
|
+
actionBarActions: [{
|
|
168
|
+
id: "chat.permissions.learnMore",
|
|
169
|
+
label: ( localize(7127, "Learn more about permissions")),
|
|
170
|
+
tooltip: ( localize(7127, "Learn more about permissions")),
|
|
171
|
+
class: undefined,
|
|
172
|
+
enabled: true,
|
|
173
|
+
run: async () => {
|
|
174
|
+
await openerService.open(( URI.parse(
|
|
175
|
+
"https://code.visualstudio.com/docs/copilot/agents/agent-tools#_permission-levels"
|
|
176
|
+
)));
|
|
177
|
+
}
|
|
178
|
+
}],
|
|
164
179
|
reporter: {
|
|
165
180
|
id: "ChatPermissionPicker",
|
|
166
181
|
name: "ChatPermissionPicker",
|
|
@@ -182,15 +197,15 @@ let PermissionPickerActionItem = class PermissionPickerActionItem extends ChatIn
|
|
|
182
197
|
switch (level) {
|
|
183
198
|
case ChatPermissionLevel.Autopilot:
|
|
184
199
|
icon = Codicon.rocket;
|
|
185
|
-
label = ( localize(
|
|
200
|
+
label = ( localize(7128, "Autopilot (Preview)"));
|
|
186
201
|
break;
|
|
187
202
|
case ChatPermissionLevel.AutoApprove:
|
|
188
203
|
icon = Codicon.warning;
|
|
189
|
-
label = ( localize(
|
|
204
|
+
label = ( localize(7129, "Bypass Approvals"));
|
|
190
205
|
break;
|
|
191
206
|
default:
|
|
192
207
|
icon = Codicon.shield;
|
|
193
|
-
label = ( localize(
|
|
208
|
+
label = ( localize(7130, "Default Approvals"));
|
|
194
209
|
break;
|
|
195
210
|
}
|
|
196
211
|
const labelElements = [];
|
|
@@ -208,6 +223,6 @@ let PermissionPickerActionItem = class PermissionPickerActionItem extends ChatIn
|
|
|
208
223
|
}
|
|
209
224
|
}
|
|
210
225
|
};
|
|
211
|
-
PermissionPickerActionItem = ( __decorate([( __param(3, IActionWidgetService)), ( __param(4, IKeybindingService)), ( __param(5, IContextKeyService)), ( __param(6, ITelemetryService)), ( __param(7, IConfigurationService)), ( __param(8, IDialogService))], PermissionPickerActionItem));
|
|
226
|
+
PermissionPickerActionItem = ( __decorate([( __param(3, IActionWidgetService)), ( __param(4, IKeybindingService)), ( __param(5, IContextKeyService)), ( __param(6, ITelemetryService)), ( __param(7, IConfigurationService)), ( __param(8, IDialogService)), ( __param(9, IOpenerService))], PermissionPickerActionItem));
|
|
212
227
|
|
|
213
228
|
export { PermissionPickerActionItem };
|
package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/sessionTargetPickerActionItem.d.ts
CHANGED
|
@@ -9,11 +9,11 @@ import { IKeybindingService } from "@codingame/monaco-vscode-api/vscode/vs/platf
|
|
|
9
9
|
import { IOpenerService } from "@codingame/monaco-vscode-api/vscode/vs/platform/opener/common/opener.service";
|
|
10
10
|
import { ITelemetryService } from "@codingame/monaco-vscode-api/vscode/vs/platform/telemetry/common/telemetry.service";
|
|
11
11
|
import { IChatSessionsService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatSessionsService.service";
|
|
12
|
-
import {
|
|
12
|
+
import { AgentSessionTarget } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/agentSessions/agentSessions";
|
|
13
13
|
import { ChatInputPickerActionViewItem, IChatInputPickerOptions } from "./chatInputPickerActionItem.js";
|
|
14
14
|
import { ISessionTypePickerDelegate } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chat";
|
|
15
15
|
export interface ISessionTypeItem {
|
|
16
|
-
type:
|
|
16
|
+
type: AgentSessionTarget;
|
|
17
17
|
label: string;
|
|
18
18
|
hoverDescription: string;
|
|
19
19
|
commandId: string;
|
|
@@ -32,17 +32,18 @@ export declare class SessionTypePickerActionItem extends ChatInputPickerActionVi
|
|
|
32
32
|
private _sessionTypeItems;
|
|
33
33
|
constructor(action: MenuItemAction, chatSessionPosition: "sidebar" | "editor", delegate: ISessionTypePickerDelegate, pickerOptions: IChatInputPickerOptions, actionWidgetService: IActionWidgetService, keybindingService: IKeybindingService, contextKeyService: IContextKeyService, chatSessionsService: IChatSessionsService, commandService: ICommandService, openerService: IOpenerService, telemetryService: ITelemetryService);
|
|
34
34
|
protected _run(sessionTypeItem: ISessionTypeItem): void;
|
|
35
|
-
protected _getSelectedSessionType():
|
|
35
|
+
protected _getSelectedSessionType(): AgentSessionTarget | undefined;
|
|
36
36
|
protected _getAdditionalActions(): IActionWidgetDropdownAction[];
|
|
37
37
|
protected _getLearnMore(): IAction;
|
|
38
38
|
private _updateAgentSessionItems;
|
|
39
|
-
protected _isVisible(
|
|
40
|
-
protected _isSessionTypeEnabled(type:
|
|
39
|
+
protected _isVisible(_type: AgentSessionTarget): boolean;
|
|
40
|
+
protected _isSessionTypeEnabled(type: AgentSessionTarget): boolean;
|
|
41
41
|
protected _getSessionCategory(sessionTypeItem: ISessionTypeItem): {
|
|
42
42
|
label: string;
|
|
43
43
|
order: number;
|
|
44
44
|
};
|
|
45
45
|
protected _getSessionDescription(sessionTypeItem: ISessionTypeItem): string | undefined;
|
|
46
|
+
private _getSessionIcon;
|
|
46
47
|
render(container: HTMLElement): void;
|
|
47
48
|
protected renderLabel(element: HTMLElement): IDisposable | null;
|
|
48
49
|
}
|
package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/sessionTargetPickerActionItem.js
CHANGED
|
@@ -2,6 +2,8 @@
|
|
|
2
2
|
import { __decorate, __param } from '@codingame/monaco-vscode-api/external/tslib/tslib.es6';
|
|
3
3
|
import { $, reset } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/dom';
|
|
4
4
|
import { renderLabelWithIcons } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/ui/iconLabel/iconLabels';
|
|
5
|
+
import { Codicon } from '@codingame/monaco-vscode-api/vscode/vs/base/common/codicons';
|
|
6
|
+
import { ThemeIcon } from '@codingame/monaco-vscode-api/vscode/vs/base/common/themables';
|
|
5
7
|
import { URI } from '@codingame/monaco-vscode-api/vscode/vs/base/common/uri';
|
|
6
8
|
import { localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
|
|
7
9
|
import { IActionWidgetService } from '@codingame/monaco-vscode-api/vscode/vs/platform/actionWidget/browser/actionWidget.service';
|
|
@@ -11,15 +13,15 @@ import { IKeybindingService } from '@codingame/monaco-vscode-api/vscode/vs/platf
|
|
|
11
13
|
import { IOpenerService } from '@codingame/monaco-vscode-api/vscode/vs/platform/opener/common/opener.service';
|
|
12
14
|
import { ITelemetryService } from '@codingame/monaco-vscode-api/vscode/vs/platform/telemetry/common/telemetry.service';
|
|
13
15
|
import { IChatSessionsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatSessionsService.service';
|
|
14
|
-
import {
|
|
16
|
+
import { AgentSessionProviders, getAgentSessionProviderDescription, getAgentSessionProviderName, getAgentSessionProvider, isFirstPartyAgentSessionProvider, getAgentSessionProviderIcon } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/agentSessions/agentSessions';
|
|
15
17
|
import { ChatInputPickerActionViewItem } from './chatInputPickerActionItem.js';
|
|
16
18
|
|
|
17
19
|
const firstPartyCategory = {
|
|
18
|
-
label: ( localize(
|
|
20
|
+
label: ( localize(7131, "Agent Types")),
|
|
19
21
|
order: 1
|
|
20
22
|
};
|
|
21
23
|
const otherCategory = {
|
|
22
|
-
label: ( localize(
|
|
24
|
+
label: ( localize(7132, "Other")),
|
|
23
25
|
order: 2
|
|
24
26
|
};
|
|
25
27
|
let SessionTypePickerActionItem = class SessionTypePickerActionItem extends ChatInputPickerActionViewItem {
|
|
@@ -52,7 +54,7 @@ let SessionTypePickerActionItem = class SessionTypePickerActionItem extends Chat
|
|
|
52
54
|
id: sessionTypeItem.commandId,
|
|
53
55
|
label: sessionTypeItem.label,
|
|
54
56
|
checked: currentType === sessionTypeItem.type,
|
|
55
|
-
icon:
|
|
57
|
+
icon: this._getSessionIcon(sessionTypeItem),
|
|
56
58
|
enabled: this._isSessionTypeEnabled(sessionTypeItem.type),
|
|
57
59
|
category: this._getSessionCategory(sessionTypeItem),
|
|
58
60
|
description: this._getSessionDescription(sessionTypeItem),
|
|
@@ -125,7 +127,7 @@ let SessionTypePickerActionItem = class SessionTypePickerActionItem extends Chat
|
|
|
125
127
|
const learnMoreUrl = "https://code.visualstudio.com/docs/copilot/agents/overview";
|
|
126
128
|
return {
|
|
127
129
|
id: "workbench.action.chat.agentOverview.learnMore",
|
|
128
|
-
label: ( localize(
|
|
130
|
+
label: ( localize(7133, "Learn about agent types...")),
|
|
129
131
|
tooltip: learnMoreUrl,
|
|
130
132
|
class: undefined,
|
|
131
133
|
enabled: true,
|
|
@@ -145,19 +147,25 @@ let SessionTypePickerActionItem = class SessionTypePickerActionItem extends Chat
|
|
|
145
147
|
const contributions = this.chatSessionsService.getAllChatSessionContributions();
|
|
146
148
|
for (const contribution of contributions) {
|
|
147
149
|
const agentSessionType = getAgentSessionProvider(contribution.type);
|
|
148
|
-
if (
|
|
149
|
-
|
|
150
|
+
if (agentSessionType) {
|
|
151
|
+
agentSessionItems.push({
|
|
152
|
+
type: agentSessionType,
|
|
153
|
+
label: getAgentSessionProviderName(agentSessionType),
|
|
154
|
+
hoverDescription: getAgentSessionProviderDescription(agentSessionType),
|
|
155
|
+
commandId: contribution.canDelegate ? `workbench.action.chat.openNewChatSessionInPlace.${contribution.type}` : `workbench.action.chat.openNewChatSessionExternal.${contribution.type}`
|
|
156
|
+
});
|
|
157
|
+
} else {
|
|
158
|
+
agentSessionItems.push({
|
|
159
|
+
type: contribution.type,
|
|
160
|
+
label: contribution.displayName ?? contribution.name ?? contribution.type,
|
|
161
|
+
hoverDescription: contribution.description ?? "",
|
|
162
|
+
commandId: `workbench.action.chat.openNewChatSessionInPlace.${contribution.type}`
|
|
163
|
+
});
|
|
150
164
|
}
|
|
151
|
-
agentSessionItems.push({
|
|
152
|
-
type: agentSessionType,
|
|
153
|
-
label: getAgentSessionProviderName(agentSessionType),
|
|
154
|
-
hoverDescription: getAgentSessionProviderDescription(agentSessionType),
|
|
155
|
-
commandId: contribution.canDelegate ? `workbench.action.chat.openNewChatSessionInPlace.${contribution.type}` : `workbench.action.chat.openNewChatSessionExternal.${contribution.type}`
|
|
156
|
-
});
|
|
157
165
|
}
|
|
158
166
|
this._sessionTypeItems = agentSessionItems;
|
|
159
167
|
}
|
|
160
|
-
_isVisible(
|
|
168
|
+
_isVisible(_type) {
|
|
161
169
|
return true;
|
|
162
170
|
}
|
|
163
171
|
_isSessionTypeEnabled(type) {
|
|
@@ -167,20 +175,38 @@ let SessionTypePickerActionItem = class SessionTypePickerActionItem extends Chat
|
|
|
167
175
|
return !!this.chatSessionsService.getChatSessionContribution(type);
|
|
168
176
|
}
|
|
169
177
|
_getSessionCategory(sessionTypeItem) {
|
|
170
|
-
|
|
178
|
+
const knownType = getAgentSessionProvider(sessionTypeItem.type);
|
|
179
|
+
return knownType && isFirstPartyAgentSessionProvider(knownType) ? firstPartyCategory : otherCategory;
|
|
171
180
|
}
|
|
172
181
|
_getSessionDescription(sessionTypeItem) {
|
|
173
182
|
return undefined;
|
|
174
183
|
}
|
|
184
|
+
_getSessionIcon(sessionTypeItem) {
|
|
185
|
+
const knownType = getAgentSessionProvider(sessionTypeItem.type);
|
|
186
|
+
if (knownType) {
|
|
187
|
+
return getAgentSessionProviderIcon(knownType);
|
|
188
|
+
}
|
|
189
|
+
const contribution = this.chatSessionsService.getChatSessionContribution(sessionTypeItem.type);
|
|
190
|
+
if (contribution && ThemeIcon.isThemeIcon(contribution.icon)) {
|
|
191
|
+
return contribution.icon;
|
|
192
|
+
}
|
|
193
|
+
return Codicon.extensions;
|
|
194
|
+
}
|
|
175
195
|
render(container) {
|
|
176
196
|
super.render(container);
|
|
177
197
|
container.classList.add("chat-session-target-picker-item");
|
|
178
198
|
}
|
|
179
199
|
renderLabel(element) {
|
|
180
200
|
this.setAriaLabelAttributes(element);
|
|
181
|
-
const currentType = this._getSelectedSessionType();
|
|
182
|
-
const
|
|
183
|
-
const
|
|
201
|
+
const currentType = this._getSelectedSessionType() ?? AgentSessionProviders.Local;
|
|
202
|
+
const knownType = getAgentSessionProvider(currentType);
|
|
203
|
+
const label = knownType ? getAgentSessionProviderName(knownType) : (this.chatSessionsService.getChatSessionContribution(currentType)?.displayName ?? currentType);
|
|
204
|
+
const icon = this._getSessionIcon({
|
|
205
|
+
type: currentType,
|
|
206
|
+
label,
|
|
207
|
+
hoverDescription: "",
|
|
208
|
+
commandId: ""
|
|
209
|
+
});
|
|
184
210
|
const labelElements = [];
|
|
185
211
|
labelElements.push(...renderLabelWithIcons(`$(${icon.id})`));
|
|
186
212
|
labelElements.push($("span.chat-input-picker-label", undefined, label));
|
package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/workspacePickerActionItem.js
CHANGED
|
@@ -48,10 +48,10 @@ let WorkspacePickerActionItem = class WorkspacePickerActionItem extends ChatInpu
|
|
|
48
48
|
actions.push({
|
|
49
49
|
...action,
|
|
50
50
|
id: "workspace.openFolder",
|
|
51
|
-
label: ( localize(
|
|
51
|
+
label: ( localize(7134, "Open Folder...")),
|
|
52
52
|
checked: false,
|
|
53
53
|
enabled: true,
|
|
54
|
-
tooltip: ( localize(
|
|
54
|
+
tooltip: ( localize(7135, "Open Folder...")),
|
|
55
55
|
run: async () => {
|
|
56
56
|
this.commandService.executeCommand(this.delegate.openFolderCommand);
|
|
57
57
|
}
|
|
@@ -104,7 +104,7 @@ let WorkspacePickerActionItem = class WorkspacePickerActionItem extends ChatInpu
|
|
|
104
104
|
labelElements.push($("span.chat-input-picker-label", undefined, label));
|
|
105
105
|
} else {
|
|
106
106
|
labelElements.push(...renderLabelWithIcons(`$(folder)`));
|
|
107
|
-
labelElements.push($("span.chat-input-picker-label", undefined, ( localize(
|
|
107
|
+
labelElements.push($("span.chat-input-picker-label", undefined, ( localize(7136, "Workspace"))));
|
|
108
108
|
}
|
|
109
109
|
if (!this.pickerOptions.hideChevrons.get()) {
|
|
110
110
|
labelElements.push(...renderLabelWithIcons(`$(chevron-down)`));
|
|
@@ -516,7 +516,7 @@
|
|
|
516
516
|
display: none;
|
|
517
517
|
position: absolute;
|
|
518
518
|
right: 0;
|
|
519
|
-
|
|
519
|
+
bottom: 0;
|
|
520
520
|
|
|
521
521
|
a {
|
|
522
522
|
color: var(--vscode-textLink-foreground);
|
|
@@ -529,12 +529,11 @@
|
|
|
529
529
|
position: relative;
|
|
530
530
|
|
|
531
531
|
.message-wrapper {
|
|
532
|
-
/*
|
|
533
|
-
mask-image:
|
|
534
|
-
linear-gradient(to right, rgba(0, 0, 0, 1) calc(100% - 95px), rgba(0, 0, 0, 0) calc(100% - 72px)), linear-gradient(to top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 20px, rgba(0, 0, 0, 1) 2px, rgba(0, 0, 0, 1) 100%);
|
|
535
|
-
mask-repeat: no-repeat, no-repeat;
|
|
532
|
+
/* Fade out the bottom edge so the "see more" link can overlay cleanly. */
|
|
533
|
+
mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 1) calc(100% - 24px), rgba(0, 0, 0, 0) 100%);
|
|
536
534
|
pointer-events: none;
|
|
537
|
-
max-height:
|
|
535
|
+
max-height: 96px;
|
|
536
|
+
overflow: hidden;
|
|
538
537
|
}
|
|
539
538
|
|
|
540
539
|
.see-more {
|
|
@@ -2249,6 +2248,61 @@ have to be updated for changes to the rules above, or to support more deeply nes
|
|
|
2249
2248
|
text-overflow: ellipsis;
|
|
2250
2249
|
white-space: nowrap;
|
|
2251
2250
|
font-size: 13px;
|
|
2251
|
+
flex: 1;
|
|
2252
|
+
}
|
|
2253
|
+
|
|
2254
|
+
.chat-artifacts-widget .chat-artifacts-list-save {
|
|
2255
|
+
display: none;
|
|
2256
|
+
align-items: center;
|
|
2257
|
+
justify-content: center;
|
|
2258
|
+
cursor: pointer;
|
|
2259
|
+
padding: 2px;
|
|
2260
|
+
border-radius: 2px;
|
|
2261
|
+
margin-left: auto;
|
|
2262
|
+
}
|
|
2263
|
+
|
|
2264
|
+
.chat-artifacts-widget .chat-artifacts-list-row:hover .chat-artifacts-list-save {
|
|
2265
|
+
display: flex;
|
|
2266
|
+
}
|
|
2267
|
+
|
|
2268
|
+
.chat-artifacts-widget .chat-artifacts-list-save:hover {
|
|
2269
|
+
background-color: var(--vscode-toolbar-hoverBackground);
|
|
2270
|
+
}
|
|
2271
|
+
|
|
2272
|
+
.chat-artifacts-widget .artifacts-clear-button-container {
|
|
2273
|
+
padding-right: 2px;
|
|
2274
|
+
display: flex;
|
|
2275
|
+
align-items: center;
|
|
2276
|
+
height: 18px;
|
|
2277
|
+
opacity: 1;
|
|
2278
|
+
}
|
|
2279
|
+
|
|
2280
|
+
.chat-artifacts-widget .artifacts-clear-button-container .monaco-button {
|
|
2281
|
+
background-color: transparent;
|
|
2282
|
+
border-color: transparent;
|
|
2283
|
+
color: var(--vscode-foreground);
|
|
2284
|
+
cursor: pointer;
|
|
2285
|
+
height: 16px;
|
|
2286
|
+
padding: 3px;
|
|
2287
|
+
border-radius: 2px;
|
|
2288
|
+
display: inline-flex;
|
|
2289
|
+
align-items: center;
|
|
2290
|
+
justify-content: center;
|
|
2291
|
+
min-width: unset;
|
|
2292
|
+
}
|
|
2293
|
+
|
|
2294
|
+
.chat-artifacts-widget .artifacts-clear-button-container .monaco-button:hover {
|
|
2295
|
+
background-color: var(--vscode-toolbar-hoverBackground);
|
|
2296
|
+
}
|
|
2297
|
+
|
|
2298
|
+
.chat-artifacts-widget .artifacts-clear-button-container .monaco-button:focus {
|
|
2299
|
+
outline: 1px solid var(--vscode-focusBorder);
|
|
2300
|
+
outline-offset: 1px;
|
|
2301
|
+
}
|
|
2302
|
+
|
|
2303
|
+
.chat-artifacts-widget .artifacts-clear-button-container .monaco-button .codicon {
|
|
2304
|
+
font-size: 10px;
|
|
2305
|
+
color: var(--vscode-foreground);
|
|
2252
2306
|
}
|
|
2253
2307
|
|
|
2254
2308
|
.interactive-session .checkpoint-file-changes-summary {
|
|
@@ -3181,10 +3235,6 @@ have to be updated for changes to the rules above, or to support more deeply nes
|
|
|
3181
3235
|
.request-hover {
|
|
3182
3236
|
top: 0px;
|
|
3183
3237
|
}
|
|
3184
|
-
|
|
3185
|
-
.checkpoint-container {
|
|
3186
|
-
display: none;
|
|
3187
|
-
}
|
|
3188
3238
|
}
|
|
3189
3239
|
|
|
3190
3240
|
.interactive-list > .monaco-list:focus > .monaco-scrollable-element > .monaco-list-rows > .monaco-list-row.focused.request {
|